Skip to content

Commit

Permalink
Update README.md (#60)
Browse files Browse the repository at this point in the history
Removed Dollar Signs to allow copy pasting into the terminal
  • Loading branch information
hashaam1217 authored Nov 25, 2024
1 parent c9c53f6 commit d095b7a
Showing 1 changed file with 22 additions and 22 deletions.
44 changes: 22 additions & 22 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,26 +13,26 @@ ROS 2 wrap for YOLO models from [Ultralytics](https://github.com/ultralytics/ult
## Installation

```shell
$ cd ~/ros2_ws/src
$ git clone https://github.com/mgonzs13/yolo_ros.git
$ pip3 install -r yolo_ros/requirements.txt
$ cd ~/ros2_ws
$ rosdep install --from-paths src --ignore-src -r -y
$ colcon build
cd ~/ros2_ws/src
git clone https://github.com/mgonzs13/yolo_ros.git
pip3 install -r yolo_ros/requirements.txt
cd ~/ros2_ws
rosdep install --from-paths src --ignore-src -r -y
colcon build
```

## Docker

Build the yolo_ros docker.

```shell
$ docker build -t yolo_ros .
docker build -t yolo_ros .
```

Run the docker container. If you want to use CUDA, you have to install the [NVIDIA Container Tollkit](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html) and add `--gpus all`.

```shell
$ docker run -it --rm --gpus all yolo_ros
docker run -it --rm --gpus all yolo_ros
```

## Models
Expand All @@ -59,43 +59,43 @@ The compatible models for yolo_ros are the following:
### YOLOv5

```shell
$ ros2 launch yolo_bringup yolov5.launch.py
ros2 launch yolo_bringup yolov5.launch.py
```

### YOLOv8

```shell
$ ros2 launch yolo_bringup yolov8.launch.py
ros2 launch yolo_bringup yolov8.launch.py
```

### YOLOv9

```shell
$ ros2 launch yolo_bringup yolov9.launch.py
ros2 launch yolo_bringup yolov9.launch.py
```

### YOLOv10

```shell
$ ros2 launch yolo_bringup yolov10.launch.py
ros2 launch yolo_bringup yolov10.launch.py
```

### YOLOv11

```shell
$ ros2 launch yolo_bringup yolov11.launch.py
ros2 launch yolo_bringup yolov11.launch.py
```

### YOLO-NAS

```shell
$ ros2 launch yolo_bringup yolo-nas.launch.py
ros2 launch yolo_bringup yolo-nas.launch.py
```

### YOLO-World

```shell
$ ros2 launch yolo_bringup yolo-world.launch.py
ros2 launch yolo_bringup yolo-world.launch.py
```

</details>
Expand Down Expand Up @@ -157,7 +157,7 @@ These are some resource comparisons using the default yolov8m.pt model on a 30fp
### YOLO 3D

```shell
$ ros2 launch yolo_bringup yolov8.launch.py use_3d:=True
ros2 launch yolo_bringup yolov8.launch.py use_3d:=True
```

<p align="center">
Expand All @@ -171,7 +171,7 @@ $ ros2 launch yolo_bringup yolov8.launch.py use_3d:=True
This is the standard behavior of yolo_ros which includes object tracking.

```shell
$ ros2 launch yolo_bringup yolo.launch.py
ros2 launch yolo_bringup yolo.launch.py
```

[![](https://drive.google.com/thumbnail?authuser=0&sz=w1280&id=1gTQt6soSIq1g2QmK7locHDiZ-8MqVl2w)](https://drive.google.com/file/d/1gTQt6soSIq1g2QmK7locHDiZ-8MqVl2w/view?usp=sharing)
Expand All @@ -181,7 +181,7 @@ $ ros2 launch yolo_bringup yolo.launch.py
Instance masks are the borders of the detected objects, not all the pixels inside the masks.

```shell
$ ros2 launch yolo_bringup yolo.launch.py model:=yolov8m-seg.pt
ros2 launch yolo_bringup yolo.launch.py model:=yolov8m-seg.pt
```

[![](https://drive.google.com/thumbnail?authuser=0&sz=w1280&id=1dwArjDLSNkuOGIB0nSzZR6ABIOCJhAFq)](https://drive.google.com/file/d/1dwArjDLSNkuOGIB0nSzZR6ABIOCJhAFq/view?usp=sharing)
Expand All @@ -191,7 +191,7 @@ $ ros2 launch yolo_bringup yolo.launch.py model:=yolov8m-seg.pt
Online persons are detected along with their keypoints.

```shell
$ ros2 launch yolo_bringup yolo.launch.py model:=yolov8m-pose.pt
ros2 launch yolo_bringup yolo.launch.py model:=yolov8m-pose.pt
```

[![](https://drive.google.com/thumbnail?authuser=0&sz=w1280&id=1pRy9lLSXiFEVFpcbesMCzmTMEoUXGWgr)](https://drive.google.com/file/d/1pRy9lLSXiFEVFpcbesMCzmTMEoUXGWgr/view?usp=sharing)
Expand All @@ -201,7 +201,7 @@ $ ros2 launch yolo_bringup yolo.launch.py model:=yolov8m-pose.pt
The 3D bounding boxes are calculated by filtering the depth image data from an RGB-D camera using the 2D bounding box. Only objects with a 3D bounding box are visualized in the 2D image.

```shell
$ ros2 launch yolo_bringup yolo.launch.py use_3d:=True
ros2 launch yolo_bringup yolo.launch.py use_3d:=True
```

[![](https://drive.google.com/thumbnail?authuser=0&sz=w1280&id=1ZcN_u9RB9_JKq37mdtpzXx3b44tlU-pr)](https://drive.google.com/file/d/1ZcN_u9RB9_JKq37mdtpzXx3b44tlU-pr/view?usp=sharing)
Expand All @@ -211,7 +211,7 @@ $ ros2 launch yolo_bringup yolo.launch.py use_3d:=True
In this, the depth image data is filtered using the max and min values obtained from the instance masks. Only objects with a 3D bounding box are visualized in the 2D image.

```shell
$ ros2 launch yolo_bringup yolo.launch.py model:=yolov8m-seg.pt use_3d:=True
ros2 launch yolo_bringup yolo.launch.py model:=yolov8m-seg.pt use_3d:=True
```

[![](https://drive.google.com/thumbnail?authuser=0&sz=w1280&id=1wVZgi5GLkAYxv3GmTxX5z-vB8RQdwqLP)](https://drive.google.com/file/d/1wVZgi5GLkAYxv3GmTxX5z-vB8RQdwqLP/view?usp=sharing)
Expand All @@ -221,7 +221,7 @@ $ ros2 launch yolo_bringup yolo.launch.py model:=yolov8m-seg.pt use_3d:=True
Each keypoint is projected in the depth image and visualized using purple spheres. Only objects with a 3D bounding box are visualized in the 2D image.

```shell
$ ros2 launch yolo_bringup yolo.launch.py model:=yolov8m-pose.pt use_3d:=True
ros2 launch yolo_bringup yolo.launch.py model:=yolov8m-pose.pt use_3d:=True
```

[![](https://drive.google.com/thumbnail?authuser=0&sz=w1280&id=1j4VjCAsOCx_mtM2KFPOLkpJogM0t227r)](https://drive.google.com/file/d/1j4VjCAsOCx_mtM2KFPOLkpJogM0t227r/view?usp=sharing)

0 comments on commit d095b7a

Please sign in to comment.