#pragma once #include "SG_algo_Export.h" #include #define _OUTPUT_DEBUG_DATA 1 typedef struct { SVzNL3DPoint wheelArchPos; SVzNL3DPoint wheelUpPos; SVzNL3DPoint wheelDownPos; SVzNL3DPoint arcLine[2]; SVzNL3DPoint upLine[2]; SVzNL3DPoint downLine[2]; SVzNL3DPoint centerLine[2]; double archToCenterHeigth; double archToGroundHeigth; }WD_wheelArchInfo; //读版本号 SG_APISHARED_EXPORT const char* wd_wheelArchHeigthMeasureVersion(void); //相机水平安装计算地面调平参数。。 //相机Z轴基本平行地面时,需要以地面为参照,将相机调水平 //旋转矩阵为调平参数,即将平面法向调整为垂直向量的参数 SG_APISHARED_EXPORT SSG_planeCalibPara wd_horizonCamera_getGroundCalibPara( std::vector< std::vector>& scanLines); //相机水平时姿态调平,并去除地面 SG_APISHARED_EXPORT void wd_horizonCamera_lineDataR( std::vector< SVzNL3DPosition>& a_line, const double* camPoseR, double groundH); //提取工件角点及定位长度信息 SG_APISHARED_EXPORT WD_wheelArchInfo wd_wheelArchHeigthMeasure( std::vector< std::vector>& scanLines, const SSG_cornerParam cornerPara, const SSG_lineSegParam lineSegPara, const SSG_outlierFilterParam filterParam, const SSG_treeGrowParam growParam, const SSG_planeCalibPara groundCalibPara, int* errCode);