2019. 10. 1. 20:27ㆍ드론
이전에 ubuntu 16.04 위에서 YOLO를 실행했는데, 이번에는 ROS 위에서 YOLO를 구동해보려고 한다. ROS YOLO Github에서 가장 저명한 오픈소스를 받을 것이다.
https://github.com/leggedrobotics/darknet_ros
기존 catkin workspace가 있다면 그쪽으로 이동하도록 한다. 작업한 catkin 빌드시스템 폴더가 있어서 그쪽으로 이동하려고 한다
$ cs
$ git clone --recursive https://github.com/leggedrobotics/darknet_ros.git
$ cd ..
$ catkin_make -DCMAKE_BUILD_TYPE=Release
$ rospack profile
그리고 작업에 필요한 weight 파일을 받도록 한다. 하지만 기본 파일이 있는 것과 동시에 웹 사이트를 찾지 못해서 다운을 받지 못하는 상황이다
현재 있는 파일에 대해서 크기를 살펴보면, tiny 버전이 확실히 크기가 작으면서 버전이 올라갈수록 커지는 것을 알 수 있다
자신이 detection 하려는 물체에 대한 파일을 따로 만들어서 launch 파일에 추가할 수 있는 설명도 있다
빌드가 완료되었다는 가정 하에서 YOLO를 본격적으로 실행해보려고 한다. 기본적으로 제공하는 launch 파일 목록을 확인해보면
$ cd /home/neol/catkin_ws/src/darknet_ros/darknet_ros/launch
$ ls -al
살펴볼 파일은 darknet_ros.launch와 yolo_v3.launch다. 두 파일의 차이는 yolo_v3는 darknet_ros를 포함하면서 yolo_v3를 사용한다는 점이다. 더 좋은 정확도를 낼 수 있는 장점이 있다. 다만 시간이 yolo_v2보다는 오래 걸린다는 점이다. 아무래도 weight 파일이 크기 때문이다
기본적으로 yolov2_tiny.yaml 파일을 쓸 수 있음을 알 수 있다. 결론적으로 0.8 FPS로 약 1초당 1번씩 영상처리를 하게 된다. 만일 yolo_v3를 실행하면 i7 CPU 기준으로 낮은 0.1 FPS가 출력됐다
기본 코드 전제하에 subscribe만 /bebop/image_raw로 수정만 해주도록 한다
$ cm
다시 빌드 후 총 3개의 터미널을 연 상태에서 순서대로 실행하도록 한다
$ roscore
$ roslaunch bebop_driver bebop_node.launch
$ roslaunch darknet_ros darknet_ros.launch
이를 수행하면 아래와 같이 YOLO V3 window가 켜지면서 결과값이 나오게 된다
'드론' 카테고리의 다른 글
darknet ros 예제파일 실행 (0) | 2019.10.02 |
---|---|
ROS YOLO detection 코드 분석하기 (0) | 2019.10.01 |
Git install for Window (0) | 2019.10.01 |
Git 개요 (0) | 2019.10.01 |
ROS bebop2 installation (0) | 2019.10.01 |