War es hilfreich?

Lösung

Ich denke, Phasenkorrelation wird hier die beste Wahl sein. Es soll Ihnen die Phasenverschiebung (d. H. Die Übersetzung) zwischen zwei Bildern anzeigen. Es ist viel widerstandsfähiger (aber nicht immun) gegen Rauschen als die Erkennung von Merkmalen, da es im Frequenzraum arbeitet. Merkmaldetektoren arbeiten dagegen räumlich. Ein weiterer Vorteil ist, dass es im Vergleich zu Feature-Erkennungsmethoden sehr schnell ist. Ich habe eine Implementierung im OpenCV-Trunk verfügbar, die subpixelgenau ist. hier .

Ihre Bilder sind jedoch mit Ausnahme der Knickspur in der Mitte so gut wie "ohne Merkmale", sodass selbst die Phasenkorrelation Probleme damit haben kann. Stellen Sie sich vor, Sie versuchen, die Übersetzung in einem Schneesturm zu erkennen. Wenn alles, was Sie sehen können, weiß ist, können Sie nicht sagen, dass Sie überhaupt übersetzt haben, daher der Begriff Whiteout . In Ihrem Fall kann der Algorithmus unter "Greenout" leiden :)

Können Sie die Kameraeinstellungen anpassen, um bei schlechten Lichtverhältnissen besser zu funktionieren? Haben Sie die Iris vollständig geöffnet? Kannst du mit niedrigeren Frameraten leben? Durch Einstellen einer längeren Belichtungszeit kann die Kamera mehr Licht sammeln und bietet somit mehr Funktionen auf Kosten des Hinzufügens von Bewegungsunschärfe. Oder wenn wenig Licht Ihre Standardumgebung ist, möchten Sie wahrscheinlich etwas, das dafür entwickelt wurde, wie eine IR-Kamera, aber diese können teuer sein. Davon abgesehen sind ein großes Objektiv und Langzeitbelichtungen dein Freund :)

Histogrammausgleich kann für die Verbesserung des Bildkontrasts von Interesse sein. Aber manchmal kann es nur das Rauschen verstärken. OpenCV verfügt über eine globale Histogramm-Ausgleichsfunktion mit dem Namen EqualizeHist . Für eine lokalere Implementierung sollten Sie sich Contrast Limited Adaptive Histogram Equalization oder CLAHE ansehen kurz. Hier ist ein guter Artikel dazu. Diese Seite enthält einige schöne Beispiele und Code.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top