Ãbungen zu den Lehrveranstaltungen 710.003 Computergrafik 1 ...
Ãbungen zu den Lehrveranstaltungen 710.003 Computergrafik 1 ...
Ãbungen zu den Lehrveranstaltungen 710.003 Computergrafik 1 ...
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Abbildung 5: Eingangsbild<br />
und somit ergeben sich die Ableitung G x (siehe 6(b)) in x-Richtung und die Ableitung G y (siehe 6(c)) in<br />
y-Richtung wie folgt:<br />
G x = − x σ 2 · 1 (x 2 +y 2 )<br />
e− 2 σ 2 (4)<br />
G y = − y σ 2 · 1 (x 2 +y 2 )<br />
e− 2 σ 2 (5)<br />
Verwen<strong>den</strong> Sie die Parameter σ = in_sigma und N = in_window_size und befüllen Sie die G x und<br />
G y jeweils N ×N großen Faltungskerne entsprechend Ihrer mathematischen Definition. Die Faltungskerne<br />
sollen in der Maske zentriert und somit mittelwertfrei sein. Abschließend normalisieren Sie je<strong>den</strong> der Kerne<br />
so, dass für <strong>zu</strong>m Beispiel für G x folgendes gilt:<br />
N−1<br />
2∑<br />
j=− N−1<br />
2<br />
N−1<br />
2∑<br />
i=− N−1<br />
2<br />
(6)<br />
|G x (i, j)| = 1 (7)<br />
Faltung des Eingangsbildes mit Gx im Bildbereich (2 Punkte) Nun falten Sie das Eingangsbild mit<br />
G x im Bildbereich. Achten Sie dabei darauf, dass Sie, wie weiter oben beschrieben, eine Convolution und<br />
keine Correlation durchführen!<br />
Da der Faltungskern an <strong>den</strong> Bildrändern um bis <strong>zu</strong> (N − 1)/2 Pixel über <strong>den</strong> Bildrand hinausragt ist eine<br />
Randbehandlung nötig, um die anfängliche Bildgröße bei<strong>zu</strong>behalten. Wiederholen Sie da<strong>zu</strong> die Randpixel<br />
dementsprechend oft, wie in Abbildung 7 skizziert.<br />
Abschließend speichern Sie das Ergebnis der Filterung unter out_x_derivative_filename. Bringen<br />
Sie da<strong>zu</strong> das Bild, das Sie speichern wieder linear auf einen Wertebereich zwischen [0,255], so dass<br />
auch hier der gesamte Bereich ausgenutzt wird. Achten Sie aber gleichzeitig darauf mit dem vorhergehen<strong>den</strong><br />
Ergebnis weiter<strong>zu</strong>rechnen!<br />
Weitere hilfreiche OpenCV-Befehle:<br />
• cv::flip(...)<br />
• cv::filter2D(...)<br />
7