Definition at line 67 of file FeatureTable.h. References Impala::Util::Append(), FeatureTable(), Impala::Core::Database::RawDataSet::GetDatabase(), Impala::Core::Database::RawDataSet::GetFilePathFeatureData(), Impala::Core::Database::RawDataSet::GetQuidClass(), ILOG_ERROR, Impala::Core::Database::RawDataSet::NrDirs(), Impala::Core::Database::RawDataSet::NrFiles(), Impala::QUID_CLASS_FRAME, Impala::QUID_CLASS_IMAGE, and Impala::Core::Table::Read(). Referenced by Impala::Application::mainConstructCodebook(). 00069 { 00070 Int64 totalSize = 0; 00071 int dimensionality = 0; 00072 std::vector<String> filenames; 00073 if (is->GetQuidClass() == QUID_CLASS_IMAGE) 00074 { 00075 for (int dirId = 0; dirId < is->NrDirs(); dirId++) 00076 { 00077 String fName = is->GetFilePathFeatureData(mDef, dirId, false, 00078 -1, false, false); 00079 filenames.push_back(fName); 00080 } 00081 } 00082 else if (is->GetQuidClass() == QUID_CLASS_FRAME) 00083 { 00084 for (int i = 0; i < is->NrFiles(); i++) 00085 { 00086 String fName = is->GetFilePathFeatureData(walkType, mDef, i, 00087 false, -1, 00088 false, false); 00089 filenames.push_back(fName); 00090 } 00091 } 00092 else 00093 { 00094 ILOG_ERROR("MakeFromDataSet: Unknown quid class"); 00095 return 0; 00096 } 00097 for (int dirId = 0; dirId < filenames.size(); dirId++) 00098 { 00099 Feature::FeatureTable tmp(mDef); 00100 Core::Table::Read(&tmp, filenames[dirId], is->GetDatabase()); 00101 totalSize += tmp.Size(); 00102 dimensionality = tmp.GetFeatureVectorLength(); 00103 } 00104 FeatureTable* table = new FeatureTable(mDef, totalSize, dimensionality); 00105 for(int dirId = 0; dirId < filenames.size(); dirId++) 00106 { 00107 Feature::FeatureTable tmp(mDef); 00108 Core::Table::Read(&tmp, filenames[dirId], is->GetDatabase()); 00109 Core::Table::Append(table, &tmp); 00110 } 00111 return table; 00112 }
Here is the call graph for this function:
|