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

template<class DstArrayT, class SrcArrayT>
void Impala::Core::Feature::IntWeibullNgbPnLoop< DstArrayT, SrcArrayT >::NextEl ( int  x,
int  y,
SrcArithType  value 
) [inline]

Processing one pixel.

Definition at line 121 of file IntWeibullNgbPnLoop.h.

References Impala::Core::Feature::IntWeibullNgbPnLoop< DstArrayT, SrcArrayT >::mData, Impala::Core::Feature::IntWeibullNgbPnLoop< DstArrayT, SrcArrayT >::mF, Impala::Core::Feature::IntWeibullNgbPnLoop< DstArrayT, SrcArrayT >::mFprime, Impala::Core::Feature::IntWeibullNgbPnLoop< DstArrayT, SrcArrayT >::mFrac, Impala::Core::Feature::IntWeibullNgbPnLoop< DstArrayT, SrcArrayT >::mGamma, Impala::Core::Feature::IntWeibullNgbPnLoop< DstArrayT, SrcArrayT >::mLast, Impala::Core::Feature::IntWeibullNgbPnLoop< DstArrayT, SrcArrayT >::mNgbWidth, Impala::Core::Feature::IntWeibullNgbPnLoop< DstArrayT, SrcArrayT >::mPhase, Impala::Core::Feature::IntWeibullNgbPnLoop< DstArrayT, SrcArrayT >::mSumDataLog, Impala::Core::Feature::IntWeibullNgbPnLoop< DstArrayT, SrcArrayT >::mSumDataPowerGamma, and Impala::Core::Feature::IntWeibullNgbPnLoop< DstArrayT, SrcArrayT >::mVerbose.

00122     {
00123       SrcArithType dataPowerGamma;
00124       SrcArithType sumItem;
00125       SrcArithType data = fabs(value) + 0.000001; 
00126       dataPowerGamma = pow(data, mGamma);
00127       int phase = mPhase%2;
00128         
00129       if(mVerbose)
00130         if (mGamma == 0.01 && phase == 0)
00131           std::cout << value << std::endl;
00132       //      if (mVerbose)
00133       //        std::cout << "      WeibullNgbPnLoop::next(" << x << "," << y << ","<< value << ") " << std::endl;
00134 
00135       if(mLast)
00136       {
00137         mData->SetValue(fabs(value), x*mNgbWidth + y, 0);
00138         return;
00139       }
00140       switch (phase)
00141       {
00142       case 1 : 
00143         mSumDataPowerGamma += dataPowerGamma;
00144         mSumDataLog += dataPowerGamma*log(data);
00145         break;
00146         
00147       case 0 :
00148         sumItem = dataPowerGamma/mSumDataPowerGamma; 
00149         mF += (sumItem)*log(mFrac*sumItem);
00150         mFprime += (log(dataPowerGamma/mSumDataPowerGamma) + 1)*
00151           (dataPowerGamma*(log(data)*mSumDataPowerGamma - mSumDataLog))/
00152           (mSumDataPowerGamma*mSumDataPowerGamma);
00153         break;
00154       }
00155         
00156     }


Generated on Thu Jan 13 09:19:25 2011 for ImpalaSrc by  doxygen 1.5.1