Edge detection only in a region of an image

5 次查看(过去 30 天)
I have an image and I want to make edge detection only on a region of this. In order to do so I have created a complex polygon using roipoly. Does anyone know how to perform edge detection on this region now? Thank you very much in advance

回答(1 个)

Vishal Neelagiri
Vishal Neelagiri 2017-1-17
You can use the 'edge' function to detect the edges in an image. You can also use this on the output of the 'roipoly' function. For example:
I = imread('eight.tif');
c = [222 272 300 270 221 194];
r = [21 21 75 121 121 75];
BW = roipoly(I,c,r);
figure, imshow(I)
figure, imshow(BW)
edge(BW)
You can refer to the following documentation links:
https://www.mathworks.com/help/images/ref/roipoly.html#f6-163815
https://www.mathworks.com/help/images/ref/edge.html

Community Treasure Hunt

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

Start Hunting!

Translated by