How do I resize (connected) components in a 3D binary image sequence without changing the dimensions of the sequence?
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Nora
am 3 Dez. 2013
Bearbeitet: Sean de Wolski
am 3 Dez. 2013
I'd like to resize the components contained in a 3D binary image sequence without changing any of the dimensions of the sequence itself.
I'm not sure if I need to do it on a component-by-component basis, if yes, then how do I create a transform such that the resized components are re-positioned 'correctly' in the image sequence? By 'correctly', I mean with the same center of mass as the original components.
(If that last paragraph doesn't make sense then please ignore)
A 2D example: suppose I wanted to enlarge by 10% the white blobs in the following [295x445] image
How would you do this without making the image itself larger?
Thanks in Advance,
N
2 Kommentare
Sean de Wolski
am 3 Dez. 2013
Bearbeitet: Sean de Wolski
am 3 Dez. 2013
Huh? Can you show us a 2d example of what you want with a random binary image?
Akzeptierte Antwort
Sean de Wolski
am 3 Dez. 2013
Bearbeitet: Sean de Wolski
am 3 Dez. 2013
Use imdilate. If you want to keep each object unique, label it first:
bw = imread('coins.png')>100;
imtool(bw)
Lbig = imdilate(bwlabel(bw),strel('disk',6));
imtool(label2rgb(Lbig));
0 Kommentare
Weitere Antworten (1)
Image Analyst
am 3 Dez. 2013
You would have to identify the blobs you want to enlarge, perhaps by area or whatever. So now you have to images of blobs to enlarge, and another one without those in there. Then you can "grow" each blob with imdilate() and OR back into the image without them to get the final image.
0 Kommentare
Siehe auch
Kategorien
Mehr zu Image Processing Toolbox finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!