SlideShare a Scribd company logo
1 of 45
Download to read offline
© 2011 Frank Nielsen
INF555
Fundamentals of 3D
Lecture 6:
Metric ball trees/Texture synthesis
Advanced coordinate pipelines
Fourier analysis/interpolation
Frank Nielsen
nielsen@lix.polytechnique.fr
19th October 2011
© 2011 Frank Nielsen
``Texture Synthesis by Non-parametric Sampling''
Alexei A. Efros and Thomas K. Leung
IEEE International Conference on Computer Vision (ICCV'99),
http://graphics.cs.cmu.edu/people/efros/research/EfrosLeung.html
© 2011 Frank Nielsen
Stochastic texture synthesis
Fast nearest neighbor queries in high dimensions
© 2011 Frank Nielsen
Ball tree data structures for
nearest neighbor search
Compute a k-means on S with k=2
Split S into S1 and S2 according to the two centroids
Perform recursion on S1, and S2 until |S1|<n0 and |S2|<n0
Compute a k-means on S with k=2
Split S into S1 and S2 according to the two centroids
Perform recursion on S1, and S2 until |S1|<n0 and |S2|<n0
© 2011 Frank Nielsen
Nearest neighbor queries using ball trees
Pruning some of the nodes:
Let NN(q) denote the current best nearest neighbor of q
if ||q-c||-rq> rc then PRUNE (do not explore the subtree)
qc
rc
rq
At leaves, perform the
naive linear search,
and potentially update NN(q)
At leaves, perform the
naive linear search,
and potentially update NN(q)
© 2011 Frank Nielsen
Careful seeding for k-means:
Perform just a careful initialization!!!
© 2011 Frank Nielsen
21x21 patches.21x21 patches.
queryquery
Nearest neighborsNearest neighbors
Vp-trees worked best (=fastest) for image patches....
[ECCV'08]
© 2011 Frank Nielsen
Vantage point trees (or vp-trees)
Partition the data according to a vantage point and a distance threshold
Relative distances are thus used.
First split
Split from a vantage point:
Inner part
Outer part
do split recursion
© 2011 Frank Nielsen
Vantage point trees: Pruning condition
Prune outer Prune inner Cannot prune
© 2011 Frank Nielsen
Many ways to partition the point sets
© 2011 Frank Nielsen
GPGPU: General Purpose GPU
GPU cores
Tracking
ROIs
(region of interest)
GPU cores
Tracking
ROIs
(region of interest)
Distance au k=2 plus proche voisin
C: couleur (YUV)
C3: 3x3 neigh in Y
G: gradient
P: position
k=3
© 2011 Frank Nielsen
Log-Polar coordinates
© 2011 Frank Nielsen
Log-Polar coordinates
Scales and rotations become translations
Data reduction for retinal images...
© 2011 Frank Nielsen
Spherical coordinates
© 2011 Frank Nielsen
Spherical coordinates High Resolution Full Spherical Videos
Frank Nielsen, ITCC'02
© 2011 Frank Nielsen
Cylindrical coordinates
Panoramic image stitching:
Align by a translation into the
cylindrical coordinate map...
© 2011 Frank Nielsen
Environment maps
Equirectangular, mirror ball, cubic, etc.
© 2011 Frank Nielsen
Environment maps: Mirror ball
© 2011 Frank Nielsen
Environment maps for reflections
http://www.debevec.org/ReflectionMapping/
Blinn, 1976
1982
Interface, 1985
Lance Williams
© 2011 Frank Nielsen
Environment maps for reflections
Abyss, Terminator 2 (1991)
Best environment map for real-time graphics?
Dual paraboloid (2 images front/back only)
© 2011 Frank Nielsen
Transformations and their invariants
© 2011 Frank Nielsen
Taxonomy of projections:
© 2011 Frank Nielsen
Multiple centers of projections (MCOP)
Reconstruction from a single MCOP images
Generalizes epipolar geometry
Resolution dependent
© 2011 Frank Nielsen
Acquisition Example
© 2011 Frank Nielsen
Multiple centers of projections (MCOP)
Difficult to obtain in practice...
Localization is difficult
© 2011 Frank Nielsen
Multiple centers of projections (MCOP)
The art of depiction...
© 2011 Frank Nielsen
Stereo cyclographs...
© 2011 Frank Nielsen
Image backward vs forward mapping
Image warping
Resampling
Interpolation
© 2011 Frank Nielsen
Image Blending: Alpha channel
Interpretation at the
microscopic level...
© 2011 Frank Nielsen
Image sampling/reconstruction
© 2011 Frank Nielsen
Zone plate: Aliasing/ringing effect
1024x1024 256x256
downsampled
using bilinear interpolation
© 2011 Frank Nielsen
Continuous versus discrete convolutions
© 2011 Frank Nielsen
Fourier analysis
Fourier discovered that all periodic signals can be represented as
a sum (eventually infinite) of sinusoidal waves: sin(·) functions, the basis
functions.
Let f(·) denote the continuous function in the spatial domain and F(·)
denote the dual complex function, also called spectral function.
Euler formula (period 2pi)
© 2011 Frank Nielsen
Fourier analysis: Duality spatial/spectral domain
Spatial domain
Spectral domain
© 2011 Frank Nielsen
Fourier analysis: Phase/amplitude
Frequency magnitudes
Polar coordinates:
Amplitude Phase
Power spectrum
© 2011 Frank Nielsen
Fourier analysis: Convolution theorem
Convolution in spatial domain is a multiplication in Fourier domain
Convolution in frequency domain is a multiplication in spatial domain
© 2011 Frank Nielsen
Fourier analysis: Discrete transformations
1D
2D
© 2011 Frank Nielsen
Interpolation/reconstruction filters
Bilinear interpolation
© 2011 Frank Nielsen
Interpolation/reconstruction filters
Sinc (Lanczos) is ideal low-pass filter (infinite support)Sinc (Lanczos) is ideal low-pass filter (infinite support)
Ideal low-pass filter
Fourier transform
The sinc function
Fourier domain
Spatial domain
Windowed sinc
© 2011 Frank Nielsen
Mr Angry
Mrs Calm
Low/high frequency perception
© 2011 Frank Nielsen
Phase correlation
F* is the conjugate function
Stitch by 2D translation
two images
FFT can be computed
in O(nlog n) time
FFT can be computed
in O(nlog n) time
© 2011 Frank Nielsen
Phase correlation
Algorithme: Calculer le cross-power spectrum des deux images
Calculer la transformation inverse FFT, et
chercher le sommet dans l'image spatiale
Extend to rotation and scale
using the log-polar transform
© 2011 Frank Nielsen
Phase correlation
C.D. Kuglin and D.C. Hines. The phase correlation image
aligment method. Proc. Int. Conf. on Cybernetics and Society,
pages 163–165, 1975.
E. De Castro and C. Morandi. Registration of translated and
rotated images using finite fourier transforms.IEEE Trans. Pattern
Analysis and Machine Intelligence, (3):700–703, September
1987.
Extend up to affine transformations
ROBUST IMAGE REGISTRATION USING LOG-POLAR TRANSFORM,
ICIP 2000
© 2011 Frank Nielsen
Phase correlation: Detecting the peak
Sub-pixel accuracy if we fit a quadratic function
Clairvoyance system
IEEE IECON 2006
ClairVoyance: A Fast and Robust Precision Mosaicing System for Gigapixel Images
© 2011 Frank Nielsen
Veuillez commencer vos projets sous Processing et autres Java APIs
Utilisez JMyron sous Processing pour capturer la webcam
http://webcamxtra.sourceforge.net/

More Related Content

Similar to 3D TEXTURE SYNTHESIS

(slides 5) Visual Computing: Geometry, Graphics, and Vision
(slides 5) Visual Computing: Geometry, Graphics, and Vision(slides 5) Visual Computing: Geometry, Graphics, and Vision
(slides 5) Visual Computing: Geometry, Graphics, and VisionFrank Nielsen
 
(slides 1) Visual Computing: Geometry, Graphics, and Vision
(slides 1) Visual Computing: Geometry, Graphics, and Vision(slides 1) Visual Computing: Geometry, Graphics, and Vision
(slides 1) Visual Computing: Geometry, Graphics, and VisionFrank Nielsen
 
Wave-Based Non-Line-of-Sight Imaging Using Fast f–k Migration | SIGGRAPH 2019
Wave-Based Non-Line-of-Sight Imaging Using Fast f–k Migration | SIGGRAPH 2019Wave-Based Non-Line-of-Sight Imaging Using Fast f–k Migration | SIGGRAPH 2019
Wave-Based Non-Line-of-Sight Imaging Using Fast f–k Migration | SIGGRAPH 2019David Lindell
 
(slides 9) Visual Computing: Geometry, Graphics, and Vision
(slides 9) Visual Computing: Geometry, Graphics, and Vision(slides 9) Visual Computing: Geometry, Graphics, and Vision
(slides 9) Visual Computing: Geometry, Graphics, and VisionFrank Nielsen
 
(slides 2) Visual Computing: Geometry, Graphics, and Vision
(slides 2)  Visual Computing: Geometry, Graphics, and Vision(slides 2)  Visual Computing: Geometry, Graphics, and Vision
(slides 2) Visual Computing: Geometry, Graphics, and VisionFrank Nielsen
 
Particle filtering in Computer Vision (2003)
Particle filtering in Computer Vision (2003)Particle filtering in Computer Vision (2003)
Particle filtering in Computer Vision (2003)zukun
 
Nonlinear Optical Materials
Nonlinear Optical MaterialsNonlinear Optical Materials
Nonlinear Optical Materialskrishslide
 
CT Image Reconstruction- Avinesh Shrestha
CT Image Reconstruction- Avinesh ShresthaCT Image Reconstruction- Avinesh Shrestha
CT Image Reconstruction- Avinesh ShresthaAvinesh Shrestha
 
igarss11_1126_corbella.ppt
igarss11_1126_corbella.pptigarss11_1126_corbella.ppt
igarss11_1126_corbella.pptgrssieee
 
stduy Edge-Based Image Coarsening
stduy Edge-Based Image Coarseningstduy Edge-Based Image Coarsening
stduy Edge-Based Image CoarseningChiamin Hsu
 
SIGGRAPH 2014 Course on Computational Cameras and Displays (part 3)
SIGGRAPH 2014 Course on Computational Cameras and Displays (part 3)SIGGRAPH 2014 Course on Computational Cameras and Displays (part 3)
SIGGRAPH 2014 Course on Computational Cameras and Displays (part 3)Matthew O'Toole
 
論文紹介"DynamicFusion: Reconstruction and Tracking of Non-­‐rigid Scenes in Real...
論文紹介"DynamicFusion: Reconstruction and Tracking of Non-­‐rigid Scenes in Real...論文紹介"DynamicFusion: Reconstruction and Tracking of Non-­‐rigid Scenes in Real...
論文紹介"DynamicFusion: Reconstruction and Tracking of Non-­‐rigid Scenes in Real...Ken Sakurada
 
Noise reduction in echocardiography images using Contourlet Transform
Noise reduction in echocardiography images using Contourlet TransformNoise reduction in echocardiography images using Contourlet Transform
Noise reduction in echocardiography images using Contourlet TransformJerrin Panachakel
 
Image Interpolation Techniques in Digital Image Processing: An Overview
Image Interpolation Techniques in Digital Image Processing: An OverviewImage Interpolation Techniques in Digital Image Processing: An Overview
Image Interpolation Techniques in Digital Image Processing: An OverviewIJERA Editor
 
Dct,gibbs phen,oversampled adc,polyphase decomposition
Dct,gibbs phen,oversampled adc,polyphase decompositionDct,gibbs phen,oversampled adc,polyphase decomposition
Dct,gibbs phen,oversampled adc,polyphase decompositionMuhammad Younas
 

Similar to 3D TEXTURE SYNTHESIS (20)

(slides 5) Visual Computing: Geometry, Graphics, and Vision
(slides 5) Visual Computing: Geometry, Graphics, and Vision(slides 5) Visual Computing: Geometry, Graphics, and Vision
(slides 5) Visual Computing: Geometry, Graphics, and Vision
 
(slides 1) Visual Computing: Geometry, Graphics, and Vision
(slides 1) Visual Computing: Geometry, Graphics, and Vision(slides 1) Visual Computing: Geometry, Graphics, and Vision
(slides 1) Visual Computing: Geometry, Graphics, and Vision
 
Wave-Based Non-Line-of-Sight Imaging Using Fast f–k Migration | SIGGRAPH 2019
Wave-Based Non-Line-of-Sight Imaging Using Fast f–k Migration | SIGGRAPH 2019Wave-Based Non-Line-of-Sight Imaging Using Fast f–k Migration | SIGGRAPH 2019
Wave-Based Non-Line-of-Sight Imaging Using Fast f–k Migration | SIGGRAPH 2019
 
Spectral convnets
Spectral convnetsSpectral convnets
Spectral convnets
 
Chapter - 11 antenna.pdf
Chapter - 11 antenna.pdfChapter - 11 antenna.pdf
Chapter - 11 antenna.pdf
 
(slides 9) Visual Computing: Geometry, Graphics, and Vision
(slides 9) Visual Computing: Geometry, Graphics, and Vision(slides 9) Visual Computing: Geometry, Graphics, and Vision
(slides 9) Visual Computing: Geometry, Graphics, and Vision
 
Raskar Keynote at Stereoscopic Display Jan 2011
Raskar Keynote at Stereoscopic Display Jan 2011Raskar Keynote at Stereoscopic Display Jan 2011
Raskar Keynote at Stereoscopic Display Jan 2011
 
(slides 2) Visual Computing: Geometry, Graphics, and Vision
(slides 2)  Visual Computing: Geometry, Graphics, and Vision(slides 2)  Visual Computing: Geometry, Graphics, and Vision
(slides 2) Visual Computing: Geometry, Graphics, and Vision
 
Particle filtering in Computer Vision (2003)
Particle filtering in Computer Vision (2003)Particle filtering in Computer Vision (2003)
Particle filtering in Computer Vision (2003)
 
HR3D: Content Adaptive Parallax Barriers
HR3D: Content Adaptive Parallax BarriersHR3D: Content Adaptive Parallax Barriers
HR3D: Content Adaptive Parallax Barriers
 
Nonlinear Optical Materials
Nonlinear Optical MaterialsNonlinear Optical Materials
Nonlinear Optical Materials
 
CT Image Reconstruction- Avinesh Shrestha
CT Image Reconstruction- Avinesh ShresthaCT Image Reconstruction- Avinesh Shrestha
CT Image Reconstruction- Avinesh Shrestha
 
igarss11_1126_corbella.ppt
igarss11_1126_corbella.pptigarss11_1126_corbella.ppt
igarss11_1126_corbella.ppt
 
stduy Edge-Based Image Coarsening
stduy Edge-Based Image Coarseningstduy Edge-Based Image Coarsening
stduy Edge-Based Image Coarsening
 
SIGGRAPH 2014 Course on Computational Cameras and Displays (part 3)
SIGGRAPH 2014 Course on Computational Cameras and Displays (part 3)SIGGRAPH 2014 Course on Computational Cameras and Displays (part 3)
SIGGRAPH 2014 Course on Computational Cameras and Displays (part 3)
 
論文紹介"DynamicFusion: Reconstruction and Tracking of Non-­‐rigid Scenes in Real...
論文紹介"DynamicFusion: Reconstruction and Tracking of Non-­‐rigid Scenes in Real...論文紹介"DynamicFusion: Reconstruction and Tracking of Non-­‐rigid Scenes in Real...
論文紹介"DynamicFusion: Reconstruction and Tracking of Non-­‐rigid Scenes in Real...
 
Noise reduction in echocardiography images using Contourlet Transform
Noise reduction in echocardiography images using Contourlet TransformNoise reduction in echocardiography images using Contourlet Transform
Noise reduction in echocardiography images using Contourlet Transform
 
Image Interpolation Techniques in Digital Image Processing: An Overview
Image Interpolation Techniques in Digital Image Processing: An OverviewImage Interpolation Techniques in Digital Image Processing: An Overview
Image Interpolation Techniques in Digital Image Processing: An Overview
 
digital filter design
digital filter designdigital filter design
digital filter design
 
Dct,gibbs phen,oversampled adc,polyphase decomposition
Dct,gibbs phen,oversampled adc,polyphase decompositionDct,gibbs phen,oversampled adc,polyphase decomposition
Dct,gibbs phen,oversampled adc,polyphase decomposition
 

Recently uploaded

Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 

Recently uploaded (20)

Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 

3D TEXTURE SYNTHESIS

  • 1. © 2011 Frank Nielsen INF555 Fundamentals of 3D Lecture 6: Metric ball trees/Texture synthesis Advanced coordinate pipelines Fourier analysis/interpolation Frank Nielsen nielsen@lix.polytechnique.fr 19th October 2011
  • 2. © 2011 Frank Nielsen ``Texture Synthesis by Non-parametric Sampling'' Alexei A. Efros and Thomas K. Leung IEEE International Conference on Computer Vision (ICCV'99), http://graphics.cs.cmu.edu/people/efros/research/EfrosLeung.html
  • 3. © 2011 Frank Nielsen Stochastic texture synthesis Fast nearest neighbor queries in high dimensions
  • 4. © 2011 Frank Nielsen Ball tree data structures for nearest neighbor search Compute a k-means on S with k=2 Split S into S1 and S2 according to the two centroids Perform recursion on S1, and S2 until |S1|<n0 and |S2|<n0 Compute a k-means on S with k=2 Split S into S1 and S2 according to the two centroids Perform recursion on S1, and S2 until |S1|<n0 and |S2|<n0
  • 5. © 2011 Frank Nielsen Nearest neighbor queries using ball trees Pruning some of the nodes: Let NN(q) denote the current best nearest neighbor of q if ||q-c||-rq> rc then PRUNE (do not explore the subtree) qc rc rq At leaves, perform the naive linear search, and potentially update NN(q) At leaves, perform the naive linear search, and potentially update NN(q)
  • 6. © 2011 Frank Nielsen Careful seeding for k-means: Perform just a careful initialization!!!
  • 7. © 2011 Frank Nielsen 21x21 patches.21x21 patches. queryquery Nearest neighborsNearest neighbors Vp-trees worked best (=fastest) for image patches.... [ECCV'08]
  • 8. © 2011 Frank Nielsen Vantage point trees (or vp-trees) Partition the data according to a vantage point and a distance threshold Relative distances are thus used. First split Split from a vantage point: Inner part Outer part do split recursion
  • 9. © 2011 Frank Nielsen Vantage point trees: Pruning condition Prune outer Prune inner Cannot prune
  • 10. © 2011 Frank Nielsen Many ways to partition the point sets
  • 11. © 2011 Frank Nielsen GPGPU: General Purpose GPU GPU cores Tracking ROIs (region of interest) GPU cores Tracking ROIs (region of interest) Distance au k=2 plus proche voisin C: couleur (YUV) C3: 3x3 neigh in Y G: gradient P: position k=3
  • 12. © 2011 Frank Nielsen Log-Polar coordinates
  • 13. © 2011 Frank Nielsen Log-Polar coordinates Scales and rotations become translations Data reduction for retinal images...
  • 14. © 2011 Frank Nielsen Spherical coordinates
  • 15. © 2011 Frank Nielsen Spherical coordinates High Resolution Full Spherical Videos Frank Nielsen, ITCC'02
  • 16. © 2011 Frank Nielsen Cylindrical coordinates Panoramic image stitching: Align by a translation into the cylindrical coordinate map...
  • 17. © 2011 Frank Nielsen Environment maps Equirectangular, mirror ball, cubic, etc.
  • 18. © 2011 Frank Nielsen Environment maps: Mirror ball
  • 19. © 2011 Frank Nielsen Environment maps for reflections http://www.debevec.org/ReflectionMapping/ Blinn, 1976 1982 Interface, 1985 Lance Williams
  • 20. © 2011 Frank Nielsen Environment maps for reflections Abyss, Terminator 2 (1991) Best environment map for real-time graphics? Dual paraboloid (2 images front/back only)
  • 21. © 2011 Frank Nielsen Transformations and their invariants
  • 22. © 2011 Frank Nielsen Taxonomy of projections:
  • 23. © 2011 Frank Nielsen Multiple centers of projections (MCOP) Reconstruction from a single MCOP images Generalizes epipolar geometry Resolution dependent
  • 24. © 2011 Frank Nielsen Acquisition Example
  • 25. © 2011 Frank Nielsen Multiple centers of projections (MCOP) Difficult to obtain in practice... Localization is difficult
  • 26. © 2011 Frank Nielsen Multiple centers of projections (MCOP) The art of depiction...
  • 27. © 2011 Frank Nielsen Stereo cyclographs...
  • 28. © 2011 Frank Nielsen Image backward vs forward mapping Image warping Resampling Interpolation
  • 29. © 2011 Frank Nielsen Image Blending: Alpha channel Interpretation at the microscopic level...
  • 30. © 2011 Frank Nielsen Image sampling/reconstruction
  • 31. © 2011 Frank Nielsen Zone plate: Aliasing/ringing effect 1024x1024 256x256 downsampled using bilinear interpolation
  • 32. © 2011 Frank Nielsen Continuous versus discrete convolutions
  • 33. © 2011 Frank Nielsen Fourier analysis Fourier discovered that all periodic signals can be represented as a sum (eventually infinite) of sinusoidal waves: sin(·) functions, the basis functions. Let f(·) denote the continuous function in the spatial domain and F(·) denote the dual complex function, also called spectral function. Euler formula (period 2pi)
  • 34. © 2011 Frank Nielsen Fourier analysis: Duality spatial/spectral domain Spatial domain Spectral domain
  • 35. © 2011 Frank Nielsen Fourier analysis: Phase/amplitude Frequency magnitudes Polar coordinates: Amplitude Phase Power spectrum
  • 36. © 2011 Frank Nielsen Fourier analysis: Convolution theorem Convolution in spatial domain is a multiplication in Fourier domain Convolution in frequency domain is a multiplication in spatial domain
  • 37. © 2011 Frank Nielsen Fourier analysis: Discrete transformations 1D 2D
  • 38. © 2011 Frank Nielsen Interpolation/reconstruction filters Bilinear interpolation
  • 39. © 2011 Frank Nielsen Interpolation/reconstruction filters Sinc (Lanczos) is ideal low-pass filter (infinite support)Sinc (Lanczos) is ideal low-pass filter (infinite support) Ideal low-pass filter Fourier transform The sinc function Fourier domain Spatial domain Windowed sinc
  • 40. © 2011 Frank Nielsen Mr Angry Mrs Calm Low/high frequency perception
  • 41. © 2011 Frank Nielsen Phase correlation F* is the conjugate function Stitch by 2D translation two images FFT can be computed in O(nlog n) time FFT can be computed in O(nlog n) time
  • 42. © 2011 Frank Nielsen Phase correlation Algorithme: Calculer le cross-power spectrum des deux images Calculer la transformation inverse FFT, et chercher le sommet dans l'image spatiale Extend to rotation and scale using the log-polar transform
  • 43. © 2011 Frank Nielsen Phase correlation C.D. Kuglin and D.C. Hines. The phase correlation image aligment method. Proc. Int. Conf. on Cybernetics and Society, pages 163–165, 1975. E. De Castro and C. Morandi. Registration of translated and rotated images using finite fourier transforms.IEEE Trans. Pattern Analysis and Machine Intelligence, (3):700–703, September 1987. Extend up to affine transformations ROBUST IMAGE REGISTRATION USING LOG-POLAR TRANSFORM, ICIP 2000
  • 44. © 2011 Frank Nielsen Phase correlation: Detecting the peak Sub-pixel accuracy if we fit a quadratic function Clairvoyance system IEEE IECON 2006 ClairVoyance: A Fast and Robust Precision Mosaicing System for Gigapixel Images
  • 45. © 2011 Frank Nielsen Veuillez commencer vos projets sous Processing et autres Java APIs Utilisez JMyron sous Processing pour capturer la webcam http://webcamxtra.sourceforge.net/