

목 차
1. 각 개념 정리.
2. 공통점 ( 기술 및 개념 측면)
3. 차이점 ( 비교표 + 상세 설명 )
4. CV 관점에서의 핵심 차별 요소.
5. 아키텍처 구조 ( 기술 중심 비교 )
6. 주요 기술 요소 상세 비교
7. 실무 기술 스택 요약

AR은 현실 세계 위에 '가상 콘텐츠를 실시간으로 "겹쳐" 시각화' 하는 기술입니다.
| 구성 요소 | 설명 |
|---|---|
| Tracking (SLAM or VIO) | 카메라 움직임을 기반으로 위치 추정 (Pose Estimation) |
| Plane Detection | 바닥, 책상 등 평면을 감지하여 콘텐츠를 배치 |
| Light Estimation | 가상 객체에 실제 조명을 반영하여 자연스럽게 보이게 함 |
| Anchoring | 객체를 특정 위치에 고정시키기 위한 앵커 시스템 |
| Rendering Engine | Unity / Unreal / RealityKit 등으로 3D 모델 렌더링 |
Apple ARKit (iOS)
Google ARCore (Android)
8th Wall (Web AR)
이커머스: IKEA Place 앱에서 소파를 집 거실에 배치해보기
마케팅: 포스터에 스마트폰을 비추면 3D 캐릭터 등장
교육: 교과서 위에 과학 실험 3D 시뮬레이션 표시

VR은 '현실 환경을 완전히 "차단"하고, 사용자를 '몰입형 가상 세계로 전환'시키는 기술입니다.
HMD ( Head Mounted Display )를 착용하고, 360도 가상 공간 안에서 이동하거나 조작할 수 있습니다.
| 구성 요소 | 설명 |
|---|---|
| 6DoF Tracking | 머리/몸의 회전(Rotation)과 이동(Translation)을 모두 추적 |
| Stereoscopic Rendering | 좌/우 눈용 이미지 각각 생성 (깊이감 생성) |
| Controller Input | 손에 쥐는 컨트롤러로 상호작용 |
| Spatial Audio | 공간 내 사운드를 입체적으로 재현 |
| Haptic Feedback | 진동, 촉감으로 가상 객체와의 상호작용 표현 |
Meta Quest 3 / Quest Pro
HTC Vive / Vive Pro
PlayStation VR2
제조업: 가상 조립 시뮬레이션으로 작업자 훈련.
의료: VR을 통한 수술 시뮬레이션 훈련.
게임: VR FPS, 퍼즐, 공포, 시뮬레이터 게임.

MR은 현실과 가상이 "같은 공간에서 실시간으로 상호작용" 할 수 있게 만드는 기술입니다.
즉, 가상 객체가 현실 공간에 고정되어 보일 뿐 아니라,
실제 사람의 손이나 물체와 물리적으로 상호작용합니다.
| 구성 요소 | 설명 |
|---|---|
| Spatial Mapping | 공간의 3D 지도를 생성하여 깊이, 높이 등 인식 |
| Hand Tracking / Eye Tracking | 사용자의 손 동작/시선 추적하여 입력 처리 |
| Scene Understanding | 현실 공간 내 객체들(의자, 책상 등)을 의미 단위로 인식 |
| Physics Integration | 현실 구조에 따라 가상 객체가 반응 (충돌, 회전 등) |
| World Anchors | 현실 좌표계에 객체를 정확하게 정렬 |
Microsoft HoloLens 2
Magic Leap 2
Apple Vision Pro (혼합현실 모드)
스마트 팩토리: 작업 현장에 가상 UI 오버레이하여 효율 관리.
건축/설계: 실내공간 위에 AR 설계도를 띄워 함께 논의.
원격 협업: 실제 공간을 공유하며 가상 지시, 협업 수행.

XR은 'AR, VR, MR을 아우르는 상위 개념' 으로, 현실과 가상의 모든 몰입형 경험을 포함합니다..
플랫폼 기술, 콘텐츠 형식, UX 범위 등을 포함해 통합된 접근을 목표로 합니다.
💡 "XR = AR + VR + MR + 미래의 모든 몰입 기술"
| 구성 요소 | 설명 |
|---|---|
| Cross-platform Framework | OpenXR 기반으로 멀티 디바이스 개발 가능 |
| XR SDK | 하나의 코드로 VR/AR/MR 대응 (Unity XR Plugin, MRTK) |
| 멀티센서 통합 처리 | Head/Hand/Eye/Gesture/Voice 입력의 통합 |
| WebXR | 브라우저에서 XR 경험 제공 (VR/AR in HTML/JS) |
OpenXR (Khronos Group, Khronos 표준)
Unity XR / Unreal XR Framework
WebXR (WebXR Device API)
멀티 디바이스 콘텐츠: 하나의 앱으로 Quest + HoloLens 대응.
실시간 스트리밍 XR: WebXR 기반 화상 회의 + AR 객체 공유.
전시/미디어: 가상관 + AR 콘텐츠 동시에 지원.

| 항목 | 설명 |
|---|---|
| 입출력 디바이스 | 모두 카메라, IMU, 디스플레이, 마이크, 스피커 등의 센서를 사용함 |
| 3D 공간 인식 | 3D 모델, 포즈 추정, 위치 추적 등의 기술이 공통적으로 적용됨 (SLAM 기반) |
| 렌더링 엔진 | 대부분 Unity, Unreal과 같은 실시간 렌더링 엔진을 사용 |
| 실시간 처리 | 사용자 움직임에 따라 실시간 그래픽 처리 및 피드백 필요 (Low Latency 필수) |
| UX 설계 요소 | Spatial UI/UX, 음성 명령, 제스처 기반 인터랙션 등이 공통 요소로 활용됨 |
| 콘텐츠 구조 | 대부분 Scene Graph + Anchoring + Event System으로 콘텐츠 구조화 |
💡 실제로 XR 플랫폼(예: Unity XR Plugin, MRTK)은 AR/VR/MR을 동일한 코드베이스로 대응하게 구성됩니다.

| 항목 | AR | VR | MR |
|---|---|---|---|
| 현실과의 관계 | 현실을 배경으로 가상 요소를 덧붙임 | 현실을 완전히 차단 | 현실과 가상이 동등하게 상호작용 |
| 주요 센서 | RGB 카메라 + IMU | IMU, IR 센서 중심 | Depth 카메라 + RGB + IR + IMU |
| Tracking 방식 | SLAM / VIO | Inside-out or Outside-in | SLAM + Spatial Mapping + Scene Understanding |
| UX 입력 수단 | 터치, 화면 제어, Gaze | 컨트롤러 기반 입력 | 손 제스처, 시선, 음성 통합 (멀티모달) |
| 공간 인식 수준 | 평면 인식 중심 | 공간 인식 불필요 (가상 환경 생성됨) | 실제 공간을 3D Mesh로 깊이 인식 |
| 실무 사용성 | 모바일 기반이 많아 보급형 | 몰입감 우수하지만 HMD 착용 필수 | 하이엔드 기기에 의존 (비용 높음) |
| 플랫폼 제약 | 모바일 디바이스 중심 (iOS/Android) | 전용 VR 기기 필요 | 고가의 전용 MR 디바이스 필요 |
| 주요 활용 분야 | 커머스, 교육, 마케팅 | 게임, 교육, 시뮬레이션 | 산업, 의료, 원격 협업 등 고난이도 작업 |
[────────── 현실 ──────────][────────── 가상 ──────────]
| AR | MR | VR |
| (Overlay) | (Interaction) | (Immersion) |
'AR'은 현실 위에 '보이기만' 하는 기술.
'MR'은 현실과 가상이' 상호-작용'하는 기술.
'VR'은 현실을 완전히 벗어나 '몰입'하도록 하는 기술.
| 상황 | 적합 기술 | 이유 |
|---|---|---|
| 가정에서 가구 배치 보기 | AR | 현실 공간이 존재하고, 단순 오버레이 |
| 심화된 기계 조작 훈련 | VR | 몰입 환경에서 안전하게 반복 가능 |
| 작업자에게 실시간 작업 안내 제공 | MR | 현실 객체 인식 + 손 제스처 상호작용 필요 |
| 여러 장비에서 콘텐츠 동시 제공 | XR (OpenXR) | 플랫폼 간 호환성 필요 |

| 기술 | Computer Vision의 활용 방식 | 핵심 차별 요소 |
|---|---|---|
| AR (Augmented Reality) | 현실 세계를 인식하고, 평면/공간을 추적하여 가상 객체를 정확한 위치에 덧붙임 | ▶ 현실 기반 좌표계 생성 (SLAM) ▶ 평면 인식, 앵커링, 조명 추정이 중요 ▶ 카메라 영상 + IMU를 통한 VIO 기반 Pose Estimation |
| VR (Virtual Reality) | CV 기술의 의존도는 낮음. 대부분 3D 가상 공간 내부를 렌더링하고 추적하는 구조 | ▶ 현실 비인식: 외부 공간 인식 불필요 ▶ CV 기술은 컨트롤러 위치 추적, Hand Tracking 등 보조적 역할 ▶ 종종 Eye Tracking 등 생체 기반 인터랙션에 사용됨 |
| MR (Mixed Reality) | AR보다 고도화된 CV 처리 필요. 현실 공간을 **정확하게 3D로 재구성(Spatial Mapping)**하고, 가상 객체와의 실시간 상호작용 지원 | ▶ 현실 공간의 깊이 인식(Depth) 및 Semantics 중요 ▶ Scene Understanding: 벽, 책상, 사람 구분 ▶ Hand Mesh, Occlusion, Physics까지 구현됨 |
| XR (Extended Reality) | CV 활용은 AR/MR의 종합. 하드웨어나 목적에 따라 모든 CV 기능을 선택적으로 통합함 | ▶ Cross-platform 대응을 위한 추상화 계층 구축 ▶ CV 기술을 모듈화하여 선택 적용 가능 ▶ WebXR/WebAR 등에서는 경량 CV 모델이 주로 사용됨 |
대부분의 Pose Estimation, Anchoring, Plane Detection이 CV 기반
특히 SLAM 기술의 발전(Visual-Inertial SLAM, Depth SLAM)이 핵심
OpenCV로 prototyping도 가능: ORB/FAST/SURF 등 feature matching으로 구현 가능
대부분 가상 공간 자체가 시뮬레이션됨
다만 최근에는 Hand Tracking (Mediapipe), Eye Tracking, Face Tracking으로 CV 기술 활용이 늘어남
현실 공간을 3D Mesh로 표현 → Depth Sensor 또는 AI 기반 Monocular Depth Estimation 필요
CV 기반 Semantic Segmentation: 벽, 천장, 사람 등 객체 분리
Occlusion 처리: 실제 물체 뒤에 가상 객체가 가려져야 함 → CV 기반 실시간 Masking
AR/VR/MR에서 필요한 CV 기능을 범용 프레임워크에서 선택 가능 (예: Unity XR SDK + AR Foundation)
CV 기능은 플랫폼별 추상화 (예: ARKit의 CV기능을 Unity에서 추상화하여 사용)
| 기술 | 예시 | 사용된 CV 기술 |
|---|---|---|
| AR | 스마트폰으로 바닥 인식 후 3D 캐릭터 배치 | SLAM, Plane Detection, Light Estimation |
| VR | VR 챗에서 손으로 가상 캐릭터에게 손짓 | Hand Tracking (CV + ML), Pose Estimation |
| MR | 실제 사무실 책상 위에 3D 디스플레이 띄우고 상호작용 | Depth Mapping, Scene Understanding, Occlusion |
| XR | 웹에서 모바일/헤드셋에 맞춰 자동 AR/VR 콘텐츠 제공 | 경량화된 SLAM, Adaptive Tracking, WebCV |
CV(컴퓨터비전) 관점에서 가장 중요한 차이는 ‘현실 공간을 얼마나 정교하게 이해하고 활용하는가’에 있음.
AR은 "현실 인식 + 위치 추정"
MR은 "현실 분석 + 실시간 상호작용 + 물리적 이해"
VR은 "현실 필요 없음, CV는 부가 기능"
XR은 "다양한 디바이스와 목적에 맞게 CV 기능을 모듈화하여 조합"

핵심 목표 : 현실 세계에 정합된 '가상 객체'를 정밀하게 정렬시키고 배치.
[Camera & IMU Input]
↓
[SLAM or VIO Engine]
↓
[Pose Estimation + Plane Detection]
↓
[Anchoring System]
↓
[Rendering Engine (Unity/Unreal)]
↓
[Display (Mobile Screen or AR Glass)]
SLAM / VIO (Visual-Inertial Odometry): 실시간 위치 추정
Plane Detection / Feature Matching: 현실 좌표계 생성
Anchoring / AR Session Manager: 가상 오브젝트 고정
Light Estimation / Occlusion: 현실과 조화로운 표현
📦 대표 기술 스택: ARKit (iOS), ARCore (Android), WebAR, Unity AR Foundation
📘 관련 CV 기술: ORB/FAST feature 추출, RANSAC, Kalman filter, Kalibr 등

핵심 목표 : 몰입형 가상 세계를 시뮬레이션하고 사용자 움직임을 반영 !!
[VR Controller + HMD Sensor]
↓
[6DoF Pose Tracking]
↓
[Physics & Collision Engine]
↓
[3D Rendering Pipeline]
↓
[Stereo Display Output (HMD)]
Inside-out Tracking / Outside-in Tracking: 위치·회전 추적
Hand / Eye Tracking (선택적): CV 기반 사용자 입력
Physics Engine (NVIDIA PhysX 등): 가상 환경 물리 처리
HMD Calibration & Lens Distortion Correction
📦 대표 플랫폼: Oculus SDK, OpenVR, SteamVR
📘 관련 CV 기술: Mediapipe Hands, IR-based tracking, Optical Flow

핵심 목표 : 현실 공간과 정밀한 인터렉션이 가능한 가상 객체 배치 및 동기화.
[RGB + Depth Camera + IMU]
↓
[SLAM + Spatial Mapping + Semantic Segmentation]
↓
[Scene Understanding (벽/바닥/사람)]
↓
[Object Anchoring + Hand Tracking]
↓
[Real-time Physics + Occlusion Engine]
↓
[3D Rendering + Interaction UI]
↓
[Display (HoloLens 등)]
Depth Estimation (LiDAR / ToF / AI): 현실 3D 복원
Scene Understanding: 공간 구조/객체 파악
Semantic Segmentation: 사람/바닥/책상 구분
Hand Tracking + Eye Gaze: 복합 인터랙션 처리
Occlusion Handling: 현실 객체에 가상 객체 가려짐 표현
📦 대표 기술 스택: Microsoft MRTK + HoloLens, Magic Leap SDK
📘 관련 CV 기술: Depth CNN, YOLO / Mask R-CNN, SDF/TSDF, Kinect Fusion

핵심 목표 : AR/VR/MR 기술 통합 및 Cross-device 콘텐츠 배포.
[Device Abstraction Layer]
↓
[AR / VR / MR 모듈 선택 적용]
↓
[XR SDK Interface (OpenXR, WebXR)]
↓
[Rendering Engine (Unity, Unreal, WebGL)]
↓
[Display (Mobile, HMD, Web)]
XR Interface Layer: OpenXR, WebXR (플랫폼 추상화)
Device Capability Detection: AR/VR 전환 처리
Modular Pipeline: 사용 가능한 CV 모듈만 로딩
Adaptive Rendering: 디바이스별 성능 최적화
📦 대표 기술 스택: OpenXR, Unity XR Interaction Toolkit, WebXR API
📘 관련 CV 기술: 가볍고 범용적인 CV 처리 모듈 (WebAssembly + CV.js, TensorFlow.js 등)

| 요소 | AR | VR | MR | XR |
|---|---|---|---|---|
| 센서 입력 | Camera + IMU | IMU + Controller | RGB + Depth + IMU | All (선택적) |
| 공간 인식 | 평면 인식 중심 | 공간 무시 (가상) | 실세계의 3D mesh화 | 혼합형 |
| 사용자 입력 | 터치 / Gaze / 간단 제스처 | 컨트롤러 / 버튼 | 손 추적 / 음성 / Gaze | 장치 기반 선택적 |
| 주요 모듈 | SLAM, Anchoring | 6DoF, Physics | Scene Understanding, Occlusion | Cross-device abstraction |
| 렌더링 | Mobile GPU / AR Glass | HMD 전용 GPU | MR HMD (HoloLens 등) | Web/Mobile/HMD 호환 |
| 플랫폼 | ARKit, ARCore | Oculus, SteamVR | HoloLens SDK, MRTK | OpenXR, WebXR |

| 목적 | 추천 기술 | 이유 |
|---|---|---|
| 빠른 모바일 AR 프로토타이핑 | ARKit/ARCore + Unity | 모바일 SDK가 완비되어 있고 빠르게 MVP 제작 가능 |
| 3D 환경 기반 교육 시뮬레이션 | VR (Unreal Engine 기반) | 고성능 물리 + 그래픽 환경 구성 유리 |
| 산업 현장 인터랙티브 워크플로우 | MR (MRTK + HoloLens) | 손 추적 기반 인터페이스, 공간 인식이 필수 |
| 멀티 디바이스용 통합 플랫폼 | XR (Unity + OpenXR) | 디바이스 추상화 + 유지보수 용이 |

| 기술 요소 | AR | VR | MR | XR |
|---|---|---|---|---|
| Tracking (위치/자세 추정) | Visual SLAM / VIO | IMU 기반 6DoF 또는 외부 카메라 트래킹 | Visual SLAM + Depth 기반 정밀 트래킹 | OpenXR 기반 추상화된 트래킹 API |
| Depth Sensing | 선택사항 (LiDAR, Monocular Depth Estimation) | 일반적으로 사용되지 않음 | 핵심 요소 (LiDAR/ToF or AI-based Depth) | 선택적으로 통합됨 |
| Scene Understanding | Plane Detection, Anchor | 미사용 또는 간단한 Hit Test | 공간 맵핑 + 객체 분류 + Occlusion | 디바이스 성능에 따라 다름 |
| User Interaction | 터치, 제스처, Gaze | Controller, Eye Tracking, Haptics | Hand Tracking, Voice, Gaze, Spatial Input | WebXR or SDK-based Unified Input |
| Rendering | 현실 배경 위 가상 객체 | 완전한 가상 공간 | 혼합된 공간에 객체와 인터랙션 | 다양한 디바이스에 맞춘 Adaptive Rendering |
| Occlusion Handling | 제한적 (간단한 Occluder) | 불필요 | Depth 기반 실시간 Occlusion | 성능 제한 내에서 조건부 적용 |
| CV 알고리즘 활용도 | 매우 높음 (SLAM, Object Tracking, Segmentation 등) | 제한적 (Hand/Eye Tracking 등) | 매우 높음 (Depth + Segmentation + Tracking) | 플랫폼에 따라 다름 (Web은 경량화 중심) |
| 하드웨어 의존도 | 중간 (스마트폰 센서 기반) | 높음 (전용 HMD) | 높음 (RGB-D 카메라, HoloLens 등) | 혼합 (모바일, 데스크탑, 웹 모두 지원) |
AR/MR 핵심 기술
카메라 영상으로 사용자의 위치와 환경 맵을 동시에 추정
대표 알고리즘 : ORB-SLAM, RTAB - Map , Google Cartographer
MR/AR 에서는 3D 공간 인식에 필수.
방식
Semantic Segmentation (책상, 사람, 벽 등 의미적 분리)
Spatial Mesh 생성 (Unity에서 MeshCollider 처리 등)
Real-world geometry 기반의 Physics + Interaction
VR/MR의 대표 인터랙션 수단
대표 기술: Mediapipe Hands, Azure Kinect Body Tracking, Tobii Eye Tracker

| 분류 | AR | VR | MR | XR |
|---|---|---|---|---|
| 대표 플랫폼 | ARKit (iOS), ARCore (Android), WebAR | Oculus SDK, OpenVR, SteamVR | HoloLens SDK, Magic Leap SDK, MRTK | Unity XR Toolkit, OpenXR, WebXR |
| 렌더링 엔진 | Unity, Unreal, 8thWall | Unity, Unreal | Unity + MRTK | Unity + OpenXR, WebGL |
| 추적 기술 | AR Foundation (Unity), VIO, SLAM | Inside-out Tracking, Lighthouse | SLAM + Scene Mapping | OpenXR abstraction |
| CV 라이브러리 | OpenCV, Mediapipe, TFLite | Mediapipe (Hands, Face), OpenCV | Azure Kinect SDK, DepthAI | WebCV, TensorFlow.js |
| Depth 센서 | LiDAR (iPad), Structure Sensor | 없음 또는 IR | LiDAR, ToF (Azure Kinect, RealSense) | 선택 사항 (기기 의존) |
| 개발 언어 | Swift, Kotlin, C#, C++ | C#, C++, Python | C#, C++, Python | C#, JavaScript (WebXR) |
| 배포 환경 | 모바일 앱 (iOS/Android), WebAR | HMD 앱 (Quest, Vive) | HoloLens 앱, UWP 기반 | Web, Cross-platform 앱 |
| 프레임워크 | AR Foundation, Vuforia, Niantic Lightship | Oculus SDK, OpenVR, XR Interaction Toolkit | MRTK, Windows Mixed Reality Toolkit | Unity XR Management + OpenXR |

Unity 기반으로 개발하는 경우, AR Foundation은 ARKit/ARCore를 통합 추상화해주고,
XR Interaction Toolkit은 AR/VR/XR 공용 상호작용 처리를 도와줍니다.
WebXR/WebAR은 경량화 CV 모델 사용이 일반적이며,
TensorFlow.js + Mediapipe를 병행 사용하여 Hand/Face Tracking 처리 가능
HoloLens 프로젝트는 MRTK (Mixed Reality Toolkit) 기반으로
Scene Mapping, Gaze, Voice, Hand 인터페이스를 빠르게 구현 가능
AI 기반 CV 기능 (ex: Depth Estimation, Segmentation)은
ONNX, TensorRT, TFLite 포맷으로 실시간 추론 속도를 최적화하는 것이 실무 핵심입니다.