[vtkusers] Half voxel loss during rendering

Seun Odutola seun at rogue-research.com
Thu Mar 9 13:03:27 EST 2017


Huge thanks David, your suggestion fixed it. Apparently the vtkImageActor’s mapper’s border wasn’t set to On (unlike vtkImageReslice that’s by default on) and doing simply fixed it. Once again, thanks a lot for your help.
  
> On Mar 9, 2017, at 11:09 AM, David Gobbi <david.gobbi at gmail.com> wrote:
> 
> 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 <mailto: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 <mailto: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 <mailto: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/3c4fe6fd/attachment.html>


More information about the vtkusers mailing list