Feeds:
Beiträge
Kommentare

Archive for the ‘Biber’ Category

Evaluation fertig!

Gestern konnte ich die Evaluation der drei Merkmalsextraktoren endlich abschließen. Eigentlich wollte ich schon vor Weihnachten fertig sein, aber die Fehlersuche hat sich – wie immer – als umfangreicher als gedacht herausgestellt. Die Daten sind ganz gut dafür, dass die Extraktoren relativ simple sind. Jetzt stürze ich mich mit gutem Gewissen auf die Folien für die Zwischenverteidigung.

Read Full Post »

aber ich habe ihm ein Auto gekauft.

Der Vergleich hinkt zwar, aber … egal.

Hier die aktuellen Diagnosen und Therapien.

Das erste Problem waren die Fehlermeldungen wegen zu wenig Speicher. Das liegt anscheinend an Java, auf das Matlab für seine Oberfläche zurückgreift. Java scheint es bei meinem schwachbrüstigen Notebook nicht zu vertragen, wenn ich über die Oberfläche auf meine Datenstrukturen, in der alle Bilder in unterschiedlichen Transformationen gespeichert sind, zugreife und bringt damit komplett Matalb in die Knie. Das kann ich halb umgehen, in dem ich erstmal nicht mehr auf meine Datenstruktur per Hand zugreife, sondern Funktionen benutze. Es hilft auch, wenn ich vorher die ganze andere Software schließe, die ich noch so am laufen habe.

Das andere Problem war, dass er für einen Durchlauf unangenehm lange brauchte. Die Übeltäter konnte ich identifizieren und insofern unschädlich machen, dass ich deren Ergebnisse nach dem ersten Durchlauf (über Nacht) einfach speichere und dann nur noch auf die gespeicherten Daten zurückgreifen.

Soviel dazu…. vielleicht rüste ich mein Notebook auch noch auf 2gig Speicher auf. Das wäre zwar kein neues Auto, aber vielleicht ein … mhm … wem eine Auto-Metapher zu RAM einfällt, den lade ich zum Kaffee ein!

So, Biber und jetzt mach mal hin. Es ist fast halb eins und ich will wissen wie der Testlauf ausgegangen ist, bevor ich nach Hause aufbreche…

Read Full Post »

Heute war ein guter Tag

GUI EvalBiber V1

GUI EvalBiber V1

Heute bin ich gut vorangekommen. Aufgedreht durch den Sport, konnte ich den EvalBiber in den ruhigen Abendstunden von 20h bis 22h fast fertigstellen. Er kann jetzt Bilder einlesen, deren Histogramme berechnen, diese mit einem Referenzhistogramm vergleichen, der Ähnlichkeit nach sortieren und darstellen, den Recall ausgeben und auch noch berechnen, wie lange das alles gedauert hat. Und das alles passiert, wenn man auf einen Knopf drückt! No more Kommandozeile! Weiterhin habe ich darauf wertgelegt, die Teilbereiche modular in functions auszugliedern, dass ich leicht neue Merkmalsextraktoren, Evaluationsverfahren und andere Funktionen einbauen kann.

Morgen lese ich noch ein paar Evaluationsverfahren nach, um diese dann noch bis Ende der Woche zu implementieren. Auch ist noch nicht ganz klar, wie die Testdatenbank auf Dateiebene aussehen wird, so dass ich das auch noch nicht fertig eingebaut habe.

So far, so good.

Update Zeitplan:

Testframework in Matlab 80%

Read Full Post »

Was macht eigentlich Biber?

Ablauf Biber

Programmablauf von Biber

Ja, was macht eigentlich das Biber-System, wenn es denn mal fertig ist? Hier eine kleine, hoffentlich ausreichend verständliche Schritt-für-Schritt Einführung.

Zuerst wird die Suchbildmarke, die nichts anderes als ein Pixelbild ist, an Biber übergeben. Als zweiten Schritt werden von dem Bild verschiedene Merkmale extrahiert, welche genutzt werden, um Bilder effizient zu beschreiben.

Ein Beispiel für ein Merkmal wäre die Durchschnittsfarbe eines Bildes. Diese Durchschnittsfarbe erlaubt uns ohne viel Aufwand festzustellen, wie (farblich) ähnlich zwei Bildern sind. Würde man alle Pixel der beiden Bilder einzeln betrachten, wäre die Ähnlichkeit deutlich schwieriger zu bestimmen. Der Teil des Programms, der die Durchschnittsfarbe berechnet, nennt man Merkmalsextraktor. Wenn man nun die Farbwerte der Durchschnittsfarbe im RGB als eine Koordinate im 3D Raum betrachtet, wird aus dem Merkmal ein Merkmalsvektor. Diese Herangehensweise hat den Vorteil, dass es nun so möglich ist, die Distanz zwischen zwei Bildern zu berechnen und genaue Aussagen darüber zu treffen, ob Bild A ähnlicher zu Bild B oder zu Bild C ist. Dies nennt man Distanz- bzw. Ähnlichkeitsberechnung.

Weiterhin ist für manche Merkmale eine vorhergehende Segmentierung notwendig, die das Bild in Regionen unterteilt. Im Idealfall entsprechen die gewonnenen Regionen den einzelnen Elementen der Bildmarke.

Zurück zu Biber. Nachdem die Merkmale extrahiert wurden, wird die Datenbank aufgerufen, in der die Merkmale alle eingetragenen Bildmarken enthalten sind. Durch Distanzberechnung wird nun mit der Datenbank für alle Merkmale jeweils eine Liste mit ähnlichen Bildmarken erstellt. Diese Listen werden dann  gewichtet zu einer Liste vereint und im letzten Schritt dem Nutzer ausgeben.

Das war’s auch schon.

Read Full Post »