Leider hat sich dieses Verfahren als zu ungenau erwiesen - es ist zwar "unglaublich" schnell, dafür aber schnell verwirrt, wenn nicht alle Wände rechtwinklig sind...
Da ich früher oder später sowieso eine kleine Kartenavigation einbauen wollte, hab ich beschlossen diesen Ansatz weiter zu verfolgen. Um neuerkannte Punkte in der Karte hinzuzufügen, muss ja deren Position aus Referenzpunkten möglichst genau ermittelt werden.
Also erzeuge ich direkt aus meinen Scan-Daten ein Linienmuster und vergleiche die Punkte der zweiten Messung dann mit den Linien.
Das lässt sich ganz gut optimieren.
- Da Wände meistens gerade sind, können sie durch wenige Stützpunkte ersetzt werden.
- Punkte die nicht in der Nähe einer Geraden sind brauchen nicht verglichen werden.
Bis jetzt läuft das ganze ersteinmal nur auf dem PC. Aber die Ergebnisse sind gut. Mit ein bisschen Arbeit dürfte sich das ganze auch deutlich optimieren lassen. Die nächsten Tage werde ich mal ein paar Versuchsmessungen machen.
Wenn das alles klappt werde ich das ganze auf den AVR "portieren".
Im Anhang ein Bild, das den aktuellen Stand wiederspiegelt.
Blau sind die Punkte der ersten Messung, man sieht die eingezeichneten genäherten Geraden.
Rot sind die Punkte der zweiten Messung, dabei die blassroten die, die für die Korrelation berücksichtigt werden.
Und grün letztendlich die roten, verschobenen Punkte...
Lesezeichen