[vtkusers] Half voxel loss during rendering
David Gobbi
david.gobbi at gmail.com
Thu Mar 9 11:09:12 EST 2017
Hi Sean,
For people building a new image rendering pipeline I'd generally recommend
vtkImageResliceMapper, but different projects have different requirements.
Sometimes it makes more sense to use vtkImageReslice followed by a separate
mapper. The reason that I prefer vtkImageResliceMapper is that it maps
oblique views to the screen via a single interpolation operation, whereas
e.g. vtkImageReslice plus vtkImageActor would perform two interpolation
operations.
If you are currently using vtkImageReslice plus vtkImageActor, then make
sure that you are also calling BorderOn() for the actor's mapper as well
(e.g. imageActor->GetMapper()->BorderOn()).
- David
On Thu, Mar 9, 2017 at 8:57 AM, Seun Odutola <seun at rogue-research.com>
wrote:
> Hi David,
> I’m currently using vtkImageReslice and it’s set to BorderOn by
> default, still it doesn’t seem to be resolving my case as half the voxel is
> still missing. What are the significant differences between vtkImageReslice
> and vtkImageResliceMapper? Is vktImageResliceMapper the better approach to
> rendering slices correctly?
>
> On Mar 7, 2017, at 2:34 PM, David Gobbi <david.gobbi at gmail.com> wrote:
>
> Hi Seun,
>
> The vtkImageSliceMapper and vtkImageResliceMapper both have a method
> called BorderOn() that will extend the rendering by half the sample spacing.
>
> In VTK, a vtkImageData consists of a grid of point data samples. There is
> no "size" associated with these points, just the spacing that separates
> them. Display of an image involves interpolating the data points to fill
> in the empty space that exists between them.
>
> - David
>
>
> On Tue, Mar 7, 2017 at 11:01 AM, Seun Odutola <seun at rogue-research.com>
> wrote:
>
>> Hi everyone,
>>
>> I was wondering if anyone is aware of my situation. I work with
>> medical images and my general understanding of VTK is that voxels are
>> rendered with the centre as their origin. On rendering MPR’s and slices for
>> example I notice that there is a loss of half a voxel at both ends of a
>> slice (technically an overall loss of a voxel) and would like to know if
>> there’s a workaround to getting the half voxel rendered.
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/vtkusers/attachments/20170309/9633c611/attachment.html>
More information about the vtkusers
mailing list