Loading...

PPT – Computer and Robot Vision I PowerPoint presentation | free to download - id: 246c67-ZDc1Z

The Adobe Flash plugin is needed to view this content

Computer and Robot Vision I

- Chapter 6
- Neighborhood Operators

Presented by ??? ??? 0952-725532 r97944037_at_csi

e.ntu.edu.tw ???? ??? ??

6.1 Introduction

- neighborhood operator
- workhorse of low- level vision
- performs conditioning, labeling, grouping

6.1 Introduction

- The output of a neighborhood operator at a given

pixel position is a function of the position, of

the input pixel value at the position, of the

values of the input pixels in some neighborhood

around the given input position, and possibly of

some values of previously generated output pixels

6.1 Introduction

- numeric domain arithmetic operations
- , -, min, max
- symbolic domain Boolean operations
- AND, OR, NOT, table-look-up
- nonrecursive neighborhood operators
- output is function of input
- recursive neighborhood operators
- output depends partly on previous output

6.1 Introduction

- neighborhood might be small and asymmetric or

large

6.1 Introduction

- set of neighboring pixel positions

around position - general nonrecursive neighborhood operator

input , output

6.1 Introduction

- linear operator
- one common nonrecursive neighborhood operator
- output
- possibly position-dependent linear combination of

inputs

6.1 Introduction

- shift-invariant position invariant
- action same regardless of position
- composition of shift-invariant operators
- shift-invariant

6.1 Introduction

- cross-correlation of with
- weight function kernel or mask of weights
- domain of

Take a break

6.1 Introduction

- common masks for noise cleaning, (a)

box filter

6.1 Introduction

- common masked for noise cleaning

6.1 Introduction

- application of
- mask with
- weights to image

6.1 Introduction

- convolution of with
- convolution
- close relative to cross-correlation
- linearshift-invariant.
- if mask symmetric, convolution and correlation

the same

Take a break

6.2 Symbolic Neighborhood Operators

- indexing of neighborhoods

6.2.1 Region-Growing Operator

- projection, outputs first or second argument
- background
- background pixel labeled first nonbackground label

6.2.1 Region-Growing Operator

- 4-connected
- output

a0 x0 a1 h(a0 , x1) a2 h(a1 , x2) a3 h(a2

, x3) a4 h(a3 , x4)

(No Transcript)

6.2.1 Region-Growing Operator

- 8-connected
- output

6.2.1 Region-Growing Operator

6.2.1 Region-Growing Operator

6.2.1 Region-Growing Operator

6.2.1 Region-Growing Operator

6.2.1 Region-Growing Operator

6.2.2 Nearest Neighbor Sets and Influence Zones

- influence zones
- nearest neighbor sets
- iteratively region-growing

6.2.2 Nearest Neighbor Sets and Influence Zones

- 4-neighborhood for city-block distance
- e.g. ( i , j ), ( k , l ) ( k i )

( l j ) - 8-neighborhood for max distance (of horizontal

and vertical distances) - e.g. ( i , j ), ( k , l ) max( k i

, l j ) - alternate 4, 8-neighborhood for Euclidean

distance

Take a break

6.2.3 Region-Shrinking Operator

- region-shrinking
- changes all border pixels to background
- can change connectivity
- can entirely delete region if repeatedly applied

6.2.3 Region-Shrinking Operator

- whether or not arguments identical
- background
- border has different neighbor and becomes

background

6.2.3 Region-Shrinking Operator

- 4-connected
- output

a0 x0 a1 h(a0 , x1) a2 h(a1 , x2) a3 h(a2

, x3) a4 h(a3 , x4)

a0 x0 1 a1 h(a0 , x1) a2 h(a1 , x2) a3

h(a2 , x3) a4 h(a3 , x4)

a0 x0 1 a1 h(a0 , x1) a2 h(a1 , x2) a3

h(a2 , x3) a4 h(a3 , x4)

6.2.3 Region-Shrinking Operator

- 8-connected
- output

6.2.3 Region-Shrinking Operator

- region shrinking related to binary erosion

except on labeled region

6.2.3 Region-Shrinking Operator

6.2.3 Region-Shrinking Operator

6.2.3 Region-Shrinking Operator

6.2.3 Region-Shrinking Operator

Take a break

6.2.4 Mark-Interior/Border-Pixel Operator

- mark-interior operator
- border-pixel operator
- marks all interior pixels with the label , and

all border pixels with the label

6.2.4 Mark-Interior/Border-Pixel Operator

- whether or not arguments identical
- recognizes whether or not its argument is

symbol

6.2.4 Mark-Interior/Border-Pixel Operator

- 4-connected
- output

a0 x0 a1 h(a0 , x1) a2 h(a1 , x2) a3 h(a2

, x3) a4 h(a3 , x4)

a0 x0 1 a1 h(a0 , x1) a2 h(a1 , x2) a3

h(a2 , x3) a4 h(a3 , x4)

a0 x0 0 a1 h(a0 , x1) a2 h(a1 , x2) a3

h(a2 , x3) a4 h(a3 , x4)

6.2.4 Mark-Interior/Border-Pixel Operator

- 8-connected
- output

Take a break

6.2.5 Connectivity Number Operator

- connectivity number
- nonrecursive and symbolic data domain
- classify the way pixel connected to neighbors
- six values of connectivity
- five for border, one for interior
- Border
- isolated, edge, connected, branching, crossing

6.2.5 Connectivity Number Operator

6.2.5 Connectivity Number Operator

- corner neighborhood

6.2.5 Connectivity Number Operator

Yokoi Connectivity Number

- 4-connectivity
- corner transition
- corner all , no transition
- center , neighbor , nothing will happen

(No Transcript)

Yokoi Connectivity Number

- 5 no transition all 8 neighbors 1, thus interior
- 1 transition generates one connected

component if center removed

Yokoi Connectivity Number

- connectivity number

Yokoi Connectivity Number

Yokoi Connectivity Number

Yokoi Connectivity Number

Yokoi Connectivity Number

- lena.6464

Yokoi Connectivity Number

- lena.yokoi

Take a break

Yokoi Connectivity Number

- 8-connectivity, only slightly different
- center and corner transition
- corner no transition, all
- itself and two 4-neighbors , corner

(No Transcript)

Yokoi Connectivity Number

Rutovitz Connectivity Number

- Rutovitz connectivity
- number of transitions from one symbol to another
- sometimes called crossing number

Take a break

6.2.6 Connected Shrink Operator

- connected shrink
- recursive operator, symbolic data domain
- deletes border pixels without disconnecting

regions

6.2.6 Connected Shrink Operator

- Top-down, left-right scan deletes edge pixels

not right-boundary

(No Transcript)

6.2.6 Connected Shrink Operator

- determines whether corner connected

(No Transcript)

6.2.6 Connected Shrink Operator

- background
- output symbol

6.2.6 Connected Shrink Operator

6.2.6 Connected Shrink Operator

6.2.6 Connected Shrink Operator

Take a break

6.2.7 Pair Relationship Operator

- pair relationship operator
- nonrecursive operator, symbolic data domain
- determines whether first argument equals

label

6.2.7 Pair Relationship Operator

- 4-connected mode, output
- not deletable if Yokoi number or no

neighbor - possibly deletable if Yokoi number and

some neighbor

6.2.8 Thinning Operator

- thinning operator is composition of three

operators - Yokoi connectivity
- pair relationship
- connected shrink

6.2.8 Thinning Operator

Yoloi Output

Pair relation Output

(No Transcript)

6.2.8 Thinning Operator

- lena.thin

6.2.8 Thinning Operator

- lena.thin

Take a break

6.2.9 Distance Transformation Operator

- distance transformation
- produces distance to closest border pixel

6.2.9 Distance Transformation Operator

- nonrecursive, iterative, start with
- background
- border, because distance to border is
- interior pixels

6.2.9 Distance Transformation Operator

- iteration label with all with

neighbor

6.2.9 Distance Transformation Operator

- equivalent algorithm nonrecursive iterative
- if no neighbor labeled, still interior, leave

it alone - self interior but

neighbor labeled - already labeled, wont change value since

later route farther - 4-connected output

6.2.9 Distance Transformation Operator

- distance transformation
- produces distance to closest background
- recursive
- two-pass

6.2.9 Distance Transformation Operator

- first pass left-right, top-bottom
- if background still background, since
- min min of upper and left neighbors and add
- 4-connected output

6.2.9 Distance Transformation Operator

- second pass right-left, bottom-up
- 4-connected output

6.2.9 Distance Transformation Operator

- Original

6.2.9 Distance Transformation Operator

- after pass 1

6.2.9 Distance Transformation Operator

- pass 2

Take a break

6.2.10 Radius of Fusion

- The radius of fusion for any connected component

of binary image is the radius of a disk

satisfying the condition that if the binary image

is morphologically closed with a disk of

radius , then the given connected region will

fuse with some other connected region

6.2.10 Radius of Fusion

6.2.11 Number of Shortest Paths

- number of shortest paths for each 0-pixel to

binary-1 pixel set given binary image - can be 4-neighborhood or 8-neighborhood
- nonzero, stays unchanged since

shortest paths counted - if zero then sum of neighboring shortest

paths

6.2.11 Number of Shortest Paths

6.2.11 Number of Shortest Paths

6.2.11 Number of Shortest Paths

Take a break

6.3 Extremum-Related Neighborhood Operators

6.3.1 Non-Minima-Maxima Operator

- non-minima-maxima
- nonrecursive operator
- symbolic output

6.3.1 Non-Minima-Maxima Operator

- a pixel can be neighborhood maximum not relative

maximum

6.3.1 Non-Minima-Maxima Operator

6.3.1 Non-Minima-Maxima Operator

- 4-connected
- output pixel

6.3.2 Relative Extrema Operator

- relative extrema operators
- relative maximum and minimum operators
- relative extrema
- recursive operator, numeric data domain
- relative extrema
- input not changedoutput modified
- top-down, left-right scan
- then bottom-up, right-left scan
- until no change

6.3.2 Relative Extrema Operator

- output value of highest extrema reachable by

monotonic path - relative extrema pixels output same as input

pixels

6.3.2 Relative Extrema Operator

- pixel designations for the normal and reverse

scans

6.3.2 Relative Extrema Operator

6.3.2 Relative Extrema Operator

- two primitive functions and
- use new maximum value when

ascending - keep original maximum when descending

6.3.2 Relative Extrema Operator

- 4-connected, output

top-down , left-right

bottom-up , right-left

6.3.2 Relative Extrema Operator

a0 l0 a1 h (x0, x1, a0, l1) a2 h (x0, x2,

a1, l2)

6.3.2 Relative Extrema Operator

a0 l0 a1 h (x0, x1, a0, l1) a2 h (x0, x2,

a1, l2)

6.3.2 Relative Extrema Operator

a0 l0 a1 h (x0, x1, a0, l1) a2 h (x0, x2,

a1, l2)

6.3.2 Relative Extrema Operator

a0 l0 a1 h (x0, x1, a0, l1) a2 h (x0, x2,

a1, l2)

6.3.2 Relative Extrema Operator

a0 l0 a1 h (x0, x1, a0, l1) a2 h (x0, x2,

a1, l2)

6.3.2 Relative Extrema Operator

a0 l0 a1 h (x0, x1, a0, l1) a2 h (x0, x2,

a1, l2)

6.3.2 Relative Extrema Operator

a0 l0 a1 h (x0, x1, a0, l1) a2 h (x0, x2,

a1, l2)

6.3.2 Relative Extrema Operator

a0 l0 a1 h (x0, x1, a0, l1) a2 h (x0, x2,

a1, l2)

6.3.2 Relative Extrema Operator

a0 l0 a1 h (x0, x1, a0, l1) a2 h (x0, x2,

a1, l2)

Take a break

6.3.3 Reachability Operator

- successively propagating labels that can reach by

monotonic paths descending reachability operator

employs

6.3.3 Reachability Operator

- g pixels that are not relative extrema labeled

background - a unchanged when neighbor is g or the same with

neighbor - b become first propagated label if originally g
- c common region more than one extremum can reach

it by monotonic path - c already labeled and neighbor has different

label, then two extrema reach - a propagate from extremum

6.3.3 Reachability Operator

- 4-connected, output

a0 l0 a1 h (a0 , l1 , x0 , x1) a2 h (a1 ,

l2 , x0 , x2)

6.3.3 Reachability Operator

6.3.3 Reachability Operator

(No Transcript)

6.3.3 Reachability Operator

Take a break

6.4 Linear Shift-Invariant Neighborhood Operators

- Convolution
- Commutative
- Associative
- distributor over sums
- homogeneous

6.4.1 Convolution and Correlation

- convolution of an image f with kernel w

6.4.1 Convolution and Correlation

6.4.1 Convolution and Correlation

Convolution

6.4.1 Convolution and Correlation

6.4.1 Convolution and Correlation

6.4.1 Convolution and Correlation

6.4.1 Convolution and Correlation

6.4.1 Convolution and Correlation

6.4.1 Convolution and Correlation

(No Transcript)

6.4.2 Separability

6.4.2 Separability

Project due Nov. 18 ??

- Write a program to generate Yokoi connectivity

number - You can down sample lena.bmp from 512512 to

6464 first. - Sample pixels positions at (r, c) (0,0), (0,8)

, so everyone will get the same answer .

Project due Nov. 25

- Write a program to generate thinned image.
- You can down sample lena.bmp from 512512 to

6464 first. - Sample pixels positions at (r, c) (0,0), (0,8)

, so everyone will get the same answer .