매일 몇 시간의 스크롤을 능동적 시각 훈련으로 바꾸는 아키텍처: Amblyotube의 이중 렌더링 접근
Lemmy에 올라온 한 게시물이 커뮤니티에서 꽤 큰 반응을 얻었습니다. 점수 129, 댓글 48개. 내용은 이렇습니다.
"친구, 가족, 낯선 사람들이 하루에도 몇 번씩 무의식적으로 폰을 집어 든다. 잠깐 생각할 틈이 생기면 스크롤. 샤워할 때도 폰을 세워두고 영상을 튼다. 아침에 일어나서 한두 시간을 그렇게 보낸다. 이제는 감정적으로 콘텐츠 없이는 기능하지 못할 것 같다. 이야기를 꺼내면 화를 낸다. 어떻게 줄이게 할 수 있을까?"
댓글에서 눈에 띄는 패턴이 하나 있었습니다. "차단 앱을 깔아라"는 조언보다 "그 시간을 다른 것으로 채워라"는 조언이 훨씬 많았다는 점입니다. 습관은 금지보다 대체가 쉽습니다. 이건 엔지니어링 관점에서도 익숙한 이야기입니다. 기능을 뺏는 대신 파이프라인을 다시 배선하는 쪽이 성공률이 높습니다.
여기서 한 가지 덜 논의된 사실이 있습니다. 우리가 스크린 앞에서 보내는 그 긴 시간은, 눈의 입장에서는 거의 전부 수동적인 시간입니다. 화면이 보여주는 것을 그대로 받아들일 뿐, 두 눈이 협응하거나 깊이를 계산하도록 요구하지 않습니다. 60fps 영상 스트림에서 두 눈은 사실상 같은 이미지를 받습니다. 문제는, 두 눈이 정확히 같은 이미지를 받을 때 그 시스템이 요구하는 연산이 거의 없다는 것입니다.
두 개의 독립 렌더 타깃이라는 하드웨어 사실
Meta Quest 계열 헤드셋(Quest 2, 3, Pro, 3S)은 좌우에 독립적인 디스플레이와 렌즈를 가집니다. 소프트웨어 입장에서 이것은 곧 "프레임당 두 개의 독립적인 시각 피드"라는 뜻입니다. Amblyotube는 이 물리적 제약을 훈련 채널로 전환합니다. 같은 YouTube 영상이 좌안과 우안에 서로 다른 후처리 파이프라인을 통과해 들어갑니다.
개략적인 데이터 흐름을 정리하면 이렇습니다.
YouTube 스트림 (단일 소스) │ ├─▶ [좌안 버퍼] ──▶ 후처리 체인 ──▶ 렌더 │ └─▶ [우안 버퍼] ──▶ 후처리 체인 ──▶ 렌더 │ 휴먼 디텍션(AI) ──▶ 마스크 ──▶ Sharpener / Accents 단일 스트림을 디코드한 뒤, 눈별로 다른 후처리 체인을 태우는 구조입니다. 비디오 소스는 하나, 출력은 둘. 이 분기점이 이 애플리케이션의 핵심 아키텍처입니다.
훈련 파라미터를 코드로 옮기면
우세안 쪽에는 Dominant Eye Shader가 붙습니다. 조절 가능한 blur, contrast, brightness, gamma, opacity 필터로, opacity 100%면 사실상 완전한 디지털 패칭(digital patching)입니다. 다만 기본 목표는 100%가 아니라 부분 투명도입니다. 우세안을 완전히 꺼버리는 게 아니라, 양안이 동시에 시각 데이터를 처리하도록 유도하는 것이 목적이기 때문입니다.
약시안(lazy eye) 쪽에는 AI Sharpener(MFBF)가 붙습니다. AI 엔진이 영상 안의 사람(얼굴, 신체)을 감지하고, 그 영역에만 선택적 샤프닝을 겁니다. 전체 프레임에 샤프닝을 걸면 노이즈와 아티팩트가 함께 증폭됩니다. 휴먼 세그멘테이션 마스크를 씌워 ROI를 좁히는 이유입니다.
여기에 시각적 액센트가 얹힙니다. 사람 형태에 부드러운 형광 황록색 글로우(Highlight), 사람 실루엣을 따라가는 붉은 테두리(Outline), 그리고 이 액센트가 일정 주기로 밝아졌다 어두워지는 "호흡" 효과(Pulse Hz, Pulse depth 조절 가능).
왜 마젠타인가 — 색공간 선택의 이유
Binocular fusion을 유도하는 Magenta Focus Cue는 약시안 화면에서는 고가시성 마젠타 핑크로, 우세안 화면에서는 은은한 회색으로 표시되는 이동형 원형 큐입니다.
색 선택은 미학이 아니라 대비 문제입니다. 자연 영상의 지배적 색 분포는 피부톤, 녹색, 청색 계열에 몰려 있습니다. 마젠타는 이 분포에서 상대적으로 비어 있는 영역이라, 어떤 장면이 걸려도 배경에 묻히지 않고 분리됩니다. 두 눈에 서로 다른 채널로 제시되기 때문에, 뇌가 두 신호를 하나로 병합하는 과정 자체가 훈련이 됩니다. 이것이 양안 융합과 3D 깊이 지각 연습으로 이어집니다.
양안 경쟁을 줄이는 다른 축: Wedge Occlusion
Wedge Occlusion은 양쪽 시야 일부에 검은 쐐기를 씌워, 각 눈이 장면의 서로 다른 부분을 보도록 강제합니다. 두 눈이 서로 다른 정보를 받으면 뇌는 둘 중 하나를 억제하려는 경쟁(binocular rivalry)을 벌이는데, 겹치지 않는 영역을 만들어 이 충돌 자체를 제거하는 방식입니다.
온보딩은 파라미터 캘리브레이션 문제
초기 설정은 코드로 치면 설정값 검증 단계입니다. 실행 시 훈련할 눈을 왼쪽/오른쪽 중 고르는데, 이 선택이 틀리면 우세안을 훈련시키게 됩니다. 그래서 잘못된 입력을 막는 것이 중요합니다. 이어서 조건 프리셋(교정 안경 착용 상태 기준 약함/보통/심함)을 고르면 Dominant Eye Shader와 Lazy Eye Sharpener의 기본 레벨이 자동으로 튜닝됩니다. 내장 LogMAR 시력 확인은 가상 3미터 거리에서 Landolt C 시표로 각 눈과 양안을 최대 30회 시행까지 측정하고, 임상 스테이지 알고리즘으로 logMAR 값을 산출한 뒤 훈련 프로필을 자동 갱신할 수 있습니다. 즉 수동 설정과 자동 보정 두 경로를 모두 열어둔 셈입니다.
운영 환경과 트레이드오프
- 렌더링 부하는 실시간 휴먼 디텍션과 후처리 체인을 양안에 태우는 데서 발생합니다. 훈련 강도와 프레임 예산 사이의 균형이 실질적인 설계 제약입니다.
- 인터페이스는 VR 내 플로팅 컨트롤 패널로, 리사이즈와 이동이 가능하고 Meta Quest 컨트롤러와 핸드 트래킹을 모두 지원합니다.
- 콘텐츠 소스는 통합 YouTube 검색과 오프라인 재생 가능한 사전 로드 카탈로그(어린이용 만화 등)로 나뉩니다. 네트워크가 없어도 세션이 성립한다는 점은 실제 사용성에서 큰 차이입니다.
- Room View(AR 패스스루) 모드는 기본 가상 룸 대신 실제 방 위에 훈련을 오버레이합니다.
사용 제약은 스펙으로 명시되어 있습니다
- 세션 길이: 하루 30~40분 권장, 최대 1시간. VR 눈 피로 관리 목적입니다.
- 연령: 만 13세 이상.
- 기본 설정 복원용 Reset All 버튼 제공.
그리고 이 부분은 코드보다 중요합니다. Amblyotube는 양안 협응과 깊이 지각을 위한 보조적 시각 훈련 도구이며, 진단·치료·완치 수단이 아닙니다. 기존 치료를 대체하지 않고 보완하는 위치에 있습니다. 시각 관련 증상이 있다면 안과 전문의와 상담이 먼저입니다.
접착 패치도, 적청(anaglyph) 안경도 필요하지 않습니다. 물리적 패치는 한쪽 눈을 완전히 차단하고, 적청 안경은 장면 전체의 색을 왜곡합니다. 이 접근은 자연 색상을 유지한 채 두 눈을 팀으로 쓰게 만드는 쪽을 택했습니다.
정리
하루 몇 시간의 콘텐츠 소비를 줄이는 문제로 보면 답이 잘 안 나옵니다. 그 시간을 능동적으로 재배선하는 문제로 바꾸면, 이미 존재하는 하드웨어 제약(두 개의 독립 아이피스)이 그대로 훈련 채널이 됩니다. 단일 스트림, 이중 후처리 체인. 구조는 단순합니다.
Meta Quest 앱 스토어에서 확인하실 수 있습니다: https://www.meta.com/en-gb/experiences/amblyotube/25906906972338493/
이 글은 의학적 조언이 아닙니다.
Amblyotube — Seven Sports 개발. Meta Quest용 시각 협응 및 주의력 훈련 소프트웨어.
출처: Lemmy 게시물 (점수 129 / 댓글 48) — 게시물의 주장은 원 작성자의 개인적 관찰이며, 통계적 근거를 주장하지 않습니다.

