Bildauswetung - Wo kann man anfangen

hendr1k1

Ensign
Registriert
Aug. 2009
Beiträge
182
Es könnte sein, dass ich zu doof zum googlen bin.

Ich möchte gerne damit anfangen ein Bild/Video auszuwerten. Ich würde das gerne mit Java machen.

Ich habe keine Tutorials oder ähliches gefunden. Ich weiß, dass es viel mit Mathe zu tun hat, da man versuchen muss Muster zu erkennen.

Kennt vielleicht jemand Seiten mit Anleitungen oder hat sont Tipps für mich?

Cheers
 
Also Google für Idioten muss ich mir merken :-D

Ich drücke mal die Aussage, dass ich zu doof zum googlen sei anders aus, dass sie jeder versteht: Google hat mir hier nicht weiterholfen

Es geht mir ja darum, dass ich ein Tutorial oder ähnliches finde, in welchem Beispiele gezeigt und erklährt werden.

Hier ist Tkinter(Python) sehr ausführlich dargestellt - Sowas in der Art suche ich - muss nicht ganz so ausführlich sein.

Klar habe ich schon Sachen zur Bildauswertung gefunden.....nur eben nicht so eine Art HowTo

@GrinderFX Da hilft nicht googlen mit dem Begriff "Bilderkennung"
 
Zuletzt bearbeitet:
Ich werd mal nicht so gemein sein.
Ein Howto wirst du nicht finden, da bin ich mir gaaaaaanz sicher.
Das ist nicht sowas wie, wo klicke ich jetzt damit das passiert.
Du wirst sehr lange Zeit brauchen minimale Sachen total schlecht zu erkennen.

Ich kann dir nur eins raten, lies viel, versuche es zu verstehen und versuche es dann erst umzusetzen. Es gibt "mittlerweile" recht brauchbare Bücher zu dem Thema, anders wirst du da nicht weit kommen aber auch die geben dir kein Howto.

Bei dem 2. Google Link von mir findest du bei der Suche direkt nach Wikipedia gleich diese Seite:
http://www.kreissl.info/bilderkennung.php
Diese beschreibt erstmal die Basics sowie die Operatoren. Das ist der absolute Anfang.
Dann kannst du nach Google selbst nach den Operatoren suchen (Punktoperatoren, lokale Operatoren ...).


Hier ein paar brauchbare Bücher die ich selber hab und kenne.
http://www.amazon.de/Digitale-Bildv...=sr_1_1?ie=UTF8&s=books&qid=1279907747&sr=8-1

http://www.amazon.de/Digitale-Bildv...=sr_1_6?ie=UTF8&s=books&qid=1279907747&sr=8-6

Das 2. ist sehr sehr gut, wie man auch an den Bewertungen sieht.

Wenn du nicht an Java gebunden bist, kannst du auch OpenCV nutzen, das ist eine Bibliothek mit vielen Funktionen.
Es ist sicher nicht das was du hören möchtest aber du wirst sehr lange brauchen um auch nur irgendwas zu erkennen.
 
Darf ich fragen, was du genau auswerten willst? Es gibt da sehr unterschiedliche Ansätze für verschiedene Probleme. Du musst da schon etwas genauer werden ;)
HowTos wirst du vermutlich keine finden. Speziell wenns um fortgeschrittene Themen geht, dann findest du allenfalls Bücher oder wissenschaftliche Veröffentlichungen.
 
Wenn du erstmal einen Einstieg suchst kann ich dir empfehlen dich mal an einfachen Motion Detection Algorithmen zu versuchen. Da kann man relativ schnell einfache Ergebnisse erzielen und merkt worauf es hinausläuft wenn man Bilder bzw bewegte Bilder analysiert.

Da zum Beispiel eine kleine Einführung:
http://www.codeproject.com/KB/audio-video/Motion_Detection.aspx

Ansonsten mach dich mit den üblichen Bildverarbeitungsfiltern vertraut denn die sind das A und O für jede Bildanalyse. Da hat dir GrinderFX ja schon was ganz brauchbares für den Anfang herausgesucht.

Wenn du das ganze in Java machen möchtest wirst du vermutlich um das Java Media Framework nicht herumkommen. Dazu auch noch ein Link:
http://www.java2s.com/Code/Java/2D-...ritmforusewiththeJavaMediaFrameworkAPIJMF.htm
 
Der deutsche Begriff nach dem man googlen könnte wäre Bildverarbeitung bzw im englischen meistens computer vision oder image processing
Ein HowTo zum verarbeiten kann es pauschal nicht geben, da das immer stark auf dein Ziel ankommt.
Es gibt aber natürlich Erklärungen, wie du erstmal überhaupt Bildweise mit einem Bildstream/Video arbeitest. Google mal nach opencv, damit geht sowas wohl "relativ" einfach. Allerdings wäre das dann C/C++

Für Java gibts ImageJ. Ka ob das auch mit Videos kann. Für (Einzel-?)Bildverarbeitung steckt da schon sehr viel drin
 
Zuletzt bearbeitet:
Videos auswerten ist auch nichts anderes als Einzelbilder auswerten. Es ist ja nur ne Folge von Einzelbildern.
 
IceMatrix schrieb:
Videos auswerten ist auch nichts anderes als Einzelbilder auswerten. Es ist ja nur ne Folge von Einzelbildern.

Das stimmt so nicht.
Eine Videoauswertung ist weitaus komplexer.
z.B. das Verfolgen eines Pixels. Also die Berechnung, in welche Richtung sich ein Pixel bewegt hat. Gewisse Ansätze findet man dort beim Motion Compensation-Verfahren, welches beim Komprimieren von Videos verwendet wird, um nur die Dinge zu speichern, die sich verändert haben. (die sog. B- und P-Frames)
 
Oder um es etwas wissenschaftlicher auszudrücken:
Die aufeinander folgenden Bilder sind in einem Video nicht unkorreliert :)

Natürlich besteht ein Video aus Einzelbildern. Aber die in der Wissenschaft entwickelten Verfahren um Videos auszuwerten nutzen eben diese Korrelation, um aus bisher betrachteten Bilder (und den daraus gewonnen Informationen) das folgende Bild besser (=Erwartungsgestützt) interpretieren zu können.

Wie zB viele "Vermutungen" was zu sehen ist, die durch immer mehr Bilder immer stärker unterschiedlich gewichtet werden, bis sich das Programm am Ende "sicher" ist etwas erkannt zu haben

Oder beim Objektverfolgen: Wenn ich Position und aus vergangenen Bildern auch Bewegungsrichtung eines Objektes erkannt habe, kann ich im folgenden sehr genau Schätzen, wo sich das Objekt wahrscheinlich befindet
Siehe: http://de.wikipedia.org/wiki/Sequenzielle_Monte-Carlo-Methode oder auch http://de.wikipedia.org/wiki/Kalman-Filter

Die Extraktion von Merkmalen wie zB http://de.wikipedia.org/wiki/Segmentierung_(Bildverarbeitung) kann man natürlich auch erstmal wie in einem einzigen Bild für jedes Videobild durchführen.

Problematisch is in Echtzeitanwendungen auch auf jeden Fall die hohe Framerate. Bei 20Fps bleiben ja gerade mal 50ms für die gesamte Bildverarbeitung eines einzelnen Bildes. Bei einem einzigen Foto kann man also auch rechenaufwendige Verfahren einsetzen, die in einem Roboter nicht in 50ms geschafft werden. Vor allem, wenn der noch andere Dinge zu tun hat, wie Fußball spielen oder so ;)
 
Zuletzt bearbeitet:
Wenn du erstmal reinschnuppern möchtest: Hier gibt es ein (älteres) kostenloses eBook, das in unserer Computer Vision Vorlesung unter anderem empfohlen wurde.
 
Zurück
Oben