3.2 变换感兴趣点void remapPoints(vector<Point2f>& points) { for (int i = 0; i < points.size(); i++) {Mat_<double> oriPoint(3, 1);oriPoint(0, 0) = points[i].x;oriPoint(1, 0) = points[i].y;oriPoint(2, 0) = 1;Mat dstPoint = transMat * oriPoint;double a1 = dstPoint.at<double>(0, 0);double a2 = dstPoint.at<double>(1, 0);double a3 = dstPoint.at<double>(2, 0);points[i] = Point2f(a1 * 1.0 / a3, a2 * 1.0 / a3); } undistortPoints(points, points, intrinsic_matrix, distortion_coeffs, Mat(), intrinsic_matrix);}
经验总结扩展阅读
- C++ 函数重载解析策略
- 【番外篇】Rust环境搭建+基础开发入门+Rust与.NET6、C++的基础运算性能比较
- 【C++】spdlog光速入门,C++logger最简单最快的库
- 基于QT和C++实现的翻金币游戏
- 【C++】从零开始的CS:GO逆向分析3——写出一个透视
- C++ 使用栈求解中缀、后缀表达式的值
- <三>从编译器角度理解C++代码编译和链接原理
- windows C++ 异常调用栈简析
- Java Style的C++容器流式处理类
- C++ 右值引用与一级指针