[vtkusers] Smooth label-map volume rendering

Andras Lasso lasso at queensu.ca
Thu Jun 7 12:07:50 EDT 2018


I would be interested in a good solution to this, too.

In 3d Slicer, we've been using flying edges filter, which creates usable (non-blocky) surfaces very quickly (suitable for interactive editing). The limitation is that we still need a smoothing filter to avoid all staircase artifacts, and that it increases update time by about a magnitude.

We've been evaluating using multi-volume rendering for displaying segmentation in 3D, to achieve faster updates and nicer transparent renderings. Multi-volume rendering is good because we can apply Gaussian smoothing on each input volume to get correctly reconstructed (non-blocky) surface and we can display overlapping segments. However, this Gaussian smoothing takes some time (still competitive with surface smoothing) and multi-volume renderer does not support shading yet (this is the blocking issue right now).

Andras

From: vtkusers <vtkusers-bounces at public.kitware.com> On Behalf Of Bertram Sabrowsky-Hirsch
Sent: Thursday, June 7, 2018 3:54 AM
To: vtkusers at vtk.org
Subject: [vtkusers] Smooth label-map volume rendering

Hi all,

I am working with volume data before and after a classification algorithm.
The input volume has ushort intensity values, the output volume is a label-map where the values indicate each voxels class/label (background=0, vessel=1, aneurysm=2, ...).

I am visualizing the input volume with a opacity transfer function that simulates a threshold filter (e.g. control points: 799=0.0, 800=1.0) and the result is a nice and smooth visualization of the volume.

However, the output volume has this blocky Minecraft style effect. The opacity transfer function has the control points: 0=0.0, 1=1.0 and I use the color transfer function to distinguish the classes/labels.
Is there a way to visualize the output volume in a similar way as the input volume? I considered generating iso-surface meshes and smooth those, but this is not really an option. I also don't really understand why this is an issue because the
Input volume is also rendered with a distance of 1 between the two opacity thresholds. Are the volumes handled differently by vtk and how?

Input volume:
[cid:image001.jpg at 01D3FE56.AEDC44B0]

Output volume:
[cid:image002.jpg at 01D3FE56.AEDC44B0]

Kind regards,
Bertram
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://public.kitware.com/pipermail/vtkusers/attachments/20180607/c8416066/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.jpg
Type: image/jpeg
Size: 7443 bytes
Desc: image001.jpg
URL: <https://public.kitware.com/pipermail/vtkusers/attachments/20180607/c8416066/attachment.jpg>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image002.jpg
Type: image/jpeg
Size: 10479 bytes
Desc: image002.jpg
URL: <https://public.kitware.com/pipermail/vtkusers/attachments/20180607/c8416066/attachment-0001.jpg>


More information about the vtkusers mailing list