-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathConfidenceCompute.h
More file actions
58 lines (51 loc) · 2.61 KB
/
ConfidenceCompute.h
File metadata and controls
58 lines (51 loc) · 2.61 KB
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
50
51
52
53
54
55
56
57
58
/*!
* \class ConfidenceCompute
*
* \brief ���Ŷ�ָ��ļ���
*
* \author liuqian
* \date һ�� 2018
*/
#ifndef __CONFIDENCECOMPUTE_H__
#define __CONFIDENCECOMPUTE_H__
#include "CommFunc.h"
#include "DataDeal.h"
class DataParameter;
struct RawImageParameter;
struct MicroImageParameter;
struct DisparityParameter;
struct FilterPatameter;
class ConfidenceCompute : public DataDeal
{
public:
enum class CircleDrawMode{
e_color, e_gray
};
ConfidenceCompute();
~ConfidenceCompute();
void confidenceMeasureCompute(const DataParameter &dataParameter, cv::Mat *&costVol); //���Ŷȼ��㿪ʼ
cv::Mat *getConfidentMask() const
{//��ȡ���Ŷ�mask
return m_pConfidentMask;
};
private:
void gradientMeasureCompute(const RawImageParameter &rawImageParameter, const MicroImageParameter µImageParameter,
const FilterPatameter &filterPatameter, cv::Mat &srcImg);//�ݶ�ָ�����
void confidentMeasureMMN(cv::Mat *&costVol, const RawImageParameter &rawImageParameter, const MicroImageParameter µImageParameter,
const DisparityParameter &disparityParameter, cv::Mat &srcImg);//����MMN�����Ŷ�ָ�����
void setConfidentMask(cv::Mat &confidentMat, std::string confidentMaskName, const RawImageParameter &rawImageParameter, const MicroImageParameter µImageParameter);//�������Ŷȵ�mask
void confidentCircleJudge(cv::Mat &confidentMat, cv::Mat &mask, const RawImageParameter &rawImageParameter,
const MicroImageParameter µImageParameter);
bool confidentCircleJudge(cv::Mat &confidentMat, int y, int x, const RawImageParameter &rawImageParameter,
const MicroImageParameter µImageParameter);
void drawConfidentCircle(cv::Mat *&costVol, cv::Mat &mask, const RawImageParameter &rawImageParameter,
const MicroImageParameter µImageParameter, const DisparityParameter &disparityParameter, cv::Mat &srcImg);
void lowTextureAreaPlot(const RawImageParameter &rawImageParameter, const MicroImageParameter µImageParameter,
const Mat &img_input, const Mat &mask, const string &picName, CircleDrawMode _circleDrawMode, bool _isOffset = false);
void drawCircle(Mat &img, const Point2d ¢erPos, CircleDrawMode _circleDrawMode);
void confidentMaskRepair(cv::Mat &confidentMat, const RawImageParameter &rawImageParameter, const MicroImageParameter µImageParameter);//���Ŷ�ͼ�����ݶ�Բ����
string m_folderPath; //�洢·��
cv::Mat *m_pGradientCircleMask; //�ݶ�mask
cv::Mat *m_pConfidentMask; //���Ŷ�mask
};
#endif