Frei-Chen operator

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

The Frei-Chen operator, sometimes called Frei and Chen operator, is used in image processing for edge detection. It was proposed by Werner Frei and Chung-Ching Chen, researchers at USC's Image Processing Institute, in 1977.[1] The idea is to use a set of orthogonal basis vectors related to distinctive image features, which enable the algorithm to extract boundary elements effectively.

Formulation

[edit | edit source]

The operator uses nine 3x3 kernels which are convolved with the original image to calculate the gradient.

We define the nine kernels W1,...,W9 as:

W1=[121000121]W2=[101202101]

W3=[012101210]W4=[210101012]

W5=[010101010]W6=[101000101]

W7=[121242121]W8=[212141212]

W9=[111111111]

  • The pair (W1,W2) is the isotropic average gradient
  • The pair (W3,W4) is used to detect ripples
  • The pair (W5,W6) is used to detect lines
  • The pair (W7,W8) is the discrete laplacian operator
  • W9, the averaging operator, added to complete the basis
  • W1,...W4 are used for edges subspace, W5,...W8 used for lines subspace and W9 is used to compute averages

Let B be the image sub-area, and θ be the angle (in n2space), e is the number of orthogonal edge basis vectors W1,...We spanning the edge subspace.

θ=arccos[i=1e(B*Wi)2/i=19(B*Wi)2]12

The larger θ, the poorer the fit between B and an element of the edge subspace.

The strategy is to classify image sub-area as containing and edge element only if θ is small which is done by thresholding.

Simple description

[edit | edit source]

The image is convolved with each of the kernel. Thus, 9 results are obtained.

Vectors W1,...W4 are used for edge subspace identification. Hence numerator in the formula will be i=14(B*Wi)2. Similarly, for line subspace identification, the numerator will be i=58(B*Wi)2.

Using formula, we compute θ, if it is above a certain threshold r, we say that an edge is detected in the image sub-area.

Example comparisons

[edit | edit source]

Here, frie-chen operator, along with three different gradient operators is used to detect edges in the test image.

See also

[edit | edit source]

References

[edit | edit source]
  1. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).