how can i detect only the glass area for his spec

1 次查看(过去 30 天)
this is the original image
and from my work i just can get until this
this is my code
I=imread('viewImage.jpg'); FaceDetector=vision.CascadeObjectDetector(); BBOX=step(FaceDetector, I); Face=imcrop(I,BBOX); imshow(Face); Ib = rgb2gray(Face); figure, subplot(1,2,1), imshow(Ib); Ie = edge(Ib, 'sobel'); figure, subplot(1,2,1), imshow(Ie); Id = imdilate(Ie, strel('diamond', 1)); subplot(1,2,2), imshow(Id); If = imfill(Id, 'holes'); figure, imshow(If); stat = regionprops(If,'boundingbox'); hold on; for cnt = 1 : numel(stat) bb = stat(cnt).BoundingBox; rectangle('position',bb,'edgecolor','r','linewidth',2); end
thank you

采纳的回答

Dima Lisin
Dima Lisin 2015-4-23
You can create another `vision.CascadeObjectDetector` object to detect the eyes, by setting 'ClassificationModel' to 'Eye Pair'.

更多回答(0 个)

Community Treasure Hunt

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

Start Hunting!

Translated by