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

Impala::Core::Trec::ThreadVisualSimilarity::ThreadVisualSimilarity ( CString  feature,
VideoSet::Keyframes keyframes 
) [inline]

Definition at line 34 of file ThreadVisualSimilarity.h.

References Impala::Core::Table::Copy(), Impala::Core::Table::TableTem< Col1T, Col2T, Col3T, Col4T, Col5T, Col6T, Col7T, Col8T, Col9T >::GetColumn2(), Impala::Core::VideoSet::Keyframes::GetNrShots(), Impala::Core::Table::SimilarityTableSet::GetQuidTable(), Impala::Core::VideoSet::Keyframes::GetVideoSet(), ILOG_DEBUG, mFeatureTable, Impala::Min(), mKeyEqualShot, mKeyframes, mOrigin, mShotsCache, mSimSet, mTopN, mValid, Impala::Core::Vector::NormalizationMax(), Impala::Core::Table::Read(), and Impala::Core::Table::Table::Size().

00035         : Thread(String("visual_") + feature)
00036     {
00037         String qualName = feature;
00038         if (feature == "vissem" || feature == "vissemgabor" ||
00039             feature == "fusionvissemgabor")
00040                 qualName += "_proto_annotation_nrScales_2_nrRects_130";
00041         Feature::FeatureDefinition def(qualName);
00042         mFeatureTable = new Feature::FeatureTable(def);
00043 
00044         mKeyframes = keyframes;
00045         String fName =
00046             mKeyframes->GetVideoSet()->GetFilePathFeatureIndex(def, "", false,
00047                                                                false);
00048         if (fName.empty())
00049         {
00050             ILOG_DEBUG("fName is empty, attempting alternative.");
00051             Feature::FeatureDefinition def_alt(feature + "_proto_clusters_keyframes_all_maxlen_120_sp_0");
00052             mFeatureTable = new Feature::FeatureTable(def_alt);
00053             fName =
00054                 mKeyframes->GetVideoSet()->GetFilePathFeatureIndex(def_alt, "", false,
00055                                                                    false);
00056             if (fName.empty()) {
00057                 ILOG_DEBUG("fName is empty, failed.");
00058                 mValid = false;
00059                 return;
00060             }
00061         }
00062 
00063         mShotsCache = new TableShotsIndexScore(0);
00064 
00065         Table::Read(mFeatureTable, fName,
00066                     mKeyframes->GetVideoSet()->GetDatabase());
00067         mKeyEqualShot = (mFeatureTable->Size() == mKeyframes->GetNrShots());
00068         Vector::NormalizationMax(mFeatureTable->GetColumn2());
00069         mOrigin = -1;
00070         mTopN = Min(mFeatureTable->Size() - 1, 1000);
00071         ILOG_DEBUG("mTopN for " << feature << " = " << mTopN);
00072         std::vector<String> names;
00073         names.push_back("test");
00074         mSimSet = new Table::SimilarityTableSet(names, mFeatureTable->Size());
00075         Core::Table::Copy(mSimSet->GetQuidTable(), mFeatureTable);
00076         mValid = true;
00077     }

Here is the call graph for this function:


Generated on Fri Mar 19 11:26:32 2010 for ImpalaSrc by  doxygen 1.5.1