File size: 595 Bytes
1bfe214
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#pragma once
#include <memory>
#include "opencv2/core.hpp"

namespace Ivs
{
struct TInputImageMeta
{
    cv::Mat matImage;
    std::vector<cv::Rect> vecObjRegions;
};

class ISequenceCompensator
{
    public:
        virtual ~ISequenceCompensator() = default;
        virtual void SetInputMeta(const TInputImageMeta& tInput) = 0;
        virtual void Process() = 0;
        virtual bool IsBackgroundRecover() = 0;
        virtual cv::Mat GetBackgroundImage() = 0;

};

typedef std::unique_ptr<ISequenceCompensator> PtrSequenceCompensator;
PtrSequenceCompensator CreateSequenceCompensator();
}