Page MenuHomePhabricator

[Volume Visualization] Volume Rendering for 4D images does only work on timestep 0 or not at all
Closed, ResolvedPublic

Description

US4DCyl: When you change the timestep, the histogram and the visualization remains the same.
Heart3D+t: no volume visualization shown at all (no matter which timestep or which histogram I select).

(Release installer, windows)

Revisions and Commits

rMITK MITK
Restricted Differential Revision
Restricted Differential Revision
Restricted Differential Revision

Event Timeline

thomass triaged this task as Normal priority.Feb 4 2021, 2:34 PM
thomass created this task.
thomass edited projects, added MITK (v2021.02); removed MITK.
thomass added a subscriber: kislinsk.

Most likely something for the next release IMO, but please decide @kislinsk :)

kalali added a project: Restricted Project.
kalali added a subscriber: kalali.

I think this is a task were everybody can have a look at and try do debug the relevant code to at least provide some more information in this task and to narrow down the problem.

kahl added a subscriber: kahl.

I tried to reproduce this bug and for US4DCyl the behaviour was the same when I tested it (histogram remains the same for all timesteps). For Heart3D+t sometimes nothing is displayed at all (as described here) but also sometimes the workbench crashes as described in T24754. However, I could not find any pattern when which behaviour occurs. I tested it with the current release installer on Windows and on the current develop branch in Debug mode. I can try to narrow it down a bit.

For the histogram part the reason is (swiftly looking into the code) that Neither the TransferFunctionWidgets nor the used histogramm classes support 4D images, the assume images to be static. But as the QmitkTransferFunctionWidget want the whole node, we cannot just use a TimePointSelector filter in the view. It seems like we need to extend the interface of the TransferFunctionWidgets (same for the QmitkTransferFunctionGeneratorWidget) in order to also set the current time step and handel it internally correctly.

I implemented a fix which includes your suggestion to extend the interfaces of the TranferFunctionWidget and QmitkTransferFunctionGeneratorWidget @floca. This resolves the issue that the histogram is not updated. Additionally, to also update the volume that is shown in the 3D render window, I extended the mitkVolumeMapperVtkSmart3D to also work with the correct timesteps. Before this change, only a volume for timestep 0 was created. With this fix, the workbench also does not crash with the Heart3D+t dataset.

kahl added a revision: Restricted Differential Revision.Wed, Nov 24, 1:49 PM