15 #ifndef __IPSDKIPLSTATS_LAWTEXTURE2DIMGLVL1_H__ 16 #define __IPSDKIPLSTATS_LAWTEXTURE2DIMGLVL1_H__ 27 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/DataItem/InOptLawTextureKernel2dTypes.h> 28 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/DataItem/InOptLawTexPreProcParams.h> 29 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/DataItem/InOptLawTexPostProcParams.h> 30 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Image/Input/InSingleImg.h> 31 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Image/Output/OutRealImg.h> 32 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Image/Output/Working/Optional/OutOptWk1RealImg.h> 33 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Image/Output/Working/Optional/OutOptWk2RealImg.h> 34 #include <IPSDKIPL/IPSDKIPLAttributes/Attribute/Image/Output/Working/OutWk1RealImg.h> 43 struct LawTex2dConvolRes;
44 typedef boost::shared_ptr<LawTex2dConvolRes> LawTex2dConvolResPtr;
51 ipsdk::imaproc::matchSize(_pInSingleImg, _pOutWk1RealImg) &&
53 ipsdk::imaproc::matchSize(_pInSingleImg, _pOutOptWk1RealImg))) &&
55 ipsdk::imaproc::matchSize(_pInSingleImg, _pOutOptWk2RealImg))),
56 (((
ipsdk)(imaproc)(attr))(InSingleImg))
57 (((
ipsdk)(imaproc)(attr))(InOptLawTextureKernel2dTypes))
58 (((
ipsdk)(imaproc)(attr))(InOptLawTexPreProcParams))
59 (((
ipsdk)(imaproc)(attr))(InOptLawTexPostProcParams))
62 (((
ipsdk)(imaproc)(attr))(OutOptWk1RealImg))
63 (((
ipsdk)(imaproc)(attr))(OutOptWk2RealImg)))
69 typedef std::string FinalImageId;
70 typedef std::string WorkImageId;
71 typedef std::map<FinalImageId, std::pair<image::ImagePtr, WorkImageId> > MapImages;
77 const core::BasePriority& priority,
84 const attr::GaussianCoverage& gaussianCoverage,
85 const core::BasePriority& priority,
89 const core::BasePriority& priority,
93 const core::BasePriority& priority,
100 const core::BasePriority& priority,
105 const core::BasePriority& priority,
109 const std::string& kernelId,
110 const core::BasePriority& priority,
114 const core::BasePriority& priority,
118 const std::string& kernelId,
120 const core::BasePriority& priority,
128 const boost::shared_ptr<core::BaseAction>& pProcessor,
132 void build1DKernels();
137 image::ImagePtr takeGreatestAvailableElementInImagesMapWithKeyGreaterThan(
138 const WorkImageId&
id);
141 const FinalImageId& finalId,
142 const WorkImageId& workId);
147 void releaseImage(
const WorkImageId&
id);
148 bool doAllConvolsLeftStartWithSameLetter()
const;
151 std::map<char, KernelXYPtr> _mapKnlX;
152 std::map<char, KernelXYPtr> _mapKnlY;
154 MapImages _workImages;
155 std::map<std::string, LawTex2dConvolResPtr> _convolsToCompute;
160 WorkImageId _optWk1RealImgId;
161 WorkImageId _optWk2RealImgId;
171 #endif // __IPSDKIPLSTATS_LAWTEXTURE2DIMGLVL1_H__
ProcessingResult< eRetrievalResultType > RetrievalResult
#define IPSDK_DECLARE_LVL1_PROCESSOR(ProcType, libraryName, algoName, RuleString, attributeSeq)
boost::shared_ptr< BaseImage > ImagePtr
processor::OutputInitializerPtr duplicateInOut(const boost::weak_ptr< OutputAttributeType > &pOutputAttribute, const boost::weak_ptr< InputAttributeType > &pInputAttribute, const eImageInitializerStoragePolicy &storagePolicy=eImageInitializerStoragePolicy::eIISP_Inherit)
boost::enable_if_c< AttributeType::g_bOptional, RulePtr >::type ifIsSet(const boost::shared_ptr< AttributeType > &pAttribute, const RulePtr &pRuleTrue)
boost::shared_ptr< Border2dPolicy > Border2dPolicyPtr
processor::OutputInitializerPtr customOutput(const boost::weak_ptr< OutputAttributeType > &pOutputAttribute, const CustomImageInfoPtr &pCustomImageInfo)
Utility functions for Law's texture filter attribute output initialization management.
Definition of import/export macro for library.
boost::shared_ptr< KernelXY > KernelXYPtr
boost::shared_ptr< const BaseImage > ImageConstPtr
boost::shared_ptr< BaseActionProvider > ActionProviderPtr
IPSDKIPLSTATS_API CustomImageInfoPtr outputLawTexture2d(const ImageAttributeConstPtr &pInputImgAttribute, const boost::shared_ptr< attr::InOptLawTextureKernel2dTypes > &pInKernelTypesAttribute)
function allowing to create a Law's texture 2d filter output image initializer