- SF800 Solar Speicher Tutorial         
Ergebnis 71 bis 80 von 91

Thema: Vision-Erkennung bei Bestückungsautomaten

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #34
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    07.05.2007
    Beiträge
    170
    Wie weit bin ich? Puuh, die Frage lässt sich gerade nicht so leicht beantworten. Momentan kämpfe ich um die Integration von OpenCv und OpenGL in ein Qt Programm. Von einer Bildbearbeitung geschweige denn Erkennung von Bauteilefeatures bin ich noch weit entfernt. Parallel dazu versuche ich LEDs für einen Blitz auf eine Platine zu bringen und ein Arduino Programm zu schreiben dass das mit der Beleuchtung klappt. Die LEDs werden heftig übersteuert um genug Licht für ein paar Milisekunden zu produzieren damit die Kamera es hell genug für saubere Bilder hat. LED Typ ist dieser hier: http://de.farnell.com/osram/lr-t67f-...rot/dp/2113954 Um die Stromversorgung muss ich mir noch Gedanken machen. Eigentlich möchte ich die LEDs stromgesteuert betreiben aber wie ich die LEDs parallel schalte ohne eine zu zerstören ist mir noch nicht bewusst. Vielleicht ist es sinnvoller LED Stränge zu bilden und diese dann parallel zu schalten.

    Erst einmal ist es wichtig, die Kamera zu kalibrieren. Das wird der erste Schritt sein sobald ich die Klasse für meine Kamera fertig habe. Ausgangspunkt ist dieses Kapitel das du dir durchlesen kannst: http://docs.opencv.org/doc/tutorials...libration.html

    Damit ist es dann möglich Pixelkoordinaten in reale Maße umzurechnen und ein Koordinatensystem aufzubauen.Zur Detektion selbst: Das Bild kommt als Farbbild bei mir an und muss erst einmal in ein Graustufenbild umgewandelt werden. Dazu werden alle drei 8bit Kanäle summiert, der Alpha Kanal weggeworfen weil er nicht benötigt wird. Dann wird der Mittelwert gebildet. Im Endeffekt ist es die Summe der Kanäle durch Kanalanzahl: (B+G+R)/N(BGR).

    Damit haben wir ein Graustufenbild mit welchem wir dann eine Kantendetektion machen können. Hierfür gibt es den Sobel Operator:http://de.wikipedia.org/wiki/Sobel-Operator Alternativ kann man auch diese Funktion hier nehmen - http://docs.opencv.org/modules/imgpr...eaturestotrack . Was besser funktioniert muss noch ausgetestet werden.

    Wenn die Kanten detektiert bzw gehighlighted sind werden Punkte herausgesucht anhand derer Linien um die Kanten des Bauteils gezeichnet werden können. Dadurch entsteht ein Rechteck dessen Mitte wir bestimmen können. Ab dem Punkt arbeiten wir nur noch mit Vektoren im kartesischen Koordinatensystem. Mit dem Mittelpunkt können wir den Versatz zum Ursprung (Bildmitte) berechnen und diesen in die Pfadplanung für die Bewegung der Maschine einplanen oder im Testaufbau ins Maschinenkoordinatensystem umrechnen, damit dann die Ausrichtung korrigieren und mit einem zweiten Bild überprüfen ob die Berechnungen korrekt waren. Dafür werden allerdings schon Motoren und so weiter benötigt. Die kommen erst Mitte/Ende des Urlaubs, werden also frühestens Ende März fertig gebaut sein.

    In den folgenden Tagen versuche ich noch ein paar gute Bilder mit verschiedener Beleuchtung und ohne Parallaxenfehler zu machen um ein paar Trockenläufe testen zu können. Die Bildquelle ist dann direkt ein JPEG Bild. Welcher Weg gegangen werden soll ist mir noch nicht wirklich klar, da ich mit Bildverarbeitung bis jetzt absolut nichts praktisches gemacht habe und somit auch keine Erfahrung habe. Zudem birgt OpenCV noch einige Geheimnisse die entschlüsselt werden wollen (Welche Funktionen gibt es, was tun sie im Detail, etc). Dafür habe ich mir ein Buch gekauft das in ein paar Tagen hoffentlich ankommt.
    Geändert von einballimwas (30.01.2015 um 10:05 Uhr) Grund: Links gefixt

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

12V Akku bauen