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

GaussDerivative2d.h

Go to the documentation of this file.
00001 #ifndef Impala_Core_Array_GaussDerivative2d_h
00002 #define Impala_Core_Array_GaussDerivative2d_h
00003 
00004 #include "Core/Array/MakeGaussian2d.h"
00005 #include "Core/Array/Pattern/PatGenConv2d.h"
00006 #include "Core/Array/Trait/BpoMul.h"
00007 #include "Core/Array/Trait/BpoAddAssign.h"
00008 
00009 namespace Impala
00010 {
00011 namespace Core
00012 {
00013 namespace Array
00014 {
00015 
00016 
00017 /*
00018     WARNING: jan-mark thinks it works only for 0th order and 2nd order mixed derivative
00019 */
00020 template<class DstArrayT, class SrcArrayT>
00021 inline void
00022 GaussDerivative2d(DstArrayT*& dst, SrcArrayT* src,
00023                     double sx, double sy, double phi, int der, double n)
00024 {
00025     Array2dScalarReal64* g = MakeGaussian2d(sx, sy, phi, der, n);
00026     Trait::BpoMul<Array2dScalarReal64, Array2dScalarReal64,
00027                   Array2dScalarReal64> bpo;
00028     Trait::BpoAddAssign<Array2dScalarReal64, Array2dScalarReal64> bpoAss;
00029     Pattern::PatGenConv2d(dst, src, g, bpo, bpoAss);
00030     delete g;
00031 }
00032 
00033 } // namespace Array
00034 } // namespace Core
00035 } // namespace Impala
00036 
00037 #endif

Generated on Fri Mar 19 09:30:46 2010 for ImpalaSrc by  doxygen 1.5.1