티스토리 뷰

2021.6.9 14:33

 

안녕하세요

프로그래밍을 배우는 빛나는 샤트입니다.

 

AIFFEL 해커톤3 5주차 진행 현황 및 후기.

 

  • 기간: 2021.05.10 ~ 2021.06.18
  • 주제: 특정 1인을 추적하며 따라가는 자율주행 모바일 로봇 구현(위고 코리아와 협업, 하드웨어 장비 및 기술 지원)
  • 인원: 총 5명
  • 역할: 팀장, Tracking 알고리즘 개발, ROS를 활용한 로봇 구동 & 알고리즘 연동

 

1. 5주차 목표: DeepSORT + ROS + d435 depth camera(RGB, depth) 시나리오 4개 주행 테스트, 조명 제어

아래와 같이 depth 값과 bbox 값을 이용한 구동을 분류했다.

Depth bbox
사람과 로봇의 거리 측정 타겟 객체 인식
장애물과의 거치 측정 사람의 좌우 움직임 추적

깊이값을 이용해서 사람과 장애물의 거리를 측정해 Go/Stop을 결정하고 회피를 위한 좌/우 회전을 하고

bbox를 이용해서 타겟 객체를 인식하고 좌우 움직임을 추적해 좌/우 회전 실시.

 

2. 5주차 업무 키워드

  • DeepSORT + ROS code
  • DeepSORT + d435 RGB값 이용한 추적
  • depth camera를 이용한 장애물 인식 영역 구축
  • 로봇 상태별 조명 display를 위한 제어

3. DeepSORT + ROS code / DeepSORT + d435 RGB

ROS를 이용한 발행 코드 흐름을 이해하기 되어서 DeepSORT 코드에 적용하는 데 어렵지 않았다.

(하지만 꽤 많은 시행착오가 필요했다.)

 

그리고 아직 제대로 다루지 못했던 d435 camera를 이용해 RGB값을 이용해 object tracking을 시도했다.

크게 어렵지 않게 bbox를 찾고 tracking을 하는데 성공했다!

 

일단 깊이를 이용한 코드가 100% 완성이 되지 않아 일단 bbox를 이용해 객체 인식과 추적 그리고 좌우 회전이 잘 되는지 테스트했다. 테스트 주행 현장은 아래와 같다.

초안으로 작성한 코드로 테스트를 했는데 나름 잘 따라오고 방향전환도 자연스러웠다.

 

4. depth camera를 이용한 장애물 인식 영역 구축

아래 사진과 같이 로봇이 전진할 때 장애가 생길 수 있는 영역을 설정해서 장애물 영역을 지정했다.

만약 좌측에서 장애물이 포착되면 우회전을 통해 회피를 한다.

해당 코드는 작성이 완료되었고 차주 월요일에 바로 테스트를 할 예정이다.

 

 

5. 로봇 상태별 조명 display를 위한 제어

아래 글에 정리함.

https://shate-programming.tistory.com/120

 

[Object Tracking Robot]Study 내용 정리 (6) - 발행 토픽 이용하기

안녕하세요 프로그래밍을 배우는 빛나는 샤트입니다. 자율주행 프로젝트 We-Go 진행하면서 공부한 내용들을 간략히 정리한 글입니다. 1. 주제: ROS에서 발행되는 Topic를 확인하고 발행 코드 작성

shate-programming.tistory.com

 

 

6. 5주차 마무리

어느덧 마지막 한 주를 남긴 시점이다.

아직 해야할 일이 많아 보이는데...ㅠ

 

그래도 추적 알고리즘을 적용해보고 깊이값을 이용해보는 등 다양한 시도를 했다.

다음주에는 작성한 코드를 기반으로 테스트를 하면서 개선을 해야겠다.

문제는 다음주 월요일에 로봇을 회수해간다는데...

내려오는 길에 교체할 로봇을 같이 가져오겠지...?

LIST
댓글