인간 중심 시야(Fovea) 감지기
(shadertoy.com)- 시야 중심부(포베아) 의 시각적 초점을 감지하는 ShaderToy 기반 시각 효과 코드
- GPU 셰이더를 활용해 인간의 시선이 집중되는 영역을 실시간으로 시각화하는 구조
- 렌더링 효과와 시각적 주의 영역 간의 관계를 실험적으로 표현
- ShaderToy 플랫폼을 통해 웹 브라우저에서 직접 실행 및 조정 가능
- 인간 시각의 초점 메커니즘을 그래픽 프로그래밍으로 탐구하는 예시
Human Fovea Detector 개요
- ShaderToy에 게시된 시각적 실험용 셰이더 코드로, 인간의 시야 중심부(포베아) 감지를 시뮬레이션
- GPU 기반 셰이더를 통해 시선 집중 영역을 강조 표시하는 방식으로 작동
- 브라우저 환경에서 JavaScript와 WebGL을 활성화해야 실행 가능
기능 및 구현
- 실시간 렌더링을 통해 화면 내 특정 영역의 시각적 초점을 감지
- ShaderToy의 인터랙티브 시각 효과 엔진을 사용해 시야 중심의 변화를 표현
- 코드 실행 시 사용자의 입력이나 마우스 움직임에 따라 시야 중심이 이동하는 효과 구현
기술적 특징
- GPU 셰이더 프로그래밍을 기반으로 하며, 픽셀 단위의 시각적 계산 수행
- 브라우저 내 실행을 위해 JavaScript와 쿠키 허용이 필요
- ShaderToy 플랫폼의 표준 구조를 따르며, GLSL 코드로 작성된 형태
활용 가능성
- 인간 시각의 초점 이동을 시각화하거나 분석하는 연구용 도구로 활용 가능
- 시선 추적 인터페이스, 시각적 주의 분석, 그래픽 디자인 실험 등 다양한 분야에 응용 가능
실행 조건
- 사이트 접속 시 보안 확인 절차와 스크립트 활성화 요구가 있음
- JavaScript와 쿠키를 허용해야 셰이더 코드가 정상적으로 렌더링됨
- 원문 페이지에서는 “사람인지 확인 중” 메시지 이후 ShaderToy 렌더링 화면으로 전환됨
Hacker News 의견
-
움직이는 물체를 추적하지 않는 한 눈을 부드럽게 움직이는 것은 불가능함
눈은 항상 빠르고 불연속적인 도약운동(saccade) 을 함
하지만 이 Shadertoy 예시처럼 부드럽게 움직이는 빨간 원을 보면, 그 원을 따라가며 눈을 매끄럽게 움직일 수 있게 됨 -
이걸 보다가 Maxwell’s Spot illusion을 발견했음
이 깜박이는 파란/초록 이미지를 보면, 시선이 머무는 중앙에 어두운 점이 보임 -
안경 종류에 따라 결과가 완전히 달라서 흥미로웠음
나는 원시인데, 안경을 벗으면 약간의 사시가 있어서 초점을 못 잡고 8자 모양의 움직임이 보임
일반 안경을 쓰면 이 효과가 줄지만 중심부 외에는 움직임이 거의 안 보임
반면 독서용 안경(근시용) 을 쓰면 완벽한 원이 보이고, 주변부에서도 낮은 프레임처럼 움직임을 감지할 수 있음- 안경의 도수 세기가 망막에 맺히는 이미지 크기를 바꾸기 때문임
도수가 높을수록 이미지가 작아지고, 따라서 움직임을 인식하는 범위가 초점 근처로 좁아짐
- 안경의 도수 세기가 망막에 맺히는 이미지 크기를 바꾸기 때문임
-
예전에 이 Shadertoy가 너무 인기를 끌어서 서버가 다운된 적이 있었음
당시엔 “잠시만요”라는 커스텀 배너까지 띄웠었는데, 다시 HN 메인에 올라온 걸 보니 반갑게 느껴짐
당시 아카이브 링크- 귀엽다고 생각함. IQ는 Shadertoy를 12년 동안 상업화하지 않고 무료로 유지해온 멋진 사람임
-
페이지를 열자마자 편두통이 심하게 와서 바로 닫았음
혹시 이런 시각 자극이 발작이나 두통을 유발할 수 있는지 확인이 필요함- 나는 평소 편두통은 없지만 시각적 오라가 가끔 있음
처음엔 재밌었는데, 1분쯤 지나니 시야에 잔상이 남고 귀에서 이명이 들리기 시작했음
10분이 지나도 여전히 남아 있어서 바로 컴퓨터에서 멀어졌음 - “그걸 어떻게 확인하냐”는 질문이 나올 수 있지만, 실제로는 검증 방법이 명확하지 않음
- 원래는 나이 들수록 눈이 초점을 맞출 수 있는 반경이 줄어드는 원리를 보여주는 실험이라 생각했음
하지만 관련 연구가 부족하다는 걸 알고 정정함 - 나도 보자마자 이상하고 불편한 느낌이 들었음
중심부 외에도 뭔가 움직이는 걸 감각적으로 느낄 수 있어서 오래 보면 두통이 올 것 같았음 - 혹시 VR 헤드셋을 써본 적 있는지 궁금함
비슷한 불편함이 생기는지 확인해보면 원인을 좁힐 수 있을 것 같음
- 나는 평소 편두통은 없지만 시각적 오라가 가끔 있음
-
모든 십자가가 실제로 회전하고 있어서, 이 실험은 시야 중 어느 부분이 변화맹(change blindness) 에 취약한지를 보여줌
즉, 시야의 99%가 변화를 인식하지 못함 -
내 댓글이 계기가 되어 새로운 글이 올라왔음
- 맞음 :)
-
처음엔 이 회전이 착시인 줄 알았음
National Geographic의 관련 글을 떠올렸는데, 이번 경우엔 실제 회전임
다만 중심부(중심와, fovea)에서만 그 회전을 명확히 볼 수 있음 -
이 실험을 심리측정(psychometric) 버전으로 확장할 수도 있을 것 같음
스케일 파라미터를 조정하면 주변부에서도 움직임을 볼 수 있고, 피험자가 특정 영역(예: 빨간 원으로 표시된 곳)이 실제로 움직이는지 보고하도록 하면 됨
주변 시야의 수용영역(receptive field) 이 더 크기 때문에, 그쪽 세포들이 움직임을 감지하려면 더 큰 시각 자극이 필요함 -
중심부에서 회전을 명확히 볼 수 있는 퍼지한 영역을 금방 찾을 수 있었음
초점을 풀면 주변 전체가 흐릿하게 움직이는 게 보임
이게 바로 foveated rendering/streaming의 이론적 배경임