The wide availability of workstations has made the creation of sophisticated image processing algorithms economically possible. Here the latest version of an algorithm designed to detect fronts automatically in satellite-derived Sea Surface Temperature (SST) fields, is presented. The Algorithm operates at three levels: picture level, window level, and local/pixel level, much as humans seem to. Following input of the data, the most obvious clouds (based on temperature and shape) are identified and tagged so that data which do not represent sea surface temperature are not used in the subsequent modules. These steps operate at the picture and then at the window level. The procedure continues at the window level with the formal portion of the edge detection. Using techniques for unsupervised learning, the temperature distribution (histogram) in each window is analyzed to determine the statistical relevance of each possible front. To remedy the weakness related to the fact that clouds and water masses do not always form compact populations, the algorithm also includes a study of the spatial properties instead of relying entirely on temperatures. In this way, temperature fronts are unequivocally defined. Finally, local operators are introduced to complete the contours found by the region based algorithm. The resulting edge detection is not based on the absolute strength of the front, but on the relative strength depending on the context, thus making the edge detection temperature-scale invariant. The performance of this algorithm is shown to be superior to that of other algorithms commonly used to locate edges in satellite-derived SST images.