- nvidia driver +CUDA 10.0 + CUDNN7.5
- zed, pyzed:
https://github.com/stereolabs/zed-python-api
https://www.stereolabs.com/developers \ - ros-melodic
- tensorflow-gpu
gedit ./catkin_ws/vicon_bridge_launchvicon.launch
edit datastream_hostport value as yout vicon IP address
vicon objects should be named same as defined in ./configure/[task_name]_objects.txt
source ./setup.sh
To watch the field of view of the camera, following code will show an rviz map of the camera.
python3 ./collect_data.py [task_name] [demo_name] --watch
If you want to record both vicon and vision,
python3 ./collect_data.py [task_name] [demo_name] --vicon
If you want to record vision only
python3 ./collect_data.py [task_name] [demo_name]
!! Be sure all hardware correctly generates ros topics (/zed/zed_node/rgb, /vicon/k_xxx/k_xxx, ...)
rostopic list
rostopic echo xxx
Check "raw.bag.activate" is generated in "./data/[task_name]/[demo_name]".
python3 ./read_bag.py [task_name]
Check depth, rgb, vicon folders are generated in "./data/[task_name]/[demo_name]"
python3 ./make_segment_label.py [task_name] [demo_name]
- Execute python3 to train the segmentation network
python3 ./main.py [task_name] segment --train
- Check a log and figures created: ./log/[task_name]/segment_train.txt, ./figure/[task_name]/segment/
- After the training converged, obtain the segmentation mask
python3 ./main.py [task_name] segment --test
- Check files created in './output/segment/[task_name]/'
- Execute python3 to train the pose network
python3 ./main.py [task_name] pose --train
- Check a log and figures created: ./log/[task_name]/pose_train.txt, ./figure/[task_name]/pose/
- After the network converged, obtain the trained pose
python3 ./main.py [task_name] pose --test
- Check files created in './output/pose/[task_name]/'
To visualize the trained output, you need to exectue the visualizing code.
python3 ./main.py [task_name] read_pose
The pose trajectory will be plotted in './output/pose/read_pose/[task_name]'.
The pose projection on an imag will be plotted in './output/pose/read_pose2/[task_name]'.