Open HyDr0x opened 11 years ago
Klingt nach einem Plan, mehr Zeit für andere Sachen. Hab 'mal kurz gegoogled und noch ein wenig Beispiel & Diskussion zum Thema gefunden. http://www.morethantechnical.com/2011/08/25/a-simple-object-classifier-with-bag-of-words-using-opencv-2-3-w-code/
So ich hab jetzt mal nen kleinen Rundumschlag gemacht.
Was jetzt im groben noch fehlt:
Das Testen hat meiner Meinung noch etwas Zeit. Der Visualizer auch denke ich. Nach der Präsi am Mittwoch bleiben uns noch 2 Wochen um das alles hier ordentlich zu finishen/überarbeiten und richtig zum laufen zu bringen und um die Abschlusspräsi zu machen. Also sorry für meinen Alleingang hier, aber bis Mittwoch sollte der Klassifizierungsprozess halt schon laufen und im Moment haben wir nur ein paar Puzzleteile gehabt.
Hi, mir ist grad noch ne coole Klasse in OpenCV aufgefallen, die mir einfach nen extra Issue Wert war. Die Klasse heißt "BOWTrainer" also BagOfVisualWordsTrainer. Das ist ne Basisklasse für nen Trainer und Klassifizierer für Bag of Visual Words. "BOWKMeansTrainer" erbt davon und ihm gibt man die aus Sift oder woher auch immer berechneten Deskriptoren seiner Trainingsbilder und bekommt dann das Vocabulary. Danach muss man nur noch der Klasse "BOWImgDescriptorExtractor" das Vocabulary übergeben und kann dann einzelne Bilder hinschicken. Für die wird dann die Zuordnung der einzelnen Keypoints des Bildes zu den einzelnen Cluster-Zentren vom Vocabulary berechnet und zurückgegeben. Daraus kann man dann relativ easy sein Histogramm basteln und ist fertig.
Hier nochmal der Link zur Klasse: http://docs.opencv.org/modules/features2d/doc/object_categorization.html?highlight=kmeans#BOWKMeansTrainer
BOW Anwendung: http://www.morethantechnical.com/2011/08/25/a-simple-object-classifier-with-bag-of-words-using-opencv-2-3-w-code/
BOW paper: http://217.109.185.161/layout/set/print/content/download/20785/148346/file/2004_010.pdf