Also Mustererkennung am PC würd ich mit Neuronalen Netzen machen, das geht ziemlich fix. Inwieweit man das auf nen uC runterskaliert bekommt (also wieweit der das in einigermaßen echtzeit berechnen kann) ist die andere Frage...
Hallo!
Sicher haben einige von Euch den POB-EYE-Roboter auf www.roboter-teile.de und einige Videos vom ihm gesehen. Gerade bin ich dabei, einen ähnlichen Roboter auch mit der Kamera C8088 und einem LPC2214 (ARM mit 60MHz) nachzubauen. Nur weiss ich irgendwie nicht so genau, wie das Suchen nach Mustern grundsätzlich funktioniert. Im Netz find ich immer nur Sachen wie Kantenerkennung, Unschärfeausgleich usw. Also immer nach dem Prinzip altes Bild->Bearbeitung->neues Bild, aber nie altes Bild->Bearbeitung->Vektoren. Wie kann man denn z.b. irgendwie nach einem Dreieck suchen? Mit einer Matriz, die man drüberschiebt und wo bestimmte Werte auftauchen das sind dann die Ecken oder ganz anders? Ich Suche aber keine fertigen Funktionen sondern eher Verfahren.
MfG Mark
Also Mustererkennung am PC würd ich mit Neuronalen Netzen machen, das geht ziemlich fix. Inwieweit man das auf nen uC runterskaliert bekommt (also wieweit der das in einigermaßen echtzeit berechnen kann) ist die andere Frage...
Hallo plusminus,
was meinst Du mit Neuronalen Netzen?
MfG Mark
Ich hab da auch Quellcode bei PSC vor ner ganzen Weile hochgeladen...
http://www.planet-source-code.com/vb...258&lngWid=-10
Bzw in den News auf meine [www]-Page bissel runterscrollen, da ist noch ne neuere Version.
Hallo!
@plusminus:
Jetzt habe ich zumindest kapiert, wie man mit dem "%-Verfahren" einfache Muster erkennen. Nur wie isoliert man jetzt die einzelnen Objekte von dem Rest des Bildes, um diese dann zu prüfen? Mit Sobel die Kanten erkennen und dann nach Linien suchen, die immer wieder den gleichen Punkt passieren?
@stochri:
Ich habe mir die beiden Artikel durchgelesen, aber nicht so ganz kapiert(besonders das mit KNN). Kennst Du vllt einen Artikel, wo das so geschrieben ist, dass es auch ein 15-jähriger verstehen kann?
Oder ist das Thema generell zu komplex, sodass ich damit erst in ein paar Jahren weitermachen sollte?
MfG Mark
wenn du mit dem Sobel-Operator die kanten herausfilterst, dann bist du schonmal einen großen Schritt näher zur mini-Objekt-Erkennung gekommen.
Sagen wir mal Kreise und Quadrate.
Das tolle an Neuronalen Netzen ist ja, dass die Input-Werte nur grob stimmen müssen, wie du auch auf dem PSC-Link gesehen haben wirst.
Du selbst erkennst ja auch einen Ball, der schon gut etwas an Luft verloren hat.
Du übergibst quasi einfach ein BitMuster und hinten kommt raus, was es mit welcher Wahrscheinlichkeit war.
Das Problem wäre nurnoch aus dem Bild einzelne Bereiche herauszusuchen, in denen zusammenhängende kanten vorkommen. Diese Bereiche übergibst du an das NN udn tadaaa die kanten sehen so aus wie ein Kreis!
Ich sag nur Learning by doing Alles ist machbar !
Jaja, nur wie? So eine Art virtuelle Linienverfolgung machen und immer gucken, ob man an dem Punkt schon mal war?Das Problem wäre nurnoch aus dem Bild einzelne Bereiche herauszusuchen, in denen zusammenhängende kanten vorkommen
MfG Mark
Hm, wenn dus bis zu diesem Bild geschafft hast
Bild hier
, dann bräuchtest du nur noch nen such-algo, der die Gewichtung der weißen punkte errechnet...
Aus dem Stand fällt mir da nichts fertiges ein...
Müsste man mal suchen...
Eine sehr gute Idee eigentlich. Insbesondere wenn ich weiß, dass das Dreick schwarz auf einem weißen Blatt gezeichnet ist, dann kann ich ja das Bild nach den "stärksten" Kanten filtern. Dann bleiben da nur noch wenige weiße Punkte übrig, womit das noch etwas vereinfacht wird.Zitat von plusminus
Danke für die Idee!
MfG Mark
Lesezeichen