GrabBag/GrabBagApp/Presenter/Inc/DetectPresenter.h

65 lines
2.3 KiB
C
Raw Normal View History

#pragma once
#include <vector>
#include <memory>
#include <QString>
#include "SG_bagPositioning_Export.h"
#include "VZNL_Types.h"
#include "VrTimeUtils.h"
#include "VrError.h"
#include "VrLog.h"
#include "IVrConfig.h"
#include "LaserDataLoader.h"
#include "IYGrabBagStatus.h"
#include "PointCloudImageUtils.h"
#include "VrConvert.h"
#include "VrDateUtils.h"
class DetectPresenter
{
private:
/* data */
public:
DetectPresenter(/* args */);
~DetectPresenter();
int DetectBag( std::vector<SVzNL3DLaserLine>& detectionDataCache,
const SG_bagPositionParam& algoParam,
const SSG_planeCalibPara& cameraCalibParam,
const VrDebugParam& debugParam,
LaserDataLoader& dataLoader,
const double clibMatrix[16],
DetectionResult& detectionResult);
int DetectBag( std::vector<SVzNLXYZRGBDLaserLine>& detectionDataCache,
const SG_bagPositionParam& algoParam,
const SSG_planeCalibPara& cameraCalibParam,
const VrDebugParam& debugParam,
LaserDataLoader& dataLoader,
const double clibMatrix[16],
const SSG_hsvCmpParam& hsvCmpParam,
const RGB& rgbColorPattern,
const double frontColorTemplate[RGN_HIST_SIZE],
const double backColorTemplate[RGN_HIST_SIZE],
DetectionResult& detectionResult);
// 新增处理统一数据格式和项目类型的DetectBag函数
int DetectBag( int cameraIndex,
std::vector<std::pair<EVzResultDataType, SVzLaserLineData>>& laserLines,
ProjectType projectType,
const SG_bagPositionParam& algoParam,
const SSG_planeCalibPara& cameraCalibParam,
const VrDebugParam& debugParam,
LaserDataLoader& dataLoader,
const double clibMatrix[16],
const SSG_hsvCmpParam& hsvCmpParam,
const RGB& rgbColorPattern,
const double frontColorTemplate[RGN_HIST_SIZE],
const double backColorTemplate[RGN_HIST_SIZE],
DetectionResult& detectionResult);
};