Automated Calving-Event Detection (ACED)
From Seamonster
Contents |
Introduction
This page describes an image processing method for the assessment of glacial terminus calving. The calving of icebergs is typically a variable process: sometimes as a glacier you calve a lot, sometimes not so much. We're curious what might be driving that, and if it proves to be important then what is the best method for keeping tabs on the process?
Questions
- Questions related to calving
- Is an increase in calving associated with events upstream like supra- or marginal lake drainage, precipitation, air temperature?
- Is glacier speed, primarily basal sliding, also connected?
- Would such associations give us an implicit mean subglacial water transport rate?
- Would seismic signals or hydrophone data do better / worse at characterizing calving?
- Can we estimate a terminus mass budget from this process?
- Estimate calving feature volume, integrate to get a calving mass loss rate
- Compare to estimated terminus mass loss due to melting and submarine calving
- Compare to mass loss estimated from glacier speed and terminus retreat
- Questions on the ACED methodology
- Can we initially take the automated result as is and bypass human verification?
- Tag the culprit pairs as dbase entries.
- This creates a closed-form initial solution that would double as an example of un-calibrated data.
- The diff images could be stored as SQL blobs for subsequent checking; check with Marijke.
- Can we initially take the automated result as is and bypass human verification?
The Idea
We have a camera which continuously (every N seconds) takes a picture of the glacier's calving front. If we could automatically scan these pictures for changes we could create an interesting and potentially very valuable dataset. This would also provide input data for a sensor web to react to.
An Example
The photos above show Mendenhall glacier just prior to and just after a calving.
The above shows the difference of the two photographs (computed by subtracting pixel values). The area of the calving is highlighted because it is the only major difference between the two images.
To combat noise, we can crop out extraneous elements of the picture, yielding the following.
To further aide analysis, we can convert the coloured difference image to monochrome. The remaining "live" pixels make up a binary array.
Now, in order to analyze groups of photos, we need only compare the quantity and locations of white pixels using a variety of metrics.
This shows the system at work when no calving has taken place. The two input images are different (look at the water ripples).
The difference image indicates, clearly, that no calving has taken place.
The Setup
The full suite of software being developed for this makes use of ImageMagick, Python, CImg, and C++.
Noise
Caused by clouds, kayaks, flocks of birds, and darkness.
Metrics
Average X and Y positions
For random noise the average should be approximately (0,0).
Standard Deviation of X and Y positions
May be smaller for calvings than non-calvings.
Total Number of Pixels
Limited by the upper size of calvings.
Channel Examination (Shelved, possibly Failed)
Consider the intensity of various color channels and relate this to calving probability. Of special interest would be the blue channel since calving tends to expose underlying blue ice where there had previously been white.
Unfortunately, the image differencing tends to produce a number of colours on various channels and its difficult to quantify what is and is not an acceptable blue or even to find blue amid the other colours (see the pictures above and note the variety of colours).
Thresholding
In a geometric image analysis, only "live" pixels are used (see above). Knowing the optimal properties of a live pixel will be important. The current algorithm lets pixels live based on their intensity as more intense pixels represent greater differences between the original pictures. The animation below shows a range of live pixel thresholds from 0% intensity to 26% intensity.
The effects of thresholding on standard deviations and averages are shown below. The red dot represents the average location of all the pixels, the red box represents the standard deviation added to and subtracted from the average location.
Killing
As per Conway's "Game of Life", it may be effective to apply some rules regarding neighbors to the pixels and kill of those who are "neighborless". To expound, you'll notice in the thresholding images above that even with a fairly generous threshold, many pixels are still relatively isolated from each other, while the calving pixels are tightly packed. This suggests that looking at localized concentrations of pixels will allow us to weed out the "noise".
Current Problems
1) It is possible that the calving front, over many days, may move out of the cropped region.
Human Analysis
The above shows a simple way of quickly categorizing calvings by magnitude.
The glacial front is divided into large sections used to locate the calving.
A grid is overlaid on the image. The degree of calving is then the number of boxes of in which ice is displaced or otherwise disturbed between sequential images.
The right grid size is, of course, subjective, but should be large enough that it's easy to work with for the human, but small enough to provide useful information and a spectrum of calving degrees. It may be that the grid applied for 30 second intervals (our current photo interval) should be different than that applied for longer intervals.













