dump(codebook, f, protocol=HIGHEST_PROTOCOL) print "---------------------" print "## compute the visual words histograms for each image" all_word_histgrams = {} for imagefname in all_features: word_histgram = computeHistograms(codebook, all_features[imagefname]) all_word_histgrams[imagefname] = word_histgram print "---------------------" print "## write the histograms to file to pass it to the svm" writeHistogramsToFile(nclusters, all_files_labels, all_files, all_word_histgrams, datasetpath + HISTOGRAMS_FILE) print "---------------------" print "## train svm" c, g, rate, model_file = libsvm.grid(datasetpath + HISTOGRAMS_FILE, png_filename='grid_res_img_file.png') print "--------------------" print "## outputting results" print "model file: " + datasetpath + model_file print "codebook file: " + datasetpath + CODEBOOK_FILE print "category ==> label" for cat in cat_label: print '{0:13} ==> {1:6d}'.format(cat, cat_label[cat])
thresh=K_THRESH) with open(datasetpath + CODEBOOK_FILE, 'wb') as f: dump(codebook, f, protocol=HIGHEST_PROTOCOL) print "---------------------" print "## compute the visual words histograms for each image" all_word_histgrams = {} for imagefname in all_features: word_histgram = computeHistograms(codebook, all_features[imagefname]) all_word_histgrams[imagefname] = word_histgram print "---------------------" print "## write the histograms to file to pass it to the svm" writeHistogramsToFile(nclusters, all_files_labels, all_files, all_word_histgrams, datasetpath + HISTOGRAMS_FILE) print "---------------------" print "## train svm" c, g, rate, model_file = libsvm.grid(datasetpath + HISTOGRAMS_FILE, png_filename='grid_res_img_file.png') print "--------------------" print "## outputting results" print "model file: " + datasetpath + model_file print "codebook file: " + datasetpath + CODEBOOK_FILE print "category ==> label" for cat in cat_label: print '{0:13} ==> {1:6d}'.format(cat, cat_label[cat])