Das USB ist ja nicht das größte Problem, sondern vielmehr
das Datenprotokoll der Kamera.
War nur ein Vorschlag, wie gesagt, ich hab nicht viel Ahnung von USB.
Das USB ist ja nicht das größte Problem, sondern vielmehr
das Datenprotokoll der Kamera.
Ich hab mal ein bischen gegoogelt und z. B. das hier gefunden: http://webcam.sourceforge.net/
Ich bin kein studierter Mausschubser, aber ich denke anhand von den source codes der treiber sollte sich doch das Datenprotokoll ableiten lassen, oder stell ich mir das zu einfach vor?
Wolfgang
Hier noch was bzgl. WLAN und USB:
http://orinoco-usb.alioth.debian.org/#protocol
http://orinoco-usb.alioth.debian.org/doc/NOTES.txt
Hallo
Es gibt eine Windows SDK für die Logitech Quickcam. Leider funktioniert sie nicht 100%, ein paar Funktionen gehen einfach nicht.
Ich habe damit ein paar Experimente zu Stereosehen gemacht, wobei die Kamera zwischen den zwei Aufnahmen seitlich verschoben wurde.
Mit Hilfe eines Diaprojektors habe ich strukturiertes Licht auf den Sichtbereich der Kamera projeziert. Man kann die beiden Bilder dann korrelieren. Diese Korrelation ist aber ziemlich aufwendig, so daß selbst das einfachste Verfahren bei 640x480 Pixeln 1-3 s auf einem 1.7GHz Celeron benötigt. Dabei kommt dann aber auch erst mal nur ein Graustufenbild heraus, bei dem jedes Pixel einer Entfernung entspricht.
Deshalb mein Tip: Für Bildverarbeitung immer ein Laptop oder PC verwenden, dann erledigt sich auch die Anschlussfrage über USB.
Man könnte ja auch eine Funkkamera nehmen, den Empfänger am PC anschließen und über WLAN den "dummen" Robi steuern.
Gruß
Andreas
Prima Leistung, wie sieht es mit einem 64x48 Bild aus, das geht dann in 16ms, oder ein 16x12 Bild in 1ms?Diese Korrelation ist aber ziemlich aufwendig, so daß selbst das einfachste Verfahren bei 640x480 Pixeln 1-3 s auf einem 1.7GHz Celeron benötigt.
Für ein erstes Abstandsbild würde ich gerne eine geringere Auflösung in Kauf nehmen.
Dann käme der Controller wieder in Spiel, um die Zeit bis das Bild gebraucht wird sinnvoll zu nutzen.
Manfred
Hallo Manfred
Das Problemist, daß bei diesem Verfahren dann auch die Auflösung der Entfernungsmessung entsprechend geringer wird.
Ich habe mit Pixelverschiebungen von bis zu 64 gearbeitet. Außerdem kann man noch ein bischen Interpolieren, so daß man dann auf vielleicht 100-250 diskrete Abstandswerte kommt. Viel genauer geht es dann aber mit diesem Verfahren nicht mehr. Außerdem gibt es Ränder links und rechts, die nicht ausgewertet werden können.
OK. Es gibt aber noch andere Verfahren: Z.B. einen Strichlaser auf den Sichtbereich der Kamera projezieren und die Verschiebung des Strichs auswerten. Das geht wesentlich schneller. Man erhält dann aber auch nur ein "Radarbild" der Begrenzungen im Sichtbereich, statt ein 3-D-Bild.
Für viele Anwendungen ist das aber völlig ausreichend.
Trotzdem: Wer schnell Erfolg haben will, sollte einen PC nutzen. Was noch dazu kommt: Logitech-Kameras haben eine JPEG/MPEG-Schnittstelle, erst im PC werden die Bilder wieder zu Bitmaps. Auch das kostet Rechenzeit.
Man muß das ganze ja graphisch darstellen können.
Deshalb: Grundlagenforschung am PC, wenn man dann die richtigen Algorithmen kombiniert hat, auf den Roboter übertragen.
Gruß
Andreas
Hi,
ich beschäftige mich auch gerade damit wie ich die entfernung mit einer CCD Kamera messen kann. Das system "A Real-time Laser Range Finding Vision System" finde ich sehr gut nur finde ich die Art wie sie es gelöst haben sehr altmodisch.
Mein vorschlag also.
CCD -> SAA71XX -> CPLD -> CPU
CCD Kamera da sie sehr lichtempfindlich sind
SAA71XX Video Decoder habe mich noch nicht wirklich entschieden
CPLD da er sehr schnell Bildpunkte vergleichen könnte
CPU werde ich wohl einen Atmega 128 nehmen da ich ihn gut kenne
Die Kamera gibt ein video signal zum SAA71XX die digitalen Daten werden vom CPLD ausgewertet also wo sich der laser befindet. Die CPU braucht dann nur noch den Abstand berechnen.
hört sich gut an.
gruß
patrick
Wie wäre es denn mit einem solchen Chip? Hab keine Ahnung wie man sowas nutzt aber den gibt es eben, um USB-Hosts zu basteln.
http://www.semiconductors.philips.co...ISP1161A1.html
Lesezeichen