mikrocontroller.net

Forum: PC Hard- und Software 3D Positionsextraktion aus Bildern


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Autor: Fabian S. (jacky2k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
folgendes Szenario: Ich habe ein paar Objekte (kleine silberne Kugeln) 
mit Stäben (Ständer) im Raum angeordnet und will die Position dieser 
Kugeln wissen. Da ich verschiedene Positionen ausprobieren muss, habe 
ich keine Lust jede einzeln davon jedes mal zu vermessen.
Meine Idee: Das ganze mit Hilfe von ein paar Fotos einer jeder 
Kombination machen. Ich weiß was Photogrammetrie ist und auch dass es da 
Kiloweise Software für gibt. Jedoch habe ich auf die Schnelle keine 
Software gefunden, die es mir erlaufen würde die Positionen der Objekte 
möglichst genau zu bestimmen. Die Photogrammetrie Software ist dafür 
ausgelegt schöne Bilder zu erzeugen, das brauche ich aber nicht. Ich 
will nur die Positon wissen. Gibt es da etwas Einfacheres? Im Prinzip 
ist es ja ähnlich wie so ein 3D Tracking System, welches mit Kameras und 
diesen grauen Kugeln funktioniert. Nur dass ich die Kameras in meinem 
Fall halt nicht einmessen kann. Also quasi suche ich eine Kombination 
der Techniken aus Photogrammetrie und optischem 3D Tracking.
Mit freundlichen Grüßen
Fabian

Autor: Dussel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Suchst du ein fertiges Programm oder einen Lösungsansatz?
Man könnte feste Referenzobjekte platzieren, deren Position bekannt ist 
zu denen die Positionen der anderen Objekte bestimmt werden kann.
Ein anderer Ansatz wären Matchmovingalgorithmen.

Autor: Fabian S. (jacky2k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich such eine fertige Software. Selber machen geht sicher irgendwie, 
dauert halt nur... ;)

Autor: Sparfux (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
SURE von nFrames.

Ob nun genau deine Bilder der Software behagen und sie
daraus dir genehme 3d Punktwolken ausrechnen kann ist
mir aber nicht bekannt.

Autor: Fabian S. (jacky2k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich will ja eben gerade keine Punktwolken! Ich will eine Tabelle mit 
den Positionen der fünf (oder wie viel auch immer Objekte), die ich 
ausgewählt habe oder ähnliches.

Autor: Frank E. (Firma: Q3) (qualidat)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Man benötigt entweder Kamera + Entfernung oder 2x Kamera, anders kommt 
man nicht an die notwendigen 3 Koordinaten.

Theoretisch könnte man - bei bekannter Objektgröße - die perspektivische 
Verkleinerung der Objekte zur Entfernungsbestimmung verwenden, meist 
reicht aber in dieser Achse dafür die Kameraauflösung nicht für eine 
halbwegs ausreichende Genauigkeit.

Autor: Fabian S. (jacky2k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Joa, ich wollte halt nur eine Kamera nehmen und mehrere Bilder machen. 
Wie gesagt, dass das möglich ist, ist mir klar. Ich suche eigentlich 
eine fertige Software.

Ich habe allerdings inzwischen herausgefunden, dass man mit ImageMagick 
(bzw. dem command line tool convert) automatisch eine Linsenkorrektur 
vornehmen lassen kann (natürlich nur von Objektiven, die in der 
Datenbank sind - also insb. DSLRs oder ähnlich). Somit sollte es ja 
möglich sein, von einem Pixel direkt auf zwei Winkel zu schließen. Somit 
bleibt man mit einem Haufen Winkeln der Objekte zueinander aus 
verschiedenen Blinkrichtungen. Das kann man sicher in ein wie auch immer 
geartetes Gleichungssystem werfen und einen geeigneten Optimizer drauf 
werfen, um auf die gewünschten Ergebnisse zu kommen. In der Theorie 
alles nicht schwer - aber das in schön mit Gui etc. zu bauen dürfte 
sicher ein paar Wochen in Anspruch nehmen, wo ich momentan keine Zeit 
für habe.

Autor: LinuxUser (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

Blender (Stichwort "Motion Tracking") sollte das können,
erfordert aber etwa Einarbeitungszeit.

MfG

Autor: Fabian S. (jacky2k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich nehme mal an dass ich dann ein Video machen müsste?
Und du bist sicher dass er mir dann irgendwie auch Koordinaten raus 
werfen kann?

Autor: Sly_marbo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich glaub das was du suchst ist Labview - Vision assistant. Aber auch 
das kostet etwas einarbeitungszeit (und auch etwas Geld). Das ist nicht 
so Simpel was du da suchst.

Autor: Fabian S. (jacky2k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja gut, das erkennt die Punkte dann natürlich direkt automatisch. Das 
muss ja garnicht unbedingt sein. Bei 10 Bildern oder so kann man die 
auch noch manuell anklicken.

Autor: Patrick C. (pcrom)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schon versucht mit Sketchup ? Wenn ich mich gut erinnene kann man 
mehrere fotos als flachen eingeben und punkten einfach im 3d zeichnen. 
Und es hat einen script-language dabei

Weiszz nicht ob dasd fuer deine anwendung genuegt

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.