"검출기 셋, 해부 셋, 목줄은 하나. 셋 다 가리키기만 하고 아무도 결정하지 않아."
검출기는 셋, 일은 하나
얼굴 말고도 landmark 모델을 둘 더 써. PoseLandmarker 는 어깨, 엉덩이, 팔꿈치, 무릎 같은 관절 33 개를 찾아. 몸 전체 골격이지. HandLandmarker 는 손마다 21 점을 찾고. 해부는 완전히 다른데 역할은 얼굴 모델이랑 똑같아. 검출기가 할 일은 landmark 가 사진 어디에 있는지 말해주는 것뿐이거든. 주제는 달라도 계약은 하나야. 제안까지, 그 이상은 없어.
근데 몸은 통짜가 아니다
여기서부터 갈라져. 얼굴은 거의 통짜라서 표준 머리 하나에 solvePnP 만 걸면 자세가 딱 잡혀. 몸이랑 손은 관절로 꺾이는 물건이야. 관절마다 따로 움직이니까 통째로 맞출 형태가 아예 없어. 그래서 landmark 를 받아먹는 기하가 주제별로 갈라져. 인물이면 흉곽과 골반에 상자를 씌우고 팔다리마다 끝이 가늘어지는 원뿔 덩어리를 붙여. 손이면 손바닥에 상자를 씌우고 손가락 마디마다 작은 원뿔을 세우고. 목줄은 같은데 그 끝에 달린 작도가 다른 거지.
깊이는 정직하게 약한 자리다
사진 한 장으로는 몸의 깊이가 잘 안 잡혀. 단축된 저 팔뚝이 너한테 오는 중이야, 멀어지는 중이야? 한 장만 보면 둘이 거의 똑같이 생겼고, 아무리 영리하게 굴어도 완전히는 못 갈라. 정보가 아예 없거든. Loomis 는 믿을 만한 도구가 할 법한 방식으로 처리해. 그렇다고 말해버려. 아키텍처 문서에도 헤어날 길로 제대로 된 3D 자세 추정기를 적어뒀지, 모호함이 풀린 척하는 임시방편을 쌓아 올리지 않았어. 한계를 담백하게 알리는 게 가끔 거꾸로 나오는 자신만만한 추측보다 훨씬 값져.
역할은 하나, 주제는 여럿
한 발 물러나면 모양이 딱 다형성이야. fitting 단계는 'landmark 를 제안한다' 는 인터페이스 하나고, 주제마다 그 뒤에 자기 작도를 붙이는 거지. Bonfire 가 '악기는 보여주는 방식이고 음악이 모델' 이라고 말할 때 쓰는 구조랑 같아. 하나의 진실, 여러 갈래의 표현. 여기선 'landmark 가 제안이고 작도가 갈래' 인 거고, 다음 트랙인 네 가지 작도가 통째로 이 위에 서 있어.