通过旋转机械臂,将机械臂上相机拍摄图像的任意点移动至图像中心的方法

计算原理

角度计算

  1. 相机CCD大小固定,即相机成像平面大小固定,相机视场角(FOV)仅由相机焦距F决定;

    • 因此,定焦相机的FOV大小固定,通过上图可以看出相机视场角的计算公式为:

    FOV = 2*atan(w/2f)

    • 注意,这里w/2f代表的是w/2除以f;
  2. 因此,要想获取图像上任意点(x0,x0)到图像中心的旋转角度,只需求出任意点在成像画面中与图像中心(x1,x2)在x、y方向上的距离差作为新的w即可,但需注意x轴方向的差对应的是y轴的旋转角度,其余类似,如下式:

α_y=2*atan((x_1-x_0)/2f_x) α_x=2*atan((y_1-y_0)/2f_x)

机械臂位姿计算

  1. 已知两个旋转角度,将其转化为旋转矩阵R_x、R_y;
  2. 左乘机械臂当前位姿矩阵,即可获取机械臂到达中心点的机械臂位姿即:

targetPose = currPose * R_x * R_y

相关推荐
qq_4798754316 分钟前
Linux time function in C/C++【2】
linux·c语言·c++
一个不知名程序员www1 小时前
算法学习入门---前缀和(C++)
c++·算法
ol木子李lo1 小时前
Doxygen入门指南:从注释到自动文档
c语言·c++·windows·编辑器·visual studio code·visual studio·doxygen
夜晚中的人海2 小时前
【C++】分治-快速排序算法习题
开发语言·c++·排序算法
Aevget3 小时前
QtitanNavigation助力能源数字化转型:打造清晰可控的系统导航体验
c++·qt·嵌入式·能源·界面控件·ui开发
百锦再3 小时前
第6章 结构体与方法
android·java·c++·python·rust·go
埃博拉酱3 小时前
将你的C++库发布到NuGet全攻略
c++·nuget
北冥湖畔的燕雀3 小时前
C++STL之vector
开发语言·c++
apocelipes4 小时前
C++23的out_ptr和inout_ptr
c++
敲上瘾4 小时前
Elasticsearch从入门到实践:核心概念到Kibana测试与C++客户端封装
大数据·linux·c++·elasticsearch·搜索引擎·全文检索