algoLib/sourceCode/binocularMarkCam_Export.h

40 lines
1.0 KiB
C
Raw Normal View History

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;
//<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);