CS 223B Project: Color Edge Detection Theory

Kate Starbird / John Owens


Consider a color image as a mapping from R2 (x, y) to R3 (r, g, b). The Jacobian of this mapping is

        [ dr/dx  dr/dy ]
    J = [ dg/dx  dg/dy ]
        [ db/dx  db/dy ]

Set the 2 x 2 matrix Q = J' * J. The eigenvector v corresponding to the greater eigenvalue of Q is the direction of maximum change at any given point, and the corresponding eigenvalue l is the square of the change in the magnitude of (r,g,b) in that direction.

Now, the Canny operator "detects edges at the zero-crossings of the second directional derivative of the smoothed image in the direction of the gradient where the gradient magnitude is above some threshold". [Nalwa, p.90]

Thus in the color method outlined above, sqrt(l) * v is the equivalent of Canny's "direction of the gradient." sqrt(l) is the gradient's magnitude; v is its direction.

The idea for the above was contributed by Professor Carlo Tomasi.

Return to project overview.