The base image is stored, but caller ramains responsible for calling delete. Computes maximum number of levels. Definition at line 28 of file ImagePyramid.h. References Impala::Core::Array::Array2dTem< StorT, elemSize, ArithT >::BH(), Impala::Core::Array::Array2dTem< StorT, elemSize, ArithT >::BW(), Impala::Core::Array::Array2dTem< StorT, elemSize, ArithT >::CH(), Impala::Core::Array::Array2dTem< StorT, elemSize, ArithT >::CW(), Impala::Core::Array::MakeGaussian1d(), mGaussKernel, mLevels, mMaxTop, mScratch, and Impala::Core::Array::Pattern::PatSet(). 00029 { 00030 // the base image is stored, but not owned 00031 mLevels.reserve(8); 00032 mLevels.push_back(base); 00033 mScratch = new Array::Array2dVec3Real64(base->CW(), base->CH(), 00034 base->BW(), base->BH(), 0); 00035 Array::Array2dScalarReal64* kernel = Array::MakeGaussian1d(1.0, 0, 1.0, 3); 00036 mGaussKernel = new Array::Array2dVec3Real64(kernel->CW(), kernel->CH(), 00037 kernel->BW(), kernel->BH(), 0); 00038 Array::Pattern::PatSet(mGaussKernel,kernel,0,0,kernel->CW(),kernel->CH(),0,0); 00039 delete kernel; 00040 00041 int w,h; 00042 w = base->CW(); 00043 h = base->CH(); 00044 mMaxTop = 1; 00045 while(w>2 && h>2 && w*h>100) 00046 { 00047 w/=2; 00048 h/=2; 00049 mMaxTop++; 00050 } 00051 }
Here is the call graph for this function:
|