AI 자율주행과정 수강생들의 발표 - 딥러닝을 이용한 자율주행 로봇
제가 참여하거나 수행하는 여러 수업중에 AI 자율주행 과정이라는 국비과정이 있습니다. [저희 수업에 대한 소개는 글 하단에~] 그 과정은 총 4번의 팀프로젝트를 수행하도록 되어 있는데. 그 중 3번째 프로젝트인 딥러닝 프로젝트에 대한 발표 영상 하나를 소개해 드릴려고 합니다.
흠. 프로젝트를 수행하는 기간 동안 제가 자주 지켜보느라 돌아다녔는데요. 그 때 마다 저 이름이 보였는데, 핑크라~라고 읽더군요. 뒤에 왜 저렇게 이름을 지었는지 알 수 있습니다.ㅠㅠ.
저 라즈베리파이5는 제가 어느 날 수업때 하루 종일 고민하는 어떤 주제를 던지고 그 결과를 받았는데 재미있었던 내용으로 제출한 친구에게 상으로 준 것인데, 잘 활용하고 있네요.
아무튼, ROS를 [아직 다 배우지 않았기 때문이기도 하지만] 사용하지 않고 직접 데이터 파이프라인을 고민하는 경험을 스스로 진행한 팀입니다. 이런 과정은 참 좋은것 같습니다. 이 로봇의 기능은 신호등 인식, 정지된 다른 차량 인식, 보행자, 표지판 등을 인식하도록 했고, 차선, 횡단보도도 인식하도록 했습니다.
일단 이 팀은 저런 괜찮은 GUI를 만들어 냈습니다. 로봇의 상태를 모니터링하도록 잘 되어 있습니다.
특히 주행 기록을 DB로 남기도록 또한 잘 시도 하고 있습니다.
저 그림이 잘 되었다 아니다는 사실 조금 두 번째 문제이고, 저렇게 시스템 구성을 표현하기 위해 노력했다는 것이 참 대단하다고 생각합니다. 저런 그림의 중요성을 이해하지 못하면 그리는게 재미없었을 테니까요^^
특히 객체 인식 관련해서도 검출된 객체와의 거리를 측정하기 위한 노력을 했다는 것이 또 중요합니다. 2D 카메라를 사용했기 때문에 쉬운 도전이 아니거든요.
주행 시나리오작업도 잘 했습니다. 그걸 또 저렇게 시나리오로 잘 그렸구요^^
어이쿠~ 순서도까지...
그리고 주행 기록을 남기기 위한 DB의 구조도 잘 표현했습니다.
뭐 이런 우아한 작업말고도 이 팀은 주제의 특성상 본인들이 직접 라벨링을 해야하는 슬픈 경우도 만났습니다. 뭐.. 숙명이죠.
차선의 인식은 Segmentation 모델을 사용합니다.
차선을 인식한 후 차선의 무게 중심을 찾습니다. 차선도 종류가 여러가지 이고, 각 종류별로 무게 중심도 찾으려고 한 것이 또 잘했습니다.
로봇이 추정해야할 target을 검출한 차선의 무게 중심으로 부터 도출하는 과정도 수행을 했습니다.
그리고 도로 위의 표지판, 신호등과의 거리를 2D 카메라를 사용하는 환경에서 어떻게든 계산해보려고 한 노력도 들어갔습니다.^^
그리고 실제 해본 사람만이 안다는 신호의 노이즈~ 그래서 또 필터등도 적용을 했네요.
이 팀의 로봇은 라즈베리파이와 메카넘휠로 된 로봇, USB 카메라 등의 부품들이 단순히 쌓여져 있습니다.ㅋㅋ. 그래서 약간 음... 독특한 분위기를 연출하는 로봇이 되었네요.
아무튼 나름 각종 IO도 달렸구요~
카메라 영상과 로봇 제어 신호를 인근 노트북과 주고 받는 통신 부분도 잘 만들어야 했겠죠~^^
GUI 구성도 저렇게 잡혔습니다. 메카넘휠이니 모터가 4개 인데, 각 모터의 상황을 모니터링하려고도 노력했네요.
실제 GUI가 동작하는 모습입니다. 잘했네요^^. 나머지는 아래 발표 영상을 직접 들으시죠. 소리에 약간의 노이즈가 있는데 감안해주시구요. 영상 마지막 부분에는 이 친구들의 로봇 시연 영상이 있으니 함께 봐주세요.%^^.
관련 링크
AI 자율주행 로봇 과정
https://addinedu-rosanddl.oopy.io/
핑크랩이 진행하고 있는 다양한 교육
https://www.pinklab.art/edu_contents
핑크랩의 수업을 들은 학생들의 수업 프로젝트 수준~
https://www.pinklab.art/edu_project
당부의 말씀
AI 로봇, 딥러닝 관련 몇 주 정도의 단기 교육이나 교육형 경진대회에 대해 고민하시는 기관에서는 저희에게 문의주세요~