Graph-Based Image Segmentation

Slides:



Advertisements
Similar presentations
Graph cut Chien-chi Chen.
Advertisements

Introduction to Markov Random Fields and Graph Cuts Simon Prince
Lecture 24: Segmentation CS6670: Computer Vision Noah Snavely From Sandlot ScienceSandlot Science.
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:
GrabCut Interactive Foreground Extraction using Iterated Graph Cuts Carsten Rother Vladimir Kolmogorov Andrew Blake Microsoft Research Cambridge-UK.
Piyush Kumar (Lecture 6: MaxFlow MinCut Applications)
1 s-t Graph Cuts for Binary Energy Minimization  Now that we have an energy function, the big question is how do we minimize it? n Exhaustive search is.
Graph-based image segmentation Václav Hlaváč Czech Technical University in Prague Faculty of Electrical Engineering Department of Cybernetics Prague, Czech.
Lecture 6 Image Segmentation
Optimal solution of binary problems Much material taken from :  Olga Veksler, University of Western Ontario
CS448f: Image Processing For Photography and Vision Graph Cuts.
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.
Today: Image Segmentation Image Segmentation Techniques Snakes Scissors Graph Cuts Mean Shift Wednesday (2/28) Texture analysis and synthesis Multiple.
2010/5/171 Overview of graph cuts. 2010/5/172 Outline Introduction S-t Graph cuts Extension to multi-label problems Compare simulated annealing and alpha-
From Pixels to “Blobs” : Rendering and Image Processing Alexei Efros.
Stereo & Iterative Graph-Cuts Alex Rav-Acha Vision Course Hebrew University.
Advanced Topics in Computer Vision Spring 2006 Video Segmentation Tal Kramer, Shai Bagon Video Segmentation April 30 th, 2006.
MRF Labeling With Graph Cut CMPUT 615 Nilanjan Ray.
Abstract Extracting a matte by previous approaches require the input image to be pre-segmented into three regions (trimap). This pre-segmentation based.
Lecture 10: Stereo and Graph Cuts
Stereo Computation using Iterative Graph-Cuts
Comp 775: Graph Cuts and Continuous Maximal Flows Marc Niethammer, Stephen Pizer Department of Computer Science University of North Carolina, Chapel Hill.
Lecture 18: Context and segmentation CS6670: Computer Vision Noah Snavely.
Image Segmentation Today’s Readings Forsyth & Ponce, Chapter 14
Measuring Uncertainty in Graph Cut Solutions Pushmeet Kohli Philip H.S. Torr Department of Computing Oxford Brookes University.
Graph-Cut Algorithm with Application to Computer Vision Presented by Yongsub Lim Applied Algorithm Laboratory.
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.
Segmentation via Graph Cuts
Graph-based Segmentation
Fast Approximate Energy Minimization via Graph Cuts
Graph Cut & Energy Minimization
MRFs and Segmentation with Graph Cuts Computer Vision CS 543 / ECE 549 University of Illinois Derek Hoiem 02/24/10.
Advanced Algorithms Piyush Kumar (Lecture 4: MaxFlow MinCut Applications) Welcome to COT5405.
CS774. Markov Random Field : Theory and Application Lecture 13 Kyomin Jung KAIST Oct
Graph Cuts Marc Niethammer. Segmentation by Graph-Cuts A way to compute solutions to the optimization problems we looked at before. Example: Binary Segmentation.
CS 4487/6587 Algorithms for Image Analysis
Lecture 19: Solving the Correspondence Problem with Graph Cuts CAP 5415 Fall 2006.
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.
Graph Algorithms for Vision Amy Gale November 5, 2002.
Prof. Swarat Chaudhuri COMP 382: Reasoning about Algorithms Fall 2015.
Markov Random Fields in Vision
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.
Some links between min-cuts, optimal spanning forests and watersheds Cédric Allène, Jean-Yves Audibert, Michel Couprie, Jean Cousty & Renaud Keriven ENPC.
Image segmentation.
Document Clustering with Prior Knowledge Xiang Ji et al. Document Clustering with Prior Knowledge. SIGIR 2006 Presenter: Suhan Yu.
Course Introduction to Medical Imaging Segmentation 1 – Mean Shift and Graph-Cuts Guy Gilboa.
Image Segmentation Today’s Readings Szesliski Chapter 5
Cutting Images: Graphs and Boundary Finding
Exercise class 13 : Image Segmentation
Digital Visual Effects, Spring 2009 Yung-Yu Chuang 2009/5/21
CS4670/5670: Image Scissors Noah Snavely Today’s Readings
Markov Random Fields with Efficient Approximations
Graph Cut Weizhen Jing
Lecture 31: Graph-Based Image Segmentation
Announcements Photos right now Project 3 questions
Digital Image Processing
Seam Carving Project 1a due at midnight tonight.
Segmentation (continued)
Announcements Project 4 questions Evaluations.
Piyush Kumar (Lecture 6: MaxFlow MinCut Applications)
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:

Graph-Based Image Segmentation CS4670 / 5670: Computer Vision Noah Snavely Graph-Based Image Segmentation

Stereo as a minimization problem { { match cost smoothness cost Want each pixel to find a good match in the other image Adjacent pixels should (usually) move about the same amount

Related problem: binary segmentation Suppose we want to segment an image into foreground and background Can you think of a way to solve this problem?

Related problem: binary segmentation Suppose we want to segment an image into foreground and background User sketches out a few strokes on foreground and background… How do we classify the rest of the pixels?

Binary segmentation as energy minimization Define a labeling L as an assignment of each pixel with a 0-1 label (background or foreground) Problem statement: find the labeling L that minimizes { { match cost smoothness cost (“how similar is each labeled pixel to the foreground / background?”)

{ : “distance” from pixel to background pixels usually computed by creating a color model from user-labeled pixels : “distance” from pixel to foreground pixels

Neighboring pixels should generally have the same labels Unless the pixels have very different intensities = 10.0 = 0.1 : similarity in intensity of p and q

Binary segmentation as energy minimization For this problem, we can easily find the global minimum! Use max flow / min cut algorithm

Graph min cut problem Given a weighted graph G with source and sink nodes (s and t), partition the nodes into two sets, S and T such that the sum of edge weights spanning the partition is minimized and s S and t T

Segmentation by min cut s (“foreground”) (“background”) Graph node for each pixel, link between adjacent pixels specify a few pixels as foreground and background create an infinite cost link from each bg pixel to the t node create an infinite cost link from each fg pixel to the s node create finite cost links from s and t to each other node compute min cut that separates s from t The min-cut max-flow theorem [Ford and Fulkerson 1956]

Segmentation by min cut The partitions S and T formed by the min cut give the optimal foreground and background segmentation I.e., the resulting labels minimize

GrabCut Grabcut [Rother et al., SIGGRAPH 2004]

Is user-input required? Our visual system is proof that automatic methods are possible classical image segmentation methods are automatic Argument for user-directed methods? only user knows desired scale/object of interest

Automatic graph cut [Shi & Malik] q Cpq c p Fully-connected graph node for every pixel link between every pair of pixels, p,q cost cpq for each link cpq measures similarity similarity is inversely proportional to difference in color and position

Segmentation by Graph Cuts w A B C Break Graph into Segments Delete links that cross between segments Easiest to break links that have low cost (similarity) similar pixels should be in the same segments dissimilar pixels should be in different segments

Cuts in a graph B A Link Cut Find minimum cut set of links whose removal makes a graph disconnected cost of a cut: Find minimum cut gives you a segmentation

But min cut is not always the best cut...

Cuts in a graph B A Normalized Cut a cut penalizes large segments fix by normalizing for size of segments volume(A) = sum of costs of all edges that touch A

Interpretation as a Dynamical System Treat the links as springs and shake the system elasticity proportional to cost vibration “modes” correspond to segments can compute these by solving an eigenvector problem http://www.cis.upenn.edu/~jshi/papers/pami_ncut.pdf

Interpretation as a Dynamical System Treat the links as springs and shake the system elasticity proportional to cost vibration “modes” correspond to segments can compute these by solving an eigenvector problem http://www.cis.upenn.edu/~jshi/papers/pami_ncut.pdf

Color Image Segmentation

Extension to Soft Segmentation Each pixel is convex combination of segments. Levin et al. 2006 - compute mattes by solving eigenvector problem

Questions?