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

一、环境搭建

需要环境: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模块

nvidia jetson 在ros中使用yolov5进行目标检测发布目标消息_第1张图片

 解决:

找到/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





  
  
  
  

  
  
    

    

    
    
    
  

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编译

你可能感兴趣的:(自动驾驶,深度学习,ros,linux,python,自动驾驶,深度学习)