Edge detection

A good friend once showed me some interesting work he was doing utilizing a funky image feature detector called a Gabor filter. The mask itself is probably from the imagination of Nobel-winning Dennis Gabor, and the friend was generating some spangly pictures with it (and pursuing some interesting research). With only brief thought spared for useful application, this Image Processing feature, the first on this site to use any real Image Processing techniques, places the focus on fun imagery, with the subject here being Warhawks, since the sublime aircraft lend themselves very well to edge detection.

A Gabor filter relies on the following parameters, included here from a LaTeX doc to improve presentation (in theory):

Gabor Filter Parameters

The actual Gabor filter equation is given below, with an image of the filter itself alongside:

Gabor Filter Parameters

Applying eight different orientations of the mask, edges in all directions will give a peak response to one filter or another and so, taking the maximum response for each pixel of an image, over each filter used, an output image highlighting the edges detected by the Gabor filter can be created. Before getting started with Warhawk test images, the following image illustrates the responses provided by four different filter orientations. With the angle measured from the vertical, the four orientations are (i) pi/4, (ii) 0, (iii) pi/2, and (iv) 3*pi/4. The combination of the four filters, choosing the maximum response for each pixel, is given in (v). The original picture, a Wipeout image (the glorious AG-Systems ship) finishes the image in (vi). Greater sensitivity to edge orientation is offered using eight filter orientations, though there is little merit to increasing that number further (response sensitivity change decreases, but processing requirements rapidly increase).

Gabor Filter Orientations
Warhawk test image

The first test image, featuring a Warhawk with little in the way of clutter nearby, provides an excellent view of the response that can be expected from the application of a Gabor filter to an entire image. The bright pixels indicate a strong response, and clearly the bright lines show a strong outline and other edges of the Warhawk.

Underwater Warhawk

In the second image, purely for fun, the Gaussian blur and spatial aspect ratio are both increased significantly, leading to a watery effect as if the Warhawk is currently flying underwater. Good for brief entertainment, but likely without useful application.

Cluttered scene, colour-coded responses

The final picture, deliberately chosen because of the clutter in the image (perhaps unusual for anti-air applications, for example), uses simple thresholds to determine the colour of the response values from the Gabor filter. The strongest scores are highlighted in blue, with each of the aircraft clearly providing the highest values. Other line features providing moderate edge responses are coloured green: these include background features including the city and distant aircraft as well several foreground lines generated by the weapons fire. The red highlights are generated by miniature edges that blur into nothingness, and can easily be ignored using thresholds. Though the hard work is ignored here, it's the strong responses, particularly with sensitivity to orientation, that could be used effectively in identification exercises. In Warhawk, it'd be an interesting exercise to setup automated defences that respond to particular peaks in Gabor response, generated by characteristic edges from the formidable Warhawks. On the plus side, it might even ignore the Nemesis to avoid friendly fire!


Applying only the most stringent threshold (yielding the blue regions above), the image below shows the strongest responses only, which detect only the three nearest Warhawks, as well as a few streaks of weapons fire. These are the features that a classifier would be trained to look for when attempting to detect Warhawk presence in an image. It just needs thousands of test images, with varying contrast, orientation, clutter, obscuration and more to train the classifier effectively. That's one task to leave for the Chernovans though - personally I like the Warhawks too much!


MeteorStorm Random Quote Picker



Not even I was designed perfectly. I was designed with too much empathy for human suffering. I overcame that problem, true story.