[vtkusers] undo changes to binary vtkImageData

Jonathan Morra jonmorra at gmail.com
Fri Jan 28 22:13:54 EST 2011


This is exactly what I wanted. I'll try and implement this and let you know
how it goes.

On Jan 28, 2011 7:11 PM, "David Gobbi" <david.gobbi at gmail.com> wrote:

On Fri, Jan 28, 2011 at 7:45 PM, Jonathan Morra <jonmorra at gmail.com> wrote:

>
> I have a binary vtkImageData that a user can modify through some tools I
provide them.  However,...
No, but it shouldn't be too hard to do this.  You can get a pointer to the
data by calling GetScalarPointer() on the image data.  The size of this data
(in bytes) will be product of the Dimensions, the NumberOfScalarComponents,
and the ScalarSize.

So, you should easily be able to compute a bytewise difference between two
images.  There's no reason to write a new filter for this, since it's just a
simple for() loop.  Then, you can use vtkDataCompressor::Compress() to
compress the diff so that it can be efficiently stored.  By doing everything
bytewise, you don't have to worry about different datatypes, and you
shouldn't lose anything in terms of efficiency.

If the image changes in size, then you could store a compressed copy of the
full image rather than dealing with the difficulty of diffing images of
different sizes.

I hope this helps.

  - David
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.vtk.org/pipermail/vtkusers/attachments/20110128/38684b94/attachment.htm>


More information about the vtkusers mailing list