初探单目相机测距——相机标定

简介: 初探单目相机测距——相机标定

标定准备


  单目相机可以根据相似三角形原理进行图像测距,在测距之前需要作如下准备:


  1. 单目相机一个(实验用可任意购买,一般越便宜的精度自然就越差了)


  1. 标定版一个(可上OpenCv官网下载)


  1. MATLAB中CameraCalibrator工具箱(或者自行采用张氏标定法进行标定)


  1. 待测目标



标定步骤


  我们将准备好单目相机连接PC端测试验证是否连接好,固定好我们的标定板,使用单目相机对准标定板进行拍照,这里我拍摄了42组图像(如下图所示:)


image.png

打开matlab的CameraCalibrator工具箱点击AddImages,选择From file从你拍摄标定板图像,然后设置实体标定板上黑色方块的边长,点击确定等待导入。


在导入后选择普通相机(另一个选项是鱼眼相机),然后点击设置(Options) 在复选框这里点击2 Coefficients SKew Tangential Distortior 点击运行(Calibrate)待运行完毕后,导出数据,在工作区内查看KP内参矩阵和焦距。

image.png

image.png

image.png

image.png

image.png


image.png

image.png

image.png


标定结果


相机标定图像以及MSE图像(PDD9.9包邮相机,误差大了些哈哈)

image.png

image.png

根据张氏测距可得如下参数:

P值
P1 0.00770644
P1 0.014762425
焦距
FX 1321.395754
FY 1308.603399
K值
K1 0.080593716
K2 -0.0025207783
K3 0
内参矩阵:
1321.395754 0 0
13.90004046 1308.603399 0
1254.996814 621.1465241 1



相关文章
|
机器学习/深度学习 存储 监控
yolov5单目测距+速度测量+目标跟踪(算法介绍和代码)
yolov5单目测距+速度测量+目标跟踪(算法介绍和代码)
|
传感器 C++ 计算机视觉
【opencv3】详述PnP测距完整流程(附C++代码)
【opencv3】详述PnP测距完整流程(附C++代码)
1285 0
|
机器学习/深度学习 人工智能 自然语言处理
视觉 注意力机制——通道注意力、空间注意力、自注意力
本文介绍注意力机制的概念和基本原理,并站在计算机视觉CV角度,进一步介绍通道注意力、空间注意力、混合注意力、自注意力等。
12878 58
|
编解码 前端开发 算法
基于OpenCV的双目摄像头测距(误差小)
首先进行双目摄像头定标,获取双目摄像头内部的参数后,进行测距;本文的双目视觉测距是基于BM算法。注意:双目定标的效果会影响测距的精准度,建议大家在做双目定标时,做好一些(尽量让误差小)。
12217 3
基于OpenCV的双目摄像头测距(误差小)
|
传感器 机器人 测试技术
ROS相机内参标定详细步骤指南
本文是关于ROS相机内参标定的详细步骤指南,包括了标定的目的、原理、所需材料、具体操作流程以及标定结果的分析。文章以Ubuntu20.04和ROS1 Noetic为测试环境,适用于单目RGB相机的内参标定,使用ros-noetic-camera-calibration工具包进行操作,并提供了标定过程中的注意事项和建议。
1298 1
ROS相机内参标定详细步骤指南
|
算法 计算机视觉 Python
python利用opencv进行相机标定获取参数,并根据畸变参数修正图像附有全部代码(流畅无痛版)
该文章详细介绍了使用Python和OpenCV进行相机标定以获取畸变参数,并提供了修正图像畸变的全部代码,包括生成棋盘图、拍摄标定图像、标定过程和畸变矫正等步骤。
python利用opencv进行相机标定获取参数,并根据畸变参数修正图像附有全部代码(流畅无痛版)
|
存储 Ubuntu 机器人
机械臂手眼标定详解
这篇文章是关于机械臂手眼标定的详细教程,包括了使用ROS1 Noetic和Realsense D415相机在Ubuntu 20.04环境下进行标定的步骤和配置方法。
1699 0
机械臂手眼标定详解
|
存储 Ubuntu 计算机视觉
使用ros标定相机的内参和外参
使用ros标定相机的内参和外参
816 2
|
编解码 算法 计算机视觉
YOLOv8数据增强预处理方式详解:包括数据增强的作用,数据增强方式与方法
YOLOv8数据增强预处理方式详解:包括数据增强的作用,数据增强方式与方法
|
自动驾驶 计算机视觉
单目测距(yolo目标检测+标定+测距代码)下
单目测距(yolo目标检测+标定+测距代码)