volume stylizer: tomography-based volume painting
DESCRIPTION
Volume Stylizer: Tomography-based Volume Painting. Oliver Klehm 1 , Ivo Ihrke 1,2 , Hans-Peter Seidel 1 , Elmar Eisemann 3 1 Max-Planck-Institut fü r Informatik 2 Saarland University 3 TU Delft I3D 2013 23/03/2012. Motivation. Want to influence the appearance of volumes (voxels) - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/1.jpg)
Volume Stylizer:Tomography-based Volume PaintingOliver Klehm1, Ivo Ihrke1,2, Hans-Peter Seidel1, Elmar Eisemann3
1 Max-Planck-Institut für Informatik2 Saarland University3 TU Delft
I3D 201323/03/2012
![Page 2: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/2.jpg)
Oliver Klehm, 2
![Page 3: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/3.jpg)
Oliver Klehm, 3
Want to influence the appearance of volumes (voxels)• Editing on a fine-grained level is non-intuitive• No suitable tools available
o A Programmable System For Artistic Volumetric Lighting [Nowrouzezahrai2011]
Approach:• Inverse rendering: editing by painting
Motivation
![Page 4: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/4.jpg)
Oliver Klehm, 4
What do we modify• Volume parameters (per voxel)
o Emissiono Albedoo Extinction
Our Goal
![Page 5: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/5.jpg)
Oliver Klehm, 5
What do we modify• Volume parameters (per voxel)
From what do we edit the parameters• Arbitrary input images (target views)• In practice: rendered images that were painted
Our Goal
![Page 6: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/6.jpg)
Oliver Klehm, 6
Our Goal: Volume Painting
![Page 7: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/7.jpg)
Oliver Klehm, 7
Our Goal: Volume Painting
![Page 8: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/8.jpg)
Oliver Klehm, 8
What do we modify• Volume parameters (per voxel)
From what do we edit the parameters• Arbitrary input images (target views)• In practice: rendered images that were painted
Additional required information• Per image: camera parameters (viewing position, direction)• Lighting, scene
How do we optimize• Per-pixel difference to input image• Linear problem• Inconsistent input -> least-squares solution
Our Goal
![Page 9: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/9.jpg)
Oliver Klehm, 9
Given: each pixel k of target view as a constraint pixel Data associated:
ray origin, direction, target radiance
Try to reconstruct volume properties, such thatcomputed radiance matches target radiance(per pixel k)
Specific Goal
![Page 10: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/10.jpg)
Oliver Klehm, 10
A single pixel may influence many voxels And vice versa…
Problem overview
![Page 11: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/11.jpg)
Oliver Klehm, 11
Volume Rendering
![Page 12: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/12.jpg)
Oliver Klehm, 12
Represent the target field (e.g. ) as linear combination of basis functions• Common for stored volumes (== voxels: box/triangle basis fct.)
Reconstruct coefficient vector
, such that
Volume Reconstruction
Includes target Includes volume rendering
![Page 13: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/13.jpg)
Oliver Klehm, 13
Emission Reconstruction
![Page 14: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/14.jpg)
Oliver Klehm, 14
W is huge, ill-conditioned, …!=> iterative conjugate gradient method
We need to compute:• Objective Function:• Derivative:
The trick:
=> this is rendering / back-projection!
Optimization
=
![Page 15: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/15.jpg)
Oliver Klehm, 15
Pre-computation• Cache incoming light in volume per voxel• Sub-sample environment map, deep shadow maps
Optimization• 1. objective function evaluation
o Voxel traversal, gathering pre-cached incoming light
Implementation
![Page 16: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/16.jpg)
Oliver Klehm, 16
Pre-computation• Cache incoming light in volume per voxel• Sub-sample environment map, deep shadow maps
Optimization• 1. objective function evaluation• 2. gradient of objective function
Implementation
![Page 17: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/17.jpg)
Oliver Klehm, 17
Pre-computation• Cache incoming light in volume per voxel• Sub-sample environment map, deep shadow maps
Optimization• 1. objective function evaluation• 2. gradient of objective function• Additional vector arithmetic (addition, norm2, …)
Implementation
![Page 18: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/18.jpg)
Oliver Klehm, 18
Results - Video
![Page 19: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/19.jpg)
Oliver Klehm, 19
How to handle inconsistent inputs? How to define intermediate views? How to generalize? – requires different optimization
Optimize for volume and lighting
Limitations / Future Work
![Page 20: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/20.jpg)
Oliver Klehm, 20
3D volume properties by 2D painting Standard Rendering Model Fast GPU Optimization for interactive sessions
Conclusion
Thank you
![Page 21: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/21.jpg)
Oliver Klehm, 21
All OpenGL Vectors are actually 3D Textures Operations as shaders• Matrix multiplication is volume rendering• Arithmetic operations are “simple” shaders
=> Reconstruction in order of seconds
Fast Implementation
![Page 22: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/22.jpg)
Oliver Klehm, 22
Results
![Page 23: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/23.jpg)
Oliver Klehm, 23
Results
![Page 24: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/24.jpg)
Oliver Klehm, 24
Results - Extinction
![Page 25: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/25.jpg)
Oliver Klehm, 25
Light Editing• Lighting with paint [Pellacini2007]
o Non-linear light optimization• BendyLights [Kerr2010]
o Editing of spot lights• Optimizing Environment Maps for Material Depiction [Bousseau2011]
o Optimization with adhoc metrics Volume editing
• A Programmable System For Artistic Volumetric Lighting [Nowrouzezahrai2011]o Derivation of volume properties for single light beam onlyo Replacing physically-motivated parts of rendering with shaderso Homogeneous media onlyo Treat light beam as string of light (e.g. flow of particle)
• Automatically Adjusting Parameters for Rendering Clouds using Photographs [Dobashi2012]
Related Work
![Page 26: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/26.jpg)
Oliver Klehm, 26
Tomography• Ihrke• Wetzstein• Lanmann
Fabrication• Shadow Art [Pauly2009]• Manufactoring Layered Attenuators for Multiple Prescribed Shadow Images
[Baran2012]
Related Work
![Page 27: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/27.jpg)
Oliver Klehm, 27
Properties to reconstruct:• Extinction (overall density of volume)• Albedo (amount of scattering)• Emission (self glow)
Assumption: Single Scattering!• Light scatters ONCE in volume
Volume Properties
![Page 28: Volume Stylizer: Tomography-based Volume Painting](https://reader036.vdocuments.mx/reader036/viewer/2022081505/568165ed550346895dd911ab/html5/thumbnails/28.jpg)
Oliver Klehm, 28
Emission reconstruction
Background / first surface, attenuated by volume
Attenuation by volume
Integration along view ray
In-scattered light
Number of particles (extinction)