xtk / X

The X Toolkit
http://www.goXTK.com
Other
793 stars 265 forks source link

Loading and displaying volumes : a data-concerned approach #99

Open Ricola3D opened 12 years ago

Ricola3D commented 12 years ago

Hello Haehn,

I tried to to display medical CT scan volumes made by my company, and i've come to notice that the parsing time is horribly long with 512x512x134 voxel maps ! I went through your code for X.volume and figured the reason of it : all the slices are computed at file loading and parsing.

So I tried another approach : at parsing, save the voxel map and only create 3 slices, and then move them and update their texture at each move of a slice. Then you can choose to save the already computed textures or not (I don't for memory saving).

I've implemented it with the following characteristics :

Here is a result of my tests :

So I was wondering if you'd be interested to explore this option ? With adding for ex a new volume class and an option for the parsing. Indeed, the convenience of this one is that the computations are fully transparent for the user (no long loading time, no latency!).

haehn commented 12 years ago

Hi Ricola,

this is an interesting approach! In general I thought that the loading time now was ok (about 3sec for a whole head volume 256x256x176) but I only tested on quad core machines or higher so pretty new hardware.

Do you have code to share and test?

Thanks, Daniel