You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: aegis_control/README.md
+3Lines changed: 3 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -30,6 +30,9 @@ aegis_control/
30
30
|[start_drivers.launch.py](./launch/start_drivers.launch.py)| The main launch file to run the entire Aegis' `ros2_control` stack. |
31
31
|[ur_driver.launch.py](./launch/ur_driver.launch.py)| Launches nodes from the [ur_robot_driver](https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver) to control the UR5e robot. |
32
32
33
+
## Neural network
34
+
For details on training and deploying YOLOv5 model, see the [tutorial](./docs/yolov5_tutorial.md).
35
+
33
36
## Development notes
34
37
35
38
- ROS 2 Humble ships with the older structure of the [Universal_Robots_ROS2_Driver](https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver/tree/humble) Due to the complexity of our project (where we need to merge several other controllers into a single `control_manager` ode configuration), the `ur_driver.launch.py` file is based on version `2.5.1` of UR's `ur_robot_driver`[launch file](https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver/blob/humble/ur_robot_driver/launch/ur_control.launch.py). The main difference is the removal of all unused parameters, which are set by default by the driver itself.
This guide explains how to set up, train, convert and deploy a YOLOv5 model for this project.
3
+
4
+
## Directory structure
5
+
After training, your directory structure should be organized as follows:
6
+
7
+
```
8
+
datasets
9
+
└── polygons
10
+
├── test
11
+
│ ├── images
12
+
│ └── labels
13
+
├── train
14
+
│ ├── images
15
+
│ └── labels
16
+
└── val
17
+
├── images
18
+
└── labels
19
+
yolov5
20
+
├── data
21
+
│ └── polygons.yaml
22
+
├── runs
23
+
│ └── train
24
+
│ └── exp
25
+
│ └── weights
26
+
│ └── best.pt
27
+
└── train.py
28
+
```
29
+
30
+
## Dataset
31
+
Download the `polygons` dataset from [this repository](https://github.com/Patrycj2a/praca_inzynierska/tree/main/datasets/polygons/) and place it in the `datasets` folder.
32
+
33
+
## Training configuration file
34
+
Create the `polygons.yaml` file inside the `yolov5/data` directory with the following content:
35
+
36
+
```yaml
37
+
names:
38
+
0: tetragon
39
+
1: hexagon
40
+
2: octagon
41
+
3: dodecagon
42
+
nc: 4
43
+
path: ../datasets/polygons
44
+
train: train/images
45
+
val: val/images
46
+
test: test/images
47
+
```
48
+
49
+
## YOLOv5 setup
50
+
Set up the YOLOv5 repository by running the following commands:
0 commit comments