490 likes | 772 Views
Gaussian KD-Tree for Fast High-Dimensional Filtering. A. Adams, N. Gelfand , J. Dolson , and M. Levoy , Stanford University, SIGGRAPH 2009. Edge-Preserving Filtering. Noise Suppression . Detail Enhancement . High Dynamic Range Imaging .
E N D
Gaussian KD-Tree for Fast High-Dimensional Filtering A. Adams, N. Gelfand, J. Dolson, and M. Levoy, Stanford University, SIGGRAPH 2009.
Edge-Preserving Filtering Noise Suppression Detail Enhancement High Dynamic Range Imaging
Edge-Preserving Filtering for Image Analysis Input Image Base Image Detail Image
Edge-Preserving Vs. Edge-Blurring Input Image Edge-Preserving Base Image Edge-Blurring Base Image
Edge-Preserving Vs. Edge-Blurring Halo Artifacts Edge-Preserving Enhanced Image Edge-Blurring Enhanced Image
Bilateral Filtering Intensity y x Output Input Space Weight Range Weight Space Weight Range Weight
Bilateral Filtering Intensity y x Output Input Bilateral Weight Space Weight Range Weight
Bilateral Filtering Input Image Gaussian: σp = 12 Bilateral: σp = 12, σc = 0.15
Computational Complexity of Bilateral Filtering • O(n2d) • Image Size: n • Maximum Filter Size: n • Dimension: d • High Computational Complexity Intensity y x Input
Novel Methods • Bilateral Grid • J. Chen, S. Paris, and F. Durand, “Real-time edgeaware image processing with the bilateral grid,” ACM Transactions on Graphics (Proc. SIGGRAPH 07). • Gaussian KD-Tree • A. Adams, N. Gelfand, J. Dolson, and M. Levoy, “Gaussian KD-Trees for Fast High-Dimensional Filtering,” ACM Transactions on Graphics (Proc. SIGGRAPH 09).
High-Dimensional Filtering Intensity y x
A Two-Dimensional Example I I Space Space Range Gaussian Filtering Kernel Signal Signal Output Signal x x Bilateral Filtering I Output Signal Large Kernel Size High Computational Complexity! Kernel x
Bilateral Grid Downsampling Bilateral Grid Spatial Grid I I Signal Signal x x Traditional Spatial Downsampling Bilateral Grid I Bilateral Grid Signal Kernel I x x Bilateral Grid Downsampling
intensity space Bilateral Filter on the Bilateral Grid Image scanline BilateralGrid
intensity intensity space space Bilateral Filter on the Bilateral Grid Image scanline BilateralGrid Gaussian blur grid values Slice: query gridwith input image Filtered scanline
Bilateral Filtering for Color Image Bilateral Filtering Based on Luminance Bilateral Filtering Based on Color
Bilateral Grid for Color Image High-Dimensional Grid (5d grid) High Memory Usage Cost Image
Gaussian KD-Tree • Low Computational Complexity • Low Memory Usage
Gaussian KD-Tree • Building The Tree • Querying The Tree
Building The Tree Intensity Longest Dimension, η1d Gaussian KD-Tree η1 η1cut η1max η1min Bounding Box Space
Building The Tree Intensity Gaussian KD-Tree η1 η2 η2d η2 η2cut η2min η2max Space
Building The Tree Intensity η3max Gaussian KD-Tree η3d η1 η3cut η3 η2 η3 η3min Space
Building The Tree Intensity Gaussian KD-Tree η1 η3 η2 η4 η4cut η4d η4 η4min η4max Space
Building The Tree Gaussian KD-Tree Intensity η1 η3 η2 …… …………. η4 • Inner Node • Cutting Dimension • Min, Max Bound • Left, Right Child Space
Building The Tree Intensity • Leaf Node • Position Space
Querying The Tree Gaussian KD-Tree η1 Image Pixel Querying η3 η2 High-Dimensional Space …… …………. η4
Querying The Tree Gaussian KD Tree Image Pixel Inner Node Leaf Node Different Weighting to Leaf Nodes
ηcut 1-D Example of Splatting Space ηcut Querying Position Sample Distribution Splatting Splatting Space Querying Position
Space 1-D Example of Splatting ηcut ηcut Querying Position Sample Distribution Splatting Splatting Space Querying Position
Querying The Tree Image Pixel Gaussian KD Tree Samples Inner Node Leaf Node Sample Splitting to Leaf Nodes
Summary r,g,b y High-Dimensional Space Resolution Reduction Input Image x • Monte-Carlo Sampling • Weighted Importance Sampling Gaussian KD Tree
Applications • Bilateral Filtering 5-D Bilateral Grid Naïve Bilateral Filtering
KD-Tree 3-D Bilateral Grid
Complexity and Performance Analysis Filter Size Large 5D Grid Gaussian KD-Tree Naïve Small
Applications • Non-local Mean Filtering Input Image Output Image
Non-local Mean Filtering Target Patch Searching Patches ….. Patch
Non-local Mean Filtering with PCA Patch Examples 16 Leading Eigenvectors http://www.ceremade.dauphine.fr/~peyre/numerical-tour/tours/denoising_nl_means/
Non-local Mean Filtering Target Patch High-Dimensional Space Searching Patches ….. Patch
Non-local Mean Filtering with Gaussian KD-Tree High-Dimensional Space Gaussian KD Tree Image Pixel Inner Node Leaf Node Different Weighting to Leaf Nodes
Applications • Non-local Mean Filtering Input Image Output Image
Applications • Geometry Filtering Input Model Output Model with Gaussian Filtering Output Model with Non-local Mean
Conclusions • Novel methods of non-linear filter. • Bilateral grid and Gaussian kd-tree • High-dimensional non-linear filter. • Edge preserving smoothing • Computational Complexity Reduction • Importance sampling