요즘 공부하고 있는 '개발자를 위한 머신러닝&딥러닝'이라는 책에서 컴퓨터 비전의 예제로 가위, 바위, 보의 이미지를 인식하는 부분이 있었는데, 해당 파트를 공부할 때는 같은 장에 거의 똑같은 예제가 소개되어 있어 생략하였지만 실제로 구현해 본다면 재미있을 것 같다는 생각이 들었다. 그리고, 사진이 아닌 실시간 영상을 가위, 바위, 보로 구분하여 그때마다 항상 이기는 패를 내도록 프로그래밍한 뒤 이를 장갑에 탑재해서 사용자가 항상 가위바위보를 이길 수 있게 하는 것을 목표로 한다.
가위, 바위, 보를 구분하는 모델을 만드는 것은 큰 어려움이 예상되지 않지만, 이 모델을 컴퓨터가 아닌 별도의 기계 장치에서 가동해야 한다는 것과 그러한 기계 장치를 디자인하고 설계하고 제작하는 것이 더 어려울 것 같기도 하다! 하지만 만약 이 장갑이 실제로 만들어져서 사용할 수 있게 된다면... 앞으로 인생이 많이 편해지지 않을까? 생각만 해도 설렌다!
여기에 있는 유튜브 영상이 최종 목표에 가장 가깝다. 하지만 이걸 장갑 모양으로 착용할 수 있도록 만드는 것이 관건이 될 것 같다!
원래대로라면 다양한 상황에서 촬영한 가위, 바위, 보의 이미지를 준비하고 모델에 학습시켜야겠지만, 여기에서 별도의 코딩 없이 데이터셋을 만들고 모델을 쉽게 파일로 추출할 수 있는 방법을 찾을 수 있다. 또한, 전이 학습을 적용하고자 한다면 여기의 블로그를 참조하는 것도 좋을 것 같다. 사실 여기까지는 관련된 자료나 가위, 바위, 보를 분류하는 프로젝트를 이미 해 본 사람이 많아서 큰 어려움은 없을 것 같다.
친구들과 가위바위보를 하면 이러한 변칙도 많이 보이는데, 기존 데이터셋에는 아마 없겠지만 이러한 데이터도 훈련 데이터에 적극적으로 반영해서 정말 거의 모든 경우에 지지 않는 결과물이 나오면 좋겠다!
사실 배보다 배꼽이 더 커진 감이 있긴 하지만 이 프로젝트에서 가장 어려운 부분이 여기가 될 것 같다. 우선 장갑의 디자인을 하고 모터를 장착하는 등의 작업을 해야 하는데, 일단 아두이노를 써볼까 하는 생각은 있지만 아두이노처럼 기계 장치를 다뤄본 적이 거의 없어서 감이 잘 오지 않는다. 다행히도 중학교 때 기술 선생님께서 아두이노로 만들기를 많이 하셔서, 도움을 받을 수 있다면 좋겠다...