On of the important thing in land use land cover mapping is cloud cover assessment. Fortunately, free open source software for imagery processing such as GRASS provides us with the Automatic Cloud Cover Assessment (ACCA) module; i.landsat.acca.
i.landsat.acca implements the ACCA Algorithm from Irish (2000) with the constant values for pass filter one from Irish et al. (2006). To do this, it needs Landsat band numbers 2, 3, 4, 5, and 6 (or band 61 for Landsat 7 ETM+) which have already been processed from DN into reflectance and band-6 temperature with i.landsat.toar.
In this case we will assess the cloud cover over Surabaya City, East Java Province, Indonesia. Data used in this cloud assessment is Landsat 7 ETM+, it was acquired on December 27, 2013. Figure 1 shows the study area with the cloud cover in the northern part, and some part with the cloud shadow and haze. We will remove this cloud cover, by employ the i.landsat.acc module in GRASS.
Note: I always working with command console (Figure 2) instead of GUI, it is more convenient, so please learn how to get used with it.
1. Set region
g.region rast: b1
2. Perform i.landsat.toar
i.landsat.toar input_prefix=B output_prefix=Refl metfile=C:\your metadata folder location\LE71180652013361EDC00_MTL.txt sensor=tm7 method=corrected
>> Please select the metadata file
In this step, I imported all of the Landsat 7 ETM+ bands with prefix “B” into GRASS environment, and converted the DNs into top-of-atmospheric reflectance, and used the prefix “Refl”.
3. Perform i.landsat.acca
i.landsat.acca -f input_prefix=Refl output=Acca
Please note: I used “Refl” as input prefix and “Acca” as output for the result
4. Using MASK
r.mapcalc “MASK = if(isnull(acca))”
Note: use command console for using MASK
5. Display RGB
d.rgb -o red=Refl3 green=Refl2 blue=Refl1