CISE 6930 -  Computer Visualization  Spring 2008

 

 

 

                                                                                  NOTE: This is a term project purely used for study purposes.

 

Project Title:  Spatial and Temporal Splitting of Scalar Fields in Volume Graphics.[1]           

 

About Splitting: Splitting is a novel technique to partition a 3D voluminous object for volume visualization, medical segmentation and animation. Mathematically, it is a deformation where a restriction on continuity is deliberately

                        lifted.

 

Types of splitting:       See Flowchart:                    

                                                  

                                                                                                                                   Flowchart of types of Splitting Techniques.

 

 

 

Results: The results are a mixture of those generated by using a software called vlib[2] and those that are generated through implementation. The main purpose of the results is to explain the notion of splitting and the techniques 

             involved for achieving it.

Example 1: 2D Object.

                                                                                                 : 

           Example of splitting : As seen above, the original shape (on left ) is cut at the red point  resulting in figure on right side. Similar is the notion of splitting but done at three dimensional object.           

 

I used vlib[2] software for generating effects for studying and comparing my results to. 

 

 

Example 2: Splitting a unit cube (3D). Here, transfer functions used were disjoint, rotation ,translation and merge.

                                            

                                 a) Original Unit cube  (time t = 0)                        b) Original Cube (wire-frame mode)                c) Geometrical (explicit) splitting. at x = 0.4

 

 

                                            

                       d) Split region identified ( fill mode)                             e) Component One (right) is selected.             f) Transfer function on component one is "Disjoin"  

                               

 

                                    

                 g) Component Two (left) is selected.                             h) Transfer function on component two is "Merge" 

 

 


 

Other results as generated by vlib[2] software:

 A.  Geometrical Splitting: 

                                              

                                  

 

Note: The red portion indicate the zone where split has taken place. As explained in paper, the red region is duplicated for smooth results and also to compensate for the region lost in cutting.

For replication of points , author has used tri-linear interpolation where as in my cube splitting implementation, I used only linear interpolation. 

 

Geometrical Split uses point's coordinates for splitting. Splitting is achieved by putting a constraint on coordinates of points meeting some condition. Example: Cut object from points where x > 0.5, y < 0.2 and z = 0.3.

 

 

B) Logical Split : Here, other point attributes are taken into consideration. Such as point opacity , point color. This technique is used for splitting an object layer wise. The marching cube can be used to identify the layers.

Likewise, logical plit can be made to rely on a point's RGB values. 

Example: Cut original object where Red = 0.3, Blue = 0.4 and Green = 0.34. 

This is illustrated as: 

                          

                                                                                 

                                                                              Fig 1:  A sphere cut open. Generated through vlib[2].

                                         

 

C) Implicit Split: Here, the object is not partitioned explicitly but certain portions are identified through function mapping. The mapping is between the region of component with desired space limits and portion of original object.

     Implicit split object do not require tri-linear interpolation for replicating regions. It provides continuity.

 

     Some examples of implicit split.

             

        Fig 3. A 3D CT Head Split   generated using vlib API. [2]                                                 

 

 

     

 

     Implicit split on amorous object ( fire ). It is a two step process: 

     Amorous Object  --> Spatial ( Discrete 3d) Object --> Splitting.

 

    Step 1: Amorous Object is made to Discrete Spatial Object by hyper-texturing it. Hyper-texturing is a very complex function. Check [1] for details. Hyper-texture when prepared is applied over the amorous object and 

                normals are computed. ( similar to projected texturing ). 

 

    Step2: Splitting is applied. Here, to improve performance, multiple copies of original objects are made and then each copy is mapped to each component. the component here is an imaginary object that will be deformed. 

               When mapping is done then, transfer functions are applied on each component and the corresponding chages are reflected in each copy of original object through mapping. As shown, as time elapses, transfer   

               functions can be changed to generate the effect of fire.

 

             

 

 

 

Challenges faced: Implicit splitting is still not successfully implemented. Especially, preparing a hyper-texture requires careful choice of constituent functions.

 

 

 

 

 


References:    

1.  S. Islam, S. Dipankar, D. Silver, M. Chen: Spatial and temporal split-ting of scalar fields in volume graphics, in Proc. IEEE Symposium of Volume Visualization and Graphics, Austin, October 2004.

 

2. Vlib – Volume Graphics Library © University of Wales, Swansea, UK. http://vg.swan.ac.uk/vlib/

 

3. Computer Graphics Terms: Wikipedia.

 

4. Volume Graphics - http://www.cs.sunysb.edu/~vislab/projects/volume/papers.html

 

5. The Volume Graphics Research Group – The Ohio State University http://www.cse.ohio-state.edu/volviz/

 

6. Stefan Roettger, Martin Kraus, Thomas Ertl: Hardware-accelerated volume and isosurface rendering based on cell-projection, IEEE Visualization, 109-116, 2000.

 

7. Wei Chen, Liu Ren, Matthias Zwicker, Hanspeter Pfister: Hardware-Accelerated Adaptive EWA Volume Splatting, in Proceedings of IEEE Visualization 2004, 67-74, 2004.

 

8. Joe Kniss, Gordon Kindlmann, Charles Hansen: Interactive volume rendering using multi-dimensional transfer functions and direct manipulation widgets,

   Proceedings of the Conference on Visualization 2001, pp. 255-262,2001

 

9. Klaus Engel, Martin Kraus, Thomas Ertl: High-Quality Pre-Integrated Volume Rendering Using Hardware-Accelerated Pixel Shading, Proc.Graphics Hardware 2001.

 

10. Markus Hadwiger, Christoph Berger, Helwig Hauser: High-Quality Two-Level Volume Rendering of Segmented Data Sets on Consumer Graphics Hardware, in Proceedings of IEEE Visualization 2003.

 

11. A Haptic-enabled Toolkit for Illustration of Procedures in Surgery (TIPS) MMVR Minho Kim, Tianyun Ni, Juan Cendan, Sergei Kurenov and Jörg Peters