Zusammenfassung - Otto-von-Guericke-Universität Magdeburg
Zusammenfassung - Otto-von-Guericke-Universität Magdeburg
Zusammenfassung - Otto-von-Guericke-Universität Magdeburg
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
5.2 Gitterbasierte Richtungsmerkmale<br />
Ähnlich der Square-Box Quantisierung nach Freeman arbeitet auch die Circular Quantisierung<br />
nach Koplowitz und Toussaint [KT76]. Statt quadratischer Umgebungen werden bei<br />
letzterer die Gitterknoten mit Kreisen umgeben. Befindet sich ein Abtastpunkt innerhalb der<br />
kreisförmigen Umgebung eines Gitterpunktes, so wird dieser Gitterpunkt selektiert. Das Problem<br />
fehlerhafter Quantisierung <strong>von</strong> diagonalen Stiftbewegungen, wie es im Falle der Square-<br />
Box Quantisierung auftreten kann, existiert bei der Circular Quantisierung nicht, wie in Abbildung<br />
5.7 unten rechts etwa im Bereich der Abtastpunkte b und c oder e und f leicht erkennbar<br />
ist. Solche Abtastpunkte, die nicht innerhalb der Kreisumgebung eines Gitterknotens liegen,<br />
werden bei dieser Art der Quantisierung nicht berücksichtigt.<br />
Aufgrund der einfachen Umsetzbarkeit und schnellen Verarbeitung wird in dieser Arbeit<br />
die Circular Quantisierung verwendet. In Algrorithmus 2 ist dieses Quantisierungsverfahren<br />
beispielhaft als Funktion circularQuantization(P,wg) implementiert. Die Argumente P und<br />
wg sind die zu quantisierende Sequenz <strong>von</strong> Abtastpunkten sowie die Gitterweite. Als Rückgabe<br />
liefert die Funktion eine Sequenz ¯P <strong>von</strong> Knotenpunkten.<br />
In Abbildung 5.8 ist diese Art der Quantisierung zweier Punkte grafisch dargestellt. Zu sehen<br />
ist ein Ausschnitt eines quadratischen Gitters mitsamt den kreisförmigen Umgebungen<br />
der Gitterknoten. Der Punkt p1 liegt innerhalb des Kreises um den Gitterknoten (1,1), der<br />
Punkt p2 jedoch nicht. Ebenfalls ist zu erkennen, dass die Knotenbezeichnungen (Knotenkoordinaten)<br />
als Vielfache <strong>von</strong> wg ausgedrückt werden. Das heißt, die Koordinatensysteme der<br />
Abtastpunkte und der Gitterknoten unterscheiden sich in ihren Skalen.<br />
Algorithmus 3 Vereinfachter Bresenham-Linienalgorithmus zur Bestimmung der Gitterknoten<br />
p1 bis pn zwischen pbegin und pend<br />
1: function BRESENHAM(pbegin, pend) ⊲ pbegin = (xbegin,ybegin) T , pend = (xend,yend) T<br />
2: ∆x ← xend − xbegin<br />
3: ∆y ← yend − ybegin<br />
4: if |∆x| ≥ |∆y| then<br />
5: σ ← sgn∆x ⊲ Vorzeichen <strong>von</strong> ∆x<br />
6: for i ← 1...|∆x| do<br />
7: xi ← xbegin + σ · i<br />
8: yi ← ⌊ybegin + i · ∆y 9:<br />
/∆x + 0.5⌋<br />
pi ← (xi,yi)<br />
10: end for<br />
11: else<br />
12: σ ← sgn∆y ⊲ Vorzeichen <strong>von</strong> ∆y<br />
13: for i ← 1...|∆y| do<br />
14: xi ← ⌊xbegin + i · ∆x 15:<br />
16:<br />
/∆y + 0.5⌋<br />
yi ← ybegin + σ · i<br />
pi ← (xi,yi)<br />
17: end for<br />
18: end if<br />
19: return (pbegin, p1, p2,..., pend)<br />
20: end function<br />
61