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

std::vector<Array2dScalarReal64*> Impala::Core::Trec::BuildInvECwFeatureList ( Array2dVec3Real64 *  im,
double  precision,
int  border 
)

Definition at line 154 of file TrecFeature.h.

References Impala::Core::Array::ColorSpace(), Impala::Core::Array::E, MyRestrict(), Impala::Core::Array::Element::OOO, Impala::Core::Array::ProjectRange(), Impala::Core::Array::RecGauss(), and Impala::Core::Array::Element::RGB.

00155 {
00156         Array2dVec3Real64* imO = 0;
00157         ColorSpace(imO, im, Element::RGB, Element::OOO);
00158 
00159         const int nrScales = 3;
00160         double scales[nrScales] = {1.0, 2.0, 3.5};
00161         //double scales[nrScales] = {2.0, 4.0, 8.0};
00162 
00163         std::vector<Array2dScalarReal64*> imList;
00164         Array2dScalarReal64* ch = 0;
00165         Array2dScalarReal64* res = 0;
00166         Array2dScalarReal64* E = 0;
00167         Array2dScalarReal64* Ex = 0;
00168         Array2dScalarReal64* Ey = 0;
00169         Array2dScalarReal64* El = 0;
00170         Array2dScalarReal64* Elx = 0;
00171         Array2dScalarReal64* Ely = 0;
00172         Array2dScalarReal64* Ell = 0;
00173         Array2dScalarReal64* Ellx = 0;
00174         Array2dScalarReal64* Elly = 0;
00175         //for all scales
00176         for (int i=0 ; i<nrScales ; i++)
00177     {
00178                 E = 0;
00179                 El = 0;
00180                 Ell = 0;
00181 
00182                 ProjectRange(ch, imO, 1);
00183                 RecGauss(E, ch, scales[i], scales[i], 0, 0, precision);         
00184                 RecGauss(Ex, ch, scales[i], scales[i], 1, 0, precision);                
00185                 RecGauss(Ey, ch, scales[i], scales[i], 0, 1, precision);                
00186 
00187                 ProjectRange(ch, imO, 2);
00188                 RecGauss(El, ch, scales[i], scales[i], 0, 0, precision);                
00189                 RecGauss(Elx, ch, scales[i], scales[i], 1, 0, precision);               
00190                 RecGauss(Ely, ch, scales[i], scales[i], 0, 1, precision);               
00191 
00192                 ProjectRange(ch, imO, 3);
00193                 RecGauss(Ell, ch, scales[i], scales[i], 0, 0, precision);               
00194                 RecGauss(Ellx, ch, scales[i], scales[i], 1, 0, precision);              
00195                 RecGauss(Elly, ch, scales[i], scales[i], 0, 1, precision);              
00196 
00197                 M9N4poConFeat<Array2dScalarReal64, Array2dScalarReal64>
00198                         mnpoConFeat(scales[i]);
00199                 std::vector<Array2dScalarReal64*> fList;
00200                 fList = Pattern::PatM9N4PixOp<Array2dScalarReal64>
00201             (E, Ex, Ey, El, Elx, Ely, Ell, Ellx, Elly, mnpoConFeat);
00202                 if (border != 0)
00203         {
00204                         MyRestrict(E, border);
00205                         MyRestrict(El, border);
00206                         MyRestrict(Ell, border);
00207                         MyRestrict(fList[0], border);
00208                         MyRestrict(fList[1], border);
00209                         MyRestrict(fList[2], border);
00210                         MyRestrict(fList[3], border);
00211                 }
00212 
00213                 imList.push_back(E);
00214                 imList.push_back(El);
00215                 imList.push_back(Ell);
00216                 imList.push_back(fList[0]); // Cl
00217                 imList.push_back(fList[1]); // Cll
00218                 imList.push_back(fList[2]); // Clw
00219                 imList.push_back(fList[3]); // Cllw
00220         }
00221         delete imO;
00222         delete ch;
00223         delete res;
00224         //delete E;
00225         delete Ex;
00226         delete Ey;
00227         //delete El;
00228         delete Elx;
00229         delete Ely;
00230         //delete Ell;
00231         delete Ellx;
00232         delete Elly;
00233         return imList;
00234 }

Here is the call graph for this function:


Generated on Fri Mar 19 11:25:13 2010 for ImpalaSrc by  doxygen 1.5.1