nvidia jetson 在ros中使用yolov5进行目标检测发布目标消息

11 篇文章 3 订阅
6 篇文章 1 订阅

一、环境搭建

需要环境:melodic 、 conda虚拟环境,如果已有,看二。

Nvidia jetson agx xavier ubuntu18.04 一键安装ROS-melodic_Ponnyao的博客-CSDN博客

Nvidia jetson xavier agx 安装pytorch1.9.0 Gpu版_Ponnyao的博客-CSDN博客_xavier安装pytorch

二、编译ros_yolov5

        这是我编译的包,删除build和devel文件夹重新编译即可ros-yolov5_ws-深度学习文档类资源-CSDN下载

1、创建工作空间

mkdir -p ~/ros_yolov5/src
cd ~/ros_yolov5/src
catkin_init_workspace  //将当前文件夹变成ROS工作空间的属性

2、编译

cd ~/ros_yolov5/
catkin_make
source devel/setup.bash

3、下载功能包

cd ~/ros_yolov5/src
git clone https://github.com/qq44642754a/Yolov5_ros.git
cd Yolov5_ros/yolov5
pip3 install -r requirements.txt

4、编译

cd ~/ros_yolov5
catkin_make
source devel/setup.sh

5、运行

roslaunch yolov5_ros yolo_v5.launch

6、报错解决

1、找不到cv2模块

 解决:

找到/home/nvidia/ros_yolov5/src/yolov5_ros/yolov5_ros/scripts/yolo_v5.py

修改后的文件如下:

#!/home/nvidia/archiconda/envs/pytorch/bin/python3
# -*- coding: utf-8 -*-

import sys
sys.path.remove('/opt/ros/kinetic/lib/python2.7/dist-packages')
import cv2
import torch
import sys
sys.path.append('/opt/ros/kinetic/lib/python2.7/dist-packages')
import rospy
import numpy as np

此后缺啥pip3 install就行了。

7、修改launch文件

按照自己的话题进行修改image_topic

<?xml version="1.0" encoding="utf-8"?>

<launch>

  <!-- Load Parameter -->
  
  <param name="yolov5_path"       value="$(find yolov5_ros)/yolov5"/>
  <param name="use_cpu"           value="false" />

  <!-- Start yolov5 and ros wrapper -->
  <node pkg="yolov5_ros" type="yolo_v5.py" name="yolov5_ros" output="screen" >
    <param name="weight_path"       value="$(find yolov5_ros)/weights/yolov5s.pt"/>

    <param name="image_topic"       value="/camera/color/image_raw" />

    <param name="pub_topic"         value="/yolov5/BoundingBoxes" />
    <param name="camera_frame"       value="camera_color_frame"/>
    <param name="conf"              value="0.3" />
  </node>

</launch>

8、测试

cd ~/ros_yolov5
source devel/setup.bash
roslaunch yolov5_ros yolo_v5.launch

完美运行。

参考

GitHub - qq44642754a/Yolov5_ros: Real-time object detection with ROS, based on YOLOv5 and PyTorch (基于 YOLOv5的ROS实时对象检测)

YOLOV5_ROS编译步骤_木子智~的博客-CSDN博客_yolov5编译

  • 2
    点赞
  • 78
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 11
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ponnyao

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值