Definition at line 53 of file TrackVisualiser.h. References Impala::Visualization::Plot::TimeLine::Add(), Impala::Visualization::Plot::Plot::AutoScale(), Impala::Core::Array::Array2dTem< StorT, elemSize, ArithT >::CPB(), Impala::Core::Array::Array2dTem< StorT, elemSize, ArithT >::CPE(), Impala::Core::Array::Array2dTem< StorT, elemSize, ArithT >::H(), OglGui::Sys::Instance(), Impala::Core::Geometry::Rectangle::mBottom, mFeatureViewer, Impala::Core::Geometry::Rectangle::mLeft, mPlot1, mPlot2, mPlotDistribution, mPlotHighest, Impala::Core::Geometry::Rectangle::mRight, mSimilarity, mSortedFeature, Impala::Core::Geometry::Rectangle::mTop, mTrack, mVideoPlayer, mVideoViewer, Impala::Visualization::Plot::Line::SetData(), Impala::Visualization::ViewListenerWithRectangles::SetRectangle(), Impala::Util::Sleep(), Impala::Core::Table::Sort(), and Impala::Core::Array::Array2dTem< StorT, elemSize, ArithT >::W(). 00054 { 00055 using Core::Array::Array2dScalarReal64; 00056 00057 Visualization::ViewListenerWithRectangles* rectDrawer = new Visualization::ViewListenerWithRectangles; 00058 for(int i=0 ; i<mTrack->size() && mVideoPlayer->HasAvailable() ; i++) 00059 { 00060 if(i<mTrack->size()) 00061 { 00062 Core::Geometry::Rectangle& rect = mTrack->at(i)->GetRectangle(); 00063 rectDrawer->SetRectangle(rect.mLeft, rect.mTop, rect.mRight, rect.mBottom); 00064 } 00065 Domain::Image* im = mVideoPlayer->GetImage(); 00066 Array2dVec3UInt8* a = im->GetData()->mDataVec3UInt8; 00067 mVideoViewer->UpdateView(0, a, rectDrawer); 00068 00069 if(i<mTrack->size() && i>0) 00070 { 00071 Array2dScalarReal64* feature = reinterpret_cast<Array2dScalarReal64*>(mSimilarity->at(i-1)); 00072 mFeatureViewer->UpdateView(0, feature, "Stretch"); 00073 Core::Array::Sort(mSortedFeature, feature); 00074 00075 mPlotDistribution->SetData(mSortedFeature->CPB(), mSortedFeature->W() * mSortedFeature->H()); 00076 mPlot1->AutoScale(); 00077 mPlotHighest->Add(*mSortedFeature->CPE()); 00078 mPlot2->AutoScale(); 00079 } 00080 else 00081 { 00082 //this is the first frame: no data yet 00083 } 00084 if(OglGui::Sys::Instance().WindowManage()) 00085 break; 00086 Sleep(50); 00087 } 00088 }
Here is the call graph for this function:
|