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发布的检测后的图片。

相关推荐
Luhui Dev1 分钟前
大角几何如何保证图片导出尺寸一致性?
人工智能·数学·ai·luhuidev
yyk333244 分钟前
卷积神经网络
人工智能·神经网络·cnn
翼龙云_cloud8 分钟前
腾讯云国际代理商:如何用云服务器快速部署WorkBuddy AI助手?
服务器·人工智能·云计算·腾讯云
我爱写代码i20 分钟前
边缘计算与小模型在工业预测性维护、机器视觉质检中有哪些具体的落地实施案例与架构设计?
人工智能·边缘计算
CCYe、27 分钟前
新模型上线、旧模型下线:企业AI网关如何管住模型版本
java·网络·数据库·人工智能
2601_9623008130 分钟前
机器学习的理想基石
人工智能·python·机器学习·编程语言·数据处理
audyxiao00131 分钟前
优秀博士学位论文分享|神经符号系统的非确定性管理研究
人工智能·神经符号系统·优博论文
falldeep34 分钟前
kl_loss为什么用k3?该放到reward中还是loss中?
人工智能·机器学习
Java后端的Ai之路36 分钟前
21、Python - 命令模式
开发语言·人工智能·python·命令模式·外观模式