I have an image of rods and disk and i need to suppurate the rods only using morphological processing i need the mean steps only

 Akzeptierte Antwort

Image Analyst
Image Analyst am 30 Dez. 2013

0 Stimmen

You forgot to post your image. I don't know how you define "mean steps". Please explain.
If the image looks like what I'm imagining, something like pencils and coins, or this:
Then I'd threshold and call regionprops and look at the ratio of the major to minor axis. If the ratio is high, it's a rod. If the ratio is less than about 2, it's a disc.

3 Kommentare

Image Analyst
Image Analyst am 30 Dez. 2013
Hasan said this in his "Answer" which I moved here:
this is the image
Image Analyst
Image Analyst am 30 Dez. 2013
I'd look for objects with a solidity close to 1 and a major to minor axis ratio close to 1. That will be the circles. Everything else will be rods or rod/disc overlap.
Hasan alomari
Hasan alomari am 31 Dez. 2013
Bearbeitet: Image Analyst am 31 Dez. 2013
make opening with disk the subtract it from the original image, like this
I=imread('Untitled.jpg');
I=I(:,:,1);
str= strel('disk',4);
Im=imopen(I,str);
rotI = imrotate(Im,33,'crop');
BW = edge(rotI,'canny');
[H,T,R] = hough(BW);
P = houghpeaks(H,5,'threshold',ceil(0.3*max(H(:))));
lines = houghlines(BW,T,R,P,'FillGap',5,'MinLength',7);
str2=strel('line',3, 10);
im=I-Im;
im2=imclose(im,str2);
imshow(im2)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Community Treasure Hunt

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

Start Hunting!

Translated by