The Sobel operator is a simple edge detection filter, which is often used in image processing where it is used by using the convolution algorithm as ( Sobel algorithm). This computes the first derivative of the pixel brightness values, at the same time orthogonal to the discharge direction is smoothed.

The algorithm uses a convolution using a 3 x 3 matrix ( convolution matrix ) generating from the original image, a gradient image. This high frequencies are shown in the image gray values ​​. The areas of greatest intensity are where the brightness of the original image most changes and thus represents the largest edges. Therefore, a threshold function is usually applied after the convolution with the Sobel operator. However the algorithm can also be applied to other two-dimensional signals.

From the original image, the area around the point to be considered is for each pixel always only a segment, specifically used. For this purpose, a matrix is ​​defined whose components represent the change in weighting the vicinity of the point. The matrix is ​​usually designed to be symmetrical, so that no change in the environment leads to a zero-sum ( see below). Now, using the Sobeloperatoren and the folded results and calculated:


By utilizing the separability, the computing time can be greatly reduced.

Then all components of the matrix are summed to get their gray value. A directional information can be obtained by combining two results:

The direction of a gradient is obtained by the formula

Where atan2, the " inverse tangent " with two arguments is.

Here, the value describes a vertical edge. Positive values ​​describe a counterclockwise rotation.

Sample Images

Scratching operator

The Sobel operator has no perfect rotational symmetry. Take better account of this is with the scratching operator: