template<int INDEX_SIZE, int ORI_SIZE>
Definition at line 162 of file KoenFIST2.h. References Impala::Core::Feature::FISTDescriptor< INDEX_SIZE, ORI_SIZE >::CanonicalizeAngle(), Impala::Core::Array::Array2dTem< StorT, elemSize, ArithT >::CH(), Impala::Core::Array::Array2dTem< StorT, elemSize, ArithT >::CW(), Impala::Core::Feature::FISTDescriptor< INDEX_SIZE, ORI_SIZE >::noGaussianWeighting, Impala::Core::Feature::FISTDescriptor< INDEX_SIZE, ORI_SIZE >::PutInVector(), Impala::Application::DemoCamera2d::sigma, and Impala::Core::Array::Array2dTem< StorT, elemSize, ArithT >::Val(). Referenced by Impala::Core::Feature::FISTDescriptor< INDEX_SIZE, ORI_SIZE >::InternalSample(). 00166 { 00167 // bounds check 00168 if (r < 0 || r >= magnitude->CH() || c < 0 || c >= magnitude->CW()) 00169 return; 00170 00171 Real64 mag = 0.0; 00172 if(noGaussianWeighting) 00173 { 00174 mag = magnitude->Val(c, r); 00175 } 00176 else 00177 { 00178 // find Gaussian weight, depending on distance from center 00179 const Real64 IndexSigma = 1.0; 00180 Real64 sigma = IndexSigma * 0.5 * INDEX_SIZE; 00181 Real64 weight = exp(- (rpos * rpos + cpos * cpos) / (2.0 * sigma * sigma)); 00182 mag = weight * magnitude->Val(c, r); 00183 } 00184 00185 /* Subtract keypoint orientation to give ori relative to keypoint. */ 00186 Real64 ori = direction->Val(c, r) - pointOrientation; 00187 ori = CanonicalizeAngle(ori); 00188 PutInVector(descriptor, mag, ori, rx, cx); 00189 }
Here is the call graph for this function:
|