IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
AdaptiveThreshold2dImgLvl3.h
1 // AdaptiveThreshold2dImgLvl3.h:
3 // -----------------------------
4 //
14 
15 #ifndef __IPSDKIPLBINARIZATION_ADAPTIVETHRESHOLD2DIMGLVL3_H__
16 #define __IPSDKIPLBINARIZATION_ADAPTIVETHRESHOLD2DIMGLVL3_H__
17 
20 
21 // Attributes headers
22 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Kernel/InKnlXY.h>
23 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Strip/YStrip2d/InYStrip2d.h>
24 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Strip/YStrip2d/OutBinYStrip2d.h>
25 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Strip/YStrip2dWithKernel/InKnlYStrip2d.h>
26 #include <IPSDKBaseData/Pattern/OffsetXY.h>
27 
28 namespace ipsdk {
29 namespace imaproc {
30 namespace bin {
31 
34 
35 // declare processing algorithm
36 IPSDK_DECLARE_PROCESSING_ALGORITHM(IPSDKIPLBinarization, AdaptiveThreshold2dImg,
37  ipsdk::imaproc::matchSize(_pInKnlYStrip2d, _pOutBinYStrip2d),
38  (((ipsdk)(imaproc)(attr))(InKnlYStrip2d))
39  (((ipsdk)(imaproc)(attr))(InYStrip2d))
40  (((ipsdk)(imaproc)(attr))(InKnlXY))
41  (((ipsdk)(imaproc)(attr))(OutBinYStrip2d)))
42 
43  // implementation of image processing data identifier retrieval method
44  // for function selector usage
45  IPSDK_DECLARE_ALGORITHM_FUNCTION_SELECTOR(((STRIP)(InKnlYStrip2d)));
46 
47  // declaration of parsed data during processing
48  IPSDK_DECLARE_ALGORITHM_PARSED_DATA(((LINESTRIP)(InKnlYStrip2d))
49  ((LINESTRIP)(InYStrip2d))
50  ((LINESTRIP)(OutBinYStrip2d)));
51 
52 // methods
53 public:
54 
55 protected:
59 
61  template <typename BufType,
62  ipsdk::eInstructionSet::domain IS>
63  ipsdk::BoolResult genericProcessFunction(const ipsdk::processor::ProcessingInfo& info);
64 
65 // attributes
66 protected:
68  typedef std::vector<OffsetXY> OffsetColl;
69 
71  OffsetColl _offsetColl;
72 
74  typedef std::vector<ipReal32> CoefColl;
75 
77  CoefColl _coefColl;
78 
80  typedef boost::scoped_array<const void*> BufColl;
81 
83  BufColl _pBufColl;
84 
85 };
86 
89 
90 } // end of namespace bin
91 } // end of namespace imaproc
92 } // end of namespace ipsdk
93 
94 #endif // __IPSDKIPLBINARIZATION_ADAPTIVETHRESHOLD2DIMGLVL3_H__
ipsdk::core::ExecResult preProcess()
method called before processing
Definition of import/export macro for library.
#define IPSDK_DECLARE_PROCESSING_ALGORITHM(libraryName, algoName, RuleString, attributeSeq)
#define IPSDK_DECLARE_ALGORITHM_PARSED_DATA(dataSeq)
#define IPSDK_DECLARE_ALGORITHM_FUNCTION_SELECTOR(dataTypeSeq)