process a large stack of 2-d images

how is it possible to use bwconncomp or in general process a stack of 2000 images with the size of 2000x2000, I dont think block processing would work in this case..

Answers (1)

Matt J
Matt J on 9 Mar 2013
bwconncomp will accept a 3D stack directly. You can specify 2D connectivity with the conn argument.

7 Comments

but the problem is the size of images, I cant make the matrix from images
If it's a memory limitation, then why not just for-loop over the images, reading in and processing one at a time.
Yes, it is. But the purpose is to extract 3d morphological information for example doing 3d bwconncomp
Is the BW array sparse?
some slices yes, some not,just like slices of a sphere, in center the values are mostly 1 but on top or bottom ends are mostly 0
I meant, how sparse is BW as a volume? In other words, what is
density = nnz(BW)/2000^3
I assume you don't have enough memory to hold BW as a volume, but the density is something you could easily calculate by looping over the slices. If BW is not sparse (low density), you might not even have enough memory to hold the result of the connectivity map.
B
B on 12 Mar 2013
Edited: B on 13 Mar 2013
In fact I was able to modify the problem to get a less dense matrices, the whole information are now stored in two 1800*1800*811 matrices with densities of 0.0257 and 0.0215, Now how can I merge all information in one matrix to use bwconncomp...

Sign in to comment.

Categories

Asked:

B
B
on 9 Mar 2013

Community Treasure Hunt

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

Start Hunting!