YOLO
설치하기
터미널에서 catkin_ws/src 폴더로 이동합니다.
darkros 사이트에서 경로를 가져와주세요.
git clone 명령으로 해당 경로에 있는 패키지를 다운 받습니다.
그 후, workspace로 이동해서 빌드
만약 빌드 과정에서 이런 에러가 난다면
해당 파일의 아래 local 부분을 추가해서 수정해주세요
이제 다운받은 패키지를 적용시키기 위해 source ~/.bashrc를 수행해줍니다.
설치 확인하기
아래 경로의 yolo_network_config 폴더로 이동해주세요.
cd ~/catkin_ws/src/darknet_ros/darknet_ros/yolo_network_config/ |
weights 폴더로 이동해서
sudo wget http://pjreddie.com/media/files/yolov3-tiny.weights 로 그 뭔가를 받아주세요.
일단 roscore를 실행하고, 로봇에서 카메라를 기동해봅시다.
카메라가 발행하는 토픽은 /main_camera /image_raw 입니다.
그 후, launch 파일들이 보관된 곳으로 이동해서
nano로 darknet_ros.launch를 열어주세요.
먼저 아래 그림의 두 군데를 수정하고
아래까지 수정한 다음에 저장해줍니다.
파일을 빠져나가서 nano로 config 폴더의 ros.yaml을 열어주세요.
카메라 토픽 부분을 변경해준 다음
드디어 YOLO를 실행해봅니다~
rqt_image_view를 열고 아래 토픽 항목을 알맞게 바꾸어주세요.
아래는 darknet_ros를 실행한 화면입니다.
rqt_image_view로 확인해보면
근데, 그림 구경 말고 어떻게 내 코드에서 사용하지?
YOLO 설치 Error 해결방법
최신 Jetpack의 기본 opencv 버전이 4.2로 설치된 경우 다음과 같은 에러가 발생한다.
이 문제는 cv_bridge가 예상하는 opencv 위치가 /usr/include/opencv에 있어야하는데 jetson에서는
이 파일이 /usr/include/opencv4/opencv2에 있기 때문이다.
https://answers.ros.org/question/199279/installation-from-source-fails-because-of-cv_bridge-include-dir/ 문서를 따라 다음과 같이
symlink를 생성한다.
$ sudo ln -s /usr/include/opencv4/opencv2/ /usr/include/opencv |
YOLO 사용하기
아래의 msgs 관련 패키지만 내 PC에 설치하면 됩니다.
먼저 darknet_ros를 내 PC에 받고
그리고 darknet_ros_msgs만 남기고 지워주세요.
그리고 워크스페이스로 이동한 후에 해당 패키지만 빌드해줍니다.
그리고 source ~/.bashrc 로 적용시키고,
다시 이렇게 실행
이 상태에서 rostopic list 로 darknet_ros가 잘 동작하고 있는지 확인하고,
rostopic echo 명령으로 원하는 토픽의 값을 봅니다.