Azzera filtri
Azzera filtri

How to detect unstructered objects in an image ?

2 visualizzazioni (ultimi 30 giorni)
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:
Step 1:
image = imread('Im_005.jpg');
I = rgb2gray(image);
J = imresize(I, 0.5);
E = histeq(J);
figure(4), imshow(E)
Step 2:
bw = imbinarize(E);
se3 = strel('disk',1);
dilation = imdilate(bw,se3);
figure(5),imshow(dilation)
cc = bwconncomp(dilation, 8);
cc.NumObjects;
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.

Risposta accettata

Image Analyst
Image Analyst il 19 Mag 2018
Use regionprops():
dilation = ~imdilate(bw,se3);
props = regionprops(dilation, 'Centroid');
  1 Commento
Ender Rencuzogullari
Ender Rencuzogullari il 20 Mag 2018
Modificato: Ender Rencuzogullari il 20 Mag 2018
Thank you. regionprops() function and "~" gave me an idea to solve my problem.

Accedi per commentare.

Più risposte (0)

Prodotti


Release

R2017b

Community Treasure Hunt

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

Start Hunting!

Translated by