이 논문에서는 컴퓨터 시각 인식 방법에 의해 모니터 상에 사용자가 쳐다보고 있는 시선 위치를 파악하기 위한 새롭고 실용적인 방법을 제안한다. 일반적으로 사용자가 모니터 상의 한 위치를 쳐다보기 위해서는 얼굴 및 눈동자를 동시에 움직이는 경향이 있다. 기존의 시선 위치 추적 시스템은 사용자의 얼굴 전체를 취득할 수 있는 단 하나의 광각 카메라 시스템을 주로 많이 이용하였다. 그러나 이러한 경우 영상의 해상도가 많이 떨어져서 사용자의 눈동자 움직임을 정확하게 추적하기 어려운 문제점이 있다. 그러므로 이 논문에서는 광각 카메라(얼굴의 움직임에 의한 시선 위치 추적용) 및 눈 영역을 확대하여 취득하는 협각 카메라(눈동자 움직임에 의한 시선 위치 추적용), 즉 이중 카메라를 이용하여 시선 위치 추적 시스템을 구현하였다. 얼굴의 움직임 시 전체적인 위치가 변화될 눈동자의 움직임을 정확히 추적하기 위해, 협각 카메라에는 광각 카메라로부터 추출된 눈 특징점의 위치를 기반으로 한 자동 초점 및 자동 상하/좌우 회전 기능이 포함되어 있으며, 눈 특징점을 보다 빠르고 정확하게 추출하기 위해 이중 적외선 조명을 사용하였다. 실험 결과, 본 논문에서는 실시간으로 동작하는 시선 위치 추적 시스템을 구현할 수 있었으며, 이때 얼굴 및 눈동자 움직임을 모두 고려하여 계산한 모니터상의 시선 위치 정확도는 약 3.44cm의 최소 자승 에러성능을 나타냈다.
이 논문에서는 컴퓨터 시각 인식 방법에 의해 모니터 상에 사용자가 쳐다보고 있는 시선 위치를 파악하기 위한 새롭고 실용적인 방법을 제안한다. 일반적으로 사용자가 모니터 상의 한 위치를 쳐다보기 위해서는 얼굴 및 눈동자를 동시에 움직이는 경향이 있다. 기존의 시선 위치 추적 시스템은 사용자의 얼굴 전체를 취득할 수 있는 단 하나의 광각 카메라 시스템을 주로 많이 이용하였다. 그러나 이러한 경우 영상의 해상도가 많이 떨어져서 사용자의 눈동자 움직임을 정확하게 추적하기 어려운 문제점이 있다. 그러므로 이 논문에서는 광각 카메라(얼굴의 움직임에 의한 시선 위치 추적용) 및 눈 영역을 확대하여 취득하는 협각 카메라(눈동자 움직임에 의한 시선 위치 추적용), 즉 이중 카메라를 이용하여 시선 위치 추적 시스템을 구현하였다. 얼굴의 움직임 시 전체적인 위치가 변화될 눈동자의 움직임을 정확히 추적하기 위해, 협각 카메라에는 광각 카메라로부터 추출된 눈 특징점의 위치를 기반으로 한 자동 초점 및 자동 상하/좌우 회전 기능이 포함되어 있으며, 눈 특징점을 보다 빠르고 정확하게 추출하기 위해 이중 적외선 조명을 사용하였다. 실험 결과, 본 논문에서는 실시간으로 동작하는 시선 위치 추적 시스템을 구현할 수 있었으며, 이때 얼굴 및 눈동자 움직임을 모두 고려하여 계산한 모니터상의 시선 위치 정확도는 약 3.44cm의 최소 자승 에러성능을 나타냈다.
This paper presents a new and practical method based on computer vision for detecting the monitor position where the user is looking. In general, the user tends to move both his face and eyes in order to gaze at certain monitor position. Previous researches use only one wide view camera, which can c...
This paper presents a new and practical method based on computer vision for detecting the monitor position where the user is looking. In general, the user tends to move both his face and eyes in order to gaze at certain monitor position. Previous researches use only one wide view camera, which can capture a whole user's face. In such a case, the image resolution is too low and the fine movements of user's eye cannot be exactly detected. So, we implement the gaze detection system with dual camera systems(a wide and a narrow view camera). In order to locate the user's eye position accurately, the narrow view camera has the functionalities of auto focusing and auto panning/tilting based on the detected 3D facial feature positions from the wide view camera. In addition, we use dual R-LED illuminators in order to detect facial features and especially eye features. As experimental results, we can implement the real-time gaze detection system and the gaze position accuracy between the computed positions and the real ones is about 3.44 cm of RMS error.
This paper presents a new and practical method based on computer vision for detecting the monitor position where the user is looking. In general, the user tends to move both his face and eyes in order to gaze at certain monitor position. Previous researches use only one wide view camera, which can capture a whole user's face. In such a case, the image resolution is too low and the fine movements of user's eye cannot be exactly detected. So, we implement the gaze detection system with dual camera systems(a wide and a narrow view camera). In order to locate the user's eye position accurately, the narrow view camera has the functionalities of auto focusing and auto panning/tilting based on the detected 3D facial feature positions from the wide view camera. In addition, we use dual R-LED illuminators in order to detect facial features and especially eye features. As experimental results, we can implement the real-time gaze detection system and the gaze position accuracy between the computed positions and the real ones is about 3.44 cm of RMS error.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
그러나 대부분의 경우, 사용자가 모니터 상의한 지점을 쳐다볼 때에는 얼굴 및 눈동자의 움직임이 동시에 발생한다. 그러므로 본 논문에서는 보다 정확한 시선 위치를 파악하기 위하여 사용자의 눈동자 움직임을 파악하는 연구를 수행하였다.
파악하는 연구이다. 이 논문에서는 모니터 상에 사용자가 쳐다보고 있는 위치를 파악하기 위한 새롭고 실용적인 방법을 제안한다. HCKHuman Computer Interaction)분야에서 사용자가 모니터 상에 쳐다보고 있는 위치는 여러가지 의미에서 많은 중요한 정보를 갖는다.
이 논문에서는 새로운 시선 위치 추적 방법을 제안하고 있다. 실험 결과에 나타나 있는 것처럼 시선 위치 정확도는 약 3.
또한 모니터 좌표계에 대한 얼굴 좌표계의 변환 관계를 알기 위해서는 모니터 중심 위치로부터 얼굴 좌표계 중심 위치까지의 Za리를 알아야 한다. 이와 같이 모르는 미지의 변수들을 자동으로 구하기 위해 본 논문에서는 위의 3가지 좌표축을 결합하여 카메라 좌표계에서 관측되는 얼굴 특징점의 위치 변화로부터 위의 미지 변수들을 구할 수 있는 식을 유도하였다[5, 6, 22]. 그러나 이 식은 그 해를 산술적으로 구할 수 없는 비선형 방정식이므로, 본 논문에서는 초기에 사용자가 모니터상의 미리 알고 있는 5지점을 쳐다볼 때 카메라 좌표계에서 얻어진 얼굴 특징점의 위치 변화 값들과 이때 사용자가 쳐다보는 모니터상의 실제 위치 정보들을 대입한 반복적 변수 추정 방법(iterative parameter estimation)을 이용하여 앞에서 언급한 미지의 변수를 구하게 된다.
제안 방법
4장에서 설명한데로 본 논문에서는 얼굴의 3차원 움직임량 추정을 위하여 확장 칼만 필터를 사용했으며, 확장 칼만 필터의 예측 정확도는 3차원 위치 추적 장비 (pothemus sensor)[22]와 비교하였다. 실험 결과, 확장 칼만 필터와 3차원 위치 추적 장비와의 정확도 차이는 이동량 및 회전량에서 각각 1.
이와 같이 모르는 미지의 변수들을 자동으로 구하기 위해 본 논문에서는 위의 3가지 좌표축을 결합하여 카메라 좌표계에서 관측되는 얼굴 특징점의 위치 변화로부터 위의 미지 변수들을 구할 수 있는 식을 유도하였다[5, 6, 22]. 그러나 이 식은 그 해를 산술적으로 구할 수 없는 비선형 방정식이므로, 본 논문에서는 초기에 사용자가 모니터상의 미리 알고 있는 5지점을 쳐다볼 때 카메라 좌표계에서 얻어진 얼굴 특징점의 위치 변화 값들과 이때 사용자가 쳐다보는 모니터상의 실제 위치 정보들을 대입한 반복적 변수 추정 방법(iterative parameter estimation)을 이용하여 앞에서 언급한 미지의 변수를 구하게 된다. 이러한 변수들로부터 모니터 좌표계 및 얼굴 좌표계에서의 초기 얼굴 특징점의 3차원 위치를 구할 수 있게 되었다[5, 6, 22].
본 논문에서는 그림 5의 단계 3에서 변화된 얼굴 특징점(특히 눈)의 3차원 위치 및 Z 거리를 구할 수 있으므로 이를 바탕으로 눈 영상의 자동 초점 작용을 하게 된다. 그러나 협각 카메라는 DOF(Depth of Fi안d)가 굉장히 작기 때문에 이와 같은 z 거리만 가지고는 정확한 자동 초점이 이루어지기 어렵다 그러므로 본 논문에서는 입력 영상내의 픽셀들 간의 변화 차이를 측정하는 단순한 초점 측정 알고리즘을 병행하여 사용하였다 즉, 그림 5의 단계 3에서 계산된 얼굴 특징점(눈)의 3차원 위치 정보를 바탕으로 협각 카메라를 상하 및 좌우 회전을 하고 자동 초점을 수행함으로써 눈 영상을 취득한다. 이후, 취득된 영상은 PC로 전송된 후, 영상내의 픽셀들 간의 차이를 측정하는 초점 측정 알고리즘에 의해 영상의 초점 정도를 평가한다.
그러나 이 논문에서와 같이 사용자의 시선 위치를 파악하는 응용 분야에서는 모니터 앞에 약 50~70 cm의 다양한 Za리 범위에서 사용자가 앉을 수 있기 때문에 임의로 피사체의 위치를 멀게 만들 수 없으며, 카메라의 아이리스 크기를 작게 만드는 것은 궁극적으로 카메라 CCD 센서로 들어오는 빛의 양을 줄이게 되어 입력 영상이 어두워지는 결과를 낳게 된다. 그러므로 본 논문에서는 단초점 렌즈를 이용해서는 다양한 Z 거리를 갖는 사용자의 눈에 대한 초점을 맞추기 어렵기 때문에, 직경 H)mm의 아이리스 크기를 갖는 가변 초점(auto focusing) 렌즈 및 자동 초점용 모터 (auto focusing motor, 420 以冷)를 이용하여 보다 선명한 눈 영상을 취득하였다(그림 1의 (6)참조). 이와 같은 자동 상하/좌우 회전 및 초점 기능은 그림 1에서 나타나 있는 카메라내의 마이크로 콘트롤러(그림 1의 (4)참조에 의해 제어된다.
그러나 이러한 경우, 눈동자 영상의 해상도(image resolution)가 많이 떨어지며 그 결과 사용자의 정교한 눈동자 움직임을 추적하기 어려운 문제점이 있다. 그러므로 이 논문에서는 광각 카메라(얼굴의 움직임에 의한 시선 위치 추적용) 및 눈 영역을 확대하여 취득하는 협각 카메라(눈동자 움직임에 의한 시선 위치 추적용), 즉 2개의 카메라를 이용하여 시선 위치 추적 시스템을 구현하였다
일반적인 사무실 환경에서 사용자의 얼굴 뒤에는 복잡한 배경이 존재하며, 또한 외부 광(실내둥 혹은 창문을 통해 들어오는 태양광) 등의 영향으로 얼굴 및 얼굴 특징점의 위치를 영상 처리 방법만으로는 실시간으로 추출하기 어렵다는 것이 일반적인으로 알려져 있다. 그러므로 이 논문에서는 그림 1과 같이 적외선 조명 기반 카메라 시스템을 개발하고, 이를 이용하여 입력 영상으로부터 얼굴 특징점을 실시간으로 추출하였다. 전술한 바와 같이 입력 영상에서 눈 위치를 먼저 찾은 후 이를 기준으로 다른 얼굴 특징점의 위치를 찾는 방식을 사용했으며, 눈 위치를 주줄하기 위하여 본 논문에서는 적외선 조명을 켰을 때 눈의 각막(Comeal)에서 발생하는 반사 위치(Specular Reflection)를 찾는 방법을 사용하였다[221 그림 1을 보다 자세히 설명하면 다음과 같다.
이러한 경우, 협각 카메라를 아무리 상하/좌우 회전(auto panning/tilting) 한다고 하더라도, 광각 영상에서 사라진 한 쪽 눈 영역을 찾을 수 없게 된다. 그러므로 이러한 경우에 대비하기 위하여 본 논문에서는 사용자가 모니터 중앙을 쳐다보는 경우 양쪽 눈을 모두 추적하고, 이후 사용자가 얼굴을 심하게 회전하여 한쪽 눈을 추적할 수 없는 경우, 나머지 보이는 다른 쪽 눈만을 주적함으로써 눈동자 움직임에 의한 정확한 시선 위치를 파악하였다. 협각 카메라'의 상하 및 좌우 회전을 위해 420 pps(pulse per s여cond)를 갖는 2개의 스테핑 모터(stepping motor)를 사용하였다.
그러므로 피부 반사가 심한 사람의 경우, 그림 3에서 보는 바와 같이 눈에서 발생하는 조명의 반사 영역 (Specular Reflection)과 얼굴의 피부 등에서 발생하는 다른 반사 영역들은 디지털 영상 상에서는 같은 2七1(255)의 레벨을 갖게 된다, 이러한 경우, 영상 처리 방법 만에 의해서는 눈에서 발생하는 반사 영역과 기타 다른 피부 등에서 발생하는 영역을 분리하기가 쉽지 않다, 그러나 그림 3과 같이 NTSC 아날로그 신호를 보았을 때는 눈에서 발생하는 반사 영역의 레벨이 다른 피부 등에서 발생하는 레벨보다 높기 때문에(본 연구에서는 NTSC 신호를 직접 오실로스코프(Oscilloscope) 장비로 입력받아 이러한 현상을 확인하였다), 본 논문에서는 디코더에서의 아날로그/디지털 변환 시 사용하는 설정값(Brightness 값)을 조정함으로써 눈에서 발생하는 반사 영역과 기타 다른 피부 등에서 발생하는 영역을 분리하였다. 즉, 디코더의 Brightness값을 전체적으로 낮추면, 그림 3에서 디코더의 아날로그/디지털 변환 영역이 위로 이동(Shift)하게 되어 결과적으로 High Saturated되는 영역은 없어지게 된다’ 즉, 이전에는 둘 다 255로 표시되던 눈에서 발생하는 반사 영역과 다른 피부 등에서 발생하는 영역이 영상 자체에서 다른 값으로 표현됨으로써 궁극적으로는 두 영역을 쉽게 분리해 낼 수 있게 되는 것이다.
-는디코더(Decoder) 칩과 디코더로부터 나오는 디지털 신호를 컴퓨터 PCI 로 전송하는 멀티미디어 브리지 (Multimedia Bridge)가 있다. 그림 1에서와 같이 시선 위치 추적 시스템에는 협각 및 광각 두 개의 카메라가 있으며, 각 카메라로부터 나오는 NTSC 신호를 입력 받기 위해 본 연구에서는 2개의 디코더와 1개의 멀티就디어 브리지를 갖는 2채널 프레임 그래버(PCI인터페이스) 를 구현하였다. 그런데 일반적으로 NTSC 신호는 垣은 신호 범위(0~2'°-1)를 갖고 있고, 일반적인 디코더는 이에 비해 적은 범위의 아날로그/디지털 변환 능력(0 ~ 2妃1)을 갖고 있기 때문에, 입력된 NTSC 신호는 이러한 디코더를 통해 다 표현되지 못하고 그림 3과 같이잘려지는 부분이 발생하게 된다.
눈동자의 중심 위치룔- 추출하기 위해 이 논문에서는 원형 경계 검출 알고리즘(Circular Edge Detection)을 사용하였다. 눈동자의 중심 위치를 추출한 후, 본 논문에서는 눈구석 모양 템플릿(Eye Corner Shape Template)을 이용하여 눈의 양 구석 위치를 추출하였다[22]. 본 논문에서는 그림 1 에서와 같이 HPF(2)를 사용하므로 입력 영상 내에 외부광에 의한 영향을 최소화 할 수 있었으며, 그 결과 입력 영상이나 템플릿 등을 조명에 대해 별도로 정규화할 필요가 없었다.
두 번째 실험으로는 1280x1024 픽셀 해상도를 갖는 19인치 모니터에 수평 및 수직 150 픽셀 간격(2.8cm 간격)으로 반경 5 픽셀의 점들을 표시하고, 사용자가 이를 쳐다볼 때의 정확도를 측정한 것이다. 이를 통해 총 560 개의 테스트 샘플(10명분x56개의 시선 위치)을 취득하게 되었으며, 이러한 실험 조건은 Rikert의 연구[8]에서와 동일하다.
적외선 조명을 이용하여 찾은 눈에서의 반사 위치(Specular Reflection)를 기준으로 제한된 영역에서 눈동자 중심 위치를 추출하기 때문에, 정확한 위치를 추출하는 데에는 처리 시간이 거의 소요되지 않았다 (Pentium-II 550MHz PC에서 약 5-10 ms). 또한, 2장에서 설명한 눈구석 추출을 위하여 본 논문에서는 입력된 눈구석 영상을 30x30 픽셀 크기로 정규화하여 SVM 의 입력으로 사용하였다. 입력 데이타로는 2000장의 연속된 영상을 취득하여(다양한 자세로 앉아 있는 20명의 사람>아00장의 영상) 이로부터 8000개의 눈구석 영상 샘플(4개의 눈구석 영상 샘플/명x2000장의 영상)을 취득했으며, 이외에 1000장의 영상은 추가로 획득함으로써 SVM의 테스트를 위해 사용하였다.
또한, 본 연구에서는 일반적인 격행 주사(Interlaced Scan) CCD 카메라를 사용하였으며 이와 같은 카메라 및 조명의 동작을 제어하기 위한 마이크로 컨트롤러(4) 를 사용했다. 이를 이용하여 그림 2에서 나타나 있듯이 CCD 의 출력 신호 중 Even 과 Odd 필드의 VD(Vertical Drive)신호에 맞추어 조명의 On/Off를 조정하게 하였다.
본 논문에서는 그림 5의 단계 3에서 변화된 얼굴 특징점(특히 눈)의 3차원 위치 및 Z 거리를 구할 수 있으므로 이를 바탕으로 눈 영상의 자동 초점 작용을 하게 된다. 그러나 협각 카메라는 DOF(Depth of Fi안d)가 굉장히 작기 때문에 이와 같은 z 거리만 가지고는 정확한 자동 초점이 이루어지기 어렵다 그러므로 본 논문에서는 입력 영상내의 픽셀들 간의 변화 차이를 측정하는 단순한 초점 측정 알고리즘을 병행하여 사용하였다 즉, 그림 5의 단계 3에서 계산된 얼굴 특징점(눈)의 3차원 위치 정보를 바탕으로 협각 카메라를 상하 및 좌우 회전을 하고 자동 초점을 수행함으로써 눈 영상을 취득한다.
그런데, 일반적인 카메라 CCD(Charge Coupled Device) 센서의 경우, 가시광선보다는 적외선 영역으로 갈수록 영상의 감도가 낮아지는 특성을 나타낸다. 본 논문에서는 사용자의 눈에 눈부심을 주지 않기 위하여 880nm의 적의선을 사용했으며, 이러한 경우 영상에서의 감도가 많이 낮아 얼굴 특징점을 추출하기 위해 충분한 밝기를 내기 위해서는 5개의 적외선조명의 광을 모아 사용해야만 했다.
수 있는 기술이 요구된다. 본 논문에서는 얼굴 특징점으로 양 눈동자의 중심 및 눈의 구석, 콧구멍 및 입의 양 끝점을 사용하였다. 얼굴 특징점의 위치를 찾기 위해 이 논문에서는 입력 영상으로부터 눈 영역을 먼저 추출한 후, 이를 기준으로 기타 다른 얼굴 특징점들의 위치를 실시간으로 추적하는 방법을 사용하였다[22].
첫 번째 단계에서는 사용자가 모니터 상에 미리 지정된 5 위치 (모니터 좌측 상단, 우측 하단, 중앙, 중앙과 좌측 상단 사이의 지점, 중앙과 우측 하단 사이의 지점)를 쳐다봄으로써 얻어진 정보들을 바탕으로 모니터 좌표계 및 얼굴 좌표계에서의 초기 얼굴 특징점의 3차원 위치를 자동으로 구하게 된다. 본 논문의 실험 환경에서 사용자는모니터상의 한 지점을 쳐다보고 이때 사용자의 얼굴 특징점은 모니터 위에 놓여져 있는 카메라로부터 관측되므로, 얼굴 좌표계, 모니터 좌표계, 카메라 좌표계의 3가지 좌표계를 동시에 고려해야 한다. 즉, 이러한 3가지 좌표계 사이의 변환 관계를 정확히 알고 있어야만 얼굴 특징점의 3차원 위치를 구할 수 있게 된다.
이러한 경우는 전술한 바와 같이 주로 평평한 안경을 착용하는 사람들 일수록 자주 발생한다. 본 연구에서는 양쪽 조명에 의해 생기는 반사 영역의 크기 등을 파악하여 이러한 경우가발생하면 사용자에게 음성 메시지(“고개를 조금 숙이세요” 혹은 “고개를 조금 드세요”)를 내보내어 사용자의 얼굴을 조금 숙이거나 들도록 유도하는 방법을 사용하였다. 이럼으로써 조명대비 사용자 안경면의 각도를 조정하게 함으로써 안경에 의한 반사는 피할 수 있게 된 다초점이 맞은 눈 영상이 취득되면, 본 논문에서는 학습된 신경망(다층 퍼셉트론)을 이용하여 눈동자 움직임에 의한 모니터 상의 시선 위치를 파악하였다.
여기서 시선 위치 에러란 사용자가 모니터 상에 실제 쳐다보는 위치와 계산되어 나온 위치 사이의 최소 자승 에러를 나타낸다. 실험은 크게 두 가지로 나누어 사용자가 모니터상의 한 지점을 쳐다볼 때 얼굴의 움직임에 의해서만 응시하는 경우(표 1)와 얼굴 및 눈동자 움직임을 같이 이용하여 자연스럽게 쳐다보는 경우(표 2)로 구분하여 수행하였다.
본 논문에서는 얼굴 특징점으로 양 눈동자의 중심 및 눈의 구석, 콧구멍 및 입의 양 끝점을 사용하였다. 얼굴 특징점의 위치를 찾기 위해 이 논문에서는 입력 영상으로부터 눈 영역을 먼저 추출한 후, 이를 기준으로 기타 다른 얼굴 특징점들의 위치를 실시간으로 추적하는 방법을 사용하였다[22]. 일반적인 사무실 환경에서 사용자의 얼굴 뒤에는 복잡한 배경이 존재하며, 또한 외부 광(실내둥 혹은 창문을 통해 들어오는 태양광) 등의 영향으로 얼굴 및 얼굴 특징점의 위치를 영상 처리 방법만으로는 실시간으로 추출하기 어렵다는 것이 일반적인으로 알려져 있다.
이처럼 입력 영상에서 사용자의 눈 위치를 찾게 되면, 찾은 눈 위치에 대해 코 및 입의 상대적인 존재 가능 영역을 설정할 수 있게 된다. 이 논문에서는 설정된 존재 가능 영역 내에서, SVM을 이용하여 눈의 구석 위치를 찾았던 것과 유사한 방법으로 양 콧구멍 및 입의 끝점 위치를 찾았다. 입력 영상에서 얼굴 특징점의 위치가 추출되면, 그림 4에 나타난 것과 같이 총 9개의 특징점 (P], P2, P3, P4, P5, P6, P7, Ql, 。2)을 선정하게 되는데 이러한 특징점들은 얼굴의 3차원 움직임 량(3차원 회전량 및 이동량) 및 눈동자 움직임량을 추정하기 위해 사용된다.
주가로, 본 논문에서는 얼굴내 눈 특징점을 보다 빠르고 정확하게 추출하기 위해 적외선 조명을 사용하였다. 이때 안경사 용자의 경우 안경 면에서 생기는 반사위치를 피하여눈 영역을 정확하게 추출하기 위하여, 2개의 적외선 조명을 번갈아 키는 방법을 사용하였다. 실험 결과, 약 3.
있다. 이러한 문제를 해결하기 위하여 본 논문에서는 추가로 프레임 그래버(Frame Grabber)의 디코더 설정값을 변경하는 방법을 이용하여 보다 정확한 눈의 반사 위치를 찾는 방법을 취했다.
즉, 사용자의 시력이 약할수록 안경 면은 평평해지는 경향을 나타내며, 이러한 경우 안경에 의한 반사 영역의 크기가 증가되어 전체 눈 영상을 모두 덮는 경우가 종종 발생한다. 이러한 문제점을 해결하기 위하여 본 논문에서는 그림 1에서 나타낸 것처럼, 두 개의 적외선 조명을 사용하여, 각 조명올 번갈아 킴으로써 이와 같은 안경에 의해 발생하는 큰 반사위치를 피하도록 하였다. 즉, 협각 카메라를 통해 눈 영상이 입력되면 본 논문에서는 2장에서 언급한 방법인 프레임 그래버 디코더 값을 낮춤으로써 눈 혹은 안경에서 반사되는 영역과 기타 얼굴 피부에서 반사되는 영역을 쉽게 분리할 수 있다.
본 연구에서는 양쪽 조명에 의해 생기는 반사 영역의 크기 등을 파악하여 이러한 경우가발생하면 사용자에게 음성 메시지(“고개를 조금 숙이세요” 혹은 “고개를 조금 드세요”)를 내보내어 사용자의 얼굴을 조금 숙이거나 들도록 유도하는 방법을 사용하였다. 이럼으로써 조명대비 사용자 안경면의 각도를 조정하게 함으로써 안경에 의한 반사는 피할 수 있게 된 다초점이 맞은 눈 영상이 취득되면, 본 논문에서는 학습된 신경망(다층 퍼셉트론)을 이용하여 눈동자 움직임에 의한 모니터 상의 시선 위치를 파악하였다. 이후, 그림 5의 단계 4에서 구한 얼굴에 움직임에 의한 시선 위치와 눈동자 움직임에 의한 시선 위치는 그림 10과 같이 2차원 벡터 합성됨으로써 최종적인 모니터상의 시선 위치가 계산되어 진다.
여기서, 초점이 맞지 않는 눈 영상이 취득된 경우, 초점 렌즈를 어느 방향으로 움직여야하는 지 (앞 혹은 뒤) 결정하기 어려운 문제가 있다. 이를 결정하기 위하여 본 논문에서는 기타 부가적인 정보를 바탕으로 한 여러가지 휴리스틱한 방법(눈 영상의 밝기 정보 혹은 피라미드 기반 전역 렌즈 탐색)등을 이용하여 초점 렌즈의 움직임 방향을 결정한다.
사용했다. 이를 이용하여 그림 2에서 나타나 있듯이 CCD 의 출력 신호 중 Even 과 Odd 필드의 VD(Vertical Drive)신호에 맞추어 조명의 On/Off를 조정하게 하였다. 그림 2를 보다 자세히 설명하면 다음과 같다.
이와 같은 정보를 바탕으로, 본 논문에서는 정확한 눈동자의 위치를 취득하기 위해 협각 카메라 (Narrow View Camera)를 자동 상하/좌우 회전 (auto panning/tilting:)시킬 수 있게 된다(그림 1의 (5) 참조).
또한 Rikert는 사용자와 모니터사이의 Za리는 학습 및 실제 사용 시 고정되었다고 가정하고 있으나, 본 논문에서 그러한 불편한 제약을 사용하고 있지 않다. 이의 일환으로 본 논문에서는 사용자의 Za리를 변화시켜가면서(55, 60, 65cm) 시선 위치 정확도를 측정하였다. 실험 결과, 최종 자승 에러는 Za리가 55cm일 때 3.
이러한 변수들로부터 모니터 좌표계 및 얼굴 좌표계에서의 초기 얼굴 특징점의 3차원 위치를 구할 수 있게 되었다[5, 6, 22]. 이후 그림 5의 두 번째 및 세 번째 단계에서 사용자가 모니터상의 다른 한 지점을 쳐다볼 때 변화된 얼굴 특징점의 3차원 위치를 구하기 위하여, 본 논문에서는 얼굴 좌표계에서의 얼굴 특징점의 회전과 이동량을 3차원 움직임 추정 방법 중의 하나인 확장 칼만 필터 (Extended Kalman Filter)를 이용하여 구하고, 이로부터 아핀 변환(Affine Transformation)^- 적용하여 변화된 얼굴 특징점의 3차원 위치를 산술적으로 구할 수 있게 된다. 그림 5의 4번째 단계에서는 변화된 얼굴 특징점의 위치를 다시 모니터 좌표계를 기준으로 계산하고, 이 얼굴 특징점들의 위치로부터 하나의 얼굴 평면과 법선을 구할 수 있으며, 이 법선과 모니터 평면이 만나는 위치가 얼굴의 움직임에 의한 시선 위치로 정하게 된디.
그러나 협각 카메라는 DOF(Depth of Fi안d)가 굉장히 작기 때문에 이와 같은 z 거리만 가지고는 정확한 자동 초점이 이루어지기 어렵다 그러므로 본 논문에서는 입력 영상내의 픽셀들 간의 변화 차이를 측정하는 단순한 초점 측정 알고리즘을 병행하여 사용하였다 즉, 그림 5의 단계 3에서 계산된 얼굴 특징점(눈)의 3차원 위치 정보를 바탕으로 협각 카메라를 상하 및 좌우 회전을 하고 자동 초점을 수행함으로써 눈 영상을 취득한다. 이후, 취득된 영상은 PC로 전송된 후, 영상내의 픽셀들 간의 차이를 측정하는 초점 측정 알고리즘에 의해 영상의 초점 정도를 평가한다. 만일 영상의 초점 정도가 미리 정해놓은 임계치를 넘지 못하는 경우, 카메라 마이크로 컨트롤러를 통해 자동 초점 렌즈에 움직임 명령을 전달하게 된다.
그러므로 이 논문에서는 그림 1과 같이 적외선 조명 기반 카메라 시스템을 개발하고, 이를 이용하여 입력 영상으로부터 얼굴 특징점을 실시간으로 추출하였다. 전술한 바와 같이 입력 영상에서 눈 위치를 먼저 찾은 후 이를 기준으로 다른 얼굴 특징점의 위치를 찾는 방식을 사용했으며, 눈 위치를 주줄하기 위하여 본 논문에서는 적외선 조명을 켰을 때 눈의 각막(Comeal)에서 발생하는 반사 위치(Specular Reflection)를 찾는 방법을 사용하였다[221 그림 1을 보다 자세히 설명하면 다음과 같다. 적외선 조명 (IR-LED(InfraRed-Light Emitting Diode)) (1)은 눈에서의 반사 위치 (Specular Reflection)를 생성하는데 사용된다.
주가로, 본 논문에서는 얼굴내 눈 특징점을 보다 빠르고 정확하게 추출하기 위해 적외선 조명을 사용하였다. 이때 안경사 용자의 경우 안경 면에서 생기는 반사위치를 피하여눈 영역을 정확하게 추출하기 위하여, 2개의 적외선 조명을 번갈아 키는 방법을 사용하였다.
그러므로 이러한 경우에 대비하기 위하여 본 논문에서는 사용자가 모니터 중앙을 쳐다보는 경우 양쪽 눈을 모두 추적하고, 이후 사용자가 얼굴을 심하게 회전하여 한쪽 눈을 추적할 수 없는 경우, 나머지 보이는 다른 쪽 눈만을 주적함으로써 눈동자 움직임에 의한 정확한 시선 위치를 파악하였다. 협각 카메라'의 상하 및 좌우 회전을 위해 420 pps(pulse per s여cond)를 갖는 2개의 스테핑 모터(stepping motor)를 사용하였다.
대상 데이터
본 논문에서 모니터상의 시선 위치 파악을 위한 실험데이타로는 총 10명의 사용자가 19인치 모니터 상의 23 개 지점을 쳐다볼 때 취득된 데이타를 사용하였다. 여기서 시선 위치 에러란 사용자가 모니터 상에 실제 쳐다보는 위치와 계산되어 나온 위치 사이의 최소 자승 에러를 나타낸다.
본 논문에서의 입력 영상 크기는 640x480픽셀이며, 여기서 최소 자승 에러란 SVM으로 찾은 특징점의 위치와 사용자가 직접 눈으로 보고 찾은 위치 사이의 에러 값을 나타낸다. 본 논문에서는 총 3000장의 연속 영상(2000장의 학습 영상 및 1000장의 테스트 영상)을 이용하여 특징점 추출 성능을 테스트하였다[22].
81 cm)의 정확도를 나타냈다. 실험을 위해서는 6.1 절에서 얼굴 특징점 추출을 위해 사용했던 20명분의 데이타를 이용하였다.
8cm 간격)으로 반경 5 픽셀의 점들을 표시하고, 사용자가 이를 쳐다볼 때의 정확도를 측정한 것이다. 이를 통해 총 560 개의 테스트 샘플(10명분x56개의 시선 위치)을 취득하게 되었으며, 이러한 실험 조건은 Rikert의 연구[8]에서와 동일하다. 실험 결과 실제 응시 위치와 본 논문에서 제안한 방법에 의한 응시 위치 사이의 최소 자승 에러는 약 3.
또한, 2장에서 설명한 눈구석 추출을 위하여 본 논문에서는 입력된 눈구석 영상을 30x30 픽셀 크기로 정규화하여 SVM 의 입력으로 사용하였다. 입력 데이타로는 2000장의 연속된 영상을 취득하여(다양한 자세로 앉아 있는 20명의 사람>아00장의 영상) 이로부터 8000개의 눈구석 영상 샘플(4개의 눈구석 영상 샘플/명x2000장의 영상)을 취득했으며, 이외에 1000장의 영상은 추가로 획득함으로써 SVM의 테스트를 위해 사용하였다. 실험 결과, 학습 데이타에 대한 분류 성능은 약 0.
데이터처리
2장에서 설명한 바와 같이 본 논문에서는 광각 카메라에서 눈동자의 정확한 영역을 추출하기 위하여 원형 경계 검출 알고리즘(Circular Edge Detection)-Sr 사용하였다. 적외선 조명을 이용하여 찾은 눈에서의 반사 위치(Specular Reflection)를 기준으로 제한된 영역에서 눈동자 중심 위치를 추출하기 때문에, 정확한 위치를 추출하는 데에는 처리 시간이 거의 소요되지 않았다 (Pentium-II 550MHz PC에서 약 5-10 ms).
본 논문에서 제안하는 시선 위치 파악의 정확도는 표 1, 2와 같이 기존의 연구 결과[5, 6, 14, 22]와 비교하였다. [5, 6]의 연구에서는 본 논문에서와 같이 그림 5의 4단계를 거쳐 얼굴 특징점의 3차원 움직임 량 및 위치 둥을 추정하고, 이로부터 계산되는 얼굴 평면의 법선이 모니터와 만나는 위치를 사용자의 시선 위치로 파악하는 방식을 사용하고 있다.
이론/모형
및 눈의 구석)를 추출하게 된다. 눈동자의 중심 위치룔- 추출하기 위해 이 논문에서는 원형 경계 검출 알고리즘(Circular Edge Detection)을 사용하였다. 눈동자의 중심 위치를 추출한 후, 본 논문에서는 눈구석 모양 템플릿(Eye Corner Shape Template)을 이용하여 눈의 양 구석 위치를 추출하였다[22].
특히 눈동자의 중심위치(그림 4의 Qi, Q2 참조)와 왼쪽 혹은 오른쪽 눈의 구석 위치(그림 4의 Pi, 凫, P3, P4, P1, ?2, ?3, μ‘4 참조)사이의 거리는 사용자의 시선 위치에 따라 변화하게 된다. 본 논문에서는 그림 8과 같이 눈동자의 움직임량 및 시선 위치 사이의 관계를 학습하기 위하여 신경망(다층 퍼셉트론)을 사용하였다. 여기서 신경망을 위한 입력 값은 사용자가 모니터 중앙을 쳐다볼 때 취득된 눈 영상에서의 눈 중심과 구석 사이의 거리로 정규화된다.
이 그림에서 추출된 눈동자 영역 및 구석 위치가 표시되어 있다. 여기서 눈동자 및 눈구석 영역을 추출하기 위하여 원형 경계 검줄(circular edge detection) 및 SVM 기반 눈구석 템플릿 방법을 사용하였다. 이 방법은 2장에서 설명한 광각 카메라에서 눈 특징점을 추출하기 위해 사용했던 방식과 거의 유사하다.
본 논문에서는 그림 1 에서와 같이 HPF(2)를 사용하므로 입력 영상 내에 외부광에 의한 영향을 최소화 할 수 있었으며, 그 결과 입력 영상이나 템플릿 등을 조명에 대해 별도로 정규화할 필요가 없었다. 이와 같은 눈구석 모양 템플릿과 함께 본 논문에서는 SVM(Support Vector Machine)을 이용하여 정확한 눈의 구석 위치를 추출할 수 있었다[22]. 이처럼 입력 영상에서 사용자의 눈 위치를 찾게 되면, 찾은 눈 위치에 대해 코 및 입의 상대적인 존재 가능 영역을 설정할 수 있게 된다.
성능/효과
2% (8/4000개)의 에러를 나타냈다 또한, SVM을 사용했을 때의 분류 시간 역시 Pentium-II 550MHz 환경에서 13ms정도 소요됨을 알 수 있었다. 그러므로 실시간으로 얼굴 특징점 및 시선 위치를 파악하고자 하는 본 연구 분야에서는 충분히 사용 가능한 알고리즘임을 알 수 있었다.
있다. 그리고 표 2와 같이 얼굴 및 눈동자 움직임이 같이 발생하는 실험 데이타에 대한 시선 위치 추출 정확도 역시 본 논문에서 제안하는 방식이 가장 우수함을 알 수 있다. 전반적으로는 얼굴의 움직임만이 존재하는 경우보다 얼굴 및 눈동자 움직임이 같이 존재하는 경우의 시선 위치 정확도가 다소 떨어짐을 알 수 있다.
전술한 바와 같이 본 논문에서의 방법은 사용자의 Za리 변화에 거의 영향을 받지 않는다는 것을 보여주고 있다. 또한 Rikert의 방법은 처리 시간이 많이 소요되는 문제점(alphasta血II 333MHz에서 약 1 분) 이있었으나 본 논문의 방법은 이에 비해 상당히 빠르고 실시간으로 구현 가능한 결과를 나타내고 있다(Pen-tium-II 550MHz에서 약 1초 이내).
먼저 얼굴 움직임에 의해서만 쳐다보는 경우의 정확도는 표 1에 나타나 있는 것처럼 본 논문에서 제안한 방법이 기존의 많은 방법들에 비해 가장 우수함을 알 수 있다. 그리고 표 2와 같이 얼굴 및 눈동자 움직임이 같이 발생하는 실험 데이타에 대한 시선 위치 추출 정확도 역시 본 논문에서 제안하는 방식이 가장 우수함을 알 수 있다.
본 논문에서 사용하는 협각 카메라는 작은 화각(약 30~45 mm의 큰 초점거리)을 갖고 있으며, 이러한 특성 때문에 눈 영역을 확대하여 촬영할 수 있다. 또한 사용자가 모니터의한 지점을 쳐다보기 위하여 얼굴을 심하게 회전하는 경우, 얼굴 영상을 취득하기 위한 광각카메라(Wide View Camera)에서 한쪽 눈 영역이 아예 사라져 버리는 경우가 발생한다.
본 연구에서 개발한 시선 위치 추적 시스템의 재료비는 100달러 이하(협각 및 광각 카메라용 렌즈 가격 18 달러, 자동 상하/좌우회전 및 초점 모터 가격 6 달러, 협각 및 광각용 CCD 센서 가격 20 달러, CCD 카메라를 위한 부가 칩들 8달러, 적외선 조명 가격 20달러, 카메라 케이스 및 적외선 필터 등등의 가격 20달러)이며, 이러한 경우 총 양산가는 300달러 이내(일반적으로 양산가는 재료비의 3배)가 되어 일반 소비자에게도 약 35만 원 대의 가격에 공급되어질 수 있다.
이를 통해 총 560 개의 테스트 샘플(10명분x56개의 시선 위치)을 취득하게 되었으며, 이러한 실험 조건은 Rikert의 연구[8]에서와 동일하다. 실험 결과 실제 응시 위치와 본 논문에서 제안한 방법에 의한 응시 위치 사이의 최소 자승 에러는 약 3.43cm인 것으로 나타났으며, 이러한 실험 결과는 Rikert의 방법에서의 정확도(약 5.08 cm의 최소 자승 에러)보다 우수함을 알 수 있다. 또한 Rikert는 사용자와 모니터사이의 Za리는 학습 및 실제 사용 시 고정되었다고 가정하고 있으나, 본 논문에서 그러한 불편한 제약을 사용하고 있지 않다.
이때 안경사 용자의 경우 안경 면에서 생기는 반사위치를 피하여눈 영역을 정확하게 추출하기 위하여, 2개의 적외선 조명을 번갈아 키는 방법을 사용하였다. 실험 결과, 약 3.44cm의 시선 위치 추적 에러(최소 자숭 에러) 성능을 얻을 수 있었다.
이의 일환으로 본 논문에서는 사용자의 Za리를 변화시켜가면서(55, 60, 65cm) 시선 위치 정확도를 측정하였다. 실험 결과, 최종 자승 에러는 Za리가 55cm일 때 3.38cm, Za리가 60cm일 때 3.45cm 그리고 Za리가 65cm일 때 3.49cm의 결과를 나타냈다. 전술한 바와 같이 본 논문에서의 방법은 사용자의 Za리 변화에 거의 영향을 받지 않는다는 것을 보여주고 있다.
입력 데이타로는 2000장의 연속된 영상을 취득하여(다양한 자세로 앉아 있는 20명의 사람>아00장의 영상) 이로부터 8000개의 눈구석 영상 샘플(4개의 눈구석 영상 샘플/명x2000장의 영상)을 취득했으며, 이외에 1000장의 영상은 추가로 획득함으로써 SVM의 테스트를 위해 사용하였다. 실험 결과, 학습 데이타에 대한 분류 성능은 약 0.11%의 분류 에러(9/8000 개)를 나타냈으며, 테스트 데이타 중에서는 약 0.2% (8/4000개)의 에러를 나타냈다 또한, SVM을 사용했을 때의 분류 시간 역시 Pentium-II 550MHz 환경에서 13ms정도 소요됨을 알 수 있었다. 그러므로 실시간으로 얼굴 특징점 및 시선 위치를 파악하고자 하는 본 연구 분야에서는 충분히 사용 가능한 알고리즘임을 알 수 있었다.
sensor)[22]와 비교하였다. 실험 결과, 확장 칼만 필터와 3차원 위치 추적 장비와의 정확도 차이는 이동량 및 회전량에서 각각 1.4cm 및 2.9&)의 에러 성능을 나타냈다.
이 논문에서는 설정된 존재 가능 영역 내에서, SVM을 이용하여 눈의 구석 위치를 찾았던 것과 유사한 방법으로 양 콧구멍 및 입의 끝점 위치를 찾았다. 얼굴 특징점 추출에 대한 실험 결과, 평균 1 픽셀(양 눈의 중심), 2 픽셀(양 눈의 구석 위치), 4 픽셀(양 콧구멍) 그리고 3 픽셀(입의 양 끝점)의 최소자승 에러가 발생했음을 알 수 있었다. 본 논문에서의 입력 영상 크기는 640x480픽셀이며, 여기서 최소 자승 에러란 SVM으로 찾은 특징점의 위치와 사용자가 직접 눈으로 보고 찾은 위치 사이의 에러 값을 나타낸다.
49cm의 결과를 나타냈다. 전술한 바와 같이 본 논문에서의 방법은 사용자의 Za리 변화에 거의 영향을 받지 않는다는 것을 보여주고 있다. 또한 Rikert의 방법은 처리 시간이 많이 소요되는 문제점(alphasta血II 333MHz에서 약 1 분) 이있었으나 본 논문의 방법은 이에 비해 상당히 빠르고 실시간으로 구현 가능한 결과를 나타내고 있다(Pen-tium-II 550MHz에서 약 1초 이내).
후속연구
눈동자의 중심 위치를 추출한 후, 본 논문에서는 눈구석 모양 템플릿(Eye Corner Shape Template)을 이용하여 눈의 양 구석 위치를 추출하였다[22]. 본 논문에서는 그림 1 에서와 같이 HPF(2)를 사용하므로 입력 영상 내에 외부광에 의한 영향을 최소화 할 수 있었으며, 그 결과 입력 영상이나 템플릿 등을 조명에 대해 별도로 정규화할 필요가 없었다. 이와 같은 눈구석 모양 템플릿과 함께 본 논문에서는 SVM(Support Vector Machine)을 이용하여 정확한 눈의 구석 위치를 추출할 수 있었다[22].
참고문헌 (22)
A. Azarbayejani. 'Visually Controlled Graphics'. IEEE Trans. PAMI, Vol. 15, No. 6, pp. 602-605, 1993
J. Heinzmann et al., 'Robust real-time face tracking and gesture recognition'. Proc. of the IJCAI, Vol. 2, pp. 1525-1530, 1997
T. BROlDA et al., 'Recursive 3-D Motion Estimation from a Monocular Image Sequence'. IEEE Trans. Aerospace and Electronic Systems, Vol. 26, No.4, pp. 639-656, 1990
T. Fukuhara et al., '3D motion estimation of human head for model based image coding'. IEE Proc., Vol. 140, No.1, pp. 26-35, 1993
K. R. Park et al., 'Gaze Point Detection by Computing the 3D Positions and 3D Motions of Face,' IEICE Trans. Inf. and Syst., Vol. E.83-D, No.4, pp.884-894, Apr 2000
K. R. Park et al., 'Gaze Detection by Estimating the Depth and 3D Motions of Facial Features in Monocular Images,' IEICE Trans. Fundamentals, Vol. E.82-A, No. 10, pp, 2274-2284, Oct 1999
K. OHMCRA et al., 'Pointing Operation Using Detection of Face Direction from a Single View'. IEICE Trans. Inf./&Syst., Vol. J72D-II, No.9, pp. 1441-1447, 1989
P. Ballard et al., 'Controlling a Computer via Facial Aspect'. IEEE Trans. on SMC, Vol. 25, No. 4, pp. 669-677, 1995
J. Heinzmann et al., '3D Facial Pose and Gaze Point Estimation using a Robust Real- Time Tracking Paradigm'. Proceedings of ICAFGR, pp. 142-147, 1998
T. Rikert et al., 'Gaze Estimation using Morphable Models'. Proc. of ICAFGR, pp. 436-441, 1998
Matsumoto-Y, et al., 'An algorithm for real-time stereo vision implementation of head pose and gaze direction measurement'. Proc. the ICAFGR. pp. 499-504, 2000
Newman-R et al., 'Real-time stereo tracking for head pose and gaze estimation'. Proceedings the 4th ICAFGR. pp. 122-8, 2000
K. R. Park et al., 'Intelligent Process Control via Gaze Detection Technology'. EAAI, Vol. 13, No. 5, pp. 577-587, 2000
Varchmin-AC et al., 'Image based recognition of gaze direction using adaptive methods. Gesture and Sign Language in Human-Computer Interaction'. Int. Gesture Workshop Proc. Berlin, Germany, pp. 245-57, 1998
Betke-M et al., 'Gaze detection via self-organizing gray-scale units'. Proc. Int. Workshop on Recog., Analy., and Tracking of Faces and Gestures in Real-Time System. pp. 70-6, 1999
K. R. Park et al., 'Facial and Eye Gaze detection'. LNCS, Vol.2525, pp. 368-376, 2002
※ AI-Helper는 부적절한 답변을 할 수 있습니다.