algoLib/sourceCode/binocularMarkCam_Export.h
2025-12-05 23:08:46 +08:00

47 lines
1.2 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#pragma once
#if defined(SG_API_LIBRARY)
# define WD_APISHARED_EXPORT __declspec(dllexport)
#else
# define WD_APISHARED_EXPORT __declspec(dllimport)
#endif
#include "SG_baseDataType.h"
#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数量
int boardIdInterval; //每块Mark的charuco码的间隔。比如第一块从0开始第二块从8开始间隔为8
int boardChaucoIDNum; //每块Mark的charuco码的数量。对于3x3的charuco, 二维码的个数为4
}SWD_BQ_MarkBoardInfo;
//读版本号
WD_APISHARED_EXPORT const char* wd_charuco3DMarkVersion(void);
//提取查科Mark3D信息
WD_APISHARED_EXPORT void wd_BQ_getCharuco3DMark(
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);