Hallo, ich habe folgendes vor: mit einer Kamera soll ein runder Gegenstand aufgenommen werden. Die Kamera sieht dabei <180° des Gegenstands. Nun sind die Ränder des seitlich aufgenommenen Gegenstands weiter von der Kamera entfernt, wie der mittige Teil (aus Kamerasicht). Die möchte ich für mein Programm "linearisieren" bzw. so rechnen, dass alle Stellen des Gegenstandes theoretisch den gleichen Abstand zu Kamera haben. Allerdings fehlt mir der mathematische Ansatz. Hat hierzu jemand eine Idee?
Ich kenne mich mit Computer Vision zwar gut aus, aber nähere Infos statt Salamitaktik wären hilfreich. Worum geht es wirklich? Die Güte der Linearisierung hängt sicher von der Geometrie ab. Du willst einen 3D-Gegenstand also als 2D-Scheibe nähern? Was für Eingabewerte hast du, was möchtest du rausbekommen? Dein runder Gegenstand wird im Bild ja zur Ellipse. Reicht es dir, einfach direkt Pixelabstände zu Raumabständen gleichzusetzen? Dann reicht der Strahlensatz mit Brennweite der Linse, Gegenstandsweite, Bildweite.
m.s. schrieb: > so rechnen, dass > alle Stellen des Gegenstandes theoretisch den gleichen Abstand zu Kamera > haben. Das scheitert schon daran, dass die Aufnahme garkeine Information über den Abstand enthält. Man bräuchte eine stereoskopische Aufnahme, um daraus ein 3D-Modell zu errechnen. Das nächste Problem ergibt dann daraus, "Gegenstand" genau zu definieren. Georg
joa, das wird so nichts. Lass den Thread hier auslaufen und starte einen neuen: * welcher Gegenstand? Welche Kamera? Wie ist dein use case? * Ist die Pose des Gegenstandes immer gleich? In welchem Rahmen bewegen sich die sechs Werte? Und warum? * was willst du messen? Den Radius? Oder brauchst du wirklich alles entzerrt? Und warum? Das klingt eher sinnfrei. * Welche Kalibrierungsinfos hast du zur Verfügung? Ist das Bild verzerrt z.B. wegen der Optik? * Muss das einmal funktionieren oder wird das ein Produkt, das auch bei 1000 Versuchen immer laufen muss? * Wie viel Rechenzeit hast du zuf Verfügung? Echtzeitanforderungen? Auf welcher Hardware? Mit welcher Programmiersprache und welchen Bibliotheken?
georg schrieb: > m.s. schrieb: >> so rechnen, dass >> alle Stellen des Gegenstandes theoretisch den gleichen Abstand zu Kamera >> haben. > > Das scheitert schon daran, dass die Aufnahme garkeine Information über > den Abstand enthält. Sofern die Oberfläche des Gegenstands parallell zur Kameraebene ist, ist der Abstand für das Problem egal. Was nicht egal wäre, ist die Verzerrung der Linse. Man bräuchte ein Profil, das diese beschreibt.
m.s. schrieb: > Allerdings fehlt mir der mathematische Ansatz. Z = 42 Da, wie schon geschrieben wurde, dein Bild gar keine Entfernungsinformationen enthält, fügst du sie einfach selber hinzu. Oliver
Wenn ich dich richtig verstehe willst du eine Aufriss-artige Abbildung erreichen statt einer perspektivischen. Je weiter die Kamera vom Objekt entfernt ist, desto näher kommst du an eine entsprechende Abbildung. (Und du kannst auch mit entsprechenden Linsen auf das Objekt zoomen ohne die Perspektive zu ändern.)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.