Supervised classification for sentinel 1

Classification and automation are hard to bring into one approach. That would mean that you develop one classifier that works on any input image. This requires very careful calibration of your images as subtle changes in your SAR backscatter might lead to misclassifications. This is especially the case for image textures as they are very sensitive to pixel resolution, scattering mechanism and incidence angle.

Additionally, Minimum Distance or Maximum Likelihood classifiers sometimes fail for radar images in power scale (after calibration, mainly 0-1, but also way above for corner reflection or volume scattering). Therefore, conversion to db scale is advisable because it results in a more gaussian distribution of your values.
They work well with few input data as long as they are of the same unit (Sigma0, for example). As soon as you introduce data of different scaling (e.g textures) these two classifiers work no longer as the input data have different value ranges which ill-conditiones these classifiers.

In turn, the Random Forest classifier can handle data of different input value ranges (e.g. SAR, optical and texture information) but it requires a high number of training input. That means you need

  • large training areas: The standard configuration is 5000 pixels per run, so you would need areas larger than that so the randomization of training pixels is effective. Otherwise you always train on the same pixels and the principle of the RF classifier is missed.
  • a high number of input rasters: Each run takes the square root of the number of input rasters for training, e.g 3 out of 9, 4 out of 16 and so on. Otherwise your model is trained multiple times on the same input rasters - again, missing the strenght and requirements for the RF model to be effective.

I agree with @johngan: If it comes to automation of flooded areas, band math conditions on few input rasters are way more stable and promising.
Have you considered multi-criteria statements? For example:
IF Sigma0_VV < 0.001 AND Sigma0_VH_db < -20 THEN 1 ELSE 0

If you have dual-polarized data you could use both VV and VH as well as their log-scaled representations. That gives you 4 bands to define your conditions. That should leave you enough flexibility for a detection of high accuracy.
Or derive a median-filtered image (right-click > filter image) of 5x5 pixels to smooth out the black water areas and to reduce small isolated black pixels on land.

3 Likes