본문으로 바로가기

최근 여러글에서 이야기했지만, 제가 지금은 (임시.ㅠㅠ.로) 한양대 에리카에 있습니다. 여러 고마운 분들의 배려로 아주 다양한 재미있는 일들을 경험중이랍니다. 그 중에 또 하나 멋진 일은 아주 멋진 대학원생들과 함께 여러 일들을 할 수 있다는 것이죠. 또 어떤 친구는 강화학습과 실제 로봇의 접목에 엄청난 고민을 하면서 빠르게 성장중입니다. 어떤 친구들은 영상인식 관련 다양한 스킬셋을 갖춰가고 있습니다. 또 어떤 친구들은 ROS와 가제보의 사용능력이 참 좋구요. 또 어떤 친구들는 딥러닝 관련 능력을 엄청 배양중입니다. 이런 친구들과 함께 지내다 보니, 제가 나이와 경험만으로 더 이상 이야기할 수는 없더라구요. 그래서 그 친구들의 성과를 또 옆에서 구경하면서 배워가고 있답니다. 그러다가 문득 이 친구들의 성과를 혹은 이 친구들의 github이나 블로그를 제가 소개하고 그 사용법을 설명하면 좋겠다고 생각한 거죠. 그래서 오늘은 그 1탄으로 ROS Melodic에서 YOLOv1을 동작하게끔 해주는 패키지를 만들어서 자신의 github에 공유하고 있는 한 친구의 작품을 소개하려고 합니다.

일단 사전 준비 작업으로 먼저, cv-camera 패키지를 설치합니다. 노트북에 달려있는 카메라를 사용하기 위해서이지요.

그리고, Melodic이 설치되는 Ubuntu 18.04에 설치되어 있는 opencv의 ROS를 이어주는 CvBridge도 설치(sudo apt-get install ros-melodic-cv-bridge)합니다.

그리고 이제 제가 이야기한 제가 있는 연구실의 정말 많은 멋진 연구생 중 한명의 github에 들어갑니다. 이미 이 친구가 YOLOv3-ROS라는 패키지를 적절히 생성했네요. 그런데 이 패키지가 GPU 사용자들용으로만 만들어져있고 본인의 프로젝트 위주로 되어 있어서, 제가 다시 fork해서 CPU 사용자도 weight를 돌릴 수 있도록 변경했습니다.

그래서 제 github에서 받으면 CPU에서도 구동 가능합니다.

그리고 간단히 build 하시구요~

아~ 그런데 torch로 되어 있어서 torch 설치 안내페이지로 가서 조금 아래로 가시면~

이렇게 자기의 환경에 맞춰 설치 명령을 얻을 수 있습니다.

그리고 GOGO~~~

흠... 또 하나~ scikit-image도 설치합니다. 음... 언제 한 번 이 패키지도 강좌를 하고 싶네요^^

아.. 이제 중용한 일이 남았죠.. 패키지의 models 폴더에서 wget 명령으로 yolov3.weight를 받습니다.~

그리고, detector.launch 파일을 찾앗 바꿔줍니다. 만약 tiny를 쓰고 싶다면 그렇게 변경하시면 됩니다.

그리고 즐길 시간입니다. roscore~~~

그리고 camera_node 실행~

그리고, detector.launch 실행~

rqt_graph의 결과는 심플합니다. 카메라노드가 image_raw 토픽을 던져주고, detector_manager가 YOLOv3를 구동해서 인식을 하는 거죠~

이제 rqt_image_view를 실행하신다음

토픽을 detections_image_topic으로 하면~

짠~~~^^ 앞으로 시간이 나면 제 주변 대학원생들의 성과를 하나씩 소개해드리도록 하겠습니다. 아마 어떤 회사, 어떤 연구원에서든 멋지게 적응하며 소속된 기관의 생산성을 향상시켜 줄 것입니다.^^


댓글을 달아 주세요

  1. Suah 2019.11.27 17:44

    😘🐻🐍🧸✈🥰

  2. BlogIcon Deborah 2019.11.28 04:25 신고

    오늘도 공부 잘했어요. 상쾌한 하루되세요.

  3. BlogIcon 핑구야 날자 2019.11.28 06:56 신고

    덕분에 잘 알고 갑니다 좀 어렵기는 하지만 또 배우고 가네요

  4. BlogIcon 공수래공수거 2019.11.28 08:19 신고

    새로운 경험을 하고 계시는군요.
    전문적인 분야지만 도움 되시는 분들이 많으셨으면 합니다.^^

  5. 프로그램을 하나도 모르는데 저도 배워보고 싶어지네요.
    요즘은 코딩이 대세인듯 싶습니다.

    행복한 하루 되세요.

  6. BlogIcon peterjun 2019.11.29 07:39 신고

    정말 재미있게 하고 계실 것 같은 확신이 듭니다. ^^
    대학원생들과 함께 계시면서 가르쳐주고, 또 배우기도 하시고 그런 마인드가 멋지시네요. ㅎㅎ

  7. BlogIcon 북두협객 2019.11.29 14:18 신고

    오늘은 평소보다 복잡한 고난위도 코딩이 많이 보이네요!

  8. BlogIcon 잉여토기 2019.12.05 08:00 신고

    카메라 속에 잡은 피사체가 무엇인지를 나타내준다니 펀하고 쿨하고 섹시한 프로그램이네요.

  9. BlogIcon 드래곤포토 2019.12.05 12:41 신고

    즐거운 12월 되세요 ^^

  10. BlogIcon 구차니 2019.12.23 02:58 신고

    와.. 멋지네요 저도 노트북이 있고 우분투가 깔려있으니 한번 시도를 해봐야겠네요
    i5-2520에 내장 intel 이라 성능이 어떨진 모르겠습니다 ㅠㅠ

  11. thank u 2020.02.09 21:54

    rosrun을 하니 이런 에러가 나타나네요... ㅠㅠ 혹시 어떤 부분 때문인지 아시나요?
    VIDEOIO ERROR: V4L2: Pixel format of incoming image is unsupported by OpenCV
    [ERROR] [1581252244.469328464]: cv camera open failed: device_id0 cannot be opened

  12. 김정인 2020.02.14 10:48

    안녕하세요! PinkWink님 항상 글 잘보고 있습니다:) 다름이 아니라 혹시 OpenCV는 어떤 버전을 설치하셨나요?? 저는 현재 jetson보드 위에서 작업을 하고 있는데 ROS melodic을 설치하면 opencv4.1.1이 생기더라구요 그래서 3.4를 설치하라는 말이 많아서 지우고 3.4를 설치하는데 build 오류가 나네요!ㅠㅠ

    • BlogIcon PinkWink 2020.02.16 12:34 신고

      4.X 버전이 아니라, 3.X 버전이 깔릴텐데요.ㅠㅠ. 이상하네요. 인터넷을 보니 지우고 다시 빌드하는 안내글들이 많더라구요^^

    • 김정인 2020.02.19 16:08

      그러면 4.1.1지우고 3.4.x등으로 다시 설치하는 건가요?? 원래 opencv가 자동적으로 설치되는 거군요!!

    • 김정인 2020.02.20 15:41

      그러면 4.1.1지우고 3.4.x등으로 다시 설치하는 건가요?? 원래 opencv가 자동적으로 설치되는 거군요!!

    • BlogIcon PinkWink 2020.02.21 16:59 신고

      그게... 아마 설치된 버전 그대로 사용해도 되는데.. OpenCV 제거 방법도 많이 올라 있습니다.

  13. BlogIcon 모형빌더 2020.02.14 19:52

    안녕하세요
    지금 내용은 본글과 상관없는 얘기인데...문제가 되면 추후 삭제할께요
    그래도 제가 글을 남기는 이유는 ros를 사용하시기에

    저도 곧 ros에서 darknet(wrapper) 테스트 진행예정/ D435i 활용

    제가 이번주에 도커를 시작해 봤는데...실행이 쉽지 않네요
    아무래도 파이썬 문제가 아닐까 싶어서 문의 드려요

    테스트 환경: 우분투 18(py 3.6) / ros:melodic(py 2.7)
    ★ROS를 설치하였기에 짐 py 디폴트가 2.7 입니다.

    그리고 제가 사용하고자 하는 도커이미지: ufoym/deepo

    -----------------------------------------------------------

    제가 참고한 페이지는
    https://eungbean.github.io/2019/11/11/Docker-for-ai/
    도커 run 부분은 <6-1. (선택1) Jupyterlab>

    sudo docker run --gpus all -it \
    -p 8888:8888 -p 6006-6015:6006-6015 \
    -v ~/docker:/data \
    --name lab \
    --ipc=host eungbean/deepo:lab \
    jupyter lab --no-browser \
    --ip=0.0.0.0 \
    --allow-root \
    --NotebookApp.token= --notebook-dir='/data'


    >> 주피터, import tensorflow, caffe 실행이 안됨
    >> docker run 이후 docker 폴더에 data 폴더가 생겨야 되는거 아닌가요?? 안 생기네요 ^^


    긴글 읽어주셔서 감사합니다.
    제가 괜히 금요일 밤에 문의 드리는건 아닌지 ^^

  14. 김정인 2020.02.17 22:07

    제가 현재 pc에서 yolo를 돌려서 얻은 weight를 jetson에서 사용하려고 하는 중인데 pc에서는 tensorflow를 사용했습니다. 혹시 pytorch와의 차이를 아시는지 여쭤도 괜찮을까요??

  15. 케인인님한판해요 2020.04.29 21:26

    Ubuntu 18.04 의 ROS melodic 환경에서 Asus Xtion pro 카메라로 돌려봤더니 제대로 움직이네요~ 매번 교수님께는 신세 많이 지고 있습니다. 정말 유익한 공부였어요~

  16. Fanic 2020.08.01 23:02

    관리자의 승인을 기다리고 있는 댓글입니다