Segmentation using eigenvectors Papers: “Normalized Cuts and Image Segmentation”. Jianbo Shi and Jitendra Malik, IEEE, 2000 “Segmentation using eigenvectors:

Slides:



Advertisements
Similar presentations
Liang Shan Clustering Techniques and Applications to Image Segmentation.
Advertisements

Normalized Cuts and Image Segmentation
Online Social Networks and Media. Graph partitioning The general problem – Input: a graph G=(V,E) edge (u,v) denotes similarity between u and v weighted.
Clustering II CMPUT 466/551 Nilanjan Ray. Mean-shift Clustering Will show slides from:
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:
10/11/2001Random walks and spectral segmentation1 CSE 291 Fall 2001 Marina Meila and Jianbo Shi: Learning Segmentation by Random Walks/A Random Walks View.
The Visual Recognition Machine Jitendra Malik University of California at Berkeley Jitendra Malik University of California at Berkeley.
Lecture 6 Image Segmentation
Image segmentation. The goals of segmentation Group together similar-looking pixels for efficiency of further processing “Bottom-up” process Unsupervised.
Lecture 21: Spectral Clustering
Algorithms & Applications in Computer Vision Lihi Zelnik-Manor Lecture 11: Structure from Motion.
Segmentation. Terminology Segmentation, grouping, perceptual organization: gathering features that belong together Fitting: associating a model with observed.
CS 376b Introduction to Computer Vision 04 / 08 / 2008 Instructor: Michael Eckmann.
Normalized Cuts and Image Segmentation Jianbo Shi and Jitendra Malik, Presented by: Alireza Tavakkoli.
© 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.
Image Segmentation Chapter 14, David A. Forsyth and Jean Ponce, “Computer Vision: A Modern Approach”.
A Unified View of Kernel k-means, Spectral Clustering and Graph Cuts
Segmentation Divide the image into segments. Each segment:
Normalized Cuts Demo Original Implementation from: Jianbo Shi Jitendra Malik Presented by: Joseph Djugash.
CS 376b Introduction to Computer Vision 04 / 04 / 2008 Instructor: Michael Eckmann.
Segmentation Graph-Theoretic Clustering.
Computer Vision Segmentation Marc Pollefeys COMP 256 Some slides and illustrations from D. Forsyth, T. Darrel,...
Efficient Spatiotemporal Grouping Using the Nyström Method Charless Fowlkes, U.C. Berkeley Serge Belongie, U.C. San Diego Jitendra Malik, U.C. Berkeley.
Cutting complete weighted graphs Jameson Cahill Ido Heskia Math/CSC 870 Spring 2007.
Image Segmentation A Graph Theoretic Approach. Factors for Visual Grouping Similarity (gray level difference) Similarity (gray level difference) Proximity.
Presentation By Michael Tao and Patrick Virtue. Agenda History of the problem Graph cut background Compute graph cut Extensions State of the art Continued.
Perceptual Organization: Segmentation and Optical Flow.
Computer Vision Segmentation Marc Pollefeys COMP 256 Some slides and illustrations from D. Forsyth, T. Darrel,...
Computer Vision - A Modern Approach Set: Segmentation Slides by D.A. Forsyth Segmentation and Grouping Motivation: not information is evidence Obtain a.
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.
Graph-based consensus clustering for class discovery from gene expression data Zhiwen Yum, Hau-San Wong and Hongqiang Wang Bioinformatics, 2007.
Image Segmentation Rob Atlas Nick Bridle Evan Radkoff.
Segmentation Techniques Luis E. Tirado PhD qualifying exam presentation Northeastern University.
Presenter : Kuang-Jui Hsu Date : 2011/5/3(Tues.).
Clustering appearance and shape by learning jigsaws Anitha Kannan, John Winn, Carsten Rother.
Segmentation using eigenvectors
CSSE463: Image Recognition Day 34 This week This week Today: Today: Graph-theoretic approach to segmentation Graph-theoretic approach to segmentation Tuesday:
Segmentation by Clustering
Region Segmentation Readings: Chapter 10: 10.1 Additional Materials Provided K-means Clustering (text) EM Clustering (paper) Graph Partitioning (text)
Image Segmentation February 27, Implicit Scheme is considerably better with topological change. Transition from Active Contours: –contour v(t) 
Segmentation Course web page: vision.cis.udel.edu/~cv May 7, 2003  Lecture 31.
Chapter 14: SEGMENTATION BY CLUSTERING 1. 2 Outline Introduction Human Vision & Gestalt Properties Applications – Background Subtraction – Shot Boundary.
Jad silbak -University of Haifa. What we have, and what we want: Most segmentations until now focusing on local features (K-Means). We would like to extract.
Spectral Clustering Jianping Fan Dept of Computer Science UNC, Charlotte.
Learning Spectral Clustering, With Application to Speech Separation F. R. Bach and M. I. Jordan, JMLR 2006.
Made by: Maor Levy, Temple University Many data points, no labels 2.
Image Segmentation Superpixel methods Speaker: Hsuan-Yi Ko.
 In the previews parts we have seen some kind of segmentation method.  In this lecture we will see graph cut, which is a another segmentation method.
Mestrado em Ciência de Computadores Mestrado Integrado em Engenharia de Redes e Sistemas Informáticos VC 15/16 – TP10 Advanced Segmentation Miguel Tavares.
Advanced Artificial Intelligence Lecture 8: Advance machine learning.
Spectral Clustering Shannon Quinn (with thanks to William Cohen of Carnegie Mellon University, and J. Leskovec, A. Rajaraman, and J. Ullman of Stanford.
A Tutorial on Spectral Clustering Ulrike von Luxburg Max Planck Institute for Biological Cybernetics Statistics and Computing, Dec. 2007, Vol. 17, No.
Normalized Cuts and Image Segmentation Patrick Denis COSC 6121 York University Jianbo Shi and Jitendra Malik.
Document Clustering with Prior Knowledge Xiang Ji et al. Document Clustering with Prior Knowledge. SIGIR 2006 Presenter: Suhan Yu.
K-Means Segmentation.
Miguel Tavares Coimbra
Segmentation by clustering: normalized cut
Exercise class 13 : Image Segmentation
CSSE463: Image Recognition Day 34
Segmentation and Grouping
Segmentation Graph-Theoretic Clustering.
Advanced Artificial Intelligence
Grouping.
Digital Image Processing
Image Segmentation CS 678 Spring 2018.
Spectral Clustering Eric Xing Lecture 8, August 13, 2010
CSSE463: Image Recognition Day 34
“Traditional” image segmentation
Presentation transcript:

Segmentation using eigenvectors Papers: “Normalized Cuts and Image Segmentation”. Jianbo Shi and Jitendra Malik, IEEE, 2000 “Segmentation using eigenvectors: a unifying view”. Yair Weiss, ICCV 1999.

Graph-based Image Segmentation Image (I) Graph Affinities (W) Intensity Color Edges Texture Slide from Timothee Cour (

Graph-based Image Segmentation Image (I) Slide from Timothee Cour ( Graph Affinities (W) Intensity Color Edges Texture

Graph-based Image Segmentation Image (I)Eigenvector X(W) Slide from Timothee Cour ( Graph Affinities (W) Intensity Color Edges Texture

Graph-based Image Segmentation Image (I)Eigenvector X(W) Discretization Slide from Timothee Cour ( Graph Affinities (W) Intensity Color Edges Texture

Graph-based Image Segmentation V: graph nodes E: edges connection nodes G = {V,E} Pixels Pixel similarity Slides from Jianbo Shi

Graph terminology Similarity matrix: Slides from Jianbo Shi

Affinity matrix Similarity of image pixels to selected pixel Brighter means more similar Reshape N*M pixels M pixels N pixels Warning the size of W is quadratic with the number of parameters!Warning the size of W is quadratic with the number of parameters!

Graph terminology Degree of node: Slides from Jianbo Shi … …

Graph terminology Volume of set: Slides from Jianbo Shi

Graph terminology Slides from Jianbo Shi Cuts in a graph:

Representation Partition matrix X : Pair-wise similarity matrix W : Degree matrix D : Laplacian matrix L : segments pixels

Pixel similarity functions Intensity Texture Distance

Pixel similarity functions Intensity Texture Distance here c(x) is a vector of filter outputs. A natural thing to do is to square the outputs of a range of different filters at different scales and orientations, smooth the result, and rack these into a vector.

Definitions spectral clustering Methods that use the spectrum of the affinity matrix to cluster are known as spectral clustering. Normalized cuts, Average cuts, Average association make use of the eigenvectors of the affinity matrix. Why these methods work?

Spectral Clustering DataSimilarities * Slides from Dan Klein, Sep Kamvar, Chris Manning, Natural Language Group Stanford University

Eigenvectors and blocks Block matrices have block eigenvectors: Near-block matrices have near-block eigenvectors: eigensolver = 2 2 = 2 3 = 0 4 = eigensolver = = = = * Slides from Dan Klein, Sep Kamvar, Chris Manning, Natural Language Group Stanford University

Spectral Space Can put items into blocks by eigenvectors: Clusters clear regardless of row ordering: e1e1 e2e2 e1e1 e2e e1e1 e2e2 e1e1 e2e2 * Slides from Dan Klein, Sep Kamvar, Chris Manning, Natural Language Group Stanford University

How do we extract a good cluster? Simplest idea x Simplest idea: we want a vector x giving the association between each element and a cluster strong affinity with one another We want elements within this cluster to, on the whole, have strong affinity with one another maximize We could maximize constraint But need the constraint eigenvalue problem This is an eigenvalue problem - choose the eigenvector of W with largest eigenvalue.

Criterion for partition: Minimum cut First proposed by Wu and Leahy A B Ideal Cut Cuts with lesser weight than the ideal cut Problem! Weight of cut is directly proportional to the number of edges in the cut.Problem!

Normalized Cut Normalized cut or balanced cut: Finds better cut

Normalized Cut Volume of set (or association): A B

Normalized Cut Volume of set (or association): Define normalized cut: “a fraction of the total edge connections to all the nodes in the graph”: A B A B Define normalized association: “how tightly on average nodes within the cluster are connected to each other” A B

Subject to: Observations(I) Maximizing Nassoc is the same as minimizing Ncut, since they are related: How to minimize Ncut ? Transform Ncut equation to a matricial form. After simplifying: Rayleigh quotient NP-Hard! y ’s values are quantized

Instead, relax into the continuous domain by solving generalized eigenvalue system: Which gives: Note that so, the first eigenvector is y 0 =1 with eigenvalue 0. The second smallest eigenvector is the real valued solution to this problem!! Observations(II) min

Algorithm 1.Define a similarity function between 2 nodes. i.e.: 2.Compute affinity matrix (W) and degree matrix (D). 3.Solve 4.Use the eigenvector with the second smallest eigenvalue to bipartition the graph. 5.Decide if re-partition current partitions. Note: since precision requirements are low, W is very sparse and only few eigenvectors are required, the eigenvectors can be extracted very fast using Lanczos algorithm.

Discretization Sometimes there is not a clear threshold to binarize since eigenvectors take on continuous values. How to choose the splitting point? a)Pick a constant value (0, or 0.5). b)Pick the median value as splitting point. c)Look for the splitting point that has the minimum Ncut value: 1.Choose n possible splitting points. 2.Compute Ncut value. 3.Pick minimum.

Use k -eigenvectors Ncut Recursive 2-way Ncut is slow. We can use more eigenvectors to re-partition the graph, however: degree of smoothness – Not all eigenvectors are useful for partition (degree of smoothness). k-means k Procedure: compute k-means with a high k. Then follow one of these procedures: kNcut a)Merge segments that minimize k -way Ncut criterion. b)Use the k segments and find the partitions there using exhaustive search. Compute Q (next slides) e1e1 e2e2 e1e1 e2e2

Toy examples Images from Matthew Brand (TR )

Example (I) Eigenvectors Segments

Example (II) * Slide from Khurram Hassan-Shafique CAP5415 Computer Vision 2003 Segments Original

Other applications Costeira and Kanade (1995). Costeira and Kanade (1995). – Used to segment points in motion. – Compute M=(XY). – The affinity matrix W is compute as W=M T M. This trick computes the affinity of every pair of points as a inner product. – Compute Q=V T V – Values close to 1 belong to the same cluster. DataDataMMQQ

Other applications Face clustering in meetings. – Grab faces from video in real time (use a face detector + face tracker). – Compare all faces using a distance metric (i.e. projection error into representative basis). – Use normalized cuts to find best clustering.

Conclusions Good news: – Simple and powerful methods to segment images. – Flexible and easy to apply to other clustering problems. Bad news: – High memory requirements (use sparse matrices). – Very dependant on the scale factor for a specific problem.

Thank you!