Conversion to double from struct is not possible with bwconncomp
Ältere Kommentare anzeigen
So have this code but it keeps giving me an error at the bwconncomp line that says, Conversion to double from struct is not possible
for l=1:256 for m=1:256 for n=1:50
if (IMG(l,m,n) > 0.001)
if (( IMG(l,m,n) > 0.001)&&(IMG(l,m,n) < 0.19))
IMG(l,m,n)=1;
else
IMG(l,m,n)=0;
end
end
end
end
end
cc = zeros(256,256,50);
IMGT = zeros(256,256);
for ii = 1:50
IMGT=IMG(:,:,ii);
cc(:,:,ii) = bwconncomp(IMGT);
end
Any idea where the problem can be?
Antworten (1)
Image Analyst
am 13 Feb. 2014
0 Stimmen
That's not a good way to binarize if you're simply comparing to a threshold.
Explain exactly what "didn't work for me" means. Do you get an error message?
4 Kommentare
M
am 15 Feb. 2014
Image Analyst
am 15 Feb. 2014
What did you do in your "binarizing process" such that it turned the image into a structure?
M
am 16 Feb. 2014
Image Analyst
am 16 Feb. 2014
That's not going to turn it into a structure. Anyway the whole thing (triple nested for loop) can be done a lot faster simply by doing this single line
IMG = IMG > 0.001 & IMG < 0.19;
No for loops needed at all. You should learn how to write vectorized code.
Kategorien
Mehr zu Image Type Conversion finden Sie in Hilfe-Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!