제3장

구조광 시스템

구조광(structured light) 시스템은 알려진 패턴을 장면에 투사하고, 그 패턴이 표면에서 어떻게 변형되는지를 분석함으로써 탁월한 깊이 정확도를 달성한다. 이 기술은 Apple의 Face ID를 구동하며, 최고 수준의 정확도를 요구하는 응용 분야에서 서브밀리미터 정밀도의 깊이 매핑을 가능하게 한다.

기본 원리

구조광 3D 센싱은 삼각측량 원리에 따라 동작한다. 프로젝터가 알려진 빛 패턴을 장면에 방출하고, 프로젝터로부터 고정된 기준선(baseline) 거리만큼 떨어진 카메라가 변형된 패턴을 캡처한다. 캡처된 패턴을 원래 투사된 패턴과 비교함으로써, 시스템은 기하학적 삼각측량을 통해 각 점의 3D 좌표를 계산할 수 있다.

핵심은 서로 다른 깊이에 있는 점들이 카메라 시점에서 볼 때 투사된 패턴을 서로 다른 양만큼 이동시킨다는 점이다. 센서에 가까운 점일수록 이동량(시차, disparity)이 크고, 먼 점일수록 이동량이 작다. 시차와 깊이 사이의 이 관계는 명확하게 정의된 기하학적 관계를 따르므로 정밀한 깊이 계산이 가능하다.

깊이 = (기준선 × 초점거리) / 시차

구조광 시스템의 정확도는 여러 요인에 결정적으로 좌우된다. 투사 패턴의 정밀도, 카메라 센서의 해상도, 프로젝터와 카메라 간 보정의 정확도, 그리고 캡처된 영상의 신호 대 잡음비가 그것이다. 산업용 고정밀 구조광 스캐너는 근거리(1미터 이내)에서 0.1mm보다 우수한 깊이 정확도를 달성할 수 있다.

패턴 투사 기법

랜덤 도트 패턴

Apple의 Face ID TrueDepth 시스템은 30,000개가 넘는 적외선 도트로 이루어진 의사 난수(pseudo-random) 패턴을 사용자의 얼굴에 투사한다. 무작위성 덕분에 패턴의 작은 영역 하나하나가 고유하므로, 투사된 패턴과 캡처된 패턴 사이를 모호함 없이 매칭할 수 있다. 도트는 단일 적외선 레이저 빔을 도트 배열로 분할하는 회절 광학 소자(DOE)에 의해 생성된다.

랜덤 도트 패턴은 몇 가지 장점을 제공한다. 어떤 질감이나 색상의 표면에서도 동작하고, 시야 전체에 걸쳐 조밀한 깊이 샘플링을 제공하며, 규칙적인 격자 패턴에 영향을 줄 수 있는 패턴 에일리어싱 문제에 강하다. 주된 과제는 30,000개 이상의 도트를 실시간으로 매칭하는 계산 복잡도이며, 이를 위해서는 전용 하드웨어 가속이 필요하다.

코드화 광 패턴

일부 구조광 시스템은 특별히 설계된 코드화 패턴을 사용한다. 이 패턴에서는 각 국소 영역이 부분적으로만 보이는 경우에도 식별 가능한 고유 코드를 담고 있다. 예를 들어 그레이 코드(Gray code) 패턴은 이진 인코딩된 줄무늬를 사용하며, 각 위치는 밝은 줄무늬와 어두운 줄무늬의 순서로 고유하게 식별된다. 공간 주파수가 서로 다른 여러 패턴을 투사하면 높은 정확도와 줄어든 모호성으로 깊이를 계산할 수 있다.

코드화 패턴의 장점은 가림(occlusion)이 있거나 부분적으로만 보이는 경우에도 패턴을 견고하게 식별할 수 있다는 것이다. 단점은 여러 번의 패턴 투사가 필요할 수 있어 달성 가능한 프레임 속도가 제한되고, 움직이는 장면에서 문제가 생긴다는 것이다.

싱글샷 대 멀티샷

싱글샷 기법은 패턴 하나를 투사하고 영상 하나를 캡처하므로, 얼굴 추적이나 제스처 인식 같은 실시간 응용에 적합한 높은 프레임 속도를 가능하게 한다. 멀티샷 기법은 일련의 패턴을 투사하여, 낮은 프레임 속도를 대가로 더 높은 정확도를 달성한다. 어느 쪽을 선택할지는 응용이 속도와 정밀도 중 무엇을 우선하는지에 달려 있다.

Apple Face ID TrueDepth 시스템

TrueDepth 카메라 시스템은 가장 널리 보급된 구조광 구현으로, 2017년 iPhone X에 처음 도입된 이후 iPhone과 iPad 제품군에 폭넓게 탑재되었다. 그 아키텍처를 이해하면 실용적인 구조광 시스템 설계에 대한 통찰을 얻을 수 있다.

시스템 아키텍처

TrueDepth 시스템은 소형 모듈에 통합된 몇 가지 핵심 구성 요소로 이루어져 있다.

깊이 계산 파이프라인

Face ID가 활성화되면 다음 과정이 사용자가 체감하기 어려울 만큼 짧은 시간 안에 진행된다.

  1. 패턴 투사: VCSEL이 발광하고 DOE가 30,000개 도트 패턴을 사용자의 얼굴에 투사한다.
  2. 영상 캡처: 적외선 카메라가 변형된 패턴을 캡처하며, 노출 시간은 적외선 조명 강도에 맞게 최적화된다.
  3. 도트 검출: 전용 하드웨어(Apple은 Neural Engine이 Face ID 데이터 처리에 쓰인다고 밝히고 있다)가 캡처된 영상에서 각 도트의 위치를 서브픽셀 정밀도로 검출한다.
  4. 패턴 매칭: 검출된 각 도트를 국소 패턴 기하와 전역 일관성 제약 조건을 이용하여 기준 패턴의 대응 도트와 매칭한다.
  5. 시차 계산: 각 도트의 투사 위치와 캡처 위치 사이의 이동량으로부터 시차 값을 얻는다.
  6. 깊이 매핑: 보정된 기준선과 초점거리를 이용해 시차를 깊이 값으로 변환하여 조밀한 깊이 맵을 생성한다.
  7. 얼굴 처리: 깊이 맵을 처리하여 얼굴 랜드마크를 추출하고, 얼굴 기하의 수학적 표현을 생성한 뒤, 등록된 얼굴 데이터와 비교한다.

보안 및 위조 방지

Apple이 공개한 수치에 따르면 Face ID의 타인 수락률(false acceptance rate)은 약 1,000,000분의 1로, 같은 회사의 지문 인증(Touch ID, 50,000분의 1)보다 낮다. 이 수치는 쌍둥이나 13세 미만 어린이에게는 달라질 수 있다고 함께 밝히고 있다. 깊이 정보는 위조 방지에 결정적인 역할을 한다.

보정과 정확도

구조광 시스템이 높은 정확도를 달성하려면 정밀한 보정이 필요하다. 보정은 프로젝터와 카메라 사이의 기하학적 관계를 결정하며, 여기에는 각각의 위치, 방향, 광학 특성이 포함된다.

보정 절차

공장 보정은 일반적으로 다음 단계로 이루어진다.

  1. 내부 파라미터 보정: 알려진 보정 타깃(일반적으로 체커보드 패턴)을 다양한 위치와 방향에서 촬영하여 카메라의 초점거리, 주점(principal point), 렌즈 왜곡 파라미터를 결정한다.
  2. 프로젝터 보정: 프로젝터를 빛을 캡처하는 대신 방출하는 "역(逆) 카메라"로 취급하여 그 광학 파라미터를 특성화한다.
  3. 스테레오 보정: 카메라와 프로젝터 사이의 상대적 위치와 방향(기준선)을 결정한다. 이는 깊이 정확도에 가장 중요한 파라미터이다.
  4. 비선형성 보정: 온도 의존성이나 거리 구간별 계통 오차처럼 깊이 측정에 나타나는 비선형성을 특성화하고 보상한다.

오차의 원인

신중하게 보정하더라도 여러 요인이 깊이 정확도에 영향을 줄 수 있다.

주요 오차 원인

성능 특성

파라미터 일반적인 범위 비고
정확도 0.1-1mm @ 0.5m 패턴 밀도·기준선·보정 품질에 좌우
동작 거리 0.2-2m 방 규모 제품은 더 길다(Orbbec Astra 등)
시야각 60-120° DOE 설계에 따라 결정
깊이 해상도 640x480 ~ 1280x960 도트 밀도가 실효 해상도를 제한
프레임 속도 15-60 fps 멀티샷 방식은 더 낮다
지연 시간 30-100ms 매칭 연산 가속 여부에 좌우

이 표는 일반적인 경향을 정리한 대표 범위이며, 표준이 정한 값이나 특정 제품의 공개 사양이 아니다. Apple은 Face ID 모듈의 깊이 정확도, 해상도, 소비 전력을 공개하지 않는다. 참고로 WIA-SEMI-013 Phase 4의 얼굴 인증 응용 템플릿은 구조광 또는 dToF, 0.3-0.6m에서 1mm 미만의 정확도, 30 fps 이상, 총 지연 100ms 미만을 요구 조건으로 제시한다.

기타 구조광 시스템

Intel RealSense SR300(단종)

Intel의 RealSense SR300 시리즈는 IR 레이저 프로젝터와 카메라를 갖추고 코드화 광 패턴을 사용했다. 수동형 스테레오 시스템과 달리, 투사된 패턴이 특징 없는 표면에서도 질감을 제공하여 깊이 품질을 높였다. 이 시스템은 근거리 얼굴 스캐닝과 물체 인식 응용에 쓰였으나 이후 단종되었고, 현재 RealSense 제품군은 제4장에서 다루는 D400 계열 능동 스테레오 카메라가 중심이다.

Orbbec Astra

Orbbec의 Astra 시리즈 구조광 센서는 로봇 공학과 산업 응용을 겨냥한다. 예를 들어 Astra Pro는 RGB 카메라와 깊이 카메라를 하나의 장치에 결합하여, VGA 해상도(640x480)와 30fps로 동기화된 컬러 및 깊이 정보를 제공한다. 이 시스템은 0.6-8미터 범위에서 동작하며, 이는 Face ID 유형의 시스템보다 긴 거리로서 방 규모의 환경 센싱에 적합하다.

Microsoft Kinect

초기 Xbox 360 Kinect(Kinect v1)는 PrimeSense의 구조광 기술을 사용했다(PrimeSense는 2013년 Apple에 인수되었다). 이 장치는 레이저와 DOE로 코드화된 적외선 패턴을 투사하여, 전신 모션 추적을 위한 깊이 센싱을 구현했다. 단종되었음에도, 소비자 응용에서 저비용 구조광의 실현 가능성을 입증했다.

구조광 패턴 유형 비교

패턴 유형 특성 장점 사용 사례
랜덤 도트 의사 난수 배열, 10k-30k 포인트 조밀한 커버리지, 질감 무관 Face ID, 근거리 스캐닝
그레이 코드 이진 인코딩 줄무늬, 순차 투사 높은 정확도, 모호성 없음 산업 계측, 3D 스캐닝
정현파 패턴 위상 편이된 사인파, 3-4개 패턴 서브픽셀 정확도, 매끄러운 표면 품질 검사, 역설계
코드화 패턴 공간 주파수 변조 싱글샷 가능, 고속 실시간 추적, AR/VR

Face ID를 넘어선 응용

3D 스캐닝과 모델링

구조광은 물체, 얼굴, 신체를 고품질로 3D 스캐닝하는 데 필요한 정확도를 제공한다. 응용 분야는 다음과 같다.

증강 현실

고정확도 깊이 정보는 가상 객체가 실제 객체 뒤에 올바르게 나타나는 사실적인 AR 가림(occlusion)을 가능하게 한다. AR 필터와 효과(Snapchat 렌즈 등)를 위한 얼굴 추적은 구조광이 제공하는 세밀한 얼굴 기하의 이점을 누린다.

제스처 인식

구조광이 제공하는 세밀한 손 기하 정보는 개별 손가락 추적을 포함한 정교한 제스처 인식을 가능하게 한다. 이를 통해 의료 기기, 산업 제어, 접근성 응용을 위한 비접촉 인터페이스를 구현할 수 있다.

설계 고려 사항

구조광을 선택해야 하는 경우:

고려해야 할 한계:

향후 방향

구조광 기술은 계속 발전하고 있다.

요약

핵심 내용:

복습 질문

  1. 기준선 50mm, 초점거리 600픽셀인 구조광 시스템에서 시차 30픽셀은 어느 깊이에 해당하는가?
  2. 랜덤 도트 패턴이 대응점 매칭의 모호성을 줄이는 원리를 설명하라.
  3. 싱글샷 방식과 멀티샷 방식을 비교하고, 움직이는 얼굴 추적과 정지 부품 검사에 각각 무엇을 쓰겠는지 답하라.
  4. TrueDepth 시스템에서 투광 조명기와 도트 프로젝터의 역할을 구분하라.
  5. 프로젝터를 "역카메라"로 보정한다는 것은 무엇을 뜻하는가?
  6. 기준선 25mm에서 기준선 불확도 10μm가 1m 거리에서 만드는 깊이 오차를 계산하라.
  7. 구조광이 실외 햇빛 아래에서 성능이 떨어지는 이유와 이를 완화하는 방법을 설명하라.
  8. 구조광, iToF, 능동 스테레오 가운데 치과 스캐너에 가장 적합한 방식은 무엇이며 그 이유는 무엇인가?