IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
ExtractGreySignedFeatures3dLvl2.h
1 // ExtractGreySignedFeatures3dLvl2.h:
3 // ----------------------------------
4 //
14 
15 #ifndef __IPSDKIPLREGISTRATION_EXTRACTGREYSIGNEDFEATURES3DLVL2_H__
16 #define __IPSDKIPLREGISTRATION_EXTRACTGREYSIGNEDFEATURES3DLVL2_H__
17 
20 
21 // Attributes headers
22 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/SubImage/Input/3d/InSubImg3d.h>
23 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Value/InSignatureScaleFactor.h>
24 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Value/InGradStdDev.h>
25 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/DataItem/InGaussianCoverage.h>
26 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/DataItem/InCornerDetectionParams.h>
27 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Value/InNbFeatures.h>
28 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Value/InFeaturesDistX.h>
29 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Value/InFeaturesDistY.h>
30 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Value/InFeaturesDistZ.h>
31 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Enumerate/InInterpolationPolicy.h>
32 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/DataItem/InSamplingBallInfo.h>
33 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Image/Output/Working/OutWk1Img.h>
34 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Image/Output/Working/OutWk2Img.h>
35 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Image/Output/Working/OutWk3Img.h>
36 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Image/Output/Working/OutWk4Img.h>
37 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Image/Output/Working/OutWk5Img.h>
38 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Image/Output/Working/OutWk6Img.h>
39 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Image/Output/Working/OutWk7Img.h>
40 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/DataItem/OutGreySignatures3d.h>
41 #include <IPSDKIPL/IPSDKIPLAttributes/DataItem/Voxels3d.h>
42 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/DataItem/InOutEigen3dDataColl.h>
43 
44 namespace ipsdk {
45 namespace imaproc {
46 namespace registration {
47 
50 
51 // declare processor class
52 IPSDK_DECLARE_LVL2_PROCESSOR(REP_ASYNC1, IPSDKIPLRegistration, ExtractGreySignedFeatures3d,
53  ipsdk::imaproc::matchSize(_pOutWk1Img, _pInSubImg3d) &&
54  ipsdk::imaproc::matchSizeAndType(_pOutWk1Img, _pOutWk2Img, _pOutWk3Img),
55  (((ipsdk)(imaproc)(attr))(InSubImg3d))
56  (((ipsdk)(imaproc)(attr))(InSignatureScaleFactor))
57  (((ipsdk)(imaproc)(attr))(InGradStdDev))
58  (((ipsdk)(imaproc)(attr))(InGaussianCoverage))
59  (((ipsdk)(imaproc)(attr))(InCornerDetectionParams))
60  (((ipsdk)(imaproc)(attr))(InNbFeatures))
61  (((ipsdk)(imaproc)(attr))(InFeaturesDistX))
62  (((ipsdk)(imaproc)(attr))(InFeaturesDistY))
63  (((ipsdk)(imaproc)(attr))(InFeaturesDistZ))
64  (((ipsdk)(imaproc)(attr))(InInterpolationPolicy))
65  (((ipsdk)(imaproc)(attr))(InSamplingBallInfo))
66  (((ipsdk)(imaproc)(attr))(OutWk1Img))
67  (((ipsdk)(imaproc)(attr))(OutWk2Img))
68  (((ipsdk)(imaproc)(attr))(OutWk3Img))
69  (((ipsdk)(imaproc)(attr))(OutWk4Img))
70  (((ipsdk)(imaproc)(attr))(OutWk5Img))
71  (((ipsdk)(imaproc)(attr))(OutWk6Img))
72  (((ipsdk)(imaproc)(attr))(OutWk7Img))
73  (((ipsdk)(imaproc)(attr))(OutGreySignatures3d)))
74 
75 // methods
76 public:
77 
78 protected:
80  void clearIntermediateData();
81 
82 // attributes
83 protected:
85  attr::Voxels3dPtr _pVoxels3d;
86 
88  IPSDK_DECLARE_DYNAMIC_RESULT_COLL(attr::InOutEigen3dDataColl, Eigen3dDataCollMap);
89 };
90 
93 
94 } // end of namespace registration
95 } // end of namespace imaproc
96 } // end of namespace ipsdk
97 
98 #endif // __IPSDKIPLREGISTRATION_EXTRACTGREYSIGNEDFEATURES3DLVL2_H__
#define IPSDK_DECLARE_LVL2_PROCESSOR(ProcType, libraryName, algoName, RuleString, attributeSeq)
Definition of import/export macro for library.
boost::shared_ptr< ipsdk::imaproc::attr::Voxels3d > Voxels3dPtr
shared pointer to ipsdk::imaproc::attr::Voxels3d
Definition: Voxels3d.h:128
IPSDK_DECLARE_GPU_PROCESSING_ALGORITHM(IPSDKIPLFiltering, Convolution2dImg, ipsdk::imaproc::matchSize(_pInSubGpuImg, _pOutImg),(((ipsdk)(imaproc)(attr))(InSubGpuImg))(((ipsdk)(imaproc)(attr))(InKnlXY))(((ipsdk)(imaproc)(attr))(InNormalize))(((ipsdk)(imaproc)(attr))(InConvolBorder2d))(((ipsdk)(imaproc)(attr))(OutImg))) IPSDKCUDA_DECLARE_ALGORITHM_FUNCTION_SELECTOR((InSubGpuImg)(OutImg)) public void clearIntermediateData()
method called before processing
#define IPSDK_DECLARE_DYNAMIC_RESULT_COLL(AttributeType, CollType)