Sometimes the customer requested to capture a specific location on the Earth and after downloading the image we discover that a part of clouds are there in the image. Is there a way to reduce or remove the clouds in satellite images?
If you use Landsat TM/ETM+ data, try a ratio of blue/thermal band (band1/band6). Then use a threshold value to remove enhanced clouds. While using Landsat 8 data, try the cirrus band (band9).
I think you should look for mathematical model of the effect of clouds.Then you can use wiener filter for inverse filtering and recover appropriate image.
It depends on whether you're trying to remove cloud from imagery so that a classifier applied to the image doesn't return erroneous results, or whether you're trying to 'see through the cloud' for a high priority target that is obscured by cloud.
For the former problem there are some standard cloud removal algorithms such as ACCA
Both of these work well when applied to Landsat data, but their wavelength requirements (including thermal in the case of ACCA) may not be available in your sensor.
and if you've only got a small (less than 100) scenes to contend with, you can just do manual digitizing.
If the latter, then it's much more difficult. If the target is obscured by thin cirrus (transparent cloud) you can use various band ratios to enhance the imagery, but the results will be suitable for backdrop purposes but not image analysis because the radiometrics will be heavily altered. If the target is obscured by cumulus or opaque cloud... it's time to select a different scene or re-task the satellite to acquire the target of interest again...
There is no need for additional effort. You can easily download the MOD35 product. The product is not an index rather a confidence indicator. Try to read the MOD35 guide (in 1km spatial resolution)
modis-atmos.gsfc.nasa.gov/_docs/CMUSERSGUIDE.pdf
you can download the product from:
http://ladsweb.nascom.nasa.gov/data/search.html
If you tried to use classification-based approaches in order to filter out cloud, I would highly recommend that you use SVM.
---
I can guide you better if your specific sensor is mentioned
I would really like to know how to use the Landsat 8 Cirrus layer to at least reduce the effects of thinnish cloud on classification. I am using Bilko, but the on-line modules seem to work with Landsat 7 which does not have this layer and so far I have not found guidance on this subject (searching via google).