![]() |
![]() |
|
![]() |
![]() |
|
Programmierung Rat & Tat für Programmierer |
![]() |
|
Themen-Optionen | Ansicht |
![]() |
#1 |
Veteran
![]() |
![]() hallo zusammen!
habe folgendes Problem: ein freund und ich machen einen Verschubbahnhof als Projekt..das heisst eher die Steuerung, und...wir möchten das ganze auch mit so ner art videoüberwachung machen...allerdings sind unsere Algorithmen für die Objekterkennung derartig langsam, das es uns nix bringt! hat irgendwer vielleicht ne ahnung, nen grundgedanken, ne idee, ein beispielprogramm oder sonst was, wie wir aus einem Bild ein objekt herausfiltern können. wäre sehr dankbar für Alles....mag es auch noch so ein primitiver gedanke sein! wir haben auch schon probiert das bild in einzelne segemente zu zerlegen und dann zu analysieren...allerdings dauert das zu langsam also wenn irgendjemand ne idee hätte...wie man in VB sowas zustande bringen könnte..möge er bitte schreiben dankeschön im vorraus |
![]() |
![]() |
![]() |
#2 |
Veteran
![]() Registriert seit: 10.01.2001
Beiträge: 478
|
![]() Soweit ich weiss wird bei industrieller Objekterkennung mit Graustufenbildern gearbeitet. Die werden dann durch einen Algorithmus zur Kantenerkennung gejagt und zum Schluss kann man das Bild noch auf schwarz/weiss reduzieren.
Ich habe ein kleines Beispiel angehängt für das ich die Bilder der Einfachkeit halber mit IrfanView bearbeitet habe. Das Umwandeln auf Schwarz/Weiss ist aber bei einem Bitmap kein Problem und für die Kantenerkennung ließe sich bestimmt auch ein freier Algorithmus finden. Ich denke man sieht sehr schön worauf die Sache hinausläuft. Das ganze Bild reduziert sich auf ein paar Linien. Wenn man jetzt das dritte Bild mit dem ersten Bild vergleicht, kann man Bereiche im dritten Bild herausfinden die sehr klare, für ein Objekt dieser Art eindeutige, Linien haben (z.B. Handlauf an der Tür; die Fenster; Räder; ...). Man muss dann nur mehr eine einfache Art von Vektorisierung über diese Bereiche laufen lassen. Die Vektorisierung muss nicht exakt sein. Sie muss nur bei gleichem Input immer ziemlich das gleiche Ergebnis bringen. Diese Vektorisierung lässt man dann einmal über die Identifikationsbereiche laufen und speichert das Ergebnis. Im Betrieb muss man dann nur mehr die Identifikationsbereiche durch den Kantenerkennungs-Algorithmus laufen lassen, auf schwarz/weiss reduzieren, vektorisieren und vergleichen. Mit einem durchschnittlichen Rechner sollten sich so auf jeden Fall ein bis zwei Vergleiche pro Sekunde durchführen lassen. Happig wird's erst wieder wenn viele verschiedene Objekte erkannt werden sollen. Dann multipliziert sich natürlich der Aufwand und die Sache wird zwangsläufig wieder lahm. Have fun ![]() |
![]() |
![]() |
![]() |
#3 |
Veteran
![]() |
![]() dankeschön
![]() ich glaub du hast mir und meinem kollegen sehr weitergeholfen |
![]() |
![]() |
![]() |
#4 |
Veteran
![]() Registriert seit: 10.01.2001
Beiträge: 478
|
![]() Bin durch Zufall über folgenden Link gestossen:
device independant bitmap processing functions Ich habe mir die Sache selbst nicht angesehen aber die Quelle ist normalerweise sehr gut. |
![]() |
![]() |
![]() |
#5 |
Master
![]() Registriert seit: 18.05.2000
Beiträge: 556
|
![]() Auf dieser Seite
http://www.activevb.de/rubriken/auss...erkennung.html geht es um eine Objekterkennung (zwar nur Rechtecke, aber sollte eigentlich auch auf dein Projekt umsetzbar sein) .. Sourcecode gibts zwar noch keinen, aber am 15.3 is Einsendeschluss, und danach werden die besten Lösungen freigegeben. Grüsse, MasterX |
![]() |
![]() |
![]() |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
|
|