[vtkusers] vtkVolumeTextureMapper3D in VTK 7.1?

Elvis Stansvik elvis.stansvik at orexplore.com
Tue May 30 05:21:29 EDT 2017


2017-05-30 10:24 GMT+02:00 Simon Esneault <simon.esneault at gmail.com>:
> Hello Alvarez,
>
> Thanks for your answers!
>
> About the ray sampling being clamp by the
> Minimum/MaximumImageSampleDistance, it is now done from lines 3318 to 3325,
> here :
> https://github.com/Kitware/VTK/blob/master/Rendering/VolumeOpenGL2/vtkOpenGLGPUVolumeRayCastMapper.cxx#L3318

Ah yes, I've also wondered about that seeming conflation of the two
parameters when looking at that code a while back.

Elvis

>
> Good to hear that you have some plan to make use of both XY image sampling
> and ray sampling during interaction, I believe it can improve quite a lot
> the quality of the image for the same FPS if it is correctly tuned.
>
> Simon
>
>
> 2017-05-26 15:03 GMT+02:00 Alvaro Sanchez <alvaro.sanchez at kitware.com>:
>>
>> Hi Simon,
>>
>> sorry for the delay.
>>
>>> - Will this work as well with real number, not only integers ? Let's say
>>> an ImageSampleDistance of 1.4 ? Like it is possible for the
>>> FixedRayCastVolumeMapper.
>>
>>
>> Yes, supports real numbers.
>>
>>>
>>> - Will there be a mechanism that can make some use of this during
>>> interaction, like the Fixed ray cast mapper ? There are these methods called
>>> SetMinimumImageSampleDistance/SetMaximumImageSampleDistance, together used
>>> with the SetInteractiveSampleDistance they gives us a great flexibility over
>>> the tuning of the rendering during interaction. Will there be an equivalent
>>> mechanism with the GPU implementation ?
>>
>>
>> This is not currently supported in the GPU implementation. One thing we
>> need to review is the current
>> implementation of UpdateSamplingDistance, to ensure it makes use of
>> ImageSampleDistance (xy-sampling)
>> as well,  not only SampleDistance (ray-sampling distance).  Adding a
>> mechanism similar to that in
>> FixedRayCastMapper would make sense.
>>
>>>
>>> - I always found the naming ImageSampleDistance quite confusing,
>>> shouldn't that be renamed to ImageSampling or something else to avoid
>>> confusion with the SamplingDistance ?
>>> RenderedImageSampling/FinalImageSampling vs RaySampling ?
>>
>>
>> It is indeed confusing at first glance, it has remained like that for
>> historical reasons I guess. It would probably
>> make sense to review the API of GPURayCast at some point.
>>
>>>
>>> - The current implementation is mixing the 2 parameters, it looks like
>>> the SamplingDistance along the ray is clamped using the
>>> Minimum/MaximumImageSampleDistance right now (line 3008 of the
>>> vtkOpenGLGPUVolumeRayCastMapper.cxx). Is this intended ?
>>
>>
>> I could not find the line you are referring to, might be that the code is
>> out of date. Could you look again in
>> the code and tell me if you still can see this?
>>
>>>
>>> - Does that works with the jittering option enabled ?
>>
>>
>> Yes, this should work with jittering on.
>>
>> Cheers!
>>
>>
>> On Thu, Apr 6, 2017 at 4:28 AM, Simon Esneault <simon.esneault at gmail.com>
>> wrote:
>>>
>>> Hello Alvaro
>>>
>>> Thanks for your work, this looks promising !!
>>> I have a few questions:
>>>
>>> - Will this work as well with real number, not only integers ? Let's say
>>> an ImageSampleDistance of 1.4 ? Like it is possible for the
>>> FixedRayCastVolumeMapper.
>>>
>>> - Will there be a mechanism that can make some use of this during
>>> interaction, like the Fixed ray cast mapper ? There are these methods called
>>> SetMinimumImageSampleDistance/SetMaximumImageSampleDistance, together used
>>> with the SetInteractiveSampleDistance they gives us a great flexibility over
>>> the tuning of the rendering during interaction. Will there be an equivalent
>>> mechanism with the GPU implementation ?
>>>
>>> - I always found the naming ImageSampleDistance quite confusing,
>>> shouldn't that be renamed to ImageSampling or something else to avoid
>>> confusion with the SamplingDistance ?
>>> RenderedImageSampling/FinalImageSampling vs RaySampling ?
>>>
>>> - The current implementation is mixing the 2 parameters, it looks like
>>> the SamplingDistance along the ray is clamped using the
>>> Minimum/MaximumImageSampleDistance right now (line 3008 of the
>>> vtkOpenGLGPUVolumeRayCastMapper.cxx). Is this intended ?
>>>
>>> - Does that works with the jittering option enabled ?
>>>
>>> Thanks a lot for that work, we will benefit a lot from that :)
>>>
>>> Simon
>>>
>>> 2017-03-31 18:34 GMT+02:00 Alvaro Sanchez <alvaro.sanchez at kitware.com>:
>>>>
>>>> Here is the merge request:
>>>>
>>>> https://gitlab.kitware.com/vtk/vtk/merge_requests/2641
>>>>
>>>> On Wed, Mar 8, 2017 at 11:08 AM, Alvaro Sanchez
>>>> <alvaro.sanchez at kitware.com> wrote:
>>>>>
>>>>> Thanks for the interest. There is no branch yet but I will ping you
>>>>> once you can try it out.
>>>>>
>>>>> > Also in that case would it be possible to add a final "gaussian
>>>>> > smoothing
>>>>> > pass" or equivalent only on the 2D generated image (maybe only as an
>>>>> > option)
>>>>>
>>>>> The first version will most likely only support linear interpolation,
>>>>> but will keep this in mind.
>>>>>
>>>>>
>>>>> On Wed, Mar 8, 2017 at 8:04 AM, Elvis Stansvik
>>>>> <elvis.stansvik at orexplore.com> wrote:
>>>>>>
>>>>>> 2017-03-08 11:16 GMT+01:00 Simon ESNEAULT <simon.esneault at gmail.com>:
>>>>>> > Hello Alvaro,
>>>>>> >
>>>>>> > That's real good news to hear (about the down-sampling in X and Y),
>>>>>> > I find
>>>>>> > it really difficult to tweak volume rendering only with sample
>>>>>> > distance,
>>>>>> > especially during interaction.
>>>>>> > Has the development began already ? Is there some branche where we
>>>>>> > can test
>>>>>> > that feature ?
>>>>>> >
>>>>>> > Also in that case would it be possible to add a final "gaussian
>>>>>> > smoothing
>>>>>> > pass" or equivalent only on the 2D generated image (maybe only as an
>>>>>> > option)
>>>>>> > ? I look like it is the case with FixedPointVolumeraycastMapper, the
>>>>>> > image
>>>>>> > looks a bit blurred but sometimes it helps to see the structures
>>>>>>
>>>>>> I'm also very interested in this. I'm using vtkGPUVolumeRayCastMapper,
>>>>>> and I'm currently turning off the automatic adjustment of sample
>>>>>> distance during interaction and resorted to doing my own simpler
>>>>>> adjustment. I'm simply quadrupling the sample distance during
>>>>>> interaction (for still rendering I use
>>>>>> (spacingX+spacingY+spacingZ)/6). I'd love to have another quality
>>>>>> controlling knob to turn.
>>>>>>
>>>>>> Is there a MR up for it already? Will it be in 7.2?
>>>>>>
>>>>>> Elvis
>>>>>>
>>>>>> >
>>>>>> > Thanks
>>>>>> > Simon
>>>>>> >
>>>>>> >
>>>>>> > 2017-03-06 18:17 GMT+01:00 Alvaro Sanchez
>>>>>> > <alvaro.sanchez at kitware.com>:
>>>>>> >>
>>>>>> >> Hi Shark,
>>>>>> >>
>>>>>> >> unfortunately there is no current plan of porting
>>>>>> >> vtkVolumeTextureMapper3D
>>>>>> >> to OpenGL2
>>>>>> >> , as far as I know.  We will soon however support image down
>>>>>> >> sampling in X
>>>>>> >> and Y which
>>>>>> >> should serve as additional knobs to tweak the performance of
>>>>>> >> GPURayCastMapper in
>>>>>> >> OpenGL2 (only sample distance can be currently adjusted).
>>>>>> >>
>>>>>> >> Could you provide more detail on the size of the dataset you are
>>>>>> >> rendering
>>>>>> >> and your GPU
>>>>>> >> specs?
>>>>>> >>
>>>>>> >> Thanks,
>>>>>> >> Álvaro
>>>>>> >>
>>>>>> >> On Mon, Mar 6, 2017 at 10:30 AM, Shark <m.nunes at fratoria.com>
>>>>>> >> wrote:
>>>>>> >>>
>>>>>> >>> Hello,
>>>>>> >>>
>>>>>> >>> I have been having some issues with vtkVolumeTextureMapper3D. I
>>>>>> >>> see it
>>>>>> >>> has
>>>>>> >>> been deprecated, however it is still available if I use the old
>>>>>> >>> openGL.
>>>>>> >>>
>>>>>> >>> Since for software rendering with texture mapping is much faster
>>>>>> >>> than ray
>>>>>> >>> casting, I would like to know if you are planning to have a Volume
>>>>>> >>> Texture
>>>>>> >>> Mapper for openGL 2, or if there is actually a new one that I am
>>>>>> >>> not able
>>>>>> >>> to
>>>>>> >>> find.
>>>>>> >>>
>>>>>> >>> Best regards,
>>>>>> >>> Shark
>>>>>> >>>
>>>>>> >>>
>>>>>> >>>
>>>>>> >>>
>>>>>> >>> --
>>>>>> >>> View this message in context:
>>>>>> >>>
>>>>>> >>> http://vtk.1045678.n5.nabble.com/vtkVolumeTextureMapper3D-in-VTK-7-1-tp5742368.html
>>>>>> >>> Sent from the VTK - Users mailing list archive at Nabble.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
>>>>>> >>>
>>>>>> >>> Search the list archives at:
>>>>>> >>> http://markmail.org/search/?q=vtkusers
>>>>>> >>>
>>>>>> >>> Follow this link to subscribe/unsubscribe:
>>>>>> >>> http://public.kitware.com/mailman/listinfo/vtkusers
>>>>>> >>
>>>>>> >>
>>>>>> >>
>>>>>> >>
>>>>>> >> --
>>>>>> >> Alvaro Sanchez
>>>>>> >> Kitware, Inc.
>>>>>> >> Senior R&D Engineer
>>>>>> >> 21 Corporate Drive
>>>>>> >> Clifton Park, NY 12065-8662
>>>>>> >> Phone: 518-881-4901
>>>>>> >>
>>>>>> >> _______________________________________________
>>>>>> >> 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
>>>>>> >>
>>>>>> >> Search the list archives at: http://markmail.org/search/?q=vtkusers
>>>>>> >>
>>>>>> >> Follow this link to subscribe/unsubscribe:
>>>>>> >> http://public.kitware.com/mailman/listinfo/vtkusers
>>>>>> >>
>>>>>> >
>>>>>> >
>>>>>> >
>>>>>> > --
>>>>>> > ------------------------------------------------------------------
>>>>>> > Simon Esneault
>>>>>> > Rennes, France
>>>>>> > ------------------------------------------------------------------
>>>>>> >
>>>>>> > _______________________________________________
>>>>>> > 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
>>>>>> >
>>>>>> > Search the list archives at: http://markmail.org/search/?q=vtkusers
>>>>>> >
>>>>>> > Follow this link to subscribe/unsubscribe:
>>>>>> > http://public.kitware.com/mailman/listinfo/vtkusers
>>>>>> >
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Alvaro Sanchez
>>>>> Kitware, Inc.
>>>>> Senior R&D Engineer
>>>>> 21 Corporate Drive
>>>>> Clifton Park, NY 12065-8662
>>>>> Phone: 518-881-4901
>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Alvaro Sanchez
>>>> Kitware, Inc.
>>>> Senior R&D Engineer
>>>> 21 Corporate Drive
>>>> Clifton Park, NY 12065-8662
>>>> Phone: 518-881-4901
>>>
>>>
>>>
>>>
>>> --
>>> ------------------------------------------------------------------
>>> Simon Esneault
>>> Rennes, France
>>> ------------------------------------------------------------------
>>
>>
>>
>>
>> --
>> Alvaro Sanchez
>> Kitware, Inc.
>> Senior R&D Engineer
>> 21 Corporate Drive
>> Clifton Park, NY 12065-8662
>> Phone: 518-881-4901
>
>
>
>
> --
> ------------------------------------------------------------------
> Simon Esneault
> Rennes, France
> ------------------------------------------------------------------


More information about the vtkusers mailing list