280 likes | 301 Views
Explore gradient domain operations, tone mapping, fusion, and more for image processing. Learn about graph cuts, segmentation, denoising, and filters to enhance image quality.
E N D
Image Processing and Reconstructions Tools Ramesh Raskar Mitsubishi Electric Research Labs Cambridge, MA
Image Tools • Gradient domain operations, • Tone mapping, fusion and matting • Graph cuts, • Segmentation and mosaicing • Bilateral and Trilateral filters, • Denoising, image enhancement
Intensity Gradient in 1D Intensity Gradient 105 105 1 1 I(x) G(x) Gradient at x,G(x) = I(x+1)- I(x)Forward Difference
Reconstruction from Gradients Gradient Intensity 105 105 ? ? 1 1 G(x) I(x) For n intensity values, about n gradients
Reconstruction from Gradients Gradient Intensity 105 105 ? 1 1 G(x) I(x) 1D Integration I(x) = I(x-1) + G(x) Cumulative sum
Intensity Gradient in 2D Gradient at x,y as Forward Differences Gx(x,y) = I(x+1 , y)- I(x,y) Gy(x,y) = I(x , y+1)- I(x,y) G(x,y) = (Gx , Gy) Grad X Grad Y
Intensity Gradient Vectors in Images Gradient Vector
Image Intensity Gradients in 2D Sanity Check: Recovering Original Image 2D Integration Grad X Solve Poisson Equation, 2D linear system Grad Y
Intensity Gradient Manipulation A Common Pipeline 2D Integration Grad X New Grad X Gradient Processing New Grad Y Grad Y Modify Gradients
Graph and Images Credits: Jianbo Shi
Source images Brush strokes Computed labeling Composite
i Wij j Wij Segmentation = Graph partition V: graph node E: edges connection nodes Wij: Edge weight Image pixel Link to neighboring pixels Pixel similarity
Minimum Cost Cuts in a graph Cut: Set of edges whose removal makes a graph disconnected Si,j : Similarity between pixel i and pixel j Cost of a cut, A A
Graph Cuts for Segmentation and Mosaicing Cut ~ String on a height field Brush strokes Computed labeling
Bilateral Filtering Gaussian Smoothing Input Log(Intensity) Bilateral Smoothing [Ben Weiss, Siggraph 2006]
Start with Gaussian filtering • Here, input is a step function + noise output input
Start with Gaussian filtering • Spatial Gaussian f output input
Start with Gaussian filtering • Output is blurred output input
Gaussian filter as weighted average • Weight of x depends on distance to x output input
The problem of edges • Here, “pollutes” our estimate J(x) • It is too different output input
Principle of Bilateral filtering [Tomasi and Manduchi 1998] • Penalty g on the intensity difference output input
Bilateral filtering [Tomasi and Manduchi 1998] • Spatial Gaussian f output input
Bilateral filtering [Tomasi and Manduchi 1998] • Spatial Gaussian f • Gaussian g on the intensity difference output input
[Tomasi and Manduchi 1998] • The weights are different for each output pixel output input
Bilateral filtering is non-linear [Tomasi and Manduchi 1998] • The weights are different for each output pixel output input
Bilateral Filtering • Unilateral filtering • Smoothing using filtering • Bilateral filtering • Edge-preserving smoothing Gaussian Smoothing Input Log(Intensity) Bilateral Smoothing [Ben Weiss, Siggraph 2006]