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

void Impala::Core::KeyPoint::Sift::Init (  )  [inline]

Definition at line 49 of file Sift.h.

References BuildGaussians(), Impala::Core::KeyPoint::DOG, Impala::Core::KeyPoint::Detector::FindKeyPoints(), Impala::CmdOptions::GetInstance(), Impala::CmdOptions::GetInt(), ILOG_INFO, Impala::Core::Array::MakeGaussian2d(), mDescriptorBinCount, mDescriptorLength, mDescriptorRegDiv, mDescriptorWindowSize, mDetector, mDetectorType, mGaussian, mGaussians, mGradAng, mGradMag, mKeyPoints, mLevelCnt, mOctaveCnt, mOctaves, and mSrc.

Referenced by Sift().

00049                {
00050         CmdOptions& options = CmdOptions::GetInstance();
00051         //The window size taken for the desccriptor
00052         mDescriptorWindowSize=options.GetInt("dws",16);
00053         //Default is 8 bins from every region
00054         mDescriptorBinCount=options.GetInt("dbc",8);
00055         //Default is a 4x4 region
00056         mDescriptorRegDiv=options.GetInt("drv",4);
00057         ILOG_INFO("Descriptor Window Size : "<<mDescriptorWindowSize);
00058         ILOG_INFO("Descriptor Histogram Bin Count : "<<mDescriptorBinCount);
00059 
00060         mDescriptorLength = mDescriptorBinCount *
00061                             mDescriptorRegDiv   * mDescriptorRegDiv;
00062 
00063 
00064         mOctaves = new Impala::Core::Array::Octaves(mSrc,-1,3);
00065         switch(mDetectorType){
00066             case DOG:
00067                 mDetector = new DoG(mOctaves);
00068         }
00069         mDetector->FindKeyPoints();
00070         mLevelCnt = mOctaves->GetLevelCount();
00071         mOctaveCnt = mOctaves->GetOctaveCount();
00072 
00073 
00074         mGradMag = new Array2dScalarReal64*[mOctaveCnt*mLevelCnt];
00075         mGradAng = new Array2dScalarReal64*[mOctaveCnt*mLevelCnt];
00076         mGaussians = new Array2dScalarReal64*[mOctaveCnt*mLevelCnt];
00077         for(int i=0;i<mOctaveCnt*mLevelCnt;i++){
00078             mGaussians[i] =0;
00079             mGradMag[i] = 0;
00080             mGradAng[i] = 0;
00081         }
00082 
00083         BuildGaussians();
00084         mGaussian = MakeGaussian2d( 1.5 * mDescriptorWindowSize, 
00085                                     1.5 * mDescriptorWindowSize,0,0,3);
00086         mKeyPoints=new KeyPointTableType(0);
00087         
00088     }

Here is the call graph for this function:


Generated on Thu Jan 13 09:20:10 2011 for ImpalaSrc by  doxygen 1.5.1