单目相机的标定(matlab)

实验原理

        

        从世界坐标系变换到中心在相机光学中心的坐标系统,其变换参数称为相机的外部参数,也叫相机的位姿(位置和姿态)。从相机坐标系统变换到计算机图像坐标系统的变换参数称为相机内参,即相机的自身参数。

        相机外参需要标定的参数有:相机平移参数Tx、Ty、Tz,相机的旋转参数yaw、pitch、roll。相机内参需要标定的参数有:焦距λ、失真系数k、图像原点的计算机坐标Om和On。

        对已知格子大小的棋盘格图片进行多角度、多位置拍摄后,可以获得已知空间坐标点在图像坐标系下的坐标,进而可以解算相机的位姿变换矩阵和成像变换矩阵,也就是相机的外参和内参。

实验步骤

a、制作标定板。

  1. 打印标定板。将其贴在纸盒上,使其可以直立放置。
  2. 绘制10x10的网格,网格大小设置好,比如20mm。(下面是标定板的制作)https://blog.csdn.net/jsxyhelu2015/article/details/108251421

 b、用摄像头(我用的手机)对标定板进行拍摄

  1. 打开手机相机,专业模式
  2. 选择广角镜头,没有广角镜头的选择普通镜头
  3. 对标定板进行拍摄,尽量多个角度且尽量占满图像的不同位置

    4.图片命名要求有一致的前缀,比如Img01、Img02……等。

c、下载安装相机标定工具包

    1. 下载安装相机标定工具包
      1. 下载地址(该地址可能不能用了,反正我没找到,我在其他地方找到了一份链接:https://pan.baidu.com/s/1FdN1Roc_sqDVs2AFqtQjpg 
        提取码:dalf 
        --来自百度网盘超级会员V1的分享)
      2. http://www.vision.caltech.edu/bouguetj/calib_doc/download/index.html
      3. 解压后将其路径添加至Matlab
      4. 改变Matlab工作路径至你存放标定板拍摄图片的文件夹。
      5. Matlab命令行键入calib_gui,选择标准模式
      6. 选择Image names,输入图片前缀。随后选择Read images
      7. 单击“Extract grid corners”提取角点, wintx winty使用默认即可,随后选择自动格子计数(默认回车即可)
      8. 会弹出第一幅图片让你用鼠标选定四个原点
      9. 随后dx,dy要写你真是棋盘格上的真实宽和高,比如前面设置的20mm。
      10. 然后处完所有读入图片后,点击工具箱上Calibration,然后会出现内参数结果。

       

      最终显示的相机内参结果如下图所示:

      此时可见像素的误差较大,可以通过工具的误差分析功能来可视化分析误差,如下图所示:

      之后使用工具的重标定功能(“Recomp.corners”)对特征点重新标定之后,可见误差有所减小,如下图所示:

      此外,还可以使用工具的“Show Extrinsic”功能,可视化显示相机与标定靶之间的关系如果自动找角点的位置不准确,如何处理?

  • 5
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
相机标定是通过拍摄一系列不同位置、角度和姿态的标定图片,使用Matlab自带的标定工具进行相机标定的过程。以下是单目相机标定的主要步骤: 1. 准备标定图片:拍摄10~20张不同位置、角度和姿态的标定图片。 2. 打开Matlab并打开相机标定工具:在Matlab中,使用相机标定工具进行标定。你可以通过在命令行窗口输入`cameraCalibrator`来打开该工具。 3. 加载标定图片:将你拍摄的所有标定图片加载到相机标定工具中。 4. 输入标定板格子尺寸:输入你拍摄标定板的每个格子的尺寸大小,以便相机标定工具进行计算。 5. 标定过程:点击工具界面上的“Calibrate”按钮,进行相机标定过程。工具会自动剔除不符合要求的图片,并计算相机的内参矩阵和径向畸变系数。 6. 查看标定结果:标定完成后,你可以查看得到的相机内参矩阵和径向畸变系数。你可以在命令行窗口分别输入`cameraParams.IntrinsicMatrix`和`cameraParams.RadialDistortion`来获取这些参数。 通过以上步骤,你就可以使用Matlab单目相机进行标定,并获得相机的内参矩阵和径向畸变系数。这些参数对于后续的相机校正和图像处理任务非常重要。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [(一)Matlab工具箱标定单目相机(超详细)](https://blog.csdn.net/weixin_43159148/article/details/97760135)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [单目相机标定(使用Matlab)](https://blog.csdn.net/qq_45445740/article/details/117855768)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值