henning lorch page 1 vector gradient intersection transform (vgit) pattern recognition circle...

Post on 21-Dec-2015

235 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Henning LorchPage 1

Vector Gradient Intersection Transform (VGIT)

Pattern Recognition Circle Detection

Henning Lorch 2007, hlorch@eso.org

?

Henning LorchPage 2

Vector Gradient Intersection Transform (VGIT)

Motivation

• Why circles?1. General purpose2. Practical astronomy: detection of

• mask pinholes,• optical fiber ends,• circular celestial sources, etc.

3. Used at ESO for:• instrument & telescope control software

• Why a new circle detection method?– Compare to Hough Transform for circles:

• Complexity O(N3/2) as multi-stage approach for (x,y) and r (best known)

• Sensitive to distorting image content

Henning LorchPage 3

Vector Gradient Intersection Transform (VGIT)

Idea (1)

• Multi-stage determination of (x,y) and r• Principle:

Input Image

In principle O(N2), but will be decreased to O(N3/2) (see ahead)

1. VectorialGradientComputation

2. Take a Pairof GradientVectors

3. GetIntersection

4. GetDistribution ofIntersectionsfor all pairs

Henning LorchPage 4

• Constraints on getting intersections:– Weight by gradient intensities– Give high weight to (more or less)

perpendicular gradients, suppress others– Free choice: limit to positive gradient direction?

• Got (x,y), now determine r– E.g. by creating a gradient-radius histogram

Complexity is O(N) negligible

Vector Gradient Intersection Transform (VGIT)

Idea (2)

Weight angle difference

Henning LorchPage 5

Vector Gradient Intersection Transform (VGIT)

Efficient Algorithm (1)

• VGIT:– Avoid building pairs of gradients (avoid O(N2))– Allow approximation:

• Group gradients with similar direction• Combine perpendicular gradient groups to respective

intersection distributions• Combine intersection distributions to overall distribution

Henning LorchPage 6

Vector Gradient Intersection Transform (VGIT)

Efficient Algorithm (2)

• Procedure:– Create a set of intermediate accumulator frames

• Each corresponding to an arc fraction

– gradient pixels:• Select a frame according to the angle range• Draw a weighted line from the pixel‘s position

– Multiply „perpendicular“ frames

– Draw oppositely directed lines into same frame

=

Henning LorchPage 7

• Procedure:

=

=

=

=

=

=

+ + + +...+ + =

Vector Gradient Intersection Transform (VGIT)

Efficient Algorithm (3)

. . .

Henning LorchPage 8

• Disturbance:

=

=

=

=

=

=

...

Median

Vector Gradient Intersection Transform (VGIT)

Efficient Algorithm (4)

. . .

Henning LorchPage 9

Vector Gradient Intersection Transform (VGIT)

Resulting Parameters

• Radius:– Can also be improved, by:

• creating multiple histograms for different angle ranges,• and generating the median histogram

• General Optimisation:– Parameters x, y, r need to be optimised

• using integral along perimeter• E.g. „Amoeba“ strategy

Henning LorchPage 10

Vector Gradient Intersection Transform (VGIT)

Summary

• Order of complexity same as Hough• Accumulation process is different:

– Angle ranges are separated– Intersection frames are generated in non-linear step– Intersections are accumulated by median

Clear peaks are generated at circle centres Elimination of distortions by usage of median

Henning LorchPage 11

Vector Gradient Intersection Transform (VGIT)

Comparison Hough / VGIT

Hough (log) Hough improved VGIT (linear)

Linear Logarithmic

RAW FrameLow SNR

Henning LorchPage 12

• Questions?

hlorch@eso.org

Vector Gradient Intersection Transform (VGIT)

Thank You

!

top related