Controlling detected objects inside an image
이전 댓글 표시
Hi, I have a binary image that includes a black background and two white objects; a triangle and a circle.
I tried to control those objects separately by using their label number but I have know clue how to do that! I know how to allocate object and even count those objects but failed to get control over them.
I'm trying for example to save an object in an array and displays it. Another example is to find the no of pixels(size) of that object. One more example is to change the color of the object to black (make it back ground).
I don't want to use loop functions in the whole image instead I want to use/access the object itself as a separate matrix or as an object.
Is that possible in matlab? Is there any direct command that can do that or I have to do some script coding? How to control an object as a separated matrix? Is there an alternative solution?
Best Regards
채택된 답변
추가 답변 (1개)
Walter Roberson
2011년 9월 9일
The functions provided by the Image Processing Toolbox are not object-oriented.
regionprops() applied to a labeled image returns statistics (including number of pixels). You can use the Bounding Box information to extract the height and width of the containing rectangle for the object: once you have that, you can easily copy out that sub-rectangle in to a receiving rectangle of the same size. If there might be other objects overlapping the bounding box, you can nullify them with something like
IsolatedObject(IsolatedObject ~= ThisLabel) = 0;
You can erase an object out of the original matrix by
IMG(IMG == ThisLabel) = 0;
If you recorded the regionprops PixelIdxList and PixelValue before-hand, you can restore the object by setting
IMG(recordedPixelIdxList) = recordedPixelValue;
댓글 수: 3
Nayef
2011년 9월 10일
Sucheta
2012년 2월 27일
Can you please specifically tell how to find out height and width of a particular connected component??
Image Analyst
2012년 2월 27일
Try the "BoundingBox" measurement given by regionprops().
카테고리
도움말 센터 및 File Exchange에서 Region and Image Properties에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!