-
Notifications
You must be signed in to change notification settings - Fork 0
/
Discussions.tex
33 lines (21 loc) · 12.1 KB
/
Discussions.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
\subsection{Main Discussions}
The first averaged image, plotted without the removal of cloud cover shown in Fig.~\ref{fig:av_cloud}, provided a clear outline of the landmasses and enabled easy visual identification of land and sea pixels. It also enabled identification of a subtropical jet stream in the intertropical convergence zone, indicated by the light blue stream of higher density cloud across the image, seen to be travelling across the Atlantic Ocean between Central Africa and South America. This jet stream was still visible despite the pixel averaging due to the near constant cloud cover over the jet stream region throughout the month. From visual inspection of an animation we created from the RGB images in January 2019, this jet stream was seen to be travelling from east to west. Despite the features able to be discerned using this method, due to the inclusion of cloudy pixels in the averaging, other cloud removal techniques are preferred for terrain analysis as cloudy noise was very visible in the image most notably near the southern and northern poles, which presents complications for further analysis techniques of the Earth's surface.\\
Multiple threshold value selection methods were used to generate masks to remove cloud cover and the plots of these, shown in Fig.~\ref{fig:iterav}, enables the determination of their accuracy via visual comparison with the original RGB image on the left. The second image from the left used the visually selected threshold pixel values for the creation of the cloud mask. When compared to the original image it can be seen that the majority of the cloudy pixels (shown as light areas over the sea and as bright light blue areas over land) were successfully selected as cloud cover. Unfortunately this method was not ideal for detection of darker clouds over the sea (as seen in the upper left hand corner of the image) or at distinguishing between lighter land pixel values and cloud pixel values (a problem that was most noticeable along the coast line and certain regions next to cloud cover), due to the presence of multiple cloud threshold ranges required for thresholding in the IR 1.6 channel. This exists due to the existence of both normal and cold/ice clouds that therefore emitt and reflect less infrared radiation, resulting in darker cloud images.
\par
The adjacent image made use of Otsu's algorithm to calculate the optimum threshold values for the separation of foreground and background pixels. As can be observed in the image, when a single threshold value was applied to both land and sea values the optimum threshold calculated would often group the land and cloud pixel values together as the foreground and the sea pixels as the background. Although this gave a more complete cloud mask over the see compared to threshold determination by inspection, the majority of the land was removed therefore preventing any further terrain analysis to be done on it. Though unfortunately the threshold value provided was less than optimum for our uses, the calculated separability measure for the threshold value selected was $\eta=0.932$ indicating a high success in the maximisation of interpixel variance.
\par The far right image shows the result of the masked Otsu method that was used to circumvent the previous problem presented by using Otsu's method for threshold value detection. Here it can be seen that that the use of two different threshold values over the sea and land enabled a better detection of cloudy pixels. The percentage of cloud successfully detected appears to be similar to the visually threshold selected image, with the added advantage that very few cloud free pixels (if any) were selected and removed as if they were cloudy.\\
Fig.~\ref{fig:g_Otsu_fail} is a plot that illustrates the ineffectiveness of using a global Otsu threshold for a surface selection that straddles both land and sea pixels. The histogram in the figure, between the two images, shows the frequency of occurrence of different pixel values and where the optimum threshold value was calculated to lie. Two main peaks can be observed and it is these peaks that the algorithm identifies as foreground and background pixel values. Unfortunately, though the left hand peak does correspond to the darker pixels of the sea, the second peak is indicative of the land pixel values rather than those of clouds. Therefore by splitting these two peaks up the land pixels are grouped with the cloud pixels instead of the sea as is shown in the right hand thresholded image. Another downfall of automatic threshold value detection using Otsu's method is that it will always try to split the pixel values into two groups, meaning that on days with minimal or no apparent cloud cover the algorithm will split the remaining land and sea pixels into two groups and mask the land, resulting in a loss of information from the low cloud image.\\
Fig.~\ref{fig:bOtsu_land} and Fig.~\ref{fig:bOtsu_sea} demonstrate how the landmask was used to cope with the first error thrown up via use of a global Otsu algorithm. Although these were much better at distinguishing the cloud values from the terrain below, some adjustments were still necessary to better split the cloud and terrain pixels with a threshold value.\\
To be able to replace the cloudy pixel values with a better representation of the terrain obscured below the cloud free images were averaged over as shown in Fig.~\ref{fig:av_Otsu}. This image depicts a much better cloud free image than purely averaging over all images, and allows features such as the green vegetation in the top right hand corner of the image to be distinguished. From this image we are also able to identify smaller bodies of water that were previously obscured. In our code it was assumed that averaging pixels over the course of a month (approximately 60 images) would provide a cloud free pixel value for each pixel unfortunately that was not necessarily the case as can be observed towards the top of the coastline where an empty pixel resides. To get a cloud free pixel value for this pixel more cloud free images would have to be combined and averaged over.\\
The monthly averaged images can then be used to fill in and provide a rough approximation of the cloud covered pixels in the thresholded images for the days of the month. An example of this is shown in Fig.~\ref{fig:Otsu_fill} providing a more complete image of the terrain. It can be noted here that the averaged pixel values do not align perfectly with the adjacent cloud free values, howevr from inspection this can be assumed to be due to a non-optimum cloud cover mask as pixels that are visually identifiable as cloudy still remain in the image. Further adjustments to the threshold values calculated using Otsu's method (added into the code as an offset) can be made to reduce the influence of cloudy pixels on our images.\\
Fig.~\ref{fig:cloud_pc_jan} and Fig.~\ref{fig:cloud_pc_jul} both show the change in cloud cover over the same area on the Earth's surface for differing months. January and July were chosen here, alongside an area far from the Earth's equator, to better examine changes in percentage cloud cover for over different seasons. These plots clearly demonstrate a significant change depending on the season with a general trend of high percentage cloud cover for days in January compared to low percentage cloud cover for days in July. We plotted the RGB and channel images for the few apparent outliers in the dataset( Fig.~\ref{fig:60pc}, Fig.~\ref{fig:15pc} and Fig.~\ref{fig:0pc}) to check the validity of the percentage cloud cover values calculated. These plots seem to strongly indicate that the percentage cloud cover values obtained provide an accurate representation of the change over the months, although the cloud cover in Fig.~\ref{fig:15pc} does appear to be slightly more than the anticipated value of 15 percent, potentially due to the use of a threshold value determined via inspection. \\
Our cloud free averaged images, calculated using our cloud removal algorithms discussed above, allow for further terrain analysis to be undergone. Fig.~\ref{fig:ndvi_jan_av} shows an example of this where the cloud free image pixel values are used to calculate the NDVI values for vegetation identification. The image shown is that of January 2019 where there are multiple darker areas that can be classified as vegetation, and some lighter land values that are indicative of desert or soil. In an attempt to examine the change in these values over the seasons, we ran our code for the month of July 2019. Unfortunately due a general lack of cloud cover for July 2019, our Otsu algorithm was not suitable for cloud cover removal as in the absence of cloudy pixels it would classify the land pixels as cloud instead. We then attempted to use our inspection threshold values to remove cloud cover and calculate an average image for the month of July. This was partially successful however, as our estimated threshold values were not as complete as desired, multiple outlier pixels skewed our obtained NDVI values preventing an accurate plot of the vegetation over July. Via inspection of the obtained image, shown in Fig.~\ref{fig:ndvi_jul_av} the presence of vegetation in the month of July 2019 can be seen to be much diminished compared to the vegetation present in January due to seasonal change.
\subsection{Error Discussions}
When scanning the data provided to us for our project we noticed that some of the images in each of the bands were corrupted. These images contain black horizontal or partially white horizontal lines that obscured the southern hemisphere. As Meteosat-9 is spin stabilised and scans from east to west and from top to bottom, this could help to explain the presence of horizontal black and white lines. We can only speculate the SIVIRI instrument does occasionally run into a few issues when taking images and it may have decided to neglect an image mid scan for unknown reasons. Despite imaging errors, we continued to use the images to generate a cloud free image. From the results, the methods is reliable at removing clouds. This may be due to the fact that only around 10-20 images are corrupted out of 730 in each band, accounting for only a very small percentage of the total image data.
\par
Over the course of our project we also discovered that Otsu's algorithm for thresholding is ineffective for images that have cloud free days. During cloud free days, the algorithm tries to find the best threshold pixel value to maximise the inter-pixel variance and in doing so separates the land from the sea. This results in unnecessarily incomplete images when compared to clouded images. In addition, clouds that are smaller than 5$\times$5$\mathrm{~km}^{2}$ will not be recognised as spatial resolution is simply not high enough. Due to this, many smaller clouds are neglected in cloud coverage changes.
\par
\subsection{Taking the Project Further}
This project only studied three out of twelve spectral bands aboard Meteosat-9. To take this study further, one can apply the same imaging techniques to other spectral bands to see if the results hold the same, as well as building further on these to examine more features and phenomena. Furthermore, it would be interesting to apply these techniques to low Earth orbit (LEO) satellites that are able to image with meter and sub-meter resolution. Using other satellites such as the Landsat can show images in other spectral bands which is useful for studying deciduous and coniferous vegetation, soil and moisture content. This in turn can lead the way for in-depth NDVI analysis to observe and measure live green vegetation. Further analysis can also be conducted via the use of further terrain identification algorithms to examine features such as seasonal and continuous changes in sea temperatures, vegetation and crop growth, areas of particular interest in the current climate.
\par
This project also looked at image segmentation as a method for cloud detection. Due to time constraints, this was not able to be completed. To take the project further, comparisons can be made between different cloud detection and removal algorithms. This can include the use of different ANN architectures. A comparison of different methods would yield interesting results.