2025-12-05 23:08:46 +08:00
|
|
|
|
#pragma once
|
|
|
|
|
|
|
2025-12-06 00:11:43 +08:00
|
|
|
|
#include "SG_algo_Export.h"
|
2025-12-05 23:08:46 +08:00
|
|
|
|
#include <vector>
|
|
|
|
|
|
#include <opencv2/opencv.hpp>
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
|
|
|
|
{
|
|
|
|
|
|
cv::Size patternSize; //3x3 mark
|
|
|
|
|
|
float checkerSize; //60mm
|
|
|
|
|
|
float markerSize; //45mm
|
|
|
|
|
|
int dictType; //1: DICT_6x6
|
|
|
|
|
|
}SWD_BQ_CharucoMarkInfo;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
|
|
|
|
{
|
|
|
|
|
|
int totalBoardNum; //mark<72><6B><EFBFBD><EFBFBD>
|
|
|
|
|
|
int boardIdInterval; //ÿ<><C3BF>Mark<72><6B>charuco<63><6F><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>0<EFBFBD><30>ʼ<EFBFBD><CABC><EFBFBD>ڶ<EFBFBD><DAB6><EFBFBD><EFBFBD><EFBFBD>8<EFBFBD><38>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ8
|
|
|
|
|
|
int boardChaucoIDNum; //ÿ<><C3BF>Mark<72><6B>charuco<63><6F><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3x3<78><33>charuco, <20><>ά<EFBFBD><CEAC><EFBFBD>ĸ<EFBFBD><C4B8><EFBFBD>Ϊ4
|
|
|
|
|
|
}SWD_BQ_MarkBoardInfo;
|
2025-12-06 00:24:55 +08:00
|
|
|
|
|
2025-12-05 23:08:46 +08:00
|
|
|
|
//<2F><><EFBFBD>汾<EFBFBD><E6B1BE>
|
2025-12-06 00:11:43 +08:00
|
|
|
|
SG_APISHARED_EXPORT const char* wd_charuco3DMarkVersion(void);
|
2025-12-05 23:08:46 +08:00
|
|
|
|
|
|
|
|
|
|
//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>Mark3D<33><44>Ϣ
|
2025-12-06 00:11:43 +08:00
|
|
|
|
SG_APISHARED_EXPORT void wd_BQ_getCharuco3DMark(
|
2025-12-05 23:08:46 +08:00
|
|
|
|
cv::Mat& leftImage,
|
|
|
|
|
|
cv::Mat& rightImage,
|
|
|
|
|
|
cv::Mat& cameraMatrixL,
|
|
|
|
|
|
cv::Mat& distCoeffsL,
|
|
|
|
|
|
cv::Mat& cameraMatrixR,
|
|
|
|
|
|
cv::Mat& distCoeffsR,
|
|
|
|
|
|
cv::Mat& R1,
|
|
|
|
|
|
cv::Mat& R2,
|
|
|
|
|
|
cv::Mat& P1,
|
|
|
|
|
|
cv::Mat& P2,
|
|
|
|
|
|
cv::Mat& Q,
|
|
|
|
|
|
SWD_BQ_CharucoMarkInfo markInfo,
|
|
|
|
|
|
SWD_BQ_MarkBoardInfo boardInfo,
|
|
|
|
|
|
double disparityOffset,
|
|
|
|
|
|
std::vector<SWD_charuco3DMark>& marks);
|