본 논문은 사용자의 손 이미지 위에 선택된 반지를 사실적으로 시각화하기 위해 MediaPipe 손 랜드마크 검출과 YOLO-V8 객체 검출을 통합하여 선택된 반지를 자동으로 정렬, 크기 조절 및 오버레이하는 React Native 기반의 가상 반지 착용 시스템을 제시한다.
원저자:Vishnu D. Burkhawala, Zankhana J. Barad, Harshadkumar B. Prajapati, Vipul K. Dabhi
당신이 온라인으로 반지를 쇼핑하고 있다고 상상해 보세요. 보통은 반지가 손가락에 어떻게 보일지 추측해야 하거나, 직접 써보기 위해 오프라인 매장을 방문해야 합니다. 이 논문은 비싼 장비나 슈퍼컴퓨터 없이도 스마트폰만 있으면 자신의 실제 손에 특정 반지가 어떻게 보이는지 정확하게 보여주는 디지털 "매직 미러"를 소개합니다.
이 시스템이 어떻게 작동하는지 간단한 단계별로 설명하면 다음과 같습니다.
기존 솔루션의 문제점
저자들은 이 "가상 착용(virtual try-on)"을 구현하는 다른 방식들이 마치 둥근 구멍에 사각 못을 끼워 맞추려는 것과 같다고 설명합니다.
"스티커" 방식: 어떤 앱들은 단순히 반지의 평면 이미지를 손가락 위에 붙여버립니다. 이는 3D 물체 위에 스티커를 붙이는 것과 같습니다. 손을 움직여도 스티커는 함께 회전하지 않기 때문에, 가짜처럼 보이고 둥둥 떠 있는 느낌을 줍니다.
"홀로그램" 방식: 다른 방식들은 증강 현실(AR)을 사용하여 3D 반지를 만듭니다. 멋지긴 하지만, 매우 비싸고 고성능인 스마트폰이 필요합니다. 일반적인 스마트폰에서는 반지가 떨리거나, 미끄러지거나, 손가락 위에 안착하지 못하고 허공에 떠 있는 것처럼 보입니다.
"AI 화가" 방식: 어떤 시스템은 강력한 AI를 사용하여 전체 이미지를 다시 그립니다. 이는 마치 화가를 고용해 당신의 손과 반지를 다시 그리게 하는 것과 같습니다. 문제는 AI가 실수로 손의 모양이나 반지의 디자인을 바꿀 수 있다는 점이며, 이를 실행하기 위해서는 거대하고 비싼 컴퓨터(GPU)가 필요하다는 것입니다.
새로운 솔법: 스마트한 재단사
Vishnu Burkhawala와 그의 팀이 제안한 시스템은 다릅니다. 이미지를 새로 그리거나 무거운 3D 홀로그램을 사용하는 대신, 그들은 수학을 이용해 반지를 완벽하게 측정하고 맞추는 스마트한 재단사처럼 행동합니다.
이들의 4단계 프로세스는 다음과 같습니다.
손가락 찾기 (지도 만들기): 먼저, 앱이 당신의 손 사진을 찍습니다. 이 시스템은 MediaPipe라는 도구를 사용하여 손가 끝과 마디의 기저부 같은 21개의 특정 "점(랜드마크)"을 찾아냅니다. 이것은 반지가 정확히 어디에 위치해야 하는지 알기 위해 손가락의 지도를 그리는 과정과 같습니다.
반지 분리하기 (오려내기): 다음으로, 시스템은 당신이 써보고 싶은 반지의 사진을 살펴봅니다. 시스템은 YOLO(물체를 포착하는 스마트 카메라)라는 도구를 사용하여 반지를 찾아내고 배경에서 잘라냅니다. 이는 마치 정교한 가위로 잡지에 있는 반지만 딱 맞게 오려내는 것과 같습니다.
맞춤 조절 (수학적 계산): 이 부분이 마법 같은 구간입니다. 시스템은 벡터 대수(각도와 방향을 측정하는 수학의 일종)를 사용하여 두 가지 작업을 수행합니다.
회전: 시스템은 손가락의 각도를 측정하고, 그에 맞춰 반지의 이미지를 완벽하게 회전시킵니다. 손가락이 기울어져 있다면 반지도 함께 기울어집니다.
사이즈 조절: 시스템은 손가락의 두께를 측정하고, 실제 반지처럼 딱 맞도록 반지의 크기를 키우거나 줄입니다.
비유: 반지를 찰흙 덩어리라고 상상해 보세요. 시스템은 단순히 붙이는 것이 아니라, 손가락의 곡선과 크기에 맞춰 찰흙을 빚어 맞춥니다.
최종 모습 (블렌딩): 마지막으로, 시스템은 크기와 회전이 조정된 반지를 당신의 손 사진 위에 배치합니다 most. 시스템은 경계선이 자연스러워 보이도록 블렌딩 기술(부드러운 지우개 같은 방식)을 사용하며, 조명과 어울리도록 약간의 블러(흐림) 효과를 추가합니다. 그 결과, 반지가 손가락 위에 떠 있는 것이 아니라 실제로 물리적으로 놓여 있는 듯한 사진이 완성됩니다.
왜 중요한가
저자들은 자신들의 시스템을 Google AI, OpenAI, 그리고 상업적 주얼리 사이트인 Candere와 같은 거물들과 비교 테스트했습니다.
AI 화가들 (Google/OpenAI)은 반지의 디자인이나 손의 모양을 바꾸는 경우가 많았습니다. 이는 특정 제품을 착용해 보려는 목적에 부합하지 않습니다. 또한 이미지를 생성하는 데 시간이 오래 걸립니다.
AR 사이트 (Candere)는 반지가 공중에 떠 있는 것처럼 보이게 만들었습니다.
이 새로운 시스템은 원래 사진의 손과 반지를 똑같이 유지하면서도, 둘을 완벽하게 결합해 냈습니다.
결론: 이 시스템은 일반 스마트폰에서도 매끄럽게 작동하는 가볍고 디지털화된 재단사와 같습니다. 슈퍼컴퓨터나 특별한 VR 헤드셋이 필요하지 않습니다. 단순히 손가락을 측정하고, 포즈에 맞춰 반지를 회전시키며, 크기를 조절하여 자연스럽게 합성할 뿐입니다. 이를 통해 온라인에서 주얼리를 착용해 보는 경험을 훨씬 더 실제적이고 접근하기 쉽게 만들어 줍니다.
기술 요약: 가상 반지 착용 (Virtual Ring Try-On)
문제 정의
본 논문은 온라인 쇼핑 맥락에서 보석, 특히 반지에 대한 사실적이고 접근 가능하며 효율적인 가상 착용 경험을 제공하는 과제를 다룹니다. 기존 솔루션들은 다음과 같은 상당한 한계를 가지고 있습니다:
오버레이 기반 방식(Overlay-based approaches): 계산량은 적지만, 손가락의 방향, 깊이 또는 조명을 반영하지 못해 정적이고 부자연스러운 외형을 보이는 등 사실감이 떨어집니다.
증강 현실(AR) 3D 솔루션: 몰입감을 제공하지만, 고사양 기기에 의존하는 경우가 많습니다. 또한 지연 시간, 지터(jitter), 정렬 불량 현상이 빈번하게 발생하여 반지가 손가락에 붙어 있는 것이 아니라 "떠 있는" 것처럼 보이게 합니다.
생성형 및 확산 모델(Generative and Diffusion models): (예: SDEdit, SmartBrush) 고품질 이미지를 생성할 수 있지만, 방대한 GPU 자원, 광범위한 학습 데이터, 정밀한 프롬프트 엔지니어링이 필요합니다. 결정적으로, 이러한 확률적 방법들은 마스킹되지 않은 영역(사용자의 손이나 배경 등)을 변형하거나 참조용 반지 디자인을 정확하게 재현하지 못하는 경우가 많은데, 이는 이커머스의 충실도 측면에서 용납될 수 없는 문제입니다.
핵심 문제는 시각적 사실감(정확한 방향, 스케일, 부착)과 계산 효율성(GPU 의존성 없이 중급 사양의 소비자용 스마트폰에서 실행 가능함) 사이의 균형을 맞춘 시스템의 부재입니다.
방법론
제안된 시스템은 컴퓨터 비전을 이용한 탐지와 렌더링을 위한 경량 기하학적 변환을 결의한 하이브리드 파이프라인을 활용합니다. 이 방식은 딥 생성 알고리즘 대신 결정론적 기하 계산을 선호합니다. 워크플로우는 네 가지 주요 단계로 구성됩니다:
손 랜드마크 탐지 (Hand Landmark Detection):
사용자는 React Native 인터페이스를 통해 손 이미지를 캡처합니다.
MediaPipe를 사용하여 21개의 손 랜드마크 포인트를 탐지합니다.
대상 손가락을 기준으로 특정 랜드마크(손가락의 기저부와 끝부분)를 사용하여 손가락의 기준 축을 정의하는 관심 영역(RoI)을 설정합니다.
반지 객체 지역화 (Ring Object Localization):
다양한 방향과 스타일을 가진 600~700개의 반지 이미지 데이터셋으로 학습된 커스텀 YOLOv8 객체 탐지 모델을 사용하여 반지를 탐지합니다.
모델은 반지를 둘러싼 바운딩 박스를 생성하며, 이후 해당 영역을 크롭(crop)합니다.
배경 제거를 적용하여 반지 픽셀만을 분리합니다.
기하학적 정렬 및 스케일링 (Geometric Alignment and Scaling):
방향(Orientation): 벡터 대수를 사용하여 손가락의 기준 벡터(f)와 반지의 주축(r) 사이의 각도 차이(θ)를 계산합니다. 반지는 포즈에 맞춰 θ만큼 회전됩니다.
스케일링(Scaling): 반지는 손가락 너비(wf)와 반지 너비(wr)의 비율에 따라 크기가 조정됩니다. 이 스케일링 계수(s)는 지각적 사실감을 보장하기 위해 반지의 종횡비를 유지합니다.
이미지 합성 및 렌더링 (Image Synthesis and Rendering):
정렬 및 스케일링된 반지 이미지는 **알파 블렌딩(alpha blending)**을 통해 손의 RoI 위에 중첩됩니다.
조명과 그림자를 시뮬레이션하여 부착의 사실감을 높이기 위해 합성물에 가우시안 블러(Gaussian blur)를 적용합니다.
최종 결과물은 사용자의 화면에 표시됩니다.
주요 기여
경량 아키텍처: 본 시스템은 고사양 GPU, 특수 AR 하드웨어 또는 대규모 생성 모델 없이 작동하므로, 표준적인 중급 사양의 소비자용 스마트폰에서도 배포가 가능합니다.
기하학적 충실도: 정적인 오버레이와 달리, 본 시스템은 사용자의 손가락 기하 구조에 따라 반지의 회전과 스케일을 동적으로 조정하여 반지가 떠 있는 것이 아니라 "고정된" 것처럼 보이게 합니다.
입력 보존: 이 접근 방식은 원래의 손 이미지와 특정 참조 반지 이미지가 변경되지 않음을 보장하며, 이는 생성형 AI 방식에서 흔히 발생하는 확률적 변형을 피합니다.
하이브리드 탐지 파이프라인: MediaPipe를 통한 손 랜드마크 탐지와 커스텀 YOLOv8을 통한 반지 격리(isolation)의 통합은 정밀한 배치를 위한 견고한 기반을 제공합니다.
실험 결과
저자들은 산업 플랫폼(Candere by Kalyan) 및 생성형 모델(Google AI Studio/Banana Pro, OpenAI ChatGPT)과 비교 분석을 수행했습니다.
시각적 품질:
생성형 모델: Google AI Studio는 손의 배경은 유지했으나, 정확한 참조 반지를 재현하지 못하고 다른 디자인을 만들어냈습니다. ChatGPT는 전체 이미지를 재생성하여 배경과 손의 일관성을 변화시켰습니다.
AR 솔루션 (Candere): 크기 부정확성과 적절한 회전 및 폐쇄(occlusion) 처리 부족으로 인해 결과물이 비현실적이고 "떠 있는" 듯한 모습이 나타났습니다.
제안된 시스템: 입력된 반지와 손 이미지를 정확하게 보존했습니다. 반지는 적절한 회전, 스케일링 및 조명 효과(가우시안 블러를 통해)와 함께 올바르게 부착된 모습으로 나타났습니다.
성능 지표:
처리 시간: 제안된 방식은 이미지당 약 34.42초가 소요되었습니다. 이는 단순 오버레이 방식(3.32초)보다는 느리지만, ChatGPT(2분 23초)와 같은 생성형 모델보다는 훨씬 빠르며, 다른 복잡한 파이프라인(Candere: 40.02초, Google AI Studio: 38.64초)과 경쟁 가능한 수준입니다.
충실도: 본 시스템은 입력된 반지 디자인과 손의 기하 구조에 대해 높은 충실도를 달 achievement 했습니다. 이는 원치 않는 변형이 발생하는 생성형 모델들이 "낮음(Low)" 점수를 받은 것과 대조적입니다.
의의 및 주장
본 논문은 기하학 기반 솔루션이 현재의 시장 솔루션이 도달하지 못한 사실감과 효율성 사이의 균형을 달성할 수 있음을 입증함으로써, 가상 주얼리 시각화의 새로운 방향을 제시한다고 주장합니다.
저자들은 본 시스템이 다음과 같은 방식으로 디지털 마켓플레이스를 위한 가상 착용 경험을 재정의한다고 단언합니다:
값비싼 하드웨어나 GPU 집약적인 생성 파이프라인에 대한 의존성을 제거합니다.
사용자의 손과 특정 제품 이미지가 실제와 같고 변형되지 않음을 보장합니다.
무거운 이미지 재생 대신 적응형 기하학적 정렬을 통해 높은 시각적 품질을 유지하면서도 계산 효율적인 접근 가능한 솔루션을 제공합니다.
본 시스템은 고사양 하드웨어나 복잡한 AI 인프라의 장벽 없이 구매 확신을 높이고자 하는 이커머스 플랫폼을 위한 실용적이고 배포 가능한 대안으로 제시됩니다.