12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- 1. 算法接口
- /*
- * @brief 初始化
- *
- * @param[in] param 算法参数(json格式, 包含相机标定矩阵)
- * @return 错误码
- */
- std::tuple<int, std::string> initParam(const nlohmann::json& param); // param
-
- /*
- * @brief 计算一台相机点云,可并发
- *
- * @param[in] image_list 一台相机的图像
- * @param[out] cloud_points 点云
- * @return 错误码
- */
- std::tuple<int, std::string> calcCloud(const std::vector<std::shared_ptr<infra::Image>>& image_list, std::shared_ptr<infra::CloudPoint<double>>& cloud_points);
-
- /*
- * @brief 合并点云
- *
- * @param[in] cloud_points_list 相机id 和 相机对应点云
- * @param[out] cloud_points 四台相机合并后的点云
- * @return 错误码
- */
- std::tuple<int, std::string> mergeCloud(const std::map<int32_t, std::shared_ptr<infra::CloudPoint<double>>>& cloud_points_list,
- std::shared_ptr<infra::CloudPoint<double>>& cloud_points);
-
- /*
- * @brief 翘曲测量
- *
- * @param[in] cloud_points 合并后的点云
- * @param[in] filterMM 过滤尺寸
- * @param[out] result 测量结果(json格式),如result
- * @return 错误码
- */
- std::tuple<int, std::string> warpage(const std::shared_ptr<infra::CloudPoint<double>>& cloud_points, int32_t filterMM, nlohmann::json& result);
-
-
- 2. 测量结果
- result:
- {
- "x" :
- {
- "height":[0.1,0.2,...], // 预计4000个
- "bow" : 0.1,
- "warpage" : 0.1
- },
- "y" :
- {
- "height":[0.1,0.2,...],
- "bow" : 0.1,
- "warpage" : 0.1
- }
- "max_bow" :
- {
- "angle":0.1, // 弧度
- "height":[0.1,0.2,...],
- "max_bow" : 0.1
- },
- "max_warpage" :
- {
- "angle":0.1, // 弧度
- "height":[0.1,0.2,...],
- "max_warpage" : 0.1
- }
- }
-
- 3. 算法错误码
- 待定
|