+ All Categories
Home > Documents > Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution?...

Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution?...

Date post: 25-Dec-2015
Category:
Upload: silvester-byrd
View: 216 times
Download: 0 times
Share this document with a friend
Popular Tags:
77
Neighborho Neighborho od od Operations Operations
Transcript
Page 1: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Neighborhood Neighborhood OperationsOperations

Page 2: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

ObjectivesObjectives• Why are neighborhoods important?• What is linear convolution?

– discrete– templates, masks or filters– algorithm mechanics– graphical interpretation

• Describe non-linear operators– maximum– minimum– median

• What is tiling?

Page 3: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Why are neighbourhoods important?Why are neighbourhoods important?

pixel

Page 4: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Because…Because…

• Provide context for individual pixels.

• Relationships between neighbors determine image features.

• Neighborhood operations:– noise reduction– edge enhancement– zooming

Page 5: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Noise reduction Edge Enhancement

Zooming

Page 6: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Neighbourhood OperationsNeighbourhood Operations

• Linear convolution (*)– A*B*C*D = B*C*D*A = ….

• Non-linear operators– median, max, min, ...

Page 7: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Convolution versus Spectral• We learnt two methods of processing images:

– Convolution– Spectral

• We analyzed and demonstrated how to build a processor (systolic, pipelined, parallel, cellular automaton) for 1D convolution.– 1D convolution is used in speech processing and in polynomial

multiplication.

• We will use visualized animations now to show in more detail how 2D convolution works for images.

• This should convince you how important it is to do convolution quickly in modern Spectral Architectures, especially for 3D etc.

Page 8: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

2D Convolution2D Convolution

• Consists of filtering an image A using a filter (mask, template) B.

• Mask is a small image whose pixel values are called weights.

• Weights modify relationships between pixels.

We will show more examples of convolution now, especially for 2D data

Page 9: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

A1,1 A1,2 A1,3 A1,4

A2,1 A2,2 A2,3 A2,4

A3,1 A3,2 A3,3 A3,4

A4,1 A4,2 A4,3 A4,4

B1,1 B1,2

B2,1 B2,2

BA C

C1,1 C1,2 C1,3

C3,1

C2,1 C2,2 C2,3

C3,2 C3,3

=

Filter,mask or template

Input image

ConvolvedImage

2 2

4 43 3

Page 10: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

A1,1 A1,2

A2,1 A2,2

A1,3 A1,4

A2,3 A2,4

A3,1 A3,2 A3,3 A3,4

A4,1 A4,2 A4,3 A4,4

B1,1 B1,2

B2,1 B2,2 A1,1B1,1

A2,1B2,1

A1,2B1,

2

A2,2B2,

2

A1,1B1,1C1,1= A1,2B1,

2

A2,1B2,1 A2,2B2,

2

Page 11: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

A1,1 A1,2

A2,1 A2,2

A1,3 A1,4

A2,3 A2,4

A3,1 A3,2 A3,3 A3,4

A4,1 A4,2 A4,3 A4,4

B1,1 B1,2

B2,1 B2,2A1,2B1,

1

A2,2B2,1

A1,3B1,

2

A2,3B2,

2

A1,2B1,1C1,2= A1,3B1,

2

A2,2B2,1 A2,3B2,

2

Page 12: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

A1,1 A1,2

A2,1 A2,2

A1,3 A1,4

A2,3 A2,4

A3,1 A3,2 A3,3 A3,4

A4,1 A4,2 A4,3 A4,4

B1,1 B1,2

B2,1 B2,2A1,3B1,

1

A2,3B2,1

A1,4B1,

2

A2,4B2,

2

A1,3B1,1C1,3= A1,4B1,

2

A2,3B2,1 A2,4B2,

2

Page 13: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

A1,1 A1,2

A2,1 A2,2

A1,3 A1,4

A2,3 A2,4

A3,1 A3,2 A3,3 A3,4

A4,1 A4,2 A4,3 A4,4

B1,1 B1,2

B2,1 B2,2

A2,1B1,

1

A3,1B2,1

A2,2B1,

2

A3,2B2,

2

A2,1B1,1C2,1= A2,2B1,

2

A3,1B2,1 A3,2B2,

2

Page 14: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

A1,1 A1,2

A2,1 A2,2

A1,3 A1,4

A2,3 A2,4

A3,1 A3,2 A3,3 A3,4

A4,1 A4,2 A4,3 A4,4

B1,1 B1,2

B2,1 B2,2B1,1 B1,2

B2,1 B2,2B1,1 B1,2

B2,1 B2,2

Page 15: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Mathematical NotationMathematical Notation

1 1

1,1,,

Mk

ki

Nl

ljljkijilk BAC

NMB

A1,1B1,1C1,1= A1,2B1,

2

A2,1B2,1 A2,2B2,

2

Page 16: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

ConvolutionConvolution

4 4 7 9

4 3 8 9

3 5 9 9

3 6 10 9

-1 2

-1 2

BA C

=

Filter,mask or template

Input image

ConvolvedImage

2 2

4 43 3

6

9

16

23

26

27

21

19

17

Page 17: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Convolution sizeConvolution sizeImage size = M1 N1

Mask size = M2 N2

Convolution size = M1- M2 +1 N1-N2+1

N1

N2

N1-N2+1

Typical Mask sizes= 33, 5 5, 77,9 9, 1111

What is the convolved image size for a 128 128 image and 7 7 mask?

Page 18: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

*1 1 11 1 1 1 1 1

1 1 11 1 1 1 1 1

1 1 11 1 1 1 1 1

1 1 11 1 1 1 1 1

1 1 11 1 1 1 1 1

1 1 11 1 1 1 1 1

1 1 11 1 1 1 1 1

1 1 11 1 1 1 1 1

1 1 11 1 1 1 1 1

=

We convolve with 9*9 averaging filter

Page 19: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Nonlinear Neighbourhood Nonlinear Neighbourhood OperationsOperations

• Maximum

• Minimum

• Median

1,1,

1:,1:,

1,1,1:,1:

,

1,1,1:,1:

,

median

min

max

ljkijiNlljMkki

lk

ljkijiNlljMkki

lk

ljkijiNlljMkki

lk

BAC

BAC

BAC

We discussed already sorter architecture (three variants – pipelined, butterfly combinational and sequential controller). It can be used for all these operations, and also for other non-linear operators

Page 20: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

61 62

57 60

59 65

63 56

59 55 58 57

49 53 55 45

1 1

1 1C1,2=

62

60

59

636359

Max and Min OperationsMax and Min Operations

63=max, 59=min

Page 21: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

61 62

57 60

59 65

63 56

59 55 58 57

49 53 55 45

C1,2=

Median OperationMedian Operation

1 1

1 1

1

1

1 1 1

62

60

59

63

65

56

55 58 57

62

59

65

60

63

56

57

58

55

987654321

59

rank

Page 22: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

9x9 Median

Page 23: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Edge Detection

• What do we mean by edge detection?

• What is an edge?

Page 24: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

What is Edge Detection?What is Edge Detection?

• Detects large intensity transitions between pixels

• Redraws the image with only the edges showing

0 0 0 33

0 0 45 78

0 45 23 33

0 0 42 76

0 0 0 38

Page 25: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

What is an Edge?

Edge easy to findEdge easy to find

Page 26: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

What is an Edge?

Where is edge? Single pixel wide or multiple pixels?Where is edge? Single pixel wide or multiple pixels?

Page 27: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

What is an Edge?

Noise: have to distinguish noise from actual edgeNoise: have to distinguish noise from actual edge

Noise Noise is hereis here

Page 28: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

What is an Edge?

Is this one edge or two?Is this one edge or two?

Page 29: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

What is an Edge?

Texture discontinuityTexture discontinuity

Page 30: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Edge Detection – so what is an Edge Detection – so what is an edge to be detected?edge to be detected?

• What is an edge– A large change in image brightness of a short

spatial distance – Edge strength = (I(x,y)-I(x+dx,y))/dx

But this general definition still allows for many theories, software implementation and hardware architectures.

Page 31: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Now we will Now we will discuss and discuss and illustrate various illustrate various kinds of filter kinds of filter operatorsoperators

Page 32: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Edge Detection FiltersEdge Detection Filters

•High - Pass Filtering Eliminates Uniform Regions (Low Frequencies)

•edge “detection” or “enhancement”

Page 33: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Edge Detection FiltersEdge Detection Filters

Page 34: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Edge Detection ContinuedEdge Detection Continued

•Sum of Kernel Coefficients = 0

•differences in signs emphasize differences in pixel values

•reduces average image intensity

•Negative pixel values in output?

Edge Detection FiltersEdge Detection Filters

Page 35: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

vertical

horizontal diagonal

Edge DirectionEdge Direction

Page 36: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Directional High Directional High Pass FiltersPass Filters

Page 37: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Convolution Edge Convolution Edge Detection using Detection using

Sobel and similar Sobel and similar operatorsoperators

Page 38: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Example of Sobel Operator

Sobel OperatorSobel Operator

Page 39: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Sobel Edge DetectionSobel Edge Detection

Page 40: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Convolution Application ExamplesConvolution Application Examples

--Edge DetectionWe apply Sobel Operator

-1 -2 -10 0 01 2 1

-1 0 1

-2 0 2

-1 0 1

Column Mask

Row Mask

as mask to a sub-field of a picture

-1 2 -1

0 0 0

1 2 1

p0, p1, p2

p3, p4, p5

p6, p7, p8 = (p6-p0)+2(p7-p1)+(p8-p2)

We can learn from the result obviously •The result of the above calculation for column mask is horizontal difference•With Row Mask we will get vertical difference

*

The final step of the convolution equation, dividing by the weight , must be ignored

Page 41: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

--Edge Detection with Sobel Operator

The weight of a mask determines the grey level of the image after convolution.

Like the weight of Sobel Mask WW= (-1) + (-2) + (-1) + 0 + 0 + 0 +1 + 2 +1= 0

The resulting image lost its “lightness” to be dark.dark.

Convolution Application ExamplesConvolution Application Examples

Page 42: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Sobel OperatorSobel Operator

Page 43: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Sobel OperatorSobel Operator

-1 -2 -1 0 0 0 1 2 1

-1 0 1-2 0 2 -1 0 1

S1= S2 =

Edge Magnitude =

Edge Direction =

22

21 SS

2

11tanS

S

Page 44: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

SobelPrewitt

Ticbetts

Canny

Comparison of Edge Detection Comparison of Edge Detection AlgorithmsAlgorithms

Page 45: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Edge DirectionEdge DirectionAssymetric kernels detect edges from Assymetric kernels detect edges from specific directionsspecific directions

EastEast

1 1 -1

1 -2 -1

1 1 -1

NorthEaNorthEastst

1 -1 -1

1 -2 -1

1 1 -1

NorthNorth

-1 -1 -1

1 -2 1

1 1 1

Page 46: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Robinson Robinson OperatorOperator

Page 47: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Robinson Compass MasksRobinson Compass Masks

-1 0 1-2 0 2 -1 0 1

0 1 2-1 0 1 -2 -1 0

1 2 1 0 0 0 -1 -2 -1

2 1 0 1 0 -1 0 -1 -2

1 0 -1 2 0 -2 1 1 -1

0 -1 -2-1 0 -1 2 1 0

-1 -2 -1 0 0 0 1 2 1

-2 -1 0-1 0 1 0 1 2

Arrows show edge directions

Page 48: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Roberts Roberts OperatorOperator

Page 49: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Roberts OperatorRoberts Operator

• Does not return any information about the orientation of the edge

22 ),1()1,()1,1(),( yxIyxIyxIyxI

),1()1,()1,1(),( yxIyxIyxIyxI

or

1 00 -1

0 1-1 0+

Page 50: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Prewitt OperatorPrewitt Operator-1 -1 -1 0 0 0 1 1 1

-1 0 1-1 0 1 -1 0 1

P1= P2 =

Edge Magnitude =

Edge Direction =

22

21 PP

2

11tanP

P

Page 51: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Prewitt Row

Edge Detection FiltersEdge Detection Filters

Page 52: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

0 1 2-1 0 1 -2 -1 0

1 2 1 0 0 0 -1 -2 -1Original

and filtered cow

Page 53: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Edge Detection Edge Detection (continued)(continued)

• First Order (Gradient) Kernels

• Prewitt RowPrewitt Row

1 0 -11 0 -1

1 0 -11 0 -1

1 0 -11 0 -1

• Sobel RowSobel Row

1 0 -11 0 -1

2 0 -22 0 -2

1 0 -11 0 -1

• Combine Row and Column Operators

Edge Detection Filters: compare Edge Detection Filters: compare Prewitt Prewitt and Sobeland Sobel

Page 54: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

1D Laplacian Operator

)(xf

x

xf

)(

2

22 )(

x

xfxf

first derivative

second derivative

Page 55: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

2D Laplacian Operator2D Laplacian Operator

2

2

2

22 ,,

),(y

yxf

x

yxfyxf

0 -1 0-1 4 -1 0 -1 0

1 -2 1-2 4 -2 1 -2 1

-1 -1 -1-1 8 -1-1 -1 -1

Convolution masks approximating a Laplacian

This is just one example of Laplacian, we can use much larger window

Page 56: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

0 -1 0-1 4 -1 0 -1 0

Input Mask Output

Page 57: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Image Processing Operations for Early Vision:

Edge Edge DetectionDetection

Page 58: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Reminder: Effect of FiltersReminder: Effect of Filters

low

high

Page 59: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

EdgesEdges… are the important part of images

intensity

color

edges

textures

contours

condensation...

simplest, least robust

most difficult, most robust There are many letters B occluded

by black shape here. How to find them?

Page 60: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Edge Detection

• Edges are curves in the image plane across which there is a “significant” change in image brightness.

• The goal of edge detection is the construction of an idealized line drawing

Image Processing OperationsImage Processing Operations

Page 61: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Pixels on edgesPixels on edges

Page 62: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Edges foundEdges found

Page 63: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Edge effects: rarely ideal edgesEdge effects: rarely ideal edges

Not all information is created equal...

Page 64: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Causes of edgesCauses of edges

• Depth discontinuity– One surface occludes another

• Surface orientation discontinuity– the edge of a block

• reflectance discontinuity– texture or color changes

• illumination discontinuity– shadows

Page 65: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Edges: causesEdges: causesWhat are they? Why?

four physical events that cause image edges...

Page 66: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

What are they? Why?

discontinuities in

• surface color/intensity• surface normal• depth• lighting (specularities)

four physical events that cause image edges...

Edges: causesEdges: causes

Page 67: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Edges are image locations with a local maximum in image gradient in the direction of that gradient

(steepness)

Edges: causesEdges: causes

Page 68: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Formal Model of Edge (cont) Formal Model of Edge Formal Model of Edge

Page 69: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Formal Model of Edge (cont) Formal Model of Edge: Roberts Formal Model of Edge: Roberts

Page 70: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Formal Model of Edge (cont) Formal Model of Edge: Laplacian and Marr-Formal Model of Edge: Laplacian and Marr-Hildreth Hildreth

Page 71: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Formal Model of Edge (cont) Formal Model of Edge Formal Model of Edge

Page 72: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Formal Model of Edge (cont) Formal Model of Edge Formal Model of Edge

Page 73: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

ThresholdsThresholds

very high thresholdoriginal image

Thresholds are important, done before or during edge detection.

Page 74: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

Thresholds

very high thresholdoriginal image

ThresholdsThresholds

Page 75: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

very high thresholdoriginal image

ThresholdsThresholds

Page 76: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

very high threshold

reasonable

original image

ThresholdsThresholds

Page 77: Neighborhood Operations Objectives Why are neighborhoods important? What is linear convolution? –discrete –templates, masks or filters –algorithm mechanics.

very high threshold

too low !reasonablethis all takes time...

original image

ThresholdsThresholds


Recommended