Skip to content
Snippets Groups Projects
Commit 41ea1f41 authored by EtienneAr's avatar EtienneAr
Browse files

Update README.md

parent 06f37288
No related branches found
No related tags found
No related merge requests found
......@@ -43,13 +43,19 @@ catkin build
## Usage
### Run
First, setup the environment
```
conda activate cosypose
cd ~/catkin_ws
source devel/setup.bash
roslaunch ros_cosypose singleview_rviz.launch
```
* __Note:__ The camera must be calibrated for good results. See [this section](#usb-camera-calibration)
Then you can run a simple test :
```
roslaunch ros_cosypose singleview_loop.launch debug:=true bringup_camera:=true
```
This should start rviz, and bringup your first usb camera (you can change it with the arguments `camera_name` and `camera_id`). Cosypose will then run in loop and display the results in rviz.
* __Note:__ The camera must be calibrated first. See [this section](#usb-camera-calibration)
### Details
......@@ -60,16 +66,15 @@ This node creates a service `/pose_estimation`. It expects, as an input for each
* **Optionally** A list of `CosyObjects` for warm-starting the pose estimation.
(If this list is not empty, then the detection phased is skipped and the pose estimation is only run on the given objects.)
In debug mode, this service publish messages, for each call, in displayable by rviz. By default, it publishes on :
- `/ros_cosypose/pose_debug` a 6D PoseArray (that can be display by RViz as frames)
- `/ros_cosypose/marker_debug` a MarkerArray that contains the meshes and pose of each detected object.
#### pose_estimation_loop.py node :
This node simply calls the `/pose_estimation` indefinitely.
It subscribes to a camera image topic, and run the pose estimation in loop on the latest image. It then publishes the results on the `/cosyobject_list` topic.
(It can also "track" objects by warm-starting every estimation with the result of the previous one)
#### rviz_translator.py node :
This node subscribe to the `/cosyobject_list` topic (published by object_pose_estimation.py node) and transforms the incoming messages to other format that are displayable by rviz. By default, it publishes on :
- `/cosyobject_poses` a 6D PoseArray (that can be display by RViz as frames)
- `/cosyobject_markers` a MarkerArray that contains the meshes and pose of each detected object.
### USB Camera Calibration
You will need a large [checkerboard](http://wiki.ros.org/camera_calibration/Tutorials/MonocularCalibration?action=AttachFile&do=get&target=check-108.pdf) with known dimensions. Here is a 8x6 checkerboard. (Calibration uses the interior vertex points of the checkerboard, so an "9x7" board uses the interior vertex parameter "8x6")
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment