YOLOv5/v8 + 双目相机测距

yolov5/v8+双目相机测距的代码,需要相机标定

可以训练自己的模型并检测+测距,都是python代码

已多次实验,代码无报错。

非常适合做类似的双目课题!

相机用的是汇博视捷的双目相机,具体型号见下图。

用的yolov5是6.1版本的

Yolov8是8.0.58版本的

看清楚版本-

立体匹配算法是改进的SGBM算法,具体是在后处理阶段加了WLS最小二乘算法,使测距更精确

具体精确度也和相机标定有关,我标定后1m左右距离误差为3%左右

默认用的我的相机参数,只能对测试视频进行测距,需要改成你自己的双目相机参数和设置分辨率!

项目介绍:YOLOv5/v8 + 双目相机测距

项目背景:

本项目结合了YOLOv5/v8(目标检测框架)与双目相机(测距),实现了对目标的实时检测和测距功能。该项目使用的是汇博视捷的双目相机,具体型号已在项目文档中详细列出。所使用的YOLOv5版本为6.1,YOLOv8版本为8.0.58。请注意版本兼容性和依赖关系。

项目特点:
  1. 目标检测:使用YOLOv5/v8进行目标检测,能够快速准确地识别目标物体。
  2. 测距功能:结合双目相机,实现了对目标物体的距离测量功能。
  3. 相机标定:提供了相机标定的功能,确保测距的准确性。
  4. 改进的SGBM算法:在立体匹配算法的基础上,加入了WLS最小二乘算法,提高了测距的精确度。
主要功能:
  1. 目标检测:基于YOLOv5/v8,可以训练自己的目标检测模型,并用于实时检测。
  2. 测距:利用双目相机获取的图像数据,实现对目标物体的距离测量。
  3. 相机标定:提供了相机标定的代码,可以根据实际情况调整相机参数,以获得更准确的测距结果。
技术栈:
  • YOLOv5:版本6.1,用于目标检测。
  • YOLOv8:版本8.0.58,用于目标检测。
  • Python:主要编程语言。
  • 双目相机:汇博视捷双目相机,具体型号请查看项目文档。
  • SGBM算法:立体匹配算法,改进后加入了WLS最小二乘算法。
实现步骤:
  1. 安装依赖:确保安装了YOLOv5/v8的正确版本及相关依赖。
  2. 相机标定:使用提供的代码进行相机标定,获取相机参数。
  3. 训练模型:使用YOLOv5/v8训练自己的目标检测模型。
  4. 测距实现:将目标检测结果与双目相机的测距功能相结合,实现目标测距。
测试与验证:
  • 测距精度:经过多次实验验证,标定后的相机在1米左右的距离上,测距误差约为3%。
  • 适用范围:适用于需要同时进行目标检测与测距的场景,如机器人导航、工业检测等。
注意事项:
  • 相机参数:默认使用了项目作者的相机参数,如果使用其他双目相机,请调整相机参数和分辨率设置。
  • 版本兼容性:请确保YOLOv5/v8的版本与项目代码兼容。
项目结构:
  • main.py:主程序入口,负责启动目标检测和测距流程。
  • camera_calibration.py:相机标定脚本。
  • detection.py:目标检测模块,使用YOLOv5/v8进行检测。
  • stereo_matching.py:立体匹配模块,使用改进的SGBM算法进行测距。
  • config.ini:配置文件,包含相机参数和其他设置。
如何开始:
  1. 克隆仓库:从GitHub仓库中克隆该项目。
  2. 安装依赖:按照README文件中的指示安装所有必要的依赖。
  3. 运行程序:按照README中的指示运行主程序。
  4. 测试数据:使用测试视频进行初步测试。
项目优势:
  • 高效性:YOLOv5/v8提供了高效的检测速度。
  • 精确性:改进的SGBM算法提高了测距的精确度。
  • 灵活性:可以根据实际需求调整相机参数和其他设置。
相关推荐
格林威8 小时前
Baumer工业相机堡盟工业相机如何通过YoloV8深度学习模型实现持械检测(C#代码,UI界面版)
人工智能·深度学习·数码相机·yolo·计算机视觉
sanzk20 小时前
yolo--qt可视化开发
yolo
停走的风1 天前
Yolo底层原理学习(V1~V3)(第一篇)
人工智能·深度学习·神经网络·学习·yolo
北京地铁1号线2 天前
YOLO12论文阅读:Attention-Centric Real-Time Object Detectors
论文阅读·yolo·目标检测
虚假程序设计2 天前
海康工业三相机联动串口触发系统:从 0 到 1 的踩坑笔记
数码相机·yolo·机器学习
格林威3 天前
Baumer工业相机堡盟工业相机如何通过YoloV8的深度学习模型实现螺母螺丝的分类检测(C#代码,UI界面版)
人工智能·深度学习·数码相机·yolo·计算机视觉·c#·视觉检测
FL16238631294 天前
使用目标检测yolo11去训练盲道损坏检测数据集VOC+YOLO格式4426张3类别步骤和流程
深度学习·yolo·目标检测
lxmyzzs4 天前
【bug】Yolo11在使用tensorrt推理numpy报错
yolo·计算机视觉·bug·numpy
超龄超能程序猿4 天前
(9)机器学习小白入门 YOLOv:YOLOv8-cls 技术解析与代码实现
人工智能·yolo·机器学习
FL16238631297 天前
使用目标检测yolo11去训练微藻细胞检测数据集YOLO格式703张6类别步骤和流程
人工智能·yolo·目标检测