more updates to readme
This commit is contained in:
parent
0ab0bec309
commit
9eea08eaaa
51
README.md
51
README.md
@ -4,12 +4,26 @@ This repository contains code for detecting heat pipes in the greenhouse as well
|
|||||||
|
|
||||||
Platform: ROS 2, Humble, Ubuntu 22.04
|
Platform: ROS 2, Humble, Ubuntu 22.04
|
||||||
|
|
||||||
How to build the workspace?
|
## How to build the workspace?
|
||||||
|
```
|
||||||
|
$ git clone https://tea.der-space.de/apoorva/greenhouse.git
|
||||||
|
```
|
||||||
|
## How to install dependencies??
|
||||||
|
```
|
||||||
|
|
||||||
How to install dependencies??
|
sudo apt-get install ros-humble-$(PACKAGE_NAME)
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
This section explains what each module is responsible for.
|
This section explains what each module is responsible for.
|
||||||
|
## perception_pcl
|
||||||
|
This module is responsible for providing `pcl_conversions` and `pcl_ros` modules in `ros 2`.
|
||||||
|
To build, run the following command:
|
||||||
|
```
|
||||||
|
$ cd ros2_ws/
|
||||||
|
$ colcon build --packages-select perception_pcl
|
||||||
|
$ . install/setup.bash
|
||||||
|
```
|
||||||
|
|
||||||
## pipe_msgs
|
## pipe_msgs
|
||||||
This module contains ros msgs for storing information about the detected object's bounding box.
|
This module contains ros msgs for storing information about the detected object's bounding box.
|
||||||
@ -45,6 +59,7 @@ How to build and run?
|
|||||||
This package is dependent on custom `pcl_conversion` and `pcl_ros` module. Make sure you have built those before building this package.
|
This package is dependent on custom `pcl_conversion` and `pcl_ros` module. Make sure you have built those before building this package.
|
||||||
```
|
```
|
||||||
$ colcon build --packages-select find-pose
|
$ colcon build --packages-select find-pose
|
||||||
|
$ . install/setup.bash
|
||||||
$ ros2 launch find-pose find-pose-node.launch.py
|
$ ros2 launch find-pose find-pose-node.launch.py
|
||||||
```
|
```
|
||||||
All the topics can be remapped in the launch file.
|
All the topics can be remapped in the launch file.
|
||||||
@ -70,6 +85,7 @@ The following are the output topics:
|
|||||||
How to build and run?
|
How to build and run?
|
||||||
```
|
```
|
||||||
$ colcon build --packages-select yolov3_ros
|
$ colcon build --packages-select yolov3_ros
|
||||||
|
$ . install/setup.bash
|
||||||
$ ros2 launch yolov3_ros pipe_detection.launch.py
|
$ ros2 launch yolov3_ros pipe_detection.launch.py
|
||||||
```
|
```
|
||||||
All the topics can be remapped in the launch file. The path to best_weights can also be changed inside the launch file.
|
All the topics can be remapped in the launch file. The path to best_weights can also be changed inside the launch file.
|
||||||
@ -143,14 +159,6 @@ pip install -e .
|
|||||||
rosbags-convert ../single_depth_color_640x480.bag
|
rosbags-convert ../single_depth_color_640x480.bag
|
||||||
```
|
```
|
||||||
|
|
||||||
## perception_pcl
|
|
||||||
|
|
||||||
|
|
||||||
### pcl_conversions
|
|
||||||
|
|
||||||
### pcl_ros
|
|
||||||
|
|
||||||
|
|
||||||
## flann_based
|
## flann_based
|
||||||
Module that uses 3D model of the pipe to estimate pose. This method was not successful.
|
Module that uses 3D model of the pipe to estimate pose. This method was not successful.
|
||||||
|
|
||||||
@ -163,6 +171,23 @@ This module was provides interface to run neural network as rosnodes. The purpos
|
|||||||
## darknet_vendor
|
## darknet_vendor
|
||||||
This module was needed to build darknet_ros2.
|
This module was needed to build darknet_ros2.
|
||||||
|
|
||||||
|
# How to run live detection?
|
||||||
|
Once you have succefully built the ROS Modules specifically, `yolov3_ros` and `find-pose` along with dependencies like `pipe_msgs` and `perception_ros`, `perception_pcl`, you can do the following:
|
||||||
|
1. Open a terminal.
|
||||||
|
2. Run `$ cd greenhouse/ros2_ws/` and `$ . install/setup.bash`.
|
||||||
|
3. Launch node for object detection:
|
||||||
|
```
|
||||||
|
$ ros2 launch yolov3_ros pipe_detection.launch.py
|
||||||
|
```
|
||||||
|
This node will output two topics: `/bboxes` and `/detection_image`.
|
||||||
|
4. Launch node for pose estimation:
|
||||||
|
```
|
||||||
|
$ ros2 launch find-pose find-pose-node.launch.py
|
||||||
|
```
|
||||||
|
This node will output TF topics between `/camera_link` and `/${detected_object_name}`.
|
||||||
|
5. Open RVIZ by running `$ rviz2`. Change `fixed frame` from `map` to `camera_link`.
|
||||||
|
5a. Go to `Add` button. Under `By Display type`, select `tf`. Once tf is added, select required frames like `camera_link` and `l_trail` to see the tfs.
|
||||||
|
5b. To see the current image with detected object, Go to `Add` Button. Under `By Topic`, select topci called `detection_image`.
|
||||||
|
You can add other topics as per the need and topic names.
|
||||||
|
6. You can open launch files to update/remap topic name if different camera is being used.
|
||||||
|
7. You can also update ros parameter from launch file. Currently, the `pipe_weights.pt` file is the one used. This file can be changed and you can update the parameter name `best_weights` inside the `pipe_detection.launch.py` file.
|
||||||
Loading…
x
Reference in New Issue
Block a user