2년이 지난 지금, SketchAR 개발에서 가장 중요한 단계 중 하나를 여러분께 보여드릴 준비가 되었습니다. 그리고 컴퓨터 비전 분야 전반에서도 마찬가지입니다.
저희 방법론을 컴퓨터 비전(CV) 분야에서 어떻게 개발해왔는지 이미 알고 계실 겁니다. 이 방법들은 가상 오브젝트를 표면에, 심지어 평평한 표면에도 고정시키는 데 도움을 줍니다.
최고의 마커는 마커가 없는 것입니다! CV 분야의 정보 부족으로 인해 개발의 복잡성이 더욱 가중되었습니다. 지금까지 가장 정교하게 발전한 CV 분야는 얼굴 인식 영역입니다. 텍스트, 기호, 사물 인식에서도 진전이 있었지만, 평평한 표면에 관해서는 그렇지 않았습니다. 그래서 저희는 이런 근본적인 문제들에 대한 해결책을 한 단계씩 찾아나가야 했습니다.
Sketch AR-Anchors.

SketchAR의 마커 없는 트래킹 방식은 평평한 표면을 감지할 수 있습니다. 게다가 카메라를 확대해서 주변 환경을 명확히 볼 수 없고 흰색 표면만 보이는 극한 상황에서도 안정적으로 작동합니다.
어떻게 작동할까요?
영화 '그레이의 50가지 그림자'를 기억하시나요? 모르셔도 괜찮습니다. 제목만으로도 저희가 '50가지 흰색 음영' 이상을 인식할 수 있게 만들었다는 걸 이해하실 수 있을 테니까요. 스마트폰 카메라는 다양한 톤의 흰색을 인식할 수 있습니다. 게다가 손이 항상 표면을 가로지르는 상황이라 작업이 더 복잡해진다는 점도 잊지 마세요. 이 외에도 저희는 머신러닝과 신경망을 활용해 주변 환경을 분석합니다. 앵커 포인트 간의 연결과 관계를 모두 데이터로 수집한 다음, 실제 표면에 대한 가상 오브젝트의 위치를 분석합니다.
아래 예시를 보시면 종이 위의 '앵커'들이 손이 종이 위를 움직일 때마다 포인트를 잃는 것을 확인하실 수 있습니다.

ARKit/ARCore의 문제점: 카메라가 평평한 표면에 가까워지면 가상 이미지가 날아가버립니다.
저희 알고리즘은 평평한 표면에서 정확도가 낮고 가상 오브젝트가 현재 위치에서 벗어나는 ARKit이나 ARCore보다 이 문제를 더 잘 해결합니다.
예시에서 볼 수 있듯이 카메라가 주변 환경을 전혀 보지 못하고 흰색 평면만 보이기 때문에 가상 이미지가 심하게 흔들립니다. 평평한 표면 앞에 배치될 때마다 가상 오브젝트가 계속 밀려나는 문제는 증강현실을 다루는 모든 기업에게 큰 골칫거리입니다.
SketchAR의 마커 없는 트래킹 방식은 변환 행렬(+ML과 신경망)을 기반으로 합니다. 포인트 간의 연결 덕분에 가상 드로잉이 밀리지 않습니다(가상 스케치는 영상에 표시되지 않습니다). 게다가 재초기화가 일어나서 그리드 상의 포인트들이 원래 위치로 돌아갑니다. 손이 프레임 밖으로 나가거나 다른 사각형으로 이동하면 해당 위치의 픽셀이 다시 인식됩니다.
SketchAR의 방식 vs. ARKit/ARCore

STMWM을 사용하면 손이 표면의 60% 이상을 가로질러도 가상 이미지(개구리)가 안정적으로 유지됩니다. (ARKit/ARCore는 사용되지 않았습니다.)
저희는 이 문제를 해결했으며, 기술 구현은 현재도 계속 진행 중인 작업입니다. STMWM이 올해 안에 모든 작업을 스스로 처리할 수 있게 될 때까지는 기존의 마커 기반 솔루션을 계속 병행해서 사용할 예정입니다.
감사합니다,
SketchAR 팀 드림


