본문 바로가기

프로그래밍/종합설계 딥러닝 프로젝트

로봇팔로 귤 수확하기(스마트팜)_번외편

이번 포스팅은 사과말고 다른 과일도 가능한지 테스트 하기위해 딥러닝 모델로 귤을 감지하고 수확하는 추가 실험입니다.

다시 말하자면 사과는 정육면체와 비슷해서 3D Detection에 유리하진 않았는지 다른 과일에 대해서도 Robust한지 알아보는 실험입니다.

 

사과와 귤

 

사과와 귤

 

귤은 부피로 따지면 평균적으로 사과의 반보다 작기때문에 더 정밀한 검출이 요구됩니다.

따라서 복셀사이즈를 또 반으로 줄여서 0.25cm가 되게 하고 모델의 구조는 실험적인 결과로 3단계로 했을때가 가장 좋았기때문에 3단구조로 하여 실험을 진행하였습니다. Train 데이터는 59개 이며 Validation 데이터는 40개로 구성하였습니다.

 

실험 결과

귤:mandarin 에 대한 실험 결과

 

같은 물체를 감지 했다고 해도 기울기 정도에 따라 IOU에 영향을 미치기 때문에 0.5AP에서는 성능이 약간 감소 하였습니다. 따라서 0.5AP 부분에선 사과에 비해 약간 떨어지나 0.25AP에서는 사과와 같은 성능을 보였습니다.

 

실험 결과(사진)

 

빨간색: ground truth, 초록색: prediction

 

로봇팔 실험  데모 결과

 

사과와는 달리 귤은 타원형으로서 장축과 단축이 있으므로 3D Detection할때 단축을 알아내는 것도 중요한 요소였습니다. 완벽히는 아니더라도 귤의 기울기에 따라 바인드 박스가 기울어 진것을 확인할수 있었습니다.

다음은 영상으로 확인해보겠습니다.

 

실험 결과(동영상)

 

 

사과는 집게보다 커서 잡을수는 없었는데 귤은 실제로 검출하고 잡을수 있었습니다. 이때 장축보다는 단축으로 잡는것이 유리하기 때문에 로봇팔의 5번째 관절에서 귤의 단축에 따라 회전하는 코드를 추가 하였습니다.

이렇게 추가 실험도 성공적으로 마무리 되었습니다.

지금까지 종합설계 프로젝트 포스팅을 봐주셔서 감사합니다.