사람의 손과 로봇 팔이 제스처를 보여주면 IDS NXT 카메라가 이를 분석합니다.

“가위, 바위, 보” 놀이가 가능한 로봇 - 3부

최종 게임에 등장한 로봇

로봇 공학 인플루언서이자 블로거인 Sebastian Trella의 즉흥적인 아이디어가 야심찬 프로젝트로 발전했습니다. IDS NXT 카메라와 AI 기반 제스처 인식 기술을 활용하여 로봇이 인간과 실시간으로 “가위, 바위, 보”를 하는 것입니다.
1부에서는 기본 개발에 초점을 맞췄습니다. 즉, 지능형 이미지 프로세싱을 활용한 제스처 인식 구현과 이에 따른 신경망 훈련이었습니다. 이미지 분석 및 결과 전달은 추가 PC 없이 IDS NXT 카메라에서 직접 또는 카메라를 통해 처리되었습니다. 2부에서는 특별히 제작된 vision app을 사용하여 인식된 제스처를 추가로 처리하는 과정이 포함되었습니다. 이제 3부에서: 플레이 준비가 완료되었습니다! 시스템 완성 후 테스트하였으며, 이제 게임이 진행됩니다.

최종 조립: 구성 요소에서 시스템으로

이러한 상호작용 시스템에서 가장 큰 과제는 개별 구성 요소 자체보다는 거의 항상 부품 간의 상호작용에 있습니다. 이 경우에도 카메라, 로직, 로봇 팔은 각각 안정적으로 작동했습니다: IDS NXT 카메라는 손 신호를 정확하게 인식하고, 의사결정 로직은 규칙에 따라 반응하며, 로봇은 그에 상응하는 동작을 구현했습니다. 그러나 이러한 모든 구성 요소를 하나로 모으는 것, 특히 정확한 타이밍, 신호 전송 및 동기화는 어려운 일이었습니다. “이론상으로는 좋은 아이디어가 실제로는 다를 수 있다는 것”을 Sebastian Trella는 곧 깨달았습니다. “하지만 IDS NXT 플랫폼의 개방형 아키텍처와 뛰어난 통합 덕분에 이러한 과제를 극복할 수 있었습니다. 집중적인 테스트와 반복적인 개선을 통해 프로토타입은 제대로 작동하는 게임으로 탄생했습니다.”

정밀 조정: 견고해진 제스처 인식

제스처 인식의 신뢰성이 훈련 데이터와 환경 조건에 크게 좌우된다는 것을 Sebastian Trella는 초기 단계에서 이미 경험하였습니다. “처음에는 제 손으로만 모델을 훈련시켰습니다. 그러나 '사진에 손이 없는 경우'를 고려하지 않았습니다. 이는 잘못된 평가로 이어졌습니다.” 하지만 IDS lighthouse 훈련 플랫폼을 통해 모델을 쉽게 확장할 수 있었습니다. 다양한 배경과 변화하는 조명 조건에서 다른 사람의 손을 포함한 새로운 이미지가 추가되었습니다. 다양한 피부 톤과 반지 착용과 같은 세부 사항도 훈련에 포함되었습니다. 훈련 데이터의 이러한 목표 지향적 다양화는 인식 성능을 크게 향상시켰습니다. 이제 AI는 누가 플레이하든, 어떤 환경에서든 안정적이고 신뢰할 수 있게 반응합니다. 동시에, Trella는 신경망의 일반적인 처리 방식과 훈련 과정에서 필요한 실용적 요구사항에 대한 이해가 단계별로 점차 깊어졌습니다.

실현: 로봇이 가위, 바위, 보를 하는 방법

로봇의 결정은 무작위로 이루어지며, 허세를 부리지 않고, 이전 게임으로부터 학습하지도 않습니다. 하지만 바로 그 점이 이 게임의 매력입니다: 인간 대 기계, 동등한 위치에서의 대결. 게임 라운드는 다섯 단계로 진행됩니다:

  1. 카메라로 사람의 손 캡처
  2. AI 기반 제스처(가위, 바위, 보) 이미지 평가
  3. 로봇 통신 및 이동
  4. 결과 결정(로봇 승리, 인간 승리, 무승부)
  5. 로봇 통신 및 이동

전체 게임은 추가 PC 없이 지능형 IDS NXT 카메라의 vision app을 통해 직접 제어합니다. 플레이어가 표시한 제스처를 인식하고, 인공지능으로 평가한 후, 로봇에 디지털 IO 신호를 전송하여 반응을 유발합니다. 공정한 게임 진행을 위해 로봇의 제스처는 플레이어의 행동에 영향을 받지 않고 중립적이며 무작위로 결정됩니다. 카메라가 플레이어의 제스처를 분석하는 동안 로봇은 시작 신호를 기다립니다. 그때서야 로봇도 자신의 제스처를 공개합니다. 이후 카메라가 경기 결과를 분석하여 최종 판정을 보내면 로봇이 이를 표시합니다.

대기 시간과 신호 전송을 조정하는 것이 핵심 과제였습니다. Vision app은 단 몇 분의 1초 단위로 플레이어의 제스처를 분석할 수 있지만, 로봇은 같은 속도로 반응할 수 없습니다. 따라서 이러한 방식으로는 동시에 제스처를 표시하고 평가하는 것은 실현할 수 없었습니다. 그러나 프로세스의 목표 최적화를 통해 응답 시간이 크게 단축되었습니다. “이제 더 역동적이고 자연스러운 게임이 가능합니다. AI는 카메라 이미지에 표시된 플레이어의 손을 인식하고 표시된 제스처를 직접 평가합니다. 이 기능은 매우 안정적으로 작동하기 때문에 모니터에 재표시할 필요가 없습니다. 로봇은 이제 게임 정보 표시를 완전히 담당하게 되며, 전체 게임 흐름을 크게 가속화합니다,”라고 Trella가 설명합니다.

전망: 개선할 부분과 다음 단계는 무엇일까요?

제스처 인식의 높은 신뢰성은 흥미로운 전망을 열어줍니다. “추가적인 발전 방향으로는 산업 환경에서 간단한 손동작을 통해 구현되는 터치리스 기계 제어 등이 있을 수 있습니다,” Sebastian Trella는 반추하며 덧붙입니다: “물론, 프로젝트가 완료된 후에도 여전히 해결되지 않은 질문들이 남아 있습니다. 예를 들어, 로봇과 카메라 간의 통신을 더욱 ‘세련되게’ 만들 수 있는 방법은 무엇일까요? RS-232, REST 또는 OPC-UA와 같은 인터페이스를 활용한 대화형 방식을 통해 가능할까요? 다음 단계는 더욱 현실적인 게임 플레이를 위한 이동 가능한 로봇 손이 되지 않을까요?”

이제 '가위, 바위, 보' 프로젝트는 끝났지만, Sebastian Trella는 이미 AI를 활용한 인간과 기계의 상호작용에 대한 새로운 아이디어를 계획하고 있습니다. 이제: 로봇이 (AI를 사용하여) 인간과 함께 게임을 할 수 있다면, 그 외에 또 어떤 것을 할 수 있을까요?