### CS 223B Project: Color Edge Detection Theory

#### Theory

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.