当前位置: 首页 > news >正文

做美团网这种网站赚钱吗龙岩天宫山电话

做美团网这种网站赚钱吗,龙岩天宫山电话,模具设计与制造,河北省建设信息中心网站在进行计算机视觉项目时#xff0c;我们经常需要处理相机位姿的变换。最近#xff0c;我在项目中遇到了一个看似简单但实际上颇具挑战性的问题#xff1a;从 OpenCV 的 cv::Mat 格式转换到 Eigen 库的格式。这个过程中遇到了一些问题#xff0c;但最终找到了一个稳健的解决… 在进行计算机视觉项目时我们经常需要处理相机位姿的变换。最近我在项目中遇到了一个看似简单但实际上颇具挑战性的问题从 OpenCV 的 cv::Mat 格式转换到 Eigen 库的格式。这个过程中遇到了一些问题但最终找到了一个稳健的解决方案。 问题描述 我们有两个表示相机位姿的 4x4 变换矩阵格式为 cv::Mat。目标是计算这两个位姿之间的变换并提取出平移向量。 初始尝试 最初我们尝试直接从 cv::Mat 中提取平移向量 Eigen::Vector3d transLast(mLastFrameTcw.atdouble(0, 3),mLastFrameTcw.atdouble(1, 3),mLastFrameTcw.atdouble(2, 3) ); Eigen::Vector3d transCurrent(mCurrentFrameTcw.atdouble(0, 3),mCurrentFrameTcw.atdouble(1, 3),mCurrentFrameTcw.atdouble(2, 3) ); TRANS_PRED transCurrent - transLast; 遇到的问题 针对简单的工程代码运行完全没有问题但是放到复杂工程里面代码就会输出莫名其妙的结果这种方法可能会导致错误原因如下 直接访问 cv::Mat 的元素可能不安全特别是当矩阵的存储格式不确定时。这种方法忽略了旋转部分的影响可能导致计算结果不准确。在某些情况下可能会出现索引错误或类型不匹配的问题。 改进的解决方案 经过多次尝试和改进我们最终采用了以下方法 // 直接相减 cv::Mat cv::Mat diff mCurrentFrameTcw - mLastFrameTcw;// 将 cv::Mat 转换为 Eigen 矩阵 Eigen::MatrixXd eigenDiff; cv::cv2eigen(diff, eigenDiff);// 从 eigenDiff 的最后一列提取前三个元素赋值给 TRANS_PRED TRANS_PRED eigenDiff.block3,1(0, eigenDiff.cols()-1); 这个解决方案的优点 使用 cv::Mat 的矩阵减法保持了原始数据的完整性。利用 OpenCV 提供的 cv2eigen 函数安全地将 cv::Mat 转换为 Eigen 矩阵。使用 Eigen 的 block 操作精确地提取所需的平移向量。 结论 在处理计算机视觉中的坐标变换问题时正确地在不同库如 OpenCV 和 Eigen之间转换数据格式是至关重要的。通过采用矩阵减法和适当的类型转换我们可以准确地计算相机位姿之间的变换。这个经验教训提醒我们在处理不同库之间的数据转换时要特别注意数据类型的一致性和操作的正确性。在future类似的问题中我们可以借鉴这种方法确保在不同数学库之间进行安全和准确的数据转换。 下面给出完整的代码注意下面的两个版本都可以用只是区分两个中哪个更鲁棒 #include iostream #include iomanip #include opencv2/core.hpp #include Eigen/Dense #include opencv2/core/eigen.hppvoid CalculateTransPred_Method1(const cv::Mat mLastFrameTcw, const cv::Mat mCurrentFrameTcw, Eigen::Vector3d TRANS_PRED) {std::cout Method 1: Direct extraction from cv::Mat std::endl;Eigen::Vector3d transLast(mLastFrameTcw.atdouble(0, 3),mLastFrameTcw.atdouble(1, 3),mLastFrameTcw.atdouble(2, 3));Eigen::Vector3d transCurrent(mCurrentFrameTcw.atdouble(0, 3),mCurrentFrameTcw.atdouble(1, 3),mCurrentFrameTcw.atdouble(2, 3));std::cout transLast: transLast.transpose() std::endl;std::cout transCurrent: transCurrent.transpose() std::endl;TRANS_PRED transCurrent - transLast;std::cout TRANS_PRED: TRANS_PRED.transpose() std::endl; }void CalculateTransPred_Method2(const cv::Mat mLastFrameTcw, const cv::Mat mCurrentFrameTcw, Eigen::Vector3d TRANS_PRED) {std::cout \nMethod 2: Using cv::Mat subtraction and Eigen conversion std::endl;cv::Mat diff mCurrentFrameTcw - mLastFrameTcw;Eigen::MatrixXd eigenDiff;cv::cv2eigen(diff, eigenDiff);std::cout Difference (diff) in Eigen::MatrixXd format: std::endl;std::cout eigenDiff std::endl;TRANS_PRED eigenDiff.block3,1(0, eigenDiff.cols()-1);std::cout TRANS_PRED: TRANS_PRED.transpose() std::endl; }int main() {cv::Mat mLastFrameTcw (cv::Mat_double(4, 4) -0.1642483, 0.094168551, -0.98191381, 0.90703607,0.0095526827, 0.99553794, 0.093877248, -0.038507219,0.98637277, 0.0060392693, -0.164415, -3.4207926,0, 0, 0, 1);cv::Mat mCurrentFrameTcw (cv::Mat_double(4, 4) -0.16892175, 0.093616515, -0.98117346, 0.92409742,0.009967736, 0.99559039, 0.093275994, -0.039425559,0.98557907, 0.0059762667, -0.16911002, -3.4853551,0, 0, 0, 1);Eigen::Vector3d TRANS_PRED;std::cout std::fixed std::setprecision(6);std::cout mLastFrame.mTcw: std::endl;std::cout mLastFrameTcw std::endl;std::cout \nmCurrentFrame.mTcw: std::endl;std::cout mCurrentFrameTcw std::endl;CalculateTransPred_Method1(mLastFrameTcw, mCurrentFrameTcw, TRANS_PRED);CalculateTransPred_Method2(mLastFrameTcw, mCurrentFrameTcw, TRANS_PRED);return 0; }
http://www.hkea.cn/news/14354033/

相关文章:

  • 前台网站开发技术工商网核名查询
  • 北京网站建设飞沐网页设计与网站建设完全学习手册
  • 网站托管费女装小说WordPress
  • portfolio做网站温湿度ui设计
  • 成都协会网站建设注册域名遵循什么原则
  • 购物网站开发教学视频word在线编辑
  • 体育论坛网站建设网络营销介绍
  • 网站设计与制作费用怎样做支付网站
  • 网站关键词表格下载企业网站的切片怎么做
  • wordpress电影网站wordpress评论输入框
  • 邯郸住房及城乡建设部网站wordpress 注册页修改
  • 衡阳微信网站开发深入了解网站建设
  • 网站建设公司 云智互联房地产市场发展趋势
  • 深圳网站建设深圳做网站可以用新建项目的方式吗
  • 西部数码网站管理助手 2008音乐网站是否可以做浅度链接
  • 抖音号出售网站网站备案被注销吗
  • 华强北设计网站建设深圳定制网站制作招聘网
  • 做直播网站用什么程序wordpress timeline 修改
  • 各大网站响应生态建设手机制作个人简历表格
  • 惠山做网站公司网站源码整站打包
  • 电商网站开发数据库设计wordpress完美商城
  • 青岛网站设计c2c代表性企业网站
  • 做网站到哪里接单怎么去推广一个产品
  • 沈阳网站建设发布html空白模板下载
  • 智库建设网站北京做网站开发公司
  • 公司做网站需要注意些什么问题吉林长春有做网站的吗
  • 小企业网站建设公司专业关键词优化平台
  • 老年公寓网站模板医疗器械网站备案前置审批事例
  • 网站建设咨询服务毕业设计代做网站推荐
  • 掌握cms建设网站实训报告医院网站开发多少钱