Geometric shape detection with regionprops

7 visualizzazioni (ultimi 30 giorni)
Hi i want to modified hte code i have to be abble to detect horizontal rectangle and vertical rectangle. Right now, the code i have can detect square circle and triangle real well. So how should i modify the extent and eccentricity for detecting rectangles?
Here's the code :
function [Boxes] = ObjDt(InputImg) %Rajouté BoxesPos
% function determining whether the unknown objects by their geometric shape
% count the number of found objects
Index=1;
% structure to store the coordinates of the outlines of the detected objects
Boxes=struct('Box',[]);
% BoxesCell=struct2cell(Boxes); %Rajouté pour avoir les Coordonnées dans un vecteur
% BoxesPos=cell2mat(BoxesCell); %Rajouté pour avoir les Coordonnées dans un vecteur
for s=1:3
%color filtration
img = double(ColorDt(InputImg,s));
% determine the number of objects in the image
[imgN, num] = bwlabel(img,4);
% obtain the properties of detected objects
f = regionprops(imgN,'BoundingBox','Centroid','Extent','Eccentricity'); %Changer imfeature pour regionprops
%square
for i=1:num
if(f(i).Extent>=0.78) & (f(i).Extent<0.95) & (f(i).Eccentricity<0.9) & (f(i).Eccentricity>=0.2)
Boxes(Index).Box=f(i).BoundingBox;
Index=Index+1;
end
end
%circle
for i=1:num
if(f(i).Extent<0.78) & (f(i).Extent>=0.65) & (f(i).Eccentricity<0.8) & (f(i).Eccentricity>0.3)
Boxes(Index).Box=f(i).BoundingBox;
Index=Index+1;
end
end
%triangle
for i=1:num
if(f(i).Extent>0.3) & (f(i).Extent<0.6) & (f(i).Eccentricity<0.8) & (f(i).Eccentricity>0.2)
Boxes(Index).Box=f(i).BoundingBox;
Index=Index+1;
end
end
end
end
  2 Commenti
Susenjit Ghosh
Susenjit Ghosh il 29 Dic 2017
what to enter in input image while running
Ahaana Khurana
Ahaana Khurana il 4 Feb 2020
The code is not working. Pls check the code and revert

Accedi per commentare.

Risposta accettata

Image Analyst
Image Analyst il 8 Feb 2013
No, you don't look at the eccentricity. You can look either at the orientation, or check the width vs. height of the bounding box.

Più risposte (1)

Paul
Paul il 22 Feb 2014
Hello,
I am very interested in what you are doing. I have been doing research for undergraduate and would like to know more about your program. Would this program find how many circle objects are in an RGB image? Email : pfon1800@students.vsu.edu Cell : 3017934167

Community Treasure Hunt

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

Start Hunting!

Translated by