Today: Image Segmentation Image Segmentation Techniques Snakes Scissors Graph Cuts Mean Shift Wednesday (2/28) Texture analysis and synthesis Multiple.

Slides:



Advertisements
Similar presentations
TP11 - Fitting: Deformable contours Computer Vision, FCUP, Miguel Coimbra Slides by Prof. Kristen Grauman.
Advertisements

Fitting a transformation: feature-based alignment Wed, Feb 23 Prof. Kristen Grauman UT-Austin.
Lecture 24: Segmentation CS6670: Computer Vision Noah Snavely From Sandlot ScienceSandlot Science.
The University of Ontario CS 4487/9587 Algorithms for Image Analysis Segmentation (2D) Acknowledgements: Alexei Efros, Steven Seitz.
I Images as graphs Fully-connected graph – node for every pixel – link between every pair of pixels, p,q – similarity w ij for each link j w ij c Source:
Graph-Based Image Segmentation
Graph-based image segmentation Václav Hlaváč Czech Technical University in Prague Faculty of Electrical Engineering Department of Cybernetics Prague, Czech.
Active Contours / Planes Sebastian Thrun, Gary Bradski, Daniel Russakoff Stanford CS223B Computer Vision Some slides.
Active Contours (SNAKES) Back to boundary detection –This time using perceptual grouping. This is non-parametric –We’re not looking for a contour of a.
Snakes - Active Contour Lecturer: Hagit Hel-Or
Lecture 6 Image Segmentation
Image segmentation. The goals of segmentation Group together similar-looking pixels for efficiency of further processing “Bottom-up” process Unsupervised.
Segmentation. Terminology Segmentation, grouping, perceptual organization: gathering features that belong together Fitting: associating a model with observed.
© 2003 by Davi GeigerComputer Vision October 2003 L1.1 Image Segmentation Based on the work of Shi and Malik, Carnegie Mellon and Berkley and based on.
Region Segmentation. Find sets of pixels, such that All pixels in region i satisfy some constraint of similarity.
Segmentation CSE P 576 Larry Zitnick Many slides courtesy of Steve Seitz.
Announcements Project 2 more signup slots questions Picture taking at end of class.
From Pixels to “Blobs” : Rendering and Image Processing Alexei Efros.
Snakes Goes from edges to boundaries. Edge is strong change in intensity. Boundary is boundary of an object. –Smooth (more or less) –Closed. –…
Image Segmentation Today’s Readings Intelligent Scissors, Mortensen et. al, SIGGRAPH 1995Intelligent Scissors From Sandlot ScienceSandlot Science.
Stereo Computation using Iterative Graph-Cuts
Lecture 18: Context and segmentation CS6670: Computer Vision Noah Snavely.
Active Contour Models (Snakes) Yujun Guo.
Image Segmentation Today’s Readings Forsyth & Ponce, Chapter 14
Perceptual Organization: Segmentation and Optical Flow.
Segmentation and Clustering Today’s Readings Forsyth & Ponce, Chapter 7 (plus lots of optional references in the slides) From Sandlot ScienceSandlot Science.
Announcements vote for Project 3 artifacts Project 4 (due next Wed night) Questions? Late day policy: everything must be turned in by next Friday.
Announcements Project 3 questions Photos after class.
Manhattan-world Stereo Y. Furukawa, B. Curless, S. M. Seitz, and R. Szeliski 2009 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pp.
Graph-based Segmentation
Image Segmentation Image segmentation is the operation of partitioning an image into a collection of connected sets of pixels. 1. into regions, which usually.
Image Segmentation Rob Atlas Nick Bridle Evan Radkoff.
Computer Vision James Hays, Brown
06 - Boundary Models Overview Edge Tracking Active Contours Conclusion.
Region Segmentation Readings: Chapter 10: 10.1 Additional Materials Provided K-means Clustering (text) EM Clustering (paper) Graph Partitioning (text)
MRFs and Segmentation with Graph Cuts Computer Vision CS 543 / ECE 549 University of Illinois Derek Hoiem 02/24/10.
7.1. Mean Shift Segmentation Idea of mean shift:
The University of Ontario CS 433/653 Algorithms for Image Analysis Segmentation (2D) Acknowledgements: Alexei Efros, Steven Seitz.
City University of Hong Kong 18 th Intl. Conf. Pattern Recognition Self-Validated and Spatially Coherent Clustering with NS-MRF and Graph Cuts Wei Feng.
Lecture 2: Edge detection CS4670: Computer Vision Noah Snavely From Sandlot ScienceSandlot Science.
CSE 185 Introduction to Computer Vision Pattern Recognition 2.
Lecture 4: Image Resampling and Reconstruction CS4670: Computer Vision Kavita Bala.
EECS 274 Computer Vision Segmentation by Clustering II.
Lecture 19: Solving the Correspondence Problem with Graph Cuts CAP 5415 Fall 2006.
CSSE463: Image Recognition Day 23 Midterm behind us… Midterm behind us… Foundations of Image Recognition completed! Foundations of Image Recognition completed!
CS654: Digital Image Analysis Lecture 28: Advanced topics in Image Segmentation Image courtesy: IEEE, IJCV.
A global approach Finding correspondence between a pair of epipolar lines for all pixels simultaneously Local method: no guarantee we will have one to.
Cutting Images: Graphs and Boundary Finding Computational Photography Derek Hoiem, University of Illinois 09/20/12 “The Double Secret”, Magritte.
Normalized Cuts and Image Segmentation Patrick Denis COSC 6121 York University Jianbo Shi and Jitendra Malik.
Energy minimization Another global approach to improve quality of correspondences Assumption: disparities vary (mostly) smoothly Minimize energy function:
Course Introduction to Medical Imaging Segmentation 1 – Mean Shift and Graph-Cuts Guy Gilboa.
TP11 - Fitting: Deformable contours
Image Segmentation Today’s Readings Szesliski Chapter 5
Announcements CS accounts Project 1 is out today
CSSE463: Image Recognition Day 21
Grouping.
Lecture 31: Graph-Based Image Segmentation
Announcements Photos right now Project 3 questions
Digital Image Processing
Snakes, Shapes, and Gradient Vector Flow
Seam Carving Project 1a due at midnight tonight.
Image Segmentation CS 678 Spring 2018.
Spectral Clustering Eric Xing Lecture 8, August 13, 2010
Segmentation (continued)
Announcements Project 4 questions Evaluations.
Announcements Project 1 is out today
Announcements Project 4 out today (due Wed March 10)
Announcements Project 1 is out today help session at the end of class.
“Traditional” image segmentation
Presentation transcript:

Today: Image Segmentation Image Segmentation Techniques Snakes Scissors Graph Cuts Mean Shift Wednesday (2/28) Texture analysis and synthesis Multiple hypothesis tracking Final Project Presentations Q: one two-hour slot or two one-hour slots? March 12 or 14?

From Images to Objects What Defines an Object? Subjective problem, but has been well-studied Gestalt Laws seek to formalize this –proximity, similarity, continuation, closure, common fate –see notes by Steve Joordens, U. Torontonotes

Image Segmentation Many Approaches Proposed color cues region cues contour cues Today: Three Approaches Mean Shift (color-based) –D. Comaniciu, P. Meer, Robust Analysis of Feature Spaces: Color Image Segmentation, Proc. IEEE Conf. on Computer Vision and Pattern Recognition (CVPR'97), 1997, Robust Analysis of Feature Spaces: Color Image Segmentation Normalized Cuts (region-based) –J. Shi and J. Malik, Normalized Cuts and Image Segmentation, IEEE Conf. Computer Vision and Pattern Recognition(CVPR), 1997Normalized Cuts and Image Segmentation Snakes and Scissors (contour-based) –M. Kass, A. Witkin, and D. Terzopoulos, Snakes: Active contour models. International Journal of Computer Vision. v. 1, n. 4, pp , 1987.Snakes: Active contour models –E. N. Mortensen and W. A. Barrett, Intelligent Scissors for Image Composition, in ACM Computer Graphics (SIGGRAPH `95), pp , 1995Intelligent Scissors for Image Composition

Color-Based Segmentation Segmentation by Histogram Processing Given image with N colors, choose K Each of the K colors defines a region –not necessarily contiguous Performed by computing color histogram, looking for modes This is what happens when you downsample image color range, for instance in Photoshop

Finding Modes in a Histogram How Many Modes Are There? Easy to see, hard to compute

Mean Shift [ Comaniciu & Meer] Iterative Mode Search 1.Initialize random seed, and fixed window 2.Calculate center of gravity of the window (the “mean”) 3.Translate the search window to the mean 4.Repeat Step 2 until convergence

Mean-Shift

More ExamplesMore Examples:

Region-Based Segmentation We Want Regions why not build this in as a constraint?

q Images as Graphs [Shi & Malik] Graph G = (V, E, W) node for every pixel edge between every pair of pixels, p,q weight w pq for each edge –w pq measures similarity »similarity: difference in color and position p w pq w

Segmentation by Graph Cuts Break Graph into Segments Delete edges that cross between segments Easiest to break edges that have low weight: –similar pixels should be in the same segments –dissimilar pixels should be in different segments w ABC

Cuts in a graph Edge Cut set of edges whose removal makes a graph disconnected cost of a cut: A B Normalized Cut a cut penalizes large segments fix by normalizing for size of segments Vol(A)Vol(B)

The Normalized Cut (NCut) criterion NP-Hard! Given a Graph G = (V, E, W) Find A ½ V that minimizes

Normalize Cut in Matrix Form

Eigenvalue Problem After lot’s of math, we get: This is a Rayleigh Quotient Solution given by “generalized” eigenvalue problem: Solved by converting to standard eigenvalue problem: Subtleties optimal solution is second smallest eigenvector gives real result—must convert into discrete values of y

Interpretation as a Dynamical System Weights are Springs eigenvectors correspond to vibration modes

Interpretation as a Dynamical System Weights are Springs eigenvectors correspond to vibration modes

Color Image Segmentation

Graph Cuts Formulations We’ve seen graph cuts before Stereo (Y. Boykov, O. Veksler, and Ramin Zabih, Fast Approximate Energy Minimization via Graph Cuts)Fast Approximate Energy Minimization via Graph Cuts The formulation is different however –In Boykov approach, each pixel was connected to a label node –Boykov approach gives better optimality guarantees, but requires discrete labels

Segmentation Using Edges Edges  Segments Spurious edges Missing edges How could user-interaction help?

Snakes [Kass et al.]

Snakes: Energy Minimization Ingredients: A contour An energy function Try to make the contour snap to edges minimize E snake Issues contour representation energy function minimization algorithm

Snakes Contour representation splines [Kass et al., IJCV 89, original formulation] discrete set of points [Williams & Shah, CVGIP 55(1), 92] implicit function [Malladi et al., 95 (see readings] Energy functional Variations on edge term (gradient magnitude, laplacian) Minor variations in smoothness terms (first/second order) Volume expansion (balloon) or contraction Deformable templates [Yuille, IJCV 92] Learned shape models [Isard & Blake, others] Minimization algorithm Numerical Euler integration [e.g., Kass] Greedy algorithms [e.g., Williams] Level set evolution [e.g., Malladi]

Issues: Scale Bandpass Images Lowpass Images Pyramid snakes for coarse-to-fine processing

Problem with Snakes You can’t control the shape evolution* * to be fair: Kass et al described how you can add forces to push and pull the snake as desired, but still kind of kludgy

Intelligent Scissors [Mortensen & Barrett]

Intelligent Scissors Approach answers a basic question Q: how to find a path from seed to mouse that follows object boundary as closely as possible? A: define a path that stays as close as possible to edges

Intelligent Scissors Basic Idea Define edge score for each pixel –edge pixels have low cost Find lowest cost path from seed to mouse seed mouse Questions How to define costs? How to find the path?

Defining Costs Link Costs Costs are assigned to a pair of adjacent pixels (a link) f z (q) = 0 if Laplacian is 0 at q f z (q) = 1 otherwise f d (q) measures difference in gradient direction p q link

Path Search Graph Search Algorithm Computes minimum cost path from seed to all other pixels

Results