algoLib/sourceCode/planeLocalization_Export.h
jerryzeng a29a6c005c planeLocalization
version 1.0.0 : base version release to customer
2026-07-17 17:05:44 +08:00

45 lines
1.4 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
#include "SG_algo_Export.h"
#include <vector>
#define _OUTPUT_DEBUG_DATA 1
typedef struct
{
double distance; //距离停机点距离
double deviation; //偏离引导线距离
double dirAngle_deg; //前进角, 以度为单位
SVzNL3DPoint nosePoint;
SVzNL3DPoint axis;
}SSX_planeInfo;
typedef struct
{
SVzNL3DPoint parkingPoint; //停机点(需经过地面调平处理)
SVzNL3DPoint guideLinePoint; //停机引导线上点需经过地面调平处理用于确定引导线方向。方向为从停机点到引导线上点的连线。距离停机点20m以上
double guidingRange; //飞机引导范围, 以停机点为基准。超出此范围的目标不被处理
double parkingRange; //飞机距离引导线距离,用于过滤无效目标, 以引导线为基准
double distFromNoseToWheel; //停机点为轮子地点,此参数用于计算机鼻停机位置
}SSX_planeParkingParam;
//读版本号
SG_APISHARED_EXPORT const char* wd_PlaneLocalizationVersion(void);
//相机水平安装计算地面调平参数。。
//相机Z轴基本平行地面时需要以地面为参照将相机调水平
//旋转矩阵为调平参数,即将平面法向调整为垂直向量的参数
SG_APISHARED_EXPORT SSG_planeCalibPara wd_getGroundCalibPara(
std::vector< std::vector<SVzNL3DPosition>>& scanLines);
//飞机姿态计算
SG_APISHARED_EXPORT SSX_planeInfo wd_planeLocalization(
std::vector< std::vector<SVzNL3DPosition>>& scanLines,
const SSG_planeCalibPara groundCalibParam,
const SSX_planeParkingParam parkingParam,
const SSG_treeGrowParam growParam,
#if _OUTPUT_DEBUG_DATA
std::vector< std::vector<SVzNL3DPosition>>& debugData,
#endif
int* errCode);