Rendering Performance with Large number of slab slices

I have a volume with 512x512,313 dimensions.

I have enabled reslice driver for tracking of a needle. The reslice rendering performance is quite good when I am navigating on only once slice at a time. However when I set the slab thickness to around 75 and have a spacing fraction of 5 I see a huge slowdown to about 1fps. Is this normal? I am seeing that my computer is being CPU limited. I have a i7 with 1.9ghz speed.

Yes, I would say that sounds normal. You might want to change to using GPU volume rendering instead (unfortunately it’s a very different pipeline so you’d probably need to change the way you do things).

Yes, this performance is expected if you use CPU for raycasting.

See instructions in this post how to configure the GPU volume renderer to create projection image: Is it possible to change a cbct to 2d

If you want to limit the slab to a certain thickness then set the volume rendering clipping ROI’s Z size to the desired thickness and then apply the SlicerToRAS transform of the slice view to this ROI.

Thanks for the responses. I used the 3d view and followed the steps as Iassoan linked with some tweaks for the scan I have. It does seem to be much more responsive.

To set the view I set the camera focal point to the center of my volume and then I offset the camera position to a position above the focal point to get a Coronal image of the scan. This seems to work ok. Although the FOV isnt currently applicable to an volume since I set the distance manually.

Im a little confused about the last suggestion

I’m not using a slice view. Are you suggesting that I can place a volume render in a slice view window?

If the axes of the thick slab is aligned with anatomical axes then you don’t need a transform, you can just set the center and size of the ROI to define the slab.

If you want to show an oblique slab then you need to create a transform to position/orient your ROI node. If you use slice views, you can set this transform by copying the position/orientation of an oblique slice view.

Sorry for being dense :laughing:

I understand I need to get a transform if I want a arbitrary slice angle/oblique view. What I dont understand is how to get a volume render to display in a slice view. Is that what you are suggesting?

I’m not suggesting to display a volume rendered image in a slice view. If you need that then you need to implement it yourself (grab the image from the 3D view, put it into a single-slice volume, and show that volume in a slice view).