für eine 3D-Sicht überlege ich, das Videosignal zweier identischer billiger CMos- oder CCD-Kameras auszuwerten.
Frage: (Wie) ist es möglich, das Videosignal beider Kameras pixelgenau zu synchronisieren (so daß man z.B. mit zwei 4 Bit A/D-Wandlern je ein Pixel beider Signale in ein Byte speichern kann und nicht zwei ganze Zeilen oder gar zwei ganze Bilder aufzeichnen muss um diese synchronisieren zu können).
Reicht es, einfach eine gemeinsame Versorgsspannung zu verwenden und gleichzeitig einzuschalten, oder laufen die Cams dann zu schnell auseinander?
Sie werden nie synchron laufen. Du müsstest schon aus der einen Kamera den Quarz ausbauen und die über einen VCO mit PLL aus den Synchronsignalen der anderen Kamera laufen lassen.
kannst Du nicht eine Kamera mit externer Taktquelle nehmen? also keine billige PAL oder NTSC, sondern ein Modell für Embedded-Anwendungen, ähnlich der Gameboy-Cam? Dann kann Dein Controller/PC, ... den Pixeltakt vorgeben und auch sagen, wann wieder zu Pixel 1 gesprungen wird.
Die Gameboy-Cam (M64282F Chip) hat leider nur 128x128 Bildpunkte, kann das ansonsten, mit analogem Graustufen-Ausgang. Mitsubishi hatte aber auch Nachfolgemodelle mit höheren Auflösungen.
Das Stichwort unter dem man bei dem Hersteller diese Kamera-Chips vertreibt oder vertrieben hat, lautet: "Artificial Retina LSI"
Vielleicht hat jemand aktuelle Infos, zu vergleichbaren Kameras und Bezugsquellen für komplette Module mit Optik.
Tjaaa, ich fürchte die kriegt man als Privatmann nicht für ein paar Euro fuffzig von den üblichen Versendern, ansonsten wäre ich digitalen Modellen natürlich nicht abgeneigt :-)
rechne es doch einfach selber aus wie schnell die auseinander laufen,=20 pro Quarz ein Fehler von +- 50 ppm. Ausserdem machen die nat=FCrlich das Reset beim Einschalten nicht exakt=20 gleichlang, das Anschwingen der Quarze ist auch nicht exakt gleich.
Was Du brauchst sind Kameras die mit einem Takt von aussen=20 synchronisiert werden k=F6nnen, extern synchronisierbar nennt man das:
Quarz der einen Kamera ablöten und Eingangspin mit dem Ausgangspin der anderen Kamera verbinden, eventuell einen Schmitttriger dazwischen oder noch besser mit dem Schmitttriger und dem Quarz einen Oszi aufbauen und an beide Kameras führen.
Sorry, das ist schlicht falsch. Ohne synchronisierte Kameras wirst Du nie eine brauchbare 3D-Ansicht bekommen.
Hint: überlege Dir was passiert, wenn Du bewegte Objekte hast und dann versuchst Bilder zB bei Zeitpunkt t und t + 10ms mit einem Stereo-Matcher zu verarbeiten.
Eine Synchronisation des Pixel-Taktes ist i.A. nicht notwendig. Für gewöhnlich ist es ausreichend, die Cams zu Beginn jedes Frames zu synchronisieren (Stichwort: externer Trigger).
Für eine wirklich gute 3D Ansicht müssen die Rohbilder zuerst mal komplett eingelesen und danach rektifiziert werden (herausrechnen der Linsenverzerrungen, Transformation der Bilder in eine gemeinsame Ebene) bevor man sie an den Stereo-Matcher übergibt. Das braucht dann allerdings schon einiges an Speicher und Rechenleistung...
Das ist eine der Grundvoraussetzungen, damit Stereo Vision auch bei bewegten Objekten/Szenen funktioniert. So lange keinerlei Bewegung vorhanden ist, klappt's auch ohne Synchronisation (dieser Fall dürfte aber in der Praxis iA in die Kategorie "esoterischer Spezialfall" einzuordnen sein).
Hier mal ein kurzer Crash Kurs in Stereo Vision:
Üblicherweise hast Du 2 Kameras (oder auch zB Deine Augen), die in X-Richtung gegeneinander verschoben sind. Beide Kameras nehmen leicht unterschiedliche Bilder auf. Beim rechten Bild sind die Objekte etwas nach links verschoben, und zwar umso stärker je näher das Objekt bei der Kamera sind. Das nennt sich "Disparität" und kann zur Bestimmung des Z-Abstandes ausgenutzt werden:
Man nimmt zu einem Zeitpunkt t mit beiden Kameras je ein Bild auf und vergleicht einfach wie groß die Disparität ist (genauer gesagt: man bestimmt die Disparität jedes einzelnen Bildpunktes).
Wenn die Kameras nun nicht synchronisiert sind und sich das Objekt bewegt, so repräsentieren die beiden Bilder nicht mehr die Momentaufnahme der Position des Objekts sondern zwei unterschiedliche Aufnahmen des Objektes an verschiedenen Positionen. Im schlimmsten Fall heißt das: in einer Aufnahme ist das Objekt vorhanden, in der zweiten Aufnahme ist es schon längst aus dem Blickfeld der Kamera verschwunden. Nun versuche mal, die Disparität zu bestimmen :-)
Es ist übrigens egal, in welche Richtung sich das Objekt bewegt (X/Y/Z) oder ob es auch noch eine Rotationsbewegung macht, die Auswirkungen auf die Berechnung sind in jedem Fall katastrophal.
Neben dem bewegt-Videofall würde es mich vor allem bei der Verwendung mit einem Microcontroller interessieren, der nicht genug Speicher hat um ein ganzes Bild zu speichern.
Will ich also Zeile N Links mit Zeile N Rechts vergleichen, müsste ich eine Zeile aufzeichnen, bis zu 1/25 sek warten bis auf der anderen Cam gerade die gleiche Zeile vorbeiläuft, aufzeichnen, vergleichen. Und 25 Zeilen pro Sekunde sind dann doch ein bissl lahmer als erhofft :-)
Ah - jetzt - ja. Ich dachte an einen leistungsfähigen PC, der die Bilder mal eben in Echtzzeit zwischenspeichern und notfalls aufbereitet ind Echtzeit wieder ausgeben kann. :-)
Ich dachte, du willst das "nur" mit zwei Monitoren oder Doppelbildbrille, oder als Doppelbild für diesen Schielblick darstellen. Oder wechselseitig mit Shutterbrille oder so etwas. Dann hätte ich es für egal gehalten, ob das eine Bild nun ein paar ms verzögert ist oder nicht.
Ich habe das Gefühl, du hast dir da echt was vorgenommen, wenn du das auch noch zeilenweise mit einem Mikrocontroller vergleichen willst. :-)
Vielleicht mal an den OP, der sich mit Stereo-Vision auskennt: Wie reagiert denn eigentlich unser Gehirn darauf, wenn das Videosignal für das zweite Auge ein wenig verzögert wird? Kommt es da zu den gleichen Fehleinschätzungen?! Oder arbeitet da unser Gehirn ganz anders?
Ich kenne mich in keinster Weise mit Stereo-Vision aus :-D
Also wenn du von einer Stereo-Brille redest, wo ein Video ein paar komplette Bilder hinterherlaggt... ich denke, erst mal siehts schief aus bis man sich dran gewöhnt hat.
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.