YOLOv8-ROS-noetic+USB-CAM目标检测

环境介绍

Ubuntu20.04

Ros1-noetic

Anaconda-yolov8虚拟环境
本文假设ROS和anaconda虚拟环境都已经配备,如果不知道怎么配备可以参考:
https://blog.csdn.net/weixin_45231460/article/details/132906916

创建工作空间

bash 复制代码
mkdir -p ~/catkin_ws/src
bash 复制代码
cd ~/catkin_ws/src
bash 复制代码
catkin_init_workspace

🍀 编译工作空间

bash 复制代码
catkin_make

安装usb-cam

参考USB摄像头的安装和使用

配置yolov8-ros

1.下载功能包

bash 复制代码
cd ~/catkin_ws/src
bash 复制代码
git clone https://github.com/Gaofan666/Yolov8_ros.git

打开Yolov8_ros/yolov8_ros文件夹内容如下:

2.更新ultralytics和weights

现在我们要替换两个东西,一个是ultralytics文件夹,这个ultralytics是80.0.92版本的比较旧,直接删掉即可。去yolov8官网下载最新版的ultralytics或者替换自己的文件夹放进来,这里贴一个链接:

bash 复制代码
git clone https://github.com/ultralytics/ultralytics.git

第二个要替换的是weights文件夹下默认有一个yolov8s.pt,删掉去官网下载最新的放进来即可。

https://github.com/ultralytics/ultralytics

3. 虚拟环境装rospkg

用到哪个python解释器就在哪个虚拟环境装一下rospkg,比如我用的虚拟环境是yolov8,运行以下命令:

bash 复制代码
conda activate yolov8
bash 复制代码
pip install rospkg

4.指定python解释器

修改yolov8_ros/scripts/yolo_v8.py,文档开头的 /usr/bin python 替换为yolov8虚拟环境的解释器的位置。

bash 复制代码
#!/home/hhh/.conda/envs/yolov8/bin/python3.8

如果不知道python解释器在哪,可以用下面的命令查看

bash 复制代码
whereis python

5. 更改图像话题

修改yolov8检测的图像话题在/Yolov8_ros/yolov8_ros/launch/yolo_v8.launch文件中,修改,如果是用的usb-cam的话题,一般是

bash 复制代码
/usb_cam/image_raw

6. 编译运行

bash 复制代码
cd ~/catkin_ws/src
bash 复制代码
catkin_make
bash 复制代码
cd ~/catkin_ws
bash 复制代码
source devel/setup.bash
bash 复制代码
roscore
bash 复制代码
roslaunch usb_cam usb_cam-test.launch
bash 复制代码
roslaunch yolov8_ros yolo_v8.launch

可以看到左边是usb-cam发布的原图,右边是yolov8-ros发布的检测后的图片。

相关推荐
深圳佛手8 分钟前
AI 编程工具Claude Code 介绍
人工智能·python·机器学习·langchain
沃达德软件13 分钟前
智能识别车辆驾驶人特征
人工智能·目标检测·计算机视觉·目标跟踪·视觉检测
金融小师妹19 分钟前
多因子量化模型预警:美元强势因子压制金价失守4000关口,ADP数据能否重构黄金趋势?
人工智能·深度学习·1024程序员节
BJ_Bonree25 分钟前
圆桌论坛精华实录 | AI是重构运维逻辑的颠覆性革命?博睿数据与行业大咖亲授“AI+可观测性”的破局之道
运维·人工智能·重构
终端域名26 分钟前
从 Grok 4 多智能体协同到 RAG 范式革命:2025 年 AI 工作流的技术重构生成
人工智能·重构
Dfreedom.33 分钟前
卷积神经网络(CNN)全面解析
人工智能·神经网络·cnn·卷积神经网络
zl_vslam1 小时前
SLAM中的非线性优-3D图优化之轴角在Opencv-PNP中的应用(一)
前端·人工智能·算法·计算机视觉·slam se2 非线性优化
koo3641 小时前
李宏毅机器学习笔记43
人工智能·笔记·机器学习
lzjava20241 小时前
Spring AI使用知识库增强对话功能
人工智能·python·spring