Presentation is loading. Please wait.

Presentation is loading. Please wait.

Image segmentation.

Similar presentations


Presentation on theme: "Image segmentation."— Presentation transcript:

1 Image segmentation

2 Segmenting images into meaningful objects
“Bottom-up” or “top-down” process? Supervised or unsupervised? image human segmentation Berkeley segmentation database:

3 Object-level segmentation challenges

4 Superpixel segmentation
Group together similar-looking pixels for efficiency of further processing “Bottom-up” process Unsupervised X. Ren and J. Malik. Learning a classification model for segmentation. ICCV 2003.

5 Graph-based segmentation
wij i j Node = pixel Edge = pair of “neighboring” pixels Edge weight = similarity or dissimilarity of the respective nodes Source: S. Seitz

6 Efficient graph-based segmentation
Runs in time nearly linear in the number of edges Easy to control coarseness of segmentations Results can be unstable P. Felzenszwalb and D. Huttenlocher, Efficient Graph-Based Image Segmentation, IJCV 2004

7 Felsenszwalb & Huttenlocher algorithm
Graph definition: Vertices are pixels, edges connect neighboring pixels, weights correspond to dissimilarity in (x,y,r,g,b) space The algorithm: Start with each vertex in its own component For each edge in increasing order of weight: If the edge is between vertices in two different components A and B, merge if the edge weight is lower than the internal dissimilarity within either of the components Threshold is the minimum of the following values, computed on A and B: (Highest-weight edge in minimum spanning tree of the component) + (k / size of component)

8 Segmentation by graph cuts
wij i j A B Break graph into segments Delete links that cross between segments Easiest to break links that have low affinity similar pixels should be in the same segments dissimilar pixels should be in different segments Source: S. Seitz

9 Segmentation by graph cuts
A graph cut is a set of edges whose removal disconnects the graph Cost of a cut: sum of weights of cut edges Two-way minimum cuts can be found efficiently Affinity matrix

10 Segmentation by graph cuts
A graph cut is a set of edges whose removal disconnects the graph Cost of a cut: sum of weights of cut edges Two-way minimum cuts can be found efficiently Affinity matrix

11 Normalized cut Minimum cut tends to cut off very small, isolated components Ideal Cut Cuts with lesser weight than the ideal cut

12 w(A, B) = sum of weights of all edges between A and B
Normalized cut To encourage larger segments, normalize the cut by the total weight of edges incident to the segment The normalized cut cost is: Intuition: big segments will have a large w(A,V), thus decreasing ncut(A, B) Finding the globally optimal cut is NP-complete, but a relaxed version can be solved using a generalized eigenvalue problem w(A, B) = sum of weights of all edges between A and B J. Shi and J. Malik. Normalized cuts and image segmentation. PAMI 2000

13 Normalized cut: Algorithm
Let W be the affinity matrix of the graph (n x n for n pixels) Let D be the diagonal matrix with entries D(i, i) = Σj W(i, j) Solve generalized eigenvalue problem (D − W)y = λDy for the eigenvector with the second smallest eigenvalue The ith entry of y can be viewed as a “soft” indicator of the component membership of the ith pixel Use 0 or median value of the entries of y to split the graph into two components To find more than two components: Recursively bipartition the graph Run k-means clustering on values of several eigenvectors

14 Example result Original image
Eigenvectors for 2nd and 3rd smallest eigenvalues More eigenvectors

15 Normalized cuts: Pro and con
Generic framework, can be used with many different features and affinity formulations Con High storage requirement and time complexity: involves solving a generalized eigenvalue problem of size n x n, where n is the number of pixels

16 Segmentation as labeling
Suppose we want to segment an image into foreground and background Binary pixel labeling problem

17 Segmentation as labeling
Suppose we want to segment an image into foreground and background Binary pixel labeling problem Naturally arises in interactive settings User scribbles

18 Labeling by energy minimization
Define a labeling c as an assignment of each pixel to a class (foreground or background) Find the labeling that minimizes a global energy function: These are known as Markov Random Field (MRF) or Conditional Random Field (CRF) functions Unary potential (local data term): score for pixel i and label ci Pixels Pairwise potential (context or smoothing term) Neighboring pixels

19 Segmentation by energy minimization
Unary potentials: Cost is infinity if label does not match the user scribble Otherwise, it is computed based on a color model of user-labeled pixels User scribbles P(foreground | xi)

20 Segmentation by energy minimization
Unary potentials: Pairwise potentials: Neighboring pixels should have the same label unless they look very different Affinity between pixels i and j high affinity low affinity

21 Segmentation by energy minimization
Can be optimized efficiently by finding the minimum cut in the following graph: Y. Boykov and M. Jolly, Interactive graph cuts for optimal boundary and region segmentation of objects in N-D images, ICCV 2001

22 Recall: Stereo as energy minimization
D W1(i ) W2(i+D(i )) D(i ) data term smoothness term

23 GrabCut C. Rother, V. Kolmogorov, and A. Blake, “GrabCut” — Interactive Foreground Extraction using Iterated Graph Cuts, SIGGRAPH 2004

24 Semantic segmentation
Problem: label each pixel by one of C classes Define an energy function where unaries correspond to local classifier responses and smoothing potentials correspond to contextual terms Solve a multi-class graph cut problem

25 Example: TextonBoost Label field Model parameters Image
Local data term Smoothing term J. Shotton, J. Winn, C. Rother, and A. Criminisi, TextonBoost: Joint Appearance, Shape And Context Modeling For Multi-class Object Recognition And Segmentation, ECCV 2006.

26 Example: SuperParsing
CRF energy function is defined on superpixels Unaries are based on nearest neighbor retrieval Pairwise potentials capture class co-occurrence statistics J. Tighe and S. Lazebnik, SuperParsing: Scalable Nonparametric Image Parsing with Superpixels, ECCV 2010

27 Example: SuperParsing
CRF energy function is defined on superpixels Unaries are based on nearest neighbor retrieval Pairwise potentials capture class co-occurrence statistics Maximum likelihood labeling Original image Edge penalties Final labeling sky sky road tree sea sea road sand sand J. Tighe and S. Lazebnik, SuperParsing: Scalable Nonparametric Image Parsing with Superpixels, ECCV 2010

28 Semantic segmentation with deep networks
M. Mostajabi, P. Yadollahpour and G. Shakhnarovich, Feedforward semantic segmentation with zoom-out features, CVPR 2015

29 Semantic segmentation with deep networks
B. Hariharan, P. Arbelaez, R. Girshick, and J. Malik, Hypercolumns for Object Segmentation and Fine-grained Localization, CVPR 2015

30 Semantic segmentation with deep networks
J. Long, E. Shelhamer, and T. Darrell, Fully Convolutional Networks for Semantic Segmentation, CVPR 2015


Download ppt "Image segmentation."

Similar presentations


Ads by Google