How to select a region if we click inside it?
3 ビュー (過去 30 日間)
古いコメントを表示
Dear all,
I have a binary image same as the one I show here which contains few honeycomb regions connected to each other. Now I want a single honeycomb to be selected when the user makes a left click using the mouse inside the desired honeycomb. Any idea how

to do that?
Any suggestions will be appreciated.
Sincerely, Mueshoo
0 件のコメント
採用された回答
Matt J
2014 年 1 月 8 日
Use WAITFORBUTTONPRESS and get(gca,'CurrentPoint') to detect the location of the click.
Then use INPOLYGON to detect which honeycomb was selected.
3 件のコメント
Matt J
2014 年 1 月 14 日
For example the rows of V
V=[0 0 ; 1 0; 0 1]
are vertices of a triangle.
Since (0.1,0.2) lies inside the triangle, this returns true
>>inpolygon(0.1,0.2,V(:,1),V(:,2))
ans =
1
and conversely this returns false,
>> inpolygon(.1,1.2,V(:,1),V(:,2))
ans =
0
その他の回答 (1 件)
Image Analyst
2014 年 1 月 15 日
Mustafa: Here's how to do it step by step:
- invert the image
- call imclearborder
- label the binary image with bwlabel
- call [column, row] = int32(ginput(1)) to let the user click somewhere
- get the label with labelNumber = labeledImage(row, column)
- extract the object with extractedObject = ismember(labeledImage, labelNumber)
- Make it binary again binaryImage = extractedObject > 0;
- display it with imshow(binaryImage, []);
See if you can program that up and attach your code if you have problems.
6 件のコメント
YEIMY LISETH QUINTANA VILLAMIZAR
2016 年 10 月 23 日
Can you help me? please,
I need that the program recognize a image of another image, loading a image that is a circle and loading other that is a ellipse.
How I can make that the program recognize that the image is a circle or a ellipse ?
Image Analyst
2016 年 10 月 24 日
See my shape recognition demo, attached.
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!