文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Ubuntu20.04配置YOLOV5算法相关环境,并运行融合YOLOV5的ORB-SLAM2开源代码(亲测有效)

2023-09-10 19:06

关注

          这篇博客介绍的是如何在Ubuntu系统下配置YOLOV5算法环境。并且运行一个融合YOLOV5的ORB-SLAM2开源代码。

0.前言:

        安装的软件主要是anaconda,然后anaconda可以帮我们安装python、pytorch这些东西。我的ubuntu版本:ubuntu20.04.5LTS。

安装的anaconda类型:Anaconda3-2022.05

安装的python类型:python3.8.15,(原来系统自带的python是3.9.12)

安装的pytorch版本:1.13.0+cu117'

一、安装anaconda

   1.先去anaconda官网下载安装包,注意文件后缀是你的系统架构,比如x86、amd64或者aarch64,可以通过下面命令查看。

uname -a

像我的系统是这样的:

官网链接如下:

anaconda官网

 2.选择合适的文件,下载好后,进入下载目录,输入以下代码:

bash Anaconda3-2022.05-Linux-aarch64.sh

随后进行安装,会看到以下画面: 

 3.一直按ENTER继续,浏览许可证,审查完许可后,将要求您批准许可条款:

 Do you approve the license terms? [yes|no]

键入yes接受许可,系统将提示您选择安装位置: 

 默认位置对于我们大多数用户来说已经就可以,按ENTER确认安装位置。

4.安装可能需要一些时间,完成后,脚本将询问您是否要运行conda init,键入yes。

Installation finished.

Do you wish the installer to initialize Anaconda3

by running conda init? [yes|no]

 5.这会将命令行工具conda添加到系统的PATH中。要激活Anaconda安装,您可以关闭并重新打开终端,或者通过键入以下命令来将新的PATH环境变量加载到当前的shell会话中:

source ~/.bashrc 

 

6.这样就是成功了安装了Anaconda。

 二、创建YOLOV5环境

我们创建一个python3.8的名称为yolo的环境。打开终端,输入

conda create -n yolo python=3.8

回车,输入y确定,等待创建成功即可。 

创建完成之后,输入命令激活环境:

conda activate yolo

下载YOLOV5源码

mirrors / ultralytics / yolov5 · GitCode  (这个是被人提供的,里面不包含预训练模型yolov5s.pt文件,但不打紧,后面运行代码的时候会自动生成)

sticker_阮 / YOLOV5源码 · GitCode (这个我的,里面是全的),如下所示

 4.修改相应文件

在下载好的yolov5-master文件夹下找到requirements.txt文件,修改成以下形式:

 5.随后在yolov5-master文件夹下打开终端,并输入以下命令,来添加依赖:

pip3 install -U -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

可能会出现的错误:

ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.

daal4py 2021.5.0 requires daal==2021.4.0, which is not installed.

conda-repo-cli 1.0.4 requires pathlib, which is not installed.

anaconda-project 0.10.2 requires ruamel-yaml, which is not installed.

numba 0.55.1 requires numpy<1.22,>=1.18, but you have numpy 1.23.5 which is incompatible.

 解决方法:按照错误提示,安装相应版本的包

pip install daal==2021.4.0
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pathlib

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple ruamel-yaml

依赖安装好后如下:

至此,yolo所需的环境配置完成。

参考链接:

各种错误_steven_bingo的博客-CSDN博客_daal==2021.4.0

ERROR: pip‘s dependency resolver does not currently take into account all the packages 解决办法分享_MI_farmer的博客-CSDN博客_error: pip's dependency resolver does not currentl

测试

(1).先进入创建好的yolo环境

conda activate yolo

在yolov5-master文件下打开终端,并输入以下命令:

python detect.py --source data/images/zidane.jpg

这时候,最后的效果会保存在runs/detect/下

 (在这个时候,如果之前下的是别人的代码,会生成run文件夹)

如果出现以下问题:

AttributeError: 'Upsample' object has no attribute 'recompute_scale_factor'

参考:

一步真实解决AttributeError: ‘Upsample‘ object has no attribute ‘recompute_scale_factor‘_蓝胖胖▸的博客-CSDN博客

(2)第二个测试是利用VS code跑的

首先找到detect.py文件,修改以下代码中的source:改成0则为调用电脑自带的摄像头。

 然后终端进入我们创建的yolo环境,输入python detect.py即可运行。

conda的一些指令:

(1)conda activate yolo //激活(进入)yolo虚拟环境中

或 source activate yolo

(2)conda list //查看在虚拟环境中安装的包

(3)python //查看虚拟环境中python 的版本

import torch

torch._version_//查看torch版本

ctrl+D退出python

(4)如果安装了独显

nvidia-smi //可查看是否安装成功

或看

python

>>>import torch

>>>torch.cuda.is_available //查看是否为true

(5)conda deactivate //退出当前虚拟环境

6conda env list//查看创建的虚拟环境有哪些

 7.接下来将YOLOV5代码加入到ORB-SLAM2中

源代码和相关数据集可见以下链接:

sticker_阮 / YOLOv5融合orb-SLAM2 · GitCode

如果按照我之前的环境配置,那么运行这个代码就比较简单了。下载我的源代码,还需要下载一个associate.py来处理rgb.txt和depth.txt,生成配对的文件associate.txt,输入以下指令:

python associate.py rgb.txt depth.txt > associate.txt

 如果出现以下报错

Traceback (most recent call last):
  File "associate.py", line 118, in
    matches = associate(first_list, second_list,float(args.offset),float(args.max_difference))    
  File "associate.py", line 97, in associate
    first_keys.remove(a)
AttributeError: 'dict_keys' object has no attribute 'remove'

由于Python2和python3语法的差别,需要将associate.py中第86行87行的

 first_keys = first_list.keys()    second_keys = second_list.keys()

 修改为:

  first_keys = list(first_list.keys())    second_keys = list(second_list.keys())

最后,打开orbslam_addsemantic-main文件夹终端,输入以下命令即可:

在终端输入的指令:

YOLOV5算法:

./Examples/RGB-D/rgbd_tum Vocabulary/ORBvoc.txt Examples/RGB-D/TUM3.yaml /home/rxz/rgbd_dataset_freiburg3_walking_xyz /home/rxz/rgbd_dataset_freiburg3_walking_xyz/associate.txt detect_result/TUM_f3xyz_yolov5m/detect_result/

ORB-SLAM2算法:

./Examples/RGB-D/rgbd_tum Vocabulary/ORBvoc.txt Examples/RGB-D/TUM3.yaml /home/rxz/rgbd_dataset_freiburg3_walking_xyz /home/rxz/rgbd_dataset_freiburg3_walking_xyz/associate.txt

参考链接:

SLAM TUM数据集associate.py使用及错误解决_月逐丶的博客-CSDN博客

Ubuntu20.04部署yolov5目标检测算法,无人车/无人机应用_振华OPPO的博客-CSDN博客_yolo可以部署到无人机上么
https://blog.csdn.net/weixin_51745352/article/details/124646456

来源地址:https://blog.csdn.net/weixin_70026476/article/details/128184135

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯