We have developed a suite of algorithms to identify and track mesoscale ocean eddies in SSH altimeter data. You can find the full code repository on GitHub Ocean Eddies code repository. You are welcome to download, run, and make contributions to the project.

Eddy Identification

EddyScan

EddyScan is our first generation eddy identification algorithm inspired by Chelton et al. (2011). The algorithm employs an iterative-thresholding approach to identify close contour SSH features. These features are subsequently filtered based on expert-criteria such as minimum and maximum feature size. You can view the source code here. You can read more about EddyScan in Faghmous et al. (2012).

EddyScan 2.0 (in progress)

EddyScan 2.0 is a parameter-free iterative-threshold method. Unlike the original EddyScan we do not impose any expert-criteria on the features identified. Instead we use the spatio-temporal context of the data to dictate the boundaries of the features. This work is currently under peer review.

Eddy Tracking

Local Nearest Neighbor (LNN)

LNN is the most common eddy tracking algorithm. The goal is to attach an eddy-feature from one time frame to the next to construct eddy trajectories. LNN attempts to attach each feature in one time step to the nearest feature in the subsequent time-step within a pre-defined search space. Some limitations of this approach are discussed in Faghmous et al. (2013).

Multiple Hypothesis Assignment (MHA)

MHA addresses some of LNN's limitations and works by storing all plausible tracks a feature could be associated with until a relatively unambiguous assignment can be made. MHA also assumes that the features it is tracking are noisy and uncertain. As such, it allows features to "disappear" for a single time-step and also is able to autonomously detect and correct for features that might have merged multiple eddies. You can read more about MHA in Faghmous et al. (2013).