- Install http://wiki.ros.org/kinetic
- Flash an Arduino Uno with the Arduino code
- Run
$ catkin_make
in the /catkin_ws folder
- If everything is installed correctly, open 5 terminals
- Source the workspace in every terminal
source devel/setup.bash
- Terminal 1:
$ roscore
- Terminal 2: Use usb_cam to publish webcam images, darknet_ros would subscribe it to
$ roslaunch usb_cam usb_cam-test.launch
- Terminal 3: Start YOLOv2 object detection
$ roslaunch darknet_ros Braccio_darknet_ros.launch
- Terminal 4: Transfer output from YOLOv2 into robot instruction
$ rosrun detect_and_collect parse_and_publish
- Terminal 5: Connect to Arduino via serial connection
$ rosrun rosserial_python serial_node.py /dev/ttyACM0
- Configuration of the network in /darknet/cfg/yolo-obj.cfg
- Dataset and labels in /darknet/data/obj
- ROS code in /catkin_ws/src/detect_and_collect
- Code on the Arduino in /Arduino/braccio_ros/braccio_ros.ino
- Final weights in /darknet/TrainingTinyTiny/yolo-obj-1500.weights