Computerhilfen.de Logo
Forum
Tipps
News
Frage stellen

Bilderkennung

Hallo,

Welche Programmiersprache ist am besten geeignet (und habt ihr dazu Tipps?), um ein Programm zu  schreiben, welches an festgelegten Koordinaten auf dem Bildschirm Bilder erkennt und sie mit einer Datenbank aus etwa 130 Bildern vergleicht und entscheidet, um welches Bild es sich handelt? Das Programm soll keine Webcambilder o. Ä. Interpretieren, sondern wirklich nur vergleichen und entscheiden.
Betriebssystem: Windows 7


Antworten zu Bilderkennung:

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Für sowas würde ich C++ nehmen, aber sowas zu realisieren ist nicht eifnach und erfordert jahrelange Übung mit der Sprache...

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

 

Zitat
Das Programm soll keine Webcambilder o. Ä. Interpretieren, sondern wirklich nur vergleichen und entscheiden.
 
Na, wenn das so ist und das Progrämmchen nicht mehr können soll: dann fehlt Dir nur ein fetter  6-stelliger Betrag für die Gehälter eines Teams aus 5 - 6 versierten Programmierern und min. 6 Monate Geduld und Du hast die Software.

Wie aufwendig das ganze ist zu realisieren, kann ich nicht genau sagen, aber ich denke ist ist schon mit weniger als einem fetten 6-stelligen Betrag möglich. :)

Umsetzen kann man das ganze mit verschiedenen Programmiersprachen. Schau doch mal in den Online Kurs "Machine Learning" von Coursera.org. Dort wird Octave bzw. Matlab als Programmiersprache benutzt. In einer Hausaufgaben ist z.B. eine Zahlenerkennung zu implementieren, was deinem Problem schon realtiv nahe kommt.

Viel Glück!

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

 

Zitat
. In einer Hausaufgaben ist z.B. eine Zahlenerkennung zu implementieren, was deinem Problem schon realtiv nahe kommt.
Ja. In etwa so nahe, wie der Blick vom Eiffelturm auf die Freiheitsstatue in New York.

 
Zitat
Wie aufwendig das ganze ist zu realisieren, kann ich nicht genau sagen,
Aha.

Damit wäre dann dieser

 
Zitat
aber ich denke ist ist schon mit weniger als einem fetten 6-stelligen Betrag möglich.

Nachsatz ad absurdum geführt... ;D

 

 

Zitat
Ja. In etwa so nahe, wie der Blick vom Eiffelturm auf die Freiheitsstatue in New York.

Hm...Kann ich jetzt nicht so ganz nachvollziehen. Ich weiß nicht ob du dir das Beispiel auf Coursera angesehen hast. Dort liegen die einzelnen Zahlen, bzw. genauer gesagt eigentlich Ziffern, als Bilddaten vor. Diese könnten z.B. von einem Überweisungsschein stammen o.ä.; überall dort wo halt Ziffernerkennung eingesetzt wird.  Die einzelnen Bilddaten werden dann dahingehend untersucht um welche Ziffer es sich handelt. Nach meinem Verständnis möchte der Thread-Ersteller ein ähnliches Problem lösen. Er möchte Ausschnitte aus Desktop-Screenshots mit Bildern aus einer Datenbank vergleichen. Es handelt sich also ebenfalls hier um eine Bilderkennung wie bei der Ziffernerkennung.

Vielleicht etwas ausführlicher was mir dazu spontan einfallen würde...wie bei der Ziffernerkennung auf Coursera würde ich es vielleicht zunächst als Klassifizierungsproblem ansehen (mit einem Klassifikationsalgorithmus wie z.B. logistic regression oder SVMs). Häufig ist hiermit aber nur eine binäre Klassifikation möglich. In dem Fall müsste man eine one-vs-all Strategie anwenden. Wenn sehr viele Klassen (also Bilder in der Datenbank) vorhanden sind, könnte es vielleicht hier vielleicht zu Problemen kommen. Eventuell wäre neuronale Netze dann besser. Könnte aber auch komplex werden. Ein anderer (und vielleicht auch besserer) Ansatz wäre der Einsatz einer PCA (dann aber mit eigenfaces statt eigenvectors) zur Bilderkennung. Ich habe die PCA bisher aber lediglich zur Datenkompression und nicht zur Bilderkennung eingesetzt. Daher kann ich dazu nicht so viel sagen. Ansonsten einfach mal googlen. Zum Thema Bilderkennung findet man viele wissenschaftliche Paper, Tutorials oder Bücher (evtl. auch einige Videos oder Online-Kurse). Als Sprache würde ich R, Octave/Matlab oder Python verwenden, da diese viele Libraries/Packages bzgl. Machine Learning anbieten und auch bzgl. numerischer Berechnungen sich gut eignen. Andere Sprachen bieten das vielleicht auch an wie z.B. Java oder C++, aber da kenne ich mich nicht so aus und kann daher dazu nicht soviel sagen.

 
Zitat
Damit wäre dann dieser Nachsatz ad absurdum geführt...

Sehe ich nicht so. Ich meinte lediglich, dass ich nicht einschätzen kann welcher Aufwand der Thread-Ersteller zur Lösung seines Problems aufbringen müsste, da ich sein Problem im Detail nicht kenne (wie komplex das ganze ist) und welches Vorwissen der Tread-Ersteller hat. Jedoch denke ich nicht, dass man dazu ein ganzes Entwickler-Team benötigt, wie von dir geschildert.

Vielleicht liege ich aber auch falsch. Du scheinst dich mit dem Thema ja sehr gut auszukennen. Könntest du jedoch bitte auch erklären, warum du glaubst, dass das Problem nur mit sehr viel Aufwand möglich ist und welchen Lösungsansatz du hättest? Da mich der Bereich Machine Learning bzw. Pattern Recognition auch persönlich sehr interessiert, würde ich deine Meinung dazu gerne hören. :)

@PWT: Was ist los? Vielleicht hast du den Thread ja schon vergessen...also nochmal...deine Meinung dazu würde mich immer noch sehr interessieren!! :)


« Was sind assoziationen und aggregationen in der oop?problem mit countdown timer code »
 

Schnelle Hilfe: Hier nach ähnlichen Fragen und passenden Tipps suchen!

Fremdwörter? Erklärungen im Lexikon!
Internet-Zugriffsprogramm
Ein Internet-Zugriffsprogramm, auch Browser genannt, stellt Internetseiten für den Benutzer dar. Am bekanntesten ist der Microsoft Internet Explorer, gefolgt vom kos...

Programm
Siehe Software...

Bildschirmschoner
Der eigentliche Sinn des Bildschirmschoners ist, den Bildschirm vor dem Einbrennen des Monitorbildes zu schützen.Während das bei neueren Monitoren (außer ...