- 博客(11)
- 收藏
- 关注
原创 根据单应矩阵H,实现2d点-->3d点的映射(C++ OpenCV)
【代码】根据单应矩阵H,实现2d点-->3d点的映射(C++ OpenCV)
2023-08-14 23:36:41
178
原创 关于使用g2o实现自己的多元边(BaseMultiEdge)时出现的错误。
我参考了g2o\types\slam3d_addons\edge_se3_calib.cpp里的多元边类的实现方法,发现需要在该类的构造函数中,调用resize()函数,三元边就是resize(3),即可解决。直观理解就是vector容器越界,因为没有给它进行resize();
2023-07-28 16:09:49
265
3
原创 Eigen基础操作
在Eigen中,所有矩阵和向量都是Matrix模板类的对象。向量只是矩阵的一种特殊情况,具有 1 行或 1 列。1、矩阵声明 //double类型2x3固定矩阵,编译时行列数已知 Eigen::Matrix<double, 2, 3> A; //double类型3x3矩阵 Eigen::Matrix3d A; //double类型3维向量 Eigen::Vector3d vec; //动态大小矩阵,编译时行列数未知 Eigen::Matrix<double, E
2021-11-05 22:31:24
2225
原创 OpenCV矩阵和Eigen矩阵的相互转换
包含头文件:#include <Eigen/Dense>#include <opencv2/core/eigen.hpp>#include "opencv2/opencv.hpp"相关函数:cv::cv2eigen();cv::eigen2cv();这两个函数都要输入两个参数,第一个参数为输入的矩阵,第二个参数为输出的矩阵。...
2021-11-05 14:36:21
2164
原创 Ax=0超定方程的最小二乘解(基于OpenCV、基于Eigen的SVD分解)
原理:Ax=0的超定最小二乘解为最小奇异值对应的右奇异向量。SVD分解: A = U · Σ · VtOpenCV版代码实践: cv::Mat w, u, vt; cv::SVD::compute(matA, w, u, vt);注意:代码求出的是右奇异矩阵的转置,因此其最小二乘解为vt.t()的最后一列。Eigen版代码实践: Eigen::JacobiSVD<Eigen::MatrixXd> svd(A, Eigen::ComputeThinU | Eige
2021-11-05 11:39:01
2159
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人