Markov Random Fields in Image Segmentationssip/2008/presentations2/Kato_ssip2008.pdf · Zoltan...

Post on 20-Aug-2018

233 views 0 download

Transcript of Markov Random Fields in Image Segmentationssip/2008/presentations2/Kato_ssip2008.pdf · Zoltan...

Markov Random Fields in Image SegmentationZoltan Kato

Image Processing & Computer Graphics Dept.University of SzegedHungary

Presented at SSIP 2008, Vienna, Austria

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 2

Overview

Segmentation as pixel labelingProbabilistic approach

Markov Random Field (MRF)Gibbs distribution & Energy function

Energy minimizationSimulated AnnealingMarkov Chain Monte Carlo (MCMC) sampling

Example MRF model & DemoParameter estimation (EM)More complex models

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 3

1. Extract features from the input imageEach pixel s in the image has a feature vector For the whole image, we have

2. Define the set of labels ΛEach pixel s is assigned a label For the whole image, we have

For an N×M image, there are |Λ|NM possible labelings.Which one is the right segmentation?Which one is the right segmentation?

Segmentation as a Pixel Labelling Task

sfr

}:{ Ssff s ∈=r

Λ∈sω

},{ Sss ∈= ωω

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 4

Probabilistic Approach, MAP

Define a probability measure on the set of all possible labelings and select the most likely one.

measures the probability of a labelling, given the observed feature Our goal is to find an optimal labeling which maximizesThis is called the Maximum a Posteriori (MAP) estimate:

ω̂

)|( fP ωf

)|( fP ω

)|(maxargˆ fPMAP ωωω Ω∈

=

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 5

Bayesian Framework

By Bayes Theorem, we have

is constant We need to define and in our model

)()|()(

)()|()|( ωωωωω PfPfPPfPfP ∝=

)( fP)(ωP )|( ωfP

likelihood

prior

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 6

Why MRF Modelization?

In real images, regions are often homogenous; neighboring pixels usually have similar properties (intensity, color, texture, …)Markov Random Field (MRF) is a probabilistic model which captures such contextual constraintsWell studied, strong theoretical backgroundAllows MCMC sampling of the (hidden) underlying structure Simulated Annealing

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 7

What is MRF?

To give a formal definition for Markov Random Fields, we need some basic building blocks

Observation Field and (hidden) Labeling Field Pixels and their NeighborsCliques and Clique PotentialsEnergy functionGibbs Distribution

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 8

Definition – Neighbors

For each pixel, we can define some surrounding pixels as its neighbors.Example : 1st order neighbors and 2nd order neighbors

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 9

Definition – MRF

The labeling field X can be modeled as a Markov Random Field (MRF) if

1. For all 2. For every and :

denotes the neighbors of pixel s

0)(: >=ΧΩ∈ ωω PSs ∈ Ω∈ω

),|(),|( srsrs NrPsrP ∈=≠ ωωωω

sN

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 10

Hammersley-Clifford Theorem

The Hammersley-Clifford Theorem states that a random field is a MRF if and only if follows a Gibbs distribution.

where is a normalization constant

This theorem provides us an easy way of defining MRF models via clique potentials.

)(ωP

))(exp(1))(exp(1)( ∑∈

−=−=Cc

cVZ

UZ

P ωωω

∑Ω∈

−=ω

ω))(exp( UZ

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 11

Definition – Clique

A subset is called a clique if every pair of pixels in this subset are neighbors.A clique containing n pixels is called nth orderclique, denoted by .The set of cliques in an image is denoted by

SC ⊆

nC

kCCCC UUU ...21=

singleton doubleton

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 12

Definition – Clique Potential

For each clique c in the image, we can assign a value which is called clique potential of c, where is the configuration of the labeling fieldThe sum of potentials of all cliques gives us the energy of the configuration

)(ωcV

)(ωU ω

...),(V)(V)(V)(U2

2

1

1C)j,i(

jiCCi

iCCc

c ∑∑∑∈∈∈

+ωω+ω=ω=ω

ω

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 13

MRF segmentation model+

find MAP estimate

Segmentation of grayscale images:A simple MRF modelConstruct a segmentation model where regions are formed by spatial clusters of pixels with similar intensity:

Input image

segmentation

ω̂

Model parameters

ω̂

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 14

MRF segmentation modelPixel labels (or classes) are represented by Gaussian distributions:

Clique potentials:Singleton: proportional to the likelihood of features given ω: log(P(f | ω)).Doubleton: favours similar labels at neighbouring pixels – smoothness prior

As β increases, regions become more homogenous

⎟⎟⎠

⎞⎜⎜⎝

⎛ −−= 2

2

2)(

exp2

1)|(s

s

s

sss

ffP

ω

ω

ω σμ

σπω

⎩⎨⎧

≠+=−

==ji

jijic if

ifjiV

ωωβωωβ

ωωβδ ),(),(2

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 15

Model parameters

Doubleton potential βless dependent on the input

can be fixed a priori

Number of labels (|Λ|)Problem dependent

usually given by the user or inferred from some higher level knowledge

Each label λ∈Λ is represented by a Gaussian distribution N(µλ,σλ):

estimated from the input image

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 16

Model parameters

The class statistics (mean and variance) can be estimated via the empirical mean and variance:

where Sλ denotes the set of pixels in the training set of class λa training set consists in a representative region selected by the user

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 17

Energy function

Now we can define the energy function of our MRF model:

Recall:

Hence

∑ ∑+⎟⎟⎠

⎞⎜⎜⎝

⎛ −+=

s rsrs

s

s

s

s

fU

,2

2

),(2

)()2log()( ωωβδ

σμ

σπωω

ωω

))(exp(1))(exp(1)|( ∑∈

−=−=Cc

cVZ

UZ

fP ωωω

)(minarg)|(maxargˆ ωωωωω

UfPMAP

Ω∈Ω∈==

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 18

Optimization

Problem reduced to the minimization of a non-convexenergy function

Many local minimaGradient descent?

Works only if we have a goodinitial segmentation

Simulated AnnealingAlways works (at least in theory)

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 19

ICM (~Gradient descent) [Besag86]

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 20

Simulated Annealing

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 21

Temperature Schedule

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 22

Temperature Schedule

Initial temperature: set it to a relatively low value (~4)faster execution

must be high enough to allow random jumps at the beginning!

Schedule:Stopping criteria:

Fixed number of iterationsEnergy change is less than a threshols

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 23

DemoDownload from:http://www.inf.u-szeged.hu/~kato/software/

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 24

Summary

Design your model carefullyOptimization is just a tool, do not expect a good segmentation from a wrong model

What about other than graylevel featuresExtension to color is relatively straightforward

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 25

What color features?RGB histogram

CIE-L*u*v* histogram

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 26

Extract Color Feature

We adopt the CIE-L*u*v* color space because it is perceptually uniform.

Color difference can be measured by Euclidean distance of two color vectors.

We convert each pixel from RGB space to CIE-L*u*v* space

We have 3 color feature images

L* u* v*

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 27

Color MRF segmentation modelPixel labels (or classes) are represented by three-variate Gaussian distributions:

Clique potentials:Singleton: proportional to the likelihood of features given ω: log(P(f | ω)).Doubleton: favours similar labels at neighbouring pixels – smoothness prior

As β increases, regions become more homogenous

⎩⎨⎧

≠+=−

==ji

jijic if

ifjiV

ωωβωωβ

ωωβδ ),(),(2

))()(21exp(

||)2(1)|( 1 T

ssnss sss

s

ufuffP ωωω

ωπω rrrr

−Σ−−Σ

= −

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 28

Summary

Design your model carefullyOptimization is just a tool, do not expect a good segmentation from a wrong model

What about other than graylevel featuresExtension to color is relatively straightforward

Can we segment images without user interaction?

Yes, but you need to estimate model parameters automatically (EM algorithm)

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 29

Incomplete data problem

Supervised parameter estimation we are given a labelled data set to learn from

e.g. somebody manually assigned labels to pixels

How to proceed without labelled data? Learning from incomplete dataStandard solution is an iterative procedure called Expectation-Maximization

Assigns labels and estimates parameters simultaneouslyChicken-Egg problem

30

EM principles : The two steps

Parameters :P(pixel/label)P(label)

Weighted labeling :P(label/pixel)

E Step : For each pixel, use parameters to compute probability distribution

M Step : Update the estimates of parametersbased on weighted (or ”soft”) labeling

The basic idea of EM

Each of the E and M steps is straightforward assuming the other is solved

Knowing the label of each pixel, we can estimate the parameters

Similar to supervised learning (hard vs. soft labeling)

Knowing the parameters of the distributions, we can assign a label to each pixel

by Maximum Likelihood – i.e. using the singleton energies only without pairwise interactions

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 31

Parameter estimation via EM

Basically, we will fit a mixture of Gaussian to the image histogram

We know the number of labels |Λ| ≡ number of mixture components

At each pixel, the complete data includesThe observed feature fs

Hidden pixel labels ls (a vector of size |Λ|) specifies the contribution of the pixel feature to each of the labels – i.e. a soft labeling

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 32

Parameter estimation via EM

E step: recompute lsi at each pixel s:

M step: update Gaussian parameters for each label λ:

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 33

∑Λ∈

==

λ

λλλλλ

)()|()()|()|(

PPPPP

s

ss

is f

ffl

,...)|(

)|(,

||

)|()(

∑∑∑

∈∈ ==

Ss

SsSs

P

P

S

PP

s

sss

f

fff

λ

λμ

λλ λ

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 34

Summary

Design your model carefullyOptimization is just a tool, do not expect a good segmentation from a wrong model

What about other than graylevel featuresExtension to color is relatively

Can we segment images without user interaction?Yes, but you need to estimate model parameters automatically (EM algorithm)

What if we do not know |Λ|? Fully automatic segmentation requires

Modeling of the parameters ANDa more sophisticated sampling algorithm (Reversible jump MCMC)

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 35

MRF+RJMCMC vs. JSEGR

JMC

MC

(17 min)

JSE

G (1.5 m

in)73

0 X

500

JSEG (Y. Deng, B.S.Manjunath: PAMI’01):1. color quantization: colors are

quantized to several representing classes that can be used to differentiate regions in the image.

2. spatial segmentation: A region growing method is then used to segment the image.

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 36

Benchmark results using the Berkeley Segmentation Dataset

RJMCMCJSEG

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 37

SummaryDesign your model carefully

Optimization is just a tool, do not expect a good segmentation from a wrong model

What about other than graylevel featuresExtension to color is relatively

Can we segment images without user interaction?Yes, but you need to estimate model parameters automatically (EMalgorithm)

What if we do not know |Λ|? Fully automatic segmentation requires

Modeling of the parameters ANDa more sophisticated sampling algorithm (Reversible jump MCMC)

Can we segment more complex images?Yes but you need a more complex MRF model

Objectives

Combine different segmentation cues:Color & Texture [ICPR2002,ICIP2003]Color & Motion [ACCV2006,ICIP2007]…?

How humans do it?Multiple cues are perceived simultaneously and then they are integrated by the human visual system [Kersten et al. An. Rev. Psych. 2004]Therefore different image features has to be handled in a parallel fashion.

We attempt to develop such a model in a Markovian framework

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 39

Multi-Layer MRF Model: Neighborhood & Interactions

ω is modeled as a MRFLayered structure“Soft” interaction between featuresP(ω | f) follows a

Gibbs distributionClique potentials define the local interaction strength

MAP ⇔ Energy minimization (U(ω))

ZZ

))(Vexp(-))exp(-U( )P(

:Theorem Clifford-Hammersley

CC∑

==ω

ωω Model Model ⇔⇔ Definition of clique potentialsDefinition of clique potentials

Texture

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 40

Texture Layer: MRF model

We extract two type of texture featuresGabor feature is good at discriminating strong-ordered texturesMRSAR feature is good at discriminating weak-ordered (or random) texturesThe number of texture feature images depends on the size of the image and other parameters.

Most of these doesn’t contain useful information Select feature images with high discriminating power.

MRF model is similar to the color layer model.

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 41

Examples of Texture Features

MRSAR features:

Gabor features:

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 42

Combined Layer: Labels

A label on the combined layer consists of a pair of color and texture/motion labels such that where and The number of possible classes isThe combined layer selects the most likely ones.

>=< ms

css ηηη ,

ccs Λ∈η mm

s Λ∈η

mc LL ×

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 43

Combined Layer: Singleton potential

Controls the number of classes:

is the percentage of labels belonging to classL is the number of classes present on the combined layer.

Unlikely classes have a few pixels they will be penalized and removed to get a lower energy

is a log-Gaussian term:Mean value is a guess about the number of classes,Variance is the confidence.

sN

η sη

)(LP

( ))()10()( 3 LPNRVsss += −

ηη

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 44

Combined Layer: Doubleton potential

Preferences are set in this order:1. Similar color and motion/texture labels 2. Different color and motion/texture labels3. Similar color (resp. motion/texture) and different

motion/texture (resp. color) labelsThese are contours visible only at one feature layer.

⎪⎪

⎪⎪

≠=

=≠+

≠≠

==−

=

mr

ms

cr

cs

mr

ms

cr

cs

mr

ms

cr

cs

mr

ms

cr

cs

rs

ηηηη

ηηηηα

ηηηη

ηηηηα

ηηδ

,or

, if

, if 0

, if

),(

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 45

Inter-layer clique potential

Five pair-wise interactions between a feature and combined layerPotential is proportional to the difference of the singleton potentials at the corresponding feature layer.

Prefers ωs and ηs having the same label, since they represent the labeling of the same pixel Prefers ωs and ηr having the same label, since we expect the combined and feature layers to be homogenous

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 46

Color Textured Segmentation

segmentation

segmentation

color

color

texture

texture

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 47

Color Textured SegmentationOriginal Image Texture

Segmentation Color

Segmentation

Multi-cue Segmentation

Texture Layer Result

Color Layer Result

Combined Layer Result

Original Image Texture Segmentation

Color Segmentation

Multi-cue Segmentation

Texture Layer Result

Color Layer Result

Combined Layer Result

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 48

Color & Motion Segmentation

Zoltan Kato: Markov Random Fields in Image SegmentationZoltan Kato: Markov Random Fields in Image Segmentation 49

References

Visithttp://www.inf.u-szeged.hu/~kato/