6 views

Uploaded by Balázs Brunáczky

dfg

save

- 16.pdf
- image contour
- Building Extraction From Remote Sensing Imageries by Data Fusion Techniques
- IRJET-Application of Geodesic Active Contours in iris Segmentation
- Detection of Broken Blister using Canny and Rc-algorithm
- Efficient Foreground Extraction Based on Optical Flow and SMED for Road Traffic Analysis
- Novel Architecture of RGB Edge Detection Technique For Fault Acceptance Applications
- Signature Region of Interest using Auto cropping
- Currency Recognition Using Image Processing
- A Distributed Canny Edge Detector Algorithm and FPGA Implementation
- 9783319406626-c2
- temporal filters
- 8. Electronics - Ijece - Edge Detection in - Neethu m.sasi
- Paper
- Wavelet Edge
- matlab 4m
- Iris_data
- FlumenMan
- 177870_kelompok Image Segmentation
- Digital Image Processing
- AN EVALUATION OF LICENSE PLATE RECOGNITION ALGORITHMS
- IJET-V3I4P6
- IRJET- An Analysis of Energy Efficient Gaussian Filter Architectures
- Gate Syllabus
- DEVELOPMENT OF CONTROL SOFTWARE FOR STAIR DETECTION IN A MOBILE ROBOT USING ARTIFICIAL INTELLIGENCE AND IMAGE PROCESSING
- dde-prospectus-2011-12-130611
- UT Dallas Syllabus for math5301.501.11f taught by Istvan Ozsvath (ozsvath)
- ipq
- Circulo de Quintas
- Independence
- 4.docx
- Tarea de Economía
- PRACTICA Dinamica Circular
- entrevista-inicial.pdf
- A7_CAPÍTULO_4.pdf
- Cornell Notes Template.docx
- 142612517-Transcripcion-de-conversacion-grabada-por-Mario-Silva.pdf
- Voy a Escuela Tecnica y Te Lo Cuento..
- tccs7v1-a4-adopting-an-alcohol-free-hand-rub-into-clinical-practice
- Recomend Ac i Ones
- Curriculum 2018, Final Dupa Consf. (1)
- elboracion de aceite de silicio
- Ananta.acarya
- La diversificación geográfica.docx
- Hygiene Management
- cl.9
- Absolutismo Español
- rangkuman filsafar
- Listas de Beneficiados
- 6 Halaman Persembahan.doc
- 628600_Sicher_B2_Grammatik_L1-12 (1)
- Baker
- 391263846-Fragmentos-de-Epica-Griega-Arcaica.pdf
- Manual Moodle
- Class 5english Math
- FinalExam Review Sheet IS 11 - Spring 2018.pdf
- El-cuerpo-recobrado-Introduccion-al-metodo-Alexander.pdf
- Guia_de_Aprendizaje_Induccion_a_PEMEX_Exploracion_y_Produccion.pdf
- Catalogo-de-Pruebas-2016.pdf
- reporteRestricciones.xls
- 2015-10-18-Daedalus.pdf
- Name White
- Logo
- Lec09 Threshold 4
- Lec06 Edge 4
- Logo With Border
- Turisztikailatnivalokpdf
- Logo
- Name White
- name_blue

You are on page 1of 9

**E¨otv¨os Lor´and University Lecture 6: Edge Detection
**

Budapest, Hungary

• Types of local image features

◦ Edges, lines, corners, blobs

• Principles of edge detection

Basic Algorithms for Digital Image Analysis: • Criteria for good edge filters

a course • Gradient edge filters

Dmitrij Csetverikov • Canny edge detector

**with help of Attila Lerch, Judit Verest´oy, Zolt´an Megyesi, Zsolt Jank´o • Edge localisation
**

and Levente Hajder ◦ Non-maxima suppression

◦ Hysteresis thresholding

http://visual.ipan.sztaki.hu

• Zero-crossing edge detector

2

Local image features Edge detection

**• Image edges do not necessarily coincide with physical edges
**

◦ Image edges are intensity discontinuities

Edge Line Blob Corner ◦ Physical edges are surface discontinuities

◦ Example: Edges of shadows are not surface discontinuities

Basic image features.

• Importance of intensity edges: Human eye detects them ‘in hardware’, at the

initial level of visual processing.

• Edge: drastic change of intensity across object contour

**• Line: narrow, elongated image region of approximately constant width and
**

intensity

• Corner: sharp turn of a contour ideal step edge blurred edge

• Blob: compact image region of approximately constant intensity Edge profiles.

4

3

Principles of edge detection

Edge filtering Edge localisation

**edge magnitude edge map
**

original image

edge orientation edge orientation

**Steps of edge detection.
**

original image edge magnitude edge orientation edge map

• Edge filter responds to edges and yields Example of edge detection by 3 × 3 Prewitt operator.

◦ Edge magnitude: strength of edge, a measure of local contrast Edge orientation is circular data; shown intensity-coded.

◦ Edge orientation

**• Tasks of edge localisation (post-processing):
**

◦ Remove noisy edges

◦ Remove ‘phantom’ edges, obtain thin contours

◦ Obtain edge map: a binary edge image.

• Note: Noise smoothing may be applied before edge filtering. Intensity profiles along lower (left) and upper (right) lines drawn in original image

6

5

**edge Edge filters
**

edge normal

direction

Edge filters are high-pass filters using spatial derivatives of intensity function to

**• enhance intensity variation across the edge
**

edge • suppress regions of constant intensity

orientation

The following operators are applied in edge filtering:

Edge normal, edge direction and edge orientation.

• Intensity gradient is vector composed of the first order partial derivatives:

• Edge normal: Direction of maximum intensity variation at edge point. !

◦ Unit vector perpendicular to the edge . ∂f ∂f

∇f (x, y) = ,

∂x ∂y

• Edge direction: Direction tangent to the contour

• Laplace operator is scalar composed of the second order partial derivatives:

◦ Unit vector parallel to the edge

◦ Convention needed for unumbiguous definition: e.g., ’dark on the left’ . ∂ 2f ∂ 2f

∆f (x, y) = +

∂x2 ∂y 2

• Also used: Edge orientation, which is circular data interpreted modulo π.

8

7

Criteria for good edge filters

f(x)

P

1. No response to flat regions ⇒ Sum of mask values is zero: r,c w(r, c) =0

df

__

dx 2. Isotropy: Response must be independent of edge orientation

2

d___

f 3. Good detection: Minimise the probabilities of

dx 2

• detecting spurious edges caused by noise (false positives)

• missing real edges (false negatives)

A signal and its first and second derivatives.

4. Good localisation: Detected edges must be as close as possible to true edges.

Edges are located at 5. Single response: Minimise number of false local maxima around true edge.

• maxima of absolute value of first derivative

• zero-crossings of second derivative step edge response noisy edge response

10

9

W1

object

W2

original image isotropic edge filter anisotropic edge filter

Illustration to the isotropy criterion.

**Illustration to the single response criterion.
**

• The isotropic edge filter yields uniform edge magnitude for all directions.

• The same piece of contours is detected in window W1 and window W2.

• The anisotropic edge filter yields non-uniform magnitude. In this illustration, ⇒ ‘Phantom’ edges parallel to ‘true’ edges, thick contours

the response depends on the edge orientation as follows:

• The response depends on the overlap between the window and the contour.

◦ Directions 45 · k are slightly amplified

◦

◦ Directions 90◦ · k are slightly suppressed • The multiple response is typical for all window-based detection tasks.

12

11

Gradient edge filters The meaning of the gradient vector

**Assume that the intensity function f (x, y) is sufficiently smooth. The intensity
**

gradient is the following vector:

!

. ∂f ∂f

∇f (x, y) = , = fx, fy

∂x ∂y

original image intensity surface thresholded image

**The magnitude M (x, y) and the orientation Θ(x, y) of the gradient vector are fastest growth
**

obtained as follows: edge

direction intensity surface

q

M (x, y) = k∇f (x, y)k = fx2 + fy2

gradient =

fx edge normal

Θ(x, y) = arctan

fy level lines

**The gradient vector gives the direction and the magnitude of the fastest growth
**

Intensity surface of an edge and its gradient.

of intensity.

14

13

Simple 3 × 3 gradient masks Constraining the gradient masks

**The above family of gradient masks obeys the following constraints:
**

• In discrete images, partial derivatives are approximated by finite differences.

1. Mirror symetry with respect to (wrt) the edge normal:

• The following family of gradient masks are used to compute the components

of the gradient vector: Gx(1, c) = Gx(3, c) and similar for Gy

Gx Gy

−1 0 1 −1 2−p −1 2. Antisymmetry wrt the edge orientation

1 1

p

2−p 0 p−2 p

0 0 0

−1 0 1 1 p−2 1 Gx(r, 1) = −Gx(r, 3), Gx(r, 2) = 0 and similar for Gy

• Different values of the parameter p result in different versions of the masks: • requried for precise localisation of edges

• assumes antisymmetry of intensity profile of edge (sigmoid shape)

Prewitt Sobel Isotropic

√ mirror symmetry wrt edge normal antisymmetry of edge profile

p 3 4 2+ 2

√

◦ When p = 2 + 2, the mask weights reflect the proximity to the mask origin.

⇒ The operator becomes less sensitive to edge orientation.

16

15

P P

3. No response to flat regions: r,c Gx (r, c) = r,c Gy (r, c) = 0.

The Canny edge detector

• follows from the antisymmetry

The Canny edge detector is optimal for noisy step edge under the following

assumptions:

4. Normalised response to ideal step edge of unit height: For such edge, the

output value should be 1. • The edge filter is linear.

Using these constraints, the above family of gradient masks can be derived from • The image noise is additive, white (uncorrelated) and Gaussian.

a general unconstrained 3 × 3 mask: 9 free parameters reduce to 1.

The optimality criterion used by Canny combines

The most frequently used are the Prewitt and the Sobel operators whose

X-masks are as follows: • good detection and

Prewitt Sobel

−1 0 1 −1 0 1 • good localisation

1 1

3

−1 0 1 4

−2 0 2

To satisfy the single response criterion, two post-processing (edge localisation)

−1 0 1 −1 0 1

operations are used:

• The Y -masks are obtained by 90◦ rotation of the X-masks. • Non-maxima suppression

• The Prewitt operator is the simplest and the fastest. • Hysteresis thresholding

18

17

A practical approximation of the Canny filter An efficient implementation of the Canny filter

**The original optimal edge filter is quite complicated. A simple practical An efficient implementation uses
**

approximation is as follows:

• the commutativity and associativity of linear filters:

1. Apply Gaussian filter obtaining smoothed image g(x, y) = f (x, y) ∗ wG(x, y; σ)

• The Gaussian parameter σ determines the size of the edge filter ∇ f (x, y) ∗ wG(x, y) = ∇ wG(x, y) ∗ f (x, y) = ∇ wG(x, y) ∗f (x, y)

2. Apply gradient operator ∇g(x, y) and calculate edge magnitude and • and the separability of the Gaussian filter:

orientation.

wG(x, y) = wG(x) · wG(y).

The scale parameter σ is selected based on

**As a result, the filter is implemented as a sequence of convolutions with 1D
**

• the desired level of detail: fine edges vs global edges;

masks.

• the noise level;

• the localisation-detection trade off: see template matching.

20

19

Edge localisation Non-maxima suppression

• Input: edge magnitude M (x, y) and edge orientation Θ(x, y) in each pixel of • Due to the multiple response, edge magnitude M (x, y) may contain wide ridges

the image. around the local maxima.

• Output: Binary edge map, with 1’s indicating edges, 0’s indicating no edges. • Non-maxima suppression removes the non-maxima pixels preserving the

connectivity of the contours.

Localisation selects those maxima of M (x, y) that correspond to true edge pixels.

Algorithm 1: Non-maxima suppression

• Can be applied after any edge filter that computes a measure of edge strength

and provides edge orientation.

1. From each position (x, y), step in the two directions perpendicular to edge

◦ Gradient: Canny, Prewitt orientation Θ(x, y).

◦ Non-gradient: For example, M´er˝o and Vassy

2. Denote the inital pixel (x, y) by C, the two neighbouring pixels in the

• Includes the following operations: perpendicular directions by A and B.

◦ Non-maxima suppression to remove ‘phantom’ edges and, if possible, obtain 3. If the M (A) > M (C) or M (B) > M (C), discard the pixel (x, y) by setting

1-pixel wide contours M (x, y) = 0.

◦ Hysteresis thresholding to remove noisy maxima without breaking the

contours

22

21

**normal Hysteresis thresholding
**

direction

pixel A M(C)>M(A)

M(C)>M(B) • The output of the non-maxima suppression still contains noisy local maxima.

pixel B

pixel C • Contrast (edge strength) may be different in different points of the contour.

Illustration to the non-maxima suppression. Pixels A and B are deleted because ⇒ Careful thresholding of M (x, y) is needed to remove these weak edges while

M (C) > M (A) and M (C) > M (B). Pixel C is not deleted. preserving the connectivity of the contours.

**• Hysteresis thresholding receives the output of the non-maxima suppression,
**

MN M S (x, y).

• The algorithm uses 2 thresholds, Thigh and Tlow .

**edge magnitude intensity profile (resized) result of NMS ◦ A pixel (x, y) is called strong if MN M S (x, y) > Thigh.
**

◦ A pixel (x, y) is called weak if MN M S (x, y) ≤ Tlow .

Thinning wide contours in edge magnitude images by non-maxima suppression. ◦ All other pixels are called candidate pixels.

The intensity profile along the indicated line is shown resized for better visibility.

24

23

Algorithm 2: Hysteresis thresholding C4

C3

C2

weak edge

1. In each position of (x, y), discard the pixel (x, y) if it is weak; output the pixel

if it is strong. strong edge

C1

candidate edge

2. If the pixel is a candidate, follow the chain of connected local maxima in both

directions along the edge, as long as MN M S > Tlow . Illustration to the hysteresis thresholding. The candidate edges C1 and C2 are

output, the candidate edges C3 and C4 are not.

3. If the starting candidate pixel (x, y) is connected to a strong pixel, output

this candidate pixel; otherwise, do not output the candidate pixel.

original image edge magnitude 5, 20 20, 40

Examples of edge localisation with different hysteresis thresholds.

26

25

**Zero-crossing edge detector Implementation of the zero crossing filter: Gaussian smoothing followed by
**

Laplacian filtering.

**• Using commutativity and associativity of linear filters and rotation symmetry of
**

Steep edge Blurred edge

Gaussian filter, we obtain the convolution mask of the zero-crossing operator,

called Laplacian-of-Gaussian (LoG):

f(x)

r2

2

−r

wZ (r) = C − 1 exp

+ + σ2 2σ 2

df

__ 0 0

dx - - ◦ C: normalisation constant

Double edge ◦ r2 = x2 + y 2: square distance from centre of mask

2

+ + ◦ σ is scale parameter: the smaller the σ the finer the edges obtained

_ d___f

dx 2 0 0 -

Zero crossing - • Discrete zero-crossing mask: Threshold wZ (r) at a small level.

**⇒ Larger mask obtained for larger σ: For example, when σ = 4 the size of the
**

Left: Principles of zero-crossing edge detector. mask is about 40 pixels.

Right: Simple masks for detection of zero-crossings.

28

27

• Another, more efficient but approximate, implementation of the zero-crossing

filter is the difference of two separable Gaussian filters, called DoG.

**• Localising the zero-crossings corresponds to edge localisation in gradient-type
**

edge detectors.

◦ For more precise localisation, one can locally approximate output of LoG filter

by facets (flat patches), then find zero-crossings analytically.

σ=5 σ = 10

LoG absolute LoG zero DoG zero

**Examples of edge detection by 15 × 15 LoG and DoG operators. ‘LoG absolute’ is
**

σ = 15 σ = 20 absolute value of filter output: dark lines are contours. ‘LoG zero’ was obtained

Shape of the Laplacian-of-Gaussian (LoG) filter for different σ. with removal of weak edges, ‘DoG zero’ without removal.

30

29

Properties of zero crossing edge detector

• The continuous zero-crossing edge detector always gives closed contours.

**◦ Reason: Cross-sections of continuous surface at zero level
**

◦ In principle, this may help in contour following

◦ In practice, many spurious loops appear Prewitt 3 × 3 M´er˝

o-Vassy 7 × 7 LoG 21 × 21

• Controlled operator size σ ⇒ Natural edge hierarchy within a scale-space.

**◦ Edges may only merge or disappear at rougher scales (larger σ)
**

◦ This tree-like data structure facilitates structural analysis of image

**• Does not provide edge orientation.
**

Canny 3 × 3 Canny 7 × 7 Canny 25 × 25

◦ Non-maxima suppression and hysteresis threshoding are not applicable

Examples of edge detection by different operators. The LoG result was obtained

◦ Other ways of post-processing to remove unrealiable edges can be used

with removal of weak edges. M´er˝o-Vassy is a non-gradient edge detector.

32

31

Summary of edge detection

**• 3 × 3 gradient operators (Prewitt, Sobel) are simple and fast. Used when
**

◦ Fine edges are only needed

◦ Noise level is low

**• By varying the σ parameter, the Canny operator can be used
**

◦ to detect fine as well as rough edges

◦ at different noise levels

**• All gradient operators
**

◦ provide edge orientation;

◦ need localisation: non-maxima suppression, hysteresis threshoding.

**• The zero-crossing edge detector
**

◦ is supported by neurophysiological experiments;

◦ was popular in the 1980’s ;

◦ today, less frequently used in practice.

33

- 16.pdfUploaded bycimasuk
- image contourUploaded byAhmed Ahmed
- Building Extraction From Remote Sensing Imageries by Data Fusion TechniquesUploaded byesatjournals
- IRJET-Application of Geodesic Active Contours in iris SegmentationUploaded byIRJET Journal
- Detection of Broken Blister using Canny and Rc-algorithmUploaded byijsret
- Efficient Foreground Extraction Based on Optical Flow and SMED for Road Traffic AnalysisUploaded byIJCSDF
- Novel Architecture of RGB Edge Detection Technique For Fault Acceptance ApplicationsUploaded byIRJET Journal
- Signature Region of Interest using Auto croppingUploaded byIJCSI Editor
- Currency Recognition Using Image ProcessingUploaded byYash Choudhary
- A Distributed Canny Edge Detector Algorithm and FPGA ImplementationUploaded byverilogcourseteam
- 9783319406626-c2Uploaded byمهند عدنان الجعفري
- temporal filtersUploaded bypi194043
- 8. Electronics - Ijece - Edge Detection in - Neethu m.sasiUploaded byiaset123
- PaperUploaded bycmcobo
- Wavelet EdgeUploaded byIon C. Andronache
- matlab 4mUploaded byRami Saleh
- Iris_dataUploaded byMTech CS
- FlumenManUploaded byjmm
- 177870_kelompok Image SegmentationUploaded byAchmad Fauzi Rachmani
- Digital Image ProcessingUploaded byDeepak Gour
- AN EVALUATION OF LICENSE PLATE RECOGNITION ALGORITHMSUploaded byIJDIWC
- IJET-V3I4P6Uploaded byInternational Journal of Engineering and Techniques
- IRJET- An Analysis of Energy Efficient Gaussian Filter ArchitecturesUploaded byIRJET Journal
- Gate SyllabusUploaded byParoma Roy
- DEVELOPMENT OF CONTROL SOFTWARE FOR STAIR DETECTION IN A MOBILE ROBOT USING ARTIFICIAL INTELLIGENCE AND IMAGE PROCESSINGUploaded byIAEME Publication
- dde-prospectus-2011-12-130611Uploaded bymudit_mady
- UT Dallas Syllabus for math5301.501.11f taught by Istvan Ozsvath (ozsvath)Uploaded byUT Dallas Provost's Technology Group
- ipqUploaded byUmesh Morankar
- Circulo de QuintasUploaded byHARP BLUES
- IndependenceUploaded bysophie

- 2015-10-18-Daedalus.pdfUploaded byBalázs Brunáczky
- Name WhiteUploaded byBalázs Brunáczky
- LogoUploaded byBalázs Brunáczky
- Lec09 Threshold 4Uploaded byBalázs Brunáczky
- Lec06 Edge 4Uploaded byBalázs Brunáczky
- Logo With BorderUploaded byBalázs Brunáczky
- TurisztikailatnivalokpdfUploaded byBalázs Brunáczky
- LogoUploaded byBalázs Brunáczky
- Name WhiteUploaded byBalázs Brunáczky
- name_blueUploaded byBalázs Brunáczky