MATLAB Answers

Color Edge Detection Using Euclidean Distance and Vector Angle

17 views (last 30 days)
tarun on 9 May 2013
I have to write a code which would detect edge using Euclidean Distance and vector angle. It is based on the usage of hue and saturation in a color image to capture more accurate edge data. The purpose is to understand the complex scenes in an image.
I m confused on how to start. I know the theory .
1. Firstly the edge in an image is detected. 2. Once it is detected other processing such as region segmentation, text finding, and object recognition can take place. 3. The principle is quite same as it is for gray scale images. The color images are read the same way as the gray scale image. A typical color image capturing system relies on a trichromatic input based on the additive primary colors Red, Green and Blue.
Can someone please give be an idea about it? like what inbuilt edge detectiuon methods should I implement?

Answers (1)

Image Analyst
Image Analyst on 9 May 2013
It seems like a sensible way to measure color edges would be to use the color difference, Delta E. A few weeks ago I wrote a demo for someone who wanted to do the same thing as you. Basically it computes the difference in color between each pixel and its 8 surrounding neighbor pixels. This gives you a delta E image, which represents color difference. Then you can threshold that to get a binary image that is "edges", or pixels with big color difference from their neighbors. Here is the demo:

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!