[vtkusers] vtkImageData for non-contiguous memory

Aaron Boxer boxerab at gmail.com
Fri Jun 24 19:51:43 EDT 2011


Thanks, David. I will look into vtkImageDataStreamer.

I'm not writing the data to disk, just displaying.

I've implemented my own MPR engine a while back, and I imagine
it would not be to hard to switch from a one dimensional array of voxels
to an array of pixel arrays. i.e. from byte[] to byte[][].
Just more computationally expensive, and you get more cache misses.

I may roll my own version of vtkImageReslice.

Cheers,
Aaron



On Fri, Jun 24, 2011 at 6:56 PM, David Gobbi <david.gobbi at gmail.com> wrote:
> You can try using vtkImageDataStreamer to pull the data through the pipeline
> in smaller chunks.  For example, you can place vtkImageDataStreamer right
> after vtkImageReslice in your pipeline.
>
> If you are going to write the data to disk, ideally you should write each slice
> to a separate file.  In other words, run the writer in a for loop where you keep
> on advancing it to the next slice, setting the filename for that slice, and then
> calling Write().
>
>  - David
>
>
> On Fri, Jun 24, 2011 at 4:45 PM, Aaron Boxer <boxerab at gmail.com> wrote:
>> Hello!
>>
>> I am using vtkImageData and vtkImageReslice
>> to calculate multip-planar reformatting on stacks
>> of CT images. I  need to run
>> this on a 32 bit system, so it is hard to get large contiguous
>> blocks of memory.
>>
>> Is it possible for vtkImageData to reference a sequence of 2D memory
>> buffers, where the sequence is not contiguous in memory?
>> This would allow me to re-slice larger stacks.
>>
>> Thanks!
>>
>> Aaron
>



More information about the vtkusers mailing list