Home || Visual Search || Applications || Architecture || Important Messages || OGL || Src

void Impala::Application::Table::DoDumpSimilarityTableSetTrec (  ) 

Definition at line 463 of file mainTable.cpp.

References Impala::FileNameBase(), Impala::CmdOptions::GetArg(), Impala::Core::Database::RawDataSet::GetDatabase(), Impala::Core::VideoSet::Keyframes::GetFrameId(), Impala::CmdOptions::GetInstance(), Impala::CmdOptions::GetInt(), Impala::Core::VideoSet::Keyframes::GetName(), Impala::CmdOptions::GetNrArg(), ILOG_ERROR, ILOG_VAR, Impala::Core::Table::SimilarityTableSet::MakeFromFile(), Impala::Core::VideoSet::MakeVideoSet(), and Impala::Core::VideoSet::VideoSet::QuidToString().

Referenced by mainTable().

00464 {
00465     typedef Core::Table::SimilarityTableSet SimilarityTableSet;
00466 
00467     ILOG_VAR(Impala.Application.Table.DoDumpSimilarityTableSetTrec);
00468     CmdOptions& options = CmdOptions::GetInstance();
00469     if (options.GetNrArg() < 3)
00470     {
00471         ILOG_ERROR("Need more parameters");
00472         return;
00473     }
00474 
00475     String setName = options.GetArg(1);
00476     Core::VideoSet::VideoSet* vidSet = Core::VideoSet::MakeVideoSet(setName);
00477     Core::VideoSet::Keyframes keyframes(vidSet, "keyframes");
00478     String path = options.GetArg(2);
00479     SimilarityTableSet* simSet =
00480         Core::Table::SimilarityTableSet::MakeFromFile(path,
00481                                                       vidSet->GetDatabase());
00482 
00483     Core::Table::QuidTable* qTable = simSet->GetQuidTable();
00484     int start = options.GetInt("start");
00485     int end = options.GetInt("end");
00486     if ((end == -1) || (end > qTable->Size()))
00487         end = qTable->Size();
00488 
00489     std::cout << "SimilarityTableSet " << simSet->GetDescription() << std::endl;
00490     for (int t=0 ; t<simSet->NrTables() ; t++)
00491     {
00492         SimilarityTableSet::SimTableType* simTable = simSet->GetSimTable(t);
00493         std::cout << "table " << t << ", name = " << simSet->GetName(t)
00494                   << std::endl;
00495         if (simTable->Size() != qTable->Size())
00496         {
00497             ILOG_ERROR("DumpRanking: simtable size doesn't match");
00498             continue;
00499         }
00500         String concept = simSet->GetName(t);
00501         for (int i=start ; i<end ; i++)
00502         {
00503             Quid quid = qTable->Get1(i);
00504             //std::cout << i << ", ";
00505             std::cout << concept << ", ";
00506             int keyId = keyframes.GetFrameId(quid);
00507             if (keyId != -1)
00508                 std::cout << FileNameBase(keyframes.GetName(keyId)) << ", ";
00509             else
00510                 std::cout << vidSet->QuidToString(quid, true) << ", ";
00511             std::cout << simTable->Get1(i) << std::endl;
00512         }
00513         std::cout << std::endl;
00514     }
00515     delete simSet;
00516 }

Here is the call graph for this function:


Generated on Thu Jan 13 09:16:18 2011 for ImpalaSrc by  doxygen 1.5.1