root
2025-04-25 b471af16b957258f621c1ad7c73f2416ef1de78d
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#pragma once
#include <iostream>
#include <opencv2/opencv.hpp>
#include <ctime>
#include <thread>
#include <stdio.h>
#include <cuda_runtime.h>
#include <locale>
#include <codecvt>
#include <json/json.h>
#include <assert.h>
#include <fstream>
#include <string>
 
#include "base/CvxText.h"
#include "deploy/yolov5.hpp"//目标识别
#include "deploy/DMJC.h"//堆煤检测
#include "deploy/run.h"
#include "deploy/cover.h"
#include "deploy/camera.h"
#include "deploy/belt.hpp"
#include "deploy/clasi.h"
 
using namespace cv;
using namespace std;
using namespace Json;
 
class PreProcessModel
{
public:
    //cv::Mat 
    //void drawTextWithBackground(Mat& image, const string& text, int txalign, const Point& orgxy, const Point& orgwh, Scalar bgColor);
    vector<double> fnImRecProByModelHAT(Mat& imMat, HAT& hat, std::vector<cv::Point> vertices, std::vector<cv::Point> workvertices);//人员闯入检测
    vector<double> fnImRecProByModelHAT1(Mat& imMat, HAT& hat, std::vector<cv::Point> vertices, std::vector<cv::Point> workvertices,std::vector<std::vector<int>> c_list,std::string lable_title,std::string color_result);
    vector<double> fnImRecProByModelHATHC(Mat& imMat, HAT& hat, std::vector<cv::Point> vertices);//猴车检查
    vector<double> fnImRecProByModelHATSleep(Mat& imMat, HAT& hat);//睡岗
    vector<double> fnImRecProByModelFire(Mat& imMat, HAT& hat);//烟火
    
    vector<double> fnImRecProByModelBeltJC(Mat& imMat, HAT& hat, std::vector<cv::Point> vertices);//皮带检测
    vector<double> fnImRecProByModelBeltJC2(Mat& imMat, BELT& belt, std::vector<cv::Point> leftvertices, std::vector<cv::Point> rightvertices, std::vector<cv::Point> vertices);//皮带跑偏,异物检测
 
    double fnImRecProByModelDM(Mat& imMat, DMJC& dm, std::vector<cv::Point> vertices);//堆煤检测
    double fnImRecProByModelTSJ(Mat& imMat, std::vector<cv::Mat>& imagesTsj, int& tsjCount, RUN& rTSJ,std::queue<int>& quTSJ, std::vector<cv::Point> vertices);//提升机检测
    double fnCameraCoverRec(Mat imMat,Cover cover);//摄像头遮挡检测
    double fnCameraMoveRec(Mat imMat, Camera cam);//摄像头移动检测
    double fnBeltMoveRec(Mat& imMat, std::vector<cv::Mat>& imagesBelt, int& beltCount, RUN& rTSJ, std::vector<cv::Point> vertices);//皮带运行状态
    vector<double> fnImRecProByModelWear(Mat& imMat,  HAT& hat, clasification& cfWear, std::vector<cv::Point> vertices);//人员穿戴检测
 
};