How to detect unstructered objects in an image ?
조회 수: 2 (최근 30일)
이전 댓글 표시
Hi,
I have an RGB image which has black objects on it to detect, find center of it and label with a circle. I applied some proccesses on it but cannot achieve. Here is the steps that I have applied:
Original Image:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/190668/image.jpeg)
Step 1:
image = imread('Im_005.jpg');
I = rgb2gray(image);
J = imresize(I, 0.5);
E = histeq(J);
figure(4), imshow(E)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/190669/image.jpeg)
Step 2:
bw = imbinarize(E);
se3 = strel('disk',1);
dilation = imdilate(bw,se3);
figure(5),imshow(dilation)
cc = bwconncomp(dilation, 8);
cc.NumObjects;
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/190670/image.jpeg)
However, although I have tried lots of method (morphological etc.), I could not figure out how to find the center points of black objects and label them with a circle. Also,
cc = bwconncomp(dilation, 4);
gives output as "number of objects: 1" although there are two objects. How can I solve this problem?
Best.
댓글 수: 0
채택된 답변
Image Analyst
2018년 5월 19일
Use regionprops():
dilation = ~imdilate(bw,se3);
props = regionprops(dilation, 'Centroid');
추가 답변 (0개)
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!