void computeWeights() { Mat voc = bowExtractor.getVocabulary(); for (unsigned int i = 0; i < occurrencesInImageVector.size(); i++) { vector<float> temp; for (unsigned int j = 0; j < occurrencesInImageVector[i].size(); j++) { float weight = (float)occurrencesInImageVector[i][j] / NUMBER_OF_WORDS * log(occurrencesInImageVector.size() / occurrencesVector[j]); temp.push_back(weight + descriptorsVector[i][j]); } indexes.push_back(temp); } }
void saveVocabulary() { FileStorage fs(DATABASE_FILENAME, FileStorage::WRITE); fs << "Vocabulary" << bowExtractor.getVocabulary(); fs.release(); }