SlideShare a Scribd company logo
Diffusion Curves: A Vector Representation for Smooth-Shaded Image Alexandrina Orzan AdrienBousseau HolgerWinnem¨oller Pascal Barla Jo¨elleThollot David Salesin3 SIGGRAPH08
Abstract ,[object Object]
Manual, assisted or automatic extraction for the diffusion curve
GPU-based multi-grid gradient solution,[object Object]
Introduction Benefits of vector-based primitives  More compact representation, resolution-independence, geometric editability,easity animated, more readily stylized  Limited to represent complex color gradients Only support linear or radial gradients Fail in soft shadows, defocus blur, diffuse shading, glossy reflection …
Introduction – cont. Gradient mesh(Adobe Illustrator and Corel CorelDraw) A lattice with colors at each vertex that are linearly interpolated across the mesh Difficult to create meshes Optimized gradient mesh [Sun et al.,SIGGRAPH07] A semi-automatic method for optimizing a manually initialized mesh
Diffusion Curve A curve that diffuses colors on both sides Support traditional freehand drawing Artists sketch lines first as color boundaries Most color variations can be assumed to caused by edges Edges constitute a near-complete and natural primitive for encoding and editing images  	[Carlsson 88; Elder 99; Elder and Goldberg 01]
Contribution A prototype allowing manual creation and editing of diffusion curves A full automatic conversion from a bitmap to diffusion curves
Relative work
Gradient Tools Optimized Gradient Meshes [Sun el al. SIGGRAPH07] A manually initialized mesh Sample and estimate color of control points on Ferguson patches Optimize the reconstruct image with constrains – smooth, vector line guided and boundary constrained Initial mesh Optimized mesh reconstructed photographic
Gradient Tools Gradient Brush [McCann & Pollard,  SIGGRAPH08] Interactive edge-focused  drawing tools on gradient domain G  Brush,  edge copy, clone  I = G Solve  as Poisson  Eq. with GPU-based multigridmethod   I = ‧G Gradient brush Edge brush Clone brush
GPU-Based Multigrid Method for Gradient-Domain Multi-grid method Use a coarse version of the domain to efficiently solve for the low frequency components of the solution,  Use a fine version of the domain to refine the high frequency components.  GPU-based multigrid method [Kazhdan and Hoppe, SIGGRAPH08] [Goodnight et al.,03] [Briggs et al.,00]
Standard Multigrid V-cycle ,[object Object],Figure 1 of “Streaming Multigrid for Gradient-Domain Operations on Large Images”,  SIGGRAPH 08
Diffusion Curves Diffusion curve Final image
Rendering Diffusion curve Final image  Color source (CL, CR) 2.Diffuse Sharp color image  1. Rasterize sources 3. Reblur Wy Wx Blur sources Blur map (B) Smoothness of the transition  between Left and Right
1. Rasterize sources Diffusion curve (similar to edge-based representation [Elder 99]) P Bezier spline CR CL Color source - interpolation Σ Blur source - interpolation
Gradient Field Compute the gradient of RGB 3 channels on the edges wx,y = (CL – CR) N P 0 0 0 … 0 .. …. …. 0 .. 0 0 0 .. CR CL N
2. Diffusion I C Sharp color image  Compute I from gradient w with color source C as constrain Apply GPU-based multigrid method Use Jocobi relaxation to solve each level of multigrid Limit the number of relaxation iteration,  ex: 512x512 image 5i Jacobi iteration per multigrid level i  is the level no. (fine  coarse) w = (wx, wy) Solve Poisson equation with color constrain C  I =‧w I(x,y) = C(x,y)   where pixel (x,y) store color value
3. Reblurring Diffuse the Blur map [Elder 99]  to define blur kernel size with multigrid method Blur each pixel with the blur kernel defined in blur map Final image  Sharp color image  B = 0 B(x,y) = σ(x,y)   if pixel (x,y) is on a curve σ B
Panning and Zooming Require to solve a global eq.  How to pan&zoom without a full Poisson solution at a higher resolution ? Compute a low-resolution diffusion on the un-zoomed image domain Use the obtained solution to define Dirichlet boundary conditions around the zooming window  I =‧w I(x,y) = C(x,y) Curves outside the current viewport still influence the viewport’s content !
Creating diffusion curves
Creating Diffusion Curves Manual artists can create an image with our tool by sketching the lines of the drawing and then filling in the color Assisted artists can trace manually over parts of an image and we recover the colors of the underlying content Automatic artists can automatically convert  an image into our representation and possibly post-edit it
Assisted  Extracting color control points along a drawn curve Identify color outliers Sample colors along the curve at distance d in N Measure σ of the neighborhoodeach sample. Identify outliers where if it deviates too much from mean Fit a polyline to the color points usingDouglasPeucker algorithm Start from the first and the last pt. Repeatedly subdivide the line into smaller segments until the max diff  < є The end points of the final polyline yield the color controls points N d working on L*a*b channels
Original image Stylistic tracing using color sampling (drawing time < 1 min.) Original image Active contours and color sampling (drawing time 90 min.)
Automatic Extraction Original bitmap Automatic reconstruction
1. Data Extraction Structure-preserving manipulation[Orzan et al.,07] Extract edge locations and blur values for edge pixels after scale space analysis Extract colors at both side of edge
1. Data Extraction Structure-preserving manipulation[Orzan et al.,07] Extract edge locations and blur values for edge pixels after scale space analysis Extract colors at both edge Connect pixel-chains from the edge map and proceed to sample colors in the original image on both sides of edge Hard to detect the color on blur edges –  pick the colors at 3σ
2. Conversion to Diffusion Curve Open source Portraces.w. [Selinger 03] Approximate a pixel chain with a polyline that has a min. number of segments Least approximation error Transform the polyline into a smooth curve made from end-to-end connected Bezier curve Least square Bezier fitting based on a max. user-specified fitting error and degree of smoothness
Result NvidiaGeForce 8800 Realtime performance 512 x 512 grid Several thousands curves website
Global Shape Stylization
Low Lifetime

More Related Content

What's hot

GRPHICS01 - Introduction to 3D Graphics
GRPHICS01 - Introduction to 3D GraphicsGRPHICS01 - Introduction to 3D Graphics
GRPHICS01 - Introduction to 3D Graphics
Michael Heron
 
Computer Graphics Notes
Computer Graphics NotesComputer Graphics Notes
Computer Graphics Notes
Gurpreet singh
 
4 image enhancement in spatial domain
4 image enhancement in spatial domain4 image enhancement in spatial domain
4 image enhancement in spatial domain
Prof. Dr. Subhasis Bose
 
rs and gis
rs and gisrs and gis
rs and gis
prem ranjan
 
Multimedia digital images
 Multimedia  digital images Multimedia  digital images
Multimedia digital images
Mohammad Dwikat
 
On constructing z dimensional Image By DIBR Synthesized Images
On constructing z dimensional Image By DIBR Synthesized ImagesOn constructing z dimensional Image By DIBR Synthesized Images
On constructing z dimensional Image By DIBR Synthesized Images
Jayakrishnan U
 
digital image processing, image processing
digital image processing, image processingdigital image processing, image processing
digital image processing, image processing
Kalyan Acharjya
 
Gradient free
Gradient freeGradient free
Gradient free
Su Yan-Jen
 
ResearchPaper_Final
ResearchPaper_FinalResearchPaper_Final
ResearchPaper_Final
Matthew Johnson
 
03 digital image fundamentals DIP
03 digital image fundamentals DIP03 digital image fundamentals DIP
03 digital image fundamentals DIP
babak danyal
 
Chapter 6 color image processing
Chapter 6 color image processingChapter 6 color image processing
Chapter 6 color image processing
asodariyabhavesh
 
Color image processing Presentation
Color image processing PresentationColor image processing Presentation
Color image processing Presentation
Revanth Chimmani
 
Spatial filtering
Spatial filteringSpatial filtering
Spatial filtering
shabanam tamboli
 
Image Interpolation Techniques with Optical and Digital Zoom Concepts
Image Interpolation Techniques with Optical and Digital Zoom ConceptsImage Interpolation Techniques with Optical and Digital Zoom Concepts
Image Interpolation Techniques with Optical and Digital Zoom Concepts
mmjalbiaty
 
Contrast enhancement in digital images
Contrast enhancement in digital imagesContrast enhancement in digital images
Contrast enhancement in digital images
Sakher BELOUADAH
 
Image Printing Based on Halftoning
Image Printing Based on HalftoningImage Printing Based on Halftoning
Image Printing Based on Halftoning
Cody Ray
 
Image enhancement in the spatial domain1
Image enhancement in the spatial domain1Image enhancement in the spatial domain1
Image enhancement in the spatial domain1
shabanam tamboli
 
painterly_droplets_2015
painterly_droplets_2015painterly_droplets_2015
painterly_droplets_2015
Ivan Neulander
 
Digital image processing
Digital image processingDigital image processing
Digital image processing
Yendapalli lalitha kundana
 
GRPHICS05 - Rendering (2)
GRPHICS05 - Rendering (2)GRPHICS05 - Rendering (2)
GRPHICS05 - Rendering (2)
Michael Heron
 

What's hot (20)

GRPHICS01 - Introduction to 3D Graphics
GRPHICS01 - Introduction to 3D GraphicsGRPHICS01 - Introduction to 3D Graphics
GRPHICS01 - Introduction to 3D Graphics
 
Computer Graphics Notes
Computer Graphics NotesComputer Graphics Notes
Computer Graphics Notes
 
4 image enhancement in spatial domain
4 image enhancement in spatial domain4 image enhancement in spatial domain
4 image enhancement in spatial domain
 
rs and gis
rs and gisrs and gis
rs and gis
 
Multimedia digital images
 Multimedia  digital images Multimedia  digital images
Multimedia digital images
 
On constructing z dimensional Image By DIBR Synthesized Images
On constructing z dimensional Image By DIBR Synthesized ImagesOn constructing z dimensional Image By DIBR Synthesized Images
On constructing z dimensional Image By DIBR Synthesized Images
 
digital image processing, image processing
digital image processing, image processingdigital image processing, image processing
digital image processing, image processing
 
Gradient free
Gradient freeGradient free
Gradient free
 
ResearchPaper_Final
ResearchPaper_FinalResearchPaper_Final
ResearchPaper_Final
 
03 digital image fundamentals DIP
03 digital image fundamentals DIP03 digital image fundamentals DIP
03 digital image fundamentals DIP
 
Chapter 6 color image processing
Chapter 6 color image processingChapter 6 color image processing
Chapter 6 color image processing
 
Color image processing Presentation
Color image processing PresentationColor image processing Presentation
Color image processing Presentation
 
Spatial filtering
Spatial filteringSpatial filtering
Spatial filtering
 
Image Interpolation Techniques with Optical and Digital Zoom Concepts
Image Interpolation Techniques with Optical and Digital Zoom ConceptsImage Interpolation Techniques with Optical and Digital Zoom Concepts
Image Interpolation Techniques with Optical and Digital Zoom Concepts
 
Contrast enhancement in digital images
Contrast enhancement in digital imagesContrast enhancement in digital images
Contrast enhancement in digital images
 
Image Printing Based on Halftoning
Image Printing Based on HalftoningImage Printing Based on Halftoning
Image Printing Based on Halftoning
 
Image enhancement in the spatial domain1
Image enhancement in the spatial domain1Image enhancement in the spatial domain1
Image enhancement in the spatial domain1
 
painterly_droplets_2015
painterly_droplets_2015painterly_droplets_2015
painterly_droplets_2015
 
Digital image processing
Digital image processingDigital image processing
Digital image processing
 
GRPHICS05 - Rendering (2)
GRPHICS05 - Rendering (2)GRPHICS05 - Rendering (2)
GRPHICS05 - Rendering (2)
 

Similar to study Diffusion Curves: A Vector Representation for Smooth-Shaded Images

Lecture 06 - image processingcourse1.pptx
Lecture 06 - image processingcourse1.pptxLecture 06 - image processingcourse1.pptx
Lecture 06 - image processingcourse1.pptx
Alaa790395
 
M.sc. m hassan
M.sc. m hassanM.sc. m hassan
M.sc. m hassan
Ashraf Aboshosha
 
A Practical and Robust Bump-mapping Technique for Today’s GPUs (slides)
A Practical and Robust Bump-mapping Technique for Today’s GPUs (slides)A Practical and Robust Bump-mapping Technique for Today’s GPUs (slides)
A Practical and Robust Bump-mapping Technique for Today’s GPUs (slides)
Mark Kilgard
 
CS 354 Pixel Updating
CS 354 Pixel UpdatingCS 354 Pixel Updating
CS 354 Pixel Updating
Mark Kilgard
 
Shadow Techniques for Real-Time and Interactive Applications
Shadow Techniques for Real-Time and Interactive ApplicationsShadow Techniques for Real-Time and Interactive Applications
Shadow Techniques for Real-Time and Interactive Applications
stefan_b
 
Lect14 lines+circles
Lect14 lines+circlesLect14 lines+circles
Lect14 lines+circles
Siddharth Maloo
 
Image segmentation for high resolution images
Image segmentation for high resolution imagesImage segmentation for high resolution images
Image segmentation for high resolution images
jeet patalia
 
2. filtering basics
2. filtering basics2. filtering basics
2. filtering basics
Atul Kumar Jha
 
Advanced Lighting for Interactive Applications
Advanced Lighting for Interactive ApplicationsAdvanced Lighting for Interactive Applications
Advanced Lighting for Interactive Applications
stefan_b
 
Defocus magnification
Defocus magnificationDefocus magnification
Defocus magnification
Debaleena Chattopadhyay
 
Coastal erosion management using image processing and Node Oriented Programming
Coastal erosion management using image processing and Node Oriented Programming Coastal erosion management using image processing and Node Oriented Programming
Coastal erosion management using image processing and Node Oriented Programming
AbdAllah Aly
 
image_enhancement-NDVI-5.pptx
image_enhancement-NDVI-5.pptximage_enhancement-NDVI-5.pptx
image_enhancement-NDVI-5.pptx
GemedaBedasa
 
A PROJECT REPORT ON REMOVAL OF UNNECESSARY OBJECTS FROM PHOTOS USING MASKING
A PROJECT REPORT ON REMOVAL OF UNNECESSARY OBJECTS FROM PHOTOS USING MASKINGA PROJECT REPORT ON REMOVAL OF UNNECESSARY OBJECTS FROM PHOTOS USING MASKING
A PROJECT REPORT ON REMOVAL OF UNNECESSARY OBJECTS FROM PHOTOS USING MASKING
IRJET Journal
 
Bt9301, computer graphics
Bt9301, computer graphicsBt9301, computer graphics
Bt9301, computer graphics
smumbahelp
 
Computer vision lane line detection
Computer vision lane line detectionComputer vision lane line detection
Computer vision lane line detection
Jonathan Mitchell
 
CS 354 More Graphics Pipeline
CS 354 More Graphics PipelineCS 354 More Graphics Pipeline
CS 354 More Graphics Pipeline
Mark Kilgard
 
YARCA (Yet Another Raycasting Application) Project
YARCA (Yet Another Raycasting Application) ProjectYARCA (Yet Another Raycasting Application) Project
YARCA (Yet Another Raycasting Application) Project
graphitech
 
Image segmentation
Image segmentationImage segmentation
Image segmentation
MadhuriMulik1
 
Digital image processing
Digital image processingDigital image processing
Digital image processing
ABIRAMI M
 
DDGK: Learning Graph Representations for Deep Divergence Graph Kernels
DDGK: Learning Graph Representations for Deep Divergence Graph KernelsDDGK: Learning Graph Representations for Deep Divergence Graph Kernels
DDGK: Learning Graph Representations for Deep Divergence Graph Kernels
ivaderivader
 

Similar to study Diffusion Curves: A Vector Representation for Smooth-Shaded Images (20)

Lecture 06 - image processingcourse1.pptx
Lecture 06 - image processingcourse1.pptxLecture 06 - image processingcourse1.pptx
Lecture 06 - image processingcourse1.pptx
 
M.sc. m hassan
M.sc. m hassanM.sc. m hassan
M.sc. m hassan
 
A Practical and Robust Bump-mapping Technique for Today’s GPUs (slides)
A Practical and Robust Bump-mapping Technique for Today’s GPUs (slides)A Practical and Robust Bump-mapping Technique for Today’s GPUs (slides)
A Practical and Robust Bump-mapping Technique for Today’s GPUs (slides)
 
CS 354 Pixel Updating
CS 354 Pixel UpdatingCS 354 Pixel Updating
CS 354 Pixel Updating
 
Shadow Techniques for Real-Time and Interactive Applications
Shadow Techniques for Real-Time and Interactive ApplicationsShadow Techniques for Real-Time and Interactive Applications
Shadow Techniques for Real-Time and Interactive Applications
 
Lect14 lines+circles
Lect14 lines+circlesLect14 lines+circles
Lect14 lines+circles
 
Image segmentation for high resolution images
Image segmentation for high resolution imagesImage segmentation for high resolution images
Image segmentation for high resolution images
 
2. filtering basics
2. filtering basics2. filtering basics
2. filtering basics
 
Advanced Lighting for Interactive Applications
Advanced Lighting for Interactive ApplicationsAdvanced Lighting for Interactive Applications
Advanced Lighting for Interactive Applications
 
Defocus magnification
Defocus magnificationDefocus magnification
Defocus magnification
 
Coastal erosion management using image processing and Node Oriented Programming
Coastal erosion management using image processing and Node Oriented Programming Coastal erosion management using image processing and Node Oriented Programming
Coastal erosion management using image processing and Node Oriented Programming
 
image_enhancement-NDVI-5.pptx
image_enhancement-NDVI-5.pptximage_enhancement-NDVI-5.pptx
image_enhancement-NDVI-5.pptx
 
A PROJECT REPORT ON REMOVAL OF UNNECESSARY OBJECTS FROM PHOTOS USING MASKING
A PROJECT REPORT ON REMOVAL OF UNNECESSARY OBJECTS FROM PHOTOS USING MASKINGA PROJECT REPORT ON REMOVAL OF UNNECESSARY OBJECTS FROM PHOTOS USING MASKING
A PROJECT REPORT ON REMOVAL OF UNNECESSARY OBJECTS FROM PHOTOS USING MASKING
 
Bt9301, computer graphics
Bt9301, computer graphicsBt9301, computer graphics
Bt9301, computer graphics
 
Computer vision lane line detection
Computer vision lane line detectionComputer vision lane line detection
Computer vision lane line detection
 
CS 354 More Graphics Pipeline
CS 354 More Graphics PipelineCS 354 More Graphics Pipeline
CS 354 More Graphics Pipeline
 
YARCA (Yet Another Raycasting Application) Project
YARCA (Yet Another Raycasting Application) ProjectYARCA (Yet Another Raycasting Application) Project
YARCA (Yet Another Raycasting Application) Project
 
Image segmentation
Image segmentationImage segmentation
Image segmentation
 
Digital image processing
Digital image processingDigital image processing
Digital image processing
 
DDGK: Learning Graph Representations for Deep Divergence Graph Kernels
DDGK: Learning Graph Representations for Deep Divergence Graph KernelsDDGK: Learning Graph Representations for Deep Divergence Graph Kernels
DDGK: Learning Graph Representations for Deep Divergence Graph Kernels
 

More from Chiamin Hsu

study Domain Transform for Edge-Aware Image and Video Processing
study Domain Transform for Edge-Aware Image and Video Processingstudy Domain Transform for Edge-Aware Image and Video Processing
study Domain Transform for Edge-Aware Image and Video Processing
Chiamin Hsu
 
study Image and video abstraction by multi scale anisotropic kuwahara
study  Image and video abstraction by multi scale anisotropic kuwaharastudy  Image and video abstraction by multi scale anisotropic kuwahara
study Image and video abstraction by multi scale anisotropic kuwahara
Chiamin Hsu
 
study Accelerating Spatially Varying Gaussian Filters
study Accelerating Spatially Varying Gaussian Filtersstudy Accelerating Spatially Varying Gaussian Filters
study Accelerating Spatially Varying Gaussian Filters
Chiamin Hsu
 
stduy Edge-Based Image Coarsening
stduy Edge-Based Image Coarseningstduy Edge-Based Image Coarsening
stduy Edge-Based Image Coarsening
Chiamin Hsu
 
study Streaming Multigrid For Gradient Domain Operations On Large Images
study Streaming Multigrid For Gradient Domain Operations On Large Imagesstudy Streaming Multigrid For Gradient Domain Operations On Large Images
study Streaming Multigrid For Gradient Domain Operations On Large Images
Chiamin Hsu
 
study Shading Based Surface Editing
study Shading Based Surface Editingstudy Shading Based Surface Editing
study Shading Based Surface Editing
Chiamin Hsu
 
study Image Vectorization using Optimized Gradeint Meshes
study Image Vectorization using Optimized Gradeint Meshesstudy Image Vectorization using Optimized Gradeint Meshes
study Image Vectorization using Optimized Gradeint Meshes
Chiamin Hsu
 
study Seam Carving For Content Aware Image Resizing
study Seam Carving For Content Aware Image Resizingstudy Seam Carving For Content Aware Image Resizing
study Seam Carving For Content Aware Image Resizing
Chiamin Hsu
 
study Latent Doodle Space
study Latent Doodle Spacestudy Latent Doodle Space
study Latent Doodle Space
Chiamin Hsu
 
study Coded Aperture
study Coded Aperturestudy Coded Aperture
study Coded Aperture
Chiamin Hsu
 
study Active Refocusing Of Images And Videos
study Active Refocusing Of Images And Videosstudy Active Refocusing Of Images And Videos
study Active Refocusing Of Images And Videos
Chiamin Hsu
 
study Dappled Photography
study Dappled Photographystudy Dappled Photography
study Dappled Photography
Chiamin Hsu
 

More from Chiamin Hsu (12)

study Domain Transform for Edge-Aware Image and Video Processing
study Domain Transform for Edge-Aware Image and Video Processingstudy Domain Transform for Edge-Aware Image and Video Processing
study Domain Transform for Edge-Aware Image and Video Processing
 
study Image and video abstraction by multi scale anisotropic kuwahara
study  Image and video abstraction by multi scale anisotropic kuwaharastudy  Image and video abstraction by multi scale anisotropic kuwahara
study Image and video abstraction by multi scale anisotropic kuwahara
 
study Accelerating Spatially Varying Gaussian Filters
study Accelerating Spatially Varying Gaussian Filtersstudy Accelerating Spatially Varying Gaussian Filters
study Accelerating Spatially Varying Gaussian Filters
 
stduy Edge-Based Image Coarsening
stduy Edge-Based Image Coarseningstduy Edge-Based Image Coarsening
stduy Edge-Based Image Coarsening
 
study Streaming Multigrid For Gradient Domain Operations On Large Images
study Streaming Multigrid For Gradient Domain Operations On Large Imagesstudy Streaming Multigrid For Gradient Domain Operations On Large Images
study Streaming Multigrid For Gradient Domain Operations On Large Images
 
study Shading Based Surface Editing
study Shading Based Surface Editingstudy Shading Based Surface Editing
study Shading Based Surface Editing
 
study Image Vectorization using Optimized Gradeint Meshes
study Image Vectorization using Optimized Gradeint Meshesstudy Image Vectorization using Optimized Gradeint Meshes
study Image Vectorization using Optimized Gradeint Meshes
 
study Seam Carving For Content Aware Image Resizing
study Seam Carving For Content Aware Image Resizingstudy Seam Carving For Content Aware Image Resizing
study Seam Carving For Content Aware Image Resizing
 
study Latent Doodle Space
study Latent Doodle Spacestudy Latent Doodle Space
study Latent Doodle Space
 
study Coded Aperture
study Coded Aperturestudy Coded Aperture
study Coded Aperture
 
study Active Refocusing Of Images And Videos
study Active Refocusing Of Images And Videosstudy Active Refocusing Of Images And Videos
study Active Refocusing Of Images And Videos
 
study Dappled Photography
study Dappled Photographystudy Dappled Photography
study Dappled Photography
 

Recently uploaded

Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
Brandon Minnick, MBA
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
ssuserfac0301
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
Chart Kalyan
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Jeffrey Haguewood
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
panagenda
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
Postman
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
Intelisync
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
Alex Pruden
 
Azure API Management to expose backend services securely
Azure API Management to expose backend services securelyAzure API Management to expose backend services securely
Azure API Management to expose backend services securely
Dinusha Kumarasiri
 
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-EfficiencyFreshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
ScyllaDB
 

Recently uploaded (20)

Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
 
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdfHow to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
How to Interpret Trends in the Kalyan Rajdhani Mix Chart.pdf
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 
WeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation TechniquesWeTestAthens: Postman's AI & Automation Techniques
WeTestAthens: Postman's AI & Automation Techniques
 
A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024A Comprehensive Guide to DeFi Development Services in 2024
A Comprehensive Guide to DeFi Development Services in 2024
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
zkStudyClub - LatticeFold: A Lattice-based Folding Scheme and its Application...
 
Azure API Management to expose backend services securely
Azure API Management to expose backend services securelyAzure API Management to expose backend services securely
Azure API Management to expose backend services securely
 
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-EfficiencyFreshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
Freshworks Rethinks NoSQL for Rapid Scaling & Cost-Efficiency
 

study Diffusion Curves: A Vector Representation for Smooth-Shaded Images

  • 1. Diffusion Curves: A Vector Representation for Smooth-Shaded Image Alexandrina Orzan AdrienBousseau HolgerWinnem¨oller Pascal Barla Jo¨elleThollot David Salesin3 SIGGRAPH08
  • 2.
  • 3. Manual, assisted or automatic extraction for the diffusion curve
  • 4.
  • 5. Introduction Benefits of vector-based primitives More compact representation, resolution-independence, geometric editability,easity animated, more readily stylized Limited to represent complex color gradients Only support linear or radial gradients Fail in soft shadows, defocus blur, diffuse shading, glossy reflection …
  • 6. Introduction – cont. Gradient mesh(Adobe Illustrator and Corel CorelDraw) A lattice with colors at each vertex that are linearly interpolated across the mesh Difficult to create meshes Optimized gradient mesh [Sun et al.,SIGGRAPH07] A semi-automatic method for optimizing a manually initialized mesh
  • 7. Diffusion Curve A curve that diffuses colors on both sides Support traditional freehand drawing Artists sketch lines first as color boundaries Most color variations can be assumed to caused by edges Edges constitute a near-complete and natural primitive for encoding and editing images [Carlsson 88; Elder 99; Elder and Goldberg 01]
  • 8. Contribution A prototype allowing manual creation and editing of diffusion curves A full automatic conversion from a bitmap to diffusion curves
  • 10. Gradient Tools Optimized Gradient Meshes [Sun el al. SIGGRAPH07] A manually initialized mesh Sample and estimate color of control points on Ferguson patches Optimize the reconstruct image with constrains – smooth, vector line guided and boundary constrained Initial mesh Optimized mesh reconstructed photographic
  • 11. Gradient Tools Gradient Brush [McCann & Pollard, SIGGRAPH08] Interactive edge-focused drawing tools on gradient domain G Brush, edge copy, clone  I = G Solve as Poisson Eq. with GPU-based multigridmethod  I = ‧G Gradient brush Edge brush Clone brush
  • 12. GPU-Based Multigrid Method for Gradient-Domain Multi-grid method Use a coarse version of the domain to efficiently solve for the low frequency components of the solution, Use a fine version of the domain to refine the high frequency components. GPU-based multigrid method [Kazhdan and Hoppe, SIGGRAPH08] [Goodnight et al.,03] [Briggs et al.,00]
  • 13.
  • 14. Diffusion Curves Diffusion curve Final image
  • 15. Rendering Diffusion curve Final image Color source (CL, CR) 2.Diffuse Sharp color image 1. Rasterize sources 3. Reblur Wy Wx Blur sources Blur map (B) Smoothness of the transition between Left and Right
  • 16. 1. Rasterize sources Diffusion curve (similar to edge-based representation [Elder 99]) P Bezier spline CR CL Color source - interpolation Σ Blur source - interpolation
  • 17. Gradient Field Compute the gradient of RGB 3 channels on the edges wx,y = (CL – CR) N P 0 0 0 … 0 .. …. …. 0 .. 0 0 0 .. CR CL N
  • 18. 2. Diffusion I C Sharp color image Compute I from gradient w with color source C as constrain Apply GPU-based multigrid method Use Jocobi relaxation to solve each level of multigrid Limit the number of relaxation iteration, ex: 512x512 image 5i Jacobi iteration per multigrid level i is the level no. (fine  coarse) w = (wx, wy) Solve Poisson equation with color constrain C  I =‧w I(x,y) = C(x,y) where pixel (x,y) store color value
  • 19. 3. Reblurring Diffuse the Blur map [Elder 99] to define blur kernel size with multigrid method Blur each pixel with the blur kernel defined in blur map Final image Sharp color image B = 0 B(x,y) = σ(x,y) if pixel (x,y) is on a curve σ B
  • 20. Panning and Zooming Require to solve a global eq. How to pan&zoom without a full Poisson solution at a higher resolution ? Compute a low-resolution diffusion on the un-zoomed image domain Use the obtained solution to define Dirichlet boundary conditions around the zooming window  I =‧w I(x,y) = C(x,y) Curves outside the current viewport still influence the viewport’s content !
  • 22. Creating Diffusion Curves Manual artists can create an image with our tool by sketching the lines of the drawing and then filling in the color Assisted artists can trace manually over parts of an image and we recover the colors of the underlying content Automatic artists can automatically convert an image into our representation and possibly post-edit it
  • 23. Assisted Extracting color control points along a drawn curve Identify color outliers Sample colors along the curve at distance d in N Measure σ of the neighborhoodeach sample. Identify outliers where if it deviates too much from mean Fit a polyline to the color points usingDouglasPeucker algorithm Start from the first and the last pt. Repeatedly subdivide the line into smaller segments until the max diff < є The end points of the final polyline yield the color controls points N d working on L*a*b channels
  • 24. Original image Stylistic tracing using color sampling (drawing time < 1 min.) Original image Active contours and color sampling (drawing time 90 min.)
  • 25. Automatic Extraction Original bitmap Automatic reconstruction
  • 26.
  • 27. 1. Data Extraction Structure-preserving manipulation[Orzan et al.,07] Extract edge locations and blur values for edge pixels after scale space analysis Extract colors at both side of edge
  • 28. 1. Data Extraction Structure-preserving manipulation[Orzan et al.,07] Extract edge locations and blur values for edge pixels after scale space analysis Extract colors at both edge Connect pixel-chains from the edge map and proceed to sample colors in the original image on both sides of edge Hard to detect the color on blur edges – pick the colors at 3σ
  • 29. 2. Conversion to Diffusion Curve Open source Portraces.w. [Selinger 03] Approximate a pixel chain with a polyline that has a min. number of segments Least approximation error Transform the polyline into a smooth curve made from end-to-end connected Bezier curve Least square Bezier fitting based on a max. user-specified fitting error and degree of smoothness
  • 30. Result NvidiaGeForce 8800 Realtime performance 512 x 512 grid Several thousands curves website
  • 34. photograph Manually created gradient mesh. 340 vertices Our drawing – manually tracing, 38 diffusion curves, 365 geometric, 176 CL, 156 CR control point
  • 35. Comparison with Gradient Meshes Representation efficiency D seems more compact. But G has more regular mesh Usability D are more natural drawing tool D requires good understanding of the final combination. The meshes are often overlapping Topology Dis hard to move a part of an image or warp the entire mesh Relevant edges have to be selected Hard to make sure how the colors of outer edges should interact with their new surrounds for D
  • 36. Future Challenges Layered system Interaction of multi layers (a global Poisson solution) Blending layers with gradual transparency Intersections Curve splitting Color editing Still poor to create texture The colors attached to intersecting curves compete with each other creating a smooth color gradient after diffusion Diffusion curves at intersection can be corrected by curve splitting and color editing
  • 37. Conclusion Introduce Diffusion Curve as s new image representation Offer most benefit of vector primitives Allow to create highly complex image Compared with gradient mesh Comparable both in quality and coding efficiency Simpler to create Diffusion curves can be capture automatically
  • 38. END