相机标定工作总结与问题

第一阶段工作内容:

相机标定:
1.由于买专业标定板的申请没有通过,于是在网上下载标定板图片并打印
2.在不同角度拍摄了15张照片。由于相机标定板的小方格必须是正方形而打印时没有注意所以导致没张图片都没有完整检测到所有角点。
3.编写标定代码,开发环境为vscode+jupiter,开发语言为python。
4.检测标定效果


代码内容:

步骤:
1、 读取图片
2、 每张图片检测棋盘格角点
3、进一步检测亚像素角度
4、 循环上述步骤,直到每一张图片都检测完毕
5、标定


出现的问题与疑惑:

问题:
1、 以前使用C++标定相机时calibrateCamera的返回值代表了重投影误差,而如今使用python查看opencv python的官方文档发现cv2.calibrateCamera的第一个返回值为retval但是官网的描述该参数好像并不是原来C++的返回值。该返回值的具体含义还要以后探寻。
2、 标定相机时棋盘格角点的世界坐标系的坐标单位应该是毫米,以前使用C++标定时都是使用opencv自带的demo没有注意到这个问题。但是把单位换成厘米好像并不影响最后标定的相机内参的结果。而外参会发生变化。估计是对相机标定和针孔相机的原理还没有完全搞明白。
3、 通过projectPoints计算投影误差发现无论是增加照片还是减少照片,该误差精度一直没有显著变化。应该可能是标定板的褶皱问题。


接下来的计划:

使用摄像头估计物体特征点坐标:
工作计划:
1、 拍摄物体照片
2、 计划采用ResNet50接上采样结构生成物体的二维坐标对应的热力图。
3、 由于目前还不会使用RFID阅读器读取信号所以先做步骤3,并且同时学习RFID阅读器的使用

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在使用OpenCV进行相机标定的过程中,可以使用Python进行编程。首先,需要采集相机的原始图像作为标定的准备工作。然后,可以使用OpenCV的函数来计算相机内参和畸变参数。接下来,可以使用Python编写标定代码。例如,可以使用以下代码来调用OpenCV在Python中进行相机拍照: ```python import cv2 camera = cv2.VideoCapture(0) i = 0 while 1: (grabbed, img) = camera.read() cv2.imshow('img', img) if cv2.waitKey(1) & 0xFF == ord('j'): # 按下'j'键保存一张图片 i = 1 u = str(i) filename = str('./img' + u + '.jpg') cv2.imwrite(filename, img) print('写入:', filename) if cv2.waitKey(1) & 0xFF == ord('q'): break ``` 这段代码可以实现从摄像头中获取图像,并在按下'j'键保存图片。在编写完标定代码后,可以通过比较标定前后的效果来评估标定的准确性。总结来说,通过使用Python和OpenCV,我们可以方便地进行相机标定的操作。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [OpenCV 相机标定 (Python版)](https://blog.csdn.net/kkkkkk0729/article/details/119113267)[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: 33.333333333333336%"] - *2* [python利用opencv进行相机标定(完全版)](https://blog.csdn.net/dgut_guangdian/article/details/107467070)[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: 33.333333333333336%"] - *3* [Python使用OpenCV进行标定](https://download.csdn.net/download/weixin_38682086/12868969)[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: 33.333333333333336%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值