how to do the distance transform
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
Hi,all.I am processing a image. I need to do the distance transformation.This is my code:
myImage=imread('EarImage_1.tif');
I = rgb2gray(myImage);
whitePart = I > 220;
blackPart = I < 110;
imshow(whitePart);
I2=1-blackPart;
figure,imshow(I2);
D=bwdist(I2);
figure,imshow(~D);
This is my original picture:
After this process,I got an image just the same as "I2",which is the binary image before. I didn't get the picture as expected. I am a beginner of matlab. If anyone could tell me the solution of that, I would appreciate very much.
Thank you.
1 Commento
Walter Roberson
il 12 Dic 2011
http://www.mathworks.com/matlabcentral/answers/7924-where-can-i-upload-images-and-files-for-use-on-matlab-answers
Risposta accettata
Sean de Wolski
il 12 Dic 2011
showing ~D means that only distances equal to zero (i.e. points that are true in I2) will be shown. D is an array of doubles.
imshow(D,[]);
will show you the distance xform image with the full range of values. Good job getting to where you are, +1.
2 Commenti
Sean de Wolski
il 13 Dic 2011
We need to see your image. Post it somewhere, perhaps to one of the websites in Walter's comment link and paste the url into your original question.
Più risposte (1)
Walter Roberson
il 12 Dic 2011
Do not subtract blackPart from 1 if you want to see white pixels for the locations selected by blackPart.
1-(I<110) is the same as (I>=110) which could look very similar to (I>220) that you are already plotting. All of the (I>220) would be included within the (I>=110)
0 Commenti
Vedere anche
Categorie
Scopri di più su Image Processing Toolbox in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!