手眼标定之3D知识2020-05-01 14:23:37
一.3D坐标摄像机坐标系中的点P的坐标(由字母c表示)世界坐标系(用字母w表示)将写成:二.平移(1)3D坐标点的平移(2)3D坐标系的平移三.旋转(1)3D坐标点的旋转第一次旋转:第二次旋转:(2)3D坐标系的旋转与点相比,坐标系相对于其他坐标系具有方位。 坐标系旋转时,此方向会改变;坐标系的位置可以直接用平移矢量表示,方向包含在旋转矩阵中;--------------------- 作者:hackpig来源:www.skcircle.com版权声明:本文为博主原创文章,转
标定板的选择主要从四个方面入手,分别是精度、视场、材质、光源,下面分别叙述。一、精度:标定板的图案尺寸偏差标定板的精度主要加工工艺来决定,主要有如下三类:光刻工艺(精度3um内):高精度光刻机、光学镀膜机等进口加工设备,常用加工材料 有玻璃和陶瓷两种,制作图案可达lm,常用(玻璃)加工尺寸一般为500mm左右;丝印工艺(精度20-50um):高精密丝印机、精密丝网板等加工设备,常用加工材料有 玻璃、陶瓷、金属板、复合板等,制作范围可达2m,常用加工范围300-1000mm;激光打标(精度20-1
最近在做的项目有用到手眼标定,是关于两个康耐视工业相机和爱普生SCARA机器人之间的手眼标定,相机是固定安装,属于Eye-to-hand固定方式。考虑到halcon中用于标定的算子和实例都比较丰富,并且halcon作为一款商用的视觉与图像处理软件,其可靠性、精度等都是opencv所不能比的。此次所用到的标定实例是calibrate_hand_eye_scara_stationary_cam,在研究这个实例的过程中发现,整个手眼标定的过程大致可以分为两个大的步骤,首先是粗略求解,然后是
*该例程说明了怎样给SCARA机器人做手眼标定。这种情况下,相机相对与机械臂而言是固定安装的,所以能探测到机械臂的整个工作控件范围。用于标定的标定板是固定安装在机械臂的末端工具上。最后,标定结果和用于确定要被抓取的物体的位置的数据都保存到了本地文件中。在例程pick_and_place_scara_stationary_cam.hdev程序中有被使用到。*提供校准板的描述文件和先前校准过的摄像机的摄像机参数*首先是要提供标定板的描述文件和相机的内参,这两个步骤需要事先进行操作完成CalibObj
需要指出的是,HALCON中有两种标定板,create_caltab函数创建的标定板如下图所示它是一种蜂窝标定板。用默认的参数生成这种标定板的代码如下:create_caltab (27, 31, 0.00258065, [13,6,6,20,20], [15,6,24,6,24],
'light_on_dark', 'calplate.cpd', 'calplate.ps
(一)实验器材准备说明(1)相机型号:MV-EM500M这个相机品牌是维视智造,500万像素,GigE接口。通过官方网站,查到它的基础信息如下:(2)标定板实验型号: HG-40-9X9-4.0-2.0-3.0这型号中的HG不知道啥意思, 40指的是矩形外边之间长宽是40mm。9X9指的是里面的圆形数量是9*9个。后面的4.0-2.0-3.0不知道啥意思。不过这个标定板的厚度是3mm。勇哥这块标定板是玻璃光刻的,精度比较高,精度可为+-1um。具体的标定板的选型知识请参考勇哥的另一篇贴子介绍《h
1、摄像机外参:决定摄像机坐标与世界坐标系之间相对位置关系。其中Pw为世界坐标,Pc是摄像机坐标,他们之间关系为Pc = RPw + T式中,T= (Tx,Ty,Tz),是平移向量,R = R(α,β,γ)是旋转矩阵,分别是绕摄像机坐标系z轴旋转角度为γ,绕y轴旋转角度为β,绕x轴旋转角度为α(也可以从左像右看把它理解为先绕x轴旋转α,再绕旋转后的坐标系的y轴旋转β,最后绕再次旋转后的z轴旋转γ)。6个参数组成(α,β,γ,Tx,Ty,Tz)为摄像机外参。绕z轴的旋转矩阵,若
StartCamParam (input_control)数阵-> (实数/整数)Camer type 为:'area_scan_division''area_scan_polynomial,,area_scan_telecentric_division,,area_scan_telecentric_polynomiar'line_scan'(类型不同,参数不同)相机内部参数的初始值。元素数量:((StartCamParam==8)11(StartC
摄像机分为两种,一种是面扫描摄像机(Area Scan Camera),一种是线扫描摄像机(Line Scan Camera)。准确来说,叫摄像机系统比较正确。所谓的面扫描摄像系统是指可以通过单纯曝光取得面积影像,而线扫描摄像机,必须利用运动速度才能取得影像。两种不同的摄像系统由于成像的过程有区别,所以标定的过程也有区别,这里仅讨论面扫描摄像系统。流程如下: 1、初始摄像机参数:startCamPar:=[f,k,Sx,Sy,Cx,Cy,NumCol,NumRow] f 焦距
勇哥先放上代码,有空时再研究一下。* Attention:
* This program reads the interior camera parameters from the file
* 'camera_parameters.dat', which, e.g., could be generated&