메이킹로그   2026. 9. 21. 10:00

기록을 위한 메이킹 (5): 컴퓨터를 위한 견지망월(見指忘月)

초심으로 돌아가서 생각해보면, 메이킹 기록을 위해 사진을 찍는다고 함은 공작 중 그럴싸한 물건이나 장면이 나타났을 때 그것을 그럴싸한 사진으로 남기는 행위를 말한다. 보통 공작을 하면 인지부하도 인지부하지만 사진을 찍을 손이 없는 경우가 허다하다. 사진을 찍으려면 손에 들고있던 모든걸 내려놓고 (그리고 그렇게 함으로써 장면을 해치지 않도록 조심하고) 사진기를 손에 들어야한다. 사진을 찍을 순간은 일단 내가 정하는걸로 하고, 사진기를 손에 들 필요만 없게 해보자.

이런 상황에선 손가락 끝을 인식하는게 제일 자연스럽다. 예를들어, 검지손가락으로 물체를 톡톡 두번 두드리면 그 제스쳐를 인식해서 손가락이 있던 위치로 카메라 앵글을 돌려 사진을 찍어주면 편리할 것이다. 손가락 끝과 같이 화면상에서의 위치를 인식하는 여러가지 방법이 있지만, 일단 가장 먼저 떠오른건 ArUco 마커다. 

라이브러리가 잘 되어있어서 금방 프로토타입을 만들어볼 수 있었다. 실험에는 60mm 마커를 사용했다. 인식이 아주 매끄러운 수준은 아니었지만 그럭저럭 쓸만했다. 그러나 실제로 사용하려고 보니 문제가 있었다.

마커의 인식률은 기본적으로 화면상에서 차지하는 픽셀 수에 크게 영향을 받는다. 조금만 멀어지거나, 마커가 작아지거나, 마커가 화면에 대해 기울어져있으면 인식에 실패한다. 위 실패 시연에선 30mm 크기의 마커를 사용했는데, 손 끝에 붙이기엔 30mm도 이미 매우 크다. 카메라의 해상도가 높으면 해결되는 문제긴 한데... 마커를 인식하자고 카메라 해상도를 높이면 배꼽이 너무 커진다.

문득 마커의 기능이 과하다는 생각에 도달했다. 이런 종류의 마커를 쓰는 가장 큰 두가지 이유는 1) 마커의 로컬 좌표계 추정 2) 마커마다 고유한 ID 구분인데 나의 케이스엔 둘 다 필요 없는 기능이다. 말인 즉, 화면상에서 단일한 점만 찾아도 된다. 쉬운 방법은 사진만으로도 구분될 정도로 독특한 색을 손끝에 칠하는 것이다. 공작 과정에서 절대 나올 수 없는 색(e.g., 쨍한 자주색)으로 젤네일을 해도 되고, 주변 물건의 휘도를 다 잡아먹을 만큼 아주 밝은 LED를 손 끝에 달아도 된다. 후자를 채택하기로 했다.

근데 아주 밝은 LED를 손 끝에 달면 당연히 눈이 부시니까, 조금 더 꾀를 부렸다. 눈에 안 보이는 적외선 LED를 사용하고, 주변광을 제거할 어두운 필터를 카메라에 다는 것이다. 밝은 적외선 LED의 빛은 주변광과 다르게 필터를 통과해서 카메라에 도달할 것이다. 그리고 필터는... 엄마가 수제 화장품을 만들어 넣어줬던 빈 병을 쓰기로 했다. 너무나 적절한 재질이다.

필터링 전후로 대략 이정도 차이가 난다.

위쪽은 LED 없이 배경만 촬영하여 비교, 아래쪽은 LED를 켜고 비교했다. (적외선 LED라 켜도 사람 눈으로는 보이지 않는다) 왼쪽은 그냥 촬영했고 오른쪽은 필터를 앞에 두고 촬영했다. 필터 너머로 LED만 확연히 구분되는게 보인다! 이걸 이용해서 센싱을 해볼 수 있겠다.