相机标定先理解内参和畸变

526 字
3 分钟
相机标定先理解内参和畸变

相机标定先理解内参和畸变#

相机拍出来的图像不是完美针孔模型。镜头畸变、焦距、主点位置都会影响像素坐标和真实空间的对应关系。

计算机视觉流程不能只看终端输出。图片能不能读、标注是否对齐、可视化是否正常,往往比训练命令本身更早暴露问题。

先看输入#

标定前要拍多张不同角度的棋盘格图片,角点要清晰覆盖画面不同位置。图片太少、角度太单一,标定结果不稳定。

我会先选少量图片做检查:一张正常图、一张边界图、一张容易失败的图。小样本跑通以后,再扩大到完整数据集。

示例代码#

ret, corners = cv2.findChessboardCorners(gray, (9, 6), None)
if ret:
cv2.drawChessboardCorners(img, (9, 6), corners, ret)
cv2.imwrite("corners_check.jpg", img)

可视化验收#

  • 保存至少一张中间结果图,而不是只打印数组形状。
  • 检查坐标顺序,确认没有把 x/y 和 w/h 混用。
  • 抽查失败样本路径,避免批量流程悄悄跳过坏图。
  • 如果结果要进入训练集,记录数据版本和处理脚本版本。

常见误差来源#

常见误差来自棋盘格尺寸写错、角点检测失败却继续计算、标定后没有用重投影误差检查结果。

最小验收样例#

我会固定一组小样本作为回归检查集。每次改处理脚本或训练配置,都先跑这组样本,确认输出图片、标注框或预测结果没有出现明显退化。

视觉任务的验收不能只依赖成功退出码。最少要打开一张输出图,并把失败样本单独记录下来。这样后续定位问题时,能从具体图片回到具体处理步骤。

小结#

相机标定先理解内参和畸变 的关键是让每一步都有可视化证据。视觉任务最终要回到图像本身,不能只信日志和指标。

文章分享

如果这篇文章对你有帮助,欢迎分享给更多人!

相机标定先理解内参和畸变
https://blog.tjcheng.cn/posts/daily/2026-07-08/camera-calibration-basic/
作者
TengJinCheng
发布于
2026-07-08
许可协议
CC BY-NC-SA 4.0
Profile Image of the Author
TengJinCheng
Hello, I'm Teng.
公告
欢迎来到TengJinCheng工作铺!
音乐
封面

音乐

暂未播放

0:000:00
暂无歌词
分类
标签
站点统计
文章
157
分类
7
标签
114
总字数
109,939
运行时长
0 天
最后活动
0 天前
站点信息
构建平台
Local
博客版本
Firefly v6.13.4
文章许可
CC BY-NC-SA 4.0

文章目录