Zum Inhalt

Kamera vermessen

Jedes Objektiv bildet ein wenig anders ab, als der Katalog verspricht. Wer die Kamera einmal vermisst, sagt der App genau, wie ihr Bild zustande kommt — und bekommt dafür zwei Dinge, die vorher nicht gingen.

Braucht einen Rechner

Diese Anleitung ist die einzige im Handbuch, für die ein PC nötig ist: Muster drucken, Aufnahmen auswerten. Aufgenommen wird trotzdem vom Handy — die Hände bleiben frei fürs Muster.

Was du davon hast

Die Rangier-Ansicht stimmt. Sie rechnet jedes Kamerabild auf den Boden zurück. Wie weit ein Punkt am Bildrand wirklich entfernt ist, hängt an der Brennweite; ist die geraten, steht das Bild an der falschen Stelle — und sieht dabei völlig plausibel aus. Genau das ist beim Rangieren die gefährlichste Sorte Fehler.

Der Rückspiegel lässt sich entzerren. Erst mit den gemessenen Werten kann die App die Wölbung des Fischauges herausrechnen. Ohne sie ist der Umschalter für die Darstellung ausgegraut.

Ohne Kalibrierung funktioniert weiterhin alles andere: Fahren, Rückspiegel im Originalbild, Übersicht. Nur die beiden Punkte oben fehlen.

Was du brauchst

  • Die Kamera, eingerichtet und im WLAN erreichbar
  • Ein Handy im selben WLAN
  • Einen Rechner im selben WLAN, mit dem Projektordner und der eingerichteten Python-Umgebung — wie sie DEVELOPMENT.md im Projekt beschreibt
  • Einen Drucker und ein Blatt Papier, besser eine feste Unterlage
  • Ein Lineal

Rechne mit einer halben Stunde, davon die meiste Zeit fürs Aufnehmen.


1. Muster drucken

cd simulator
.venv/bin/python tools/print_target.py --out muster.svg

Die Datei im Browser öffnen und drucken — Originalgröße bzw. 100 %, nicht „An Seite anpassen".

Danach nachmessen

Leg ein Lineal an eine Feldkante und miss nach. Drucker skalieren gelegentlich, ohne es zu sagen. Der gemessene Wert geht später in die Auswertung, nicht der gedruckte Sollwert — sonst stimmt der ganze Maßstab nicht, und das Muster sieht dabei völlig richtig aus.

Klebe das Blatt auf eine feste Unterlage. Ein durchgebogenes Muster verfälscht die Messung, und krumm wird es schneller, als man denkt.

2. Aufnehmen

.venv/bin/python tools/capture.py --camera http://192.168.1.50 --out bilder/heck

Das Werkzeug nennt eine Adresse wie http://192.168.1.42:8092. Ruf sie auf dem Handy auf: Du siehst das Kamerabild und einen Knopf Aufnehmen. Damit hast du beide Hände am Muster.

Nach jeder Aufnahme meldet das Werkzeug sofort, ob es das Schachbrett gefunden hat. Eine unbrauchbare Lage fällt so auf, solange das Brett noch in der Hand ist — und nicht erst beim Auswerten, wenn alles weggeräumt ist.

Wie du halten musst, damit die Messung etwas taugt:

Anzahl mindestens zwölf brauchbare Aufnahmen, mehr schadet nicht
Rand das Muster in jede Ecke des Bildes bringen, nicht nur in die Mitte
Abstand nah und fern mischen — mal bildfüllend, mal klein
Schräglage gekippt halten, in beide Richtungen, nicht nur frontal

Der Grund für die letzten drei Zeilen: Die Verzeichnung zeigt sich am Rand am stärksten, und Brennweite und Abstand lassen sich nur auseinanderhalten, wenn das Muster aus verschiedenen Entfernungen erscheint. Zwölf frontale Aufnahmen aus der Bildmitte ergeben eine Zahl, die stimmen könnte oder auch nicht.

3. Rechnen

.venv/bin/python tools/calibrate.py bilder/heck --square 0.025 > heck.json

Für --square den nachgemessenen Wert einsetzen, in Metern.

Das Werkzeug meldet einen Rückprojektionsfehler. Der sagt, wie gut das Modell zu den gefundenen Ecken passt — nicht, ob die Werte stimmen. Ein kleiner Wert aus lauter gleichartigen Aufnahmen ist wertlos. Deshalb steht die Warnung auch in der Ausgabe.

Vorher ausprobieren

tools/calibrate.py --selftest rechnet gegen ein bekanntes Objektiv und zeigt, ob die Auswertung überhaupt funktioniert. Dort ist die Wahrheit bekannt, an echten Bildern nicht.

4. Auf die Kamera schreiben

.venv/bin/python tools/apply_calibration.py \
    --camera http://192.168.1.50 --json heck.json

Die Werte landen dauerhaft auf der Kamera und überleben einen Neustart. Das Werkzeug liest sie zur Kontrolle zurück und meldet, wenn etwas nicht angekommen ist.

Ab jetzt meldet die Kamera ihren Öffnungswinkel selbst — in der App unter Objektiv im Kameradialog, etwa „99,1° × 73,2°". Vorher stand dort der eingetragene Schätzwert.

5. Prüfen

.venv/bin/python tools/check_calibration.py \
    --camera http://192.168.1.50 --bild pruefbild.jpg --out vergleich.png

Als Prüfbild eignet sich alles mit vielen geraden Linien: ein gefliester Boden, Pflaster, Parkplatzmarkierungen. Was in Wirklichkeit gerade ist, muss nach dem Entzerren auch im Bild gerade sein — mehr ist der Prüfgedanke nicht.

Das Werkzeug nennt die Öffnungswinkel und misst, wie viel gerader das Bild danach ist. Absolute Zahlen hängen von der Szene ab; verglichen werden die drei Varianten desselben Bildes. Sieh dir dazu das Vergleichsbild an — die Zahl allein genügt nicht.


Danach

Trage noch die Einbaulage ein, wenn du die Rangier-Ansicht nutzen willst: Blickrichtung, Neigung und die Position am Fahrzeug. Sie steht im selben Dialog unter Einbaulage und ist etwas anderes als die Kalibrierung — die beschreibt das Objektiv, die Einbaulage sagt, wo die Kamera hängt.

Ein Grad Neigungsfehler verschiebt einen Punkt in 10 m Entfernung um gut einen Meter. Sorgfältig messen lohnt sich hier mehr als überall sonst.

Häufige Stolpersteine

„Zu wenige brauchbare Ansichten" — das Muster war zu klein im Bild, zu schräg, oder unscharf. Näher herangehen und mehr Aufnahmen machen.

Die Werte sehen plausibel aus, das Bild stimmt trotzdem nicht — meist ist die Feldkante falsch angegeben. Nachmessen, nicht den Sollwert nehmen.

Der Umschalter im Rückspiegel bleibt ausgegraut — die Kamera meldet keine Kalibrierung. Prüfe mit check_calibration.py --camera …, ob sie wirklich angekommen ist.

App benutzen Häufige Fragen