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

void Impala::Application::CrossValidate ( Util::PropertySet *  properties,
Training::Factory *  trainFactory,
DataFactory *  dataFactory 
)

Definition at line 32 of file mainCrossValidate.cpp.

References Impala::Util::PropertySet::Add(), Impala::Core::DataFactory::CanMakeBestFile(), ILOG_DEBUG, ILOG_INFO, ILOG_VAR, main(), Impala::Core::DataFactory::MakeAnnotation(), Impala::Core::DataFactory::MakeConceptList(), Impala::Core::Training::Factory::MakeSearcher(), Impala::Core::Training::ParameterSearcher::Search(), and WriteResults().

Referenced by mainCrossValidate().

00035 {
00036     ILOG_VAR(main);
00037     ILOG_DEBUG_ONCE("start application");
00038     std::vector<String> conceptList = dataFactory->MakeConceptList();
00039 
00040     for (int i=0 ; i<conceptList.size(); ++i)
00041     {
00042         String concept = conceptList[i];
00043         properties->Add("concept", concept);
00044         ILOG_INFO_ONCE("starting on concept " << i << ": " << concept);
00045         // if best file already exists: skip!
00046         if(!dataFactory->CanMakeBestFile(concept))
00047         {
00048             ILOG_INFO_ONCE("bestfile already exists: skipping...");
00049             continue;
00050         }
00051 
00052         ILOG_DEBUG_ONCE("loading annotation...");
00053         Table::AnnotationTable* annotation = dataFactory->MakeAnnotation(concept);
00054         if(annotation == 0)
00055         {
00056             ILOG_INFO("no annotation found for " << concept << ", skipping...");
00057             continue;
00058         }
00059         ILOG_DEBUG("anno size: "<< annotation->Size());
00060         ILOG_DEBUG_ONCE("creating searcher...");
00061         ParameterSearcher* searcher =
00062             trainFactory->MakeSearcher(annotation, dataFactory);
00063         ILOG_DEBUG_ONCE("starting search...");
00064         Util::PropertySet results = searcher->Search();
00065 
00066         ILOG_INFO_ONCE("saving results for " << concept);
00067         WriteResults(&results, dataFactory, concept, searcher);
00068         delete searcher;
00069         ILOG_DEBUG_ONCE("deleted searcher");
00070         delete annotation;
00071         ILOG_DEBUG_ONCE("deleted annotation");
00072     }
00073 
00074     return;
00075 }

Here is the call graph for this function:


Generated on Fri Mar 19 10:36:21 2010 for ImpalaSrc by  doxygen 1.5.1