Arrived at given DB_FILE in a "normal" walk.
Reimplemented from Impala::Core::VideoSet::Listener. Definition at line 222 of file ShotSegmenter.h. References Impala::Core::Array::Array2dTem< StorT, elemSize, ArithT >::CW(), Impala::FileNameBase(), Impala::Core::Stream::RgbDataSrc::FrameHeight(), Impala::Core::Stream::RgbDataSrc::FrameWidth(), Impala::Util::Database::GetInstance(), Impala::Core::Stream::RgbDataSrc::GetName(), ILOG_ERROR, ILOG_INFO, Impala::Core::Stream::RgbDataSrc::LastFrame(), mBinCount, mCentered, mCUTs, mDISs, mDoProcessing, mFeatures, mFeaturesReversed, mFOIs, mGroundTruth, mHistograms, mHistPerFrame, mMode, mOTHs, mPredictions, mPyramid, mRadius, mRunName, mScores, mShotNr, mSigma, mSrc, mWeights, mWindowSize, ReadGroundTruth(), Impala::Util::IOBuffer::ReadLine(), Impala::Core::Geometry::RectanglePyramid::SetImageSize(), Impala::Core::Array::SetVal(), Impala::Core::Array::Array2dTem< StorT, elemSize, ArithT >::SetValue(), and Impala::Util::IOBuffer::Valid(). Referenced by Impala::Core::VideoSet::ShotSegmenterGUI::ShotSegmenterGUI(). 00223 { 00224 mSrc=src; 00225 mShotNr=0; 00226 //Allocate the arrays for the next file 00227 mWeights = Array::ArrayCreate<Array2dScalarReal64>(mWindowSize,mWindowSize); 00228 SetVal(mWeights,0); 00229 00230 if (src->LastFrame() < 0) 00231 { 00232 ILOG_ERROR("[HandleNewFile] src->LastFrame() = " << src->LastFrame() 00233 << " (fileId = " << fileId << ")"); 00234 exit(-1); 00235 } 00236 00237 int lastFrame = src->LastFrame(); 00238 mPredictions = Array::ArrayCreate<Array2dScalarReal64>(lastFrame,1,0,0); 00239 SetVal(mPredictions,0); 00240 00241 mScores = Array::ArrayCreate<Array2dScalarReal64>(src->LastFrame(),1,0,0); 00242 SetVal(mScores,0); 00243 00244 mFeatures=new Vector::VectorTem<Real64>(mCentered?mWindowSize+1:mWindowSize); 00245 mFeaturesReversed=new Vector::VectorTem<Real64>(mCentered?mWindowSize+1:mWindowSize); 00246 mHistograms = new HistType*[mWindowSize*mHistPerFrame]; 00247 for(int i=0;i<mWindowSize*mHistPerFrame;i++) 00248 { 00249 mHistograms[i]=new HistType(0, 256, mBinCount, 0); 00250 } 00251 00252 mGroundTruth= Array::ArrayCreate<Array2dScalarReal64>(mSrc->LastFrame(),4,0,0); 00253 mCUTs= Array::ArrayCreate<Array2dScalarReal64>(mSrc->LastFrame(),1,0,0); 00254 mDISs= Array::ArrayCreate<Array2dScalarReal64>(mSrc->LastFrame(),1,0,0); 00255 mOTHs= Array::ArrayCreate<Array2dScalarReal64>(mSrc->LastFrame(),1,0,0); 00256 mFOIs= Array::ArrayCreate<Array2dScalarReal64>(mSrc->LastFrame(),1,0,0); 00257 00258 Array::SetVal(mGroundTruth,0); 00259 Array::SetVal(mCUTs,0); 00260 Array::SetVal(mDISs,0); 00261 Array::SetVal(mOTHs,0); 00262 Array::SetVal(mFOIs,0); 00263 00264 mPyramid.SetImageSize(mSrc->FrameWidth(),mSrc->FrameHeight()); 00265 00266 //if((mMode=="Train")||(mMode=="Test")||(mMode=="EvalTrain")||(mMode=="EvalTest")) 00267 ReadGroundTruth(); 00268 #ifndef REPOSITORY_USED // Here comes the deprecated stuff 00269 if(!mDoProcessing){ 00270 char OutFileName[300]; 00271 Util::Database D; 00272 String SrcName = mSrc->GetName(); 00273 SrcName=Impala::FileNameBase(SrcName); 00274 00275 //Scores File 00276 sprintf(OutFileName,"%s_%d-%g-%d.txt",SrcName.c_str(), 00277 mRadius,mSigma,mBinCount); 00278 Util::Database& Db = Util::Database::GetInstance(); 00279 String FileName=Db.GetFilePath("ShotSegmentation","Scores",mMode,mRunName,OutFileName,false,false); 00280 Util::IOBuffer* Input=Db.GetIOBuffer(FileName,true,false,"tmp"); 00281 if(Input && Input->Valid()) 00282 { 00283 ILOG_INFO("No Processing will be done,"); 00284 ILOG_INFO("Reading Scores from "<<FileName); 00285 int frame; 00286 double score; 00287 std::strstream oss; 00288 for (int i=0;i<mScores->CW();i++){ 00289 oss<<Input->ReadLine(); 00290 oss>>frame; 00291 oss>>score; 00292 //Output->ReadNativeTypeRead(&frame); 00293 //Output->ReadNativeTypeRead(&score); 00294 mScores->SetValue(score,frame,0); 00295 } 00296 }else 00297 mDoProcessing=true; 00298 } 00299 #endif // REPOSITORY_USED 00300 }
Here is the call graph for this function:
|