[vtkusers] Announcement: New image rendering classes for VTK

Jothy jothybasu at gmail.com
Mon Jun 27 10:34:15 EDT 2011


I wonder whether these classes has any fix for the different coordinates
used by DICOm and vtk?

Thank you

Jothy

On Mon, Jun 27, 2011 at 3:31 PM, Lic. José M. Rodriguez Bacallao <
jmrbcu at gmail.com> wrote:

> so, when this classes will be available in stable vtk?
>
> right now I am working with an snapshot from vtk git.
>
> On 6/27/11, Aashish Chaudhary <aashish.chaudhary at kitware.com> wrote:
> > Hi David,
> >
> > What Aaron said  +  Awesome!! (one more time)
> >
> > Looking at the features list, I think our project will be greatly
> > benefited by your work. Thanks for sharing your work.
> >
> > Regards,
> > Aashish
> >
> >
> > On Mon, Jun 27, 2011 at 8:47 AM, Aaron Boxer <boxerab at gmail.com> wrote:
> >> Awesome!!! Nice work; can't wait to use these classes.
> >>
> >> Aaron
> >>
> >> On Sun, Jun 26, 2011 at 6:15 PM, David Gobbi <david.gobbi at gmail.com>
> >> wrote:
> >>> I'm pleased to announce that I have finally completed my work on
> several
> >>> new
> >>> image rendering classes for VTK.  They are in the VTK git development
> >>> tree,
> >>> and a few of you have already tried them out (if you are one of those
> >>> people, note that several feature and performance enhancements were
> added
> >>> last week).  More info can be found at the following wiki page:
> >>>
> >>> http://www.vtk.org/Wiki/VTK/Image_Rendering_Classes
> >>>
> >>> In brief, these classes replace vtkImageActor and provide a much higher
> >>> level of functionality.  They are new VTK actor and mapper classes
> >>> specifically meant for image viewing.  What they are not: they are not
> >>> widgets or viewers, although they provide machinery that can be used to
> >>> write widget and viewer classes.  In other words, they are meant for
> >>> people
> >>> who like to roll their own image viewers.
> >>>
> >>> The three new classes that I recommend for people to use are the
> >>> following:
> >>> vtkImageSlice - the new actor class for images
> >>> vtkImageResliceMapper - mapper for drawing images for MPR viewers
> >>> vtkImageProperty - for controlling lookup tables, window/level,
> opacity,
> >>> etc
> >>>
> >>> Typical use cases:
> >>>
> >>> 1) For an MPR viewer, use vtkInteractorStyleImage and set it to your
> >>> desired
> >>> view orientation. Then set the following properties in
> >>> vtkImageResliceMapper:
> >>> mapper->SliceFacesCameraOn()
> >>> mapper->SliceAtFocalPointOn()
> >>> The interactor will then allow you to pan, zoom, window/level, and (in
> 3D
> >>> mode) rotate and slice.  See
> >>> VTK/Examples/ImageProcessing/ImageInteractorReslice.py for an example.
> >>>
> >>> 2) For a 3D ortho object, use multiple vtkImageResliceMapper objects,
> and
> >>> for each one make a vtkPlane that describes the normal and position of
> >>> the
> >>> slice to extract. Then call these methods:
> >>> mapper->SetSlicePlane(plane)
> >>> mapper->ResampleToScreenPixelsOff()
> >>> Turning the "ResampleToScreenPixels" option Off makes rotation faster,
> so
> >>> it
> >>> is recommended when rotations are going to be common operations.
> >>>  Example:
> >>> VTK/Rendering/Testing/Cxx/TestImageResliceMapperOffAxis.cxx
> >>>
> >>> Features:
> >>> 1) oblique views (obviously!)
> >>> 2) nearest-neighbor, linear, and cubic interpolation
> >>> 3) modify image orientation with respect to world coords by setting
> >>> vtkImageSlice's UserMatrix
> >>> 4) fully multi-threaded reslicing and color mapping operations
> >>> 5) streaming, i.e. only pulls the data needed for rendering
> >>> 6) works well with very large images (as long as they fit in memory)
> >>> 7) LOD-style interaction (switches to faster rendering for interaction)
> >>> 8) blend images by adding multiple vtkImageSlice objects to a
> >>> vtkImageStack
> >>> 9) checkerboard images by setting "CheckerboardOn" in the
> >>> vtkImageProperty
> >>> 10) thick-slab views (see vtkImageResliceMapper for details)
> >>> 11) works with vtkCellPicker for picking image voxels as points or
> cells
> >>>
> >>> For large image viewing, on a 4GB computer (64-bit OS X) I've displayed
> >>> images up to 3GB in size with full interactivity, but YMMV.  As long as
> >>> the
> >>> mapper's ResampleToScreenPixels option is On, the mapper will never try
> >>> to
> >>> load the full image onto the GPU (which is what causes the
> vtkImageActor
> >>> to
> >>> be slow for large images).  The size of the images that you can display
> >>> is
> >>> limited only by main memory, I have displayed stacks of RGB images that
> >>> are
> >>> 10000x10000 pixels in size.
> >>>
> >>> I do not plan to push these into the VTK 5.8 release (even if Kitware
> >>> were
> >>> to give me the go-ahead), because the VTK development tree has diverged
> >>> too
> >>> far from the VTK 5.8 release tree.  These new image classes are only
> >>> possible due to recent improvements that I've made to the picker,
> lookup
> >>> table, and image reslice classes and they probably depend on a handful
> of
> >>> recent changes made by other people, as well.
> >>>
> >>>  - David
> >>> _______________________________________________
> >>> Powered by www.kitware.com
> >>>
> >>> Visit other Kitware open-source projects at
> >>> http://www.kitware.com/opensource/opensource.html
> >>>
> >>> Please keep messages on-topic and check the VTK FAQ at:
> >>> http://www.vtk.org/Wiki/VTK_FAQ
> >>>
> >>> Follow this link to subscribe/unsubscribe:
> >>> http://www.vtk.org/mailman/listinfo/vtkusers
> >>>
> >>>
> >> _______________________________________________
> >> Powered by www.kitware.com
> >>
> >> Visit other Kitware open-source projects at
> >> http://www.kitware.com/opensource/opensource.html
> >>
> >> Please keep messages on-topic and check the VTK FAQ at:
> >> http://www.vtk.org/Wiki/VTK_FAQ
> >>
> >> Follow this link to subscribe/unsubscribe:
> >> http://www.vtk.org/mailman/listinfo/vtkusers
> >>
> >
> >
> >
> > --
> > | Aashish Chaudhary
> > | R&D Engineer
> > | Kitware Inc.
> > | www.kitware.com
> > _______________________________________________
> > Powered by www.kitware.com
> >
> > Visit other Kitware open-source projects at
> > http://www.kitware.com/opensource/opensource.html
> >
> > Please keep messages on-topic and check the VTK FAQ at:
> > http://www.vtk.org/Wiki/VTK_FAQ
> >
> > Follow this link to subscribe/unsubscribe:
> > http://www.vtk.org/mailman/listinfo/vtkusers
> >
>
>
> --
> Lic. José M. Rodriguez Bacallao
> Centro de Biofisica Medica
> -----------------------------------------------------------------
> Todos somos muy ignorantes, lo que ocurre es que no todos ignoramos lo
> mismo.
>
> Recuerda: El arca de Noe fue construida por aficionados, el titanic
> por profesionales
> -----------------------------------------------------------------
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Please keep messages on-topic and check the VTK FAQ at:
> http://www.vtk.org/Wiki/VTK_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.vtk.org/mailman/listinfo/vtkusers
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.vtk.org/pipermail/vtkusers/attachments/20110627/88e2e2c3/attachment.htm>


More information about the vtkusers mailing list