Kleiner Tipp
www.Roborealm.com
Grüß´le
Hallo,
Mich würde mal das Thema Bildverstehen etc. interessieren. Hat jemand von euch damit Erfahrung, Tipps oder ähnliches. Soweit ich das abschätzen konnte bis jetzt scheint das ja mehr als kompliziert zu sein.
Mein Ziel wäre es, ein Bilddaten in echtzeit (Kamera) zu klassifizieren und somit einen Roboter zu navigieren.
Der zweite Punkt wäre Stereoskopie (2 Kameras) um die räumlichen Abstände zu messen.
Und schließlich noch die Navigation, damit der Roboter "weiß" wo er sich im Terrain befindet.
Bin für jeden Tipp in diese Richtung dankbar, woher ich weitere Infos bekomme und wie man so etwas macht.
Kleiner Tipp
www.Roborealm.com
Grüß´le
@Robotniks: Danke, guter Tipp.
Sonst noch weitere Tipps/Infos? Denke meine Probleme werden etwas komplexer werden...
Hat schon jemand damit Erfahrungen?
"A robot with guns for arms shooting a plane made out of guns that fires guns" - Nelson Muntz
Einfach ist es ganz bestimmt nicht, aber manche beissen sich prächtig durch dabe:
https://www.roboternetz.de/phpBB2/ze...=321651#321651
Ciao sagt der JoeamBerg
Hallo,
einfach ist das leider nicht.
Trotzdem kannst du so einfach mglich urgendwo nfangen!
Ist schon ein par Jahren herr, habe dammals was d'uber nachtgedaht und einige Algorimten ausgedacht. Wichtigste ist, wie swher es aus wrden soll, versug es zu einfach wie moglich das Probleem an zu schauen und in kleine Teilen von zu schnitten.
Was ich slebst mache ist von ein Webcam einen Bild aus zu schnitten und zu speigern Bitmap. Es gibt im netz viele .DLL die integriert worden konnen in Delphi oder anliches. Mit Delphi kanst du einfach ein Bitmap
(vor)bearbeiten, FarbPegel, Unterschiedlichen Farben usw.
Nachher kommt die Algoritmes.
Hangt auch davon ab wie mit welchen Takt du z.B. dein Robot in eine Raum orientiren willst usw usw....
Ein bestimmten Algoritmes gibt es nicht so fertif so weit ich weis, baer du kannst dich mall vorstellen: wen in ein Raum verschidene helle LED's positioneert worden sind, kann mann die einfach in einen Bitmap erkennen, und mit wenig mathe und Fantasie, kommt maan sehr Weit.
Leiter bin ich noch nicht so Weit um mich damit zu beschaftigen. Zum erst
https://www.roboternetz.de/phpBB2/vi...r=asc&start=22
fertigen. Komm uberigens auch ein Webcam dr'auf mit ObjektErkannung aber kein Position-Im_Raum-Erkannung.
Viel Erfolg. Marcel
\/ To DIY or not to DIY
www.europakade.nl
Bedenke, daß du massenhaft Rechenleistung benötigst, um derartige Dinge in Echtzeit berechnen zu können!
Dein zweiter Vorschlag z.B. (3D-Daten mit 2 Kameras gewinnen) erfordert einige recht aufwändige Berechnungen, denn du musst zunächst eines der Bilder in viele kleine Segmente aufteilen, und dann jedes dieser Segmente auf dem zweiten Bild suchen (Korrelation). Damit erhälst du für jedes Segment den Versatz in X-Richtung. Dann benötigst du noch Informationen zur Orientierung der Kameras zueinander, sowie zu den verwendeten Objektiven (im wesentlichen ist hier die Brennweite von Bedeutung).
Wenn du das alles hast, kannst du mittels der in diesem Artikel angegebenen Formel die XYZ-Koordinaten der Segmente ausrechnen (und damit letztendlich auch den Abstand in Metern vom Roboter zu den sichtbaren Objekten).
Das schafft weder ein AVR, noch ein ARM, noch irgendein anderer mir bekannter Mikrocontroller in Echtzeit (mit einem FPGA könnte es klappen), und selbst ein PC könnte Probleme damit haben, wenn die Auflösung zu groß ist.
So viele Treppen und so wenig Zeit!
Genau das habe ich grad in Matlab programmiert. Bei einem 1000x1000px Bildpaar, das in ca 240 Segmente aufgeteilt wird (+50% Overlap) dauert die Analyse ca. 1 Minute pro Paar mit FFT auf einem PC....denn du musst zunächst eines der Bilder in viele kleine Segmente aufteilen, und dann jedes dieser Segmente auf dem zweiten Bild suchen (Korrelation).
Also:
Bedenke, daß du massenhaft Rechenleistung benötigst, um derartige Dinge in Echtzeit berechnen zu können!
Viele Grüße, William
-> http://william.thielicke.org/
Hi,
das hort sich ales gut an! Man vorsclga vor mein eigenes (zukunftiges) project war, erst mall das Bild zu vorbeartbeiten, z.B. augenommes Bild zumerst mall in sehr wenig Farbpegel umzusetzen. Und dan nicht jeder Pixel zu 'scannen' aber nur mit ein raster z.B. jeder 5. Pixel in die X und Y Richting (muss sicher sein das die Auflusing reigt etc etc.) Wen nachdem Die Brauchbare Pixel ausotiert sind (in diesem Fall 1 aus 5x5 pixe;l sind gewahlt worden) und davon sind einigen weitersortieert worden nach FarbPegel. So bekommt man ein Bild (nen Bild2) mit niederig Losung.
Wenn da aus wieder was gefoiltert wer, kann man wieder weitergehn.
Kann es leider nicht so in Detai erklaren. Wenn aber z.B. verschiede Pixel aus Bild 2 neben einander zelben Pegel haben (im einfachsten Fall ist ein Zwarch-Weis Bild gemacht) kan man in den Ort weiter unde mehr detaiert suchen. Usw...
Heist das jeden Schritt abghanoig ist von einander.
* Farbpegel nach verschieden Werten runterbrignen biss zum Zwarsch-Weis kan das. Die Pegel konnen Linear Logaritmisch usw. verteild werden.
* Wie viel dass Pixel runter geht must mann auch probieren. Vieleicht sind Horizontal und Vertical unterschidelich.
* Das eigentilcihe Algoritmes kann man auch vile wegen auf, und ist abhangig von vorigen Schritten.
In meinen Fall wurde ich dan zu rund experimentieren bis alles gut zusammen hangt. Etwas minder swerig wird es wan Man weis was zu ducrschnitlichh im Raum vorkommm an Objektgorsse un Farben usw usw.
Auch wenn da wegen das "lauf des algorimtes' fruh was raus kommt, und es kann gebraucht worden, kann man den Algotimes abbrechen usw usw.
Marcel
\/ To DIY or not to DIY
www.europakade.nl
Denke leider auch, das das alles ziemlich rechenintensiv wird. Jedoch bennötige ich normalerweise keine so hohen auflösungen von 1000px.
Experimentiere gerade ein wenig mit roborealm.
Lesezeichen