Page 56 -
P. 56

30    Chapter 2 ■ Edge-Detection Techniques


                             There are essentially three common types of operators for locating edges.
                                The first type is a derivative operator designed to identify places where
                                there are large intensity changes.
                                The second type resembles a template-matching scheme, where the edge
                                is modeled by a small image showing the abstracted properties of a
                                perfect edge.
                                Finally, there are operators that use a mathematical model of the edge.
                                The best of these use a model of the noise also, and make an effort to take
                                it into account.

                             Our interest is mainly in the latter type, but examples of the first two types
                           will be explored first.


                           2.2.3    Derivative Operators

                           Since an edge is defined by a change in grey level, an operator that is sensitive
                           to this change will operate as an edge detector. A derivative operator does
                           this; one interpretation of a derivative is as the rate of change of a function,
                           and the rate of change of the grey levels in an image is large near an edge and
                           small in constant areas.
                             Since images are two dimensional, it is important to consider level changes
                           in many directions. For this reason, the partial derivatives of the image are
                           used, with respect to the principal directions x and y. An estimate of the actual
                           edge direction can be obtained by using the derivatives in x and y as the
                           components of the actual direction along the axes, and computing the vector
                           sum. The operator involved happens to be the gradient, and if the image is
                           thought of as a function of two variables A(x,y) then the gradient is defined as:

                                                                 ∂A ∂A
                                                     ∇A(x, y) =    ,                       (EQ 2.3)
                                                                 ∂x ∂y
                           which is a two-dimensional vector.
                             Of course, an image is not a function and cannot be differentiated in the
                           usual way. Because an image is discrete, we use differences instead; that is, the
                           derivative at a pixel is approximated by the difference in grey levels over some
                           local region. The simplest such approximation is the operator   1 :
                                                ∇ x1 A(x, y) = A(x, y) − A(x − 1, y)
                                                ∇ y1 A(x, y) = A(x, y) − A(x, y − 1)       (EQ 2.4)


                             The assumption in this case is that the grey levels vary linearly between the
                           pixels, so that no matter where the derivative is taken, its value is the slope
                           of the line. One problem with this approximation is that it does not compute
   51   52   53   54   55   56   57   58   59   60   61