Image Fusion Using Sentinel 1 and Sentinel 2

hello, i want to combine sentinel 1 and sentinel 2 image for land cover with some transformation of image fusion methods.
I found a problem when i want to continue my research,
I use Sentinel 1 GRD product, with IW sensor and have done pre-processing steps like calibration, multilook, speckle filtering, and terrain correction, then I combine the results of pre prosessing data sentinel 1 with sentinel 2 which has done semi-automatic clasification process using qgis , I combine these two data using envi transformation of PCA, Brovey, and HSV.

But I am confused the steps I have done is true or have less, can you help me?

5 Likes

the semi automatic classification plugin (SCP) of qgis features maximum likelihood, minimum distance and spectral angle classifiers. If your input data is not of same unit (reflectance vs. backscatter) they are not suitable because value ranges of all rasters should be the same.

Depending on your PCA output components should be scaled from 0-1 at best, otherwise clustering of the above mentioned classifiers could not be so effective.

so what process should i do?

hard to tell because we don’t know your data and your study. Your SAR preprocessing was alright however.
Maybe you can ask a bit more specific and tell us at which step you need help.

i use this data for my research
S2A_MSIL1C_20170519T023551_N0205_R089_T49MDN_20170519T025549.SAFE
S1A_IW_GRDH_1SDV_20170320T105811_20170320T105840_015774_019F9E_01DA

in my study, i want to combined both data with image fusion methods and then i do supervised classification for land cover analysis

i want to ask what step of preprocessing should i do first so i can combined them? or what must i do to make both to the same unit? Should I extract sentinel 1 into the dem shape first?
or can you tell me what the process must i do so that both data can be combined?

for pre-processing of the SAR data, calibration and Terrain Correction should be sufficient, maybe speckle filtering is also a good idea.
You can then create a stack of both data sets (can be found in the coregistration menu). If you use the supervised classification in SNAP you can choose Random Forest classifier. It can handle input data of different units.
If you want to classify in QGIS you need some kind of transformation to get both images scaled. Earlier versions of SNAP hat a scaling tool but I can’t find it in the newer ones. Have a look at image transformations in remote sensing.

and how with sentinel 2 data? should i do some preprocessing or do nothing?

Depends on wether you want them calibrated or not. If you want to calibrate your S2 images you’ll have to run sen2cor:
http://step.esa.int/main/third-party-plugins-2/sen2cor/
If not, you can use the images without further preprocessing.

How do I use the random forest classifier ? I have to combine sentine-1 with sentinel 2, so do I need to fuse them first or should I input them both (like we do to stack them in co-registration) in random forest classifier ? Please tell me the steps

please see here:

could you plz send me a screen shot of all steps after taking shape geometries, how do i store it for supervised classification . i am new to snap. and please let me know how do i use random forest classifier? what inputs should i give?..its saying error in dimensions, how do i manage it

When i try to do coregistration step like you instruct me before, there is an error. what’s wrong with the input data? here is the screenshot of the error.

the error states that your Sentinel-2 data has no orbit information for the coregistration. You can selecet Product geolocation in the next tab instead of Orbit.

Nothing wrong with the input product. The Orbit offset method is for SAR product. You should use Product Geolocation method in Create Stack.

The process had reach 71% but it’s stopped. What should i do?

this means your RAM wasn’t able to process it. Is it an option to create subsets first so the total amount of data is smaller?

@ABraun proccess was succesfull, and when i try to open one of the sentinel 2 data it was error, but not for sentinel 1 data, can you tell me why? and what the solution for this problem?

haven’t seen this before, sorry.

ok thanks before @ABraun but i’ve tried twice with the different master and slave
first, i try corregistration with sentinel 1 as master and sentinel 2 as slave, when proccess done, i load RGB of sentinel 1 data and it can be open, but not for sentinel 2, sentinel 2 min max value becomes 0
ande second, i’ve tried the opposite, And the results are also opposite too, sentinel 1 can not open and becomes all black, but sentinel 2 can load RGB color

do you know why braun?

have you tried Radar > Coregistartion > Stack Tools > Create Stack?