FLImaging 6.5.16.1
ValidatorForSuperResolution.h
1#pragma once
2
3#if _MSC_VER >= 1900 && defined(_M_X64)
4
5#include "ValidatorBase.h"
6#include "Tensor.h"
7
8namespace FLImaging
9{
10 namespace AI
11 {
12 template <typename T>
13 class FL_EXPORT CValidatorForSuperResolution : public CValidatorBase<T>
14 {
15
16 public:
17 CValidatorForSuperResolution();
18 CValidatorForSuperResolution(const CValidatorForSuperResolution<T>& validator);
19 CValidatorForSuperResolution(const CValidatorForSuperResolution<T>* pValidator);
20 virtual ~CValidatorForSuperResolution();
21
22 const CValidatorForSuperResolution<T>& operator=(const CValidatorForSuperResolution<T>& validator);
23
24 virtual const CResult Assign(const CValidatorForSuperResolution<T>& validator);
25 virtual const CResult Assign(const CValidatorForSuperResolution<T>* pValidator);
26
27 virtual T Validate(int32_t* pI32IterationFeedback = nullptr) override;
28
29 const CTensor<T>& GetPSNRTensor() const;
30 const CTensor<T>& GetSSIMTensor() const;
31
32 DeclareGetClassType();
33 SupportToDuplicateObject(CValidatorForSuperResolution<T>, *this);
34 protected:
35 CTensor<T> m_tsrPSNR;
36 CTensor<T> m_tsrSSIM;
37
38 private:
39 template<typename T>
40 friend class COptimizer;
41 };
42
43 typedef CValidatorForSuperResolution<float> CValidatorForSuperResolutionF;
44 typedef CValidatorForSuperResolution<double> CValidatorForSuperResolutionD;
45 }
46}
47
48#endif
@ Assign
Set the value of CGUIPropertyItemView3DFigure to the specified figure.