200
A dissertation submitted to the SWISS FEDERAL INSTITUTE OF TECHNOLOGY ZÜRICH for the degree of Doctor of Technical Sciences presented by LARS LIPPERT Dipl. Math. Technical University Darmstadt, Germany born November 21, 1967 citizen of Germany accepted on the recommendation of Prof. M. H. Gross, examiner Prof. W. Gander, co-examiner 1998 Diss. ETH No. 12612 Wavelet-based Volume Rendering

aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

  • Upload
    vuhuong

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

Page 1: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

Diss. ETH No. 12612

Wavelet-based Volume Rendering

A dissertation submitted to theSWISS FEDERAL INSTITUTE OF TECHNOLOGY ZÜRICH

for the degree ofDoctor of Technical Sciences

presented byLARS LIPPERT

Dipl. Math. Technical University Darmstadt, Germanyborn November 21, 1967

citizen of Germany

accepted on the recommendation ofProf. M. H. Gross, examiner

Prof. W. Gander, co-examiner

1998

Page 2: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic
Page 3: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

You can start a fire just by rubbing two dry theories together.

Robert M. Powers

British astronomer and author

Page 4: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic
Page 5: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

ontext

te the

the-

ical

prob-

and

sented

port

lti-

f

et the

rdware

rder

allows

ther-

sed to

n of the

ren-

hical

is per-

lin-

ding

r space

ed pro-

epts.

Abstract

This thesis discusses theoretical and practical improvements to volume rendering in the c

of visual data exploration and realistic rendering of three-dimensional data sets. Despi

increasing importance of volume rendering in the field of scientific visualization, state-of-

art algorithms still suffer from some major shortcomings. Difficulties include the numer

complexity as well as the high memory costs. This work presents a solution to these key

lems by introducing synergy-effects, provided by the combination of the wavelet theory

new volume rendering approaches. On basis of this combination, three concepts are pre

for the computation of global and local illumination scenarios.

First, a new physically-based volume radiosity model is derived from the underlying trans

theory model, which counts for both direct illumination and indirect illumination due to mu

ple interreflections of light. Theglobal cube conceptfocuses on hierarchical approximations o

the energy transfer within a pure volumetric environment. This concept is designed to me

requirements of an accurate and fast computation scheme by using modern graphics ha

and efficient data topologies.

Next, by neglecting indirect illumination effects, a new concept of wavelet-based image o

volume rendering is derived. This technique extends classical rendering strategies, as it

the formulation of a hierarchical rendering concept for locally illuminated data sets. Fur

more, global and local filtering operations of the wavelet transformed data sets are propo

further compress the data and to increase the rendering speed. The analytic representatio

used B-spline wavelets provides realistic shading effects and analytic error bounds.

Finally, by further assuming an isotropically absorbing medium, a new object order volume

dering approach is presented, which unifies efficient projection methods and the hierarc

representation of the data set in the wavelet space. This progressive rendering concept

formed by superimposing 2D textures and provides interactive volume visualization. The

earity of the rendering scheme allows the implementation of a highly efficient data co

strategy that encompasses the advantages of the wavelet transform and effective colo

transformations.

For each of these concepts, extensive error and performance analyses of the implement

totypes are discussed. The analyses clearly prove the superiority of the introduced conc

Page 6: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic
Page 7: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

halb

rithmi-

iche-

llung

e und

lle und

suali-

odells

mina.

nzept,

rech-

utzung

t der

und

t den

chrei-

akten

Verfü-

r der

gskon-

auen

uren

s sehr

als

imple-

tial der

Zusammenfassung

Die Visualisierung von Volumina stellt einen Bereich von zunehmender Wichtigkeit inner

der Computergraphik dar. Die anfallenden grossen Datenmengen stellen besondere algo

sche und konzeptionelle Anforderungen in Bezug auf die Visualisierung und effiziente Spe

rung. Die vorliegende Arbeit diskutiert neuartige Ansätze zur Speicherung und Darste

volumetrischer Daten. Diese Konzepte basieren auf der Kombination der Wavelettheori

neuer Visualisierungsmethoden. Die resultierenden Synergieeffekte erlauben die schne

genaue Berechnung von globalen und lokalen Beleuchtungseffekten und die effiziente Vi

sierung der Daten. Der Augenmerk der Arbeit liegt auf den drei folgenden Bereichen:

Das eingeführte Volumenmodell basiert auf einer Vereinfachung des Transporttheoriem

und erlaubt die Berechnung globaler Beleuchtungseffekte innerhalb inhomogener Volu

Die Energieberechnungen erfolgen durch das neuartige hierarchische ‘Global Cube’ Ko

welches direkt die von der Wavelettransformation bereitgestellten Informationen in die Be

nung miteinbezieht. Das schnelle und exakte Berechnungsschema basiert auf der Ausn

moderner Graphik-Hardware und effizienter Datentopologie.

Die Vernachlässigung indirekter Beleuchtungseffekte führt zu einem neuen Konzep

wavelet-basierten Volumenvisualisierung. Die Wavelettheorie in Verbindung mit globalen

lokalen Filteroperationen ermöglicht die Reduzierung der Koeffizienten. Dies beschleunig

Visualisierungsprozess und ermöglicht hohe Kompressionsgewinne. Die analytische Bes

bungen der unterliegenden B-Spline Basisfunktionen stellen darüberhinaus die zur ex

Beleuchtungsberechnung notwendigen Gradienten und analytische Fehlerschranken zur

gung.

Die weitere Vereinfachung dieses Modells resultiert im dritten vorgestellten Konzept. Unte

Voraussetzung einer isotropen Absorption kann ein neuartiges hierarchisches Darstellun

zept formuliert werden. Der wesentliche Vorteil dieses Ansatzes liegt in der einfachen, gen

und progressiven Bildgenerierung, die sich auf die Akkumulation zweidimensionaler Text

zurückführen lässt. Des weiteren unterstützt dieses Verfahren die Implementierung eine

effizienten Kodierungsalgorithmus, der sowohl die Vorteile der Wavelettransformation

auch die benutzten Farbraumkonvertierungen nutzt.

Neben der Darstellung der drei Konzepte dienen die Fehler- und Performanzanalysen der

mentierten Prototypen zur Evaluation der Ansätze und demonstrieren deutlich das Poten

waveletbasierten Volumenvisualisierung.

Page 8: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic
Page 9: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

ously

, and

very

cial

, com-

reas

r great

g of

. The

ly my

clud-

l von

Lip-

nd

Acknowledgements

I’d like to take the opportunity to express my sincere gratitude to all the people that gener

gave me their support, time, and energy.

First of all, I thank my advisor, Professor Markus Gross for his support, encouragement

confidence. Markus’ drive and innovative ideas have effected me deeply. It has been

rewarding and fruitful to work with him. I am glad for the time that we worked together. Spe

thanks goes to my co-examiner Professor Walter Gander for his very helpful suggestions

ments, and discussions.

Many thanks to my students Richard Dittrich, Andreas Eggenberger, Silvio Häring, And

Hubeli, Christian Kurmann, Florian Nussberger, Jean Jacques Pittet, and Philip Ruser fo

parts of the implementation and stimulating discussions.

I would also like to especially acknowledge the great efforts that went into the reviewin

drafts of this thesis by Ralph Steffen, Claudia Hawkes and Eva-Maria Lippert-Stephan

thesis has benefited greatly from their suggestions. Any errors that remain are pure

responsibility.

Many fellow PhD students and friends have also helped and inspired me along the way, in

ing Oliver Staadt, Martin Roth, Rolf Koch, Thomas Sprenger, Andreas Dreger, and Danie

Büren.

I want to thank my parents, Heike and Werner Lippert, and my best friend and brother Ingo

pert who gave me the most valuable assets in life: love and encouragement.

Finally, I want to dedicate this work to my wife, Eva-Maria, in appreciation of her love a

understanding. Without her patience and support I could not have finished this thesis.

This work was supported by the ETH research council under grant No. 41-2642.5.

Page 10: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic
Page 11: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

1TABLE OF CONTENTS

. . . . 1 . . . 1 . . 2 . . 3. . . . 3 . . . . 4. . 5. . 6 . . 7. . . . . . 10

. . . 11 . . 11. . 11. . 13.1416181919

. . . 23. . . 26 .26. . 27. . 29 .30 .31. . . 33 .33.34 . . 37

. . 39 . . . 40.40 .44. . . 47. . . 48 .481

.54 .55. . . 57 . . 58. . 58

1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1 Volume Visualization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.1.1 Global Illumination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1.1.2 Local Illumination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.2 Hierarchical Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3 Volume Rendering Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.3.1 Image Order Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3.2 Object Order Techniques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3.3 Hybrid Techniques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

1.4 Contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91.5 Thesis Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2 Wavelets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1 Multiresolution Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.1.1 Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.2 Haar Basis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.3 Properties of Wavelets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.1.3.1 Orthogonal Wavelets. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2.1.3.2 Semiorthogonal Wavelets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2.1.3.3 Biorthogonal Wavelets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.1.4 Discrete Wavelet Transform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2.2 B-Spline Wavelets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2.3 Boundary Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.3.1 Spatial Windowing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2.3.2 Reflection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.3 Repetition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.4 Multiple Knots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2.3.5 Gram-Schmidt . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.4 Multidimensional Bases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.1 Standard Basis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2.4.2 Non-Standard Basis. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

2.5 Wavelet Coefficient Thresholding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3 Global Illumination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1 Physical Principles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.1.1 Radiometric Concepts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.1.2 Transport Theory. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.2 Volume Radiosity Equation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3 Solution Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.3.1 Zonal Method. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3.3.2 Formal Solution of the Pure Volumetric Model . . . . . . . . . . . . . . . . . . . . . . . 53.3.3 Finite Element Formulation of the Pure Volumetric Model . . . . . . . . . . . . . . 533.3.4 Galerkin Radiosity. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3.3.5 Iterative Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.4 Hierarchical Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5 Emission-Absorption Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

3.5.1 Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

i

Page 12: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

ii Contents

. 59

. 63 . . . 6363

. . . 66. . 66. 68. 69. . . 72. 73. 73. . . 774. 75. . 75. . . 78 . 7980 . 81. . . 81828385 . . . 87. . 87. . 88

93 . . 93 . . . 95 . . 96. . . 97 . 98 . 99. . 100101103 . .0506

09. . 109. . 110. . 112. . 113. . 11411417

3.5.2 Partitioning the integral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4 Global Cube Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4.1 Rendering Concept . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4.1.1 Hierarchical Representation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4.2 Global Cube - One Value Per Voxel Strategy . . . . . . . . . . . . . . . . . . . . . . . . . .

4.2.1 Concept . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.2 Geometric Correction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.3 Scattering Correction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4.3 Global Cube - Six Values Per Voxel Strategy . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3.1 Geometric Correction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3.2 Scattering Correction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4.4 Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44.4.1 Multiresolution Representation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4.4.2 Approximate Solution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4.3 Refinement. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4.5 Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.5.1 System Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4.5.2 Energy Exchange Computation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4.5.3 Final Rendering. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4.6 Error Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.6.1 Quality of the Approximation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4.6.2 Resolution of the Projection Plane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4.6.3 Hierarchical Decomposition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4.7 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 874.7.1 Color Bleeding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4.7.2 Shadows. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.7.3 Hierarchy. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5 Local Illumination: Image Order Rendering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5.1 Emission-Absorption Model in the Wavelet Space . . . . . . . . . . . . . . . . . . . . . . .5.2 Projections into Wavelet Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5.3 Illumination and Gradient Computation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5.4 Error Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5.4.1 Trapezoid Rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5.4.2 Simpson’s Rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5.5 Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.5.1 Data Reconstruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5.5.2 Spatial Data Structures. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5.6 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1055.6.1 Variation of the B-spline Order. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15.6.2 Approximation Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

6 Local Illumination: Object Order Rendering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2 Ray Intensity Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.3 Fourier Projection Slice Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.4 Wavelets in Frequency Domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.5 Computation of Wavelet Splats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6.5.1 Parameterization. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6.5.2 Optimized Sampling Rate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

Page 13: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

Contents iii

. . 125

.127

. . 129

129

31

134

.135

. .

36

.137

.138

140

. .143

. . 143

43

44

44

. . 145

45

46

. . 147

. . 14

151

152

153

53

55

57

. . 157

. . 160

.161

. . 161

. . 163

. . 163

. . 164

. . 164

.167

. . 175

.181

6.6 Error Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6.7 Multiview Rendering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6.8 Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6.8.1 Rendering Pipeline. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6.8.2 Generic Transform Coding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

6.8.3 Splat Accumulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6.8.4 Aliasing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6.9 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .136

6.9.1 Rendering Performance. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

6.9.2 Image Quality. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6.9.3 Data Coding. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6.9.4 Basis Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7 Comparison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7.1 Rendering Equation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7.1.1 Image Order Technique. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

7.1.2 Object Order Technique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

7.1.3 Shear-warp Factorization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

7.2 Data Compression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7.2.1 Object Order Technique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

7.2.2 Shear-warp Factorization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

7.3 Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7.4 Accuracy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8

7.4.1 Simulation Model 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7.4.2 Simulation Model 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7.4.3 Simulation Model 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7.4.4 Average Approximation Error. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

7.4.5 Variation of the Spatial Resolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

8 Conclusions and Future Directions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18.1 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

8.2 Future Directions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

A The EVOLVE System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

A.1 System Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

A.2 Data Coder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

A.3 C++ Rendering Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

A.4 Java Rendering Client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

A.5 Future Directions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

B Nomenclature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

C References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

9 Curriculum Vitae . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Page 14: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

iv .

Page 15: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

1LIST OF FIGURES

. . . . 5

. . . . 7

. . . . 8

.

. . . . 16

. . . 21

. . . 22

. . 23

. . 25

. . . 28

. . 28

. . 29

2

. . . 35

. . 36

.40

. . .

.

. . . 44

. . . 44

. . . 47

. . . 48

. . . 49

. . . 50

. . . 51

. . . 56

. . . 64

.65

. .

. . 67

. . 68

. . 69

. . . 7

.73

Figure 1.1: Image-order rendering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 1.2: Object-order rendering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 1.3: Shear-warp factorization. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 2.1: Haar basis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

Figure 2.2: Schematic representation of the embedded functional spaces . . . . . . . . . . .

Figure 2.3: Wavelet decomposition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 2.4: Wavelet reconstruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 2.5: Two-level subband filtering pyramid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 2.6: Scaling functions and wavelets of different order j . . . . . . . . . . . . . . . . . . . . .

Figure 2.7: Cardinal spline basis functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 2.8: Cardinal spline basis functions, m=-2, j=4 . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 2.9: Cardinal spline basis functions, m=-2, j=3 . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 2.10: Different basis functions for m0=-3, j=4. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

Figure 2.11: 3D subband filtering scheme. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 2.12: Resulting data structure of the tree-dimensional wavelet transform . . . . . . .

Figure 3.1: Radiance atx in directionn . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 3.2: Raleigh scattering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .42

Figure 3.3: Mie function. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

Figure 3.4: Henyey-Greenstein scattering function. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 3.5: Geometry of volume interactions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 3.6: Relevant parameters for the radiance computation . . . . . . . . . . . . . . . . . . . .

Figure 3.7: Volume radiosity setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 3.8: Energy contributions for a boundary element. . . . . . . . . . . . . . . . . . . . . . . . .

Figure 3.9: Geometry of light interchange. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 3.10: Geometry for exchange factor computations . . . . . . . . . . . . . . . . . . . . . . . .

Figure 3.11: Single iteration step of relaxation method . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 4.1: 3D wavelet transform to decompose both source and opacity . . . . . . . . . . . .

Figure 4.2: Data generation and visualization pipeline for global illumination. . . . . . . . . .

Figure 4.3: The global cube . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. 66

Figure 4.4: Low-albedo volume rendering by application of the over operator . . . . . . . . .

Figure 4.5: Distance correction (2D projection) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 4.6: Directional correction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 4.7: Energy-leaking effect. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1

Figure 4.8: Energy contribution of a volume element that is not inside the viewing frustum

i

Page 16: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

ii List of Figures

. . 77

. . 78

. . . 79

. . . 80

.

. . . . 8

. . . . 8

. 85

. . 86

. . .

. . . 88

. . . 88

. . . 88

. . . 89

. . 90

. . . 94

. . 101

4

. 105

. . 106

. 106

. 107

. . 1

. 110

. 111

113

. 114

. 115

. 116

. 117

. 117

119

. 121

. 122

. 124

. . 127

Figure 4.9: Hierarchical global cube algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 4.10: Propagation of radiosity in case of refinement . . . . . . . . . . . . . . . . . . . . . . .

Figure 4.11: Rendering pipeline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 4.12: Results from the Henyey-Greenstein scattering functions . . . . . . . . . . . . . .

Figure 4.13: Ray-caster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 81

Figure 4.14: Reference scene 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

Figure 4.15: Reference scene 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

Figure 4.16: Intensity distribution for different projection plane resolutions. . . . . . . . . . . .

Figure 4.17: Energy distribution and hierarchy for different threshold values . . . . . . . . .

Figure 4.18: Color bleeding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

Figure 4.19: Shadows of a chair . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 4.20: Shadows on boundary surfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 4.21: Solution for a complex environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 4.22: Progressive refinement of lounge scene . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 4.23: Hierarchy and intensity distribution of a slice trough the lounge-scene . . . .

Figure 5.1: Image order volume rendering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 5.2: Pipeline for image space volume rendering . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 5.3: Relevant parameters for the computation of sleaving. . . . . . . . . . . . . . . . . . . . . . 10

Figure 5.4: Data organization for wavelet based volume ray casting . . . . . . . . . . . . . . . .

Figure 5.5: Sagittal view into the visible human data set . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 5.6: Local level of detail applied to the CT-foot data set . . . . . . . . . . . . . . . . . . . .

Figure 5.7: Local level of detail applied to the CT-foot data set . . . . . . . . . . . . . . . . . . . .

Figure 5.8: CT-foot data set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .08

Figure 6.1: Abstract rendering pipeline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 6.2: Projection of two 3D basis functions down to a 2D footprint . . . . . . . . . . . . .

Figure 6.3: Illustration of the Fourier projection slicing theorem in 3D . . . . . . . . . . . . . . .

Figure 6.4: Footprints of splats for cardinal B-spline functions. . . . . . . . . . . . . . . . . . . . .

Figure 6.5: Footprint for different cueing directions and cueing coefficients . . . . . . . . . .

Figure 6.6: Geometric relationships for distance-weighting of basis functions . . . . . . . . .

Figure 6.7: Exponentially depth-cued scaling function (j=1) . . . . . . . . . . . . . . . . . . . . . . .

Figure 6.8: Influence of different cueing parameters and directions . . . . . . . . . . . . . . . . .

Figure 6.9: Fourier transform of spatially-limited functions . . . . . . . . . . . . . . . . . . . . . . . .

Figure 6.10: Spatial-scaling Fourier transform property . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 6.11: Discretization in spatial domain. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 6.12: Computation of the footprints for different decomposition levels . . . . . . . . .

Figure 6.13: iFFT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

Figure 6.14: Multiview concept . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Page 17: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

List of Figures iii

. 128

.130

. . . 132

. . 133

. . 134

.135

. . 136

. . 138

. . 141

.145

. . 146

. . 147

. . 149

. . 150

.151

. . 152

.153

.154

.155

.162

. . 163

.164

. . 165

Figure 6.15: Tripleview rendering of classified MR-data set . . . . . . . . . . . . . . . . . . . . . . .

Figure 6.16: Rendering pipeline for object order volume rendering. . . . . . . . . . . . . . . . . .

Figure 6.17: Volume coding scheme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 6.18: Significance order . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 6.19: Fraction of the coefficient bitstream generated by the compression scheme

Figure 6.20: Data structure of the footprints for software-based accumulation . . . . . . . . .

Figure 6.21: Antialiasing strategies. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 6.22: Progressive compression in three different color spaces . . . . . . . . . . . . . . .

Figure 6.23: Images rendered with different basis functions and data-sizes. . . . . . . . . . .

Figure 7.1: Variation of sampling distance for different viewing directions . . . . . . . . . . .

Figure 7.2: Comparison of image quality and data sizes . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 7.3: Rendered images for different numbers of accumulated splats . . . . . . . . . . .

Figure 7.4: Volume rendering testbed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 7.5: Slices through the simulated emission and extinction model . . . . . . . . . . . . .

Figure 7.6: Intensities and approximation errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 7.7: Intensities for different sampling rates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 7.8: Intensities and approximation errors (simulation model 2) . . . . . . . . . . . . . . .

Figure 7.9: Intensities and approximation errors (simulation model 3) . . . . . . . . . . . . . . .

Figure 7.10: Relative approximation error vs. resolution . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 8.1: Volume rendering in a distributed environment . . . . . . . . . . . . . . . . . . . . . . . .

Figure 8.2: Encoder (AVS-network). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Figure 8.3: Screenshot from the C++ rendering client (visible human CT data set) . . . . .

Figure 8.4: Java-rendering client . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Page 18: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

iv .

Page 19: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

1ol andciatedsenta-puterd onal rep-

dingr sinceaccu-

tes theels ofrea,. This

com-

volu-cribedo nar-trans-ther

niques.

tricxity in

nam-ender-

1INTRODUCTION

In the past few years the theory of wavelets has been developed as a new analytic toformal framework in both mathematics and computer sciences. Many of the concepts assowith wavelets, such as spatial-temporal analysis, recursive subdivision, hierarchical repretion, and multiresolution analysis are applied successfully to problems in the areas of comgraphics. Obviously, the simplest setting for wavelets is for representing functions define

. Those wavelets can be used to represent parametric curves and give rise to hierarchicresentations, de-noising, and discontinuity detection [26].

Two-dimensional wavelets are useful for a variety of computer graphics applications inclusurface modeling and meshing. Hierarchical wavelet-based representations are populathey provide efficient compression and computation schemes in order to achieve selectedracy levels. The hierarchical construction results in a non-redundant basis which separalow resolution basis and the detail information and allows smooth transitions between levdetail in very large or complex models. If refinements are required in only a part of the athen only those coefficients whose bases have support in this region need to be addedapproach is successfully used by Gross et al. [35, 38] and Eck et al. [25] for the efficientputation of multiresolution triangular surface approximations.

In the trivariate case the wavelet theory provides a unique and hierarchical description ofmetric data [62]. Herein, the hierarchical representation allows any volume data to be desin terms of a coarse overall shape, plus spatially localized details that range from broad trow. This representation constitutes the central issue in the applicability for progressivemission and interactive accuracy control [83]. Exploiting the localization properties furpermits efficient compression, modeling, and rendering strategies of these data sets.

This thesis addresses the combination of the wavelet theory and volume rendering techin order to develop new, highly effective, and accurate methods for volume visualization

1.1 Volume Visualization

In the field of visualization and in many computational models we often deal with volumephenomena. Volumetric data sets are being used in increasing number, size, and complemany engineering and scientific disciplines, such as simulations in computational fluid dyics, material sciences, and various medical volume acquisition techniques. Concepts for r

R

1

Page 20: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

2 1. Introduction

text of

end to, volu-repre-deringaliza-f volu-

on and, oneerac-rk ofmag-ablese theergyation.

algo-aliza-ssed

nt byn,rtght

intorred

lomingl pro-

e ele-lytic

ubtle,d pen-s, are

meictlyrface

f the

ing gaseous phenomena are also being used for realistic image synthesis in the conmodeling participating media such as clouds, fog, and flames.

In contrast to traditional approaches in computer graphics, volume rendering does not intrepresent 3D objects as geometric surfaces and edges. From the volumetric point of viewmetric data is considered as a set of 3D entities with inherent information, thus geometricsentation appears to be unsatisfactory. In contrast to geometric 3D rendering, volume renaims to display the data directly as a transparent, cloudy object. The field of volume visution in general encompasses the problem of representing, manipulating, and rendering ometric data.

In order to generate realistic images, it is necessary to accurately simulate the propagatireflection of light in the volume. To achieve visual insight into opaque or complex data setscan approximate the visual impression of data by imitating the underlying physics. The inttion of light with surfaces and volumes can be completely described within the framewolinear transport theory [11]. This theory is embedded in the classical and quantum electronetic theories, which are governed by the four Maxwell equations. The transport theory enthe computation of the radiation field as it would be produced by the natural world. Outsiddomain of computer graphics this model is used in all simulations involving radiant enexchanges for example heat transfer analysis, infrared imagery, and radio wave propag

The work presented in this dissertation is a departure from classical volume renderingrithms in that it combines the theory of wavelets and the physical concepts of volume visution. This combination provides new algorithms and visualization features that will be discuand compared in detail.

1.1.1 Global Illumination

Within computer graphics, the problem of determining the appearance of an environmesimulating the transport of light within is known as global illumination. For global illuminatiothe governingvolume rendering equationcan be derived directly from the linear transpotheory [29]. In order to compute the illumination distribution, the light emitted from the lisources is reflected in the volume, causing indirect illumination, which has to be takenaccount. The resulting global illumination equation is an integral equation. It is often refeto as aFredholm integral equation of the second kind. The solution of this equation is not triviasince the computation of the radiances at a given point requires the knowledge of the incradiances from all directions. Statistical simulations are used to approximate the physicacess of particle interactions [8].

Although a great deal of research has been directed at Monte Carlo [4, 7, 47, 65] and finitments methods [21, 31] for solving the rendering equation, little is known about its anasolution.

Solving the rendering equation either by Monte Carlo or finite elements methods add snevertheless visually important effects to the computed images such as color bleeding anumbras along shadow boundaries. These effects, and other global illumination effectessential to convey the illusion of a real scene.

A common solution technique for the computation of the energy distribution within a voluis thezonal method[72]. This technique handles both volumetric and surface objects by strdividing the scene into discrete segments that only contain participating media and supatches. The energy distribution is finally determined by a numerical approximation oenergy distribution between the surfaces and volumes.

Page 21: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

1.2 Hierarchical Methods 3

ne.tiona par-ore

ersionbe thet up theexpen-

orendolumeing isen as adotion is

e cana.

ermstation

roachrocess

rk toous inchicaland

ast andand

struc-detailibly

ound-

ad forore,

istent. Thus

Theradiosity methodalso numerically approximates the distribution of energy of a given sceThe underlying radiosity equation [31, 64] is derived from the global illumination equabased on the assumption that all surfaces are ideally diffuse and there is no existence ofticipating medium, where light is only allowed to interact with surfaces of objects. For a mcomplete global illumination model, however, all phenomena must be accounted for.

For both the radiosity and the zonal method, numerical approximation leads to a discrete vof the Fredholm integral equation that uses a large dense matrix of form factors to descricoupling between the discrete surface patches. To obtain a detailed solution, one must sematrix and solve the linear system that results. For practical issues this can become quitesive.

1.1.2 Local Illumination

The term “local illumination” describes illumination directly from the light sources. Therefthese algorithms explicitly gather illumination information only from direct light sources aignore interreflections as well as other global phenomena such as the shadowing of one velement by another. In contrast to the global illumination approach, the computed shadbased only on the relative positions of the lights, the surface, and the eye and can be sesingle scatteringapproximation of the global illumination problem. Because the albedescribes the fraction of energy which is scattered rather than absorbed, this approximaalso often denoted as thelow-albedo model.

Since there are usually few light sources in a scene, local illumination at a point in the scenbe computed effectively but does not allow a physically correct representation of the dat

1.2 Hierarchical Methods

Since volume visualization deals with huge amounts of data, efficiency of an algorithm in tof memory requirements and rendering times is the key issue. The hierarchical represenof the data generally exploits the coherence within the volume. The benefits from this appare primarily to reduce the amount of data that is considered for the image generation pand to obtain an efficient volume rendering algorithm.

In this dissertation we propose the wavelet transformation as a mathematical framewoobtain a hierarchical decomposition of data [12, 20, 58]. This approach seems advantageseveral aspects. In addition to efficient data representation that is achieved from the hierarconcept of the wavelet theory, we gain local and global level-of-detail control for renderingreconstruction of data, analytic and continuous representations of the parameters, and fprogressive evaluation methods. Due to the linear-time complexity of the transformationreconstruction, very fast algorithms can be achieved. Basically, we obtain an octree datature that contains a low-pass filtered representation of the initial data set and also a set ofinformation. Many of the coefficients in a wavelet representation are either zero or negligsmall. This allows both to achieve high compression ratios and to determine exact error baries.

Drawbacks of a hierarchical representation of volume data are the computational overhethe reconstruction of the volume data and the introduction of clustering artifacts. Furthermif the radiosity values are also organized hierarchically, the algorithm has to provide a consenergy balance and correct radiosity values are maintained at all levels of the hierarchyradiosities have to be carried along on all hierarchal levels and are required to bepushedandpulled through the tree.

Page 22: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

4 1. Introduction

arch.e pro-rarchy.on ofech-tationscts.

he lackthe

pating

field,nergyusingedorox-sity of

s

nd isr rea-

imagecast

rder ofsoels

lane.d

final

rther-cribe

Hierarchical representations have been one of the primary foci of global illumination reseThese representations were first used for radiosity setups by Hanrahan et al. [40]. In thposed algorithms, radiosity exchanges are computed between various levels of the hieThey are based on the advances of the N-body simulation problems. The introductiwavelets to global illumination [32, 75, 77] introduces a natural extension of hierarchical tniques and sets up special requirements in the hierarchical basis. However, due to the limiof the radiosity method, these algorithms only allow light to interact with surfaces of objeLight travels along straight lines between surfaces and no attenuation takes place, due to tof participating media. The hierarchical formulation of the zonal method [80] simulatesenergy exchanges between hierarchically organized diffuse surfaces, isotropic particimedia, and object clusters but does not incorporate the wavelet theory.

1.3 Volume Rendering Techniques

Volume rendering describes the mapping process of volumetric data set onto an intensitywhich can be displayed on the computer screen. This formal definition suggests that the edistribution within a given three-dimensional data set can be computed in a first pass bya global or local illumination model. The final intensity can then be obtained using low-albvolume rendering. Thus, for the final rendering, we only have to consider a first-order appimation of the rendering equation that neglects the scattering term and evaluates the intena pixel for only one viewing direction.

In the following chapters we will characterize the volume dataf as a linear-combination of basifunctions using scalar coefficients as weights.

(1.1)

As we will see, this definition provides a simple, general, and consistent view of the data auseful in the domain of rendering since it solves for the desired solution. In this thesis, fosons of convenience, we will denote a weighted basis function as avolume element

or voxel.

In general, one can distinguish three types of techniques that create a two-dimensionalfrom the three-dimensional volumetric field. The first technique considers rays that arefrom each pixel in the image plane into the volume data. Since these rays are casted in othe pixels, these techniques are denoted asimage ordertechniques. These techniques are alcalledbackward mappingalgorithms since they calculate the mapping of voxels to image pixby projecting the image pixels along viewing rays into the volume.

In contrast,object-ordertechniques map the intensities of the volume data onto the image pThese rendering techniques are calledforward mappingalgorithms since voxels are projectedirectly onto the image in the same direction as the light rays.

Finally, hybrid techniques combine forward and backward mapping in order to produce theintensity values.

In this thesis we will introduce wavelet-based image order and object order techniques. Fumore we will extensively compare our approaches with a hybrid technique. We will desthese concepts in more detail.

φ c

f x y z, ,( ) ciφi x y z, ,( )i

∑=

ciφi x y z, ,( )

Page 23: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

1.3 Volume Rendering Techniques 5

r eachn thevolu-

ite the

terategf thefinal. It isthef sam-

sidersto benceptrallelnding

1.3.1 Image Order Techniques

In general, ray casting algorithms produce images by casting rays through the volume foimage pixel and integrating the color and opacity along the ray [53, 74]. Thus, each pixel oimage plane determines which data samples contribute to its intensity. Since we define themetric data as a function, characterized by a weighted sum of basis functions, we can wrimage-order approach as:

for y image =1 to ImageHeight

for x image =1 to ImageWidth

repeat foreach relevant Basisfunction at

Position[x(x image ,y image ,t),y(x image ,y image ,t),z(x image ,y image ,t)]

ImagePixel[x image ,y image ] +=

contribution of weighted Basisfunctionincrease t

until ray exists volume or accumulated opacity reaches unity

Figure 1.1 further illustrates this technique. In the upper code sample, the outer loops iover the pixels on the image plane, whereas the parametert iterates over sample points alonthe viewing ray. In order to compute the intensity contribution of the achieved position osampling point in the volume, we have to iterate over all relevant basis functions. Theintensity is then obtained by evaluating the contributions of the weighted basis functionsimportant to note that the complexity of the algorithm is only in theory independent fromactual data size and only depends on the resolution of the image plane and the number opling points.

The main advantages arise from the fact that since the image-order technique only conthose volume elements that contribute to the final image, only relevant functions needevaluated. In addition, no intermediate representation of the volume is required. This copermits the handling of full resolution (12-16 bit) data sets and it can be easily tuned to paexecution. Furthermore, rendering optimizations are possible for sparse volumes by fi

Figure 1.1: Image-order rendering.

Projection plane Volume data setViewer

ximage

yimage

Pixel Basis function Sample points

t

y

x

z

Page 24: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

6 1. Introduction

erate thespatial

ed tospeed.ten-eed-the

d to the. Thisf the[63].

icient

l pro-ctionsplaten each

sam-entedThis

o the

serveproach.rate

d partver, inionaltionss onlyview.table

spatial coherences. Octree data structures that encode the spatial coherence can accelrendering process dramatically [27, 54] but the actual speedups depend on the degree ofcoherence. Our approach will address this problem.

Wavelet approaches for image order volume rendering [36, 37, 56, 89] are mainly usreduce memory requirements of the rendering process and thus to increase the renderingGiven a filtered multiresolution decomposition of the volume data, the evaluation of the insity values is performed directly in the wavelet domain. This concept exhibits rendering spups if the amount of non-vanishing coefficients is sufficiently small. Furthermore, sincewavelet representation features the analytic description of the parameters that are relatevolume data, such as the intensity and opacity, the gradient can be computed on the flyallows an accurate shading computation. By relaxing the requirement for orthogonality obasis, 3D DOG (Difference of two Gaussian) functions can be used as basis functionsThese ideal edge filters enhance edge information and allow the implementation of effrendering schemes.

Further optimizations exploit the identities of sampling parameters for the case of parallejections [46, 92]. Both papers introduce the concept of cell templates to store the basis funthat are relevant for each sampling point. This information is then retrieved from the temfor each parallel ray. However, the usage of templates assumes a constant value withivoxel, which results in a loss in image quality in a general sense.

Another disadvantage of the image order rendering algorithm is due to the fact that datapling does not access the volume in storage order. Any caching technique that is implemin modern processors will therefore fail and the memory latency will rise unacceptably.effect becomes even worse if multiple basis functions overlap at a sampling point.

1.3.2 Object Order Techniques

Object order algorithms process the voxels in their memory order by projecting them ontimage plane in such a way that occlusion is maintained -a process that is calledsplatting[19].The resulting algorithm can be written as:

foreach Element i in Volume

compute Footprint of Basisfunction i

for y image =1 to ImageHeight

for x image =1 to ImageWidth

ImagePixel[x image ,y image ] += contribution of weighted Footprint

The rendering concept is further illustrated in figure 1.2. From the pseudocode, one can obthat the inner and outer loops have been interchanged compared to the image order apThe outer loops iterate over all basis functions . Finally, the two inner loops ite

over the pixels that are covered by the projection.

The view-dependent contribution of a basis function to the image is the most complicateof the algorithm since the renderer must determine the screen space contribution. Moreoa perspective view this footprint changes from voxel to voxel. To bypass a one-dimensintegration of the reconstruction kernel for every covered pixel, classical implementamostly use approximation techniques. In the case of orthogonal projections, the footprintdiffer by an image plane offset. Therefore only one footprint table has to be computed perIf rotation-invariant Gaussian resampling filters are used as the basis functions [90] thebecomes view-independent.

φ

φi x y z, ,( )

Page 25: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

1.3 Volume Rendering Techniques 7

s withhard-

perfor-t [51].ratesever,com-

e, thetages

algo-rifices

m ofs the

scan-pportsdata

chesalgo-ion of

tationiquesto the

sam-

Another common way to increase the rendering speed is to approximate the projectionGouraud-shaded polygons [79, 91]. Gouraud shading is supported on modern graphicsware and hence the rendering speed is increased. Further improvements combine themance of graphics hardware with a multiresolution octree-representation of the data seThis representation allows the simplification of the model in order to achieve higher frameand to compute better images due to a refined data set when free time is available. Howcurrent progressive volume rendering schemes do not take advantage of the previouslyputed images and suffer from the coarse approximations of the projections. Furthermoralgorithms do not provide any control over quality in an absolute sense. One of the advanof our approach is that we can solve these problems [55, 57].

In general, due to the approximated footprints, the image quality of the splatting-basedrithms is lower than that of raycasting-based ones, thus the object order technique sacquality for speed.

The most significant advantage of object-order techniques is that they solve the problememory latency and allow to implement efficient caching strategies since they procesvolume data in storage order.

1.3.3 Hybrid Techniques

Some volume rendering techniques do not fall exactly in either category.Cell projectionalgo-rithms [87] for instance project voxels onto scan lines in the projection plane, such that aline-based image order technique can be employed during the projection. This concept suthe generation of high quality images like raycasting algorithms by accessing the volumein back to front order until all cells have been processed. If the opacity value of a pixel reaunity the pixel is not processed further. For the software implementation however, thisrithm does not achieve interactive frame rates due to the complexity of the scan conversvoxels.

Frequency domain volume rendering approaches provide high frame rates for the compuof two-dimensional intensity projections of volumetric data sets. In general, these technoperate on the three-dimensional frequency domain representation of the data set. DueFourier projection slice theorem, the computation of the projection is accomplished by re

Figure 1.2: Object-order rendering.

Projection plane Volume data setViewer

Volume element i

y

x

z

ximage

yimage

Page 26: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

8 1. Introduction

view-ap.irec-m thewo-

faster andshearhearediateat isires ailar

essed. Theediate

ite effi-e per-

pling the initially Fourier transformed data set along a plane oriented perpendicular to theing direction. An inverse two-dimensional Fourier transform finally brings up the intensity mThe rendering concept allows renderings of X-ray images [59] or linearly depth cued and dtional diffuse shaded volumes [84]. The speed improvements of these methods result frolow complexity of the inverse fast Fourier transform but suffer from the costs for the tdimensional resampling.

Another hybrid approach is theshear-warpfactorization algorithm [50] that is displayed infigure 1.3. It initially performs a run-length encoding compression of the volume to allow astreaming through the volume data. The final rendering uses a simultaneous object-ordimage-order traversal to rapidly splat entire slices of the volume onto the image plane. Thewarp-factorization technique is based on a factorization of the viewing matrix into a 3D sparallel to the slices of the volume data. The sheared slices are projected onto an intermimage in front to back order. The projection follows a synchronized scanline-order thaligned to both the volume data and the image. The projection onto the scanline requresampling of the data. This is done by a 2D resampling filter for reasons of efficiency. Simto the cell projection algorithm mentioned before, pixels marked as opaque are not procfurther. The final image is obtained by warping and a resampling of the intermediate imageadvantage of this technique is that scanlines of the volume data and scanlines of the intermimage are always aligned and that the necessary projections are straight forward and qucient. Furthermore, the algorithm gains speed and efficiency since the filter operations arformed in 2D. The shear-warp algorithm can be described as follows:

shear Volume

foreach slice j in sheared Volume

foreach VolumeElement i in slice j

foreach y image in ResamplingFilter(VolumeElement i )

foreach x image in ResamplingFilter(VolumeElement i )

add contribution of VolumeElement i to ImagePixel[x image ,y image ]

Warp and resample Image

Figure 1.3: Shear-warp factorization.

Intermediate imageRun-length encoded

sheared volume slices

Viewer Final image

Volume scanline

Intermediate image scanline

ximage

yimage

zy

x

Page 27: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

1.4 Contribution 9

tes onrithmmetics

r bothcomeres toinally,city

rchicalmini-a veryally.

ts cand pro-el-of-

ualiza-enta-dations andlutionlemanyina-

fieldof theis the-

y, thethes. Newlass of

he-ndles

onrans-ilarity

The shear warp factorization allows the rendering of large data sets at interactive frame raboth standard workstations and shared-memory multiprocessor machines. The algostreams through the data in storage order hence little overhead occurs for addressing arithand data structure traversals.

The concept however has some major drawbacks. First, the choice of resampling filters fothe scanline resampling and the image resampling is limited to 2D. Therefore artifacts beeasily visible. Furthermore, the efficient access to the data from arbitrary directions requimaintain three persistent copies of the volume, each compressed along a different axis. Fthe algorithm exhibits slower performance if a significant amount of voxels have low-opavalues.

1.4 Contribution

This thesis presents new techniques for volume rendering that are based on efficient hieramodels and methods. Multiresolution methods are of particular interest as they allow tomize the number of elements while maintaining accuracy. Based on a hierarchical model,rough approximation is computed and the representation is then refined globally or locAfter each refinement step, an improved solution can be computed, additional refinemenbe performed. Thus, the model is capable of representing data at various levels of detail anvides good localization properties and enables interactive continuous local and global levdetail control.

The approaches presented in this thesis combine the wavelet theory and the volume vistion techniques. It contributes both innovative theoretical concepts and practical implemtions. The theoretical aspect is a new methodology to strengthen the mathematical founof multiresolution volume rendering techniques by the wavelet theory. It gains new insightfeatures from the hierarchical representation of the data and helps to formalize the somethods. For instance, we will adopt solution methods for the global illumination probbased on a hierarchical finite element formulation. Introducing this new framework raises mfundamental questions concerning the nature of the solutions in the context of global illumtion.

The focus of the practical aspects of this work is on new, fast, and accurate solutions of theof volume rendering. Transport theory and the equation of transfer are the crucial pointsnew solution techniques. We present three different implementations that are based on thoretically motivated framework and propose new approaches to the solution. Previouslfew implementations that existed for global illumination computations were limited toradiosity problems or addressed only the wavelet-based image-order rendering techniqueapproaches that are motivated, implemented, and validated in this thesis handle a larger cluminaries. The primary contribution of this thesis addresses

• Global Illumination:The new approach comprises Galerkin radiosity and wavelet tory. The resulting algorithm takes advantage of modern graphics hardware and hasignificantly more volume elements than current algorithms.

• Image Order Volume Rendering:A new generic method features flexible compressiand rendering aspects. The high image quality that is achieved from wavelet tformed data sets takes advantage of the analytical representation and the self-simof the basis functions.

Page 28: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

10 1. Introduction

a-ientCs over

n. Weof the

apterTech-ns are

. Theandthat

These

nderer.uatingmain

r intro-theseue that

r andided by

• Object Order Volume Rendering:Further simplifications of the volume rendering eqution together with a complex mathematical framework give rise to a highly efficcompression scheme that enables for sub-second rendering times on standard Pa low-bandwidth network

1.5 Thesis Overview

Chapter 2 introduces the underlying wavelet theory that is used throughout this dissertatiodescribe fundamental concepts of the hierarchical functional spaces using the formalismfunctional analysis.

Chapter 3 illustrates the basic physical principles that underlay global illumination. The chmotivates the transport theory that quantifies the passage of energy through a medium.niques for solving the equation of transfer are discussed and hierarchical representatiointroduced. We also motivate the introduction of the newpure volumetric modelthat serves asthe physical concept of our global illumination algorithms.

Chapter 4 describes and evaluates an hierarchical solution method for global illuminationglobal cubeconcept is based on the finite element formulation of the equation of transfercomputes a volumetric radiosity solution. The solver is based on a progressive algorithmuses visual dependencies within the volume in order to compute the energy exchange.dependencies are detected by a hardware assisted rendering process.

Chapter 5 discusses the concept, implementation, and results of our new image order reThe ray caster computes an approximation of the low albedo rendering equation by evalfunctions at distinct sampling points. The rendering is directly performed in the wavelet doand carries out high-quality images.

Chapter 6 contains the description of the wavelet-based object order method. The chapteduces Fourier domain rendering techniques and it shows how our concept unifiesapproaches. It also gives insight in the implementation and the data compression techniqtransmits and renders the compressed data set progressively.

Chapter 7 will compare different aspects of the shear-warp technique with our image ordeobject order approaches. The results clearly demonstrate the improvements that are provour methods towards accurate and efficient volume rendering.

Chapter 8 summarizes the conclusions of this work and discusses future research.

Page 29: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

2veletnaly-con-

tial forA way

, that

veletignal

ignals

der-single

ally,

the

2WAVELETS

The goal of this chapter is to define the underlying mathematical foundations of the watheory and the hierarchical decomposition schemes. We first present the multiresolution asis (MRA), a convenient framework for describing hierarchical bases. We then discuss thestructions of wavelet bases on the interval. The vanishing moment conditions are essenthe understanding of compression abilities of the wavelets and are therefore mentioned.for constructing a multidimensional basis function will be outlined in the last section.

The following discussion is restricted to the space of square integrable functions,is defined as the space of Lebesque measurable functions for which

. (2.1)

2.1 Multiresolution Analysis

Multiresolution analysis (MRA) was formulated based on the study of wavelet bases. Watheory and their applications are rapidly developing fields in applied mathematics and sanalysis. Both theoretically and practically, wavelet basis representations of certain sshow advantages over the traditional Fourier basis representation.

2.1.1 Definition

The MRA concept was initiated by Mallat [58], and provides a natural framework for the unstanding of wavelet bases. The central idea of the MRA is to decompose a function into alow-resolution part and a sequence of detail information at decreasing orders. More form

an MRA of is an increasing sequence of closed subspaces of with

following four properties:

1)

2)

L2 R( )

f2

f x( ) 2

∞–

∫ ∞<=

L2 R( ) Vm( )m Z∈ L

2 R( )

... Vm 1+ Vm Vm 1– ...⊂ ⊂ ⊂ ⊂

Vmm ∞–=

∞∩ 0 ; Vm is dense inL

2 R( )m ∞–=

∞∪=

11

Page 30: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

12 2. Wavelets

that

.

-e with

r all

e of

func- as

nc-

of

3) for all functions and all integers , is equivalent to

4) there exists a function , belonging to , such that the sequence

is a Riesz basis for .

From the first two properties we obtain the approximation features of the MRA. They state

every function can be approximated as closely as desired by its projection in

The first and the second properties also state that by increasingm, the projections into could

have arbitrarily small energy. In contrast, ifm tends to infinity variations of the projected function decrease. The third property ensures that the resolutions of functions in decreas

m. The last property states that a countable set of functions span and, fo

,

(2.2)

with and . Thus the energy of each function in is bounded. For the cas

orthonormal basis functions we have .

As a conclusion, an MRA consists of two basic ingredients: an infinite nested set of lineartion spaces and an inner product of two functions that is defined

(2.3)

The functions with

(2.4)

constitute a Riesz basis for a subspace . We denote these functions asscaling func-

tions. Each function , can thus be written as a weighted sum of scaling fu

tions of the corresponding level such that

(2.5)

The concept of the MRA allows detail information to be kept in the complement space

, such that

f L2 R( )∈ m Z∈ f x( ) V0∈

f 2m–

x( ) Vm∈

φ x( ) V0 φ x p–( )( )p Z∈

V0

f L2 R( )∈ Vm

Vm

Vm

φ p–⋅( ) V0

cp( )p Z∈ l2 Z( )∈

A cp2

p∑ cpφ p–⋅( )

p∑ B cp

2

p∑≤ ≤

0 A< B ∞< V0

A B 1= =

Vm m Z∈ f g, Vm∈

f g,⟨ ⟩ f x( )g x( ) xd

∞–

∫=

φmp( )p Z∈

φmp x( ) 2

m2----–

φ 2m–

x p–( )=

Vm L2 R( )⊂

f V∈ mom0 Z∈

φm0p m0

f x( ) cpφm0p x( )p∑=

Wm

Vm

Page 31: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

2.1 Multiresolution Analysis 13

d from

tation-

-

ns. Ifnfor-the

pacefunc-

inuousond-(2.9)ion of

rmore

(2.6)

The spaces are spanned by the so-called wavelet functions that are constructe

the single mother wavelet by the operations of translations and dyadic scaling

(2.7)

The introduction of the hierarchical set of basis functions allows a hierarchical represenof the functionf in (2.5). Any functionf with can now be written, as a linear combi

nation of a coarse overall shape at levelM>m0 and additional detail information at higher reso

lutionsm with . We have

(2.8)

In general, this hierarchical representation allows an economical representation of functioa function has little or no detail in some region, then the coefficients that code the detail imation will be zero or negligibly small in this region. If the corresponding basis function orassociated coefficient is removed from the basis, only a slight difference will occur.

2.1.2 Haar Basis

Historically, the first multiresolution basis is the Haar basis in one dimension [39]. The sconsist of piecewise-constant functions, namely the Haar functions where its mother-

tion φ is defined as:

(2.9)

Since these basis functions are not continuous, they are not suitable for the study of contfunction spaces. Furthermore, their Fourier transformations decay only like , corresping to bad localization properties in the frequency domain. From the definitions (2.4) andwe clearly observe that each function in can be represented by a linear combinat

the basis functions that span , thus the vectorspaces are nested ( ). Furthe

the functions form an orthonormal basis, since

(2.10)

where denotes the Kronecker-delta function, with

(2.11)

Vm 1– Vm Wm+=

Wm ψmp

ψ

ψmp x( ) 2

m2----–

ψ 2m–

x p–( )= , m p,( ) Z2∈

f V∈ mo

M m m0>≥

f x( ) cMpφMp x( ) dmpψmp x( )p∑

m m0 1+=

M

∑+p

∑=

Vm

φ x( )1 for 0 x 1<≤0 otherwise

=

1 ω⁄

Vm 1+

Vm Vm Vm 1+⊃

φmp φmq,⟨ ⟩ δpq , m p q, ,( ) Z3∈=

δpq

δpq1 for p q=

0 otherwise

=

Page 32: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

14 2. Wavelets

cewise

calingavere

iety of

es fea-e thessify

dingusly,isualf wider

the

inter-ableimply

The complement spaces that correspond to the Haar functions are spanned by pie

constant wavelets with the motherfunction , defined as a stepfunction

(2.12)

From (2.6) we obtain that each wavelet can be constructed as a linear combination of sfunctions from the next lower space. For the case of Haar functions we h

. The Haar scaling function and wavelet are depicted in figu

2.1.

2.1.3 Properties of Wavelets

The Haar basis represents the simplest example of a wavelet basis. In addition, a var

orthonormal bases for have been constructed in the recent years. These new basture excellent localization properties in both time and frequency. Since we intend to uswavelet theory for volume rendering it is important to focus on several properties that cladifferent wavelet families.

• Smoothness: This smoothness of a function can be measured in many ways incluthe number of continuous derivatives or the decay of its Fourier transform. Obvioit is desirable to have smooth basis functions for volume rendering since less vartifacts appear. However, great smoothness in general comes at the expense osupports.

• Support: The support of a wavelet is defined as the size of the interval over whichwavelet function is non-zero, i. e.

(2.13)

The term “compact support” refers to functions that are supported over a boundedval. In order to avoid a smearing effect of local detail throughout the data, it is desirto have wavelets that feature small support. Furthermore, smaller support regions

Figure 2.1: Haar basis: (a) scaling function, (b) wavelet.

Wm

ψ

ψ x( )1 for 0 x 0.5<≤1 for 0.5 x 1<≤–

0 otherwise

=

ψmp φm 1+ 2p, φ– m 1+ 2p 1+,=

2m

p 2m

p 1+( )

φmp x( )

x2

mp

2m

p 1+( )

ψmp x( )

x

(a) (b)

L2 R( )

supp f( ) x R∈ f x( ) 0≠ =

Page 33: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

2.1 Multiresolution Analysis 15

to bemall

tialion inntialasis

res-ch asthey

erpromi-tol-

y theexist-elets

ers theThed

e sig-l inno-

efficient decomposing and reconstruction algorithms since fewer functions havetaken into account. Especially for the case of direct wavelet domain rendering, a slocal support increases the speed significantly.

• Localization: By a small local support, we acquire high accuracies in the spadomain. In contrast to the positional accuracy we also have to consider the resolutthe frequency domain. The localization property in the frequency domain is essefor de-noising purposes or discontinuity detection. The spatial spread of a bfunctionf(x) is defined as

(2.14)

Consequently, its spread in frequency orbandwidth is defined as

(2.15)

whereF(ω) denotes the Fourier transform of the functionf(x). Heisenberg’s uncertaintyprinciplebounds their product by

(2.16)

Thus, for good spatial localization properties of basis functions, one has to sacrificeolution in the frequency domain and vice versa. Modulated Gaussian functions suthe Gabor functions are optimal in terms of the spatial/frequency localization sinceequal this lower boundary.

• Symmetry (linear phase): With a symmetric wavelet and scaling function, usually fewartifacts appear in the representation. To the human eye these errors seem morenent around edges in the volume. It is a property of our visual system that it is moreerant to symmetric errors than asymmetric ones. Symmetric functions also simplifhandling of boundaries of the volume data. However, Daubechies proved the nonence of symmetric or antisymmetric orthonormal real compactly supported wavbeside the Haar basis [20].

• Vanishing moments: In the context of compression it is important to study the innproduct properties of the basis functions since this operation is one way to expresprojection into the wavelet space. This leads to the introduction of moments.momentk of a functionf is the integral of this function multiplied by its variable raiseto the powerk. A wavelet is said to haven vanishing moments if the firstn momentsvanish, that is

(2.17)

The advantageous effect of vanishing moments is their property to concentrate thnal information in a relatively small number of coefficients. This feature is usefuparticular for compression. If some signal is well represented by a low order poly

∆x

∆xf x

2f x( ) 2

xd∫f x( ) 2

xd∫-------------------------------=

∆ωf ω2

F ω( ) 2 ωd∫F ω( ) 2 ωd∫

------------------------------------=

∆xf ∆ω

f⋅ 14π------≥

ψ

ψ k⋅,⟨ ⟩ ψ t( )tktd∫ 0= = for k 0 … n 1–, ,=

Page 34: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

16 2. Wavelets

s the

tibleif werificeeachmeetwill

ion, it istions.

is

mial of degreep with p<n, then the corresponding wavelet coefficientsd will be closeto zero. Hence, the number of vanishing moments of a wavelet function measurecompression ability of the wavelet transform in terms of a polynomial degree.

• Orthogonality: As mentioned above, symmetry and compact support are incompafor the case of orthogonal basis functions except for the Haar basis. Hence,require smooth compactly supported symmetric wavelet functions we have to sacorthogonality. The resulting class of functions is based on two dual wavelet bases,associated with a different multiresolution representation. Wavelets designed tothis criterion are referred to as semiorthogonal or biorthogonal. The next sectiondescribe these wavelets in more detail.

• Closed form representation: Evidently, accurate evaluation of the decomposed functrequires accurate representations of the underlying basis functions. Thereforedesirable to have closed analytical expression for both wavelets and scaling func

2.1.3.1 Orthogonal Wavelets

A sufficient condition for a multiresolution analysis to be orthogonal is

(2.18)

or

(2.19)

since the other conditions simply follow from scaling. Consequently we have from (2.6)

(2.20)

Figure 2.2 shows schematically the orthogonal vector spaces for different levelsm.

A scaling functionφ is denoted as an orthonormal function, if the set

either an orthonormal basis of , or

(2.21)

Figure 2.2: Schematic representation of the embedded functional spaces.

W0 V0⊥

ψ φ p–⋅( ),⟨ ⟩ 0 , p Z∈∀=

Wm Wm' if m m'≠⊥

VM

Vm0

Vm0 1+ Wm0 1+

Vm0 2+ Wm0 2+

WM

φ x p–( ) p Z∈ V0

φ φ p–⋅( ),⟨ ⟩ δp0=

Page 35: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

2.1 Multiresolution Analysis 17

RA

nite

rator

Because of (2.4) this automatically implies that the set is orthonormal.

Consequently, if a wavelet is orthonormal we imply for the case of an orthonormal Mfrom (2.18), that

(2.22)

Since the spacesWm are mutually orthogonal, the collection of functions

spansL2(R). We obtain an orthogonal decomposition of this functional space by the infidirect sum

(2.23)

where denotes the direct or orthogonal sum. If we define as the projection ope

onto the vector spaceU, the projection of an arbitrary function onto the spaces

and can be written as

(2.24)

and for the complement space

(2.25)

where

(2.26)

They yield the bestL2 approximations of the functionf in Vm andWm, respectively. As a conse-

quence from (2.23) we can describe each function as

(2.27)

φmp p Z∈

ψ

ψmp ψm'p',⟨ ⟩ δmm'δpp'=

ψmp m p, Z∈

L2 R( ) Wm

m Z∈⊕=

⊕ ℘U

f L2 R( )∈ Vm

Wm

℘Vmf x( ) f φmp,⟨ ⟩φmp x( )

p∑=

cmpφmp x( )p∑=

f m x( )=

Wm

℘Wmf x( ) f ψmp,⟨ ⟩ψmp x( )

p∑=

dmpψmp x( )p∑=

gm x( )=

cmp f φmp,⟨ ⟩ and dmp f ψmp,⟨ ⟩==

f L2 R( )∈

f x( ) dmpψmp x( )m p,( ) Z2∈

∑=

Page 36: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

18 2. Wavelets

dis-

e can that

Both

ofnerate

s isymme-or pre-

dual

, such

,

d by

and

Techniques for the efficient computation of the scalar coefficients and will be

cussed in section 2.1.4. It is noteworthy that for the case of orthogonal basis functions wconclude that the energy norm of a function is linked to the norm of its coefficients, such

(2.28)

The most frequently used orthonormal wavelets were constructed by Daubechies [20].wavelet and scaling functions are compactly supported on an interval of length 2n-1, with

. However, for these functions, which provide low smoothness for smalln, an analyticrepresentation does not exist.

2.1.3.2 Semiorthogonal Wavelets

It is important to note that an orthogonal MRA does not imply orthonormality conditionsor . This means that there is a larger class of wavelets that can be used to ge

orthogonal decompositions of . If the requirement for orthogonal basis functiondropped we can construct compactly supported wavelets that are also symmetric or antistric [14,86]. The generated class of basisfunctions are often denoted as semiorthogonal

wavelets. Here, in addition to the functions and a dual scaling function and a

wavelet exist that generate a dual multiresolution analysis with subspaces andthat

(2.29)

and consequently,

(2.30)

Since we still require an orthonormal MRA, the subspacesWm are mutually orthogonal. Thuswe have

(2.31)

And we finally obtain

(2.32)

That is, and span the same space , whereas is spanne

both and .

The dilation and translation properties of and can be taken directly from (2.4)

(2.7). The projection operators take the form

cmp dmp

fL2 cm0p( )2

p∑ dmp( )2

p∑

m m0 1+=

M

∑ cMp( )2

p∑+ for all f Vm0

∈= =

n N∈

φmp ψmp

L2 R( )

φ ψ φψ Vm Wm

Vm⊥Wm and Vm⊥Wm

Wm⊥Wm' for m m'≠

Wm⊥Wm' for m m'≠

Vm Vm and Wm Wm= =

φmp p Z∈ φmp p Z∈ Vm Wm

ψmp p Z∈ ψmp p Z∈

ψmp φmp

Page 37: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

2.1 Multiresolution Analysis 19

nalyticthis, 61].

eraleans

structpportlow

ffi-

asisforms.dual

(2.33)

and

(2.34)

and finally

(2.35)

The class of semiorthogonal wavelets allows us to generate spline bases that feature arepresentations for primal and dual functions [12, 86]. We will give a detailed description ofbasis in section 2.2. Further constructions of semi-orthogonal wavelets can be found in [44

2.1.3.3 Biorthogonal Wavelets

By further neglecting the orthonormality properties of the MRA we obtain the most genMRA, referred to as biorthogonal wavelets. The generalization to biorthogonal wavelets mmore flexibility. Similar to the semiorthogonal case the functional spaces ensure that

(2.36)

The general concept of biorthogonal wavelets and its few prerequisites allows us to conspline wavelets and scaling functions where primal and dual functions have compact su[17]. However, these constructions suffer from the fact that the dual functions have veryregularity. Furthermore the norm of a function is not directly linked to the norm of its coecients

2.1.4 Discrete Wavelet Transform

The termwavelet transformdenotes the projection of a signal onto a series of wavelet bfunctions. Note that (2.33) and (2.34) can therefore be seen as discrete wavelet transSince the dual functions also define a multiresolution analysis, the mother-functions of thescaling and wavelet function must satisfy:

(2.37)

This property can be rewritten in terms of the basis functions as thetwo-scale relationship

(2.38)

℘Vmf x( ) f φmp,⟨ ⟩φmp x( )

p∑=

cmpφmp x( )p∑=

℘Wmf x( ) f ψmp,⟨ ⟩ψmp x( )

p∑=

dmpψmp x( )p∑=

f f ψmp,⟨ ⟩ψmpm p,( ) Z∈

∑=

φmp φmp',⟨ ⟩ δpp' and ψmp ψmp',⟨ ⟩ δmm'δpp' m m' p p', , , Z∈= =

f

V0 V 1– and W0 V 1–⊂⊂

φ x( ) 2 hqφ 2x q–( ) and ψ x( )q∑ 2 gqφ 2x q–( )

q∑= =

Page 38: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

20 2. Wavelets

func-

lude

rimal

tion

hold

tions

and

where the sequences and can be found with respect to the chosen basis

tions. From (2.38) and due to the orthogonality of the primal and dual functions, we conc

(2.39)

To establish a similar expression for the primal coefficients, we simply interchange the pand dual basis functions. Referring to (2.39), one gets

(2.40)

Since , the function can be expressed as a linear combina

of the basis functions ofV0 andW0, such that

(2.41)

As a consequence from the fact that , the relationships (2.38) and (2.41)

for an arbitrarily chosenm. Hence, we have from (2.4), (2.7), (2.39), and (2.40)

(2.42)

Then by (2.38), we have the following two-scale relationships for the primal and dual func

(2.43)

and (2.41) can be rewritten as

(2.44)

Any function can be described uniquely as the sum of functions

in the sense that

hq( )q Z∈ gq( )q Z∈

hq 2p– 2 φ ⋅ p–( ) φ 2⋅ q–( ),⟨ ⟩=

gq 2p– 2 ψ ⋅ p–( ) φ 2⋅ q–( ),⟨ ⟩=

hq 2p– 2 φ ⋅ p–( ) φ 2⋅ q–( ),⟨ ⟩=

gq 2p– 2 ψ ⋅ p–( ) φ 2⋅ q–( ),⟨ ⟩=

V 1– W0 V0+= φ 2x q–( ) V 1–∈

φ 2x q–( ) φ ⋅ p–( ) φ 2⋅ q–( ),⟨ ⟩φ x p–( ) ψ ⋅ p–( ) φ 2⋅ q–( ),⟨ ⟩ψ x p–( )p∑+

p∑=

2 hq 2p– φ x p–( ) 2 gq 2p– ψ x p–( )p∑+

p∑=

Vm 1– Wm Vm+=

hq 2p– φmp φm 1– q,,⟨ ⟩=

gq 2p– ψmp φm 1– q,,⟨ ⟩=

hq 2p– φmp φm 1– q,,⟨ ⟩=

gq 2p– ψmp φm 1– q,,⟨ ⟩=

φm 1+ p, x( ) hq 2p– φmq x( )q∑=

ψm 1+ p, x( ) gq 2p– φmq x( )q∑=

φm 1+ p, x( ) hq 2p– φmq x( )q∑=

ψm 1 p,+ x( ) gq 2p– φmq x( )q∑=

φm 1– q, hq 2p– φmp gq 2p– ψmpp

∑+p

∑=

f Vm∈ φm 1+ Vm 1+∈

ψm 1+ Wm 1+∈

Page 39: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

2.1 Multiresolution Analysis 21

ion

mality

that ise

from

.

(2.45)

In other words, there exist two valid representations of the functionf, one as an element inVm

that is associated with the sequence , and another as a sum of elements inVm+1 and

Wm+1 associated with the sequences and . The following relat

shows how to switch between these representations. From (2.43), (2.45), and the orthonorof the basis functions, we have

(2.46)

and similarly

(2.47)

Formulae (2.46) and (2.47) can be used to define a recursive decomposition algorithmoften denoted as thefast wavelet transform. This decomposition scheme is illustrated in figur2.3 for the case of a two-level decomposition.

The reconstruction algorithm allows the lossless computation of the sequence

the discrete lowpass information and the detail coefficients

Using (2.42) and (2.45) we have

Figure 2.3: Wavelet decomposition.

f x( ) cmpφmp x( )p

∑=

cm 1 p,+ φm 1 p,+ x( ) dm 1 p,+ ψm 1 p,+ x( )∑+p

∑=

cmp( )p Z∈

cm 1 p,+( )p Z∈ dm 1 p,+( )p Z∈

cm 1 p,+ f x( ) φm 1 p,+,⟨ ⟩=

cmqφmq φm 1 p,+,q∑⟨ ⟩=

cmqφmq hq 2p– φmqq∑,

q∑⟨ ⟩=

hq 2p– cmqq∑=

dm 1 p,+ gq 2p– cmqq∑=

cm0p( )p Z∈

cm0 1 p,+( )p Z∈

dm0 1 p,+( )p Z∈

cm0 2 p,+( )p Z∈

dm0 2 p,+( )p Z∈

hq 2p– cm0qq∑

gq 2p– cm0qq∑

hq 2p– cm0 1 q,+q∑

gq 2p– cm0 1 q,+q∑

Initial data set First level Second level

Decomposition(Analysis)

cmp( )p Z∈

cm 1 q,+( )q Z∈ dm 1 q,+( )q Z∈

Page 40: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

22 2. Wavelets

erfectr

ere,

ds.

rier

eamidationetric

e.

eceiver.tructed

(2.48)

When applied recursively, this term defines theinverse fast wavelet transformas depicted infigure 2.4.

In signal processing this concept of reconstruction and decomposition is known as preconstruction,two-channel subband coding systemor perfect reconstruction quadrature mirrofilter (PR QMF) [6, 82]. The corresponding two-channel filter bank is shown in figure 2.5. H

the spectrum of the input signal is divided into two equal subban

The analysis filter bank consists of a 2π-periodic low-pass and a band-pass , whose Foutransforms are defined as

(2.49)

where denotes the imaginary operator and the frequency.

The filtered signal is then downsampled by 2 (↓2) according to the Nyquist theorem. Thlowpass signal can then be filtered again by a QMF pair. Note that each level of the pyrtransformation can be done in linear time. Furthermore, as each level performs a transformof half the size, the running time of the complete pyramid is thus governed by the geom

series . Therefore, the subband filtering runs in linear tim

In a subband coder the computed signals are quantized, encoded and transmitted to the rIf we assume ideal operation and lossless transmission the original signal can be recons

Figure 2.4: Wavelet reconstruction.

cmp f x( ) φmp,⟨ ⟩=

cm 1 q,+ φm 1 q,+ dm 1 q,+ ψm 1 q,+q∑+

q∑ φmp,⟨ ⟩=

cm 1 q,+ φm 1 q,+ φmp,⟨ ⟩q∑ dm 1 q,+ ψm 1 q,+ φmp,⟨ ⟩

q∑+=

hp 2q– cm 1 q,+ gp 2q– dm 1 q,+q∑+

q∑=

cm0p( )p Z∈

cm0 1 p,+( )p Z∈

dm0 1 p,+( )p Z∈

cm0 2 p,+( )p Z∈

dm0 2 p,+( )p Z∈

hp 2q– cm0qq∑

gp 2q– cm0qq∑+

hp 2q– cm0 1 q,+q∑

gp 2q– cm0 1 q,+q∑+

Initial data setFirst levelSecond level

Reconstruction(Synthesis)

f x( ) cm0pφm0p x( )p

∑=

h g

H ω( ) hqe iqω–

q∑= and G ω( ) gqe iqω–

q∑=

i ω

nn2--- n

4--- ... 1+ + + +

2n O n( )= =

Page 41: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

2.2 B-Spline Wavelets 23

ringswing

efinedrmalBattlethe

nserettervan-pres-other

d in

ution

by upsampling (↑2) and filtering of the achieved zero-interlaced signal by the filtersH andG,given as

(2.50)

The final step is to sum up the signals to yield the reconstructed information.

Recall from section 2.1.3.2 that the relaxation of the orthonormality of the basis function bup some powerful features that are useful for the purpose of volume rendering. In the follosection we will therefore discuss the semi-orthogonal B-spline wavelets in more detail.

2.2 B-Spline Wavelets

The simplest example of an orthogonal spline wavelet basis is the Haar basis as it was din section 2.1.2. By its definition, it can be seen as a first-order spline function. Orthonospline wavelet bases of higher order spline wavelets were constructed independently by[5] and Lemarié [52] by orthogonalizing B-spline functions. According to their definitions,

piecewise polynomials of arbitrary orderj have j-1 vanishing moments and belong toCj-2.Although, these wavelets have exponential decay they not provide compact support.

The semiorthogonal spline wavelets were described first by Chui and Wang [14, 15] and U[86]. An essential property of these functions is their compact support, which brings up a blocalization in the spatial domain than their orthogonal equivalents. Another important adtage of these functions compared to the construction of Battle-Lemarié is that analytic exsions for scaling functions, wavelets, their duals, and their derivatives can be given. The mscaling functions equal the well-known cardinal B-spline functions, which is widely usegraphics and geometric modeling. The first order function is given as

(2.51)

For an arbitrary order we have the recursive definition that incorporates the convoloperator * as follows

Figure 2.5: Two-level subband filtering pyramid.

H ω( ) hqe iqω–

q∑= and G ω( ) gqe iqω–

q∑=

G

↓2

↓2

H ↓2

G ↓2

Hcm0p( )p Z∈ cm0 2 p,+( )

p Z∈

dm0 2 p,+( )p Z∈

dm0 1 p,+( )p Z∈

cm0p( )p Z∈

G

↑2

↑2

H↑2

G↑2

H

Reconstruction(Synthesis)

Decomposition(Analysis)

φ 1[ ] x( ) 1 0 x 1<≤0 otherwise

=

j 1>

Page 42: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

24 2. Wavelets

esorder

orts.

erentalized

etricderiva-ell asderiv-

. For

(2.52)

The cardinal B-splines are the minimal supported generators of the spline subspacV[j].From (2.51) and (2.52) we can compute the support of the scaling functions of an arbitraryj as

(2.53)

Note that the scaling functions are symmetric with respect to the center of their suppThe derivatives can be given recursively by

(2.54)

Following [14], minimally supported semiorthogonal cardinal spline wavelets of orderj can beachieved by defining

(2.55)

From (2.55) we can conclude that

(2.56)

Moreover, the wavelets are symmetric for evenj and antisymmetric for oddj, i. e.

(2.57)

Figure 2.6 displays the functional courses of the scaling functions and the wavelets for difforders. Different functional properties such as continuity, symmetry and support can be reeasily.

Since we intend to use both wavelets and scaling functions for the representation of volumdata sets, we are also interested in an analytic representation of their derivatives. Thesetives allow us to estimate the remainder of the Newton-Cotes formulae in section 5.4 as wthe computation of the volume gradient that is necessary for accurate shading effects. Theative of the scaling function can be directly achieved from the recursive definition in (2.52)

φ j[ ] x( ) φ j 1–[ ] φ 1[ ]*( ) x( )=

φ j 1–[ ] x t–( ) td

0

1

∫=

xj 1–-----------φ j 1–[ ] x( )

j x–j 1–-----------φ j 1–[ ] x 1–( )+=

φ j[ ]

supp φ j[ ]( ) 0 j,[ ]=

φ j[ ]

dφ j[ ]x( )

dx-------------------- φ j 1–[ ]

x( ) φ j 1–[ ]x 1–( )–=

ψ j[ ] x( ) ξ j k, φ j[ ] 2x k–( )k 0=

3 j 2–

∑=

with ξ j k,1–( )k

2 j 1–------------- j

l φ 2 j[ ] k 1 l–+( )

l 0=

j

∑=

supp ψ j[ ]( ) 0 2 j 1–,[ ]=

ψ j[ ]x( )

ψ j[ ]2 j 1 x––( ) if j even

ψ–j[ ]

2 j 1 x––( ) if j odd

=

Page 43: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

2.2 B-Spline Wavelets 25

tically

of a

ojec-

ns inquire-

the case of cardinal spline wavelets the derivative of the wavelet can be computed analyfrom

(2.58)

where can be taken directly from (2.55). In chapter 6 we will compute the footprint

function by the Fourier projection slice theorem. This theorem allows us to compute the prtion of the functions directly from the frequency domain by aninverse fast Fourier transform(iFFT). Therefore, it is very useful to have an analytic representation of the basis functiothe frequency domain. The cardinal spline scaling functions and wavelets feature this rement. Due to the recursive definition of the B-spline functions of orderj and their time-shift, the

Fourier transform of the scaling function is given as

(2.59)

For the wavelet function the representation in the frequency domain equals

Figure 2.6: Scaling functions and wavelets with different orderj: upper row:scaling functions, lower row: wavelets, (a)j=2, (b)j=3, (c)j=4.

0

0.2

0.4

0.6

0.8

1

0.5 1 1.5 2x

-0.4

-0.2

0

0.2

0.4

0.6

0.8

0.5 1 1.5 2 2.5 3x

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.5 1 1.5 2 2.5 3x

-0.3

-0.2

-0.1

0

0.1

0.2

0.3

1 2 3 4 5x

0

0.1

0.2

0.3

0.4

0.5

0.6

1 2 3 4x

-0.2

-0.1

0

0.1

1 2 3 4 5 6 7

x

(a) (b) (c)

dψ j[ ] x( )dx

-------------------- ξ j k,dφ j[ ]

2x k–( )dx

--------------------------------k 0=

3 j 2–

∑=

ξ j k,

φ j[ ]

Φ j[ ] ω( ) 1 eiω–

–iω

------------------

j

=

e

i jω–2

-----------ω2----

sin

ω2----

-----------------

j

=

Page 44: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

26 2. Wavelets

ctionstrun-

or.

from

timalg inring

ively.

ientsce an.

trans-unc-ion

reata.

MRA.rval.

tion

efinedraw-uring

(2.60)

with

(2.61)

The dual wavelet and scaling function remain symmetric spline functions of orderj. In [12] ananalytic representation of the dual functions can be found. A disadvantage of the dual funis that they do not have compact support. Their exponential decay, however, allows us tocate the filter coefficients to give a finite impulse filter (FIR) without introducing a large errDetailed error estimations can be found in [12].

Another important advantage of the cardinal spline wavelets for volume rendering resultsthe fact that they converge to Gabor functions as the orderj tends to infinity [85]. For the caseof cubic B-splines the approximation error is less than 2.7%. Thus, this function is near opin terms of the spatial/frequency localization. We can therefore obtain a localized filterinboth the spatial and the frequency domain by removing the wavelet coefficients. This filteallows us to compress the data, locally surpress visual details, or to reduce noise select

For the implementation of the wavelet transform it is desirable to have rational filter coeffich andg as it is provided by the cardinal B-spline basis functions. Irrational coefficients forround-off of these numbers. This induces errors and does not allow perfect reconstructio

Since the number of vanishing moments measures the compression ability of the waveletform it is important to have a large number of vanishing moments. The B-spline wavelet ftions of orderj provide j vanishing moments. Hence, they are well suited for compresspurposes.

2.3 Boundary Conditions

All the above concerns hold forL2(R). For the case of volume visualization, however, we ainterested in problems confined to an interval due to the finite size of the volumetric dRestrictions to a bounded interval, e.g. [0,1], entail some changes in the concept of theIn this chapter we will introduce four different approaches for an MRA on a bounded inte

2.3.1 Spatial Windowing

A straightforward approach for an MRA on an interval is to define a spatial windowing func

as

(2.62)

This extension can be decomposed as described in section 2.1.4, since it is formally dthroughout the whole real line. However, this naive approach suffers from two major dbacks. The first drawback results from the fact that too many coefficients are generated d

Ψ j[ ] ω( ) Q e

iω–2

---------

Φ j[ ] ω2----

=

Q x( ) 12--- ξ j k, x

k

k ∞–=

∑=

f x( )

f x( )f x( ) if x 0 1,[ ]∈0 otherwise

=

Page 45: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

2.3 Boundary Conditions 27

intro--near

ithoutgenera-r ource of

r-

r-the

ded

reas aisfygly

case of

t to

t to

the wavelet transform, i. e. starting fromN coefficients such that , the

number of coefficients one should have to use at levelm is only . Spatial windowingdoes not satisfy this condition in general. The second disadvantage of this method is theduction of discontinuities inf at x=0 andx=1. It is clear from the frequency-localization properties of the wavelets that this effect will generate large wavelet coefficients for fine scalesthe boundaries of the interval, even iff itself is very smooth on [0,1].

The advantage that results from this scheme is that the MRA concept can be applied wany change. Hence, compared to the other techniques, this method does not require thetion of new basis functions at the boundaries. Therefore, we will use spatial windowing foobject-order volume rendering approach that exploits the translation and scaling invarianthe basis functions.

2.3.2 Reflection

Another solution is to reflect the functionf(x) at its boundaries. The new function is recusively defined as

(2.63)

In contrast to the spatial windowing this method guarantees at leastC0 continuity for the case

of a continuous functionf(x). In contrast to the definition of a new function we can refomulate this technique in terms of the basis functions. From this point of view, reflectingfunction f(x) is equivalent to expand this function on the real line and to introduce new folwavelets and scaling functions:

(2.64)

It can be shown, that the orthogonality of the basis functions cannot be preserved, whebiorthorgonal MRA on [0,1] can be obtained if the initial scaling function and wavelet satthe conditions for biorthogonality [1]. In general, the number of basis functions strondepends on the size of the support interval and the shape of the basis functions. For thereflected cardinal B-spline wavelets on [0,1] we have

• scaling functions and wavelets if and are symmetric with respec1/2.

• scaling functions and wavelets if and are antisymmetric with respec1/2.

f x( ) cm0pφm0p x( )p 0=

N 1–

∑=

N2m m0–( )–

f x( )

f x( )f x–( ) if x 0<f x( ) if x 0 1,[ ]∈

f 2 x–( ) if x 1>

=

f x( )

φmpfold

x( ) φmp x 2q–( ) φmp 2q x–( ) x 0 1,[ ]∈q∑+

q∑=

ψmpfold

x( ) ψmp x 2q–( ) ψmp 2q x–( )q∑+

q∑=

2m–

1+ 2m– ψ ψ

2m–

2m– ψ ψ

Page 46: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

28 2. Wavelets

andhan 1,

of dif-

of thehas toputa-e will

3.4.

Figure 2.7 and figure 2.8 illustrate this for quadratic and cubic B-spline scaling functionswavelets. To ensure that the support of the wavelet and the scaling function is smaller twe have to choosem as -2.

From the definition of the wavelets and scaling functions we can distinguish three classesferently shaped boundary and interior functions, namely

• Left boundary (LB) functions:

• Right boundary (RB) functions: ,

• Interior functions (I): ,

Consequently, the functional spaces do not provide the dilation and translation invariancebasis functions and . For volume rendering this is unfortunate because the systemconsider different basis functions, depending on the spatial position. This results in a comtional overhead and increases the computation costs. For the case of B-spline functions wfurther discuss the problem of the boundary functions and interior functions in section 2.

Figure 2.7: Cardinal spline basis functions,m=-2, j=3 (antisymmetric case):(a) four scaling functions, (b) four wavelets.

Figure 2.8: Cardinal spline basis functions,m=-2, j=4 (symmetric case):(a) five scaling functions, (b) four wavelets.

(a) (b)

0

0.2

0.4

0.6

0.8

1

0.2 0.4 0.6 0.8 1x

-0.3

-0.2

-0.1

0

0.1

0.2

0.3

0.2 0.4 0.6 0.8 1x

0

0.2

0.4

0.6

0.8

1

1.2

0.2 0.4 0.6 0.8 1x

-0.3

-0.2

-0.1

0

0.1

0.2

0.3

0.2 0.4 0.6 0.8 1x

(a) (b)

0 supp f ∈

1 supp f ∈

0 1, supp f ∉

φ ψ

Page 47: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

2.3 Boundary Conditions 29

ique.on

coef-nding

. The

and

ve to

pe ofationtech-

2.3.3 Repetition

The problem of differently shaped basis functions can be avoided by the repetition technHere, the functionf(x) is repeated periodically in the interval [0,1]. Therefore, a new functi

can be defined on the real line as

(2.65)

Since this construction does not guarantee continuity at the boundaries, high waveletficients may be introduced. If we again construct basis functions that define a correspoMRA on the interval, we have

(2.66)

Figure 2.9 shows graphs of quadratic cardinal B-spline scaling functions and wavelets

functional courses exhibit the natural structure of this definition. Both spaces

are spanned by basis functions. Likewise to the reflection technique, we ha

deal with boundary functions and interior functions. Beside a modulo operation, the shathese function do not differ. This allows us to implement an efficient and elegant computscheme for the evaluation of the functional values. Therefore we have implemented thisnique in our image-order volume renderer which will be described in chapter 5.

Figure 2.9: Cardinal spline basis functions,m=-2, j=3 (periodized):(a) four scaling functions, (b) four wavelets.

f x( )

f x( )f x 1+( ) if x 0<f x( ) if x 0 1,[ ]∈

f x 1–( ) if x 1>

=

C0

φmpperiod

x( ) 2

m2----–

φ 2m–

x i–( ) p–( )i

∑=

ψmpperiod

x( ) 2

m2----–

ψ 2m–

x i–( ) p–( )i

∑=

Vmperiod

Wmperiod

2m–

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.2 0.4 0.6 0.8 1x

-0.3

-0.2

-0.1

0

0.1

0.2

0.3

0.2 0.4 0.6 0.8 1x

(a) (b)

Page 48: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

30 2. Wavelets

ener-basic

ion

all

from

ucted

2.3.4 Multiple Knots

In the case of B-spline functions a semi-orthogonal MRA on a bounded interval can be gated by introducing multiple knots at the endpoints. We first have to differentiate the threeclasses of basis functions. From (2.4), (2.7), (2.53), and (2.56) we have

(2.67)

If the left boundary (LB), right boundary (RB) and interior (I) indices-sets of a given funct

are defined as

(2.68)

one can observe that the sets , and are disjoint for sufficiently sm

values ofm. In this case, the associated basis functions may be computed independentlyeach other. More precisely, for the B-spline scaling functions we have to chose m0 as

(2.69)

and for the wavelets

(2.70)

in order to obtain disjoint indices-sets. For this setup the following classes can be constrfor all m with

(2.71)

Following the definitions given in (2.71), the spaceVm is generated by

(2.72)

supp φmpj[ ]( ) 2

mp 2

mj p+( ),[ ] and supp ψmp

j[ ]( ) 2m

p 2m

2 j 1– p+( ),[ ]==

f φmpj[ ] ψmp

j[ ], ∈

SmLB

f( ) p Z : 0 supp fmp( )∈∈ =

SmRB

f( ) p Z : 1 supp fmp( )∈∈ =

SmI

f( ) p Z : 0 1, supp fmp( )∉∈ =

SmLB

f( ) SmRB

f( ) SmI

f( )

j 2m0–

<

2 j 1–( ) 2m0–

<

m m0≤

SmLB φ j[ ]( ) p Z: j– 1 p 1–≤ ≤+∈ Vm

LBspan φmp

j[ ]: p Sm

LB φ j[ ]( )∈ = =

SmLB ψ j[ ]( ) p Z :∈ j– 1+ p 1–≤ ≤ Wl

LBspan ψmp

j[ ]: p Sm

LB φ j[ ]( )∈ = =

SmI φ j[ ]( ) p Z : 0 p 2

m–j–≤ ≤∈ Vm

Ispan φmp

j[ ]: p Sm

I φ j[ ]( )∈ = =

SmI ψ j[ ]( ) p Z : 0 p 2

m–2 j– 1+≤ ≤∈ Wm

Ispan ψmp

j[ ]: p Sm

LB φ j[ ]( )∈ = =

SmRB φ j[ ]( ) p Z:2

m–j– 1+ p 2

m–1–≤ ≤∈ Vm

RBspan φmp

j[ ]: p Sm

RB φ j[ ]( )∈ = =

SmRB ψ j[ ]( ) p Z:2

m–2 j– 2+ p 2

m–j–≤ ≤∈ Wm

RBspan ψmp

j[ ]: p Sm

RB ψ j[ ]( )∈ = =

Vm VmLB

VmI

VmRB

+ +=

Vm 1+ Wm 1++=

Page 49: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

2.3 Boundary Conditions 31

e con-elongclass

rede-eme

me of

ndary

g thehe ren-patial

al for

. Tollow-

ions,

and we have

(2.73)

To solve the boundary problems, basis functions corresponding to all six classes have to bstructed. The symmetry of the functions allows us to compute only those functions that bto one class of boundary functions and to obtain the functions that belong to the oppositeof boundary functions by reflection and reindexing. These boundary functions have to befined, whereas the interior functions can be taken directly from the computation schdescribed in section 2.2.

Equation (2.72) and (2.73) reveal

(2.74)

From (2.73) and (2.74) we observe an inherit imbalance between these two spaces.

The detailed construction scheme for the boundary functions can be found in [13, 24]. Sothe resulting cubic B-spline scaling functions and wavelets are illustrated in figure 2.10.

The disadvantages of this scheme are that in addition to the mother functions bou

wavelets and boundary scaling functions must be constructed and handled durinrendering process. This decreases the efficiency of the computation scheme and lowers tdering performance. Furthermore, the influence of a coefficient strongly depends on its sposition due to the different shape of the associated basis function.

2.3.5 Gram-Schmidt

A different approach for generating orthonormalized basis functions on the bounded interv

was introduced by Meyer [60] using Daubechies’ scaling functions and waveletsobtain orthonormal basis functions, the classical Gram-Schmidt procedure is applied. Foing [60] the functional space of levelm is defined as:

(2.75)

The support of the 2N-tap Daubechies scaling function is given as

(2.76)

Similar to section 2.3.4 we can compute the set of indices that refer to the inner funct

left boundary indices , and the right boundary indices from (2.76) as:

dim Vm( ) dim VmLB( ) dim Vm

I( ) dim VmRB( )+ +=

j 1–( ) 2m–

j– 1+( ) j 1–( )+ +=

2m–

j 1–+=

dim Wm( ) 2m–

=

2 j 2–

2 j 2–

L2 R( )

Vm0 1,[ ]

f L2 0 1,[ ] : f x( ) h x( ) 0 1,[ ] h Vm∈,=∈ =

supp φmp( ) 2m

p 2m

p 2N 1–+( ),[ ]=

SmI

SmLB

SRB

Page 50: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

32 2. Wavelets

se-

m-

(2.77)

Note that a scaling function only intersects one endpoint if . As a con

quence, the sets of indices are disjoint for all . To obtain an orthonormal basis of

the functions and have to be orthonormalized among the

Figure 2.10: Different basis functions form0=-3, j=4: (a) set of all scaling func-tions, (b) , (c) , (d) , (e) .

0

0.2

0.4

0.6

0.8

1

0.2 0.4 0.6 0.8 1x

-5

-4

-3

-2

-1

0

1

2

0.2 0.4 0.6 0.8 1x

-0.5

0

0.5

1

1.5

0.2 0.4 0.6 0.8 1x

-0.6

-0.4

-0.2

0

0.2

0.4

0.2 0.4 0.6 0.8 1x

-0.6

-0.4

-0.2

0

0.2

0.4

0.2 0.4 0.6 0.8 1x

(a) (b)

(c) (d)

(e)

ψ 3– 3–,4[ ] ψ 3– 2–,

4[ ] ψ 3– 1–,4[ ] ψ 3– 0–,

4[ ]

φmp VLB

SmLB∈ p Z∈ : 2N– 2 p 1–≤ ≤+ =

φmp VI

SmI∈ p Z∈ : 0 p 2

m–2N– 1+≤ ≤ =

φmp VRB

SmRB∈ p Z∈ : 2

m–2N– 2+ p 2

m–1–≤ ≤ =

φmp 2N 1–( ) 2m0–

<

m m0≤ Vm

φmp : p SmLB∈ φmp : p Sm

RB∈

Page 51: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

2.4 Multidimensional Bases 33

ndarytually

idt pro-

the facter dis-neratesto thef the

sed inrbtion

ace

the

on ofis for

lets

func-

n

is

selves. This is done by a Gram-Schmidt procedure that produces new orthonormal boufunctions. The interior functions do not have to be recomputed since they are defined muorthonormal. For the construction of the corresponding wavelets,N-1 basis functions have to begenerated at each endpoint. These functions are also orthogonalized by the Gram-Schmcedure. For the dimensions we have:

(2.78)

This yields again to an imbalance between these two spaces. Besides this imbalance andthat no closed form representation of the basis functions can be provided, there is anothadvantage to this approach. Since for large tap-sizes the Gram-Schmidt procedure gefunctions with very small energies, the matrix which changes the non-orthogonal bases inorthogonal bases becomes ill conditioned. This ill conditioning makes the computation oadapted boundary filter coefficients rather complicated.

2.4 Multidimensional Bases

Basis functions of three variables are needed for the volume rendering applications discusthis thesis. These functions will be used to represent the energy distribution and the abso

within the volume. Given some basis for , a natural basis for the trivariate sp

is the separable tensor product basis

(2.79)

In the following sections we will discuss two different approaches for the construction ofcomplement spaces.

2.4.1 Standard Basis

The idea of representing a volumetric data in terms of wavelets requires the introductithree-dimensional basis functions. One trivial way of constructing a three-dimensional bas

is to take the tensor product functions generated by three one-dimensional wave

(2.80)

In case of orthogonal wavelet functions we obtain an orthogonal set of trivariate wavelet

tions that span . In terms of a multiresolutio

representation of a function , given at an initial resolution th

implies

dim Vm( ) 2m–

N 2–+=

dim Wm( ) 2m–

=

φmp Vm

Vm3

Vm Vm Vm××=

φmpqr3 x( ) φmp x( )φmq y( )φmq z( )=

L2 R3( )

χm1m2m3pqr ψm1p x( )ψm2qy( )ψm3r

z( )=

χm1m2m3pqr m1 m2 m3 p q r, , , , , Z∈ L2 R3( )

f x y z, ,( ) Vm0

3L

2 R3( )⊂∈ m0

Page 52: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

34 2. Wavelets

els

on is

. The

dila-ulta-

ear

(2.81)

where the eight classes of trivariate basis functions can be constructed as:

(2.82)

From (2.81) and (2.82) follows that wavelets from different resolution lev

have to be combined. For the case of volume rendering this constructi

not very useful, because it does not allow for strictly separate different resolution levelsstandard basis functions thus do not allow direct control of the resolution.

2.4.2 Non-Standard Basis

Another construction of trivariate basis functions is the non-standard basis in which thetions of the resulting orthogonal wavelet basis control the parameters sim

neously. In this construction, we can represent a function as a lin

combination of basis functions of distinct resolution levels m

(2.83)

f x y z, ,( ) cm0pqrφm0px( )φm0q

y( )φm0rz( )

p q r, , Z∈∑=

cm0pqrφm0pqr3

x y z, ,( )p q r, , Z∈

∑=

dMm1m2m3pqrtype χMm1m2m3pqr

3 type,x y z, ,( )

p q r, , Z∈∑

type 1=

7

∑m3 m0=

M

∑m2 m0=

M

∑m1 m0=

M

∑=

cMpqrφMpqr3

x y z, ,( )p q r, , Z∈

∑+

φMpqr3

x y z, ,( ) φMp x( )φMq y( )φMr z( )=

χMm1m2m3pqr3 1,

x y z, ,( ) ψm1p x( )φMq y( )φMr z( )=

χMm1m2m3pqr3 2,

x y z, ,( ) φMp x( )ψm2qy( )φMr z( )=

χMm1m2m3pqr3 3,

x y z, ,( ) ψm1p x( )ψm2qy( )φMr z( )=

χMm1m2m3pqr3 4,

x y z, ,( ) φMp x( )φMq y( )ψm3rz( )=

χMm1m2m3pqr3 5,

x y z, ,( ) ψm1p x( )φMq y( )ψm3rz( )=

χMm1m2m3pqr3 6,

x y z, ,( ) φMp x( )ψm2qy( )ψm3r

z( )=

χMm1m2m3pqr3 7,

x y z, ,( ) ψm1p x( )ψm2qy( )ψm3r

z( )=

m1 m2 m3, ,( ) Z3∈

m1 m2 m3, ,

f x y z, ,( ) Vm0

3L

2 R3( )⊂∈

f x y z, ,( ) cm0pqrφm0pqr3

x y z, ,( )p q r, , Z∈

∑=

dmpqrtype ψmpqr

3 type,x y z, ,( )

p q r, , Z∈∑

type 1=

7

∑m m0 1+=

M

∑=

cMpqrφMpqr3

x y z, ,( )p q r, , Z∈

∑+

Page 53: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

2.4 Multidimensional Bases 35

duct

ilar

tion.

by the

Eight single-level trivariate functions can be constructed as:

(2.84)

If the one-dimensional functions constitute an orthogonal basis, the tensor pro

function defines an orthogonal basis for . Following the idea of self-sim

basis functions, this space is generated by the translations of a single func

Furthermore, a complementary functional space can be defined that is spanned

translations of seven functions from the same levelm

Figure 2.11: 3D subband filtering scheme.

φMpqr3 x y z, ,( ) φMp x( )φMq y( )φMr z( )= Vm

3∈

ψmpqr3 1, x y z, ,( ) ψmp x( )φmq y( )φmr z( )=

ψmpqr3 2, x y z, ,( ) φmp x( )ψmq y( )φmr z( )=

ψmpqr3 3, x y z, ,( ) ψmp x( )ψmq y( )φmr z( )=

ψmpqr3 4, x y z, ,( ) φmp x( )φmq y( )ψmr z( )=

ψmpqr3 5, x y z, ,( ) ψmp x( )φmq y( )ψmr z( )=

ψmpqr3 6, x y z, ,( ) φmp x( )ψmq y( )ψmr z( )=

ψmpqr3 7, x y z, ,( ) ψmp x( )ψmq y( )ψmr z( )=

cm0 1 pqr,+( )p Z∈

dm0 1 pqr,+1( )

p Z∈

dm0 1 pqr,+2( )

p Z∈

dm0 1 pqr,+3( )

p Z∈

dm0 1 pqr,+4( )

p Z∈

dm0 1 pqr,+5( )

p Z∈

dm0 1 pqr,+6( )

p Z∈

dm0 1 pqr,+7( )

p Z∈

cm0pqr( )p Z∈ H

G

H

G

↓2x

↓2x

↓2x

↓2x

↓2x

↓2x

↓2x

↓2x

H

G

H

G

↓2y

↓2y

↓2y

↓2y

H

G

H

G

H ↓2z

↓2zG

z-axis y-axis x-axis

Initial data set First level

φmp x( )

φmpqr3 x y z, ,( ) Vm

3

p q r, ,( ) Z3∈

Wm3

Page 54: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

36 2. Wavelets

vels.s solu-have

tail

lter-

wpass

ote

e

e

hat the

rm.

(2.85)

with . As for the one-dimensional this leads to

(2.86)

In this thesis we will use this non-standard basis since it avoids the coupling of different leFurthermore, this basis allows us to compute a coarse solution and to selectively refine thition by adding more and more detail information. For this operation it is necessary toexplicit control over the resolution.

The filtering can be obtained by transforming the initial volumetric data sequentially inx, y, and

z-direction, resulting in lowpass coefficients and seven types of de

coefficients . Figure 2.11 gives a schematic representation of the fi

ing process. Similar to the one-dimensional case described in section 2.1.4 we apply a lo

filter and a bandpass filter to the signal. The filtering is followed by subsampling. N

that if the original data set of level consists ofN x N x N volume elements, every subvolum

of level m consists of x x voxels. Schematically this can b

represented in an octree data structure as shown in figure 2.12. We observe, however, tnumber of coefficients does not increase by the wavelet transform.

Figure 2.12: Resulting data structure of the tree-dimensional wavelet transfo

Wm3

span ψmpqr3 type,

type 1 … 7, , ∈ p q r, ,( ) Z3∈, ( )=

Wm3 1,

Wm3 2,

Wm3 3,

Wm3 4,

Wm3 5,

Wm3 6,

Wm3 7,

+ + + + + +=

ψmpqr3 i, Wm

3 i,∈ i 1 … 7, , ∈,

Vm 1–3

Vm3

Wm3

+=

cmpqr p q r, ,( ) Z3∈

dmpqrtype

p q r, ,( ) Z3∈

H G

m0

N 2m m0–

⁄ N 2m m0–

⁄ N 2m m0–

cm0

x z

y

Wavelet transformm0 m0 1+→

Wavelet transformm0 1+ m0 2+→

dm0 1+6

dm0 1+2

dm0 1+

3

dm0 1+7

dm0 1+1

cm0 1+

dm0 1+5

dm0 1+6

dm0 1+2dm0 1+

3

dm0 1+7

dm0 1+1

dm0 1+5

dm0 2+3

dm0 2+1

dm0 2+2 cm0 2+

dm0 2+5

dm0 1+6

Initial data set First level Second level

Page 55: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

2.5 Wavelet Coefficient Thresholding 37

hing. Thisaveletere,

s that

itten

n glo-

ccursns.

pertyn of

pera-mostdoes

of anricurateimple

r inby a

2.5 Wavelet Coefficient Thresholding

We have mentioned in section 2.1.3 that for sufficiently smooth data, the number of vaniswavelet coefficients rise as the number of vanishing moments of the wavelets increaseinherit approximation property allows for an lossless compression scheme. Beside this, wapplications also provide an other type of approximation, typified by lossy compression. Hthe approximation only considers the largest wavelet coefficients and rejects coefficient

remain under a given threshold . The approximation function can thus be wr

as

(2.87)

with

(2.88)

For the case of orthonormal basis functions this simple threshold filtering corresponds to a

bally optimal approximation in terms of the -norm, such that

(2.89)

where and denote the rejected coefficients, i. e.

(2.90)

As a consequence of (2.89) one can give explicitly the exact approximation error that odue to the filtering operation. This property also holds for multi-dimensional basis functio

Unfortunately, for the case of semiorthogonal and biorthogonal basis functions this profails since these basis functions do not provide orthonormality. Moreover, the determinatiothe most significant coefficients cannot be accomplished by a simple threshold filtering otion. Gross [34] proposes an incremental computation scheme in order to determine thesignificant coefficients and the accurate approximation error. Even though, this conceptnot require an explicit wavelet reconstruction step to compute the energy contributionindividual coefficient, it still suffers from its complexity. For the practical case of volumetdata, however, the simple magnitude-based threshold filtering results in a sufficiently accapproximation compared to the sophisticated incremental concept. Therefore, the sthreshold filtering will be the used compression strategy in the following sections.

The localization properties of the wavelets further justify the definition of a localized filtethe frequency domain or the spatial domain. Thus the local level of detail can be steered

Threscoeff f

f x( ) cMp+ φMp x( ) dmp

+ ψmp x( )p∑

m m0 1+=

M

∑+p

∑=

cMp+ cMp if cMp Threscoeff≥

0 otherwise

= dmp+ dmp if dmp Threscoeff≥

0 otherwise

=

L2

f x( ) f x( )–L22

cp- 2

dmp- 2

p∑

m m0 1+=

M

∑+p∑=

cMp-

dmp-

cMp- cMp if cMp Threscoeff<

0 otherwise

= dmp- dmp if dmp Threscoeff<

0 otherwise

=

Page 56: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

38 2. Wavelets

d by

localized spatial filtering operation. A useful Gaussian-weighted filter has been proposeGross et al. [35].
Page 57: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

3t ofother

riousof thediativecopice flowion ofue toult from

assesin amon

prac-ept ofmina-

hys-ing

the

ering

nergyr cangraph-sotro-equenting

tro-

3GLOBAL ILLUMINATION

The termglobal illuminationdescribes the physically based simulation of light in the contexsynthetic image generation. Central to the theory is that all objects can interact with one anby means of scattered light. When studying global illumination we need to consider vaaspects of the physical-model, the characteristics of the display device, the physiologyeye, and the visual perception. The physical background is based on the concept of ratransfer, which is the study of the interaction of radiant energy with matter at the macrosscale. It combines principles of thermodynamics and geometrical optics to characterize thof radiant energy. The central tenants of radiative transfer are summarized in the equattransfer. This integro-differential equation describes the change of specific radiance dabsorption, emission and scattering and therefore encompasses all phenomena that resthe interaction of infinitesimal particles within a medium.

Global illumination can be regarded as a subfield of transport theory, a field that encompmacroscopic phenomena resulting from the interaction of infinitesimal particles withmedium. Placing global illumination in the larger context of transport theory reveals comground with the older, more developed theories that describe the phenomena. As a moretical matter, many numerical techniques such as Monte Carlo methods and the concimportance have been devised in these related fields and can be exploited for global illution.

The purpose of this chapter is to review the global illumination theory and to introduce the pical and mathematical properties of the equations occurring in global illumination by followloosely [3, 18, 29, 81]. In particular we define a newpure volumetric illumination modeluponwhich our new global illumination rendering approach will be based. Further limitations ofphysical model will bring up the classicalemission-absorptionmodel that will be used in thisdissertation as the underlying model for our image-based and object-based rendapproaches.

First, the physical principles and assumptions that are essential for the theory of radiant etransfer will be examined. Under certain simplifying assumptions the equation of transfebe reduced to more conventional equations that are aimed at the application to computerics. Furthermore, an applicable volume radiosity equation will be derived that assumes ipically distributed emission and scattering and integrates surfaces and volumes. Subssections will intentionally explain specific models, approximations and algorithms for solvthis equation. Since our global and local illumination rendering algorithms, which will be in

39

Page 58: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

40 3. Global Illumination

nsis-

rans-r in the

trans-. It

part

rface

itspointsfor alleangle.nce

duced in this dissertation are based on a variety of physical models we will introduce a cotent notation and motivate each approximation.

3.1 Physical Principles

This section gives the underlying physical principles of light transport and introduces the tport theory model. We also establish a precise and consistent terminology to be used latethesis, which is relevant to the exposition of volume rendering.

3.1.1 Radiometric Concepts

Radiometry generally targets the problem of the physical measurement of radiant energyfer. The relevant quantity to describe radiant energy transfer is the radiancedescribes the amount of energy at any pointx traveling in the directionn, per unit time, per unitarea perpendicular ton, per unit solid angle. For obvious reasons it is the physical counter

to the physiological concept of intensity or brightness. The energy radiated from a su

element into an element of solid angle in directionn during the time interval is givenas

(3.1)

In (3.1) and figure 3.1 the angle denotes the azimuth angle betweenn and the normal

N ondaand describes the angle made by the projection ofn onto the tangent planeatx with the tangent vectorT as it is illustrated in figure 3.1. The radiance is measured in unof Watts per meter squared per unit solid angle per second. The radiance is defined for allon a given surface in any direction. For rendering purposes, has to be computedpoints being focussed onto the image plane withn pointing towards the camera. It should bnoted that the radiance does not attenuate with distance since it is defined per unit solidHence, with any two points and in space that are visible from each other, the radiaL

Figure 3.1: Radiance atx in directionn.

L x n,( )

δ3E

da dω dt

δ3E L x n,( ) θcos da dω dt=

θ

da

x

nN

φ T

Projection

θ 0 π,[ ]∈φ 0 2π,[ ]∈

L x n,( )

x x'

Page 59: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

3.1 Physical Principles 41

eived

area.er the

l illu-ordergy byer andassesweenas

untstcatter-

ove

that leaves one point in the direction of the second point equals the radiance that is rec

by the second point from the direction of the first.

(3.2)

From (3.1) we further observe that thepower(energy per unit time) radiated from in the

solid angle can be computed as

(3.3)

A quantity useful for describing extended light sources is theradiosityor radiant exitance .

It defines the total radiation leaving a surface element around a given point per unitConsequently, the radiosity can be computed from the radiance by integration of (3.3) ov

upper hemisphere divided by . We have

(3.4)

In the case of an ideal diffuse surface, radiance is a function of position only

(3.5)

The equations above only consider radiating surfaces. However, for the purpose of globamination simulation in volumetric environments, the calculations have to be extended into count for radiating and absorbing volumes. We therefore turn to characterize the enersmall, discrete (light) particles. These particles are supposed not to interact with each othmove with the same speed. In this context, we observe that if a stream of particles pthrough material, particles are removed from the flow. In general, we can distinguish beteffects that may cause this loss.Absorptionconverts the radiation into some other form, such

thermal motion of the medium. An absorption coefficient can be defined that cofor this effect. The second effect that removes energy isscattering. It describes the process thachanges the direction of travel of the particle. The corresponding term is denoted as the s

ing coefficient . Scattering is assumed to beelastic, if the energy of the particle orspeed of travel do not change by scattering. The totalextinction coefficientcharacterizes thegeneral loss of energy, leading to

(3.6)

For pragmatic reasons we will usually deal with the isotropic case, which allows us to remthe directional dependencyn. Thus, the extinction coefficient can be written as .

Lin

L x n,( ) Lin x' n',( )=

da

δ2P L x n,( ) θcos da dω=

B

da

Ω+da

B x( ) L x n,( ) θcos dωΩ+∫=

B x( ) L x( ) θcos dωΩ+∫=

L x( ) θ φsincos θd φd

0

∫0

π

∫=

L x( )π=

αa x n,( )

αs x n,( )

α αa αs+=

α x( )

Page 60: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

42 3. Global Illumination

as

ts like

be

ction

onalgure

In addition to the extinction of energy we also have to consideremission. Emission denotes theprocess that injects new particles at a given pointx into the system in the directionn. The cor-respondingemission term can be broken down into athermal part or source term

and anscattering part . We finally have

(3.7)

The introduction of thescattering phase function allows us to take account for theangle dependence of scattering. It describes the directional probability distribution atx for scat-tering from into the directionn. It can be assumed that the phase function is normalized

(3.8)

Thus, a medium with constant phase function satisfies

(3.9)

In contrast to the isotropic scattering phase functions, anisotropic functions describe effecsmoke, dust, rain, or fog. The most common anisotropic models encompass

• Raleigh Scattering: This function is used when the size of the particles found to

smaller than the wavelength of light, e.g. , wherer gives the size of

the particle and denotes the wavelength of the light. The Raleigh scattering funis defined as

(3.10)

The Raleigh function is depicted in figure 3.2 (a). The complete three-dimensifunction is defined by rotating this curve around the central axis as illustrated in fi3.2 (b).

Figure 3.2: Raleigh scattering: (a) phase function, (b) surface of revolution.

χ x n,( )

χt x n,( ) χs x n,( )

χ χt χs+=

ϕ x n′ n, ,( )

n′

14π------ ϕ x n′ n, ,( ) ω'd

Ω∫ 1=

ϕ x n′ n, ,( ) 1≡

r λ orrλ--- 0.05<<

λ

ϕ x n′ n, ,( )34--- 1 n′ n⋅( )2

+( )=

-1.6

0.8

-0.8

1.6

n′

nx

(a) (b)

n

n′ϕ x n′ n, ,( )

Page 61: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

3.1 Physical Principles 43

izearse

ngreen-

ticu-n.

, 29].

ing inover

• Mie scattering: This model is used if the wavelength of the light is comparable to sof the particle. The expensive Mie scattering function can be approximated for spdensities by thehazy Mie function

(3.11)

whereas, themurky Mie function approximates dense particle systems by

(3.12)

Both functions are illustrated in figure 3.3.l

• Henyey-Greenstein function: This function is used to approximate various scatterieffects. It can be also seen as a approximation to the Mie function. The Henyey-Gstein function essentially represents an ellipse with eccentricitye and one focus at theorigin. The function is defined as

(3.13)

The functional courses for various eccentricities are given in figure 3.4. Note in parlar that for , the Henyey-Greenstein function equals a uniform phase functio

Further descriptions of phase functions and their physical background can be found in [9

These considerations permit to quantify the total amount of radiant energy due to scatterdirectionn. The total energy can be computed by the integration of the weighted radiancesall possible incident directions

(3.14)

Figure 3.3: Mie function: (a) hazy Mie function, (b) murky Mie function.

ϕ x n′ n, ,( ) 1 91 n′ n⋅( )+

2---------------------------

8+=

ϕ x n′ n, ,( ) 1 501 n′ n⋅( )+

2---------------------------

32+=

3

-3

8

ϕ x n′ n, ,( )

n′

nx

6

-6

40

ϕ x n′ n, ,( )

n′

nx

(a) (b)

ϕ x n′ n, ,( ) 1 e2–1 e2 2e n′ n⋅( )–+( )3 2/

--------------------------------------------------------=

e 0=

n′

χs x n,( ) 14π------ L x n′,( )ϕ x n′ n, ,( )αs x n,( ) ω'd

Ω∫=

Page 62: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

44 3. Global Illumination

, theas the

resultinter-con-

It is important to note that by definition the extinction coefficient denotes a factor whereasemission term represents energy. Also, the emission term can be considered

volumetric extension of the radiance , which is defined on a surface.

3.1.2 Transport Theory

The definitions in section 3.1.1 allow one to describe all macroscopic phenomena thatfrom the interaction of particles within a medium. Since our intension was to describe theaction of light with participating media, we will use these components in order to obtain asistent formulation of the energy transfer.

Figure 3.4: Henyey-Greenstein scattering function:(a)e=-0.6, (b)e=0.6 (c)e=-0.2 (d)e= 0.2.

Figure 3.5: Geometry of volume interactions.

10

-10

-80n x

10

-10

80x

0.8

-0.8

1.8

n′

x-1.8

n′

n x

(a) (b)

(c) (d)

0.8

-0.8

ϕ x n′ n, ,( )

ϕ x n′ n, ,( )

n′ n′

n

ϕ x n′ n, ,( )

n

ϕ x n′ n, ,( )

χ x n,( )L x n,( )

dω da

dx

L x n,( )

n

L x dx+ n,( )x

n

Page 63: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

3.1 Physical Principles 45

pre-d the

ateden as

pres-und-ason,

all

ur-

cetered

com-

tion

We start with a cylindrical volume element as shown in figure 3.5. Since energy has to beserved, the difference between the amount of radiance emerging at position anamount of incident radiance atx must be equal to the difference between the radiance creby emission and the energy removed by absorption. This balance of energy can be writt

(3.15)

By introduction of a shift-vector and since

(3.16)

we obtain from (3.7) and (3.15) an integro-differential equation that describes theequation oftransfer

(3.17)

Equation (3.17) gives a first-order differential equation in the spatial variables, due to theence of the gradient operator. Thus, the equation of transfer is only valid away from the boary surfaces since the constant terms of integration are not specified by (3.17). For this reboundary conditions have to be introduced.

Explicit boundary conditions: The simplest case refers to explicit boundary conditions forpoints on the boundary surface :

(3.18)

Here, the surface emission functionE gives the energy that is radiated from the boundary sface into the volume.

Implicit boundary conditions:These conditions require the definition of an additional surfascattering kernel that counts for the relative density of particles that are scat

from direction into the direction . The radiance at the boundary surface can thus beputed as the weighted integral of the received radiance.

(3.19)

Hybrid boundary conditions: The boundary conditions can also be expressed as a combinaof explicit and implicit conditions, such that

(3.20)

Under vacuum conditions this equation reduces to therendering equation[45]. For the generalcase, however, (3.20) serves as a general boundary condition.

x dx+

L x n,( ) L x dx+ n,( )–[ ]da dω χ x n,( ) α x n,( )L x n,( )–[ ]ds da dω=

dx n ds=

limds 0→L x n,( ) L x n ds+ n,( )–

ds------------------------------------------------------------ nx

∂L x n,( )∂x

--------------------- ny∂L x n,( )

∂y--------------------- nz

∂L x n,( )∂z

---------------------+ +=

n L∇⋅( ) x n,( )=

n L∇⋅ χ αL–=

χt 14π------ L x n′,( )ϕ x n′ n, ,( )αs x n,( ) ω'd

Ω∫ αa αs

+( )L–+=

∂V

L x0 n,( ) E x0 n,( )= for x0 ∂V∈ n Ω+∈,

k x n' n, ,( )n' n

L x0 n,( ) k x0 n' n, ,( )L x0 n',( ) ω'd

Ω+∫=

L x0 n,( ) E x0 n,( ) k x0 n' n, ,( )L x0 n',( ) ω'd

Ω+∫+=

Page 64: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

46 3. Global Illumination

itionalble fory untilong a

nt

an be

ormal

ated

tons

ution.

From the representation of the equation of transfer as an integro-differential term and addboundary conditions, we can derive a more convenient pure integral equation that is feasivolume rendering. This representation can be obtained by integration of (3.17) along a raa boundary point is reached. Note that the operator is the directional derivative al

ray , withp being some arbitrary reference point. From (3.17) follows

(3.21)

For an arbitrarily chosen reference pointp and by assuming an isotropic extinction coefficie, we can simplify notations by introducing theoptical depth between two points

and as

(3.22)

Since (3.21) has the integrating factor one can obtain

(3.23)

If the point is chosen to lie on the boundary surface and since the optical depth c

decomposed as

(3.24)

expression (3.23) can be divided by to achieve

(3.25)

For the case of , the received radiosity at a given pointx on the projection plane from

directionn is determined as

(3.26)

This term allows us to relate the equation of transfer to a ray casting process. Finally, this fsolution reveals that the received radiance at a given pointx from a directionn can be computedas the sum of photons emitted from all points along the line segment , attenu

by the optical depth of the intervening material, plus an attenuated contribution from phoentering the bounding surface. Figure (3.6) illustrates this situation.

It is noteworthy that in general the emission term will containL and itself; consequentlythe transport equation turns out to be an integral equation, rather than being an explicit sol

n L∇⋅x p sn+=

∂∂s-----L x n,( ) χ x n,( ) α x n,( )L x n,( )–=

α A s1 s2,( )

x1 p s1n+= x2 p s2n+=

A s1 s2,( ) α p sn+( ) sd

s1

s2

∫=

eA s0 s,( )

L x n,( )eA s0 s,( )

L x0 n,( )– χ p s'n+ n,( )eA s0 s',( )

s'ds0

s

∫=

x0 ∂V

A s0 s,( ) A s0 s',( ) A s' s,( )+=

eA s0 s,( )

L x n,( ) L x0 n,( )eA s0 s,( )–

χ p s'n+ n,( )e A s' s,( )–s'd

s0

s

∫+=

x0 p=

L x n,( ) L x0 n,( )eA s0 s,( )–

χ x0 s'n+ n,( )e A s' s,( )–s'd

0

s

∫+=

x' x0 s'n+=

χ χ

Page 65: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

3.2 Volume Radiosity Equation 47

at isfind

ncor-emis-

de-

as a

3.2 Volume Radiosity Equation

Following the primary aim of this chapter, namely to derive a mathematical expression thamenable to compute the problem of global illumination by a digital computer, we need toa solution that deals with the complexity of the transport equation. Therefore, we have to iporate idealized emission and scattering models. For the case of isotropically distributedsion and scattering, the expression (3.25) simplifies to

(3.27)

It follows immediately from (3.7) and (3.14) that the isotropic emission coefficient is inpendent from the directionn and can be expressed by

(3.28)

From substituting equation (3.27) into (3.28) and rewriting the integrals over andsingle integral over volume, using

(3.29)

we have an integral equation for

(3.30)

Figure 3.6: Relevant parameters for the radiance computation.

px

x0n

∂V

s

Ω+

V

x'

L x n,( ) L x0 n,( )eA s0 s,( )–

χ p s'n+( )e A s' s,( )–s'd

s0

s

∫+=

χ

χ x( ) χt x( ) χs x( )+=

χt x( ) 14π------αs x( ) L x n′,( ) ω'd

Ω∫+=

s'd n'd

s'd dω'1

x x–2

-----------------dV'=

χ x( )

χ x( ) χt x( ) 14π------αs x( ) L x0' n',( )e

A s0' s,( )–ω'd

Ω∫+=

14π------αs x( ) χ x'( )

x x'–2

-------------------eA s' s,( )– x'd

V∫+

Page 66: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

48 3. Global Illumination

n

both

llow-uilib-duce

ecastwings-

ecificctivityt fol-

dary

case

This volume radiosity equationallows us to formalize the solution of the energy distributiowithin a bounded volume. This type of equation is known as aFredholm integral equation ofthe second kind. Note that the intersection point on the boundary surface depends on

the position in the volumex and the directionn as it is depicted in figure 3.7.

3.3 Solution Methods

When solving (3.30) several approximation and solution methods can be applied. In the foing sections we will introduce common techniques for the computation of the energy eqrium. The following three chapters of this thesis will adopt these methods in order to introour new approximation and solution techniques.

3.3.1 Zonal Method

In order to obtain a computation method of the volume radiosity equation (3.30), we must rthe problems in terms of finite-dimensional processes and discrete quantities. FolloRushmeier and Torrance [72] thezonal methodcan be obtained by extending the so-called clasical radiosity for surfaces. Radiosity is built on piecewise constant approximations of spintensities. Furthermore, all surfaces are assumed to be diffuse reflecting, since the reflefunction is directional independent. In the context of the surface scattering kernel ilows that the surface scattering kernel can be given as

(3.31)

Where denotes the directional vector for of the incident intensity. And the boun

condition (3.20) can be rewritten as

(3.32)

By replacing the boundary condition from (3.30) with (3.31) and (3.32), we obtain for theof a surface pointx

Figure 3.7: Volume radiosity setup.

x0'

x0'n'

∂V

Ω

xx'

V

ρ x( )

k x0 n' n, ,( ) k x0 n',( ) 1π---ρ x0( ) θi( )cos= =

n' φi θi,( )

L x0( ) E x0( ) 1π---ρ x0( ) θi( )L x0( )cos ω for x0 ∂V∈d

Ω+∫+=

Page 67: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

3.3 Solution Methods 49

utioned in

and

triza-

,

eaves

.

the

(3.33)

Equation (3.33) counts for three energy contributions. Namely the self-emission, contribof the visible areas of the boundary surface, and the volume emission. This is illustratfigure 3.8.

In applying (3.30) to sufficiently small volume elements with constant emission

(3.33) to sufficiently small surface patches with constant radiance and a reparame

tion [72], a set of linear equations can be derived

(3.34)

These equations introduce fourexchange factors F. In the presence of a participating mediumdescribes the fraction of energy leaving a patch that arrives at . Thesurface-to-sur-

face exchange factor is defined as

(3.35)

where denotes the area of patch . Referring to (3.1), we have that the radiance l

from point in direction and impinges on point from direction

Specifically, this definition differs from a conventional form factor since it incorporates

Figure 3.8: Energy contributions for a boundary element.

L x( ) E x( ) 1π---ρ x( ) θi( )e

A s0' s,( )–L x0'( )cos ωd

Ω+∫+=

1π---ρ x( )

θi( )cos

x x'–2

-------------------eA s' s,( )– χ x'( ) x'd

V∫+

∂V

x0'

x

N

∂V

s s0'–

Ω+ Vx'

θi

N'θ'

Vi χVix'( )

Ai LAi

LAiEAi

ρAiFAi Aj

LAjj

∑ FAiV jχV j

j∑+

+=

χViχVi

t αVi

sFVi Aj

LAjj

∑ FViV jχV j

j∑+

+=

FAi AjAj Ai

FAi Aj

1π Ai------------

θ'( ) θi( )coscos

x x'–2

------------------------------------eA s' s,( )– x'd xd

Aj

∫Ai

∫=

Ai Ai

x' Aj∈ φ' θ',( ) x Ai∈ φi θi,( )

Page 68: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

50 3. Global Illumination

inner

given

on we

eralfactors

-to-

transmittance . Note that the outer integral in (3.35) results from averaging the

area to point contribution over the receiving patch area .

The fraction of energy scattered or emitted by volume reaching the surface patch is

by the surface-to-volume exchange factor:

(3.36)

In an analogous manner thevolume-to-volume exchange factor is defined as

(3.37)

and thevolume-to-surface form factor can be expressed as

(3.38)

Figure 3.9 illustrates the different energy exchange setups.

Since the zonal method can be seen as a classical solution method for global illuminatiwill compare our new approach with this technique in section 4.6.1.

Due to the definition of the exchange factors, it is difficult to obtain a closed form for the gencase. For special setups, however, formal solutions for the surface-to-surface exchangecan be given [43, 76].

Figure 3.9: Geometry of light interchange, (a) surface-to-surface, (b) volumesurface, (c) volume-to-volume.

eA s' s,( )–

Ai

V j Ai

FAiV j

1π Ai------------

θi( )cos

x x'–2

-------------------eA s' s,( )– x'd xd

V j

∫Ai

∫=

FViV j

14π Vi--------------- 1

x x'–2

-------------------eA s' s,( )– x'd xd

V j

∫Vi

∫=

FVi Aj

14π Vi--------------- θ'( )cos

x x'–2

-------------------eA s' s,( )– x'd xd

Aj

∫Vi

∫=

θi

θ'

Ai

Aj

da

da'

θ'Aj

da'

Vi

dVi

Vi

dVi

V j

dV'

(a) (b) (c)

Vi

N

N

N

Page 69: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

3.3 Solution Methods 51

in a

The

ll

will

nission

er.

Here we give solutions for two distinct setups. These terms are given here for later use.

The first term gives the analytic solution for the case of two identical parallel rectangles

vacuum situation as depicted in figure 3.10 (a).

(3.39)

The second form factor is given in closed form for the setup illustrated in figure 3.10 (b).form factor for two finite rectangles with one common edge at right angles is given as

(3.40)

3.3.2 Formal Solution of the Pure Volumetric Model

If we define a vanishing reflectivity function ( ) and zero-emission ( ) for a

, the boundary surfaces do not introduce any energy. In the following sections we

denote this model as thepure volumetric model. As we will see in chapter 4, this new model cabe adapted to an efficient computation scheme that incorporates volumetric scattering, em

Figure 3.10: Geometry for exchange factor computations:(a) identical parallel directly opposed rectangles,(b) two finite rectangles of same length at right angles to each oth

b

Ai

Xac---=

Ybc---=

Aj

a

c

b

a

c

Ai

Aj

90°

Hac---=

Wbc---=

(a) (b)

FAi Aj

2πXY----------- 1 X

2+( ) 1 Y

2+( )

1 X2

Y2

+ +-----------------------------------------

X 1 Y2

+X

1 Y2

+-------------------

atan+ln

=

Y 1 X2

+Y

1 X2

+--------------------

atan X X( )atan Y Y( )atan––

FAi Aj

1πW--------- W( ) 1

W-----

atan H1H----

atan H2

W2

+1

H2

W2

+-------------------------

atan–+

=

14---

1 W2

+( ) 1 H2

+( ) W2

1 W2

H2

+ +( )1 W

2+( ) H

2W

2+( )

------------------------------------------------ W2

H2

1 W2

H2

+ +( )1 H

2+( ) H

2W

2+( )

------------------------------------------------ H2

1 W2

H2

+ +--------------------------------------------------------------------------------------------------------------------------------------------------------------------

ln

ρ x0( ) 0≡ E x0( ) 0≡

x0 ∂V∈

Page 70: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

52 3. Global Illumination

rict the

erentde thermally

and absorption effects. In order to achieve a mathematical representation, we can restvolume radiosity equation (3.30) to a newpure volume emission term. The intensity at a point

is given as the solution of

(3.41)

This expression can be rewritten in terms of a linear equation as

(3.42)

where the volume-weighted average emission and source terms are

(3.43)

By introducing a kernel function

(3.44)

we can rewrite (3.41) as

(3.45)

To keep the notation simpler, we have from (3.45) in operator notation

(3.46)

where denotes thekernel integral operator.

As (3.30), this type of equation is a Fredholm integral equation of the second kind. An inhfeature of this equation is that the unknown volume emission appears outside and insiintegral. It can be shown that since has a norm less than one, this equation can be foexpressed as aNeumann series:

(3.47)

x V∈

χ x( ) χt x( ) 14π------αs x( ) χ x'( )

x x'–2

-------------------eA s' s,( )– x'd

V∫+=

χViχVi

t αVi

sFViV j

χV jj

∑+=

χVi

1Vi-------- χ x( ) xd

x Vi∈∫=

χVi

t 1Vi-------- χt x( ) xd

x Vi∈∫=

κ x x',( ) 14π------αs x( ) 1

x x'–2

-------------------eA s' s,( )–

=

χ x( ) χt x( ) κ x x',( ) χ x'( )⋅ x'dV∫+=

χ χtKχ+=

K

K

χ I K–( ) 1– χt=

Kiχt

i 0=

∑=

χtKχt

K2χt …+ + +=

Page 71: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

3.3 Solution Methods 53

ds to

ches

eingl-tion

tion, aribein an

-

rrect

ission

nflu-

the, its

From a physical point of view, each application of the kernel integral operator correspon

an additional volume interaction. Thus, the term accounts for paths in which light rea

the eye viai bounces. For rendering purposes, has to be computed for all points bfocussed onto the image plane withn pointing towards the camera. As we will see in the folowing chapter, this observation will be the underlying concept for our new global illuminacomputation scheme.

3.3.3 Finite Element Formulation of the Pure Volumetric Model

Goral et al. [31] introduced thefinite-elementsolution orprojection methodsto global illumi-nation. The method of finite-elements has been used before to simulate thermal radiaproblem similar to global illumination. Both problems lead to integral equations that descthe energy equilibrium. Generally spoken, the finite-element procedure allows us to obtaapproximate solution of continuous integral equations.

To obtain a finite-element solution, we have to introduce a finite set ofshape functionsor basisfunctions (p=1,...,n) and associatednodal values . As in section 3.3.2, boundary sur

faces will be neglected here. In contrast to the infinite dimensional solution space of the cofunction we project the solution into the finite-dimensional functional subspaceV that is

spanned by the shape functions. Therefore, the approximation of the pure volume emterm can be defined in terms of a linear combination of the shape functions, such that

(3.48)

It is useful to consider interpolating shape functions with

(3.49)

This property ensures an exact solution at the sample points such that

(3.50)

To measure the quality of approximation we introduce a residual function

(3.51)

Ideally this residual should be zero or at least minimized in some sense. Two factors will ience the computed results for the finite element formulation:

1. The norm that is used for computing the magnitude of the residual .

2. The functional space in which we compute the solution.

A very useful approach for the finite element formulation of the pure volumetric model isGalerkin method. Since our global illumination algorithm takes advantage of this methodconcepts will be explained in the following section.

Ki

L x n,( )

Np x( ) χVp

χχ

χ x( ) χVpNp x( )

p 1=

n

∑=

Np xq( ) δpq=

xq

χ xq( ) χ xq( )=

Rχ χ χt– K χ–=

Page 72: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

54 3. Global Illumination

re-

basisof the

3.3.4 Galerkin Radiosity

For the case of the classical Garlerkin radiosity we require:

(3.52)

This expression is equivalent to

• The residual function is perpendicular to the subspaceV

• The approximate solution differs from only in ways that cannot be repsented inV

• The projected residual equals zero

Inserting (3.51) and (3.48) into (3.52) results in a linear system of equations

(3.53)

The solution of this general Galerkin representation is depending on the choice of thefunction. In case of constant basis functions, such as the 3D tensor-product extensionsHaar scaling functions, defined in (2.9) we have

(3.54)

To this end, (3.54) can be substituted into (3.53), such that

(3.55)

And we finally obtain

(3.56)

In particular this term can be expressed as a matrix equation

Rχ Np,⟨ ⟩ 0 for all p 1 … n, , ∈=

χ x( ) χ x( )

χ Np,⟨ ⟩ χtNp,⟨ ⟩– K χ Np,⟨ ⟩– 0= ⇔

χVqNq

q 1=

n

∑ Np,⟨ ⟩ χtNp,⟨ ⟩– κ ⋅ x',( ) χVq

Nq x'( )q 1=

n

∑⋅ x'dV∫ Np,⟨ ⟩– 0= ⇔

χVqNq Np,⟨ ⟩

q 1=

n

∑ χtNp,⟨ ⟩– χVq

κ ⋅ x',( ) Nq x'( )⋅ x'dV∫ Np,⟨ ⟩

q 1=

n

∑– 0 ⇔=

χVqNq Np,⟨ ⟩ κ ⋅ x',( ) Nq x'( )⋅ x'd

V∫ Np,⟨ ⟩–

q 1=

n

∑ χtNp,⟨ ⟩=

Nq Np,⟨ ⟩ δpq=

f x( )Np x( ) xdV∫ f x( ) xd

Vp

∫=

Vp 1=

χVqδpq κ x x',( ) x'd xd

Vq

∫Vp

∫–

q 1=

n

∑ χt x( ) xdVp

∫=

χVqδpq αVp

sFVqVp

–( )q 1=

n

∑ χVp

t=

Page 73: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

3.3 Solution Methods 55

ntext

effi-

.58)two

acobi

oach

h-

therf the

allfrom

ment

n that

(3.57)

whereC denotes the emission vector and describes the given source vector. In the coof finite elements, the matrixM is denoted asstiffness matrixor mass matrix[41]. In (3.57) the

matrix elements and vector elements and are given as

(3.58)

From (3.57) we can derive different characteristics of the matrixM

• Size: the square matrixM containsn x n elements, wheren is the number of volumeelements.

• Symmetry: M does not feature symmetry in the general case of arbitrary scatting cocients .

• Sparsity: for most data sets the system will be fairly dense. Due to the definition (3the matrix element vanishes only if the scatting coefficient equals zero or thevoxels and are invisible to each other.

• Diagonal dominance: in any physically realistic sceneM is diagonal dominant [73].This ensures that particular iterative solution methods such as Gauss-Seidel or Jwill converge.

3.3.5 Iterative Methods

In order to compute the emission values from the given intensities , a naive appr

could be to compute the inverse ofM by using the Gaussian elimination technique. This tec

nique, however, exhibits a computational complexity of . Thus, it becomes raimpractical even for small volume data sets. Therefore, instead of an explicit inversion omatrix we have to apply relaxation methods that iteratively compute the solution [30].

TheJacobi iterationstarts with an initial guess for the solution of all zeros and updatesnext generation emission coefficients from the last generation. Consequently, we have

(3.57) for the ith generation

(3.59)

Note that the coefficient measures for all interactions that occur inside the volume ele

. For the case of classical radiosity, however, this coefficient is set to one, for the reaso

surface patches are not allowed for interacting with themselves.

MC Ct=

Ct

mpq cp cpt

mpq δpq αVp

sFVqVp

–=

cq χVq=

cqt χVq

t=

αVp

s

mpqVp Vq

χVpχVp

t

O n3( )

C

mppcpi( )

cpt

mpqcqi 1–( )

q 1=

q p≠

n

∑–=

mpp

Vp

Page 74: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

56 3. Global Illumination

in

sities

lcu-

antlyhms,

shold.is

in thes-eu-

tion,

In contrast to the Jacobi iteration, theGauss-Seidelmethod updates the elements in place with

each iteration. This means that when the algorithm computes all newly updated inten

with , the estimates of the last iteration step with are used in the ca

lation. So, the new generation is obtained from the (i-1)th generation as

(3.60)

Even though the Gauss-Seidel method is a slight variation of the Jacobi method, it significimproves the speed for the case of global illumination computation [18]. For both algorit

the residual after theith cycle is defined as

(3.61)

Generally, the iteration terminates if some norm of the residual is less than a given threWe can interpret (3.59) and (3.60) in physical terms: the emission of the volume element

the sum of the source term and the emission gathered from all other volume elementsscene. Thus, each iteration stepi corresponds to an additional volume interaction. This is illutrated in figure 3.11. A close look at the Jacobi iteration also reveals its similarity to the N

mann series (3.47), since we have that theith cycle of the Jacobi iteration equals theith partialsum.

The idea ofoverrelaxationextends the methods described above. For the case of overrelaxa

ith iteration step

(3.62)

Figure 3.11: Single iteration step of relaxation method.

cpi( )

cqi( )

q p< cri 1–( )

r p>

mppcpi( )

cpt

mpqcqi( )

q 1=

p 1–

∑– mpqcqi 1–( )

q p 1+=

n

∑–=

R i( )

R i( ) Ct MC i( )–=

Vp

Vp

Vq

mpp

mpq

cpi( ) cp

i 1–( ) ∆cpi 1–( )+=

Page 75: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

3.4 Hierarchical Solution 57

ce it

ation.auss-

fernel

puta-ents,

andns ofroxi-ctions

TheirAt thepon totionst eachhis is

ren’sway.

eth-ierar-

eviousntationiated, how-

ailedber offerentcha-eletsamilyparse

is replaced by

(3.63)

where is called the relaxation parameter. Thus, the vector is overcorrected sin

anticipates the need to subtract more in later iterations and subtract it in the current iterThe method is only convergent for and may give faster convergence than the GSeidel method.

3.4 Hierarchical Solution

Beside the problem of the inversion of a large matrixM, is the problem of the computation othe matrix element. The computation of the solution can be very expensive since the kfunctions (3.39) have to be evaluated individually. In order to reduce the number of comtions for setting up the matrix elements we have to cut down the number of volume elemi.e. the number of shape functions .

Hierarchical techniques were first developed for applications in astrophysics. Appel [2],Greengard [33] described efficient solutions of the N-body-problem. It concerns interactioclusters of bodies by gravitational and electrostatic forces. The N-body simulation appmates the influence of a number of elements as a single, composite element if the interatake place at a significant distance.

Hanrahan and Salzman adapted these concepts for the case of global illumination [40].algorithm uses a hierarchical set of basis functions for the sending and receiving patches.coarsest level, there is a single basis function on each surface patch. An oracle is relied upredict which functions have to be refined. After each gathering operation, contribureceived at different hierarchical levels of a given object must be combined to ensure thaelement within the representation possesses an accurate view of its total radiosity. Taccomplished by a bi-directional traversal of the hierarchical structure (push-pull-procedure)that pushes radiosity received at higher levels down to their children, adding it to the childradiosity, then pulls the children’s radiosity up the hierarchy, averaging them along the

Theoretically this approach reduces the complexity for the formfactor computation from

to .

Gortler et al. [32] introduced the wavelets in order to generalize the hierarchical radiosity mods. In contrast to the box-approximations used by Hanrahan et al., wavelets at a given hchy level encode the difference between the representation at the current level and the prlevel. Their method encodes the correction that must be added to the higher-level represeof a function. The numerical integration of the kernel is then only performed for the assocpairs of basis functions that are determined to be significant by the oracle. This approachever, is limited to surfaces and does not consider participating media.

Our solution is inspired by a multigridding technique. This representation permits a detdescription of the data available only when it is necessary and therefore reduces the numinteractions within the volume data. Energy exchanges are then computed between diflevels of the hierarchy. In chapter 4 we will introduce a new wavelet-based clustering menism that allows us to handle volumetric objects and participating media. In practice, wavcan be used like any other shape functions to derive a finite element approach. The full fof wavelet bases provides options for continuity and vanishing moments, leading to a s

cpi( ) cp

i 1–( ) ωp∆cpi 1–( )+=

ωp C i( )

0 ω 2< <

Np x( )

O n2( )

O n( )

Page 76: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

58 3. Global Illumination

at thecosts

mp-

n

re

laneestric-

ast tod the

sump-total

.

representation of the linear operator. A major drawback of more vanishing moments is thbasis functions have a wider support. Furthermore, higher order continuity leads to higherin evaluating the form factor integrals and developing appropriate oracle functions.

3.5 Emission-Absorption Model

Recalling (3.26), one can observe that the radiance at a point from a directionn equals the

weighted sum of the intensity of backlighting in the directionn, given as and

the contribution of the volume elements along the ray . With a set of assu

tions we arrive at theemission-absorption model[74]. This model has been widely adopted ithe area of volume rendering and is the basis for the rendering strategies in this thesis.

3.5.1 Definition

The four assumptions that are taken in order to achieve a simplified illumination model a

• Only single scattering is considered, i.e. all of the photons reaching the projection pare assumed to have been scattered only once after leaving a light source. This rtion is denoted as thelow-albedo case.

• Absorption between the light source and the scattering event is ignored. In contrthis simplification we will consider the absorption between the scattering event anprojection plane.

• We assume isotropic absorption.

• We do not consider backlighting.

Since we can use the emission term to model the single scattering event, the first two astions allow us to drop the scattering integral from the equation of transfer. Therefore, the

extinction coefficient does not count for the scattering coefficient; that is we haveWith all four assumptions the isotropic transport equation reduces to

(3.64)

with . Reparametrization of (3.64) reveals thevolume rendering equation

[29] which computes the total radiance emanating towardx from the directionn. The termthereby considers an absorbing and emitting medium between the entering point

and the leaving point

(3.65)

x

L x0 n,( )eA s0 s,( )–

x s'n+( )s' s0 s,[ ]∈

α αa=

L x n,( ) χ x0 s'n+( )e A s' s,( )–s'd

0

s

∫=

χ x0 s'n+( )e

α x0 sn+( ) sd

s'

s

∫–

s'd0

s

∫=

x0 x sn+= ∂V∈

xE x sEn+=

xL x sLn+=

L x n,( ) χ x s'n+( )τ sE s',( ) s'd

sE

sL

∫=

Page 77: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

3.5 Emission-Absorption Model 59

ionalm, aslution.

e ren-

d into

s of dis-en

where denotes thetransparency of the medium between and

(3.66)

Since the volume illumination model is now formally expressed as a set of one-dimensintegrals, this equation can be directly used for an image-order volume rendering algorithwe will see in chapter 5. We further note that this integral has no general closed-form so

3.5.2 Partitioning the integral

Breaking up the volume rendering equation (3.65) into smaller pieces makes the volumdering problem easier to compute. We can therefore discretize the ray intol segments ,

,..., with . In particular, by introducing the

notation

(3.67)

for the radiance contribution of the segment , (3.65) and (3.67) can be transforme

(3.68)

Thus, the received energy can be expressed in terms of the intensities and transparenciecrete segments. By setting and the intensity is giv

by the linear term

(3.69)

Finally, by introducing theopacity it reads

τ sE s',( ) xE x'

τ sE s',( ) e

α x sn+( ) sd

sE

s'

∫–

=

s0 s1,[ ]

s1 s2,[ ] sl 1– sl,[ ] sE s0= s1 … sl 1– sl< < < < sL=

L x n k l, , ,( ) χ x s'n+( )τ sk s',( ) s'd

sk

sl

∫=

sk sl,[ ]

L x n,( ) L x n 0 l, , ,( )=

χ x s'n+( )τ sE s',( ) s'd

sE

sL

∫=

χ x s'n+( )τ sE s',( ) s'd

si

si 1+

∫i 0=

l 1–

∑=

τ sE si,( ) χ x s'n+( )τ si s',( ) s'd

si

si 1+

∫i 0=

l 1–

∑=

τ sE si,( )L x n i i 1+, , ,( )i 0=

l 1–

∑=

L j L x n j j 1+, , ,( )= τ j τ sj sj 1+,( )=

L x n,( ) Li τ jj 0=

i 1–

∏i 0=

l 1–

∑=

σk 1 τk–=

Page 78: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

60 3. Global Illumination

Porteres.

e for

dernf theewise

ssed.

(3.70)

Note that for a sufficiently small segment , we can set

(3.71)

Expression (3.70) can also be expressed in terms of two image compositing operators.and Duff [68] introduced theoveroperator, which is used to overlay semitransparent imagGiven pixelsX andY, with color ( ) and opacity ( ) values and theover

operator is defined as:

(3.72)

Consequently, if we define to be a tuple containing both the intensity and opacity valu

the segment , such that

(3.73)

we can rewrite (3.70) as

(3.74)

This formulation is significant, since fast hardware support of this operation exist in mographics workstations. Therefore we will use this approximation for the computation oglobal energy distribution, described in chapter 4. Nevertheless, since it is based on piecconstant functions, it only approximates the correct energy in the general case.

In chapters 4, 5, and 6, explicit solution methods for the energy computations will be discuThese methods are founded on the theoretical results that are described in this chapter.

Chapter 4 will cover the hierarchical solution of the pure volume emission term (3.41)

by a progressive and hardware assisted method.

In chapter 5, an adaptive formulation of the volume rendering equation (3.64)

will be used for the representation of light in a wavelet basis.

L x n,( ) Li 1 σ j–( )j 0=

i 1–

∏i 0=

l 1–

∑=

si si 1+,[ ]

Li χ x in+( ) χi= =

C σ CX σX,[ ] CY σY,[ ]

X over Y CX 1 σX–( )CY+ σXσY,[ ]=

Si

i

Si Li σi,[ ]=

L x n,( ) A s0 sn,( ),[ ] S0 over S1 over …Sl 1–( )…( )=

χ x( ) χt x( ) 14π------αs x( ) χ x'( )

x x'–2

-------------------eA s' s,( )– x'd

V∫+=

L x n,( ) χ x s'n+( )e

α x sn+( ) sd

sE

s'

∫–

s'd

sE

sL

∫=

Page 79: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

3.5 Emission-Absorption Model 61

acity

me

In chapter 6, the energy computations will assume an isotropic medium with constant opα. Thus, the resulting ray intensity function reads

We will move this equation in the context of wavelets and carry out an highly efficient volurendering concept.

L x n,( ) χ x s'n+( )e αs'–s'd

∞–

∫=

Page 80: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

62 3. Global Illumination

Page 81: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

4

ent.axi-d thedering

hessionstrat-enta-

ry byt visu-tiondetail.

ly the

4GLOBAL CUBE ALGORITHM

In this chapter we introduce the notion of theglobal cube algorithm. Its concept and its imple-mentation allow the computation of the energy transfer of light in a volumetric environmUntil now, radiosity techniques are limited to compute the equilibrium of energy for a mmum of a few thousand volume elements due to the complexity of the computations anrequired memory size. The presented new method is accurate, efficient and allows the renof realistic images by evaluating several million volume elements.

In the following we will establish a link between wavelet theory and global illumination. Tuse of wavelet functions gives rise to a more elegant formulation of the pure volume emiterm. The innovative concept of the hardware-assisted global cube leads to two differentegies for the energy computation. This chapter further describes the two different implemtions, and discusses experimental results.

4.1 Rendering Concept

This section discusses the relationship between global illumination and wavelet-theodescribing hierarchical representations of relevant parameters. We will derive an abstracalization pipeline for global illumination that incorporates the wavelet transform, computaof the energy transfer, and rendering. Each component of the pipeline will be discussed in

4.1.1 Hierarchical Representation

Computing the energy distribution within a given scene requires a set of parameters, name

• source term

• scattering function and the

• opacity

optionally, the definition of a

• scattering phase function

gives control over a directional scattering effect.

χt x( )

αs x n,( )

σ x( )

ϕ x n′ n, ,( )

63

Page 82: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

64 4. Global Cube Algorithm

uidis-

repre-

mul-con-

ution.e ini-

tain

ts thatcon-

Starting from a set of source coefficients and opacity coefficients that are given on an eq

tant discrete grid, we define and .

To formalize the representation for emission and absorption, we can derive a continuoussentation of the source term and the opacity by

(4.1)

At this point we can apply the 3D wavelet transform as described in chapter 2 to obtain atiresolution representation of these functions. Since we are interested in direct resolutiontrol, we apply the non-standard decomposition (2.83) to represent different levels of resolThe resulting pyramidal decomposition scheme is illustrated in figure 4.1. Starting from thtial levelm0, we decompose the volume samples up to levelM.

By expressing these two terms as linear combinations of weighted basis function, we ob

(4.2)

Note that since source and opacity functions use the same basis functions, the coefficienresult form the wavelet transform are spatially aligned to each other. Furthermore, we cansider the lowpass approximations

Figure 4.1: 3D wavelet transform to decompose both source and opacitysamples.

cpqrχt

χtxp yq zr, ,( )= cpqr

σ σ xp yq zr, ,( )=

χtx y z, ,( ) cm0pqr

χt

φm0pqr3 x y z, ,( )

pqr∑=

σ x y z, ,( ) cm0pqrσ φm0pqr

3 x y z, ,( )pqr∑=

...cm0pqr cm0 1+ pqr,

dm0 1+ pqr,1

dm0 1+ pqr,7

⋅⋅⋅

cMpqr

dMpqr1

dMpqr7

⋅⋅⋅

Original data set First decomposition level Last decomposition level(coarsest representation)

χtx y z, ,( ) =

dmpqrχt type, ψmpqr

3 type,

p q r Z∈, ,∑

type 1=

7

∑m m0 1+=

M

∑ x y z, ,( ) cMpqrχt

φMpqr3 x y z, ,( )

p q r Z∈, ,∑+

σ x y z, ,( ) =

dmpqrσ type, ψmpqr

3 type,

p q r Z∈, ,∑

type 1=

7

∑m m0 1+=

M

∑ x y z, ,( ) cMpqrσ φMpqr

3 x y z, ,( )p q r Z∈, ,

∑+

Page 83: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

4.1 Rendering Concept 65

ons can

ation

tain

first,

iouslyl. ThisA moren anation

patialacle

ents,e algo-to beand

.

(4.3)

as the average source and opacity functions of clustered objects. Thus, these approximatiact as representatives of a group of neighboring objects in lighting calculations.

The wavelet transform implies that the total number of clusters of the coarsest approxim

levelM equals of the initial number of volume elements. Hence, we rapidly obsmall data sizes if we chooseM to be large.

To obtain an accurate energy equilibrium, one could apply the following naive approach:the energy equilibrium at a coarse resolution could be computed, thenall detail informations areadded. For each new coefficient, the energy distribution is recomputed. Thereby, the prevcomputed energy distributions are used as an initial guess for the next reconstruction levestrategy, however, seems unprofitable since is does not reduce the computational costs.sophisticated algorithm will be described in this thesis. It balances the trade-off betweeaccurate solution, which will result in a visually acceptable image and a coarse approximof a cluster which reduces the computational costs. Our algorithm controls the local srefinement by anoracle. The computation of the energy exchange and the implemented orwill be discussed in detail in the following sections.

If a stable energy distribution is computed and the oracle does not insist on further refinemthe scene is then fully rendered by a ray-caster and finally presented to the user. Since thrithm does not consider any viewpoint-dependent energies, only the ray-caster hasrestarted if the camera position changes. This concept of global illumination computationrendering is summarized in the visualization pipeline illustrated in figure 4.2.

Figure 4.2: Data generation and visualization pipeline for global illumination

χtx y z, ,( ) cMpqr

χt

φMpqr3 x y z, ,( )

pqr∑=

σ x y z, ,( ) cMpqrσ φMpqr

3 x y z, ,( )pqr∑=

1 8⁄( )m0 M–

Solving the system ofequations

Rendering of the result

Modeling of the scene

Generation of voxels

Wavelet decomposition

Generation of the systemof equations

Refinement

Page 84: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

66 4. Global Cube Algorithm

ed ton cal-this

al costierar-

aler-tem.nsis-is nobjects

hemets fors are

recom-

als

4.2 Global Cube - One Value Per Voxel Strategy

For fast and accurate computation of the global illumination, new techniques are requirhandle large data sets. In this section we present a new algorithm for the global illuminatioculations that embeds the form factor computation into a visualization process. Withapproach the amount of memory that is needed for the computation and the computationof the simulation are reduced dramatically. Hardware assisted 3D texture mapping and hchical representations of the scene will be applied to further increase the speed.

4.2.1 Concept

The concept of our global illumination computation scheme is founded on the traditional Gkin radiosity method since it describes the energy distribution in terms of a functional sysThus, we can directly cast the wavelet theory in the context of radiosity. For reasons of cotency, we furthermore use the pure volumetric model as described in section 3.3.2. Thisgeneral restriction of our method, since surfaces can be represented as thin volumetric oin this model.

From (3.55) we see that the direct implementation of the Galerkin radiosity computation scis not practical for large volumetric objects due to the problem of the computational costhe evaluation of the volume-to-volume exchange factors (3.37). Even more seriou

the memory requirements that result from the storage of these exchange factors to avoid

putation. Note that the number of exchange factors that are used during the relaxation equ

where denotes the number of volume elements. Thus, a data set that consists ofn=323 voxels

Figure 4.3: The global cube.

Center of projection x

Viewing direction n

Viewing frustum

Volume element

FViV j

n2

n

Page 85: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

4.2 Global Cube - One Value Per Voxel Strategy 67

cube

. Bothnd the

bu-ation

An ina view-ssion

ered

. In

by a-sup-com-

void

insitieslt we

requires eight Gbyte of memory to store the floating-point exchange factors. Our globalapproach solves these two problems.

As mentioned in section 3.3.5, the Jacobi iteration and the Neumann series are relatedapproaches compute the emission of each volume as the sum of their source energy aamount of energy that is received from its surrounding. Therefore, each iteration stepi allowsthe consideration ofi volume interactions. The process finally converges if the energy distrition is stable. This general concept can be adopted for hardware-assisted global illumincomputation in the following way:Consider a cube centered around the pointx for which the emitted energy shall be computed.global cubedenotes a cube with faces that are subdivided into cells with a fixed orientatiospace. Each of the cube’s faces is used as a projection surface. Therefore we can defineing frustum for each of the six faces, as shown in figure 4.3. Recall from (3.42) that the emi

of the volume element is the sum of the source term and the emission gath

from all other volume elements in the scene, weighted by the scattering coefficient

order to obtain a fast approximation method for the computation of the gathered energyminimal requirement of memory, the projection process is accomplished by the hardwareportedoveroperation as described in section 3.5.2. Thus the projection is determined by aposition of volume-slices in front to back order using (3.74). We obtain

(4.4)

Note that in contrast to (3.74) we multiply the source values by the opacity coefficients to atransparent regions that emit energy.

Figure 4.4 depicts theoveroperation that is applied to different volume slices. As describedthe previous chapter, this operation only gives a rough approximation of the correct intenbut allows computing the projection very fast due to modern hardware support. As a resu

Figure 4.4: Low-albedo volume rendering by application of theover operator.

χVpVp χVp

t

αVp

s

I x( ) χ0σ0 over χ1σ1 over … over χm 1– σm 1–=

I x( ) χ0σ0 χ1σ1 1 σ0–( ) χ2σ2 1 σ0–( ) 1 σ1–( ) … χmσm 1 σ0–( )… 1 σm 1––( )+ + + +=

Center of projection

Viewing frustum

χ0

χ1 σ1,χ2 σ2,

I x( )

Viewing plane(one face of the global cube)

Slicing planes

overover

Page 86: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

68 4. Global Cube Algorithm

ed to

onto

f each

planeergy

xationssary

rations

obtain an intensity value for each pixel on the projection plane. This intensity can be us

compute the emission of the volume element . We can rewrite theith cycle of the Jacobi

iteration in (3.59) as

(4.5)

In this term expresses the projection of the emission of volume element

the volume element . Note that since we are using a cube for the representation o

volume element we have to consider six projection planes. For each individual projectionwe do not allow interreflections, thus we have . In order to obtain the correct en

that is received by the volume element we introduce two correction terms, namely ageo-

metric correctionand ascattering correction. These terms will be explained in the followingparagraphs.

It is noteworthy that the global cube concept basically supports a Gauss-Seidel relascheme. For the practical algorithm, however, the update per voxel, which would be necefor Gauss-Seidel scheme results in a dramatic increase of the texture memory-I/O opeand leads to a loss in performance compared to the Jacobi algorithm.

4.2.2 Geometric Correction

The geometric correction is influenced by two distinct effects

Figure 4.5: Distance correction (2D projection).

χVp Vp

χVp

i( ) χVp

t αsp n,( )

4π-------------------- Pp

χVq

i 1–( )

q 1=

q p≠

n

∑+=

Pp χVq

i 1–( )( ) Vq

Vp

mpp 1=

Vp

Center of projection

Viewing plane

Slicing plane

h

A

s

m

Vq

A Vq'

h

Vp

Global cube

r '

r

Page 87: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

4.2 Global Cube - One Value Per Voxel Strategy 69

r ofcase

thes of

etion

rec-ceiv-the

anu-, e.g.

es notllowsulated inphase, ande ele-

• Distance correction: The distance between points on the slicing plane and the centeprojection has to be corrected. To illustrate this correction, consider the 2Ddepicted in figure 4.5. Since the slicing planes through the volume are parallel toprojection plane, all points on a slicing plane are handled in the same way in termtheir distance to the center of projection. We note that in 3D the covered areaA of thevolume element equals the area covered by the volume element since

(4.6)

Due to the fact that the emission reduces by , wherer denotes the distance from themitting point, we have to apply a correction term for each pixel on the projecplane. This correction term can be computed for each pixel at(position relative to the center of projection) by

(4.7)

• Directional correction: The second correction term addresses the problem of the ditional dependencies between a volume element that “sends” energy and a “reing” volume element as illustrated in figure 4.6. Because we have chosenslicing planes to be parallel to the projection plane, we have to correct this effect mally. We observe that the exchange of energy is proportional to area that is “seen”we have

(4.8)

4.2.3 Scattering Correction

In contrast to the correction terms introduced in section 4.2.2, the scattering correction doadjust for an approximation error that occurs due to our computation scheme. It rather athe consideration of directional scattering events and therefore extends the ability to simrealistic reflectance behaviors. The notion of scattering phase functions introducesection 3.1.1 is in particular useful to describe these effects. Recall that the scatteringfunction depends on the direction of the incident energy, the outgoing directiongiven material properties. For obvious reasons we want to avoid a fully transparent volum

Figure 4.6: Directional correction.

Vq Vq'

Ams----h=

r2

xpixel ypixel zpixel, ,( )

Corrdist xpixel ypixel zpixel, ,( ) 1xpixel

2 ypixel2 zpixel

2+ +( )---------------------------------------------------------=

VqVp

Corrdir sidep sideq,( ) θp sidep sideq,( )( ) θq sidep sideq,( )( )coscos=

Vq

Vp

θq

θp

np

ϕ x n′ n, ,( )

Page 88: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

70 4. Global Cube Algorithm

rre-olid

the

ering

.

e

the

ewingted as

e

ment to emit or reflect energy. Consequently we multiply this scattering function by its cosponding opacity coefficient . We obtain a directional energy distribution over finite sangles at pixel-resolution by

(4.9)

where denotes the viewing direction, perpendicular to the projection planeside. The angle

of the incident energy can be identified by the pixel position . Hence,

scattering effect is controlled by the scattering function , the opacity , and the scatt

phase function that are defined individually for the corresponding volume element

If we furthermore define as the energy-contribution of the volum

element to the intensity of pixel (pixel) on the global cube face (side) we finally obtain for

the projection term

(4.10)

Combining (4.5) and (4.10) we observe that the global-cube scheme of theith iteration step forthe computation of the discrete emission value becomes

(4.11)

This shows that we can approximate the energy of volume element directly from

weighted intensities that are projected from all elements in the scene onto the faces (viplanes) of the global cube and its source value. These pixel intensities that are deno

in equation (4.11) are achieved by the low-albedo volum

rendering algorithm that is based on theoveroperation, described in section 3.5.2.

σ x( )

Corrscat Vp x, pixel ypixel zpixel side, , ,( )ϕ Vp x, pixel ypixel zpixel nside, , ,( )

4π------------------------------------------------------------------------------ αVp

s σVp⋅ ⋅=

nside

xpixel ypixel zpixel, ,( )

αVp

s σVp

ϕ Vp

I χVqsidep pixel,( )→( )

Vq

Pp χVq( ) I χVq

sidep pixel,( )→( )Corrdist xpixel ypixel zpixel, ,( )pixel sidep∈

∑sidep 1=

6

∑=

Corrscat Vp x, pixel ypixel zpixel sidep, , ,( )⋅

Corrdir sidep sideq,( )sideq 1=

6

∑⋅

χVp

χVp

i( ) χVp

t=

I Scenei 1–( )

sidep pixel,( )→( )pixel sidep∈

∑sidep 1=

6

∑+

Corrdist xpixel ypixel zpixel, ,( )⋅

Corrscat Vp x, pixel ypixel zpixel sidep, , ,( )⋅

Corrdir sidep sideq,( )sideq 1=

6

∑⋅

Vp

I Scenei 1–( )

sidep pixel,( )→( )

Page 89: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

4.2 Global Cube - One Value Per Voxel Strategy 71

rithm

erms

com-mput-s 1:1

re fea-t alsos thatana-

e con-gath-effect

urce,t are

In the following we will denote this computation scheme as theone value per voxel(OVPV)strategy since we compute only one single scalar value per volume element. The final algocan be described in pseudo-code as

void OneValuePerVoxel (int radiosities[], int alpha[])

while (radiosity solution not converged)for all voxels p

for all side of voxel p compute framebuf[side] = project (scene onto side);for all pixel of framebuf

newChi += framebuf[side][pixel]*geometric correction *scattering correction;

Chi[p] = Chi_t[p] + newChi;

In order to increase the efficiency and the performance of our algorithm, the correction tare computed in a preprocessing step and stored in look-up tables.

In summary, the global cube concept incorporates the form factor computation by directlyputing the exchange of energy of voxels within the scene. Generally speaking, we are coing 1:n relationships of voxels, whereas the classical formfactor computation only considerrelationships between single volume elements.

Furthermore, the described OVPV algorithm takes advantage of modern graphics hardwatures, like 3D texture memory and thus provides scalability and acceleration. This concepsuffers from serious disadvantages due to the finite resolutions of the projection planedefine the faces of the global cube. This drawback leads to aliasing artifacts which will belyzed in section 4.6.1.

The main disadvantage, however, results from the fact that this method does not allow thsideration of fully opaque objects. Because of the nature of the isotropic reflection of theered energy, an energy-leaking occurs that allows energy to penetrate into the object. Thisis illustrated in figure 4.7. The figure depicts a 2D (flatland) scene that consists of a light soa medium with and a set of opaque voxels. In the first iteration, the voxels tha

Figure 4.7: Energy-leaking effect.

Initial setup First iteration Second iteration Third iteration Fourth iteration

Medium

Voxel with σ=1.0

Illuminated voxel with σ=1.0

Light source

σ 1.0<

Page 90: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

72 4. Global Cube Algorithm

ce ofwingd in

VPVe-oth itsof the

is

rates

f

etail.

nergy

directly illuminated by the light source gather energy. Due to the directional independenthe reflected light, the gathered energy is propagated throughout the volume in the folloiterations and thus leaks into the volume data. A solution to this problem will be introducethe next section.

4.3 Global Cube - Six Values Per Voxel Strategy

To allow the rendering of opaque voxels we introduce a straight-forward extension to the Ostrategy. Thesix values per voxel(SVPV) algorithm handles the six faces of each voxel indpendently. To keep the energy balance consistent, each side now obtains energy from bsurrounding volume data and the energy that is received by the five complementary facescube, weighted by the amount of energy that is absorbed within the cube.

The amount of energy that is received from and emits from the face side of voxel

determined by

(4.12)

Beside the already introduced energy contribution and correction terms, (4.12) incorpo

an interior energy exchange factor . This factor counts for the amount o

energy that is gathered from the face , flows though , and received by the face

of the same volume element . This factor will be described in section 4.3.2 in more d

Moreover, similar to the iterative energy exchange formulae (4.5), we can compute the e

that is received by the volume element from face at iteration stepi as

(4.13)

Vq Vp

Pp χVqside,( ) I χVq sideq,

i 1–( )sidep pixel,→( )

pixel sidep∈∑

sideq 1=

6

∑sidep 1=

6

∑=

Corrdist xpixel ypixel zpixel, ,( )⋅

Corrscat Vp x, pixel ypixel zpixel nside, , ,( )⋅

Corrdir sidep sideq,( )⋅

Γ Vp sidep side, ,( )⋅

I

Γ Vp sidep side, ,( )

sidep Vp side

Vp

Vp side

χVp side,i( ) χVp

t=

I Scenesideq

i 1–( )sidep pixel,→( )

pixel sidep∈∑

sideq 1=

6

∑sidep 1=

6

∑+

Corrdist xpixel ypixel zpixel, ,( )⋅

Corrscat Vp x, pixel ypixel zpixel nside, , ,( )⋅

Corrdir sidep sideq,( )⋅

Γ Vp sidep side, ,( )⋅

Page 91: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

4.3 Global Cube - Six Values Per Voxel Strategy 73

ing

r the

ctionoccurse pro-tional

rdslemwing

btain

his is

firstphasein theolume

w-

As in (4.11), the projected energies are computed by apply

the linearoveroperation. We can also describe the different classes of correction terms foSVPV strategy as follows.

4.3.1 Geometric Correction

Similar to the OVPV algorithm, we also have to consider the distance and directional correterms. As stated in section 4.2.2 the distance correction compensates for the error thatdue to the usage of parallel slicing planes. Secondly, the directional correction amends thjection error. For the case of the SVPV strategy, however, we have to introduce an addigeometric correction factor, which we will denote aspositional correction. Figure 4.8 shows avoxel and its corresponding viewing frustum for the faceside. We observe that the voxelq

is not visible to voxelp, since it is not inside the viewing frustum, but as it sends energy towathesideof the voxelp it has to be considered in the energy balance computation. This probcan easily be solved by another lookup table for , as this voxel appears within the vie

frustum of this face. Since the scene has to be rendered for anyway, in order to o

this additional energy contribution does not introduce any rendering overhead.

Note that the geometric correction does not have to take the opacity into account. T

in contrast to the scattering correction.

4.3.2 Scattering Correction

For the SVPV strategy one can distinguish two different scattering correction terms. Theterm, which is similar to the expression introduced in section 4.2.3, represents a scatteringfunction at pixel-resolution. The second correction term counts for the energy exchangevolume element. It also encompasses the absorption of the received energy within the velement. Thus, we obtain for the interior energy exchange factor

(4.14)

Figure 4.8: Energy contribution of a volume element that is not inside the vieing frustum.

I Scenesideq

i 1–( )sidep pixel,→( )

Vp

sidep

sidep

PVp sidep,

Vq

Vp

Center of projection

Viewing frustum

Energy

side

sidep

ΓVp side, χVp sidep,i 1–( )( )

σVp

Γ Vp sidep side, ,( )Fside sidep, 1 σVp

–( ) , for side sidep≠

1 , otherwise

=

Page 92: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

74 4. Global Cube Algorithm

that

actor

ion ofnergy is

faces

ergy

l cubeula-s boxllowsompu-velet

on of

d thepose

where describes the form factors as they were given in (3.39) and (3.40). Note

the opacity of the volume element equals one, the interior energy exchange f

equals zero. Thus, no energy flows from one face to another. This allows the generatopaque objects and prevents leaking. The usage of the formfactors guarantees that no eintroduced in the scene and allows the computation of the energy exchange between two

exactly. Furthermore, the scattering coefficient represents the quantity of en

that is forward scattered into the voxel from the face .

Finally, the SVPV strategy can be written in pseudocode as

void SixValuesPerVoxel (int radiosities[], int alpha[])

while (radiosity solution not converged)for all voxels p

for all side of voxel pfor all side p of voxel p // projection planes

for all side q // emitting directions of the scene

compute framebuf[side p] = project (scene side q onto side p);

for all pixel of framebufnewChi[side] += framebuf[side p][pixel]

* geometric correction* scattering correction* Gamma(p, side p, side]);

Chi[p][side] += Chi_t[p] + newChi[side]

4.4 Hierarchy

In section 4.2 and section 4.3 we introduced the mathematical background for the globaalgorithm that we derived from the iterative solution method of the Galerkin radiosity formtion based on the pure volumetric model. The underlying basis functions were chosen afunctions, which correspond to the Haar-scaling functions. The wavelet theory, however, athe generation of hierarchical representations of the function spaces, which enable the ctation of coarse approximations and refine the solution if necessary. By merging the watheory and the global cube concept we obtain a new hierarchical algorithm for the solutivolume radiosity setups. In general this algorithm can be divided into three major steps

1. Compute the multiresolution representations of and .

2. Find the solution for the coarsest approximation as a first solution.

3. Refine and recompute if necessary.

These steps will be explained in more detail in the following paragraphs.

4.4.1 Multiresolution Representation

Due to the simple definition of the non-overlapping orthonormal Haar basis functions anefficiency of the resulting reconstruction algorithms we will use these functions for the pur

Fside sidep,

σVpVp

αsp nsidep,( )

Vp sidep

χt σ

Page 93: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

4.4 Hierarchy 75

pro-sage

contin-n 2.2n willonstrate

e opa-whichAs afferent

data

d

.

ld. Itd there-lgo-

solu-ction-onson-ely.

letrans-

cor-

ce wents ofrea.

of a hierarchical Galerkin radiosity formulation. These basis functions also automaticallyvide an MRA on the interval. Thus we do not need to consider boundary conditions. The uof these functions, however, brings up two disadvantages: as the basis functions are disuous, the final approximation will not be continuous. Furthermore, as mentioned in sectiothis basis only provides one vanishing moment. Hence, the multiresolution representationot be as sparse as for bases with more vanishing moments. Further research may demthat the benefits of other wavelet bases outweigh their drawbacks.

The wavelet transform generates a hierarchical representation of the source term and thcity, as described in section 4.1.1. This transform is performed as a preprocessing stepwill decompose the scalar coefficients that are given for the emission and the opacity.result, the preprocessing generates lowpass approximations and detail informations at discales.

4.4.2 Approximate Solution

Since the first step of our algorithm is to find a solution of the coarse approximation of the

set, we solve the global illumination problem by using the approximation functions anwhich are defined in (4.3).

The solution is found by applying the global cube algorithm to the low-pass coefficients

The algorithm terminates if the maximum energy update is less than a given threshobecomes obvious, that the solution costs depends strongly on the number of elements anfore on the depthM and the initial size of the data set. We will next describe a refinement arithm which will cut down efficiently the computation costs.

4.4.3 Refinement

The energy distribution in the lowpass filtered data set that was found as an approximatetion has to be refined selectively in order to find a more accurate solution. The predimethod that controls the refinement is called anoracle. It decides whether a volume cluster (single basis function of levelm) has to be subdivided into eight subclusters (eight basis functiof levelm-1) or not. This refinement is simply performed by a spatially localized wavelet recstruction. The oracle is driven by two heuristic functions and has proven to work effectiv

The firststatic heuristic functiononly considers information that is obtained from the wavetransform.Recall from chapter 2 that the detail information is extracted during the wavelet t

form and coded as scalar coefficients . In general, high detail coefficients occur if the

responding region provides high frequencies, e. g. if the region is not homogeneous. Sinare interested in detecting boundary regions of an object, high magnitude detail coefficieeither emission or opacity will force the algorithm to adaptively refine the corresponding a

The static heuristic function can be formulated in pseudocode as follows

boolean refine_static(voxel p, float threshold_emission,float threshold_opacity,octree radiosities[], octree alpha[])

for m = m0 + 1 to M do // decomposition levels

for type = 1 to 7 // wavelet typesfor all wavelet(m, type)

if ((support(wavelet) support (voxel p)) and

χt σ

cMpqr

dmpqrtype

Page 94: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

76 4. Global Cube Algorithm

stepputed

here-

ions.

envi-If thee thatfunc-energy

.

. The

hierar-

uta-ke the

y dis-ctionn accu-sup-

nction,

sively.e fur-

e seenod,orrec-ider-duces

((abs(wavelet_coefficient_emission) > threshold_emission) or (abs(wavelet_coefficient_opacity) > threshold_opacity))

return(TRUE)return (FALSE);

Again, we want to point to the fact that the wavelet transform is only performed as an initialand is based on the emission values and the opacity coefficients. Thus, the previously comwavelet coefficients do not change during the computation of the energy distribution and tfore do not take the actual energy distribution into account.

In addition to the static heuristic function we introduce a second type of importance functWe denote these functions asdynamic heuristic functions. The latter functions are only appli-cable to the SVPV strategy, since they consider progression of the energy transfer in theronment by comparing the received energy of two faces of a single volume element.energy differs more than a defined threshold, the element has to be further refined. Notthis criteria only forces volume elements to be refined if they receive energy. Hence, thistion operates progressively as the energy is distributed in the volume data and leaves lowregions unchanged. In pseudocode terms this function can be defined as

boolean refine_dynamic(voxel p, float threshold_Chi,octree radiosities[], octree alpha[])

for all side of voxel p

for all side p of voxel p

if(abs(Chi[p][side]-Chi[p][side p]) > threshold_Chi)

return(TRUE)return (FALSE);

The complete process of the hierarchical global cube algorithm is illustrated in figure 4.9

In figure 4.9 the initial volumetric data sets ( and ) are represented as a single 2D grid

preprocessing step computes a wavelet decomposition up to level , whereas the

chical global cube algorithm is executed at runtime. The initial energy distribution comptions only consider the lowpass informations, whereas further refinement steps also tadetail information into account.

The accuracy of the global solution cannot be controlled directly since the correct energtribution is not known in advance. In fact, enforcing a small error threshold in the reconstrustage can obviously result in unnecessary fine structures, and does not even guarantee arate solution. Our implemented oracle has proven its usability for complex scenes. It alsopresses visual artifacts because it encourages refinement depending on visibility and extisince this corresponds to a shadow transition.

As mentioned earlier, the underlying concept of our approach refines the scene progresThus, the previously computed solutions at decomposition level will be used to calculat

ther refined versions at decomposition level . This coarse-to-fine strategy can thus bas amultigrid method, that progressively solves the system. In terms of the multigrid meththe wavelet-driven reconstruction equals a prolongation operation that interpolates the ction to the finer grid [69]. In the case of the SVPV strategy, the refinement further consations have to be made, as the refinement of a single voxel into its eight subvoxels intro

χt σm0 2+

m

m 1–

Page 95: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

4.4 Hierarchy 77

value

uted

urce

coef-

new faces. This is depicted in figure 4.10. Therefore we suggest to initialize the emission

of the facesideof the volume element by a value that depends on the already comp

emission value , the opacity , and the source value . The opacity and so

values can be directly obtained from the inverse wavelet transform of the corresponding

Figure 4.9: Hierarchical global cube algorithm.

Firstdecomposition

level

Initial opacityand sourcedata sets

Wavelet transformation

m m0=

m m0 1+=

Wavelet transformation

m m0 2+=

Seconddecomposition

level

1

23

3

Pre

proc

essi

ng (

wav

elet

tran

sfor

m)

Run

time

com

puta

tion Computed

energydistribution

Global cube algorithm applied to lowpass information only.

2

1

Refinement due to static and dynamic heuristic functions; computation of energy distribution.

3 Refinement due to dynamic heuristic functions; computation of energy distribution.

Lowpass Detail

3

3

2

(hi

erar

chic

al g

loba

l cub

e)

Vrm 1–

χVp

m side,σ

Vqm 1– χ

Vrm 1–

t

Page 96: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

78 4. Global Cube Algorithm

cor-

n as

therther-nsurese.5. In

can

intro-objec-

ficients. As the adjacent volume element shall be taken into account, we will also in

porate its weighted emission. The resulting term for the initial value can be formally seeover operation, which can be described as:

(4.15)

Although this initial guess describes only an approximation of the energy distribution withinvolume element, it turns out to be a good refinement strategy for the implementation. Fumore, this term does not introduce additional energy to the system. Thus, the refinement ean energy balance between decomposition levelsmandm-1. However, the exact emission valuwill be determined by the following iterative global cube procedure described in section 4

contrast to the necessity for the computation of intensity , the emission

be taken directly from the volume element as we can set

(4.16)

4.5 Implementation

The global cube algorithm was implemented to prove its concepts and to combine theduced theoretical background in a flexible tool. It has been designed to meet several keytives,

• intuitive description of the data set

• user controlled accuracy

• efficient usage of hardware acceleration

• openness and flexibility

Figure 4.10: Propagation of radiosity in case of refinement.

Volume element: Vqm 1–

Refinement

Volume element:Vpm

Face: side Volume element: Vrm 1–

χVr

m 1– side,0( )

Decomposition level m Decomposition level m 1–

χVp

m side,0( )

Vqm 1–

χVr

m 1– side,0( ) χ

Vrm 1–

t1 σVq

–( )χVp

m side,σVq

χVq

m 1–t

+ +=

χVr

m 1– side,0( ) χ

Vqm 1– side,

0( )

Vpm

χVq

m 1– side,0( ) χ

Vqm 1–

t χVp

m side,χ

Vpm

t–+=

Page 97: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

4.5 Implementation 79

table

gh aimple-h the

uitivearam-

The algorithm is written in C++ and though it has been tested on SGI workstations, it is porto any OpenGL supported hardware platform.

4.5.1 System Overview

As stated in section 4.1, our global illumination visualization system takes input and throusequence of specified operations, produces output visualization. Figure 4.11 shows themented rendering pipeline for the system, indicating the path that input data takes througrendering process.

In order to obtain a flexible modeling mechanism for scenes, we have designed an intscript language. It describes the scene as a set of primitives. For each primitive a set of peters has to be defined, namely

• type cube, sphere, rectangle that specifies the geometric shape

• position (x,y,z)

• source term

• opacity coefficient

• scattering function

Figure 4.11: Rendering pipeline.

Hardwareassistedglobal cube

Image

Scene description file

Volumetric model

Energy distribution

Voxelization &filtering

Rendering Interaction

Object Cube <0.0, 0.0, 0.0><0.2, 0.2, 0.2> RGB <0.0, 0.0, 0.0> Alpha <1.0, 1.0, 1.0> Scattering ConstantPhaseMaterial_constant<1.0, 1.0, 1.0>Norm_Factor

χt

σ

αs

Page 98: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

80 4. Global Cube Algorithm

ntrastl cubeasis.e ren-

allows

repro-n thenfromuces

liasinge opa-form

ization3Dat do

eringusage

ts the

-nel.o thecolor

• scattering phase function ConstantPhase, Anisotropic, Raleigh,MurkyMie, HazyMie, HenyeyGreenstein and their correspondingcon-stants.

The parameters of each primitive can be defined for each color-channel separately. In coto classical radiosity approaches, where only isotropic scattering is considered, the globaalgorithm allows the definition of a scattering phase function that works on discrete pixel bThere are several scattering phase functions that have been developed for efficient volumdering and are based on a solid theoretical basis. The choice of a scattering functionapproximating multiple characteristics, such as water drops or fog.

For the purpose of the global cube concept, the scattering functions are evaluated in a pcessing step and stored as 2D lookup-tables. Each scalar entry within the lookup-table cabe used as a weighting factor. Figure 4.12 depicts the energy distribution that resultsHenyey-Greenstein scattering functions with different constant factors. This function prodan ellipse with eccentricitye. We clearly observe the directional influence if we increasee.

Note that since the modeled scene has to be discretized into a finite number of voxels, amay occur. To minimize this effect, the voxel generator computes the source term and thcity by trilinear interpolation. After the voxel representation is generated, the wavelet transis applied in order to achieve an hierarchical representation.

4.5.2 Energy Exchange Computation

The global cube algorithm presented in this chapter enables the computation and visualof both the SVPV and OVPV solutions of the defined volume. Due to the limited size of thetexture memory and since our algorithm was intended to support low-cost workstations thnot provide texture memory, our implementation offers both a polygon-based rendapproach and a 3D texture-based approach. Though our implementation proved that theof the polygon rendering slows down the rendering process significantly, it also suppor

rendering of huge data sets (>1283 voxels) since it is not limited to the size of the texture memory. In case of different color channels, the solution is found individually for each color chanThe result is then merged into a single data structure that individually stores in addition thierarchical tree informations, the source and opacity coefficients for each voxel andchannel.

Figure 4.12: Results from the Henyey-Greenstein scattering functions:(a)e=0 (isotropic scattering), (b)e=0.4, (c)e=0.9.

(a) (b) (c)

Page 99: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

4.6 Error Analysis 81

rent

e sup-ingscity

ategy.. Nev-om-

agesimagealues.vectoretric

lumeosen toThe

s forrther-dered.enty taketen-

linear

. Twod the

4.5.3 Final Rendering

For the final rendering of the computed energy distribution we have implemented two diffemechanisms, namely the usage of the 3D texture hardware and a ray-caster.

Using 3D texture hardware allows us to render the data at high frame rates. The hardwarported computation, however, applies not to high-quality images. The other major shortcomof this method result from the impossibility to render RGB-scenes with three different opavalues for each channel and the incorrect handling of the computed result of the SVPV strThis is due to the fact that only one RGBA-quadruple can be handled per volume elementertheless, this visualization technique is sufficient to give a very quick overview of the cputed scene and allows the user to adjust a camera position interactively.

In contrast, the implemented volume ray-caster allows the computation of high-quality imof the scene, based on the emission-absorption model introduced in section 3.5. Thisorder rendering technique allows the handling and correct visualization of the computed vThe rays are cast into the data array from the user-defined camera position. For each ray aof sample emission values and opacity coefficients is computed by resampling the volumdata array. This sampling typically involves an interpolation stage between neighboring voelements, to avoid blocky appearance in the computed images. The sample points are chlie within a plane that is spanned by four volume elements, as illustrated in figure 4.13.choice of the position of the sampling point is motivated by two reasons. First, the costinterpolation are reduced, since a simple bilinear interpolation scheme can be applied, fumore, this position clearly determines the face of the volume element that has to be consiThe last point is very important for the SVPV algorithm, since we usually obtain six differemission values per voxel (one value per face). For the illustrated setup, however, we onlone face (side) into account, the contribution of the other five faces can be neglected. The insity that is collected by the ray and projected onto the projection plane is obtained by theoveroperation.

4.6 Error Analysis

This section will discuss the errors we encountered in applying the global cube conceptdifferent setups were devised to test the accuracy of our algorithm. We have implemente

Figure 4.13: Ray-caster.

Volume element with

emission and opacity

VpχVp side, σVp

Sample location on face side

Volume element Vq

Volume element Vr

Volume element Vs

Viewing rayProjection plane

xn

Page 100: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

82 4. Global Cube Algorithm

valuateem ofuracyepre-

lobalced inglobal

e theen the

be,e two

d fronte that

rence

ult.

zonal method as a reference system. A numerical side-by-side comparison was made to ethe quality of the global cube approximation. Further error analysis addresses the problchoosing the resolution of the projection plane in order to achieve more insight in the accvs. rendering time trade-off. We also focus on the errors resulting from the hierarchical rsentation and clustering of the data.

4.6.1 Quality of the Approximation

The following error considerations are used to indicate the accuracy and quality of the gcube method. All comparisons are made against the zonal method [72] as it was introdusection 3.3.1, since this traditional method can be considered as a reference method forillumination computations.

As our implementation of the zonal method requires a large amount of memory to storaccurate exchange factors and in order to keep the computation time low, we have chos

size of the reference data set as 163. The scene consists of three objects: a small emitting cua larger opaque cube and an isotropically scattering participating media that surrounds thcubes. The scene and its parameters are illustrated in figure 4.14. (a) and (b) in a top anview. Figure 4.14 (c) depicts an image of the computed energy distribution. We can observboth the opaque cube and the participating media are illuminated by the light source.

The relative error metrics used to compare the two results include the maximum diffe( ), the mean ( ), and the mean square ( ) error. We have

(4.17)

Figure 4.14: Reference scene 1: (a) top view, (b) front view, (c) rendered res

(a) (b) (c)

Participating media ( =0.1, =0.)σ χt

Emitter ( =1., =255.)σ χt

Opaque cube ( =1., =0.)σ χt

Qmax Qmean Qsquare

Qmax maxp Scene∈ χVp

reference χVp

global cube–=

Qmean

χVp

reference χVp

global cube–

p Scene∈∑

Scene-------------------------------------------------------------------------------=

Qsquare

χVp

reference χVp

global cube–( )

2

p Scene∈∑

Scene---------------------------------------------------------------------------------------=

Page 101: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

4.6 Error Analysis 83

zonal

nten-

etricsnd to

,

on of

e

cts.

r thees not

e.n not1164ation0000

der-res-

d. Thethe

howvesti-

h are

as inplaneethodperfor-pterthe 3D

where denotes the emission of the volume element that is computed by the

method, describes the number of voxels in the scene, and gives the i

sity that is calculated by the SVPV global cube algorithm. We chose these three error min order to make the results of the global cube algorithm comparable to other methods agive insight in the worst case characteristics ( ) as well as global characteristics (

) of our approach. For the reference scene we obtain

The results indicate clearly that the global cube algorithm only computes an approximatithe energy distribution. Two explanations for the fairly large errors can be given.

• Usage of the linearover operator instead of the highly non-linear low-albedo volumrending equation

• Limited resolution of the projection plane of the global cube results in aliasing artifaFor this comparison, the resolution was chosen to be 16 x 16

The first point, however, cannot be solved nor improved in any way but we have to consideamount of memory and time that is needed for the accurate zonal method. This method do

allow the handling of average-sized data sets (>643 volume elements) in a reasonable timSince our implementation of the zonal method was not optimized in terms of speed, we cadirectly compare the timings. Rushmeier documents a computation time of 3 cpu hours forsurfaces and 2744 volume elements on a VAX 8700 [72]. Our global cube implementrequires for the 4096 volume elements only 186 seconds on a SGI Maximum Impact R1and a fraction of memory.

In contrast to the inherent approximation resulting from the linearization of the volume rening integral by theoveroperation, the second error can be controlled easily. In general, theolution of the projection plane controls the trade-off between accuracy and rendering speeinfluence of different resolutions of the projection planes that are implicitly mapped ontocube’s faces will be analyzed in the following section.

4.6.2 Resolution of the Projection Plane

In testing the rendering fidelity and performance of our rendering algorithm, we measurethese two parameters depend on the resolution of the projection plane. To perform this in

gation, we construct a second reference data set (figure 4.15) of size 323. This data set consistsof a cubical enclosure that is filled with a single emitting block and six opaque cubes whicsurrounded by participating medium.

The results of the experiment are shown in table 4.1. The error metrics are computed(4.17). The reference model was computed by the global cube approach with projectionresolution of 128 x 128 pixels. We chose this solution as the reference since the zonal min our implementation cannot handle the size of the scene. Table 4.1 also compares themance of our algorithm for various projection plane resolutions. All of the results in this chaare measured on a 195 MHz SGI Maximum Impact R10000. The rendering scheme uses

χVp

referenceVp

Scene χVp

global cube

Qmax Qmean

Qsquare

Qmax 20=

Qmean 1.866=

Qsquare 0.046311=

Page 102: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

84 4. Global Cube Algorithm

com-inten-

tion is

earlythat

e costseen(c).. Forset to

e

ult.

ene 2.

texture hardware for the global cube algorithm. The final gathering of the energy is acplished by a ray-casting step as described in section 4.5.3. Since we are interested in thesity values of the cubes, bilinear interpolation is disabled and nearest neighbor interpolaused instead.

The timings, which are given in table 4.1 demonstrate that the computation time lindepends on the number of pixels of the projection plane. Furthermore, the results confirmthe errors can be reduced by increasing the resolution of the projection plane, though at thof rendering time. The aliasing artifacts for lower resolutions are clearly visible as it can bein figure 4.16. The image obtained by a resolution of 128 x 128 pixel is given in figure 4.15Theoretically, an optimal resolution may be computed by Shannon’s sampling theorempractical use, however, we find a resolution that matches the linear dimension of the data

be optimal. Consequently, for this scene of size 323 volume elements we obtain an optimal timvs. quality trade-off for the resolution of 32 x32.

Figure 4.15: Reference scene 2: (a) top view, (b) front view, (c) rendered res

Table 4.1:Comparison of the errors and the rendering performance for the reference sc

Projectionplane

resolutionQmax Qmean Qsquare Time in sec.

Relaxationsteps

2 x 2 101 2.42975 0.0279481 2177 4

4 x 4 53 0.990051 0.0124097 2754 5

8 x 8 9 0.294067 0.00373588 3395 6

16 x 16 10 0.153595 0.00293334 3997 6

32 x 32 3 0.0637207 0.00142423 6082 6

64 x 64 3 0.046814 0.00123511 15509 6

128 x 128 ./. ./. ./. 52638 6

(a) (b) (c)

Participating media ( =0.1, =0.)σ χt

Emitter ( =1., =255.)σ χt

Opaque cube ( =1., =0.)σ χt

Page 103: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

4.6 Error Analysis 85

of thend theat the

d inor five

e com-lobal

4.

l so-

4.6.3 Hierarchical Decomposition

We also investigate the aliasing artifacts that occur due to the hierarchical decompositiondata. As before, we chose reference scene 2 to illustrate the effect of the decomposition aresulting error. A one-level decomposition was performed in a preprocessing step, such th

lowest resolution of the data set equals 163. The resolution of the projection plane is set to 322.The errors are given relatively to the non-hierarchical SVPV solution as describesection 4.6.2. Table 4.2 summarizes the performance results and the introduced errors fthreshold values.

From table 4.2 we conclude that the hierarchical representation and solution decreases thputation time significantly. Because of its lower computational overhead the hierarchical g

Figure 4.16: Intensity distribution for different projection plane resolutions:(a) 2 x 2 pixels, (b) 4 x 4, (c) 8 x 8, (d) 16 x 16, (e) 32 x 32, (f) 64 x 6

Table 4.2:Comparison of the errors and the rendering performance for the hierarchicalution of the reference scene 2. (*): non-hierarchical solution.

Threshold Elements Qmax Qmean Qsquare Time in sec.

0 (*) 32768 (*) ./. ./. ./. 6082 (*)

13 7897 17 0.843353 0.00886 1469

33 7827 30 0.861776 0.00907 1460

53 7673 30 0.881256 0.009727 1441

73 7660 32 0.900696 0.010183 1440

93 7589 47 0.98877 0.013151 1420

(a) (b) (c)

(d) (e) (f)

Page 104: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

86 4. Global Cube Algorithm

plex

hierar-hical

earlyputa-ray-ray-

nd thetableted tosformntrib-

(c)h-

cube algorithm outperforms the non-hierarchical version by a factor of four. For more comscenes we found an average gain of factor 3-6.

For comparison purposes figure 4.17 shows examples of the energy distribution and thechical representation produced with the hierarchical global cube algorithm. The hierarcstructure and a slice of the data set are displayed.

Compared to the non-hierarchical solution (figure 4.17 (a)), the hierarchical solution clintroduces blocky artifacts if only a small amount of clusters are used for the energy comtion. To demonstrate this effect we disabled the bilinear filtering which is provided by ourcaster. However, with a smoother opacity function or a higher order filter applied to thecaster, these artifacts can be reduced. In practice, if the original volume is band-limited aenergy-function does not result in a binary classification, the bilinear filter produces accepresults. We also notice that for the case of homogeneous objects the refinement is limitheir illuminated boundary regions. This is because of the character of the wavelet tranthat detects high frequencies in the volume. This also ensures that thin objects will also coute to the final image.

Figure 4.17: Energy distribution and hierarchy for different threshold values:(a) Threshold = 0 as the reference solution, (b) Threshold = 13,Threshold = 33, (d) Threshold = 53, (e) Threshold = 73, (f) Thresold = 93.

(a) (b)

(c) (d)

(e) (f)

Page 105: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

4.7 Results 87

l illus-e theplingatter-

ffectted into

ationergyaquein

ereeivesrpo-

m the

le. Theum as

al

aptslutionetailf the

4.7 Results

This section discusses the experimental results using our global cube approach. We wiltrate and verify different volumetric data sets and the influence of parameters that definscene. Note that all images are obtained by the ray-caster and bilinear filtering of the sampoints as described in section 4.5.1. Furthermore, all objects are provided with isotropic scing functions.

4.7.1 Color Bleeding

The first scene addresses the effect of diffuse interreflections. In radiosity literature, this eis often denoted ascolor bleeding[29]. Figure 4.18 displays color bleeding for two differensetups. The scene consists of three colored walls (red, white, and green) and is discretiz

323 volume elements. In figure 4.18 (a) the opacity was set to zero, therefore no participmedia is modeled. This result also illustrates the ability of our algorithm to compute the endistribution similar to the surface-oriented classical radiosity setups by generating thin opvolume elements. The color bleeding becomes even more obvious if we slice the sceney-direction (figure 4.18 (b)). A volumetric color bleeding effect is shown in figure 4.18 (c). Hthe opacity of the participating media is set to 0.1. As expected, the participating media recand distributes energy from its surrounding walls as illustrated in figure 4.18 (d). The incoration of the participating media into the energy computation describes a departure froclassical radiosity method.

4.7.2 Shadows

To test the accuracy of shadows and shadow transitions we generated a simple exampscene consists of a chair, a light source, and a isotropically scattering participating mediillustrated in figure 4.19.

The size of the scene was chosen as 643 for R, G, and B and was computed with the hierarchicSVPV strategy. The decomposition level was set toM=2, such that the initial distribution is

computed for 163 volume elements. The resolution of the projection plane dynamically adto the size of the volume data. Therefore, the projection plane resolution starts with a resoof 16 x 16 pixels. If the energy distribution is computed for this resolution, more and more dinformation is added in order to achieve a finer approximation. As a result, the resolution oprojection plane will be increased to 32 x 32, and finally to 64 x 64 pixels.

Figure 4.18: Color bleeding: (a) without participating media, (b) iny-direction,(c) and (d) with participating media.

(a) (b) (c) (d)

Page 106: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

88 4. Global Cube Algorithm

adowsadows

nge”a light

ts).

From figure 4.19, we observe that the scattering media becomes visible and that the shthat are casted by the chair are computed fairly accurately. Figure 4.20 depicts detailed shthat are captured by our algorithm.

4.7.3 Hierarchy

The third scene illustrates the usability of the oracle for complex scenes. The so-called “louscene that we used in this example consists of two sofas, a semi-transparent table andsource.

Figure 4.19: Shadows of a chair.

Figure 4.20: Shadows on boundary surfaces: (a) wall, (b) ground.

Figure 4.21: Solution for a complex environment (3 x 262144 volume elemen

(a) (b)

Page 107: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

4.7 Results 89

cene

ted

fine-

for

The

gles.fectstion ofred

passm, weparent

less

t at

As before, the scene is filled with a participating media. The resolution of the modeled s

was chosen to be 643 voxels for R,G, and B and a two level decomposition was compu

( ). As in section 4.7.2, the resolution of the projection plane depends on the re

ment step of the hierarchy. For the resolution equals 16 x16, whereas

and the resolution is chosen as 32 x 32 and 64 x 64 respectively.

achieved solution is illustrated in figure 4.21 for different camera positions and viewing anAs in the earlier examples, we can observe very clearly direct and indirect illumination efand shading. The hierarchical decompositions of the scene and the progressive computathe energy distribution are illustrated in figure 4.22. This figure shows the distribution of thecomponent of the lounge scene for different levels of the resolution and iteration steps.

The wavelet-decomposition of the emission and the opacity informations lead to a lowrepresentation, as it is shown in (a). Due to the averaging character of the wavelet transfornote that objects that are defined as opaque in the initial resolution appear as half-trans

objects in coarser levels. Starting from the solution that is computed for the 163 data set

( ), the oracle selectively refines the scene in order to obtain smaller errors and

visual artifacts. Image (b) displays the solution for the selectively refined data se

Figure 4.22: Progressive refinement of lounge scene:(a) solution for 163 volume elements (m=m0+2),(b) solution for reconstruction levelm=m0+1,(c) solution for the first iteration of the relaxation atm=m0,(d) solution for the second iteration of the relaxation atm=m0,(e) solution for the third iteration of the relaxation atm=m0,(f) solution for the fourth iteration of the relaxation atm=m0.

M m0 2+=

m m m0 2+=

m m0 1+= m m0=

(a) (b) (c)

(d) (e) (f)

m m0 2+=

Page 108: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

90 4. Global Cube Algorithm

lled

trolsy. Thearchyplayed

rcesstep,

lumi-and

o the

es thewealso

rther-hresh-

ce-

. Images (c)-(f) finally illustrate the results of the relaxation and oracle-contro

refinement steps of the global cube algorithm at the iteration level .

In order to analyze and visualize the influence of the dynamic heuristic function that conthe refinement oracle, we display a slice through the data and its corresponding hierarchslice is taken near the back-wall. Figure 4.23 depicts the energy distribution and the hieras it is computed in each relaxation step. The images correspond to the results that are disin figure 4.22 (c)-(f). As it can be taken from figure 4.23 (a), the static heuristic function fothe oracle to initially refine the opaque boundary regions of the sofa. The second relaxationillustrated in (b), also provides finer structures near the highly energized regions that are ilnated from the light source. This refinement is controlled by the dynamic oracle functionhence proving again its validity. This function also increases the size of this region due tenergy flow in the data, as can be seen in (c) and (d).

.The number of relaxation steps and timings are given in table 4.3. It clearly demonstratfidelity and performance of our algorithm and the implemented oracle. From this tableobserve that the total time for the computation of the red component is 8h 46 min. Weobserve that the rendering time can be reduced dramatically for lower image quality. Fumore, we see that the number of iterations varies significantly depending on the selected told and the computed energy-distribution.

Figure 4.23: Hierarchy and intensity distribution of a slice trough the lounge-sne:(a) solution for the first iteration of the relaxation atm=m0,(b) solution for the second iteration of the relaxation atm=m0,(c) solution for the third iteration of the relaxation atm=m0,(d) solution for the fourth iteration of the relaxation atm=m0.

m m0 1+=

m m0=

(a) (b) (c) (d)

Page 109: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

4.7 Results 91

.

Table 4.3:Performance of global cube algorithm.

relaxation steps m=m0+2 m=m0+1 m=m0

1 4096 elements1 min

(figure 4.22 (a))

13133 elements7 min.

46768 elements1 h 30 min

(figure 4.22 (c))

2 ./. 14652 elements9 min.

64177 elements2 h 11 min

(figure 4.22 (d))

3 ./. 14799 elements8 min.

65605 elements2 h 12 min

(figure 4.22 (e))

4 ./. 14813 elements8 min.

657382 h 12 min

(figure 4.22 (f))

5 ./. 14813 elements8min

(figure 4.22 (b))

./.

Page 110: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

92 4. Global Cube Algorithm

Page 111: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

5

ased, we

y cans weenta-

allowscomeysis.tioneringieved

at a

5LOCAL ILLUMINATION : I MAGE

ORDER RENDERING

In the third chapter, we described ideal models of light transfer in a global environment. Bon the physical model of an emitting and absorbing medium without scattering effectsderived the emission-absorption model.

We consider this model and its specific features in detail, since it

• is physically-based

• can model several lightning effects such as shading, optical depth and occlusion

• decouples emission and absorption

• can be expressed in a simple form

In this chapter we will describe how the emission-absorption model and the wavelet theorbe merged into a new image order volume rendering algorithm. In the following sectionwill first describe the mapping and projection process that brings up a hierarchical represtion of the data set. In contrast to classical volume rendering techniques, our approachthe computation of the volume gradients analytically so that accurate shading effects bevisible. In addition, the analytic representation of the volume is conductive to error analFurthermore, we will describe a new data structure that is optimized for the multiresolurepresentation of volume data and allows fast and flexible computation of the volume rendequation. Finally, we will discuss an implementation and a series of results that are achwith our technique.

5.1 Emission-Absorption Model in the Wavelet Space

Recall from section 3.5 that in case of a low-albedo setup the radiance that is impinginggiven pointx from the directionn can be computed as

(5.1)L x n,( ) χ x s'n+( )e

α x sn+( ) sd

sE

s'

∫–

s'd

sE

sL

∫=

93

Page 112: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

94 5. Local Illumination: Image Order Rendering

es oflight

e finalsired

voxelsthmsis ae wesed to

eticaldientcientesenta-tionsthisusly

Consequently, the radiance contribution of the interval can be expressed as

(5.2)

The major drawback of this model results from the fact that it cannot capture all nuancglobal illumination such as backlighting, multiple scattering, and absorption between thesource and the scattering event. However, for purpose of medical data visualization or threndering of the global cube algorithm, this model is sufficient and communicates all deinformation in the data set.

In the emission-absorption model, the light sources deposit energy at each voxel and thethen re-emit energy as a function of the viewing angles. Typical volume rendering algoricompute the value of the emission function at a voxel by a local illumination model thatfunction of the voxel’s scalar value and the positions of the light sources. Notice that sinchave ignored absorption between the light source and the voxel this model can not be uproduce shadows. A typical setup is depicted in figure 5.1.

The contribution of the wavelet approach to the emission-absorption model is both theorand practical. From the theoretical point of view, we obtain exact error analysis and gracomputation. Practically, the use of a wavelet formulation gives rise to elegant and effistorage, transmission, and rendering techniques of volume data. Furthermore, this reprtion permits direct level-of detail control. Switching suddenly between volume representawith different levels of detail in an animation can produce perceptible ‘popping’. We solveproblem by using continuous levels of smoothing: each wavelet coefficient is continuo

Figure 5.1: Image order volume rendering

sE s,[ ]

L s( ) χ x s'n+( )e

α x sn+( ) sd

sE

s'

∫–

s'd

sE

s

∫=

χ s'( )e

α s( ) sd

sE

s'

∫–

s'd

sE

s

∫=

sE sL

Projection plane VolumeViewer

nx

χ s( )

α s( )

Point light source

Page 113: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

5.2 Projections into Wavelet Space 95

lume

spondas to

voxel

rop-

sh-

n a

ther

aluesr func-

sion

thetency,(2.84).. We

and

of the

varied from zero to its correct values. The drawback is overhead of reconstruction of vodata from the wavelet domain.

5.2 Projections into Wavelet Space

In general, types of data that are achieved from current scanning technologies do not correto the input parameters required by volume illumination models. Thus, raw data usually h

be mapped to rendering parameters. Starting from an array of acquired values at

location on a regular grid, the mapping functions assign values to the optical p

ertiesα and for each value of . These mapping functions are often denoted astransfer

functions. The simplest transfer function assigns if the exceed a given thre

old T, and otherwise. Hence, if equals a tomographic density o

medical data set, the thresholdT can be chosen to make bone completely opaque, and all otissue completely transparent. In general, we have to define two transfer functions

(5.3)

where assigns scalar extinction coefficients and maps the acquired data vonto a scalar emission value. For the case of RGB-images we define the emission transfetion as

(5.4)

where , , and represent the emission values of theR, G, andB color components

respectively.

In order to achieve continuous definitions for the extinction function and the volume emisterm that allow multiresolution representations, we need to define

(5.5)

The next step in building a multiresolution representation is to project the functions ontomultiresolution vector spaces. Due to the advantages in terms of localization and consisour approach is based on the non-standard trivariate basis functions as they are defined inTherefore, we can express the extinction function and the emission term hierarchically

decompose the two functions and into two low-pass signals

their complements at various scales. From (2.83), we obtain for the MRA-representationextinction function

cm0pqracuired

p q r, ,( ) Z∈

χ cm0pqracuired

α ∞= cm0pqracuired

α 0= cm0pqracuired( )p q r Z∈, ,

Transα: cm0pqr

acuiredcm0pqr

α→

Transχ: cm0pqr

acuiredcm0pqr

χ→

Transα

Transχ

Transχ: cm0pqr

acuiredcm0pqr

χR cm0pqrχG cm0pqr

χB, ,( )→

χR χG χB

α x( ) cm0pqrα φm0pqr

3 x( )p q r Z∈, ,

∑=

χ x( ) cm0pqrχ φm0pqr

3 x( )p q r Z∈, ,

∑=

α x( ) Vm0

3∈ χ x( ) Vm0

3∈

Page 114: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

96 5. Local Illumination: Image Order Rendering

esised int sup-andleid theng to

usingansfercues.

tinc-tationh sur-

ar

el. In

ave to-

(5.6)

and for the volume emission term

(5.7)

where . These definitions generally hold for all MRAs. In the remainder of this thwe will restrict the discussion to semiorthogonal cardinal B-spline wavelets as describsection 2.2. since they provide analytic definitions, high compression ratios and compacport. As mentioned in section 2.3, we have to introduce boundary conditions in order to hthe spatially-limited data set correctly. To speed up the visualization process and to avointroduction of special boundary functions, we chose the repetition technique accordisection 2.3.3.

5.3 Illumination and Gradient Computation

Next, we will describe mechanisms to enhance the visual perception of the volume data bydifferent depth cues such as occlusion and shading. From (5.3), we observe that the trfunctions that map acquired data to emission and extinction values, does not provide anyThe emission-absorption model allows generating occlusion effects by the definition of extion function. The shading can be accomplished by adding a shading model to the compuscheme. We chose the Phong-model [67], which provides a satisfactory illusion of smootfaces at a reasonable cost. Accordingly, the shaded emission term can be computed as

(5.8)

whereJi represents the normalized vector in direction of theith light source andN(x) describes

the normal vector at locationx. In (5.8) and denote the diffuse and specul

reflection coefficients. The highlight is approximated by the exponentspecularity. The half-wayvectorH is given by

(5.9)

As before,n denotes the viewing direction. We observe several advantages of this modcase of a light source at infinity, the halfwayvectorH and the light source vectorJ are constantand have to be evaluated only once per ray. In case of parallel projection, these vectors hbe computed only once per image. Finally, the normal vectorN(x) can be computed as the normalized gradient vector

α x( ) dmpqrα type, ψmpqr

3 type,

p q r Z∈, ,∑

type 1=

7

∑m m0 1+=

M

∑= x( ) cMpqrα φMpqr

3 x( )p q r Z∈, ,

∑+

χ x( ) dmpqrχ type, ψmpqr

3 type, x( )p q r Z∈, ,

∑type 1=

7

∑m m0 1+=

M

∑= cMpqrχ φMpqr

3 x( )p q r Z∈, ,

∑+

x R3∈

χshaded x( ):=χ x( ) χdiffuse x( ) max N x( ) J i 0,⋅( )i

∑+

χ+ specular x( ) max N x( ) H i 0,⋅( )specularity

i∑

χdiffuse χspecular

H i

n J i+

n J i+-----------------=

Page 115: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

5.4 Error Analysis 97

func-hicalar-

al func-

oper-ricals sec-

rature

rand

ota-

ith

er

(5.10)

Note that the gradient computation is founded only on the characteristics of the extinctiontion, since this function represents the “surfaceness” within the volume. Due to the hierarcdefinition of theα-function in (5.6), we can compute the gradient vector analytically. The ptial derivative for the first component is

(5.11)

Because of the basis functions representations as separable extensions of one-dimensiontions, we have for the low-pass representation

(5.12)

Similarly, we can compute all partial derivatives of the wavelets.

5.4 Error Analysis

No general solution to the emission-absorption model using a finite number of arithmetications and trigonometric function is known. Thus, we must rely upon some form of numequadrature for the evaluation of the optical depth and the volume rendering equation. In thition we will describe a method for evaluating the integral in wavelet space.

The trapezoid rule and the Simpson’s rule are two instances of the Newton-Cotes quad

formulae [69]. These rules generate a polynomial spline approximant to the integ

and numerically evaluate as an approximation to . Recalling the n

tion from section 3.5.2, the spline approximant is formed by evaluating the integrandat

N+1 evenly spaced parameter values in the ray segment : w

and . Explicitly rewriting (3.67) over the discrete paramet

values reveals

N x( ) α x( )∇α x( )∇

------------------- where∇α x( ) ∂α x y z, ,( )∂x

-------------------------- ∂α x y z, ,( )∂y

-------------------------- ∂α x y z, ,( )∂z

--------------------------, , = =

∂α x y z, ,( )∂x

--------------------------

∂ dmpqrα type, ψmpqr

3 type, x y z, ,( )p q r Z∈, ,

∑type 1=

7

∑m m0 1+=

M

∑∂x

-------------------------------------------------------------------------------------------------------------------=

∂ cMpqrα φMpqr

3x y z, ,( )

p q r Z∈, ,∑

∂x-----------------------------------------------------------------------+

∂φmpqr3

x y z, ,( ) ∂x⁄ dφmp x( ) dx⁄( ) φmq y( ) φmr z( )⋅ ⋅=

f s( )

f s( ) f s( ) sd

a

b

∫ f s( ) sd

a

b

∫f s( )

si 1– si,[ ] si0,..., si

N

sij

si 1– jδs+= δs

si s– i 1–

N--------------------=

Page 116: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

98 5. Local Illumination: Image Order Rendering

ula is

own,

epth

titut-

(5.13)

As in chapter 2, the optical depthA is given as

5.4.1 Trapezoid Rule

If a linear spline serves as the approximation function, the resulting Newton-cotes formthe trapezoid rule. From (5.13) we have in the case of a linear spline approximation

(5.14)

where the approximation error is given by . By subsampling of the ray segment

we can compute the intensity as

(5.15)

For this expression the remainder is defined by

(5.16)

where means the second derivative of the function . Because is unkn

cannot be computed exactly. However, using the definitions of the optical d

and the B-spline functions one can compute an upper bound on . Subs

ing this bound into (5.16) yields an upper bound on the magnitude of the remainder.

To obtain an estimation for the optical depthA, we set

L x n 0 i, , ,( ) χ x s'n+( )τ s0 s',( ) s'd

s0

si

∫=

L x n 0 i 1–, , ,( ) τ s0 si 1–,( )L x n i 1– i, , ,( )+=

L x n 0 i 1–, , ,( ) e A s0 si 1–,( )– χ x s'n+( )e A si 1– s′,( )– s'd

si 1–

si

∫+=

A sk sl,( )= α s( ) sd

sk

sl

L x n 0 i, , ,( ) L x n 0 i 1–, , ,( )=

χ si( )eA s0 si,( )–

χ si 1–( )eA s0 si 1–,( )–

+ si si 1––

2-------------------- RL s0 si,( )+ +

RL si 1– si,[ ]

L x n 0 i, , ,( ) L x n 0 i 1–, , ,( )=

eA s0 si 1–,( )–

χ si 1–( ) 2 χ sip( )e

A si 1– sip,( )–

χ si( )eA si 1– si,( )–

+p 1=

N 1–

∑+ δs

2----+

RL s0 si 1– si, ,( )+

RL s0 si 1– si, ,( )

RL s0 si 1– si, ,( ) δs( )2si si 1––

12--------------------e A s0 si 1–,( )– χ ξ( )e A si 1– ξ,( )–

2( )ξ si 1– si,( )∈=

f2( )

f ξR s0 si 1– si, ,( )

χ ξ( )e A si 1– ξ,( )–

2( )

A

Page 117: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

5.4 Error Analysis 99

ation.

(5.17)

the remainder of the approximation is given as

(5.18)

Finally, we have for the approximated intensity

(5.19)

5.4.2 Simpson’s Rule

In contrast to the trapezoid rule, Simpson’s rule is based on a quadratic spline approximUsing the quadratic spline, we can define

(5.20)

The optical depth can be computed as

(5.21)

where the approximated optical depth is given as

(5.22)

and for the corresponding optical depth remainder term we have

(5.23)

A si 1– sip,( ) A si 1– si

p,( ) RA si 1– sip,( )+=

α si 1–( ) 2 α siq( ) α si

p( )+q 1=

p 1–

∑+ δs

2---- RA si 1– si

p,( )+=

RA si 1– sip,( ) δs( )2si

psi 1––

12---------------------α 2( ) ξ( ) ξ si 1– si

p,( )∈=

L x n 0 i, , ,( ) L x n 0 i 1–, , ,( )=

eA s0 si 1–,( )–

χ si 1–( ) 2 χ sip( )e

A si 1– sip,( )–

χ si( )eA si 1– si,( )–

+p 1=

N 1–

∑+ δs

2----+

L x n 0 i, , ,( ) L x n 0 i 1–, , ,( )=

δs

3----e

A s0 si 1–,( )–χ si 1–( ) 4 χ si

2p 1–( )eA si 1– si

2p 1–,( )–

p 1=

N2----

∑+

+

δs

3----e

A s0 si 1–,( )–2 χ si

2p( )eA si 1– si

p,( )–χ si( )e

A si 1– si,( )–+

p 1=

N2---- 1–

+

RL s0 si 1– si, ,( )+

A si 1– sip,( ) A si 1– si

p,( ) RA si 1– sip,( )+=

A si 1– sip,( ) α si 1–( ) 4 α si

2p 1–( )p 1=

N2----

∑ 2 α si2p( )

p 1=

N2---- 1–

∑ α si( )+ + + δs

3----=

RA si 1– sip,( ) δs( )4 si

psi 1––( )

180--------------------------α 4( ) ξ( ) ξ si 1– si

p,( )∈=

Page 118: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

100 5. Local Illumination: Image Order Rendering

ray

ape-

ed inrily thes and

tionsaveletto be

paceduch ase dis-

umberbed.

nsfer

finection

and

f the

antnextequa-

We end up with the intensity approximation term

(5.24)

The accuracy of the approximation of the energy, which is received from the

segment is provided by the remainder term

(5.25)

Expressions (5.16) and (5.25) exhibit a discretization error of and for the tr

zoid and the Simpson’s rule respectively. However, the two quadrature formulae describthis section compute guaranteed bounds on the approximation error, but not necessalowest errors possible. Further work is needed on the evaluation of other quadrature rulethe trade-off in utilizing tighter bounds, accurate solutions, and rendering time. Investigain this context have to consider that the source and emission terms are only given in the wdomain. Thus, different classes of functions, namely wavelets and scaling functions, haveintegrated in order to obtain the projected intensity. Furthermore, the sampling at evenly spoints allows for a direct comparison of our proposed methods to standard techniques sthe shear-warp factorization approach. Empirical comparisons of these techniques will bcussed in chapter 7.

5.5 Implementation

Implementing the hierarchical techniques described in the previous chapters requires a nof practical considerations. In this section, the features of our implementation are descri

The first step towards the computation of the intensity projection is to define the two tra

functions and . In particular, in the case of RGB volumes, we have to detransfer functions for each color component individually. These functions define the extin

coefficients and the emission coefficients for the RGB-components , ,

. Following to the mapping step a wavelet transform has to be performed on each o

components individually. A global or local threshold filtering operation removes insignificcoefficients from the decomposed data. Given the filtered multiresolution volume data, thestep is to apply the image order rendering scheme. Thus, the underlying volume rendering

L x n 0 i, , ,( ) L x n 0 i 1–, , ,( )=

δs

3----e

A s0 si 1–,( )–χ si 1–( ) 4 χ si

2p 1–( )eA si 1– si

2p 1–,( )–

p 1=

N2----

∑+

+

δs

3----e

A s0 si 1–,( )–2 χ si

2p( )eA si 1– si

p,( )–χ si( )e

A si 1– si,( )–+

p 1=

N2---- 1–

+

L x n 0 i, , ,( )si 1– si,[ ]

RL s0 si 1– si, ,( ) eA s0 si 1–,( )–

δs( )4si si 1––

180-------------------- χ ξ( )e

A si 1– ξ,( )–( )

4( )=

eA s0 si 1–,( )– RA s0 si 1–,( )–

δs( )4si si 1––

180-------------------- χ ξ( )e

A si 1– ξ,( )– Rτ si 1– ξ,( )–

4( )=

O δs2( ) O δs

4( )

Transα

Transχ

c0pqrα

c0pqrχR c0pqr

χG

c0pqrχB

Page 119: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

5.5 Implementation 101

(5.15)ram,ed in

omainan be

point

tion and the optical depth are approximated by linear and quadratic splines according toand (5.20). Instead of having all the volume data available during the run time of the progwe reconstruct the needed values on the fly. The resulting rendering pipeline is illustratfigure 5.2.

5.5.1 Data Reconstruction

The rendering procedure accesses the volume data by reconstructing it from the wavelet din the following manner. Assuming a wavelet decomposed data set, the intensity ccomputed by the following steps:

1. Evaluate entering and leaving parameters and of rayn

2. Trace volume data alongn, starting from parameter

3. For each sampling parameter find the basis functions whose supports cover the

.

Figure 5.2: Pipeline for image space volume rendering

LR

LG

LB

χR χG χB α

Mapping

Wavelettransform

Filtering

Integration

Initial data set

Image

A

Rendering

I x n,( )

sE sL

sE

si

x si( ) y si( ) z si( ), ,( )

Page 120: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

102 5. Local Illumination: Image Order Rendering

rm

eased stepper-ray

or theo not

puta-

ion

4. Evaluate the functions at this point

5. Evaluate the extinction coefficient and the volume emission te

by accumulation of the computed function values

6. Compute the approximated optical depth and gradient at given parameter

7. Compute the approximated intensity according to (5.19) or (5.24)

8. Increment

9. Repeat with 3 untila)

b)

c)

Note that 9. b) and c) specify two conditions for the early ray termination that generally incrthe rendering speed. For the computation of the optical depth and the intensity (step 6 an7), either the trapezoid rule or Simpson’s rule can be applied. The error computation isformed as described in section 5.4. Since we are dealing with high sampling rates of thento minimize the error, data handling has to be optimized.

In order to optimize data access we have implemented an efficient computing scheme fdetection of relevant basis functions. Relevant in this context comprises all functions that dvanish at a given position , i. e.

(5.26)

As a fast and accurate detection of these quadruples is very important to restrict the comtional costs for the reconstruction. We define

(5.27)

From the definition of the dilation parametersm and translation parametersp it can be easilyverified that

(5.28)

Thus for eachm and any given position we can compute the translat

indicesp, q, andr of the relevant basis functions as

(5.29)

α x si( ) y si( ) z si( ), ,( )

χ x si( ) y si( ) z si( ), ,( )

A si

L x n 0 i, , ,( )

i

si sL>

L x n 0 i, , ,( ) 1≥

eA sE si,( )–

0≈

x si( ) y si( ) z si( ), ,( )

rel f si,( )= m p q, , r( , ) Z4 x si( ) y si( ) z si( ),,( ) supp fmpqr3( )∈( )∈

l f r f,[ ]= supp f( ) f φ ψ, ∈

supp fmp( ) 2m

l f p+( ) 2m

r f p+( ),[ ] f φ ψ, ∈=

x si( ) y si( ) z si( ), ,( )

x si( ) 2m⁄ r f– p x si( ) 2m⁄ l f–≤ ≤

y si( ) 2m⁄ r f– q y si( ) 2m⁄ l f–≤ ≤

z si( ) 2m⁄ r f– r z si( ) 2m⁄ l f–≤ ≤

Page 121: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

5.5 Implementation 103

plicitof thent ren-e andontrolot be

struc-ed lists.

esents

step,order

corre-

ges of

ee

5.5.2 Spatial Data Structures

Since our image order renderer visualizes data directly from the wavelet domain, no exinverse wavelet transform is required. The wavelet domain rendering takes advantagesparse representation of the decomposed data set and allows us to implement an efficiedering scheme. The implemented data structure is optimized in terms of memory spaccomputation time for the quadrature scheme. Obviously, the sizes of the support regions cthe number of relevant basis functions at a given sample point. Since this number cannoptimized by the data structure, we have to focus on the efficient data handling. Our datature therefore exploits the spatial coherence of the decomposed data set as we use sort

Each of the list elements is sorted with respect to the parameter . This parameter repr

the value ofs, where the ray leaves the support region of the 3D basis function f.

From the definition of the basis functions we have that for each wavelet-type and dilationthe supported regions do not differ in their sizes and all boundaries are parallel. Hence, in

to obtain the parameter , the ray has to be intersected only with three edges of the

sponding motherfunction inx, y, andz direction.

We can compute the intersection parameters of the ray with the three possible leaving edthe supported region of the function as:

(5.30)

Furthermore, we define a differential sampling parameter

(5.31)

For each translation parameterp, q, andr that were detected as relevant by (5.29), the thrintersection parameters inx, y, andz direction can be computed as

(5.32)

sLf

sLf mpqr

f m000

f m000

sL axes,f m000

r f m000 axis, xaxis–

naxis---------------------------------------- if saxes 0>

∞ if saxes 0=

l f m000 axis, xaxis–

naxis--------------------------------------- if saxes 0<

= axis x y z, , ∈

dsf m000 axis,

r f m000 axis, l f m000 axis,–

naxis-------------------------------------------------- if saxes 0≠

0 otherwise

=

sL x,f mpqr=sL x,

f m000 p dsf m000 x,⋅+

sL y,f mpqr=sL y,

f m000 q dsf m000 y,⋅+

sL z,f mpqr=sL z,

f m000 r dsf m000 z,⋅+

Page 122: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

104 5. Local Illumination: Image Order Rendering

spe-

resultsoher-

d effi-ositionaccesslues sig-

eby a

. Ae rel-nish.

nce thethesewith

ethod

f the

Finally, the actual leaving parameter , that is associated with the support region of a

cific basis function , can be determined from

(5.33)

Figure 5.3 depicts the setup for two dimensions.

Generally, instead of accessing the data directly from the static octree data structure thatfrom the wavelet transform, we generate an optimized list data structure that exploits the cence of the data along the ray. Using a list data structure for each ray allows a flexible ancient traversal of the required parameters. Since these parameters depend on the pixel px, we have to generate this data structure for each ray. Therefore, our concept for fast databases on a separate chaining method that allows increasing the access rate to the data vanificantly. These chains consist of two levels:

• First level: This level stores different levelsm of the wavelet decomposition and thlinks to the second level chains. The first level chain is illustrated in figure 5.4 (a)vertically oriented list, connected by pointers.

• Second level: In this level, one linear linked list is associated with each wavelet typenew function list element is added to the list if the basis function was detected to bevant at the actual sampling point and if the associated coefficient does not vaNotice that this strategy can be seen as a hierarchical space leaping process, sidata structure eliminates areas that do not contribute to the final image. Thus,areas will be skipped in the integration process. The list elements are ordered

respect to the leaving parameters . This sorting order supports a consistent m

for removing the coefficients, since each element can be removed from the list, i

Figure 5.3: Relevant parameters for the computation of

sLf mpqr

f mpqr

sLf mpqr min sL x,

f mpqr sL y,f mpqr sL z,

f mpqr, ,

=

x

l f m000

sL x,f m000

r f m000 y, xy–Support region of

fm000

n

sL y,f m000

x

y

r f m000

r f m000 x, xx–

sleaving

sLf mpqr

Page 123: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

5.6 Results 105

he

Asf the

ns ar

(c).

ualityferentf theolume

x 256 xing-ject,les.

sagit-n be

actual sampling parameters is found to be larger than the leaving parameter . T

second level chain is illustrated in figure 5.4 (a) by the horizontally oriented lists.depicted in figure 5.4 (b), the first list element specifies methods and parameters ocorresponding class of functions. The function class descriptor further contaipointer to the first RGBα list element. Each RGBα list element contains the scalawavelet or scaling function factor (c or d), the basis function translation indices (p, q,

andr) and the leaving parameter . An abstract list element is shown in figure 5.4

5.6 Results

The new volume rendering algorithm described in this chapter delivers accurate high-qimages at reasonable rendering times. In this section, we will discuss details and difaspects of the rendering algorithm. The algorithm will first be tested for different orders obasis functions. A second consideration addresses the compression properties of the vrepresentation. Therefore, the rendering concept was tested using two data sets: a 128128 coefficient CT-foot data set (courtesy of the Mallinckrodt Institute of Radiology, Washton University) and the RGB-visible human data set (courtesy of the Visible Human ProNational Library of Medicine, copyright (C) 1995) represented by 128 x 128 x 128 RGB trip

5.6.1 Variation of the B-spline Order

Four images with different B-spline orders are presented in figure 5.5. The images show atal view into the visible human RGB-data set and displays the high image quality that ca

Figure 5.4: Data organization for wavelet based volume ray casting:(a) separate chains, (b) function class descriptor, (c) RGBα list ele-ment.

sLf mpqr

sLf

RGBα4 coefficients:

index:pqr

leaving parameter:sL

Pointer to next element

dmpqrχR dmpqr

χG dmpqrχB dmpqr

α

cMpqrχR cMpqr

χG cMpqrχB cMpqr

α

RGBα RGBα RGBαψφφ

RGBα RGBα RGBα

RGBα RGBα RGBαψψφ

RGBα RGBα RGBαφφψ

RGBα RGBα RGBαψφψ

RGBα RGBα RGBαφψψ

RGBα RGBα RGBαψψψ

φψφ

NIL

RGBα RGBα RGBαψφφ

RGBα RGBα RGBα

RGBα RGBα RGBαψψφ

RGBα RGBα RGBαφφψ

RGBα RGBα RGBαψφψ

RGBα RGBα RGBαφψψ

RGBα RGBα RGBαψψψ

φψφ

RGBα RGBα RGBαφφφ

levelm=m0

levelm=M

φφφ...ψψψmethods:

definitions of waveletsand/or scaling

functions

parameters:dsx, dsy, dsz

Pointer to first RBGαlist element

or

(a) (c)

(b)

Page 124: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

106 5. Local Illumination: Image Order Rendering

eals that

-foothical

r andque,luenceper-d in a

ssian-plied

ent

e-re-

achieved. Note that due to theC -1 continuity of the Haar function ( ),no gradient can bcalculated and a shading model cannot be applied. The comparison of the images revefor increasing order of the splines, the volume representation becomes smoother.

5.6.2 Approximation Properties

In order to test the approximation properties of our algorithm, we used the color-coded CTdata set. Initially, a three-level wavelet decomposition is computed to obtain a hierarcrepresentation of the data set.

Figure 5.6 shows the rendered images in the case of linear B-spline functions. The loweupper rows only differ by the extinction functions. In the upper row the skin is rendered opawhereas in the bottom row only the bones appear opaque. These images illustrate the infof various positions of the local Gaussian threshold filter to the final image. The filtering oation can be considered as a local lossy compression of the data set. It is implementestraightforward way by computing the support region of the basis functions and the Gauweighted distance from the center of the filter as described in section 2.5. The filter is ap

Figure 5.5: Sagittal view into the visible human data set rendered with differbasis-functions: (a) order 1(Haar), (b) order 2, (c) order 4,(d) order 6. Decomposition level:M=m0=0.

Figure 5.6: Local level of detail applied to the CT-foot data set,M=3, linear B-spline wavelets: (a) original data set, (b) Gaussian centered at togion, (c) Gaussian centered at heel-region.

j 1=

(a) (b) (c) (d)

(a) (b) (c)

Page 125: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

5.6 Results 107

f thel con-ence.

ase of5.6.enternalringo theears

eepe allfer byeen ases are

Theations.whatctions

-re-

to theR, G, B, and components of the data set. Due to the localization properties owavelet functions and the local influence of the Gaussian filtering process, we have locatrol of the level of detail. Figure 5.6 (a) shows the linearly approximated data set as a refer

Figure 5.7 demonstrates the localization properties of the wavelet representation in the ccubic B-spline functions. The filter positions are chosen identically to the positions in figureSimilar to the linear spline functions, we can observe that the position of the Gaussian csignificantly influences the approximation of the volume rendering integral. The positiovariations of the Gaussian filter are illustrated in (b) and (c). We note that since the filteoperation is applied to all three components colored artifacts become visible in addition tblurring effect. Compared to the linear basis functions in figure 5.6 the volume appsmoother and less artifacts become visible.

To illustrate the effects of global filtering of the volume data to the resulting image we k(with full accuracy) all wavelet coefficients that exceed some threshold and we removwavelet coefficients equal or below. Figure 5.8 shows two sequences of images that difthe number of wavelet coefficients that have been kept. For both rows, image (a) can be sa reference image, since 100% of the coefficients are kept. The three subsequent imagcomputed with 5.04% (b), 1.92% (c), and 0.15% (d) of the original wavelet coefficients.latter images illustrate the kind of compromises made by the truncated wavelet representAs we expected, high frequency information like the model’s joints are washed out intoamounts to large homogeneous regions. The structure of the underlying basis funbecomes obvious and strongly influences the rendered image.

Figure 5.7: Local level of detail applied to the CT-foot data set,M=3, cubic B-spline wavelets: (a) original data set, (b) Gaussian centered at toegion, (c) Gaussian centered at heel-region.

α

(a) (b) (c)

Page 126: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

108 5. Local Illumination: Image Order Rendering

r

Figure 5.8: CT-foot data set,M=3, upper row: linear B-spline wavelets, lowerow: cubic B-spline wavelets:(a) original data set (100%), (b) 5.04%, (c) 1.92%, (d) 0.15%.

(a) (b) (c) (d)

Page 127: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

6

heoryy cor-atio-ndling.

pro-

tions.tatic

eaterlightd on

f coher-olvestes.when

ing anlume

off-nter-ted asduc-asedecom-

6LOCAL ILLUMINATION :OBJECT ORDER RENDERING

The image order rendering method introduced in chapter 5 is optimized to apply wavelet tin order to obtain accurate high quality images that feature opacity, shading, and physicallrect exponential transfer effects. However, the algorithm to accomplish this, is still computnally expensive due to the accurate integration schemes and the complexity of the data haThis chapter presents a new memory-efficient volume rendering algorithm that featuresgressive multi-frame rendering of opacity projections.

6.1 Introduction

Motion and interactive frame rates are often prerequisites for understanding opacity projecAlready today, commercial medical imaging systems generate film loops in addition to simagery. Furthermore, the amount of information gained from a motion study is much grif the motion is under interactive control, for then the users can vary the motion to highwhat they are currently focusing on. Our object order volume rendering algorithm is basetwo key ideas: coherence and progressive refinement. This approach takes advantage oence by the multiresolution representation of volume data. The progressive refinement invsimplifying both, the model and the rendering algorithm, which allows interactive frame raThe progression automatically switches to compute successively higher resolution imagesfree time is available, i. e. when the user pauses the interactive manipulation after choosoptimal position. Figure 6.1 displays the abstract rendering pipeline for object order vorendering.

The algorithm works directly on the multiresolution representation of the volume data. Theline precomputation step sorts the coefficients in order to their energy contribution. The iactive rendering scheme accumulates the projection of each basis function, often denofootprintor splat, into a projection image. Progressive refinement proceeds by gradually reing the reconstruction error associated with the approximation. Due to the image-bapproach, the reconstruction step itself is embedded in the rendering process. Thus, the dposed data set does not have to be explicitly reconstructed in the object space.

109

Page 128: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

110 6. Local Illumination: Object Order Rendering

e, ren-ciency

e. Ite pro-ition

om-tation

andard

e wasodify

ed tometer

This concept reduces the memory requirements of the system dramatically. Furthermordering only requires simple and hardware assisted operations, which guarantee high effiof the algorithm

This chapter will describe the ray intensity function that is approximated by our techniqualso outlines the fast and accurate frequency domain approach for the computation of thjected wavelet functions. A new multiview rendering concept takes advantage of the definof the basis functions and allows for a parallel rendering of different views with a minimal cputation overhead. We also analyze the approximation errors and propose our implemenconcept that features progressive image generation at interactive frame rates on a stworkstation. Finally, we will discuss the results that are achieved from this method.

6.2 Ray Intensity Function

In contrast to the image order technique described in chapter 5, our object order techniquintended to provide interactive frame rates. In order to meet this requirement, we have to mthe volume rendering model. By assuming an isotropic medium with constant opacityα, thevolume rendering equation (3.65) reduces to

(6.1)

Due to the local support of the used basis functions and since the viewing point is assumbe located not within the volume, we can set the entering parameter and leaving para

of the viewing ray to and respectively. Hence we have

Figure 6.1: Abstract rendering pipeline

Initial data set

Wavelet decomposition

Accumulation ofweighted footprints

Refinement

Rendering

Ordering of coefficients

Interaction

Transformation (off-line)

Rendering (on-line)

L x n,( ) χ x s'n+( )e ks'–s'd

sE

sL

∫=

sE

sL ∞– ∞+

Page 129: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

6.2 Ray Intensity Function 111

tation

.1.4,encee canand

d bybe

hysi-ine

ws the

(6.2)

The multiresolution decomposition of the volume emission term yields

(6.3)

Equation (6.3) reveals that the rendering process is accomplished in a two-step compuscheme

1. Computation of the projected basis functions to achieve 2D footprints

2. Weighted accumulation of footprint

As the weightscanddcan be derived from the fast wavelet transform described in section 2we have to focus on the efficient computation of the line integral projections. The coherthat our algorithm exploits arises when computing orthographic views. In this case, onobserve from (6.3) and the definitions of the self-similar basis functions in (2.84), (2.4),(2.7) that all footprints can be derived from eightmother-footprintsby scaling and translating.As depicted in figure 6.2, the mother-footprints at projection-plane resolution are deriveprojecting the functions at level and translation index (0,0,0). This concept will

explained in section 6.5 in more detail.

It is important to note that (6.1) does not exhibit opacity effects. For most purposes, the pcally-correct depth cueing effect is sufficient to gain insight in the volumetric data, to determthe shape, and to detect spatial relationships of an object. However, this model also allo

Figure 6.2: Projection of two 3D basis functions down to a 2D footprint.

L x n,( ) χ x s'n+( )e ks'–s'd

∞–

∫=

L x n,( ) dmpqrχ type, ψmpqr

3 type, x s'n+( )e ks'–s'd

∞–

∫type 1=

7

∑p q r Z∈, ,

∑m m0 1+=

M

∑=

cMpqrχ φMpqr

3 x s'n+( )e ks'–s'd

∞–

∫p q r Z∈, ,

∑+

m0

3D mother-basisfunctionφm0000

Mother-footprint

Projection plane

3D basis functionφm0 1 pqr,+

Footprint

Subsampling and translation (2D)

Scaling and translation (3D)

Projection

Page 130: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

112 6. Local Illumination: Object Order Rendering

ostic

ection[90].g func-e fre-urier-

lows

he fre-

ithmsoachescom-f thelue of

,

simulation of X-ray images by setting . This rendering technique is preferred by diagnradiologists, since nothing is hidden from view.

6.3 Fourier Projection Slice Theorem

The generic concept applied by any object order volume rendering technique is the projof the reconstruction kernel onto the projection plane in order to compute the 2D footprintIn the case of wavelet-based volume rendering, however, we use 3D wavelets and scalintions as the reconstruction kernels. Based on the definition of the basis functions in thquency domain, the computation of the projection can be easily accomplished by the Foprojection slice theorem [23]. We will introduce next an extension of this theorem, which alus to incorporate depth cueing effects in the footprint computation.

For clarity, we will use lowercase to denote the spatial domain and uppercase to denote tquency domain, such that

(6.4)

In an effort to reduce costs for the computation of the projections, frequency domain algorbased on the Fourier projection slice theorem have been proposed [59, 84]. These apprdo not provide physically correct exponential decay. This fundamental visual cue can beputed in the frequency domain without any computational overhead. From the definition oFourier transform, we have that the integral of a one-dimensional signal is equal to the vaits spectrum at the origin, since

(6.5)

This term can be furthermore extended by aphase-shift operationto achieve exponential decaysuch that

(6.6)

Consequently, we have for the frequency domain

(6.7)

k 0≡

H f( ) h t( )e i2πft–td

∞–

∫=

H 0( ) h t( )e i2π0t–td

∞–

∫ h t( ) td

∞–

∫= =

h t( ) h t( )ekt=

h t( )ei2π f 0t–

= where f 0ki2π------=

H f( ) h t( )ei2πfttd

∞–

∫=

h t( )ei2π f f 0–( )t

td

∞–

∫=

H f f 0–( )=

Page 131: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

6.4 Wavelets in Frequency Domain 113

e lineFou-

urier

e ren-inter-do notdatafactortime

ls).

oblemtions

ain in

e-

The Fourier projection slice theorem extends the one-dimensional concept to compute thintegral projections to higher dimensions. For a 3D volume, the theorem states that the 2Drier transform of a projection of a function at some angles equals a slice of the 3D Fo

transform of the same function at some angles . This is illustrated in figure 6.3.

Despite their theoretical advantages in terms of speed, classical frequency domain volumdering approaches as described in [59, 84] suffer from a major problem, namely the highpolation costs. Because the sample points of the 3D spectrum and those of the 2D slicecoincide except at the origin, the 3D spectrum of previously forward Fourier transformedset must be interpolated and resampled in order to extract a 2D slice. Due to the constantassociated with the interpolation, current implementations spend most of their computation

in interpolation, making the algorithm not attractive for practical data sizes ( voxe

In contrast to classical frequency-domain approaches mentioned before, no resampling prmay occur in our approach since the slice is extracted from continuously defined funcdirectly in the frequency domain.

6.4 Wavelets in Frequency Domain

Based on the definitions of the used B-spline basis functions given in the frequency dom(2.59) and (2.60), the phase-shifted basis functions can be written as

(6.8)

where

(6.9)

Figure 6.3: Illustration of the Fourier projection slicing theorem in 3D for an idalized Shannon wavelet.

α β,( )α β,( )

ω1

ω2 Slicing plane

Φ ω1 ω2 ω3, ,

u

v

φ x µ ν t, ,( ) y µ ν t, ,( ) z µ ν t, ,( ), ,( )

∞–

∫ dt

ν

µ

Slic

ing

iFF

T

Frequency domain Spatial domainFrequency domain

α

β

u

v

n

ω3

Φ u v,( )

2563≥

Φ j[ ] f( ) 1 ei2π f f 0–( )–

–i2π f f 0–( )

----------------------------------

j

=

Ψ j[ ] f( ) R j[ ] eiπ f f 0–( )–

Φ j[ ] f

2---

=

R j[ ] eiπ f f 0–( )–

1

2--- ξ j n, e

iπ f f 0–( )–

n

⋅n ∞–=

∑=

Page 132: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

114 6. Local Illumination: Object Order Rendering

formm theriva-

ectortion

direc-e can

lane,e fastrates

uresooth-

con-utation

ormal

The definition of the non-standard basis in (2.84) and the properties of the Fourier transreveal, that the definitions for 3D basis functions in the frequency domain are achieved frotensor product of the 1D definitions. In general we have for the Fourier transform of the t

riate function :

(6.10)

Analogous to the one-dimensional case mentioned before, the phase-shift vallows to compute a depth-cued projection. Since the cueing direc

can be chosen independently from the viewing direction we can use this parameter as thetion of a planar light source. Due to the separable basis functions, defined in (6.10), w

easily extract a slice of discrete sample points from the Fourier transform along a pwhich includes the origin and is parallel to the image plane. On this 2D texture an inversFourier transform (iFFT) has to be performed to achieve the projection. Figure 6.3 illustthe different steps of the footprint computation.

Figure 6.4 depicts examples of footprints for different order B-spline functions. The pictfrom left to right illustrate the increasing sizes of the support regions and the increasing smness of the projected functions for high-order functions.

6.5 Computation of Wavelet Splats

We now turn our attention to the explicit computation of the discrete wavelet splats. In thistext we have to analyze the influence of the parameters that are necessary for the compof the splats.

6.5.1 Parameterization

Since the viewing direction equals the normal of the slicing plane we can define an orthonsystem of vectors as follows:

Figure 6.4: Footprints of cardinal B-spline functions with order:(a) j = 1, (b)j = 2, (c)j = 4.

h3

x y z, ,( ) h1 x( ) h2 y( ) h3 z( )⋅ ⋅=

H3

f 1 f 2 f 3, ,( )

h1 x( )h2 y( )h3 z( )ei2π f f 0 x,–( )x f f 0 y,–( )y f f 0 z,–( )z+ +( )–

xd yd zd

∞–

∫∞–

∫∞–

∫=

h1 x( )ei2π f f 0 x,–( )x–

xd

∞–

∫ h2 y( )ei2π f f 0 y,–( )y–

yd

∞–

∫ h3 z( )ei2π f f 0 z,–( )z–

zd

∞–

∫⋅ ⋅=

f 0 f 0 x, f 0 y, f 0 z,, ,( )=

H

(a) (b) (c)

Page 133: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

6.5 Computation of Wavelet Splats 115

tion,

sizesling

direc-and

the

ts.

(6.11)

Here,n denotes the normal vector of the slicing plane, which is parallel to the viewing direcwhereasu andv describe the orthonormal basis vectors that span the slicing plane.

The iFFT requires a sampling of the slicing plane. Therefore we define two sampling stepin u andv direction as and . The plane is thus discretized by the following samp

points:

(6.12)

Due to the separable definition of the phase-shifted 3D basis function in (6.10), the cueingtion can be chosen independently from the viewing direction. For two given angles ,

the depth cueing factor the depth cueing vector equals

(6.13)

yielding the phase shift vector

(6.14)

Figure 6.5 illustrates the effect of different cueing directions and cueing coefficients forcomputed Haar-footprints.

Figure 6.5: Footprint for different cueing directions and cueing coefficienViewing direction: .

n

αcos βcos

αsin βcos

βsin

= u

αsin–

αcos

0

v n u×αcos βsin–

αsin βsin–

βcos

= = =

∆u ∆v

pr s, r ∆uu s∆vv wherer s, Z∈+=

αl βl

k

k αl βl,( ) k

αlcos– βlcos

αsin l βlcos

βlsin

kx

ky

kz

= =

f 0 αl βl,( )ik αl βl,( )

2π-----------------------=

k0.

2=

k0.

1=

αl βl,( )0 π 4⁄,( )

= αl βl,( )0 π 2⁄,( )

= αl βl,( )0 3π 4⁄,( )

= αl βl,( )3π 4⁄ 3π 4⁄,( )

= αl βl,( )π π,( )

=

α β,( ) π 4⁄ 0.52,( )=

Page 134: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

116 6. Local Illumination: Object Order Rendering

ghteded ver-

an

d very

ctionsder-

com-plane.veletcueing

tance

s tan-

iven a

dis-

of theepth

hieved

s.

Referring to equation (6.3), the rendering process is carried out by accumulation of weifootprints. The corresponding basis functions are constructed by the scaled and translat

sions of eight mother-functions, namely ( ) and . In case of

orthogonal projection and X-ray image generation, these operations can be transferreeasily into projection plane operations: scaling that is parameterized bym is accomplished bysubsampling of the computed 2D footprints. Furthermore, the translations of the basis funthat refer to thep, q, andr parameters result in different positions of the splat. Thus, the rening is then performed by simple and efficient 2D operations on the projection plane.

For correct depth cueing of the volume, according to equation (6.3), the intensities of theputed mother-footprints have to be weighted according to their distances from a referenceIn addition, these weights are multiplied by the coefficients that are achieved from the watransform. The reference plane can be seen as a planar light source, perpendicular to thedirection that sends parallel light rays into the isotopic volume. To compute the correct dis

weights, let represent the intersection point of the volume’s bounding sphere and it

gent plane. This tangent plane is parallel to the planar light source mentioned before. G

basis function centered at , we can achieve the corresponding

tance weights from

(6.15)

The geometric relationships are depicted in figure 6.6. Figure 6.7 illustrates the effectsdepth cueing operation. As shown in figure 6.7 (c) the unweighted accumulation of two dcued footprints entails an incorrect representation, whereas the correct result, which is acwith the correct distance weight is illustrated in figure 6.7 (d).

Figure 6.6: Geometric relationships for distance-weighting of basis function

ψm00003 type, type 1 ... 7, , ∈ φm0000

3

x

z

y

k

kinit

bmid

VM

P

Planar light source(tangent plane of bounding sphere)

Bounding sphere for volumedata set

k P⋅k

-----------

kinit

h x y z, ,( ) bmid P kinit+=

ωdist

ωdist e

k P⋅k

-----------–

=

Page 135: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

6.5 Computation of Wavelet Splats 117

mula-gen-

tes to afaster

ce.

theters.paredhese

pro-stan-

of

As a result, the rendering process of the depth-cued volume is accomplished by the accution of the weighted, subsampled, and translated footprints. Thus, for both the X-ray imageeration and the depth-cued image generation, the volume rendering process degenerapure 2D concept at image plane resolution and can be performed an order of magnitudethan traditional volume rendering approaches that work in the full three-dimensional spa

Figure 6.8 demonstrates the fidelity of our splatting algorithm. The images illustrateextracted skull from the visible human CT data set with four different depth cueing parameIt is noteworthy that exponential depth cueing further increases the rendering speed comto the X-ray image since more footprints do not contribute to the final image. Therefore, tfootprints can be skipped for rendering.

6.5.2 Optimized Sampling Rate

Our rendering concept requires a two-dimensional iFFT in order to compute the discretejection values. The computation of an optimal sampling rate in the frequency domain is sub

Figure 6.7: Exponentially depth-cued scaling function (j=1):a) |k| = 0.0,b) |k| = 0.2 distance weighted footprints,c) depth cued splats without distance weighting,d) corrected splats using distance weighting.

Figure 6.8: Influence of different cueing parameters and directions.(data source: Visible Human Project, courtesy National LibraryMedicine, copyright (C) 1995)volume size: 2563, max. decomposition level M=3(a)-(c): α = αl = 2.5,β = βl = 0.1, (a) |k| = 0, (b) |k| = 0.1,(c) |k| = 0.2, (d) α = 2.5, αl = π/4, β = 0.1,βl = 0.3, |k| = 0.2.

t

k

φt

k

φt t

kk

φ φ

(a) (b) (c) (d)

(a) (b) (c) (d)

Page 136: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

118 6. Local Illumination: Object Order Rendering

loball sam-g the-he

pling

ere

the

patialose

mple

of thesup-

ng,nd

tial since it controls both performance and accuracy of the algorithm. For an exact and gerror computation we have to discuss the requirements imposed by the two dimensionapling theorem. To develop this theorem, we extend the common one-dimensional samplinorem. We assume that the two dimensional function has been sampled in t

direction by a stepsize of and sampled in the direction by . Due to the Fourier sam

theorem and (6.12) we have

(6.16)

The resulting sampled function in spatial domain equals , wh

and . Analogous to the one-dimensional case,

two-dimensional inverse discrete Fourier transform is defined as

(6.17)

When applying the two-dimensional inverse FFT, we must be careful in setting up the sfrequency-data matrix. Starting from a band-limited two-dimensional function wh

Fourier transform is , where

(6.18)

we apply the Nyquist criteria independently in the two dimensions. That is, we must sa to obtain , such that and satisfy the relationships

(6.19)

For the computation of the 2D footprints, however, we have to consider the opposite caseinverse Fourier transform of a function whose spatial representation is compactlyported with

(6.20)

where and denote the lower and upper bound of the support region of the functionh in

the spatial domain. In order to compute an optimal resolution of the iFFT that avoids aliasithe Nyquist criteria has to be considered. If we set a

we obtain for the sampling distances in the frequency domain

h µ ν,( ) µ∆µ ν ∆ν

∆u1

∆µ------= and ∆v

1∆ν------=

h p∆µ q∆ν,( )

p 0 1 ... Nµ 1–, , ,= q 0 1 ... Nν 1–, , ,=

h p∆µ q∆ν,( ) 1Nν------- 1

Nµ------- H

rNµ∆µ-------------- s

Nν∆ν-------------,

e

i2πrpNµ

--------------

r 0=

Ny 1–

e

i2πsqNν

--------------

s 0=

Nµ 1–

∑=

h µ ν,( )H u v,( )

H u v,( ) 0= for u uc≥ v vc≥,( )

h µ ν,( ) h p∆µ q∆ν,( ) ∆µ ∆ν

∆µ1

2uc--------≤

∆ν1

2vc--------≤

H u v,( )

h µ ν,( ) 0= for lhµµ r hµ

≥ ≥ lhνν r hν

≥ ≥,( )

lh r h

µc max lhµr hµ

, =

νc max lhνr hν

, =

Page 137: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

6.5 Computation of Wavelet Splats 119

ince of

rans-the

ed byiodic

ction

sder

(6.21)

Figure 6.9 depicts this situation for theu axis. As shown in that figure, the sampled functionthe frequency domain function equals the product of the waveform and the sequen

Dirac impulses separated by . This sequence is often denoted asfrequency sampling func-

tion. From the frequency-convolution theorem we know that the desired inverse Fourier tform is the convolution of the spatial function and the inverse Fourier transform offrequency sampling function, denoted as thesampling function. Similar to the frequency sam-pling function its inverse Fourier transform equals a sequence of impulses separat

. The inverse Fourier transform of the sampled waveform turns out to be a per

function, where one period is equal to the inverse Fourier transform of the continuous fun.

We are now focussing on the computation of sampling points for different iteration levelm.From (2.67) we have for the support of the B-spline scaling functions and wavelets of orj

Figure 6.9: Fourier transform of spatially-limited functions:(upper row) continuous functions,(lower row) frequency-domain sampled functions.

∆u1

2µc---------≤

∆v1

2νc--------≤

u µ

h µ( )H u( )

00

lhµr hµ∆u

u µ

µc

∆µ

h µ( )H u( )

00

ucH

Frequency domain Spatial domain

(b)

Inve

rse

Fou

rier

tran

sfor

m

Inve

rse

Fou

rier

tran

sfor

m

H u( )∆u

h µ( )

∆µ 1 ∆u⁄=

H u( )

Page 138: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

120 6. Local Illumination: Object Order Rendering

ency

g

ute the

ially-

lgo-

define

evel

e fre-

of

e

(6.22)

Following (6.21), we can compute the distance between the sampling points in frequdomain for the scaling and wavelet functions as

(6.23)

with . That is, as the decomposition levelm increases, the distance of the samplinpoints in frequency domain decreases to avoid aliasing effects in the spatial domain.

Since we have now analyzed the distance of the sampling points, we are tempted to comp

optimal number of sampling points in the frequency domain. Since and are spat

limited, their Fourier transforms and cannot be band-limited. Since the iFFT a

rithm deals with finite length sequences, we have to truncate the support. Therefore, we

the finite support approximation functions and of the wavelet-decomposition lM as

(6.24)

From (6.23), the number of sampling points for the decomposition levelM is given as

(6.25)

To keep the notation consistent, in figure 6.9 the upper bound of the support region in th

quency domain is denoted as since we are dealing with the Fourier transformation

along theu-axis.

Due to the fact that different levelsm are related by the spatial domain scaling factor , wcan apply the spatial scaling Fourier transform property, namely

(6.26)

supp φm0j[ ]( ) 0 2

mj,[ ]=

supp ψm0j[ ]( ) 0 2

m2 j 1–( ),[ ]=

∆eφm0

j[ ] 1

2 2m

j⋅----------------≤ 1

2m 1+

j----------------=

∆eψm0

j[ ] 1

2 2m

2 j 1–( )( )⋅--------------------------------------≤ 1

2m 1+

2 j 1–( )---------------------------------=

e u v, ∈

φm0j[ ] ψm0

j[ ]

Φm0j[ ] ΨM0

j[ ]

ΦM0j[ ]

ΨM0j[ ]

supp ΦM0j[ ]

( ) ecΦ

– ecΦ,[ ]=

supp ΨM0j[ ]

( ) ecΨ

– ecΨ,[ ]=

NeΦM

j[ ] 2ecΦ

∆eφM0

j[ ]----------≥

NeΨM

j[ ] 2ecΨ

∆eψM0

j[ ]-----------≥

ucH

H u( )

h µ( )

2m–

FT h 2m–

x( )( ) 2m

H 2m

f( )=

Page 139: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

6.5 Computation of Wavelet Splats 121

the

ut theof this

of theputed

igatespa-

elratefra-

againf the

Thus, for different levelsm the expression (6.24) can be rewritten as

(6.27)

Therefore, by increasingm, we increase the support of the basis functions and in

spatial domain. As the spatial scale expands, the frequency scale not only contracts, bamplitude increases vertically such that it keeps the area constant. A pictorial descriptionproperty is illustrated in figure 6.10.

Note that as the support of the function in the frequency domain increases, the distancesampling points increases by the same factor. Therefore, the function values that are comat the sampling points in the frequency domain do no not change for different scalesm.

We have to analyze the optimal number of sampling points next. In this context we investthe behavior of the footprints in the spatial domain. In order to compute the footprint in thetial domain, the continuous functions in the spatial domain have to be sampled with the pixof the framebuffer. Due to the convolution property of the Fourier transform, the discretemebuffer causes a periodic function in the spectrum. In order to avoid aliasing we canapply the Nyquist criteria. For a given pixel size ( ) the distances of the impulses o

frequency sampling function can be computed as

Figure 6.10: Spatial-scaling Fourier transform property:(upper row)m=M-1, (lower row) m=M.

supp Φm0j[ ]

( ) 2M m–

ecΦ

– 2M m–

ecΦ

,[ ]=

supp Ψm0j[ ]

( ) 2M m–

ecΨ

– 2M m–

ecΨ

,[ ]=

φm0j[ ] ψm0

j[ ]

lhµ

2------

r hµ

2------

u µ

h 2M 1–( )– µ( )2

M 1–H 2

M 1–u( )

00

u

2M

H 2M

u( )

0 lhµr hµ

µ

h 2M– µ( )

0

ucH

2ucH

Inve

rse

Fou

rier

tran

sfor

m

Inve

rse

Fou

rier

tran

sfor

m

δµ δν,

Page 140: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

122 6. Local Illumination: Object Order Rendering

ratesn.to the

(6.28)

Aliasing at the decomposition levelm can therefore be avoided if

(6.29)

To demonstrate the effect, which results from the discrete framebuffer, figure 6.11 illustthe functions for different decomposition levelsm in both frequency domain and spatial domaiWe observe that the functions in the frequency domain do not overlap each other due

given parameters and . Thus, aliasing is avoided.

Figure 6.11: Discretization in spatial domain:(upper row)m=M-1, (lower row) m=M.

δu1

2δµ---------≤

δv1

2δν--------≤

uc

δu

2M m0–

----------------≤

vc

δv

2M m0–

----------------≤

µ

h 2M 1–( )– µ( )

0

µ

h 2M– µ( )

0

u

2M 1–

H 2M 1–

u( )

0

u

2M

H 2M

u( )

Pixels

Pixels

Inve

rse

Fou

rier

tran

sfor

m

Inve

rse

Fou

rier

tran

sfor

m

δµ

δu ucH

=δu ucH

=

0

δuδu

ucH

ucH

ucH δu

Page 141: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

6.5 Computation of Wavelet Splats 123

s, thecorre-

ain,

-ries.

frame

and

uency

and

s. In

ng in

pling

re, we

6.12rgesttion

erva-

e dis-on forindi-ain by

e

We finally conclude from the upper observations that as the decomposition level increasenumber of pixels, which are covered by the splat increases simultaneously. Thus, the

sponding number of sampling points in the interval rises. In the frequency dom

however, the function contracts for increasingm. Therefore, the relative positions of the computed sampling points in the frequency domain do not change if the decomposition level va

As a result we have that all parameters can be computed from either the resolution of the

buffer and or the distances of the impulses of the frequency sampling function

. In our implementation the user can freely choose the parameters and in the freq

domain. Consequently, we have for the number of sampling points for the scaling functionthe wavelet

(6.30)

where again . This equation determines the spatial resolution of the footprint

order to achieve correct results and to avoid aliasing artifacts in the diagonal for the slici

3D, we add an additional factor of . Furthermore we are interested in the minimal sam

rate, since the computation of larger splats are computationally more expensive. Therefoset

(6.31)

We have now emphasized the point of an optimal sampling of the slicing plane. Figureshows an example for the computation of the footprints for three different levels. The lasplat is computed form=M. To compute the corresponding splat, we slice the mother func

. The number of sampling points can be computed by (6.31). Due to the upper obs

tions, the computation of the lower decomposition levels can be achieved by cropping thcrete slicing plane and perform an iFFT on these data sets. Therefore only the projectilevel M has to be computed. All other footprints can be extracted by this concept. As wecated in the introduction to this chapter, we can also compute the splats in the spatial dom

subsampling of the largest splat with 2M-m. Indeed, this method is the most efficient way for thfootprint-computation, since the iFFT has to be performed only at levelM.

δe– δe,[ ]

δµ δν δu

δv δu δv

NΦm

j[ ] ecΦ

2M m– 1– ∆e

φM0--------------------------------≥

NΨm

j[ ] ecΨ

2M m– 1– ∆e

ψM0---------------------------------≥

e u v, ∈

3

NΦm

j[ ] 3ecΦ

2M m– 1– ∆e

φM0-------------------------------- 1+=

NΨm

j[ ] 3ecΨ

2M m– 1– ∆e

ψM0--------------------------------- 1+=

ΦM000j[ ]

Page 142: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

124 6. Local Illumination: Object Order Rendering

Figure 6.12: Computation of the footprints for different decomposition levels.

u

v

u

v

µ

ν

2vcΦ

2ucΦ

∆u

∆ v

δµ

Slicing

m M= m M 1–= m M 2–=

iFFT iFFTiFFT

Fre

quen

cy d

omai

nS

patia

l dom

ain

ΦM0j[ ]

Slicing planeC

rop

Cro

p

Sub

sam

ple

Sub

sam

ple

Initial basis function in the frequency domain

δ ν

Page 143: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

6.6 Error Analysis 125

pportducesta and

teredin

closeve, inte, to

by

nction

finiteencythisform

ationgththe

sipplereas-e costcom-

r

Table 6.1 gives optimal sampling rates for B-spline functions for different ordersj and iteration

levelsM with .

The results show that an optimal rate can be computed directly from the user-defined suregion in the frequency domain and the order of the used function. The next section introa new rendering concept, which takes advantage from the representation of the volume dathe computed splats.

6.6 Error Analysis

In this section we will discuss two problems of the iFFT computation. One problem encounwhen computing the inverse Fourier transform with the iFFT is aliasing. As statedsection 6.5, aliasing occurs if samples of the frequency function are not taken sufficientlytogether. The result is that the spatial function folds, or overlaps, on itself. As stated abothe case of time-limited basis functions one can easily compute the optimal sampling raavoid aliasing effects.

Another error commonly encountered arises from the frequency-domain truncation given

and . This error occurs when the total number of samples chosen to characterize the fu

in the frequency domain truncates the original frequency waveform. The product of the insequence of impulse functions and the truncation function yields the finite length frequfunction. Truncation introduces the second modification of the original Fourier transform;effect is to convolve the inverse Fourier transformed function with the inverse Fourier transof the truncation function, which equals thesinc-function ( ). Since we are using B-spline functions, which are not band-limited, this error always occurs. In general, truncproducesrippling in the iFFT results. To reduce this effect, it is desirable to choose the lenof the truncation filter as long as possible. Hence, if the truncation (rectangle) function infrequency domain is increased in length, then thesinc-function in the spatial domain approachean impulse; the more closely the function approximates an impulse, the less ror error is introduced by the convolution that results from truncation. On the other hand incing the length of the truncation function leads to more sampling points that increases thfor the splat computation. To further demonstrate the effect of data truncation, we have

puted the iFFT of the function illustrated in figure 6.13 fo

and .

Table 6.1:Sampling rates for B-spline wavelets and scaling functions

j=1 (Haar) j=2 (linear) j=4(cubic)

Scalingfunction

WaveletScalingfunction

WaveletScalingfunction

Wavelet

M = 0 9 9 17 25 32 56

M = 1 17 17 32 48 63 110

M = 2 32 32 63 94 125 218

M = 3 63 63 125 187 248 434

ecΦ

ecΨ

7 2π⁄= =

uc

vc

µ( )sin µ⁄

µ( )sin µ⁄

ΦM1[ ]

NΦM

1[ ]

16 32 64 128 256 512, , , , , = ∆eΦM

1[ ]

0.2=

Page 144: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

126 6. Local Illumination: Object Order Rendering

6.2.

ts. Onaccu-hard-

s for a

39

42

A detailed analysis of the truncation error for the one-dimensional case is given in TableThe error metric is given as the root mean square error

(6.32)

This table confirms that the error decreases with an increasing number of sampling pointhe other hand, more sampling points enforces lower frame rates, due to the iFFT and themulation of larger arrays. Thus, the optimal array size strongly depends on the availableware and the required accuracy for the image. Another observation is that the error rise

Figure 6.13: iFFT of the function: (a) , (b) ,

(c) , (d) , (e) ,

(f) .

Table 6.2:Error analysis for truncation effect

j=1 (Haar) j=2 (linear) j=4(cubic)

=0.1 =0.2 =0.1 =0.2 =0.05 =0.1

16 0.083392 0.082336 0.046289 0.033628 0.0377259 0.0279

32 0.041 0.041460 0.016809 0.012134 0.0139503 0.00998

64 0.020730 0.020611 0.006067 0.004313 0.0049901 0.0035

128 0.010317 0.010303 0.002156 0.001529 0.0017695 0.001252

256 0.005154 0.005155 0.000764 0.000541 0.000626 0.0004

512 0.002578 0.002584 0.000270 0.000191 0.0002213 0.000156

4 6 8 10 12 14 16

0.2

0.4

0.6

0.8

1

5 10 15 20 25 30

0.2

0.4

0.6

0.8

1

10 20 30 40 50 60

0.2

0.4

0.6

0.8

1

20 40 60 80 100 120

0.2

0.4

0.6

0.8

1

50 100 150 200 250

0.2

0.4

0.6

0.8

1

100 200 300 400 500

0.2

0.4

0.6

0.8

1

(a) (b) (c)

(d) (e) (f)

N N N

N N N

φM1[ ] φM

1[ ] φM1[ ]

φM1[ ] φM

1[ ] φM1[ ]

ΦM1[ ]

NΦM

1[ ]

16= NΦM

1[ ]

32=

NΦM

1[ ]

64= NΦM

1[ ]

128= NΦM

1[ ]

256=

NΦM

1[ ]

512=

Error trunc

φ p∆eΦM

j[ ]

φ p∆e

ΦMj[ ]

2

p 0=

NΦM

j[ ]

1–

NΦM

1[ ]----------------------------------------------------------------------------------=

NΦM

1[ ]

∆eΦM

1[ ]

∆eΦM

1[ ]

∆eΦM

2[ ]

∆eΦM

2[ ]

∆eΦM

4[ ]

∆eΦM

4[ ]

Page 145: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

6.7 Multiview Rendering 127

s duethatrs. Inboth

ltiviewtionsortho-iew.due toesultcan be

mple

rint

irec-ral, a

ly thenec-

decreasing order of the basis function and a constant length of the truncation filter. This ito the reduction of the continuity of the function in the spatial domain. It becomes obvioussampling of larger regions at the infinitely supported basis functions results in smaller erroterms of the Fourier projection slice theorem this result confirms that the computation oflarge splats and high order basis functions introduce less artifacts.

6.7 Multiview Rendering

This section addresses a new extension to volume rendering, namely the progressive murendering. The algorithm allows to render the volume data from two or three different direcsimultaneously and presents the images to the user in a single window. By using differentgraphic views, the user can confirm the position of certain regions from different points of vIn our wavelet-based approach we can exploit the coherence of different viewing anglesthe symmetry of the basis functions in 3D in order to keep the rendering times low. As a rof this coherence, the expensive splat computation has to be performed only once andused for different directions.

The basic concept of the tripleview rendering is illustrated in figure 6.14. Consider the exa

of the trivariate Haar-scaling function . Due to its definition we observe that the footp

from the first viewing-direction equals the footprint from the second and third orthogonal dtion. Thus, the calculated footprints can be reused for different viewing directions. In genepermutation lookup table for the mapping of different types (type) of basis functions has to begenerated to ensure correct footprint calculation. Furthermore, it is necessary to multipintensities of the splats by -1 in case of antisymmetric basis functions. Table 6.3 gives theessary permutations and negation indices for Haar functions.

Figure 6.14: Multiview concept:(a) trivariate basis function and three viewing directions(b) rendered images for the three directions.

Table 6.3:Permutations and negations

ViewsPermutations

(type)Negations(factor)

View 1 [ 0 1 2 3 4 5 6 7] [ 1 1 1 1 1 1 1 1 ]

View 2 [ 0 1 4 5 2 3 6 7 ] [ 1 1 -1 -1 1 1 -1 -1]

View 3 [ 0 2 4 6 1 3 5 7 ] [ 1 1 1 1 -1 -1 -1 -1 ]

y

z

x

View 2

View 1

Vie

w 3

View 1View 2

View 3φ0000

3 1[ ]

(a) (b)

φ00003 1[ ]

Page 146: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

128 6. Local Illumination: Object Order Rendering

nt andwe

ns

tweenles are

ageslored

ts the

A favorable feature of this approach is that these lookup tables are viewpoint independecan also be used for higher order basis functions. If the user defines the viewing angleshave for the basis vectorsu andv that span the projection planes of the three viewing directio

View 1: with

View 2: with

View 3: with

Notice that since all viewing directions depend on the same angles and , the angles bethe individual viewing planes cannot be chosen independently. Furthermore, these angnot constant as the viewing direction varies.

Examples of the triple view rendering concept are demonstrated in figure 6.15. The imshow a color coded MR data set. Skin is colored white, brain tissue red and a tumor is coblue. The triple view rendering gives a detailed analytic view of the data set and supporlocalization of the tumor intuitively in 3D.

Figure 6.15: Tripleview rendering of classified MR-data set(red: brain tissue, white: skin, blue: tumor):(a) ,(b) .

α β,

u1 v1,( ) u1

αsin–

αcos

0

ux

uy

uz

= = v1

αcos– βsin

αsin– βsin

βcos

vx

vy

vz

= =

u2 v2,( ) u2

αcos–

αsin–

0

u– y

ux

uz

= = v2

αsin– βsin

αcos βsin

βcos

v– y

vx

vz

= =

u3 v3,( ) u3

0

αcos

αsin

uz

uy

u– x

= = v3

βcos–

αsin– βsin

αcos βsin

vz

vy

vx

= =

α β

(a) (b)

α β 0= =α 0.66 β, 0.91= =

Page 147: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

6.8 Implementation 129

issues

sis, aducedntedine the

stepom-ingrmedren-. Thef thee ren-

feriorageroach

here-

the

d will

ients

coarse

frame

anceolorntially-colorssary

com-the

6.8 Implementation

In this section, the features of the implementation are described. It further discusses thethat arose in implementing the system and outline the choices that were made.

6.8.1 Rendering Pipeline

In order to prove the effectiveness of the object order algorithm presented in this thevolume rendering system was constructed which implements the concepts that were introin this chapter. The underlying rendering pipeline is illustrated in figure 6.16. The implemesystem allows to render both greyscale and colored data sets. In the first step of the pipelinitial volume data set is classified to achieve an RGB volume data set. The classificationis followed by a wavelet transformation. This transformation is performed on each color cponent individually. The following filtering step further reduces the number of non-vanishvalues. Similar to the image order rendering scheme this filtering operation can be perfolocally or globally. This filtering step is in spite of a lossy compression of the data set. Thedering process finally accumulates the weighted splats according to their spatial positionlarge number of non vanishing wavelet coefficients and the hierarchical organization ounderlying approximations suggests that is would be profitable to investigate a progressivdering method.

Our efficient approach allows interactive frame rates since the user can manipulate an inquality version of 3-D volume interactively in order to set up the viewing parameters. The imthen refines progressively when the viewing parameters do not change. Since this apprequires an ordered set of wavelet coefficients, we introduce the concept ofsignificance. Coef-ficients, which have a strong contribution to the final image are deemed more significant. Tfore, we can define the individual significance of the wavelet coefficientw and thecolor componentC as

(6.33)

were represents the wavelet coefficient and denotes

associated energy. The term describes the importance of each color component anbe discussed later in this section.

The introduction of the significance ensures that the most important lowpass coeffic

are rendered first. The user can define the amount of splats that is used as a first

representation of the volume data in order to achieve an optimal trade-off between therate and the resolution.

To further achieve an optimal representation of the data and therefore an optimal performof our algorithm, we introduce an optional color space transformation. The goal of the cspace transformations is to produce decorrelated coefficients. The transformation esseintends to remove all dependencies between samples. Therefore, it maps the initial RGBinformation into a second optimized color space. Note that for the final rendering, it is neceto convert the color spaces back to the RGB to ensure correct color representation.

The first optimized color space is based on the YIQ color model, which is used in the U.S.mercial color television broadcasting [70]. This model exploits two useful properties ofhuman’s visual system

S w C,( )

S w C,( ) E w C( )( ) I C( )⋅=

w C( ) dmpqrχ type, cMpqr

χ, ∈ E w C( )( )

I C( )

S

cMpqrχ

Page 148: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

130 6. Local Illumination: Object Order Rendering

.

sa-

tmi-

colorntionseffi-

• It is more sensitive to changes in luminance than to changes in hue or saturation

• Objects that cover a very small part of our field of view produce a limited color sention.

The first property suggests that we can provide higher resolution inY, i. e. the rendering systemhas to accumulate less coefficients for theI andQ components than for the more significanluminance componentY. The implemented algorithm ensures a distinct ratio between the lunance and color coefficients by assigning different importance factors to the differentcomponent. These factors are achieved by mapping of the NTSC bandwidth convedirectly to the importance function. In our implementation, we therefore multiply each cocientc andd with a significance factor 4 for theY component, 1.5 toI and 0.6 toQ.

Figure 6.16: Rendering pipeline for object order volume rendering.

R G B

C1

C2

C3

α

Slicing

iFFT

Data setBasis function

Classification

Wavelet transform

Filtering

Weighted accumulation of splats

Superimposing RGB images

RenderingInteraction

Tra

nsfo

rmat

ion

(off-

line)

Ren

derin

g (o

n-lin

e)

C1 C2 C3

R G B

Color space transformation:(R,G,B) → (C1,C2,C3)

Color space transformation:(C1,C2,C3) → (R, G, B)

Page 149: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

6.8 Implementation 131

t, i. e.lata as

timalationalues.lt fromsed toerings of

at theation,lt in ae theumu-

nder-ssive

itialssionesen-t, ourolutionementcom-Thiso be

ly thehow-iciente the

The second property allows to apply different threshold values for each color componenwe can filter the wavelet transformedI andQ information with a higher threshold. In practicause the YIQ color space allows to manipulate a greyscale representation of the volume da rough sketch and to refine the colors and the resolution progressively.

Our second color model is calculated for each data set individually by a statistically opprinciple component analysis (PCA) or Karhunen-Loève expansion [28]. The transforminto the space of principle components minimizes the cross-correlation of the single data vThe computed color space basis vectors, calculated by the PCA, are orthogonal and resuthe solution of an eigenvector problem. The corresponding absolute eigenvalues are udescribe the significance of the vector . For progressive transmission and rendit is highly likely that the PCA color space will help to achieve the best results in termmemory costs and rendering performance.

The importance weights are summarized in Table 6.4 for all three color spaces. Note thcomputational expensive segmentation, color space transformation, wavelet transformand filtering can be performed as a preprocessing step off-line. These operations resustream of significance ordered wavelet coefficients. The on-line computations only requirview dependent splat computation, projection, and accumulation. Note further that the acclation of the wavelet splats is computed in the (C1, C2, C3) color space. The back-transformatioto the RGB color space is performed for each projection individually, prior to the final rening. The rendering pipeline in figure 6.16 summarizes the rendering concept of our progrerendering scheme.

6.8.2 Generic Transform Coding

In addition to the compression gain, which is achieved from the wavelet transform of the involume data and the optimization of the color space, we can further improve the compreratio of our coding scheme. This ratio can be significantly increased by an optimized reprtation of the wavelet coefficients. In this context, two factors have to be considered. Firsimplemented coding scheme generates a single bitstream that represents the multiresdecomposition of the data set. Second, the volume coding method has no real-time requirsince it can be regarded as an off-line computation process. A common concept for thepression of wavelet coefficients is the embedded zerotree wavelet algorithm (EZW) [78].algorithm allows for progressive transmission and visualization of 2D images but can alsextended to higher dimensions. The order of progression used in the EZW is basicalnumerical precision of the coefficients. For the purpose of progressive volume rendering,ever, this ordering concept does not seem profitable. Since the value of a significant coeffis not send to full precision, the volume rendering integral has to be re-computed every timprecision is refined. Thus, the overall computation cost increases dramatically.

Table 6.4:Color space importance assignment

Color space ImportanceI

I(C1) I(C2) I(C3)

RGB 1 1 1

YIQ 4 1.5 0.6

Eigenvectors (PCA) Eigenvalue 1 Eigenvalue 2 Eigenvalue 3

S w C,( ) C

Page 150: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

132 6. Local Illumination: Object Order Rendering

s full

veletannelcon-

i-

In contrast to the EZW algorithm our approach transmits the values of the coefficients to itprecision in significance order. The coding scheme consist of three components:

• Transformation

• Quantization

• Compression

The corresponding coding scheme is depicted in figure 6.17. An off-linetransformationstepincorporates significance sorting, deltacoding, and normalization of the previously watransform and filtered coefficients. Each of these operations is performed for each color chindividually. Note that if the filtering threshold is set to zero, the transformation step can besidered to be lossless. If the threshold is larger than zero loss occurs in the filtering.

The transformation step is followed by thequantizationoperation, which is applied to eachchannelC, wavelet type (type) and decomposition levelmseparately in order to achieve an opt

Figure 6.17: Volume coding scheme.

Filtering

Deltacoding WC

Normalization ∆WC

Huffmancoding runlength

Bitstream (coefficients)

Runlength-coding

Deltacoding Pos

Bitstuffing

Huffmancoding ∆WC

Huffmancoding ∆Pos

Merge-Sort

type, depth, colorchannel

Quantization ∆WC

Sorting WC

Com

pres

sion

Tra

nsfo

rmat

ion

Bitstream (meta data)

Huffman table

Huffmantable

∆ C m type, ,( )

Huffman table

Qua

ntiz

atio

n

Page 151: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

6.8 Implementation 133

e

the

type,data

ssor.

nctor by

ataents.coeffi-havenfor-

mal representation for each parameter . If the user restricts the quantization toP bits and

the data stream consist ofN+1 significance ordered coefficients th

delta factor that describes the range of the coefficient with respect toassigned bits can be computed as

(6.34)

It is important to note that the delta factor has to be stored individually for each waveletdecomposition level and color component. Note further, that in the case of scalar valued

sets we only achieve a single stream of ordered coefficients. For both cases then+1th quantizedcoefficient can be represented as the quantized difference to its predeceTherefore, we have

(6.35)

Since we are working with absolute values, one additional sign flag (sign(n)) is required for

each delta coefficient. Finally we have that then+1th approximated wavelet and scaling functiocoefficients can be reconstructed from the delta sequence, the sign flag, and the delta fa

(6.36)

The first block of the finalcompressionsection of our coding scheme merges the three dstreams into one single stream with respect to the significance of the individual coefficiDue to the requirement of a progressive compression scheme we have to save for eachcient its spatial position in addition to its sign and quantized difference. Furthermore, weto identify the decomposition level, color channel and wavelet type. Notice that for these imation a lossless coding scheme is required.

Figure 6.18: Significance order:(a) without clustering,(b) with clustering technique ( , ),(c) with clustering technique ( , ).

w C( )wn C m type, ,( )( )n 0 … N, ,=

∆ C m type, ,( )

∆ C m type, ,( )max

n 0 … N 1–, ,=wn C m type, ,( ) wn 1+ C m type, ,( )–( )

2P

--------------------------------------------------------------------------------------------------------------------------=

δ C m type n, , ,( )

δ C m type n, , ,( ) roundwn C m type, ,( ) wn 1+ C m type, ,( )–( )

∆ C m type, ,( )--------------------------------------------------------------------------------------------------

=

wn 1+ C m type, ,( ) sign n 1+( ) wn C m type, ,( ) δ C m type n, , ,( ) ∆ C m type, ,( )⋅–( )=

10

9

8

6

5

1

2

3

6

10

9

78

8

6

5

1

2

3

4

5

6

10

9

78

8

6

5

1

2

3

4

5

6

(a) (b) (c)

74

8

5

Threspos 3= Threscoeff 2=Threspos 3= Threscoeff 4=

Page 152: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

134 6. Local Illumination: Object Order Rendering

canadiusthe

latedof the

e therrowsy and

run-rmedmitteduff-

e aboutressedforma-

tup,

okupy the

r ren-rom thecoded

y our

plats.ndledve to

ion

If the strict significance order of the coefficients is relaxed, a spatial clustering mechanismbe introduced, which further decreases the entropy of the bitstream. Within a defined r( ) around the most relevant wavelet the algorithm picks the next coefficient as

second relevant if the difference remains under a given threshold .

Figure 6.18 illustrates the ordering with and without clustering for the 2D case. The calcusignificance values are given in the corresponding box and the arrows denote the ordercoefficients. Without clustering the length of the spatial difference vectors and thereforpositional deltas are nearly equiprobable, whereas for clustered volumes mostly short a(small positional differences) appear. Thus, the spatial clustering reduces the entropentails a better compression rate of the Huffman-coded positional deltas.

In addition to the optimized representation of the coefficients and the spatial clustering, alength-coding for the wavelettype, the decomposition level, and the color channel is perfoto further reduce the amount of data per coefficient. These runlength-codes are also transas variable length Huffman tag codes in addition to the positional information. The third Hman-table contains the deltas of the wavelet-coefficients. These three tables together tak2kByte even for huge data set and have to be available before the volume can be decompand rendered. For reasons of efficiency we create a separate bitstream for these meta intion (Huffman tables, delta factors, maximum decomposition levelM, basis vectors of the colorspace, initial wavelet coefficients ) and the coefficients. For a network se

this allows to transmit the Huffman tables prior to the data and to precompute a Huffman lotable on the client’s side. In contrast to the Huffman lookup tables that have to be stored bclient, the second bitstream does not have to be stored explicitly on the client’s side. Fodering purpose this compressed data steam can either be reread from a local cache or fserver. Since this rendering concept does not require an explicit reconstruction of the undedata set, the client’s memory requirements are very low.

Figure 6.19 illustrates an exemplary fraction of the coefficient bitstream as generated bmethod.

6.8.3 Splat Accumulation

An essential task in our volume rendering algorithm is the accumulation of the computed sFrom a simplified point of view, these discrete 2D intensity maps can be regarded and haas 2Dtextures. Since their accumulations strongly influence the rendering speed we ha

Figure 6.19: Fraction of the coefficient bitstream generated by the compressscheme.

Threspos

Threscoeff

w0 C m type, ,( )

positionaldeltax

positionaldeltay

positionaldeltaz

runlengthwavelettype

coefficientdelta

positionaldeltax

positionaldeltaz

coefficientsign

positionaldeltax

positionaldeltay

positionaldeltaz

coefficientdelta

runlengthcolorchannel

positionaldeltax

positionaldeltay

coefficientdelta

positionaldeltay

coefficientdelta

positionaldeltax

positionaldeltaz

01100010010101110010111110111001101111011001111011001110011110111010010011010100101011011111001

Significance (decreasing)

positionaldeltaz

positionaldeltay

coefficientdelta

coefficientsign

coefficientsign

coefficientsign

coefficientsign

Bitstream

Server Client

Page 153: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

6.8 Implementation 135

y. Wehitec-ncept.

strated

rs areivid-ries.levant

-hard-turesificant

erfor-ages.roachoachesrposeitedange

se ofrated

omtillward

n-s bute to

.

focus on an optimal representation of these textures and an efficient accumulation strategpropose two different accumulation strategies that are suitable for various hardware arctures; a software-based accumulation scheme and a hardware assisted accumulation co

For software accumulation, the textures are stored in a sparse matrix data structure as illuin figure 6.20. Based on the result of the iFFT the texture elements (texels) whose intensities arelower than a certain threshold are skipped. Thus, a list of strips that are linked by pointegenerated. A row pointer list allows to access the first non-vanishing texel in each row indually and supports an efficient clipping algorithm for the upper and lower window boundaWe furthermore propose the use of a bounding box, which stores the dimensions of the restrips. The accumulation itself is performed within a software framebuffer.

The hardware assisted accumulation exploits the alpha-blending capabilities of the SGIware. In this case the positive and negative values of the footprint are stored in different texand accumulated in two passes. Since the hardware handles large textures without signperformance penalty it allows to further increase the performance. The most significant pmance increase is therefore obtained for the generation of multiview or high resolution imFurthermore, since the system directly renders into the hardware framebuffer, this apprequires less memory. In contrast to other hardware accelerated volume rendering approur concept neither requires specialized 3D texture hardware [10] nor optimized special pucomputer architectures [66, 42]. The main drawback of this method results from the limnumber of bits per texel that are available in the framebuffer. This restricts the available rof intensities to 256 levels per color channel.

6.8.4 Aliasing

The position of the projected textures do not generally match the pixel coordinates. In cathe software accumulation this results in horizontal and vertical aliasing artifacts as illustin figure 6.21 (a). This forced us to implement three different antialiasing strategies.

• Jittering of textures: The projected textures are perturbed by the addition of a randdisplacement (jitter). The computational overhead is negligible but artifacts are svisible. The randomized displacement moves the sample as much as halfway toeither neighbor horizontally or vertically.

• Jittering of texels: Here, in contrast to the texture-jittering, jittering is applied indepedently to every texel. The added random displacement yields to vanishing artifactadds more noise to the final image. The computation is slightly more complex duthe computation of more random numbers.

Figure 6.20: Data structure of the footprints for software-based accumulation

Nullpointer

Strips

Row pointer listBounding box

Pointer

Page 154: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

136 6. Local Illumination: Object Order Rendering

est

-evels-d in

Hz)the

ent weo per-

x-

• Bilinear interpolation: This is the most time consuming strategy but results in the bimage quality.

6.9 Results

We tested our object order rendering algorithm using three data sets: a 1283 voxel RGB-data set

of the Visible Human (initial data size: 128 x 128 x 128 x 3 = 6291456 bytes), a 2563 voxel CT

scan of the Visible Human (16777216 bytes), and a 2563 MRI scan (data courtesy of the Mallinckrodt Institute of Radiology) (16777216 bytes). All data sets are decomposed three l(M=3) as a preprocessing step. The positional threshold (Threspos) equals three and the coefficient threshold (Threscoeff) is set to 200. The coefficients are coded and stored as describesection 6.8.2.

6.9.1 Rendering Performance

Table 6.5 gives our performance results on a Silicon Graphics Indy (MIPS R4400, 150 Mand on Silicon Graphics Maximum Impact (R10000, 195 MHz). These results includedecoding of the data stream, software-based splatting, and image display. In this experimmeasure the rending performance of our system and compare different image qualities. T

Figure 6.21: Antialiasing strategies: (a) without antialiasing, (b) jittering of tetures, (c) jittering of texels, (d) bilinear interpolation.

Table 6.5:Performance of rendering algorithm:

RGB YIQ computed by PCA

# co

eff

QV in

[%]

time

(Ind

y)in

[sec

.]tim

e (I

mpa

ct)

in [s

ec.]

# co

eff

QV in

[%]

time

(Ind

y)in

[sec

].tim

e (im

pact

)in

[sec

.]

# co

eff

QV in

[%]

time

(Ind

y)in

[sec

.]tim

e (im

pact

)in

[sec

.]

4.6 kByte(1:1428)

2155 65.38 0.44 0.15 2175 81.61 0.46 0.15 2184 85.61 0.45 0.15

9.4 kByte(1:667)

4480 82.73 0.9 0.31 4221 86.91 0.93 0.3 3820 88.27 0.86 0.26

79 kByte(1:80)

31714 92.14 3.21 1.14 35655 94.6 3.06 1.09 30554 94.74 2.61 0.9

368 kByte(1:17)

170761 96.82 11.52 4.01 178065 98.22 12.55 3.75 172240 98.47 10.77 3.58

(a) (b) (c) (d)

ColoColor-space

Datasize

Page 155: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

6.9 Results 137

Haar--data.tes, 9.4ratios

ize theergy-

ratesnd are

colorgy peritec-

hows

a

e coef-of

visuald for

ostly

to anyolor

xi-beforeesolu-ed foration

form this experiment we construct several series of compressed data sets containingdecomposed RGB, YIQ and PCA-computed representations of the Visible Human RGBTo make these data sets comparable the sizes of the data stream are limited to 4.6 kBykBytes, 79 kBytes, and 368 kBytes. In addition to the absolute data sizes, the compressionare listed in this table. The image size was chosen to be 160x180 pixels. In order to quantamount of energy that is approximated within the data stream we define an relative enmetric defined as:

(6.37)

From this experiment we conclude, that the described algorithm provides interactive frameon readily-available hardware. The achieved frame-rates allow instantaneous feedback awell suited for an intuitive exploration of data sets. As we expected, the PCA-computedspace allows the most efficient representation of the data in terms of approximated enercoefficient especially for small data sizes. This is important due to the concept of the archture as a distributed rendering system which is suitable for low-bandwidth networks.

6.9.2 Image Quality

The following tests analyze the image quality of our proposed method. Figure 6.22 s

results of the experiment described in section 6.9.1. The image quality is evaluated byL2

image metric with respect to the signal-noise ratio (SNR) in [dB] as

(6.38)

The expresses the intensity of thepixel in the reference image forcolor-com-

ponent in the RGB-color space. The reference image was generated by using 100% of thficients of the initial data set (M=0). Consequently, denotes the intensity

the computed image. From the image compression theory [29] we have that reasonablequalities are achieved for whereas visually noise-free images are obtaine

. From this experiment we again conclude that qualitative differences reveal m

at small data sizes. We observe that since the RGB color space does not give prioritycolor component the image quality is inferior for small data sizes. In contrast to the RGB-cspace, the YIQ data set clearly favourises theY component. As a result, an greyscale appromation is transmitted prior to the color components. Thus, a greyscale image is presentedtheI andQ components are superimposed. Since more bandwidth is spent to the spatial rtion than for a correct representation of the color components more detail can be achievsmall data sizes. Finally the PCA-optimized representation leads to an improved approxim

QV

QV

E wn( )n 0=

N

E wn( )n 0=

volume size 1–

∑------------------------------------------- 100⋅

[%]=

QI

QI 20 log10

i ref pixel color,( )[ ]2

color R G B, , ∈∑

pixel∑

i im pixel color,( ) i ref pixel color,( )–[ ]2

color R G B, , ∈∑

pixel∑

----------------------------------------------------------------------------------------------------------------------------------------------------

[dB]⋅=

i ref pixel color,( )

i im pixel color,( )

QI 40 dB>

QI 60 dB>

Page 156: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

138 6. Local Illumination: Object Order Rendering

deredto the

ce of.6. In

in both spatial and color domain. Even for small data sizes the color sensation of the renimages appear similar to the final image, whereas the spatial resolution is comparableYIQ-color space representation.

6.9.3 Data Coding

To demonstrate the improved coding gain achievable by spatial clustering and the influendifferent amounts of quantization bits a comparison and error analysis is given in Table 6

Figure 6.22: Progressive compression in three different color spaces.(data source: Visible Human Project, RGB-data set)volume size: 1283, max. decomposition levelM=3.

RGB

df

RGB COMPUTED BYPCAYIQ

Color space

Data size

Abs: 4.6 kB

yteA

bs: 9.4 kByte

Abs: 79 kB

yteA

bs: 368 kByte

QI = 16.22 dB

Ratio: 1:1428

Ratio: 1:667

Ratio: 1:80

Ratio: 1:17

QI = 15.24 dB QI = 31.35 dB

QI = 29.67 dB QI = 28.65 dB QI = 38.67 dB

QI = 46.01 dB QI = 49.94 dB QI = 51.29 dB

QI = 62.61 dB QI = 68.65 dB QI = 70.71 dB

Page 157: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

6.9 Results 139

fficientvalue

f the

if theduced

al clus-

r a

magester-

pres-erve athiss the

ation is

this table the row labeled ‘Quantization bits’ gives the number of bitsP that are used for thequantization described in (6.34). The second row illustrates the quantization errorQE. The error

metric we use counts for the energy difference between the coefficientsw(C) and their approx-

imated counterparts . The metric is given as:

(6.39)

werer(w(C)) counts for the absolute energy difference

(6.40)

Table 6.6 shows that the most compact data representations are obtained with a large coethreshold due to the reduced entropy for the positional coding. For a coefficient threshold

( ) of 800 we almost half the bytes that are necessary for the representation o

coefficient’s position. On the other side the quantization error decreases exponentiallyuser allows more bits for quantization. This result indicates that the quantization can be reto 3 bits without significant loss of accuracy.

The second experiment in this context measures how image quality depends on the spatitering and quantization bits. As in the first experiment the amount of quantization bitsP and

coefficient threshold of the spatial cluster are varied. The image quality fo

relatively low amount of 10.000 accumulated splats is given in table 6.7. The reference iwas computed by using all of the coefficients. Recall from section 6.8.2 that the spatial cluing relaxes the significance order but yields a lower entropy, which results in higher comsion gains as shown in table 6.6. Due to the relaxed significance order, however, we obslower image quality for higher threshold values (table 6.7). It is important to note thatreduced image quality is only considerable if a small amount of splats is accumulated. Anumber of splats increases, the difference in image quality vanishes. The second observ

Table 6.6:Comparison of compressed data sizes [bytes],(data source: Visible Human Project, CT-data set) volume size: 2563, max. decomposition le-vel M=3, j=1 (Haar), no. of splats 101896,

Threscoeff 0 200 400 600 800

Quantization bits(P)

bytes (pos. only)/QE in [%]

260584 241148 167394 151410 144328

2 1.222 338084 319534 243028 224348 215944

3 0.242 338398 321342 246312 227458 218690

4 0.054 341064 326140 250880 231536 222714

5 0.014 344302 331668 257228 237134 227850

6 0.00039 351356 342542 267708 244760 235236

7 0.00017 359522 349320 278336 257129 245508

w C( )

QE

r w C( )( )w∑

C C1 C2 C3, , ∈∑

E w C( )( )w∑

C C1 C2 C3, , ∈∑

----------------------------------------------------------------- 100⋅

[%]=

r w C( )( ) E w C( ) w C( )–( )=

Threscoeff

Threspos 4=

Threscoeff QI

Page 158: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

140 6. Local Illumination: Object Order Rendering

cted,.

tiza-imagextend

In theage,

urther-pres-

esultslargeraccu-

that the quantization bits also directly affects the image quality. This is what we have expesince the rendering process directly maps the quantized intensities onto the image plane

Our results confirm that the compression rate is directly controlled by the number of quantion bits and the spatial clustering. In our actual implementation the compression rate vs.accuracy trade-off can be steered by the user. An interesting area for future work is to ethe system to automatically compute an optimum value of these parameters.

6.9.4 Basis Functions

Figure 6.23 shows the images that result from Haar, linear, and cubic B-spline functions.case of Haar functions we clearly note the blocky representation within the rendered imwhereas higher order basis functions bring up smoother representations of the data set. Fmore, higher order functions provide more vanishing moments and thus increase the comsion gain.

However, increased compression ratios comes at the price of slower execution. This rfrom the fact that more vanishing moments require an increased support which results insplats. Thus, the iFFT has to be performed on a larger array and even more important, themulation requires more texels.

Table 6.7:Comparison of image quality [QI],(data source: Visible Human Project, CT-data set) volume size: 2563, max. decompo-sition levelM=3, j=1 (Haar), no. of rendered splats: 10000, ,image size: 256 x 256, viewing direction: (0, 0)

0 200 400 600 800

2 14.53 15.55 15.122 15.7 12.81

3 15.78 16.07 15.24 15.55 13.024

4 15.97 16.02 15.68 15.97 12.73

5 16.11 16.17 16.05 16.08 12.92

6 16.23 16.24 16.2 16.21 12.93

7 16.28 16.31 16.27 16.22 12.93

Threspos 4=

Threscoeff

P

Page 159: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

6.9 Results 141

m-

0),

7),

Figure 6.23: Images rendered with different basis functions and data-sizes.MRI-data set volume size: 256x128x256, 8 bits/voxel, max. decoposition level M=2Compressed data sizes and compression ratios:upper row: Haar: 69241 bytes (1:121), linear: 69662 bytes (1:12cubic: 77724 bytes (1:108)lower row: Haar: 273740 bytes (1:31), linear: 305972 bytes (1:2cubic: 359603 bytes (1:23).

Haar linear B-spline cubic B-Spline

#S

plats

31900126000

Basis Function

Page 160: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

142 6. Local Illumination: Object Order Rendering

Page 161: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

7e ren-

osen to, as ite orderring to] com-high

o far.

cenesxima-

rs, butender-

differfirstr, and

of thecally,

7COMPARISON

This chapter presents an extensive comparison of our image order and object order volumdering approaches and the classical shear-warp factorization technique [50]. We have chcompare our algorithms and implementations with the shear-warp factorization algorithmis the standard approach in literature. Shear-warp factorization can be seen as an imagtechnique capable of utilizing both image space and object space coherence. Thus, referchapter 1, this approach can be classified as a hybrid technique. Lacroute and Levoy [50bine this technique with a run-length encoding and early ray termination strategy to obtainperformance that exceeds that of all single processor formulations of volume rendering s

All three algorithms are tested in their basic forms, without advanced variations. Several sand simulation models were designed to test the method’s results in terms of their approtion properties, memory requirements, and speed.

This chapter mainly summarizes the techniques that are introduced in the previous chaptewill be very specific about the advantages and disadvantages resulting from a respective ring strategy.

7.1 Rendering Equation

The mentioned volume rendering techniques share a common theory (chapter 3), butwidely with regard to the methods for approximating the volume rendering equation. In thissection we examine the different approximation concepts of our image order, object ordethe shear warp algorithm.

7.1.1 Image Order Technique

The underlying rendering equation of our image order volume rendering approach basescontinuous representation of the emission-absorption model (section 3.5). More specifithe intensity impinging on pointx from directionn is computed as

L x n,( ) χ x s'n+( )e

α s( ) sd

sE

s'

∫–

s'd

sE

sL

∫=

143

Page 162: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

144 7. Comparison

hus,, theputa-

rateit the

equa-

em incan bea time

alsoover

r sur-

trans-rojec-age.

eared

is

ewiseolu-rolled

rentzationg dis-

quals

Fur-order

As this integral has no closed-form solution, we must resort to numerical approximation. Tthe intensity computation problem is essentially one of numerical quadrature. By definitionnumber of voxels and the sampling rate of the ray are not correlated. This allows the com

tion of an approximate solution to within some tolerance by adapting the samplingto the ray. Furthermore, the general formulation of the approximated equation does not limorder of the reconstruction filter.

7.1.2 Object Order Technique

Our object order rendering approach finds approximate solutions to the volume renderingtion with an isotropically absorbing medium. The intensity can thus be computed as

In our approach the problem of numerical quadrature is transformed into a sampling problboth, spatial and frequency domain. As for the image order technique, the sampling rateschosen independently from the spatial resolution of the volume data. In general, we haveversus space trade-off in how the functions are sampled. The implemented algorithmallows to consider reconstruction filters of an arbitrary order. Thus we have explicit controlthe regularity of the computed projection.

One major drawback of this technique, however, is the fact that it does not allow to rendeface-like objects. This is due to the assumed isotropic absorption of the medium.

7.1.3 Shear-warp Factorization

The rendering process of the shear-warp factorization operates by factoring the viewingformation into three components: a three-dimensional shear parallel to the data slices, a ption to compute the distorted intermediate image, and a 2D warp to generate the final imThe linearover-operator described in section 3.5.2 accomplishes the projection in the shobject space. Therefore, the intensity is approximated as

In order to achieve high frame rates, the sampling of the opacity values and intensities

performed only once per voxel slice. This reduces the resampling filter operations to a slicbilinear filtering operation and aligns the sampling rate explicitly to the resolution of the vmetric simulation model. In the unsheared voxel space the sampling distance is cont

by the viewing direction. Figure 7.1 depicts the variation of the sampling rates for diffeviewing directions for the case of constant sampling rates (a) and the shear-warp factoriapproach (b). It becomes obvious, that in the displayed two-dimensional case the samplin

tance varies by a factor of . In the more general three-dimensional case this factor e

. Consequently, the approximation error strongly depends on the viewing directions.thermore, the rendering concept does not provide high-order reconstruction functions into keep the rendering times low.

L x n,( )

L x n,( ) χ x s'n+( )e ks'–s'd

sE

sL

∫=

L x n,( ) Li 1 σ j–( )j 0=

i 1–

∏i 0=

l 1–

∑=

σ j Li

δs

2

3

Page 163: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

7.2 Data Compression 145

ing.ner-orithmn 7.4.

algo-tech-

oef-algo-ont-refore

theveletn and ismethodderingessionquali-

atios,e ren-cheme

:

The final two-dimensional warp is performed by a computational inexpensive bilinear filterDue to the limitation of pure two-dimensional bilinear filtering operations the algorithm geates artifacts and significant approximation errors. As a consequence the shear-warp algsacrifices image quality for rendering speed. We will further analyze these errors in sectio

7.2 Data Compression

Our implemented object order volume rendering system and the shear-warp factorizationrithm feature direct compression domain rendering. We will compare the two compression

niques in this section. Since the used ‘bighead’ CT data set consists of 2563 volume elements,the initial data size equals 16777216 Bytes. The valid intensity range of the filtered 8-bit cficients was set to [135, 255]. The used implementation of the shear-warp factorizationrithm is based on the freely available VolPack rendering library [49] and uses a Tcl/Tk frend. This implementation, however, only allows to handle scalar-value data sets and thegenerates greyscale images.

7.2.1 Object Order Technique

The compression gain that is achieved from our generic transform coder results fromwavelet transform and an efficient coding of the coefficients and their positions in the wadomain (section 6.8.2). The coding scheme supports progressive embedded transmissioperformed as a preprocessing step before transmission and rendering. This compressionis lossy and supports the adjustment of the compression versus quality trade-off. The renconcept supports hardware-assisted progressive rendering directly from the comprdomain. Figures 7.2 (a) and (b) reveal the compression ratios and corresponding imageties. The maximum decomposition level was chosen to be . For high compression rthe blocky structures of the used Haar wavelets become visible. Note in particular that thdered data set does not feature color information, hence an essential part of our coding s

Figure 7.1: Variation of sampling distance for different viewing directions(a) constant sampling rate, (b) shear-warp factorization.

δs δs

θ

δs

θ(a) (b)

VoxelSampling pointSampling ray s'n

1.01.01.41

δs θ

M 3=

Page 164: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

146 7. Comparison

at thee com-

mpres-llel toediate

croutetrans-

cannot contribute an additional compression gain. In practical applications we observe thdata sizes do not dramatically increase for RGB data sets, due to the optimized color spacputation, the efficient entropy coding, and the clustering.

7.2.2 Shear-warp Factorization

In contrast to our compression technique, shear-warp factorization features a lossless cosion strategy. By construction, the scanlines of pixels in the intermediate image are parascanlines of voxels in the sheared volume data. Thus, the sheared volume and the intermimage can be traversed simultaneously in scanline order. For reasons of efficiency, Laproposes a run-length encoding of the volume scanlines in order to eliminate work in the

Figure 7.2: Comparison of image quality and data sizes:(a) object order rendering approach (data size:156832 Bytes,compression ratio: 1:106),(b) object order rendering technique (326036 Bytes, 1:51),(c) Shear-warp factorization (7541176 Bytes, 1:2).

(a)

(b)

(c)

Page 165: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

7.3 Performance 147

ction,draw-arableower.over-

eringilitiesageterac-

Ien-

giventoriza-e SGIe datanted

l spatsof the.emon-e rates

maget, thecanta setimple-

parent portions of the data set. Since the direction of the runs depend on the viewing direthree versions of the run-length encoded data set have to be maintained in memory. Thisback increases the data sizes significantly. Figure 7.2 (c) demonstrates that for a compimage quality the compression gain of the run-length encoded volume is a magnitude lNote in particular that the usage of RGB volume data sets further increases the memoryhead.

7.3 Performance

In this section we analyze the rendering performances of our object order volume rendimplementation and the shear-warp factorization approach. We also discuss their suitabfor interactive volume rendering. The following performance tests do not consider the imorder rendering scheme since this approach was not conceptually designed to provide in

tive frame rates. Referring to section 7.2, we use the scalar 2563 voxel ‘bighead’ CT data set.The maximum decomposition level was set toM=3. Both algorithms were tested on an SGMaximum Impact (Mips R10000/195 MHz) and an SGI Indy (Mips R4400/150 Mhz). The r

dered 3802 pixel images are gray scale and do not incorporate any occlusion effects. Theframe rates are averages for a 360-frame animation. For the implemented shear-warp faction running on the Maximum Impact we achieved 2.53 frames/sec. The same setup on thIndy allowed us to render images with 0.81 frames/sec. Both images, however, display thset at full accuracy (figure 7.2 (c)). Table 7.1 gives the performance results of our implemeobject order algorithm. The corresponding image quality can be taken from figure 7.3.

Note that the rendered images do not display the volume data at full accuracy since not alare accumulated in order to achieve interactive frame rates. To measure the qualityapproximated data set, table 7.1 also gives the relative energyQv of the rendered volume dataFor further details about the energy computation see section 6.9.1. The example clearly dstrates, that the proposed object order volume rendering approach achieves higher framthan the high-performance shear-warp factorization algorithm. Although, the achieved iquality of our splatting approach is inferior due to the coarse approximation of the data seimage quality is sufficient for interactive positioning of the camera. In particular, weobserve that even on a low-cost workstation more than 74% of the energy of the initial dacan be rendered in less then a second. Note in particular that the given frame rates of our

Figure 7.3: Rendered images for different numbers of accumulated splats:(a) Data set 1: 1388 textures, (b) Data set 2: 2466 textures,(c) Data set 3: 7766 textures.

(a) (b) (c)

Page 166: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

148 7. Comparison

nd theusing

eringsr ourages.e that

sformstrictlyients.

oncept.soft-ularity.

com-will

ce ourmage-

es fore

errorle, andlativeation

lobal

ec

c.

mentation include the decoding of the compressed data stream, footprint computation afootprint accumulation. The table further indicates the dramatic performance increase bythe hardware supported alpha-blending operation.

Lacroute reports that color renderings take 1.3 times longer compared to gray scale rendwhen using the shear-warp factorization technique [50]. In contrast to this constant factoapproach does not always bring up a computation overhead for the generation of color imAs described in section 6.8.2, the decorrelation step computes an optimized color spacprovides both optimized transmission and rendering. Furthermore, the wavelet trandetects coherence within the volume data. Consequently, the rendering performancedepends on the data correlation and coherence, i. e. the number of nonvanishing coeffic

The performance results clearly demonstrate the success of the progressive rendering cIt adapts the image quality vs. frame rate trade-off to an user-defined optimum. Even theware accumulation buffer achieves sub-second frame rates at an acceptable image granNote that specific hardware support further increases the frame rates dramatically.

7.4 Accuracy

In our final experiment we examine the accuracy of the approximation schemes. For thisparison we will neglect the approximation errors that result from the wavelet transform. Wefocus only on the core integration schemes that are used for the intensity computation. Sinobject order approach does not allow to consider an anisotropic medium we compare our iorder technique with the shear-warp factorization approach.

The following experiments are organized in a similar way. For each data set the intensitidifferent viewing directions and positions are computed. In all experiments thy-component of the viewing positionx was chosen as 0.5, they-component of the viewing direc-tion n equals 0. The volume rendering testbed is displayed in figure 7.4. To measure thewe take a pragmatic approach of generating a solution at the highest accuracy possibregarding that solution as exact. We determine the approximation error in terms of the redifference from our reference solution. Thus we can define a angle-wise relative approximerror as

(7.1)

In addition to this error, the average relative approximation error measures for a more gerror, since it is defined as

Table 7.1:Rendering rates of the object order approach on different SGI machines

QV IndyMaximum Impact

(Softwareaccumulation)

Maximum Impact(Hardware

accumulation)

Data set 1 74.52% 1.2 frames/sec. 3.05 frames/sec. 29.44 frames/s

Data set 2 77.1% 0.86 frames/sec. 2.12 frames/sec 19.06 frames/sec.

Data set 3 88.11% 0.38 frames/sec. 0.77 frames/sec/ 3.55 frames/se

n θ( ) x θ( )

QApprox θ( ) Lapprox x θ( ) n θ( ),( ) Lreference x θ( ) n θ( ),( )–

Lreference x θ( ) n θ( ),( )-------------------------------------------------------------------------------------------------------------=

Page 167: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

7.4 Accuracy 149

l res-

iza-d theooserison,hosen

lyinge of thed the

hosenibilitysted

tion

(7.2)

In order to compare the errors of the two rendering techniques we use two different spatia

olutions (323 and 643) of the volume data. Recall from section 7.1.3 that shear-warp factortion explicitly determines the sampling rate by the spatial resolution of the data set anviewing direction. In contrast to this, the Newton-Cotes quadrature formulae allow to chthe sampling rates independently from the direction and data resolution. For this compahowever, the sampling rates of both Newton-Cotes quadrature and shear-warp were cidentically. This is done with respect to a fair comparison, which only considers the underapproximation terms of the compared rendering schemes. As a consequence, the distancsampling points of Simpson’s rule and trapezoid rule adapt to the viewing direction an

data resolution. The underlying basis functions of the image-order rendering scheme are cas second-order B-spline functions. This is due to their interpolation property and the possto directly compare the results. The fidelity of the three different projection methods is tefor three analytically defined simulation models.

The first simulation model equals a simple three-dimensional box function for the extincand emission terms respectively, such that

(7.3)

The extinction and emission terms of the second model are defined as

Figure 7.4: Volume rendering testbed.

y

1

1

1

n

nn

1

x

z

θ 0>

n

n

n

n

1

θ 0<

θ

Volumetric data set

x θ( )

0.5

z

x

QApprox

QApprox θ( ) θd

π 2⁄–

π 2⁄

∫π

--------------------------------------------=

δs

χsim model 1 x( ) 1 for x 0 1,[ ]3∈0 else

=

αsim model 1 x( ) 1 for x 0 1,[ ]3∈0 else

=

Page 168: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

150 7. Comparison

. The

repre-

ion

(7.4)

Finally, the third simulation model was chosen such that it introduces higher frequenciesextinction and emission terms are defined as

(7.5)

Figure 7.5 illustrates slices through the emission and absorption model. The greyscalessent the scalar values.

Figure 7.5: Slices through the simulated emission (upper row) and extinct(lower row) model ( ):(a) simulation model 1, (b) simulation model 2,(c) simulation model 3.

(a) (b) (c)

y 0.5=

χsim model 2 x( ) x y z for x 0 1,[ ]3∈+ +

0 else

=

αsim model 2 x( ) x2

y2

z2

+ + for x 0 1,[ ]3∈0 else

=

χsim model 3 x( ) 1 8π x 0.5–( )2y 0.5–( )2

z 1–( )2+ +

forsin x 0 1,[ ]3∈+

0 else

=

αsim model 3 x( ) 1 6π x 0.5–( )2y 0.5–( )2

z 1–( )2+ +

forcos x 0 1,[ ]3∈+

0 else

=

Page 169: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

7.4 Accuracy 151

om-

ta set.efini-rob-

ballys rulee see

prox-l func-as its

be

iew-s, thiseffect

at are

nd

7.4.1 Simulation Model 1

For each experiment we produce a plot of the computed intensityL and the relative approxima-tion error versus the directional and positional angle . This allows for a direct c

parison of the three volume rendering methods. Figure 7.6 shows the results for the first daWe observe a smooth slope of the computed intensity along the given path. Due to the dtions of the extinction and emission terms for the first simulation model the approximation plem basically reduces to the numerical integration of the exponential function.

The error plots in figure 7.6 indicate that the increased sampling rate (bottom row) gloreduces the approximation error. The graphs in figure 7.6 (b) and (c) show that Simpson’produces an appreciably more accurate result than the trapezoid rule. In figure 7.6 (d) wthat the error of the shear-warp factorization is noticeably larger than for the other two apimation schemes. This is due to the piecewise constant approximation of the exponentiation. Another striking fact from the graphs is that the shear-warp factorization approach h

highest error for with and its smallest for . Two reasons can

given for this effect. First, the sampling rates of shear-warp factorization vary for different ving directions. Since we have aligned the sampling rates for the three rendering techniquerate is applied to all approaches and implies the same shape of all three error-curves. Thisis further demonstrated in figure 7.7. The functional courses reveal that the intensities th

Figure 7.6: Intensities and approximation errors for different viewing angles apositions (simulation model 1).Resolutions: 323 (upper row), 643 (lower row):(a) Intensities, (b) Trapezoid rule, (c) Simpson’s rule,(d) Shear-warp factorization.

QApprox θ

0.017

0.0172

0.0174

0.0176

0.0178

0.018

-1.5 -1 -0.5 0 0.5 1 1.5

3e-11

4e-11

5e-11

6e-11

7e-11

8e-11

-1.5 -1 -0.5 0 0.5 1 1.5

2.5e-05

3e-05

3.5e-05

4e-05

-1.5 -1 -0.5 0 0.5 1 1.50

0.2

0.4

0.6

0.8

1

-1.5 -1 -0.5 0.5 1 1.5

0

0.2

0.4

0.6

0.8

1

-1.5 -1 -0.5 0.5 1 1.5

4e-10

6e-10

8e-10

1e-09

1.2e-09

-1.5 -1 -0.5 0 0.5 1 1.5

0.0001

0.00012

0.00014

0.00016

-1.5 -1 -0.5 0 0.5 1 1.5

0.034

0.0345

0.035

0.0355

0.036

-1.5 -1 -0.5 0 0.5 1 1.5

(a) (b) (c) (d)

L

θ θ θ θ

QApprox QApprox QApprox

L QApprox QApprox QApprox

θ θ θ θ

θ kπ4---

= k Z∈ θ kπ2---

=

Page 170: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

152 7. Comparison

h are

d min-

rror

moreted in

e max-

alsooriza-

ince

l for

ation

l

computed by the shear-warp factorization algorithm are bounded by the intensities, whic

computed for and .

Second, we have that the ray segment which is inside the volume reaches its maximum an

imum length for and respectively. Consequently, the approximation e

reaches its maximum and minimum for these directions.

7.4.2 Simulation Model 2

The potential effectiveness of the implemented Newton-Cotes quadrature formulae for arealistic simulation model shall be discussed next. The computed intensities are illustrafigure 7.8 (a) for different viewing directions and resolutions.

As before, we can observe that the Simpson’s rule produces the most accurate results. Th

imum relative error of the trapezoid rule is found to be less than 0.12% for the 323 voxel data

set, whereas for the 643 voxel data set, the error does not exceed 0.03%. Figure 7.8 (d)shows that the highest and the lowest relative approximation error of the shear-warp fact

tion approach occur at and respectively. This is what we would expect, s

the range of the emission and extinction coefficients are maximal for and minima

. Thus, the piecewise constant approximation brings up the high relative approxim

error of about 6% for the 323 voxels data set and 3% for the 643 voxels data set. The minima

error equals 0.2% and 0.1% for the 323 and 643 voxel data set.

Figure 7.7: Intensities for different sampling rates (spatial resolution: 323):solid line: shear-warp factorization.

δs132------= δs

232-------=

0 56

0.58

0.6

0.62

0.64

0.66

0.68

0.7

0.72

0.74

δs2

32-------=

δs132------=

Shear-warpfactorization

L

θπ 2⁄π 2⁄– π 4⁄π 4⁄– 0

θ kπ4---

= θ kπ2---

=

θ π4---= θ π

4---–=

θ π4---=

θ π4---–=

Page 171: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

7.4 Accuracy 153

p fac-12%

func-ifacts

better.ing

s of the/256.not

an be

ation.4 we

and

nd

7.4.3 Simulation Model 3

Figure 7.9 shows the error results for the third simulation model. As before, the shear-wartorization performs poorly again. The cause of the high approximation errors of more than

for the 323 voxels data set is that it approximates the high frequency opacity and emissiontion by piecewise constant functions. The large errors, however, will lead to noticeable artin the final image.

Figure 7.9 (b) and (c) indicates that the two Newton-Cotes quadrature schemes performThe variations result from the positional changes of the sampling points for different viewangles and can thus be regarded as a spatial aliasing effect. In contrast to the large errorshear-warp factorization, the relative intensity errors of the Simpson’s rule are less than 1For a practical implementation this implies that the computed intensity of the pixel doesdiffer for the accurate and the approximated solutions. Therefore, the rendered image cregarded as ‘correct’ in terms of the displayed intensities.

7.4.4 Average Approximation Error

Table 7.2 compares the average relative approximation errors of the three approximschemes for different spatial resolutions and simulation models. As motivated in section 5

observe that the approximation error of the trapezoid and Simpson’s rule exhibit

Figure 7.8: Intensities and approximation errors for different viewing angles apositions (simulation model 2).Resolutions: 323 (upper row), 643 (lower row):(a) Intensities, (b) Trapezoid rule, (c) Simpson’s rule,(d) Shear-warp factorization.

0

0.1

0.2

0.3

0.4

0.5

-1.5 -1 -0.5 0.5 1 1.5 0

0.0002

0.0004

0.0006

0.0008

0.001

-1.5 -1 -0.5 0.5 1 1.5 0

1e-08

2e-08

3e-08

4e-08

-1.5 -1 -0.5 0.5 1 1.5

0.01

0.02

0.03

0.04

0.05

0.06

-1.5 -1 -0.5 0 0.5 1 1.5

0

0.1

0.2

0.3

0.4

0.5

-1.5 -1 -0.5 0.5 1 1.5 0

5e-05

0.0001

0.00015

0.0002

0.00025

-1.5 -1 -0.5 0.5 1 1.5 0

5e-10

1e-09

1.5e-09

2e-09

2.5e-09

-1.5 -1 -0.5 0.5 1 1.5

0.005

0.01

0.015

0.02

0.025

0.03

-1.5 -1 -0.5 0 0.5 1 1.5

(a) (b) (c) (d)

L

θ θ θ θ

QApprox QApprox QApprox

L QApprox QApprox QApprox

θ θ θ θ

O δs2( )

Page 172: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

154 7. Comparison

eases

the

when

nd

respectively, whereas the approximation error of the shear-warp factorization decr

linearly with the sampling distance . For all simulation models and spatial resolutions

computed errors indicate the introduction of significant artifacts in the rendered image

Figure 7.9: Intensities and approximation errors for different viewing angles apositions (simulation model 3).Resolutions: 323 (upper row), 643 (lower row):(a) Intensities, (b) Trapezoid rule, (c) Simpson’s rule,(d) Shear-warp factorization.

0

0.2

0.4

0.6

0.8

1

1.2

-1.5 -1 -0.5 0.5 1 1.5 0

0.002

0.004

0.006

0.008

0.01

0.012

0.014

0.016

0.018

-1.5 -1 -0.5 0.5 1 1.5 0

0.001

0.002

0.003

-1.5 -1 -0.5 0.5 1 1.5

0.02

0.04

0.06

0.08

0.1

0.12

-1.5 -1 -0.5 0 0.5 1 1.5

0

0.2

0.4

0.6

0.8

1

1.2

-1.5 -1 -0.5 0.5 1 1.5 0

0.001

0.002

0.003

0.004

-1.5 -1 -0.5 0.5 1 1.5 0

0.0001

0.0002

0.0003

0.0004

0.0005

0.0006

0.0007

-1.5 -1 -0.5 0.5 1 1.5 0

0.01

0.02

0.03

0.04

0.05

0.06

0.07

-1.5 -1 -0.5 0.5 1 1.5

(a) (b) (c) (d)

L

θ θ θ θ

QApprox QApprox QApprox

L QApprox QApprox QApprox

θ θ θ θ

O δs4( )

δs

Page 173: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

7.4 Accuracy 155

e of

nalyzeion

0, for

char-tions.aria-

ti-lid

using Lacroute’s approach. The third simulation model in particular highlights the influenchigh frequencies.

7.4.5 Variation of the Spatial Resolution

As a final experiment to determine the accuracies of the three computation schemes, we athe relative approximation errors for a fixed viewing direction and viewing posit

and various spatial resolutions of the data set. The resulting graphs are given in figure 7.1.

Note that both the vertical and horizontal axes are given as a logarithmic scale. The linearacter of the displayed curves reveal an polynomial decay of the error for increasing resoluAs pointed out earlier, Simpson’s rule provides the lowest errors for all resolutions. The v

Table 7.2:Comparison of average relative approximation errors .

Spatial resolution: 323 Spatial resolution: 643

Simulation model 1

Trapezoid 0.1044 10-3 0.2611 10-4

Simpson 0.5707 10-9 0.3554 10-10

Shear-warp 0.0344158 0.01723

Simulation model 2

Trapezoid 0.5013 10-3 0.1253 10-3

Simpson 0.835156 10-8 0.5202 10-9

Shear-warp 0.03622 0.01814

Simulation model 3

Trapezoid 0.6523 10-2 0.1689 10-2

Simpson 0.3611 10-3 0.5668 10-4

Shear-warp 0.06323 0.03106

Figure 7.10: Relative approximation error vs. resolution (shear-warp factorizaon: dotted line, trapezoid rule: dashed line, Simpson’s rule: soline):(a) simulation model 1, (b) simulation model 2,(c) simulation model 3.

QApprox

QApprox

θ 0.0=

1e-11

1e-10

1e-9

1e-8

1e-7

1e-6

1e-5

1e-4

1e-3

1e-2

0.1

1.10. 100.

1e-12

1e-11

1e-10

1e-9

1e-8

1e-7

1e-6

1e-5

1e-4

1e-3

1e-2

.1

1.10. 100.

1e-9

1e-8

1e-7

1e-6

1e-5

1e-4

1e-3

1e-2

0.1

1.10. 100.

(a) (b) (c)

QApprox QApprox

linear dimension linear dimension linear dimension

QApprox

Page 174: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

156 7. Comparison

uter.havesam-

o pro-uld beturinga flex-

tions of the solid line for high resolutions are due to the reached precision limit of the compFurthermore, all three curves in figure 7.10 (c) vary for low spatial resolutions. Since wealigned the sampling rate with the spatial resolution, these variations result from differentpling point positions. It illustrates the necessity for an adaptive sampling scheme in order tvide more sampling points at high frequency regions, whereas low frequency areas shosampled less. The Newton-Cotes formulae can easily incorporate this adaptive substrucstrategy governed by the wavelets, whereas the shear-warp factorization does not provideible sampling rate.

Page 175: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

8

further

nsportdistincthar-ram-ering

t theyy. All

andardgraphsiosity

8CONCLUSIONS AND

FUTURE DIRECTIONS

This final chapter summarizes the results that are achieved with this thesis and discussesresearch directions and desirable extensions.

8.1 Conclusions

This dissertation describes new wavelet-based techniques for simulating energy trathrough volumetric environments. The three proposed techniques are associated to threephysical models, which can be derived from each other by simplification of the physical cacteristics of the underlying volumetric environment. The wavelet-representation of the paeters of the physical models gives rise to new solution methods and volume rendapproaches which improve on existing rendering techniques in terms of

• accuracy

• flexibility

• scalability

• efficiency

• reliability

• optimal use of resources

• platform independency.

Although the three introduced methods are different, they share the basic concept in thaclosely relate the wavelet representation of the physical model and the rendering strategconcepts and implementations are extensively evaluated and compared with current stapproaches in order to demonstrate the advantages of each approach. The following paradescribe the benefits and features of our new solution methods in the fields of volume radand volume rendering.

157

Page 176: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

158 8. Conclusions and Future Directions

ed,and

ter 2)3.3)redhaze,ctly

ttings to

rtedthered. Theept,artialmen-VPVmo-ithm

tures,ion.

entent ofistri-lobalchesthateffi-

y dis-

esical

veletage

rectlyrepre-pres-f B-and

mpu-the

f thes ofuracy

• Volume Radiosity: In chapter 4 a new volume radiosity approach is presentwhich computes the global energy distribution of large volumetric data setsfosters realistic image synthesis. The combination of the wavelet theory (chapand the finite element formulation of the pure volumetric model (section 3.lead to a new solution method in the context of global illumination. The considevolumetric interactions can be used to augment a scene with effects such asfog or smoke. The underlying physically-based pure volumetric model was direderived from the transport theory by assuming non-reflecting and non-emiboundary surfaces. It is important to note, that the pure volumetric model allowconsider surfaces, as they can be represented as thin volumetric objects.The actual distribution of the energy is carried out by a new hardware-suppocomputation scheme. The so-called global cube technique evaluates the gaenergy of each volume element by a low-albedo volume rendering techniqueglobal energy distribution is obtained by an iterative application of this concwhich can be essentially seen as a Jacobi iteration or the computation of a psum of the Neumann series respectively. This dissertation presents two impletations based on the global cube concept: OVPV (one value per voxel) and S(six values per voxel). The OVPV strategy should be preferred in the case of hogeneous volumes, whereas the computationally more complex SVPV algoralso computes inhomogeneous environments.These two concepts are further extended to hierarchical, wavelet-based strucwhich allow the computation of the energy equilibrium to any specified precisThe computation is performed in a “coarse to fine” manner, where the refinemis enforced in those areas that are detected to be relevant. The local refinemthe volume is therefore controlled by an oracle, which counts for the energy dbution as well as the structure of the considered volume. The hierarchical gcube concept represents a departure from existing global illumination approaas it does not require the explicit computation of exchange factors. We showedthis approach handles larger volumes than current algorithms and can obtaincient hardware-assisted computation schemes for the evaluation of the energtribution.

• Image Order Volume Rendering: By neglecting multiple scattering events wend up with the emission-absorption model, which is evaluated in the clasimage order low-albedo volume rendering approach.Chapter 5 paves the way for closing the gap between this model and the watheory in that it describes an efficient concept and implementation of an imorder rendering scheme that solves the volume rendering integral equation diin the wavelet domain. Thereby, the algorithm takes advantage of the sparsesentation of the volume data in the wavelet domain that results from the comsion potential of the wavelet functions. We further observe that the usage ospline basis functions allows for accurate, high-order reconstruction of the dataexact computation of the gradient, which is essential for accurate shading cotations. Furthermore, due to the analytic definition of the basis functions andused Newton-Cotes quadrature formulae, error bounds for the computation ointegrals can be given. This provides the user with essential information in termthe accuracy of the displayed image and enables to optimize the inherent acc

Page 177: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

8.1 Conclusions 159

tureseringspaceal of

vol-ations the

-objectume

nderbina-uriertiositionjec-ratee tojec-shedrans-thesoft-

alpha-f thedra-

tech-latingn-, i.e.

e pro-rans-

umepeedolu-ntedcur-the

ducedtion.s and

vs. frame-rate trade-off. Our implementation also defines efficient data strucfor data traversal in the wavelet domain that significantly accelerates the rendprocess. Furthermore, the introduced data structure provides a hierarchicalleaping method, since it eliminates insignificant coefficients during the traversthe ray and supports early ray termination due to the evaluation scheme of theume rendering integral. The comparison of the classical shear-warp factoriztechnique and the image order volume rendering approach clearly revealhigher accuracy of the latter technique (chapter 7).

• Object Order Volume Rendering: In the course of exploring efficient waveletbased volume rendering techniques, this dissertation also describes a neworder volume rendering technique. The physical model is derived from the volrendering equation by assuming an isotropic medium with constant opacity.The hierarchical splatting approach introduced in chapter 6 has the ability to relarge data sets at interactive frame rates. The algorithm benefits from the comtion of the wavelet representation, direct wavelet-domain rendering and the Foprojection slice theorem. More specifically, we achieve high compression raand efficient data representation by precomputation of the wavelet decomposprior to the rendering. The rendering itself takes advantage of the Fourier protion slice theorem, which computes the wavelet’s footprints in a fast and accumanner. Due to the linearity of the volume rendering equation, we do not havperform an explicit tree-dimensional inverse wavelet transform prior to the protion. Actually, the projection of the wavelet decomposed data set is accompliby the rendering process, i.e. by the accumulation of weighted, scaled, and tlated footprints and implicitely incorporates the inverse wavelet transform inprojection plane. The visualization process can be either implemented as aware-based accumulation scheme or computed by a hardware-assistedblending mechanism. In both cases this strategy lowers the dimension oinverse wavelet transform from three dimensions to two dimensions and thusmatically reduces the complexity of the rendering process. Furthermore, thisnique supports a progressive refinement of the displayed image by accumuthe footprints in order of their energy contribution. In addition to the efficient redering scheme, this approach is well-suited for compression domain renderingdirect decoding and rendering of the encoded and compressed data set. Thposed coding algorithm takes advantage of the combination of the wavelet tform, spatial clustering, colorspace optimizations, and Hufman coding.The results confirm the intriguing performance advantage over existing volrendering algorithms in terms of accuracy, compression, and rendering s(chapter 7). The usability of our approach for transmission and rendering of vmetric data sets over a low-bandwidth network like the Internet is also documeby the implemented Java-based rendering client (appendix A). This applet isrently the only existing Java-based interactive volume rendering system onInternet.

We believe that the three wavelet-based volume rendering techniques as they were introin this thesis are important contributions in the field of fast and accurate volume visualizaOur results prove that the presented algorithms dramatically improve standard algorithm

Page 178: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

160 8. Conclusions and Future Directions

Moreering

Thisaccu-rou-ased

lved.

t fea-com-

over anform

ng upltinghichctions

ormsucted

asible.on ofal con-mina-ighereffi-ystem.

objectmight

acticalolumestruc-

deringemes.imple-mit the

acceleration techniques and leave room for algorithmic and conceptual improvements.importantly, this thesis opens a direction of research which will lead to new volume rendconcepts. We will describe some of the possible improvements in the next section.

8.2 Future Directions

In this work we attempted to merge the areas of global illumination and wavelet theory.combination turned out to be an important step towards the ultimate goal: interactive andrate visualization of large volume data sets. Solving this problem would allow fast walk-thghs and interactive modifications of complex volumetric scenes or realistic simulations bon medical data with different tissue enhancement filters and different lighting.

In both wavelet theory and volume rendering, however, some problems still remain unso

In wavelet theory, all concepts still suffer from the non-existence of a smooth function thatures a small compact support. The current trade-off between blocky structures and highputation costs should be addressed in further research. Further approaches may also cimportant issue in the field of wavelet-based volume rendering, namely the wavelet transon scattered data [16]. The incorporation of scattered data handling would possibly brinew efficient hierarchical volume rendering strategies. In addition we have that the resuradial basis functions may also provide viewpoint independent footprint computations, wwould further increase the rendering speed. Beside the consideration of different basis fun

it would be interesting to consider other norms besides the energy-norm (L2). From specialinterest within this context are new norms, which count for the visual perception. These nmay lead to a more efficient refinement strategy and error estimation of the reconstrvolume especially for the case of low-albedo volume rendering.

Extensions to the presented high and low albedo volume rendering methods are also feThe global cube technique, which was introduced in this dissertation for the computatienergy exchange of volumes, can be applied to other problems. For instance, the genercept allows the consideration of textured surfaces as well as glossy objects in global illution setups. The benefit of the wavelet theory may also increase with the introduction of horder functions that have more vanishing moments, since it will give fewer significant cocients. Furthermore, a more sophisticated oracle might improve the performance of the s

Another interesting area of future research is the combination of the image order and theorder volume rendering approaches to a hybrid wavelet-based concept. For example, itbe possible to render rectangles, which are textured by the computed footprints. In the primplementation, however, this concept demands the local storage of the reconstructed vdata. Due to the expected large data sizes of the volume new efficient and flexible datatures are required.

In a broader context, it can be speculated that the three described computation and renapproaches can be significantly accelerated by parallelism or distributed computing schAll three present approaches are well-suited to this type of architecture and can be easilymented on distributed memory, parallel computers. The achieved speed-ups may also percontrol of four-dimensional (time-dependent) data.

Page 179: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

Aentalnd. Thesetsobjec-

use byorkednd as. Thedataf the

h agenericby theifica-ules.ipe-com-der files

AThe EVOLVE System

The following appendix describes architectural details of the implemented experimvolume visualization system (EVOLVE). The volume encoding, transmission, decoding, arendering concepts outlined in chapter 6 were implemented as part of a flexible systemimplementation illustrates that core algorithm’s eligibility to visualize huge volumetric datain distributed environments. The system architecture was designed to meet several keytives:

• high image quality

• accurate error estimation

• progressive refinement

• compression domain rendering

• interactive frame rates

• usage of graphics-hardware if available

TheEVOLVEsystem can be regarded as a general-purpose volume rendering system forscientists in distributed environments. Since we intended to create a cross-platform netwapplication the rendering system was implemented twice, as a full-featured C++ version aa functionally restricted Java applet. Data coding was realized as an AVS module in C++data-flow concept of AVS allows the manipulation and generation of data sets prior to thecoding by independent modules. The general AVS interfaces maximize the reusability omodules and increases the flexibility of the coding system.

A.1 System Overview

The data coder of theEVOLVEsystem takes different types of volume data, and througsequence of user-specified operations, produces a coded and compressed data set. Thetransform-coding scheme is described in section 6.8.2. The data types that can be readsystem include 8-bit, 16-bit, and 32-bit scalar and multidimensional data sets. The classtion, wavelet coding, filtering and significance ordering are also implemented as AVS-modThis concept allows the adding or removing new modules in order to modify the coding pline. Furthermore, the implemented functionalities can be performed in parallel due to theputation concept of AVS. The generated data sets can either be stored as separated hea

161

Page 180: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

162 .

ering

ren-

ivelyA-cli-posi-ltiple

gle-

s theitted to aistrib-ring

time.

the rightd in a) the

rame

and data files or rendered directly. The generated files serve as input data for theEVOLVEview-ers. Four different viewers are currently implemented:

• C++/OpenGL based rendering client. It supports single-user single-machine rendand uses graphics-hardware if available.

• C++/OpenGL based rendering client that allows single-user distributed computingdering. This implementation also supports graphics-hardware.

• C++ image server. It computes the images locally and distributes the progressrefined JPEG-images over a network. The images can be displayed at a local JAVent. The client also remotely controls the position of the viewpoints and sendstional informations back to the image server. Since the image server allows musocket-connection, this architecture is suitable for multi-user purposes

• JAVA based client. Similar to the C++ versions, this client supports single-user sinmachine rendering and uses only the software-based rendering scheme.

Figure 8.1 displays the different setups of the rendering system. The file-server providecoding scheme and stores the compressed data sets. These data sets can be transmremote image server (displayed on the left side). This server computes the images and dutes the images to a local client. Due to the simplicity and memory efficiency of the rendescheme the system allows the handling and rendering of different data sets at the same

The compressed data sets can also be used in a single-user environment as displayed onside. If the computer provides a large amount of memory the received data can be storelocal cache in order to minimize the network traffic. When using network computers (NCsdata would be transferred progressively from the net.

Each of these implementations allows the visualization of volumetric data at interactive frates.

Figure 8.1: Volume rendering in a distributed environment.

volumeDB

data coding / compression

cache

cache

volumedata

Workstation compressed

compressed

compressedvolume data

compressed

interaction

Fileserver ClientsTerminal cluster WAN/LANWAN/LAN

volume data

network

workstation / PC

renderer+

renderer

renderer

data image/

compressed

interaction image/

computer

Page 181: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

163

xem-e-

d han-olorition,be

com-of the

y, i. e.uble or

illus-.ficients-

ghtl-e datad the

A.2 Data Coder

As mentioned above, we have implemented the data coding as an AVS network. In the eplary coding network shown in figure 8.2, theread fieldmodule reads the volume data. The prshading of the data and the definition of the transfer functions are controlled by thegeneratecolormapandcompute shademodules.Optimize Colorspacetransforms the RGB-data set intoa user-defined optimized color space. As described in chapter 6, the system computes andles RGB and YIQ color spaces and allows the determination of a statistically optimal cspace by the principle component analysis. The following modules allow the decomposfiltering, and sorting of the coefficients individually for each component. The filtering canperformed globally or locally by a Gaussian distribution function [71]. TheENCODERmodulefinally generates the header and the data files that contain the Hufman tables and thepressed coefficients respectively. Further details about the implementation and designmodules can be found in [22] and [48].

A.3 C++ Rendering Client

The C++ rendering client allows the user to manipulate rendering parameters interactivelto translate, rotate, and scale the volume. The user may also choose between a single, doa triple view rendering and to interactively alter the light source parameters. Figure 8.3trates a screenshot of the system. Themain window(upper left) shows a triple-view renderingThe blue and red bars document the transmitted and rendered energy (100%) and coef(100%). In clockwise direction, thedepth-cueing windowshows the depth-cued volume. Metainformation such as data-size, color space, and wavelet parameters is given in theheader-infowindowshown in the middle right. The viewing direction and the current position of the lisource can be taken from theview-info window. The three different viewing directions are coored in yellow, green and blue, while the light source is rendered as a white sphere and thappears as a blue cube. This window also allows the adjustment of the light source an

Figure 8.2: Encoder (AVS-network).

Page 182: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

164 .

e pos-igureibuted

callye twothe

iden-ler ofcor-

und in

5. Thed volu-datare illus-ation

fen theputederver,

ata

depth-cueing parameters. Thetexture info window(lower left) gives insight in the computedfootprints. Each of the eight columns represents a basis function. The upper row shows thitive and the lower row the negative texture values, colored in different gray scales. This fexemplifies the windows that are generated by both the single machine and the distrmachine C++ implementations.

The implementation for distributed systems allows distributing and managing of objects loor across networks. These migrated objects are managed by proxy objects. Like thCORBA implementations ORBline and Orbix, the implemented framework performsdemultiplexing in two steps. In the first step, the broker object uses the individual objecttifier in the request to look up its proxy map for the appropriate proxy. Second, the handthe proxy compares the method identifier with the available methods and finally calls theresponding method after reading the arguments. Details of the implementation can be fo[88].

A.4 Java Rendering Client

The Java-based rendering client implements a subset of the features mentioned in sectionJava applet allows the rendering of X-ray and depth-cued images of the Haar-decomposemetric data sets from arbitrary directions. In addition, the client allows the visualization ofslices perpendicular to the main axis. The three rendering modes and the user-interface atrated in figure 8.4. The multi-threaded applet enables its platform independent applicwithin any standard Internet browser.

A.5 Future Directions

The Experimental Volume Visualization Environment -EVOLVEoffers many possible areas ofuture research. The system could be further extended to perform a load balancing betweclient and the server. Since the rendering is performed as a simple accumulation of comtextures, the accumulation process of the detail coefficients may be executed on the s

Figure 8.3: Screenshot from the C++ rendering client (visible human CT dset).

Page 183: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

165

n be

nsferwser

ory

lume

(c)

whereas the client only accumulates the lowpass information. The final image could theachieved by a client-based accumulation of these two images.

Another interesting possibility would be to extend the system to directly manipulate the trafunction by the client. This allows extending the concept of the client as a volume brotowards an interactive tool for data exploration and analysis in distributed environments.

Further study might also include an implementation our algorithm for MIMD shared-memarchitectures to achieve real-time frame rates (30-50 Hz).

Finally, due to the generality of the described approach it might be applied to irregular vodata compression.

Figure 8.4: Java-rendering client: (a) X-ray image, (b) depth-cued image,slice, dataset: Visible human RGB data set.

(a) (b) (c)

Page 184: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

166 .

Page 185: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

B

l

)

BNomenclature

Chapter 2

m0 . . . . . . . . . . . . . . . . . Initial approximation level

M. . . . . . . . . . . . . . . . . . Maximum wavelet decomposition level

m. . . . . . . . . . . . . . . . . . Actual approximation level

p,q,r. . . . . . . . . . . . . . . . Translation parameters of basis functions

j . . . . . . . . . . . . . . . . . . . B-Spline order

f . . . . . . . . . . . . . . . . . . . Frequency

f0 . . . . . . . . . . . . . . . . . . Frequency shift

. . . . . . . . . . . . . . . . . . Linking coefficient of B-Spline wavelets and scaling functions

. . . . . . . . . . . . . . . Scaling mother-function

. . . . . . . . . . . . . B-Spline scaling function orderj (spatial domain)

. . . . . . . . . . . . . Scaling function, with shiftp and dilationm

. . . . . . . . . . . . . . n-dimensional non-standard B-Spline scaling function (spatialdomain)

. . . . . . . . . . . . . . Dualn-dimensional non-standard B-Spline scaling function (spatiadomain)

. . . . . . . . . . . . . Dual B-Spline scaling function orderj (spatial domain)

. . . . . . . . . . . . . . n-dimensional standard B-Spline scaling function (spatial domain

ξ

φ x( )

φ j[ ] x( )

φmp x( )

φn x( )

φn x( )

φ j[ ] x( )

ϕn x( )

167

Page 186: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

168 .

r

r

. . . . . . . . . . . . .B-Spline scaling function orderj (frequency domain)

. . . . . . . . . . . . .Dual B-Spline scaling function orderj (frequency domain)

Vm. . . . . . . . . . . . . . . . . .Subspace, spanned by

. . . . . . . . . . . . . . . . .Scalar value that corresponds to

. . . . . . . . . . . . . . .Scalar value that corresponds to

. . . . . . . . . . . . . . . .Subspace, spanned by spline functions

. . . . . . . . . . . . . . .Wavelet mother-function

. . . . . . . . . . . . . .Wavelet that corresponds to B-Spline scaling function orderj (spatialdomain)

. . . . . . . . . . .n-dimensional non-standard wavelet of type

. . . . . . . . . . . . . .Dual wavelet that corresponds to B-Spline scaling function ordej(spatial domain)

. . . . . . . . . . . . .Support of functionf

. . . . . . . . . . . . . . . . .Spatial spread of functionf

. . . . . . . . . . . . . . . . .Frequency spread of functionf

i . . . . . . . . . . . . . . . . . . .Imaginary operator

. . . . . . . . . . .n-dimensional standard wavelet of type

. . . . . . . . . . . . . . . .Wavelet that corresponds to B-Spline scaling function orderj(frequency domain)

. . . . . . . . . . . . . . . .Dual wavelet that corresponds to B-Spline scaling function ordej(frequency domain)

Wm . . . . . . . . . . . . . . . . .Subspace, spanned by

. . . . . . . . . . . . . . . .Scalar value that corresponds to

. . . . . . . . . . . . . . .Scalar value that corresponds to

. . . . . . . . . . . . . . . . .Kronecker-delta function

. . . . . . . . . . . . . . . .Projection operator onto vector spaceU

Φ j[ ] f( )

Φ j[ ] f( )

φmp

cmp φmp x( )

cmpqr φmpqr3

x y z, ,( )

Vmj[ ] φm

j[ ]

ψ x( )

ψ j[ ] x( )

ψn type, x( ) type 1 ... 7, , ∈

ψ j[ ] x( )

supp f( )

∆xf

∆ωf

χn type, x( ) type 1 ... 7, , ∈

Ψ j[ ]

Ψ j[ ]

ψmp x( )

dmp ψmp x( )

dmpqrtype ψmpqr

3 type,x y z, ,( )

δpq

℘U

Page 187: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

169

. . . . . . . . . . . . . . . . . Lowpass filtercoefficients

. . . . . . . . . . . . . . . . . Bandpass filtercoefficients

. . . . . . . . . . . . . Set of indices of left boundary functions

. . . . . . . . . . . . . Set of indices of right boundary functions

. . . . . . . . . . . . . . Set of indices of interior functions

Chapter 3

. . . . . . . . . . . . . Radiance

. . . . . . . . . . . . Received radiance

. . . . . . . . . . . . . . . . Upper hemisphere

. . . . . . . . . . . . . . . . . Normal vector

. . . . . . . . . . . . . . . Radiosity

. . . . . . . . . . . . Absorption coefficient

. . . . . . . . . . . . Scattering coefficient

. . . . . . . . . . . . . Total extinction coefficient

. . . . . . . . . . . . Source term

. . . . . . . . . . . . Scattering term

. . . . . . . . . . . . . Emission term

. . . . . . . . . . Scattering phase function

. . . . . . . . . . . . . . . . . . Eccentricity of Henyey-Greenstein function

. . . . . . . . . . . . . Surface emission function

. . . . . . . . . . Surface scattering kernel

. . . . . . . . . . . . Optical depth

. . . . . . . . . . . . . . . Reflectivity function

. . . . . . . . . . . . . . . . Radiosity of patch

hq

gq

SmLB

f( )

SmRB

f( )

SmI

f( )

L v n,( )

Lin v n,( )

Ω+

N

B x( )

αa x n,( )

αs x n,( )

α x n,( )

χt x n,( )

χs x n,( )

χ x n,( )

ϕ x n′ n, ,( )

e

E x n,( )

k x n' n, ,( )

A s1 s2,( )

ρ x( )

LAiAi

Page 188: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

170 .

. . . . . . . . . . . . . . . . .Emission of volume element

. . . . . . . . . . . . . . .Surface-to-surface exchange factor

. . . . . . . . . . . . . . .Surface-to-volume exchange factor

. . . . . . . . . . . . . . .Volume-to-surface exchange factor

. . . . . . . . . . . . . . .Volume-to-volume exchange factor

. . . . . . . . . . . . . . .Shape function

. . . . . . . . . . . . .Kernel function

. . . . . . . . . . . . . . . . . .Kernel integral operator

. . . . . . . . . . . . . . .Residual function

. . . . . . . . . . . . . . . . . .Emission value vector

. . . . . . . . . . . . . . . . . .Source value vector

. . . . . . . . . . . . . . . .Residual vector

. . . . . . . . . . . . . . . . .Entering point

sE . . . . . . . . . . . . . . . . . .Ray parameter for entering point

. . . . . . . . . . . . . . . . . .Leaving point

sL . . . . . . . . . . . . . . . . . .Ray parameter for leaving point

. . . . . . . . . . . . .Transparency between and

. . . . . . . . . . . . . . . . . .Opacity of segmentk

. . . . . . . . . . . . . . . . . .Intensity of segmentk

Chapter 4

. . . . . . . . . . . . . .Discrete source coefficient

. . . . . . . . . . . . . .Discrete opacity coefficient

. . . . . . . . . . . . . . .Projection of emission of volume elementx onto volume elementVi

χViVi

FAi Aj

FAiV j

FVi Aj

FViV j

N j x( )

κ x x',( )

K

Rχ x( )

C

Ct

R i( )

xE

xL

τ sE s',( ) xE x'

σk

I k

cm0pqrχt

cm0pqrσ

Pi x( )

Page 189: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

171

thod

be

. . . . . . Geometric-distance correction

. Directional correction

Scattering correction

Intensity ofpixel onside that is achieved from

. . . . Interior energy exchange factor

. . . . . . . . . . . . . . Source term approximation

. . . . . . . . . . . . . . . Opacity approximation

. . . . . . . . . . . . . . . Maximum error

. . . . . . . . . . . . . . Mean error

. . . . . . . . . . . . . Mean square error

. . . . . . . . . Emission of the volume element , computed by the zonal me

. . . . . . . . . . Emission of the volume element , computed by the global cu

algorithm

Chapter 5

. . . . . . . . . . . . . Array of acquired values

. . . . . . . . . . . . . -transfer function

. . . . . . . . . . . . . Emission transfer function

. . . . . . . . . . . . . . Discrete emission coefficient

. . . . . . . . . . . . . Emission detail coefficient

. . . . . . . . . . . . . . Discrete absorption coefficient

. . . . . . . . . . . . . Absorption detail coefficient

. . . . . . . . . . Shaded emission term

. . . . . . . . . . Diffuse reflection coefficient

Corrdist x y z, ,( )

Corrdir sidep sideq,( )

Corrscat p x y z side, , , ,( )

I χVqside pixel,( )→( ) Vq

Γp sidep, Cp side'p,i 1–( )( )

χtx( )

σ x( )

Qmax

Qmean

Qsquare

χVp

zonal methodVp

χVp

global cubeVp

cm0pqracuired

Transα α

Transχ

cm0pqrχ

dmpqrχ type,

cm0pqrα

dmpqrα type,

χshaded x( )

χdiffuse x( )

Page 190: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

172 .

. . . . . . . . . .Specular reflection coefficient

. . . . . . . . . . . . . . . . . .Normalized vector in direction of theith lightsource

. . . . . . . . . . . . . . . . .Normalized halfway vector for theith lightsource

. . . . . . . . . . . . . . . . . .Viewing direction

. . . . . . . . .Exponent used to approximate highlight

. . . . . . . . . . . . . . . . . .Stepsize of quadrature formulae

. . . . . . . . . . . . . . . . . .Lower end of support of functionf (for the case of multivariatefunctions, this is a vector)

. . . . . . . . . . . . . . . . . .Upper end of support of functionf (for the case of multivariatefunctions, this is a vector)

. . . . . . . . . . . . .Differential sampling parameter of functionf along axisaxis

. . . . . . . . . . . .Index set of relevant functions

. . . . . . . . . . . . . . .Leaving parameter for the support region of

. . . . . . .Remainder of intensity approximation

. . . . . . . . .Remainder of optical depth approximation

Chapter 6

. . . . . . . . . . . . . . . . . .Phase shifted function in the frequency domain

k . . . . . . . . . . . . . . . . . . .Depth cueing factor

. . . . . . . . . . . . . . . . . .Phase shift

k . . . . . . . . . . . . . . . . . . .Depth cueing vector

L . . . . . . . . . . . . . . . . . . .Depth cueing Direction

n . . . . . . . . . . . . . . . . . . .Normal vector of the slicing plane (equals viewing direction)

u, v . . . . . . . . . . . . . . . . .Orthonormal basis vectors of the slicing plane

. . . . . . . . . . . . . . . . .Sampling stepsize inU direction

. . . . . . . . . . . . . . . . .Sampling stepsize inV direction

χspecular x( )

J i

H i

n

specularity

δs

r f

l f

dt f axis,

rel f si,( )

sLf mpqr f mpqr

RL s0 si 1– si, ,( )

RA si 1– sip,( )

H

f 0

∆U

∆V

Page 191: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

173

ent

αl , βl. . . . . . . . . . . . . . . Depth-cueing angles

. . . . . . . . . . . . . . . . . Texture weighting function for depth cueing

L init . . . . . . . . . . . . . . . . Intersection point of the volume’s bounding sphere and its tangplane

BM. . . . . . . . . . . . . . . . . Basis function midpoint

VM. . . . . . . . . . . . . . . . . Volume’s midpoint

α , β . . . . . . . . . . . . . . . Viewing angles

, . . . . . . . . . . . . . . Depth cueing angles

. . . . . . . . . . . . . . . Intersection point of bounding sphere and planar light source

. . . . . . . . . . . . . . . Distance weight

. . . . . . . . . . . . . . . Midpoint of basis function

. . . . . . . . . . . . . . . . . Phase shift vector

. . . . . . . . . . . . . . . . Discrete sampling point on slicing plane

. . . . . . . . . . Truncation error

. . . . . . . . . . . . Significance of coefficientw for color componentC

. . . . . . . . . . . . . . . Importance weight for color componentC

. . . . . . . . . . . . . . Energy of coefficientw

. . . . . . n.th scaling function of wavelet coefficient for color componentC,decomposition levelm and wavelet typetype

. . . . . . Approximation of then.th scaling function of wavelet coefficient forcolor componentC, decomposition levelm and wavelet typetype

. . . . . . . . . . . Positional threshold

. . . . . . . . . . Coefficient threshold

. . . . . . . Delta factor for color componentC, decomposition levelm andwavelet typetype

. . . . . . . . . . . . . . . . . . Number of quantization bits

. . . . . . . . . . . . . . . . Relative approximation energy

ωd

αl βl

kinit

ωdist

bmid

f 0

ppq

Error trunc

S w C,( )

I C( )

E w( )

wn C m type, ,( )

wn C m type, ,( )

Threspos

Threscoeff

∆ C m type, ,( )

P

QV

Page 192: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

174 .

. . . . . . . . . . . . . . . . .Signal-noise ratio

. . . . . . . . . . . . . . . . .Quantization error

. . . . . . . . . . . . .Absolute energy difference

Chapter 7

. . . . . . . . . . . . . . . . . .Sampling distance

. . . . . . . . . . . . .Relative approximation error

. . . . . . . . . . . . .Average relative approximation error

QI

QE

r w C( )( )

δs

QApprox

QApprox

Page 193: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

Crans-

r

tere:

the

s.”

s

con-

CReferences

[1] A. Cohen and I. Daubechies and P. Vial. “Wavelets on the interval and fast wavelet tforms.” Appl. Comput. Harmon. Anal., 1(1):54–81, 1993.

[2] A. W. Appel. “An efficient program for many-body simulation.”SIAM Journal on Scien-tific and Statistical Computing, 6(1):85–103, Jan. 1985.

[3] J. R. Arvo. Analytic Methods for Simulated Light Transport. Ph.D. thesis, Decembe1995.

[4] J. R. Arvo and D. B. Kirk. “Particle Transport and Image Synthesis.” InComputer Graph-ics (ACM SIGGRAPH ’90 Proceedings), volume 24, pages 63–66, August 1990.

[5] G. Battle. “A block spin construction of ondelettes.”Comm. Math. Phys., 110:601–615,1987.

[6] A. Benveniste. “Multiscale signal processing: From qmf to wavelets.” In E. F. Depretand A.-J. van der Veen, editors,Algorithms and Parallel VLSI Architectures Volume ATutorials, pages 71–96. Elsevier Science Publishers, 1991.

[7] P. Blasi, B. L. Saec, and C. Schlick. “An Importance Driven Monte-Carlo Solution toGlobal Illumination Problem.” InFifth Eurographics Workshop on Rendering, pages173–183, Darmstadt, Germany, June 1994.

[8] J. F. Blinn. “Light reflection functions for simulation of clouds and dusty surfacevolume 16, pages 21–29, July 1982.

[9] C. F. Bohren and D. R. Huffman.Absorbtion and Scattering of Light by Small Particle.John Wiley & Sons, New York, 1983.

[10] B. Cabral, N. Cam, and J. Foran. “Accelerated volume rendering and tomographic restruction using texture mapping hardware.” In A. Kaufman and W. Krueger, editors,1994Symposium on Volume Visualization, pages 91–98. ACM SIGGRAPH, Oct. 1994. ISBN0-89791-741-3.

[11] S. Chandrasekhar.Radiative Transfer. Clarendon Press, Oxford, UK, 1950.

[12] C. Chui.An Introduction to Wavelets. Academic Press, 1992.

175

Page 194: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

176 .

chu-r

prin-

tered

orted

s.”

p-

ys-

line

so--son

ress,

85)

,

[13] C. Chui and E. Quak. “Wavelets on a bounded interval.” In D. Braess and L. L. Smaker, editors,Numerical Methods of Approximation Theory, pages 1–24. BirkhäuseVerlag, Basel, 1992.

[14] C. K. Chui and J. Z. Wang. “A cardinal spline approach to wavelets.”Proc. Amer. Math.Soc., 113:785–793, 1991.

[15] C. K. Chui and J. Z. Wang. “On compactly supported spline wavelets and a dualityciple.” Trans.Amer.Math.soc., 330:903–915, 1992.

[16] C.K. Chui and J.D. Ward and K. Jetter and J. Stoeckler. “Wavelets for analyzing scatdata: An unbounded operator approach.”Appl. Comput. Harmon. Anal., 3(3):254–267,1996.

[17] A. Cohen, I. Daubechies, and J. Feauveau. “Bi-orthogonal bases of compactly suppwavelets.”Comm. Pure and Applied Mathematics 45, pages 485–560, 1992.

[18] M. F. Cohen and J. R. Wallace.Radiosity and Realistic Image Synthesis. Academic PressProfessional, Boston, MA, 1993.

[19] R. Crawfis and N. Max. “Direct volume visualization of three-dimensional vector field1992 Workshop on Volume Visualization, pages 55–60, 1992.

[20] I. Daubechies.Ten Lectures on Wavelets. CBMS-NSF regional conference series in aplied mathematics, no.61, SIAM, 1992.

[21] D. L. DiLaura. “On the Simplification of Radiative Transfer Calculations.”Journal of theIlluminating Engineering Society, 12(1):12–16, October 1982.

[22] R. Dittrich. “Entwicklung eines interaktiven, waveletbasierten Volumenrenderingstems.” Diplomarbeit, ETH Zürich, 1996.

[23] D. E. Dudgeon and R. M. Mersereau.Multidimensional Digital Signal Processing. Pren-tice Hall, N.J., 1984.

[24] E. Quak and N. Weyrich. “Decomposition and reconstruction algorithms for spwavelets on a bounded interval.”Appl. Comput. Harmon. Anal., 1(3):217–231, 1994.

[25] M. Eck, T. DeRose, T. Duchamp, H. Hoppe, M. Lounsbery, and W. Stuetzle. “Multirelution analysis of arbitrary meshes.” In R. Cook, editor,SIGGRAPH 95 Conference Proceedings, Annual Conference Series, pages 173–182. ACM SIGGRAPH, AddiWesley, Aug. 1995. held in Los Angeles, California, 06-11 August 1995.

[26] A. Finkelstein and D. H. Salesin. “Multiresolution curves.” In A. Glassner, editor,Pro-ceedings of SIGGRAPH ’94 (Orlando, Florida, July 24–29, 1994), Computer GraphicsProceedings, Annual Conference Series, pages 261–268. ACM SIGGRAPH, ACM PJuly 1994. ISBN 0-89791-667-0.

[27] A. Fujimoto and K. Iwata. “Accelerated ray tracing.” In T. Kunii, editor,ComputerGraphics: Visual Technology and Art (Proceedings of Computer Graphics Tokyo ’,pages 41–65, New York, 1985. Springer Verlag.

[28] K. Fukunaga.Introduction to Statistical Pattern Recognition. 2nd Ed.. Academic Press,New York, 1990.

[29] A. S. Glassner.Principles of Digital Image Synthesis. Morgan Kaufmann, San FranciscoCA, 1995.

Page 195: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

177

-

tion-

’93

onal996.

.

the

ed

ons

m.”,

rchi-

es.”

trili-

[30] G. H. Golub and C. F. V. Loan.Matrix Computations. Johns Hopkins Series in the Mathematical Sciences. The Johns Hopkins University Press, 3.rd. edition, 1996.

[31] C. M. Goral, K. E. Torrance, D. P. Greenberg, and B. Battaile. “Modelling the Interacof Light Between Diffuse Surfaces.” InComputer Graphics (ACM SIGGRAPH ’84 Proceedings), volume 18, pages 212–222, July 1984.

[32] S. J. Gortler, P. Schroder, M. F. Cohen, and P. Hanrahan. “Wavelet Radiosity.” InCom-puter Graphics Proceedings, Annual Conference Series, 1993 (ACM SIGGRAPHProceedings), pages 221–230, 1993.

[33] L. F. Greengard.The Rapid Evaluation of Potential Fields in Particle Systems. MITPress, 1988.

[34] M. H. Gross. “L^2 optimal oracles and compression strategies for semiorthogwavelets.” Technical Report 254, Computer Science Department, ETH Zürich, 1http://www.inf.ethz.ch/publications/tr200.html.

[35] M. H. Gross, R. Gatti, and O. Staadt. “Fast multiresolution surface meshing.” InProceed-ings of IEEE Visualization ’95, pages 135–142. IEEE Computer Society Press, 1995

[36] M. H. Gross, R. Koch, L. Lippert, and A. Dreger. “A new method to approximatevolume rendering equation using wavelets and piecewise polynomials.”Computers &Graphics, 19(1):47–62, 1995.

[37] M. H. Gross, L. Lippert, R. Dittrich, and S. Häring. “Two methods for wavelet-basvolume rendering.”Computers & Graphics, 21(2):237–252, 1997.

[38] M. H. Gross, O. G. Staadt, and R. Gatti. “Efficient triangular surface approximatiusing wavelts and quadtree data structures.”IEEE Transactions on Visualization andComputer Graphics, 2(2):130–143, June 1996.

[39] A. Haar. “Zur Theorie der orthogonalen Funktionen-Systeme.”Math. Ann., 69:331–371,1910.

[40] P. Hanrahan, D. Salzman, and L. Aupperle. “A Rapid Hierarchical Radiosity AlgorithIn Computer Graphics (ACM SIGGRAPH ’91 Proceedings), volume 25, pages 197–206July 1991.

[41] P. S. Heckbert. “Finite Element Methods for Radiosity.” InACM SIGGRAPH ’93 CourseNotes - Global Illumination, chapter 5, pages 1–7. 1993.

[42] J. Hesser, R. Männer, G. Knittel, W. Strasser, H. Pfister, and A. Kaufman. “Three atectures for volume rendering.”Com-pu-ter Graphics Forum, 14(3):C/111–C/122, Sept.1995.

[43] J. R. Howell.A Catalog of Radiation Configuration Factors. McGraw Hill, New York,NY, 1982.

[44] B. Jawerth and W. Sweldens. “An overview of wavelet based multiresolution analysSIAM Review, 36(3):377–412, Sept. 1994.

[45] J. T. Kajiya. “The Rendering Equation.” InComputer Graphics (ACM SIGGRAPH ’86Proceedings), volume 20, pages 143–150, August 1986.

[46] H. R. Ke and R. C. Chang. “Ray-cast volume rendering accelerated by incrementalnear interpolation and cell templates.”The Visual Computer, 11:297–308, 1995.

Page 196: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

178 .

e

inerTH

-

n of

r-791-

for

ocal-

n of

ol-

for

nta-

ts.”

” In

[47] A. Keller. “A Quasi-Monte Carlo Algorithm for the Global Illumination Problem in thRadiosity Setting.” Technical Report 260/94, University of Kaiserlautern, 1994.

[48] C. Kurmann. “Interaktive Visualisierung von Volumendaten unter Einbeziehung eexponentiellen Dämpfung und optimierter Farbraumkonvertierung.” Diplomarbeit, EZürich, 1996.

[49] P. Lacroute.The VolPack Volume Rendering Library. http://graphics.stanford.edu/software/volpack/.

[50] P. Lacroute and M. Levoy. “Fast volume rendering using a shear–warp factorizatiothe viewing transformation.” In A. Glassner, editor,Proceedings of SIGGRAPH ’94(Orlando, Florida, July 24–29, 1994), Computer Graphics Proceedings, Annual Confeence Series, pages 451–458. ACM SIGGRAPH, ACM Press, July 1994. ISBN 0-89667-0.

[51] D. Laur and P. Hanrahan. “Hierarchical splatting: A progressive refinement algorithmvolume rendering.” In T. W. Sederberg, editor,Computer Graphics (SIGGRAPH ’91Proceedings), volume 25, pages 285–288, July 1991.

[52] P. G. Lemarie. “Ondelettes a localisation exponentielle. (wavelets with exponential lization).” J. Math. Pures Appl., 67(3):227–236, 1988.

[53] M. Levoy. “Display of surfaces from volume data.”IEEE Computer Graphics and Appli-cations, 8(3):29–37, May 1988.

[54] M. Levoy. “Efficient ray tracing of volume data.”ACM Transactions on Graphics,9(3):245–261, July 1990.

[55] L. Lippert and M. H. Gross. “Fast wavelet based volume rendering by accumulatiotransparent texture maps.” InProceedings of Eurographics ’95, pages 431–443, 1995.

[56] L. Lippert, M. H. Gross, and S. Häring. “Ray-tracing of multiresolution b-spline vumes.” Technical Report 239, ETH-Zürich, 1996.

[57] L. Lippert, M. H. Gross, and C. Kurmann. “Compression domain volume renderingdistributed environments.” InProceedings of Eurographics ’97, pages 95–107, 1997.

[58] S. Mallat. “A theory for multiresolution signal decomposition: The wavelet represetion.” IEEE Transactions on Pattern Analysis and Machine Intelligence, 11(7):674–693,1989.

[59] T. Malzbender. “Fourier volume rendering.”ACM Transactions on Graphics, 12(3):233–250, July 1993.

[60] Y. Meyer. “Ondelettes sur l’intervalle.”Rev. Mat. Iberoamericana, 7:115–133, 1992.

[61] C. A. Micchelli. “Using the refinement equations for the construction of pre-waveleNumerical Algorithms, 1(1):75–116, 1991.

[62] S. Muraki. “Volume data and wavelet transform.”IEEE Computer Graphics and Appli-cations, 13(4):50–56, July 1993.

[63] S. Muraki. “Multiscale 3D edge representation of volume data by a DOG wavelet.A. Kaufman and W. Krueger, editors,1994 Symposium on Volume Visualization, pages35–42. ACM SIGGRAPH, Oct. 1994. ISBN 0-89791-741-3.

Page 197: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

179

ional

ingi-

ren-

,

beit,

ties

ities

r,.

s for

94.

der-

r

[64] T. Nishita and E. Nakamae. “Continuous Tone Representation of Three-DimensObjects Taking Account of Shadows and Interreflection.” InComputer Graphics (ACMSIGGRAPH ’85 Proceedings), volume 19, pages 23–30, July 1985.

[65] S. N. Pattanaik and S. P. Mudur. “Computation of Global Illumination in a ParticipatMedium by Monte Carlo Simulation.”The Journal of Visualization and Computer Anmation, 4(3):133–152, July - Spetember 1993.

[66] H. Pfister and A. E. Kaufman. “Cube-4 - A scalable architecture for real-time volumedering.” In1996 Volume Visualization Symposium, pages 47–54. IEEE, Oct. 1996. ISBN0-89791-741-3.

[67] B. T. Phong. “Illumination for computer generated pictures.”Communiations of theACM, 18(6):311–317, 1975.

[68] T. Porter and T. Duff. “Compositing digital images.” In H. Christiansen, editor,Com-puter Graphics (SIGGRAPH ’84 Proceedings), volume 18, pages 253–259, July 1984.

[69] W. H. Press, S. A. Teukolsky, W. T. Vetterling, and B. P. Flannery.Numerical Recipesin C: The Art of Scientific Computing (2nd ed.). Cambridge University Press, Cambridge1992. ISBN 0-521-43108-5.

[70] D. H. Pritchard. “U.S. color television fundamentals – A review.”IEEE Transactions onConsumer Electronics, 23(4):467–478, Nov. 1977.

[71] P. Ruser. “Implementierung eines lokalisierten filters im waveletraum.” SemesterarETH Zürich, 1996.

[72] H. E. Rushmeier and K. E. Torrance. “The Zonal Method for Calculating Light Intensiin the Presence of a Participating Medium.” InComputer Graphics (ACM SIGGRAPH’87 Proceedings), volume 21, pages 293–302, July 1987.

[73] H. E. Rushmeier and K. E. Torrance. “The zonal method for calculating light intensin the presence of a participating medium.” In M. C. Stone, editor,Computer Graphics(SIGGRAPH ’87 Proceedings), volume 21, pages 293–302, July 1987.

[74] P. Sabella. “A rendering algorithm for visualizing 3D scalar fields.” In J. Dill, editoComputer Graphics (SIGGRAPH ’88 Proceedings), volume 22, pages 51–58, Aug. 1988

[75] P. Schroder, S. J. Gortler, M. F. Cohen, and P. Hanrahan. “Wavelet ProjectionRadiosity.”Computer Graphics Forum, 13(2):141–151, June 1994.

[76] P. Schroder and P. Hanrahan. “On the form factor between two polygons.” InComputerGraphics Proceedings, Annual Conference Series, 1993, pages 163–164, 1993.

[77] P. Schroder and P. Hanrahan. “Wavelet Methods for Radiance Computations.” InFifthEurographics Workshop on Rendering, pages 303–311, Darmstadt, Germany, June 19

[78] J. M. Shapiro. “Embedded image coding using zerotrees of wavelet coefficients.”IEEETrans. Signal Processing, 41(12):3445–3462, Dec. 1993.

[79] P. Shirley and A. Tuchman. “A polygonal approximation to direct scalar volume rening.” In Computer Graphics (San Diego Workshop on Volume Visualization), volume 24,pages 63–70, Nov. 1990.

[80] F. Sillion. “A Unified Hierarchical Algorithm for Global Illumination with ScatteringVolumes and Object Clusters.”IEEE Transactions on Visualization and ComputeGraphics, 1(3), September 1995.

Page 198: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

180 .

band

truc-

tor,.

ine

s-

ct

an

.

ren-)

[81] F. Sillion and C. Puech.Radiosity and Global Illumination. Morgan Kaufmann, SanFrancisco, CA, 1994.

[82] M. Smith and T. P. Barnwell. “Exact reconstruction techniques for tree-structured sucoders.”IEEE Trans. on ASSP, 34:434–441, June 1986.

[83] O. G. Staadt, M. Gross, and R. Weber. “Multiresolution compression and reconstion.” In Proceedings of IEEE Visualization 1997, pages 337–346. IEEE, 1997.

[84] T. Totsuka and M. Levoy. “Frequency domain volume rendering.” In J. T. Kajiya, ediComputer Graphics (SIGGRAPH ’93 Proceedings), volume 27, pages 271–278, Aug1993.

[85] M. Unser, A. Aldroubi, and M. Eden. “An the asymptotic convergence of b-splwavelets to gabor functions.”IEEE Transactions on Information Theory, 38(2):864–872,1992.

[86] M. Unser, A. Aldroubi, and M. Eden. “A family of polynomial spline wavelet tranforms.” Signal Processing, 30:141–162, 1993.

[87] C. Upson and M. Keeler. “VBUFFER: Visible volume rendering.” In J. Dill, editor,Com-puter Graphics (SIGGRAPH ’88 Proceedings), volume 22, pages 59–64, Aug. 1988.

[88] R. Vögtli. “Orbit - designing a framework for object migration and for distributed objecomputing.” Diplomarbeit, ETH Zürich, 1996.

[89] R. Westermann. “A multiresolution framework for volume rendering.” In A. Kaufmand W. Krueger, editors,1994 Symposium on Volume Visualization, pages 51–58. ACMSIGGRAPH, Oct. 1994. ISBN 0-89791-741-3.

[90] L. Westover. “Footprint evaluation for volume rendering.” In F. Baskett, editor,Com-puter Graphics (SIGGRAPH ’90 Proceedings), volume 24, pages 367–376, Aug. 1990

[91] J. Wilhelms and A. Van Gelder. “A coherent projection approach for direct volumedering.” In T. W. Sederberg, editor,Computer Graphics (SIGGRAPH ’91 Proceedings,volume 25, pages 275–284, July 1991.

[92] R. Yagel and A. Kaufmann. “Template-based volume viewing.”Computer GraphicsForum (Eurographics ’92), 11(3):153–167, Sept. 1992.

Page 199: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic

9CURRICULUM VITAE

Lars Lippert

November 21, 1967 Born in Frankfurt am Main, Germany,citizen of Germany,son of Werner and Heike Lippert

1987 Abitur, Werner Heisenberg Gymnasium,Rüsselsheim, Germany

1994 Diploma in Mathematics with major in Computer Science,Technical University Darmstadt,Darmstadt, Germany

1994 - 1998 Research and teaching assistant,in the Computer Graphics Research Group headed byProf. M. Gross, Institute for Scientific Computing,Swiss Federal Institute of Technology,Zürich, Switzerland

1998 - Member of consultant staff,Alcatel Telecommunications,Zürich, Switzerland

Page 200: aW velet-based Volume Rendering - evl · Abstract This thesis discusses theoretical and practical improvements to volume rendering in the context of visual data exploration and realistic