基于OpenCV库,封装的简易窗口显示类,代码如下:
#ifndef ___OPENCVWINDOW___
#define ___OPENCVWINDOW___
#include <vector>
#include <queue>
#include <memory>
#include <condition_variable>
#include <mutex>
#include <opencv2/opencv.hpp>
using namespace std::chrono_literals;
// Opencv数据结构体
typedef struct _tagOpencvData
{
int iChannel; // 通道号
uint8_t *pImgData; // 图片数据指针
int iWidth; // 图片宽度
int iHeight; // 图片高度
uint8_t *pDeleteData; // 要释放的内存地址,为空则不管
} OPENCV_DATA_T;
#define OPENCV_DATA_T_PTR std::shared_ptr<OPENCV_DATA_T>
/********************************************************************************
类名 : OpencvWindow
Description: Opencv窗口类,用来将多路图片数据在一个线程中用opencv来进行显示
Example: OpencvWindow opWnd
*******************************************************************************/
class OpencvWindow
{
public:
/**
* @brief 单例方法,用来获取一个OpencvWindow的单例对象
*
* @ret