Computer vision models learning and inference Chapter 12

  • Slides: 81
Download presentation
Computer vision: models, learning and inference Chapter 12 Models for Grids

Computer vision: models, learning and inference Chapter 12 Models for Grids

Models for grids • • • Consider models with one unknown world state at

Models for grids • • • Consider models with one unknown world state at each pixel in the image – takes the form of a grid. Loops in the graphical model, so cannot use dynamic programming or belief propagation Define probability distributions that favor certain configurations of world states – – Called Markov random fields Inference using a set of techniques called graph cuts 2 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Binary Denoising Before After Image represented as binary discrete variables. Some proportion of pixels

Binary Denoising Before After Image represented as binary discrete variables. Some proportion of pixels randomly changed polarity. Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 3

Multi-label Denoising Before After Image represented as discrete variables representing intensity. Some proportion of

Multi-label Denoising Before After Image represented as discrete variables representing intensity. Some proportion of pixels randomly changed according to a uniform distribution. Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 4

Denoising Goal Observed Data Uncorrupted Image Computer vision: models, learning and inference. © 2011

Denoising Goal Observed Data Uncorrupted Image Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 5

Denoising Goal Observed Data Uncorrupted Image • Most of the pixels stay the same

Denoising Goal Observed Data Uncorrupted Image • Most of the pixels stay the same • Observed image is not as smooth as original Now consider pdf over binary images that encourages smoothness – Markov random field Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 6

Markov random fields This is just the typical property of an undirected model. We’ll

Markov random fields This is just the typical property of an undirected model. We’ll continue the discussion in terms of undirected models Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 7

Markov random fields Normalizing constant (partition function) Potential function Returns positive number Subset of

Markov random fields Normalizing constant (partition function) Potential function Returns positive number Subset of variables (clique) Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 8

Markov random fields Normalizing constant (partition function) Cost function Returns any number Relationship Computer

Markov random fields Normalizing constant (partition function) Cost function Returns any number Relationship Computer vision: models, learning and inference. © 2011 Simon J. D. Prince Subset of variables (clique) 9

Smoothing Example Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Smoothing Example Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 10

Smoothing Example Smooth solutions (e. g. 0000, 1111) have high probability Z was computed

Smoothing Example Smooth solutions (e. g. 0000, 1111) have high probability Z was computed by summing the 16 un-normalized probabilities Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 11

Smoothing Example Samples from larger grid -- mostly smooth Cannot compute partition function Z

Smoothing Example Samples from larger grid -- mostly smooth Cannot compute partition function Z here - intractable Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 12

Denoising Goal Observed Data Uncorrupted Image Computer vision: models, learning and inference. © 2011

Denoising Goal Observed Data Uncorrupted Image Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 13

Denoising overview Bayes’ rule: Likelihoods: Probability of flipping polarity Prior: Markov random field (smoothness)

Denoising overview Bayes’ rule: Likelihoods: Probability of flipping polarity Prior: Markov random field (smoothness) MAP Inference: Graph cuts Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 14

Denoising with MRFs MRF Prior (pairwise cliques) Original image, w Likelihoods Observed image, x

Denoising with MRFs MRF Prior (pairwise cliques) Original image, w Likelihoods Observed image, x Inference : Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 15

MAP Inference Unary terms (compatability of data with label y) Pairwise terms (compatability of

MAP Inference Unary terms (compatability of data with label y) Pairwise terms (compatability of neighboring labels) Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 16

Graph Cuts Overview Graph cuts used to optimise this cost function: Unary terms (compatability

Graph Cuts Overview Graph cuts used to optimise this cost function: Unary terms (compatability of data with label y) Pairwise terms (compatability of neighboring labels) Three main cases: Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 17

Graph Cuts Overview Graph cuts used to optimise this cost function: Unary terms (compatability

Graph Cuts Overview Graph cuts used to optimise this cost function: Unary terms (compatability of data with label y) Pairwise terms (compatability of neighboring labels) Approach: Convert minimization into the form of a standard CS problem, MAXIMUM FLOW or MINIMUM CUT ON A GRAPH Polynomial-time methods for solving this problem are known Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 18

Max-Flow Problem Goal: To push as much ‘flow’ as possible through the directed graph

Max-Flow Problem Goal: To push as much ‘flow’ as possible through the directed graph from the source to the sink. Cannot exceed the (non-negative) capacities cij associated with each edge. Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 19

Saturated Edges When we are pushing the maximum amount of flow: • There must

Saturated Edges When we are pushing the maximum amount of flow: • There must be at least one saturated edge on any path from source to sink (otherwise we could push more flow) • The set of saturated edges hence separate the source and sink Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 20

Augmenting Paths Two numbers represent: current flow / total capacity Computer vision: models, learning

Augmenting Paths Two numbers represent: current flow / total capacity Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 21

Augmenting Paths Choose any route from source to sink with spare capacity, and push

Augmenting Paths Choose any route from source to sink with spare capacity, and push as much flow as 22 you can. One edge (here 6 -t) will saturate. Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Augmenting Paths Choose another route, respecting remaining capacity. This time edge 6 -5 saturates.

Augmenting Paths Choose another route, respecting remaining capacity. This time edge 6 -5 saturates. Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 23

Augmenting Paths A third route. Edge 1 -4 saturates Computer vision: models, learning and

Augmenting Paths A third route. Edge 1 -4 saturates Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 24

Augmenting Paths A fourth route. Edge 2 -5 saturates Computer vision: models, learning and

Augmenting Paths A fourth route. Edge 2 -5 saturates Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 25

Augmenting Paths A fifth route. Edge 2 -4 saturates Computer vision: models, learning and

Augmenting Paths A fifth route. Edge 2 -4 saturates Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 26

Augmenting Paths There is now no further route from source to sink – there

Augmenting Paths There is now no further route from source to sink – there is a saturated edge along 27 every possible route (highlighted arrows) Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Augmenting Paths The saturated edges separate the source from the sink and form the

Augmenting Paths The saturated edges separate the source from the sink and form the min-cut solution. 28 Nodes either connect to the source or connect to the sink. Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Graph Cuts: Binary MRF Graph cuts used to optimise this cost function: Unary terms

Graph Cuts: Binary MRF Graph cuts used to optimise this cost function: Unary terms (compatability of data with label w) Pairwise terms (compatability of neighboring labels) First work with binary case (i. e. True label w is 0 or 1) Constrain pairwise costs so that they are “zero-diagonal” 29 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Graph Construction • • One node per pixel (here a 3 x 3 image)

Graph Construction • • One node per pixel (here a 3 x 3 image) Edge from source to every pixel node Edge from every pixel node to sink Reciprocal edges between neighbours Note that in the minimum cut EITHER the edge connecting to the source will be cut, OR the edge connecting to the sink, but NOT BOTH (unnecessary). Which determines whether we give that pixel label 1 or label 0. Now a 1 to 1 mapping between possible labelling and possible minimum cuts 30 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Graph Construction Now add capacities so that minimum cut, minimizes our cost function Unary

Graph Construction Now add capacities so that minimum cut, minimizes our cost function Unary costs U(0), U(1) attached to links to source and sink. • Either one or the other is paid. Pairwise costs between pixel nodes as shown. • Why? Easiest to understand with some worked examples. 31 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Example 1 32 Computer vision: models, learning and inference. © 2011 Simon J. D.

Example 1 32 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Example 2 33 Computer vision: models, learning and inference. © 2011 Simon J. D.

Example 2 33 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Example 3 34 Computer vision: models, learning and inference. © 2011 Simon J. D.

Example 3 34 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 35

Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 35

Graph Cuts: Binary MRF Graph cuts used to optimise this cost function: Unary terms

Graph Cuts: Binary MRF Graph cuts used to optimise this cost function: Unary terms (compatability of data with label w) Pairwise terms (compatability of neighboring labels) Summary of approach • • Associate each possible solution with a minimum cut on a graph Set capacities on graph, so cost of cut matches the cost function Use augmenting paths to find minimum cut This minimizes the cost function and finds the MAP solution 36 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

General Pairwise costs Modify graph to • • Add P(0, 0) to edge s-b

General Pairwise costs Modify graph to • • Add P(0, 0) to edge s-b • Implies that solutions 0, 0 and 1, 0 also pay this cost Subtract P(0, 0) from edge b-a • Solution 1, 0 has this cost removed again Similar approach for P(1, 1) 37 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Reparameterization The max-flow / min-cut algorithms require that all of the capacities are non

Reparameterization The max-flow / min-cut algorithms require that all of the capacities are non -negative. However, because we have a subtraction on edge a-b we cannot guarantee that this will be the case, even if all the original unary and pairwise costs were positive. The solution to this problem is reparamaterization: find new graph where costs (capacities) are different but choice of minimum solution is the same (usually just by adding a constant to each solution) 38 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Reparameterization 1 The minimum cut chooses the same links in these two graphs Computer

Reparameterization 1 The minimum cut chooses the same links in these two graphs Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Reparameterization 2 The minimum cut chooses the same links in these two graphs Computer

Reparameterization 2 The minimum cut chooses the same links in these two graphs Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 40

Submodularity Subtract constant b Add constant, b Adding together implies 41 Computer vision: models,

Submodularity Subtract constant b Add constant, b Adding together implies 41 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Submodularity If this condition is obeyed, it is said that the problem is “submodular”

Submodularity If this condition is obeyed, it is said that the problem is “submodular” and it can be solved in polynomial time. If it is not obeyed then the problem is NP hard. Usually it is not a problem as we tend to favour smooth solutions. 42 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Denoising Results Original Pairwise costs increasing Computer vision: models, learning and inference. © 2011

Denoising Results Original Pairwise costs increasing Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 43

Plan of Talk • • • Denoising problem Markov random fields (MRFs) Max-flow /

Plan of Talk • • • Denoising problem Markov random fields (MRFs) Max-flow / min-cut Binary MRFs – submodular (exact solution) Multi-label MRFs - non-submodular (approximate) 44 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Multiple Labels Construction for two pixels (a and b) and four labels (1, 2,

Multiple Labels Construction for two pixels (a and b) and four labels (1, 2, 3, 4) There are 5 nodes for each pixel and 4 edges between them have unary costs for the 4 labels. One of these edges must be cut in the min-cut solution and the choice will determine which label we assign. Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 45

Constraint Edges The edges with infinite capacity pointing upwards are called constraint edges. They

Constraint Edges The edges with infinite capacity pointing upwards are called constraint edges. They prevent solutions that cut the chain of edges associated with a pixel more than once (and hence given an ambiguous labelling) 46 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Multiple Labels Inter-pixel edges have costs defined as: Superfluous terms : For all i,

Multiple Labels Inter-pixel edges have costs defined as: Superfluous terms : For all i, j where K is number of labels 47 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Example Cuts Must cut links from before cut on pixel a to after cut

Example Cuts Must cut links from before cut on pixel a to after cut on pixel b. Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 48

Pairwise Costs Must cut links from before cut on pixel a to after cut

Pairwise Costs Must cut links from before cut on pixel a to after cut on pixel b. Costs were carefully chosen so that sum of these links gives appropriate pairwise term. If pixel a takes label I and pixel b takes label J 49 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Reparameterization 50 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Reparameterization 50 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Submodularity We require the remaining inter-pixel links to be positive so that or By

Submodularity We require the remaining inter-pixel links to be positive so that or By mathematical induction we can get the more general result 51 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Submodularity If not submodular, then the problem is NP hard. Computer vision: models, learning

Submodularity If not submodular, then the problem is NP hard. Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 52

Convex vs. non-convex costs Quadratic • Convex • Submodular Truncated Quadratic • Not Convex

Convex vs. non-convex costs Quadratic • Convex • Submodular Truncated Quadratic • Not Convex • Not Submodular Potts Model • Not Convex • Not Submodular 53 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

What is wrong with convex costs? Observed noisy image Denoised result • Pay lower

What is wrong with convex costs? Observed noisy image Denoised result • Pay lower price for many small changes than one large one • Result: blurring at large changes in intensity 54 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Plan of Talk • • • Denoising problem Markov random fields (MRFs) Max-flow /

Plan of Talk • • • Denoising problem Markov random fields (MRFs) Max-flow / min-cut Binary MRFs - submodular (exact solution) Multi-label MRFs – submodular (exact solution) Multi-label MRFs - non-submodular (approximate) 55 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Alpha Expansion Algorithm • break multilabel problem into a series of binary problems •

Alpha Expansion Algorithm • break multilabel problem into a series of binary problems • at each iteration, pick label a and expand (retain original or change to a) Initial labelling Iteration 1 (orange) Iteration 2 (yellow) Iteration 3 (red) 56 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Alpha Expansion Ideas • For every iteration – For every label – Expand label

Alpha Expansion Ideas • For every iteration – For every label – Expand label using optimal graph cut solution Co-ordinate descent in label space. Each step optimal, but overall global maximum not guaranteed Proved to be within a factor of 2 of global optimum. Requires that pairwise costs form a metric: 57 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Alpha Expansion Construction Binary graph cut – either cut link to source (assigned to

Alpha Expansion Construction Binary graph cut – either cut link to source (assigned to a) or to sink (retain current label) Unary costs attached to links between source, 58 sink and pixel nodes appropriately. Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Alpha Expansion Construction Graph is dynamic. Structure of inter-pixel links depends on a and

Alpha Expansion Construction Graph is dynamic. Structure of inter-pixel links depends on a and the choice of labels. There are four cases. Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 59

Alpha Expansion Construction Case 1: Adjacent pixels both have label a already. Pairwise cost

Alpha Expansion Construction Case 1: Adjacent pixels both have label a already. Pairwise cost is zero – no need for extra edges. 60 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Alpha Expansion Construction Case 2: Adjacent pixels are a, b. Result either • a,

Alpha Expansion Construction Case 2: Adjacent pixels are a, b. Result either • a, a (no cost and no new edge). • a, b (P(a, b), add new edge). Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 61

Alpha Expansion Construction Case 3: • • • Adjacent pixels are b, b. Result

Alpha Expansion Construction Case 3: • • • Adjacent pixels are b, b. Result either b, b (no cost and no new edge). a, b (P(a, b), add new edge). b, a (P(b, a), add new edge). Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 62

Alpha Expansion Construction Case 4: Adjacent pixels are b, g. Result either • b,

Alpha Expansion Construction Case 4: Adjacent pixels are b, g. Result either • b, g (P(b, g), add new edge). • a, g (P(a, g), add new edge). • b, a (P(b, a), add new edge). 63 • a, a (no cost and no new edge). Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Example Cut 1 64 Computer vision: models, learning and inference. © 2011 Simon J.

Example Cut 1 64 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Example Cut 1 Important! 65 Computer vision: models, learning and inference. © 2011 Simon

Example Cut 1 Important! 65 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Example Cut 2 66 Computer vision: models, learning and inference. © 2011 Simon J.

Example Cut 2 66 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Example Cut 3 67 Computer vision: models, learning and inference. © 2011 Simon J.

Example Cut 3 67 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Denoising Results 68 Computer vision: models, learning and inference. © 2011 Simon J. D.

Denoising Results 68 Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Conditional Random Fields Computer vision: models, learning and inference. © 2011 Simon J. D.

Conditional Random Fields Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 69

Directed model for grids Cannot use graph cuts as three-wise term. Easy to draw

Directed model for grids Cannot use graph cuts as three-wise term. Easy to draw samples. Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 70

Applications • Background subtraction Computer vision: models, learning and inference. © 2011 Simon J.

Applications • Background subtraction Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 71

Applications • Grab cut Computer vision: models, learning and inference. © 2011 Simon J.

Applications • Grab cut Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 72

Applications • Stereo vision Computer vision: models, learning and inference. © 2011 Simon J.

Applications • Stereo vision Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 73

Applications • Shift-map image editing Computer vision: models, learning and inference. © 2011 Simon

Applications • Shift-map image editing Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 74

Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 75

Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 75

Applications • Shift-map image editing Computer vision: models, learning and inference. © 2011 Simon

Applications • Shift-map image editing Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 76

Applications • Super-resolution Computer vision: models, learning and inference. © 2011 Simon J. D.

Applications • Super-resolution Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 77

Applications • Texture synthesis Computer vision: models, learning and inference. © 2011 Simon J.

Applications • Texture synthesis Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 78

Image Quilting Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Image Quilting Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 79

Synthesizing faces Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Synthesizing faces Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 80

Graphical models Computer vision: models, learning and inference. © 2011 Simon J. D. Prince

Graphical models Computer vision: models, learning and inference. © 2011 Simon J. D. Prince 81