3#if _MSC_VER >= 1900 && defined(_M_X64)
5#include "TensorLabels.h"
16 class FL_EXPORT CTensorLabelsIsotropicRatio :
public CTensorLabels<T>
19 CTensorLabelsIsotropicRatio();
21 CTensorLabelsIsotropicRatio(
const CTensorLabelsIsotropicRatio<T>& tsr,
bool bDeepCopy =
true);
23 virtual ~CTensorLabelsIsotropicRatio();
25 virtual const CResult GetBinaryData(Base::CFLData& fldBinary,
bool bSuperClass =
false, int32_t i32Version = -1,
bool bDumpMode =
false)
const override;
26 virtual const CResult GetBinaryData(Base::CFLData* pFldBinary,
bool bSuperClass =
false, int32_t i32Version = -1,
bool bDumpMode =
false)
const override;
28 virtual const CResult SetBinaryData(
const Base::CFLData& fldBinary, int64_t* pI64Offset =
nullptr)
override;
29 virtual const CResult SetBinaryData(
const Base::CFLData* pFldBinary, int64_t* pI64Offset =
nullptr)
override;
31 virtual const CResult Create(
const std::vector<int64_t>& vctShape,
bool bOrderByDesc =
true,
bool bCudaAllocation =
true)
override;
32 virtual const CResult Create(
const std::initializer_list<int64_t>& ilShape,
bool bOrderByDesc =
true,
bool bCudaAllocation =
true)
override;
33 virtual const CResult Create(
const Base::CFLImage& fli,
bool bNormalize =
true, std::atomic<int32_t>* pI32CurrentPreparingTensorIndex =
nullptr, std::atomic<int32_t>* pI32CurrentPreparingLabelIndex =
nullptr,
bool *pBAbort =
nullptr);
34 virtual const CResult Create(
const Base::CFLImage* pFli,
bool bNormalize =
true, std::atomic<int32_t>* pI32CurrentPreparingTensorIndex =
nullptr, std::atomic<int32_t>* pI32CurrentPreparingLabelIndex =
nullptr,
bool *pBAbort =
nullptr);
35 virtual const CResult Create(
const Base::CFLImage& fli,
const std::vector<int64_t>& vctNewSize,
bool bNormalize,
const Base::CMultiVar<T>& mvBlankColor, ImageProcessing::EInterpolationMethod eInterpolationMethod, std::atomic<int32_t>* pI32CurrentPreparingTensorIndex,
bool* pBAbort);
36 virtual const CResult Create(
const Base::CFLImage* pFli,
const std::vector<int64_t>& vctNewSize,
bool bNormalize,
const Base::CMultiVar<T>& mvBlankColor, ImageProcessing::EInterpolationMethod eInterpolationMethod, std::atomic<int32_t>* pI32CurrentPreparingTensorIndex,
bool* pBAbort);
37 virtual const CResult Create(
const Base::CFLImage& fli,
const std::vector<int64_t>& vctNewSize,
bool bNormalize =
true,
const Base::CMultiVar<T>& mvBlankColor = 0., ImageProcessing::EInterpolationMethod eInterpolationMethod = ImageProcessing::EInterpolationMethod_Bilinear, std::atomic<int32_t>* pI32CurrentPreparingTensorIndex =
nullptr, std::atomic<int32_t>* pI32CurrentPreparingLabelIndex =
nullptr,
bool *pBAbort =
nullptr);
38 virtual const CResult Create(
const Base::CFLImage* pFli,
const std::vector<int64_t>& vctNewSize,
bool bNormalize =
true,
const Base::CMultiVar<T>& mvBlankColor = 0., ImageProcessing::EInterpolationMethod eInterpolationMethod = ImageProcessing::EInterpolationMethod_Bilinear, std::atomic<int32_t>* pI32CurrentPreparingTensorIndex =
nullptr, std::atomic<int32_t>* pI32CurrentPreparingLabelIndex =
nullptr,
bool *pBAbort =
nullptr);
40 virtual const CResult Create(
const wchar_t* pWcFilePath,
const std::vector<int64_t>& vctNewSize,
bool bNormalize =
true,
const Base::CMultiVar<T>& mvBlankColor = 0.,
bool bRecursive =
false, ImageProcessing::EInterpolationMethod eInterpolationMethod = ImageProcessing::EInterpolationMethod_Bilinear);
41 virtual const CResult Create(
const wchar_t* pWcFilePath,
const std::initializer_list<int64_t>& ilNewSize,
bool bNormalize =
true,
const Base::CMultiVar<T>& mvBlankColor = 0.,
bool bRecursive =
false, ImageProcessing::EInterpolationMethod eInterpolationMethod = ImageProcessing::EInterpolationMethod_Bilinear);
43 virtual const CResult
Assign(
const CTensor<T>* pTsr,
bool bDeepCopy =
true)
override;
45 virtual const CResult
Assign(
const CTensorLabelsIsotropicRatio<T>& tsr,
bool bDeepCopy =
true);
46 virtual const CResult
Assign(
const CTensorLabelsIsotropicRatio<T>* pTsr,
bool bDeepCopy =
true);
48 virtual const CResult
Append(
const Base::CFLImage* pFli,
bool bNormalize =
true,
const Base::CMultiVar<T>& mvBlankColor = 0., ImageProcessing::EInterpolationMethod eInterpolationMethod = ImageProcessing::EInterpolationMethod_Bilinear, std::atomic<int32_t>* pI32CurrentPreparingTensorIndex =
nullptr, std::atomic<int32_t>* pI32CurrentPreparingLabelIndex =
nullptr,
bool *pBAbort =
nullptr);
49 virtual const CResult
Append(
const wchar_t* pWcFilePath,
bool bRecursive =
false)
override;
51 virtual const CResult Initialize()
override;
52 virtual const CResult
Clear()
override;
54 virtual const CResult SetBatchParameters(
const CTensorImages<T>& tsr)
override;
55 virtual const CResult SetBatchParameters(
const CTensorLabelsIsotropicRatio<T>& tsr);
57 virtual const CResult SetAlignMode(EAlignMode eAlignMode = EAlignMode_Left);
58 virtual EAlignMode GetAlignMode();
60 virtual const CResult EnableAngleReflection(
bool bAngleReflection =
true);
61 virtual bool IsAngleReflectionEnable();
63 virtual const CResult EnableHorizental(
bool bHorizental =
true);
64 virtual bool IsHorizentalEnable();
66 virtual CTensorLabelsIsotropicRatio<T>& Evaluate()
override;
68 virtual CComputationalBase<T>* Clone()
const override;
69 virtual const CResult Swap(CComputationalBase<T>& cbSwap)
override;
71 virtual const CResult LoadTensor(
const std::vector<int64_t>& vctBatchIndices)
override;
74 DeclareGetClassType();
75 SupportToDuplicateObject(CTensorLabelsIsotropicRatio, *
this);
77 virtual const CResult DecodeLabels(
const wchar_t* pWcsImagePath, Base::CFLImage* pFli =
nullptr)
override;
78 virtual const CResult AddLabel(
const wchar_t* pWcsName, Foundation::CFLFigure* pFlfLabel,
bool bFile =
false);
80 virtual const CResult CropImage(
const Base::CFLImage* pFliSrc, Base::CFLImage* pFliDst, int64_t i64Width, int64_t i64Height,
const Base::CMultiVar<T>& mvBlankColor, std::atomic<int32_t>* pI32CurrentPreparingLabelIndex =
nullptr,
bool* pBAbort =
nullptr);
81 virtual const CResult CropImage(
const std::vector<int64_t>& vctBatchIndices,
const Base::CFLImage* pFliSrc, Base::CFLImage* pFliDst, int64_t i64Width, int64_t i64Height,
const Base::CMultiVar<T>& mvBlankColor, std::atomic<int32_t>* pI32CurrentPreparingLabelIndex =
nullptr,
bool* pBAbort =
nullptr);
82 virtual const CResult CropImageUnit(
const Base::CFLImage* pFliSrc, Base::CFLImage* pFliDst, int32_t i32FigureNum, int64_t i64Width, int64_t i64Height);
83 virtual const CResult CropImageUnit(
const Base::CFLImage* pFliSrc, Base::CFLImagePage* pFliDstPage, int32_t i32FigureNum, int64_t i64Width, int64_t i64Height);
87 std::vector<std::pair<int32_t, int32_t>>& m_vctPageFigureNum;
89 EAlignMode m_eAlignMode;
90 bool m_bAngleReflection;
92 bool m_bSequenceLabel;
95 friend class CValidationImageExtractorDL;
97 using CTensorImages<T>::SetTilingMode;
98 using CTensorImages<T>::GetTilingMode;
99 using CTensorImages<T>::SetResizeMethod;
100 using CTensorImages<T>::GetResizeMethod;
101 using CTensorImages<T>::EnableROIExtraction;
102 using CTensorImages<T>::IsROIExtractionEnabled;
104 DeclareGetSignletonObject(CTensorLabelsIsotropicRatio);
107 #define CCGFTensorLabelsIsotropicRatio(...) (*(new CTensorLabelsIsotropicRatio<float>(__VA_ARGS__)))
108 #define CCGDTensorLabelsIsotropicRatio(...) (*(new CTensorLabelsIsotropicRatio<double>(__VA_ARGS__)))
110 typedef CTensorLabelsIsotropicRatio<float> CTensorLabelsIsotropicRatioF;
111 typedef CTensorLabelsIsotropicRatio<double> CTensorLabelsIsotropicRatioD;
Definition AlgorithmAIBase.h:18
@ Assign
Set the value of CGUIPropertyItemView3DFigure to the specified figure.
Definition DefinitionsGUIView3D.h:3531
@ Clear
Clear all the figure objects.
Definition DefinitionsGUI.h:5083
@ Append
Load and append.
Definition DefinitionsGUI.h:58