Professional Documents
Culture Documents
Contents
1 Introduction 2
3 Implementation in Matlab 3
4 Tests 5
5 Summary 6
1
1 INTRODUCTION 2
1 Introduction
The main task of my Vision System is to properly classify objects. In real-time
systems like an autonomous robot a good answer is not enough, the responde
time is as important. In situations where next motion depends on picture recog-
nition, a fast algorithm is necessary. There is place for Hough Transform. It’s
simplicity makes it so interesting.
y =a·x+b (1)
for:
~a = ρ · ~n (3)
we have:
3 Implementation in Matlab
We have a picture (value=1 is background) and a black straight (value=0 is an
object).
We know neither θ nor ρ. For every point in the line we compute all possible
straights, that can cross this point. And for every pair of (θ, ρ) we increment the
value the in Hough space in co-ordinates for this pair. All curves derived from
one straight meet in one point. This point has the biggest value; it describes
ours line.
3 IMPLEMENTATION IN MATLAB 4
Figure 4 shows how the algorithm works in the case of numerous lines.
4 TESTS 5
4 Tests
The following figures (made with script: houghtest.m) show how the algorithm
works for basic shapes. All source files are after edge detection (see Picture
Processing in Matlab documentation):
As we see the transform cannot recognize a horizontal line. The last figure
shows the results for a real photo:
5 SUMMARY 6
5 Summary
Hough transformation finds straight lines in a picture in an easy way with
this algorithm we can detect figures; with a specific shapes and angles. It is
independent from scale. It can be useful also in finding shapes in a room with
many other objects.
References
[1] Constantin Christmann, Proseminar Computervision: Geradenbestimmung
mit der Hough-Transformation
[2] R.Steinbrecher Bilverarbeitung in der Praxis
[3] Matlab Help