KR101550474B1 - 양안을 찾아내어 추적하는 방법 및 장치 - Google Patents

양안을 찾아내어 추적하는 방법 및 장치 Download PDF

Info

Publication number
KR101550474B1
KR101550474B1 KR1020107012593A KR20107012593A KR101550474B1 KR 101550474 B1 KR101550474 B1 KR 101550474B1 KR 1020107012593 A KR1020107012593 A KR 1020107012593A KR 20107012593 A KR20107012593 A KR 20107012593A KR 101550474 B1 KR101550474 B1 KR 101550474B1
Authority
KR
South Korea
Prior art keywords
eyes
face
search area
image data
coordinates
Prior art date
Application number
KR1020107012593A
Other languages
English (en)
Other versions
KR20100105591A (ko
Inventor
엔리코 쥬아
Original Assignee
시리얼 테크놀로지즈 에스.에이.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 시리얼 테크놀로지즈 에스.에이. filed Critical 시리얼 테크놀로지즈 에스.에이.
Publication of KR20100105591A publication Critical patent/KR20100105591A/ko
Application granted granted Critical
Publication of KR101550474B1 publication Critical patent/KR101550474B1/ko

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B3/00Apparatus for testing the eyes; Instruments for examining the eyes
    • A61B3/10Objective types, i.e. instruments for examining the eyes independent of the patients' perceptions or reactions
    • A61B3/113Objective types, i.e. instruments for examining the eyes independent of the patients' perceptions or reactions for determining or recording eye movement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/165Detection; Localisation; Normalisation using facial parts and geometric relationships
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/18Eye characteristics, e.g. of the iris
    • G06V40/193Preprocessing; Feature extraction
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/117Identification of persons
    • A61B5/1171Identification of persons based on the shapes or appearances of their bodies or parts thereof
    • A61B5/1176Recognition of faces
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/74Details of notification to user or communication with user or patient ; user input means
    • A61B5/742Details of notification to user or communication with user or patient ; user input means using visual displays
    • A61B5/745Details of notification to user or communication with user or patient ; user input means using visual displays using a holographic display

Abstract

적어도 하나의 얼굴에서 양안의 3D 좌표들을 찾아내고 이어서 추적하는 방법에서, 적어도 하나의 이미지 센서로부터 적어도 하나의 디지털 비디오 신호의 시퀀스를 포함하는 이미지 데이터를 수신하는 단계, 이미지 데이터에서 눈들을 찾아내거나 이미 찾아내어진 눈들을 추적하는 단계, 찾아내어진 또는 추적된 눈들의 3D 좌표들을 산출하는 단계, 찾아내어진 또는 추적된 눈들을 양안에 할당하는 단계, 및 양안의 3D 좌표들을 제공하는 단계를 제안한다. 이미지 데이터에서 눈들을 찾아내는 단계는 이미지 데이터에서 하나 이상의 얼굴들을 식별하는 단계, 식별된 적어도 하나의 얼굴의 3D 좌표들을 산출하는 단계, 식별된 얼굴 상에서 제1 탐색 영역을 결정하는 단계; 및 제1 탐색 영역에서 적어도 하나의 눈을 찾아내는 단계를 포함하고, 이미지 데이터에서 이미 찾아내어진 눈들을 추적하는 단계는 식별된 얼굴 상에서 제2 탐색 영역을 결정하는 단계 및 제2 탐색 영역에서 양안의 눈들을 추적하는 단계를 포함한다.

Description

양안을 찾아내어 추적하는 방법 및 장치{METHOD AND DEVICE FOR FINDING AND TRACKING PAIRS OF EYES}
본 발명은 실시간으로 적어도 하나의 얼굴에서 양안(pair of eyes)의 3차원(3D) 좌표들을 찾아내고 이어서 추적하는 방법 및 장치에 관한 것이다.
얼굴들을 찾아내어 추적하는 비접촉식 방법은 예컨대 접촉식 방법과는 달리 예를 들어 헤드에 고정된 카메라 또는 스포트라이트와 같은 부가의 보조 수단을 필요로 하지 않는다. 그러한 비접촉식 방법의 장점은 추적하려는 피사체의 이동 자유성이 그 어떤 방식으로도 보조 수단에 의해 제한되지 않거나 피사체가 보조 수단의 사용으로 인한 부담을 받지 않는다는데 있다.
비접촉식 식별 및 추적 방법들은 선행 기술로 공지되어 있다. 즉, 예컨대 US 6 539 100 B1 및 EP 0 350 957 B1은 촬영된 이미지들로부터 추출된 얼굴과 눈들의 일정한 특징들에 의거하여 어떻게 보는 사람의 시선 방향을 확인하는지를 개시하고 있다. US 6 539 100 B1은 보는 사람이 어떤 물체를 바라보는지를 해당 방법에 의해 어떻게 식별하는지를 설명하고 있는 한편, EP 0 350 957 B1은 아울러 목표물까지의 눈들의 이동을 시간 경과에 따라 추적하고 있다.
DE 197 31 303 A1은 헤드와 눈들의 이동들이 크고 빠른 경우에도 눈들의 시선 방향을 헬멧 없이 비접촉으로 측정하는 방법 및 장치를 개시하고 있다. 그러한 방법 및 장치에서는, 눈들에 적외선을 조사하고, 광학 시스템에 의해 눈들을 투영하며, 적어도 하나의 이미지 센서에 의해 눈들을 촬영하고, 이어서 그와 같이 하여 얻어진 이미지를 동공 중심의 위치 및 각막 반사의 검출에 의해 시선 위치를 결정하는, 메인 프로세서에 의해 구성될 수 있는 시선 방향 프로세서에서 후속 처리하여 모니터에 표시한다.
WO 03/079 902 A1에도 상이한 조명 조건들에서 실시간으로 눈들을 식별 및 추적하는 방법이 설명되어 있다. 그러한 방법에서는, 하나의 이미지가 "밝은 동공 효과(bright pupil effect)"를 재현하고 다른 하나의 이미지가 "어두운 동공 효과(dark pupil effect)"를 재현하는 2개의 능동 조명 이미지(active light image)를 촬영하는 단계, 그 2개의 이미지들로부터 차분 이미지(differential image)를 형성하되, 합성된 차분 이미지가 양 이미지들의 콘트라스트가 같지 않은 지점들에서만 콘트라스트를 갖게 하는 단계, 콘트라스트 지점들을 차분 이미지에 잠재적 눈들로서 마크하는 단계, 잠재적 눈들을 사전에 캡처한 눈들 및 눈이 아닌 것들의 이미지들과 비교하여 차분 이미지에서 높은 확률로 눈들을 눈이 아닌 것들과 구별할 수 있게 하는 단계에 의해 눈들을 식별한다. 식별에 뒤이은 이미지에서 칼만 필터링(Kalman filtering)을 적용하고 예상 눈 위치를 차분 이미지에서 색출한 눈 위치와 비교함으로써 눈들을 추적한다. 비교 결과 나온 것이 없는 경우에는, 추가의 단계에서 잠재적 눈 위치들을 이미지에서의 그 강도들에 의거하여 클러스터들로 묶어 예상 위치와 비교하는 군집화 알고리즘(clustering algorithm)에 의해 눈 위치를 색출한다.
그러한 이미 공지된 방법들은 여러 단점들을 갖는다. 한편으로, 눈들의 "밝은 동공 효과"를 갖는 이미지와 "어두운 동공 효과"를 갖는 이미지로부터 비월 주사(interlaced scanning)에 의해 생성되는 이미지를 눈들의 식별 및 추적에 사용하는데, 양 이미지들은 이미지 센서에 의해 동시에 촬영되는 것이 아니라 시간 순차적으로 촬영된다. 전송 시의 이미지 데이터 양을 줄이는 역할을 하는 비월 주사로 인해 이미지들의 중첩을 수반하는 시간상으로 일치하지 않는 이미지 촬영은 실시간으로 눈들을 식별하여 추적하는 것을 방해한다. 다른 한편으로, 공지의 방법들에 의해서는 공간상으로 이미지 센서에 가까운 눈들만을 식별 및 추적할 수 있는데, 그것은 능동 조명에 의해 생성되는 효과들의 작용이 조명원으로부터 눈들까지의 거리가 증가함에 따라 감소하고, 그로 인해 차분 이미지에서 식별하려는 눈들을 더 이상 다른 물체들 또는 잡음들과 구별할 수 없는 결과가 초래되기 때문이다.
WO 2007/019842는 눈들의 위치 파악을 계층적 과정 안으로 옮겨 처리하려는 데이터 양을 전체 비디오 프레임(VF)의 데이터 양으로부터 출발하여 얼굴 타깃 영역(GZ)과 그에 뒤이은 눈 타깃 영역(AZ)으로 순차적으로 한정함으로써 그러한 단점들을 저지하려고 시도하고 있다. 또한, 인스턴스(instance) 또는 인스턴스들의 그룹을 고유의 계산 유닛에서 병렬로 동시에 실행한다. 그럼에도, WO 2007/019842로부터는 어떻게 눈들을 식별하고 추적하는지가 유추되지 않는다.
하지만, 실시간으로 눈들을 식별하고 추적하는 것은 인간과 기계 사이의 상호 작용에 있어 하나의 중요한 요건이다. 따라서, 실시간으로 정확하게 눈들을 찾아내어 추적하는 것을 가능케 하는 눈들의 식별 및 추적 방법을 제공하는 것이 매우 바람직하다.
특히, 얼굴들이 모든 공간 방향들로 크고 빠르게 이동하는 것이 가능한 동적 적용들에 사용할 경우에는, Z 방향으로도 정확하고 효율적으로 위치들을 검출하는 것이 필요하다. 그러한 동적 적용들은 예컨대 보는 사람의 눈 위치들이 공간상으로 및 시간상으로 정확하게 결정되어 실제의 눈 위치들에 대한 오토스테레오스코피 또는 홀로그래피 이미지 재현이 제공되는 경우에만 해당 이미지 인상(image impression)이 나타나는 오토스테레오스코피 디스플레이(autostereoscopic display) 또는 홀로그래피 디스플레이일 수 있다. 그와는 대조적으로, 예컨대 운전자들 또는 조종사들을 감시하는 것과 같은 선행 기술로부터 공지된 정적 적용들의 경우에는, 식별 영역 및 추적 영역이 작은데, 그것은 그러한 적용들에서는 통상적으로 모든 공간 방향들로의 피사체의 이동 영역이 최소로 한정되기 때문이다.
또한, 선행 기술로부터 공지된 방법들은 하나를 초과하는 얼굴들을 찾아내어 추적함에 있어서 눈 위치들을 더 이상 실시간으로 제공할 수 없다고 하는 문제점을 갖는다.
따라서, 본 발명의 과제는 충분히 큰 식별 영역 및 추적 영역의 3개의 모든 공간 방향들로 하나 이상의 얼굴들의 눈 위치들을 계산 복잡성이 적으면서도 효율적이고도 정확하게 신뢰성 있게 실시간으로 찾아내어 추적하는 것을 가능케 하는 방법을 제공하는 것이다. 특히, 본 발명의 과제는 하나 이상의 눈을 효율적이고도 정확하게 찾아내는 것을 가능케 하는 것이다.
그러한 과제는 본 발명에 따라 적어도 하나의 이미지 센서로부터 하나 이상의 비디오 신호들의 시퀀스로서 제공되는 이미지 데이터를 수신하는 단계, 이미지 데이터에서 눈들을 찾아내거나 이미 찾아내어진 눈들을 추적하는 단계, 찾아내어진 또는 추적된 눈들의 3D 좌표들을 산출하는 단계, 찾아내어진 또는 추적된 눈들을 양안에 할당하는 단계, 및 양안의 3D 좌표들을 제공하는 단계를 포함하는 방법을 제공함으로써 해결된다.
바람직한 구성에서는, 이미지 데이터를 적어도 하나의 이미지 센서에 의해 촬영된 비디오 시퀀스로서 수신한다. 또한, 이미지 데이터를 예컨대 개별 이미지들과 같은 다른 전송 형태들로 수신하는 것도 가능하다.
본 발명에 따른 방법에서, 눈들을 찾아내는 방법 단계는 이미지 데이터에서 하나 이상의 얼굴들을 식별하는 단계, 식별된 적어도 하나의 얼굴의 3D 좌표들을 산출하는 단계, 식별된 얼굴 상에서 제1 탐색 영역을 결정하는 단계, 및 제1 탐색 영역에서 적어도 하나의 눈을 찾아내는 단계를 포함한다. 이미지들에서 얼굴들을 식별하는 것은 그 전체가 본 발명에 참조로 포함하는 선행 기술로부터의 여러 구성들에 공지되어 있는데, 식별된 얼굴들은 통상적으로 얼굴 위치들에 대한 2D 좌표들로서 출력된다. Z 좌표를 산출하여 얼굴 위치를 3D 좌표들로 표현하는 것은 본 발명에서는 바람직하게는 선행 기술에 공지된 바와 같은 2개의 이미지 센서들로부터 수신된 이미지 데이터의 스테레오 분석에 의해 또는 예컨대 거리 측정과 같은 다른 공지의 방법들에 의해 수행될 수 있다. 얼굴의 3D 좌표들을 산출함으로써, 눈 위치들의 공지의 모델을 얼굴에 적용하여 얼굴의 적어도 하나의 눈이 높은 확률로 위치하는 영역을 결정할 수 있다. 식별된 얼굴에 적용할 수 있는 모델이 없는 경우에는, 눈들의 탐색을 위해 결정하려는 영역이 식별된 얼굴 전체를 포함할 수도 있다. 이어서, 그러한 영역을 눈들에 대한 제1 탐색 영역으로서 해석하여 눈을 찾아내는 다음 단계를 그 제1 탐색 영역으로 한정시킨다. 다음 단계에서는, 제1 탐색 영역에서 적어도 하나의 눈을 찾아낸다. 눈을 찾아내지 못한 경우에는, 그 이미지의 얼굴에 있어서는 예컨대 눈꺼풀이 닫힌 이유로 눈을 찾아낼 수 없고, 그에 따라 눈이 존재하지 않는다고 간주하기로 하는 것으로 가정한다. 다른 모든 경우들에는, 각각의 얼굴에 대해 찾아내어진 눈(들)을 후속 방법 단계에서 계속 사용한다. 통상적으로, 작은 탐색 영역에서 눈들을 찾아내는 것은 전체의 얼굴 또는 전체의 이미지를 포함하는 탐색 영역에서보다 더 빠르게 결과를 도출해낸다.
후속 방법 단계에서는, 찾아내어진 눈들에 대해 3D 좌표들을 산출한다. 그와 관련하여, 바람직한 구성에서는 역시 스테레오 분석을 사용하지만, 물체의 3D 좌표들을 산출하는 임의의 다른 공지의 방법도 가능하다. 이어서, 찾아내어진 눈들을 양안에 할당하는데, 눈들의 3D 좌표들로부터 계산될 수 있는 2개씩의 눈들의 간격을 양안 모델의 눈들의 기지의 간격과 비교하거나, 예컨대 여기서 바람직하게는 분류(classification)와 같은 다른 적절한 할당 방법을 사용한다. 찾아내어진 눈들을 양안으로서 계속 사용하기 위해서는, 양안의 3D 좌표들을 산출하는 것이 바람직한데, 왜냐하면 그러한 3D 좌표들로부터 얼굴-눈 모델에 의해 눈들과 얼굴의 위치들이 색출될 수 있음으로써 찾아내어진 얼굴을 이어서 추적하는데 필요한 데이터의 양이 감소하기 때문이다.
이미 찾아내어진 양안을 추적하는 것은 기본적으로 식별된 얼굴 상에서 적어도 하나의 제2 탐색 영역을 결정하는 단계 및 그 제2 탐색 영역에서 양안의 눈들을 추적하는 단계를 포함한다. 일 양태에 따르면, 각각의 눈에 대해 제2 탐색 영역을 결정한다. 여기서, 눈들을 찾아내는 단계로부터 색출된 양안을 추적을 위한 출발점으로서 계속 사용한다. 눈들의 3D 좌표들로부터, 바라보는 양안의 눈들을 추적하는 영역을 한정한다. 이어서, 제1 탐색 영역보다 더 작은 것이 바람직한 그와 같이 한정된 영역을 눈들의 추적을 위한 제2 탐색 영역으로서 사용한다. 그와 같이 한정된 양안의 추적은 눈들 또는 얼굴의 이동이 현저하더라도 충분히 작은 제2 탐색 영역을 결정하는 것을 가능케 하고, 그것은 다시 실시간으로 양안을 추적하는 것을 가능케 한다.
그와 함께, 적어도 하나의 눈을 찾아내는 단계는 이미지 데이터를 제공하는 이미지 센서로부터 식별된 얼굴까지의 거리에 의존하여 눈 성분의 예상 크기를 계산하는 단계, 이미지 데이터를 제공하는 이미지 센서로부터 식별된 얼굴까지의 거리에 의존하여 제1 탐색 영역에서의 세그먼테이션(segmentation)을 위한 임계치로서의 그레이 스케일 값(gray scale value)을 계산하는 단계, 콘트라스트를 향상시키기 위해 제1 탐색 영역을 전처리하는 단계, 전처리 후에 제1 탐색 영역을 세그멘테이션하는 단계, 세그멘테이션된 제1 탐색 영역에서 적어도 대략 동일한 그레이 스케일 값을 갖는 인접 화소들을 합친 하나 이상의 결합 영역을 계산하는 단계, 각각의 계산된 결합 영역의 크기를 산출하는 단계, 및 눈 성분의 예상 크기를 산출된 결합 영역의 크기와 비교하여 결합 영역의 산출된 크기가 눈 성분의 예상 크기와 적어도 대략 일치할 경우에 결합 영역이 찾아내어진 눈인 것으로 하는 단계의 후속 단계들을 더 포함한다. 그럼으로써, 이미지 데이터에서 해당 눈 성분이 다른 물체들과 확연히 구별되도록 이미지 데이터에서의 콘트라스트가 변하게 된다. 특히, 그와 같이 함으로써, 이미지 데이터를 제공하는 이미지 센서로부터 멀리 떨어져 위치하는 눈들을 멀리 떨어져 있음에도 본 발명에 따른 방법에 의해 찾아낼 수 있는 것이 가능케 된다.
본 발명의 일 양태에 따르면, 전처리 단계는 제1 영역에서의 그레이 스케일 값 히스토그램 평활화(gray scale value-histrogram equalization)를 포함한다.
본 발명의 또 다른 양태에 따르면, 이미 찾아내어진 눈들을 추적하는 단계는 이미지 데이터를 제공하는 이미지 센서로부터 식별된 얼굴까지의 거리에 의존하여 눈 성분의 예상 크기를 계산하는 단계, 제2 탐색 영역에서의 최소 그레이 스케일 값을 산출하는 단계, 및 제2 탐색 영역에서의 임계치로서의 그레이 스케일 값에 대한 반복 과정(iteration)을 수행하되, 적어도 2개의 눈들이 식별될 경우에 반복 과정을 중단하는 단계의 후속 단계들을 더 포함한다. 반복 과정은 이미지 데이터를 제공하는 이미지 센서로부터 식별된 얼굴까지의 거리에 의존하여 실제 반복 단계와 최소 그레이 스케일 값으로부터 제2 탐색 영역에서의 세그멘테이션을 위한 임계치로서의 그레이 스케일 값을 계산하는 단계, 제2 탐색 영역을 세그멘테이션하는 단계, 세그멘테이션된 제2 탐색 영역에서 적어도 대략 동일한 그레이 스케일 값을 갖는 인접 화소들을 합친 하나 이상의 결합 영역을 계산하는 단계, 각각의 계산된 결합 영역의 크기를 산출하는 단계, 및 눈 성분의 예상 크기를 산출된 결합 영역의 크기와 비교하여 결합 영역의 산출된 크기가 눈 성분의 예상 크기와 적어도 대략 일치할 경우에 결합 영역이 추적된 눈인 것으로 하는 단계를 포함한다. 그러한 방법 단계들은 특히 멀리 떨어진 눈들의 추적을 실시간으로 수행할 수 있고, 눈들의 3D 좌표들에 대해 종래의 방법들에 의해 가능한 것보다 더 정확한 결과를 제공할 수 있게 해줄 수 있다.
본 발명의 또 다른 양태에 따르면, 탐색 영역을 세그멘테이션하는 단계를 예컨대 이진화 방법(binarization method)과 같은 효율적 방법에 의해 수행한다. 또한, 바람직한 구성에서는, 눈들을 양안에 할당하는 단계를 서포트 벡터 머신(support vector machine)을 사용하는 분류에 의해 수행하는데, 그러한 분류는 미리 주어진 눈들 및 눈이 아닌 것들과 찾아내어진 눈들과의 유사성에 의거하여 어떤 눈들이 양안에 속하는지를 식별하는 것이다. 여기서, 눈들을 양안에 할당하는 것은 분류에만 한정되는 것도 아니고, 서포트 벡터 머신의 사용에만 한정되는 것도 아니다.
또한, 본 발명은 컴퓨터에서 본 발명을 진행할 경우에 본 발명에 따른 방법을 실시하도록 컴퓨터를 제어하는 컴퓨터 프로그램에 관한 것이다.
또한, 본 발명은 적어도 하나의 이미지 센서로부터 적어도 하나의 디지털 비디오 신호의 시퀀스를 포함하는 이미지 데이터를 수신하는 수단, 이미지 데이터에서 눈들을 찾아내는 수단, 이미지 데이터에서 이미 식별된 눈들을 추적하는 수단, 찾아내어진 또는 추적된 눈들의 3D 좌표들을 산출하는 수단, 찾아내어진 또는 추적된 눈들을 양안에 할당하는 수단, 및 양안의 3D 좌표들을 제공하는 수단을 구비하는, 적어도 하나의 얼굴에서 양안의 3D 좌표들을 찾아내고 이어서 추적하는 장치에 관한 것이다. 이미지 데이터에서 눈들을 찾아내는 수단은 이미지 데이터에서 하나 이상의 얼굴들을 식별하는 수단, 적어도 하나의 식별된 얼굴의 3D 좌표들을 산출하는 수단, 식별된 얼굴 상에서 제1 탐색 영역을 결정하는 수단, 및 제1 탐색 영역에서 적어도 하나의 눈을 찾아내는 수단을 더 포함한다. 또한, 이미지 데이터에서 이미 찾아내어진 눈들을 추적하는 수단은 특히 식별된 얼굴 상에서 제2 탐색 영역을 결정하는 수단 및 제2 탐색 영역에서 양안의 눈들을 추적하는 수단을 포함한다.
본 발명의 또 다른 바람직한 양태들은 종속 청구항들에 한정되어 있다.
본 발명은 충분히 큰 식별 영역 및 추적 영역의 3개의 모든 공간 방향들로 하나 이상의 얼굴들의 눈 위치들을 계산 복잡성이 적으면서도 효율적이고도 정확하게 신뢰성 있게 실시간으로 찾아내어 추적하는 것을 가능케 하는 양안 식별 및 추적 방법과 장치 및 그를 위한 컴퓨터 프로그램을 제공한다.
이하, 본 발명의 바람직한 실시예들을 첨부 도면들에 의거하여 순전히 예시적으로 어떠한 한정도 없이 더욱 상세히 설명하기로 한다. 첨부 도면들 중에서,
도 1은 본 방법에 따른 방법의 흐름도이고;
도 2는 본 발명의 일 실시 형태에 따른, 눈들을 찾아내는 단계의 흐름도이며;
도 3은 본 발명의 일 실시 형태에 따른, 얼굴 상의 제1 탐색 영역이 결정된 이미지 데이터를 나타낸 도면이고;
도 4는 본 발명의 일 실시 형태에 따른, 이미 찾아내어진 눈들을 추적하는 단계의 흐름도이며;
도 5는 본 발명의 일 실시 형태에 따른, 얼굴 상의 제2 탐색 영역이 결정된 이미지 데이터를 나타낸 도면이고;
도 6은 본 발명의 일 실시 형태에 따른, 눈들을 양안에 할당하는 단계의 흐름도이며;
도 7은 본 발명의 일 실시 형태에 따른 장치를 나타낸 도면이고;
도 8은 본 발명의 일 실시 형태에 따른 객체 지향 구성의 컴퓨터 프로그램의 데이터 흐름을 나타낸 도면이다.
도 1은 적어도 25 ㎐의 리프레쉬 레이트(refresh rate)에서 4명까지의 보는 사람들의 눈들을 실시간으로 찾아내어 추적하는데 적합한 본 발명에 따른 방법의 제1 실시 형태를 나타낸 것이다. 따라서, 본 방법에 의해 4명까지의 보는 사람들을 초당 적어도 25 이미지의 식별 및 추적 주파수로 처리할 수 있거나, 1명의 보는 사람을 예컨대 초당 60 이미지의 식별 및 추적 주파수로 처리할 수 있다. 본 방법에서는, 하나 이상의 이미지 센서들에 의해 촬영되어 예컨대 직렬 인터페이스와 같은 전송 수단에 의해 비디오 시퀀스로서 전송되는 이미지 데이터를 단계 110에서 수신한다. 이미지 센서에 의해 촬영되는 이미지 데이터는 바람직한 실시 형태에서는 능동 조명에 의해 조명된다. 그 경우, 이미지 센서에 의한 이미지 촬영 시에 이미지 센서의 식별 영역이 빛에 의해 조명된다. 본 발명의 일 실시 형태에서는, 약 700 내지 950 ㎚ 범위의 파장, 특히 약 850 ㎚의 파장을 갖는 적외선으로 조명을 하는 것이 바람직하다. 능동 조명에 의해 피사체의 눈들이 이미지 데이터 상에서 두드러지게 강조되게 된다.
그와 관련하여, 능동 조명이 이미지 센서의 광축에 대해 떨어져 배치될 경우에 동공이 그 주위에 비해 매우 어둡게 투영되는 소위 "어두운 동공 효과"가 발생한다. "밝은 동공 효과"의 경우에는, 능동 조명이 이미지 센서의 광축에 가까이 배치되어 사진 촬영 시의 적목 효과와 유사하게 방출 광이 눈의 이면에서 반사되어 이미지 센서에 의해 촬영되게 된다.
일 실시 형태에 따르면, "어두운 동공 효과"가 바람직하다. 동공이 그 주위에 비해 밝게 보일 수 있음으로써 눈들 또는 그 해당 부분들을 주위와 구별할 수 있게 하는 예컨대 "밝은 동공 효과"와 같은 다른 효과들도 역시 사용될 수 있다.
이미지 센서들은 능동 조명과 함께 다음 단계들에서 이미지 센서들로부터 더 큰 거리를 두고도 눈들을 가능한 한 오류 없이 식별 및 추적하도록 설계된다. 그와 관련하여, 식별 영역은 본 발명에 따른 방법에 의해서가 아니라, 사용되는 이미지 센서들에 의해 한정된다. 그러한 식별 영역은 바람직한 실시 형태에서는 사용되는 이미지 센서들에 의존하여 이미지 센서들로부터 약 0.5 내지 3.5 m의 거리를 포함한다. 본 발명에 따른 방법에서는, 다른 이미지 센서들에 의해 더 큰 식별 영역을 얻는 것도 가능하다. 이미지 데이터는 공지의 비디오 데이터 압축 방법에 의해 압축될 수 있거나, 후속 처리를 위한 변경이 없는 그대로의 이미지들로서 존재할 수 있다.
단계 115에서는, 수신된 이미지 데이터를 얼굴들을 식별하는데 제공한다. 얼굴들의 식별은 공지의 얼굴 식별 방법에 의해 수행된다. 그와 관련하여, 이미지 데이터에서 얼굴들을 식별하는 단계 115는 통상적으로 패턴 식별을 사용하여 이뤄진다. 얼굴을 식별하고 나면, 이미지 센서에 대한 얼굴의 공간 위치를 결정하기 위해 바람직하게는 3D 좌표들로서의 좌표들을 산출한다. 방법을 진행하기 전에, 3D 좌표들의 좌표계의 원점을 결정하고, 이미지 센서가 하나인 바람직한 구성에서는 이미지 센서의 광축과 이미지 센서 그 자체에 의해 결정하며, 이미지 센서가 2개인 구성에서는 이미지 센서들의 광축들과 이미지 센서들 사이에 연장되는 구간의 중점으로 결정한다. 또한, 여기서 바람직하게는 적어도 2개의 이미지 센서들에 의해 촬영된 2D 이미지들의 스테레오 분석에 의해 3D 좌표들을 산출한다. 그를 위해, 스테레오 분석에서는 이미지 데이터에서 식별된 얼굴의 디스패리티(disparity)들을 산출한다. 여기서, 디스패리티란 촬영되는 이미지 데이터에서 적어도 2개의 이미지 센서들에 의해 공간의 지점을 그 지점이 양 이미지 센서들에 모두에 의해 캡처될 때까지 여러 방향들로부터 캡처함으로써 상이한 좌표들로 이미지 데이터에 맵핑되는 스테레오 이미지의 이미지 데이터에서의 화소의 좌표들의 거리이다. 이미지 센서들을 보정(calibration)함으로써, 스테레오 이미지에서의 화소의 디스패리티를 이미지 데이터를 제공하는 이미지 센서로부터 공간의 지점까지의 거리에, 그리고 그 역으로 맵핑하는 함수가 산출된다. 그 함수를 사용하여 이미지 센서들의 거리를 결정하고, 그로부터 3D 좌표들의 Z 좌표들을 계산할 수 있다. Z 좌표들을 선행 기술로부터 공지된 다른 방법들에 의해 산출할 수도 있다.
또한, 일 실시 형태에서는, 이미지 데이터를 제공하는 이미지 센서로부터 얼굴까지의 거리를 3D 좌표들로부터 산출하는 것이 바람직하다. 이미지 센서로부터 얼굴까지의 거리를 예컨대 레이저 거리 측정과 같은 다른 방법들에 의해 산출할 수도 있다.
이미지 데이터에서 얼굴들을 식별하는 단계 115를 이미지 데이터를 수신하는 단계와 동기로 수행하여 이미지 데이터에서 아직 식별되지 않았거나 추적 도중에 잃어버린 얼굴들을 각각 탐색하는 것이 바람직하다. 그를 위해, 바람직한 구성에서는, 이미 식별된 얼굴들 또는 그 위치들을 저장하는 조치를 취한다. 또한, 바람직한 방법은 단계 130에서 눈들을 추적하는 것과는 별개로 새로운 얼굴들을 식별하도록 구성된다. 이미지 데이터에서 얼굴들이 식별되면, 단계 120에서 얼굴이 이미 추적되고 있는지의 여부를 점검한다. 그와 관련하여, 그러한 점검을 예컨대 눈 간격이나 얼굴 비율과 같은 얼굴의 저장된 특징들에 의거하여 또는 바람직하게는 3D 좌표들에 의거하여 수행할 수 있다. 식별된 얼굴이 아직 추적되고 있지 않은 것으로 확인되면, 그 얼굴에 대한 눈들 또는 양안도 역시 아직 식별되지 않은 것이다.
본 실시 양태에서는, 얼굴에서 눈들을 찾아내는 것을 단계 125에서 식별된 얼굴 상의 적어도 하나의 제1 탐색 영역을 결정하고 결정된 탐색 영역에서 적어도 하나의 눈을 찾아냄으로써 수행한다. 얼굴이 이미 추적되고 있는 경우에는, 얼굴의 양안 중의 적어도 하나의 눈이 추적되는 제2 탐색 영역을 결정함으로써 추적을 수행한다. 그와 관련하여, 일 실시양태에서는, 제1 탐색 영역을 제2 탐색 영역보다 더 크게 하는 것이 바람직하다. 바람직한 구성에서는, 단계 125와 단계 130에서 적어도 하나의 눈을 각각의 제1 탐색 영역에서 찾아내고, 이어서 제2 탐색 영역에서 추적한다. 단계 135에서 찾아내어진 또는 추적된 눈들을 양안에 할당하는 것을 바람직하게는 3D 좌표들인 좌표들을 산출한 후에 수행하는 것이 바람직하다. 찾아내어진 또는 추적된 양안을 후속 사용에, 예컨대 방법을 반복하는데 또는 여기서 설명되는 실시 형태의 부분이 아닌 다른 적용들에 제공한다. 단계 140에서의 양안의 3D 좌표들을 도 7과 관련하여 후술하는 바와 같이 예컨대 해당 인터페이스(720)를 통해 컴퓨터(725)에 의한 후속 처리에 제공한다.
본 발명에 따른 방법의 또 다른 바람직한 실시 형태를 도 2 및 도 3에 의거하여 설명하기로 한다. 도 2에 도시된 방법은 도 1의 단계 125에서 눈들을 찾아내는 동작들을 세부적으로 나타낸 것이다. 본 방법은 얼굴이 추적되지 않아 지금까지 그 얼굴에 대한 눈들도 찾아내지 못한 것을 확인하는 경우에 시작된다. 눈들을 찾아내는데에는 실제의 이미지 데이터와 식별된 얼굴의 3D 좌표들을 사용한다. 방법 단계 210은 식별된 얼굴에서 적어도 하나의 제1 탐색 영역(310)을 결정하는 단계로, 제1 탐색 영역의 크기는 선택된 얼굴 식별 방법의 특성들 및 정확도에 따라 달라진다. 바람직한 구성에서는, 제1 탐색 영역이 약 50×50 ㎜의 크기를 갖는다. 얼굴의 산출된 3D 좌표들 및 얼굴 기하 형태를 사용하여 제1 탐색 영역(310)을 결정한다. 그러한 정보들로부터, 그 얼굴에 대한 눈들을 어떤 영역에서 높은 확률로 찾을 수 있는지가 계산되고, 그에 따라 그와 같이 계산된 영역에 의거하여 이미지 데이터에서 제1 탐색 영역을 결정한다. 도 3은 동공의 "어두운 동공 효과"의 사용에 의해 특징져진, 얼굴의 각각의 눈에 대해 이미지(320) 상에서 결정된 제1 탐색 영역(310)을 나타낸 것이다. 후속 방법 단계들은 제1 탐색 영역에서 각각 수행되고, 그 결과 관찰하려야 하는 얼굴의 영역들이 줄어들고, 그것은 방법의 계산 복잡성 및 효율에도 역시 유리하게 작용한다. 식별된 얼굴에 대해, 단계 125에서 이미지 데이터를 제공하는 이미지 센서로부터 얼굴까지의 거리에 의거하여 눈 성분의 크기를 계산한다. 일 실시 형태에서는, 눈 성분으로서 동공을 사용하는데, 그것은 "어두운 동공 효과"에서 동공이 다른 눈 성분들에 비해 매우 높은 콘트라스트로 두드러지게 강조되기 때문이다. 또 다른 구성 형태에서는, 동공 이외에 홍채도 해당 눈 성분으로서 사용한다. 식별된 얼굴의 3D 좌표들로부터 또는 다른 공지의 방법들에 의해 거리를 계산한다. 역시 방법 단계 125에서의 거리를 후속 사용에 전달하는 것이 바람직하다. 여기서 상세히 다루지는 않는 적절한 알고리즘을 사용하여 동공 자체의 예상 크기를 계산한다. 눈들을 찾아내는 또 다른 단계는 단계 220에서 제1 탐색 영역의 세그멘테이션을 위한 임계치를 계산하는 것을 포함한다.
여기서, 세그멘테이션이란 일정한 균질성 기준에 상응하게 화소들을 합침으로써 내용상으로 관련이 있는 영역들을 생성하는 이미지 처리 방법이다. 바람직한 구성에서는, 균질성 기준들로서 그레이 스케일 값을 사용한다. 그레이 스케일 값이란 이미지 처리에서 개별 화소들의 광도 값 또는 강도 값이다. 여기서 언급할 것은 그레이 스케일 값이 이미지 데이터의 색과는 상관이 없다는 것이다.
바람직한 구성에서는, 이미지 데이터가 백색으로부터 흑색까지의 256 중간 등급의 그레이 스케일 값들을 포함한다. 이미지 데이터를 제공하는 이미지 센서로부터 얼굴까지의 거리에 의존하여, 후속 처리에서 사용될 임계치로서의 그레이 스케일 값을 계산한다. 이미지 데이터에서의 광도 값 및 강도 값은 이미지 센서로부터의 거리에 의존하여 상이하기 때문에, 거리를 고려하여 임계치를 계산하는 것이 바람직하다. 후속 단계 225에서는, 제1 탐색 영역을 전처리하여 예컨대 눈들의 동공 또는 동공과 홍채와 같은 해당 이미지 성분을 나머지 이미지 성분들로부터 더욱 두드러지게 강조시킨다.
바람직한 구성에서는, 그러한 전처리가 제1 탐색 영역에서의 그레이 스케일 값의 히스토그램 평활화(histogram equalization)이다. 히스토그램 평활화에서는, 이미지 데이터에서의 그레이 스케일 값들 또는 컬러 값들의 통계적 빈도를 평활화 함수에 의해 변환하여 그레이 스케일 값들 또는 채색을 콘트라스트가 더 좋은 방향으로 더 잘 분배하고 탐색 영역 내의 이미지 데이터의 내용을 정규화시킨다. 그럼으로써, 이미지 데이터를 제공하는 이미지 센서로부터 얼굴까지의 거리 및 그에 수반되는 능동 조명의 작아지는 작용 또는 적외선 비율이 높은 태양광 입사와 같은 부가의 조명 효과로부터 생기는 이미지 데이터에서의 상이한 광도들의 영향이 감소하여 후속 처리를 위한 비슷한 콘트라스트 값들을 생성할 수 있게 된다.
제1 탐색 영역에서 이미지 데이터를 그와 같이 전처리한 후에, 단계 230에서 세그멘테이션을 수행한다. 화소들을 그들의 그레이 스케일 값들에 의거하여 할당하는 것을 가능케 하는 모든 적절한 방법들을 세그멘테이션으로서 사용할 수 있다. 일 실시 형태에 따르면, 바람직한 세그멘테이션으로서 화소들의 이진화(binarization)를 사용한다. 그러한 이진화에는 단계 220에서 계산된 임계치를 사용한다. 여기서, 제1 탐색 영역의 화소들의 값들이 임계치 미만이면 화소들을 1로 하고, 화소들의 값들이 임계치를 넘으면 화소들을 0으로 한다. 역으로, 임계치 미만인 화소들을 0으로 하고, 임계치를 넘는 화소들을 1로 하는 화소들의 이진화를 사용할 수도 있다. 그럼으로써, 제1 탐색 영역에서 임계치 넘는 해당 화소들만이 1로, 그에 따라 흑색으로 되고, 다른 모든 화소들은 0으로, 그에 따라 백색으로 되게 된다. 다음 방법 단계 235에서는, 세그멘테이션된 탐색 영역에서 결합 영역들을 계산한다. 여기서, 결합 영역이란 인접 화소들이 그 동일한 특성들을 기준으로, 예컨대 그레이 스케일 값의 측면에서 그들이 동일한 것에 의거하여 서로 동종 결합하고 있는 것으로 색출된 영역이다.
바람직한 구성에서는, 개개의 경우에 있어 화소들의 상호 동종 결합성을 예컨대 4개의 결합 영역들을 계산하는 경우보다 더 잘 표현하는 8개의 결합 영역들을 계산한다. 그와 관련하여, 8개의 인접 화소들 모두를 하나의 화소로 보고 그 인접 화소들이 동일한 그레이 스케일 값을 갖는지를 점검한다. 4개의 결합 영역들에서는, 수평 및 수직으로 각기 2개씩의 인접 화소들만을 관찰한다. 동일한 그레이 스케일 값을 갖는 모든 화소들에 동일한 결합 영역을 할당한다. 일 실시 형태에 따르면, 일정한 그레이 스케일 값 범위 내에 있는 화소들에 공통의 결합 영역을 할당한다.
후속 단계 240에서는, 계산된 결합 영역들에 대해 크기 산출을 수행한다. 각각의 계산된 결합 영역에 대해 산출된 크기를 동공 또는 예상되는 눈 영역의 예상 크기와 비교한다. 단계 245에서의 크기 비교에서 결합 영역의 크기가 동공의 예상 크기와 대략 동일한 것으로 확인될 경우, 그 결합 영역이 눈인 것으로 추정한다. 그 밖의 다른 모든 경우, 결합 영역은 눈이 아니다. 따라서, 제1 탐색 영역에서 다수의 눈들이 식별될 수도 있고, 그들을 양안에 할당하는 방법 단계 135에 의해 후속 처리한다는 것을 자연히 알 수 있을 것이다. 본 실시 형태에 따라 눈들을 찾아내는 방법 단계들은 단계 250에서 눈들을 찾아낸 것으로 종료된다. 제1 탐색 영역에서 눈을 찾아내지 못한 경우, 확대된 제1 탐색 영역으로 방법을 반복하든지 아니면 식별된 얼굴에 대해 찾아낼 수 있는 눈이 없는 것으로 종료한다.
또 다른 바람직한 구성 형태에서는, 다량의 테스트 이미지들 및 테스트 이미지 시퀀스들에서의 식별 성능을 측정함으로써 임계치, 임계치의 계산 규칙, 또는 임계치의 계산 규칙의 파라미터를 산출하여 최적화한다. 그와 같이 함에는, 이미지 데이터를 제공하는 이미지 센서로부터 얼굴 또는 눈들까지의 거리도 고려하는데, 그것은 이미지 데이터를 제공하는 이미지 센서로부터의 거리가 증가할수록 예컨대 능동 조명의 출력 및 효과가 감소하기 때문이다. 임계치에 대한 바람직한 계산 규칙은 다음과 같다:
임계치 = 최소 광도 값 + 시작 값 + (최대 거리 - 거리)/100
여기서, 최소 광도 값은 세그멘테이션하려는 영역에서의 화소의 가장 낮은 광도 값이고, 시작 값은 전술된 측정들로부터 산출된 값들을 최적화함으로써 결정된 값이며, 최대 거리는 이미지 데이터를 제공하는 이미지 센서로부터 보는 사람까지의 ㎜ 단위의 최대 거리이고, 거리는 이미지 데이터를 제공하는 이미지 센서로부터 얼굴 또는 눈들까지의 ㎜ 단위의 거리이다.
본 발명에 따른 방법의 또 다른 바람직한 실시 형태를 도 4 및 도 5에 의거하여 설명하기로 한다. 도 4에 도시된 방법은 도 1의 단계 130에서 눈들을 추적하는 동작들을 세부적으로 나타낸 것이다. 눈들을 추적함에 있어서는, 눈들을 찾아내는 것과는 달리 단계 410에서 눈들의 기지의 위치들에 의거하여 눈들에 대한 제2 탐색 영역을 결정한다. 제2 탐색 영역의 크기는 제1 탐색 영역의 크기보다 작게 선택된다. 제2 탐색 영역의 크기는 통상적으로 눈들의 크기와 거의 일치하는데, 제2 탐색 영역의 크기를 이미지 센서에 의해 촬영된 이미지 데이터의 리프레쉬 레이트 및 눈들의 이동 자유 또는 이동 속도에 의존하여 동적으로 확대할 수 있다. 더욱 바람직한 실시 형태에서는, 눈이 탐색 영역에 의해 커버된다는 것을 전제로 제2 탐색 영역이 약 20×15 ㎜의 크기를 갖는다. 여기서, 얼굴(320) 상에서 제2 탐색 영역(510)을 결정하는 것은 다음과 같이 수행된다. 방법 단계 130에서 도 1에 따른 방법 단계에 들어갈 때에, 이전 이미지 데이터에 대해 이전에 수행된 단계들, 특히 단계 140으로부터 추적하려는 눈들의 3D 좌표들이 알려진다. 예컨대, 눈들의 다수의 이전 3D 좌표들에 의거하여 찾아내어 추적하는 눈들이 일정 방향 및 일정 속도로 상대 이동을 수행했는지의 여부를 파악한다. 그것이 확인된 경우, 실제의 이미지에서 눈들의 위치의 예측을 계산할 수 있다. 그에 대해서는, 그 전체가 본 발명에 참조로 포함되는 적절한 방법들이 선행 기술로부터 공지되어 있다. 이어서, 눈들의 예측된 위치에 의거하여 제2 탐색을 그에 상응하게 결정한다. 지금까지 어떠한 상대 이동도 확인할 수 없거나 눈들을 앞선 단계에서 처음으로 찾아낸 다른 경우에는, 앞선 단계 140에서 산출된 눈 위치에 의거하여 제2 탐색 영역을 결정한다.
이미 식별된 얼굴(320) 상에서 제2 탐색 영역(510)을 예시적으로 결정한 것이 도 5에 도시되어 있다. 도 3의 제1 탐색 영역(310)과의 비교로부터 알 수 있는 바와 같이, 제2 탐색 영역(510)이 현저히 더 작고, 그에 따라 제2 탐색 영역에서의 적은 수의 화소들로 인해 계산 복잡성도 줄어들게 된다.
제2 탐색 영역을 결정한 후에, 단계 415에서 이미지 데이터를 제공하는 이미지 센서로부터 눈들까지의 거리에 의존하여 눈 성분의 크기를 계산한다. 그와 관련하여, 단계 215에서와 같이 계산을 수행한다. 이어서, 단계 420에서는, 제2 탐색 영역에서 최소 그레이 스케일 값을 산출한다. 최소 그레이 스케일 값을 산출하는데에는 역시 공지의 이미지 처리 방법들을 사용한다. 단계 420으로부터 산출된 최소 그레이 스케일 값을 후속 반복 과정에서 계속 사용한다. 그러한 반복 과정은 세그멘테이션을 위한 임계치로서의 그레이 스케일 값을 계산하는 단계(단계 425), 탐색 영역을 세그멘테이션하는 단계(단계 430), 결합 영역들을 계산하는 단계(단계 435), 결합 영역들의 크기를 산출하는 단계(단계 440), 및 산출된 크기를 예상 크기와 비교하는 단계(단계 445)를 포함한다. 반복 과정은 단계 445의 수행 후에 단계 450에서 적어도 2개의 눈들을 찾아낸 경우에 중단된다. 다른 모든 경우에는, 새로운 반복 과정 단계를 수행한다. 바람직한 구성에서는, 비교에서 찾아내어진 눈들의 수와는 상관이 없이 반복 과정 단계의 수를 4번으로 한정하는데, 4번째의 반복 과정 단계 후에 그때까지 찾아내어진 눈들로 반복 과정을 중단한다. 각각의 반복 과정 단계에서는, 우선 후속 세그멘테이션을 위한 임계치로서 사용될 그레이 스케일 값을 산출한다. 그와 관련하여, 이미지 데이터를 제공하는 이미지 센서로부터 눈들까지의 거리 및 단계 425로부터의 최소 그레이 스케일 값과 실제의 반복 과정 단계를 고려하여 공지의 방법들에 의해 실제의 임계치를 산출한다. 또한, 각각의 반복 과정 단계에서는, 후속 세그멘테이션에서 이미지 데이터의 다수의 영역들이 임계치에 의해 눈들을 포함하는 잠재적 영역들로서 분류되도록 임계치를 조정한다. 여기서 설명되는 실시 형태에 따라 눈들을 추적하는 것은 단계 455에서 추적하려는 눈들이 식별된 것으로 종료된다.
전술된 바와 같이, 여러 공지의 세그멘테이션 방법들을 사용할 수 있다. 바람직한 구성에서는, 역시 이진화를 세그멘테이션 방법으로서 사용한다. 그럼으로써, 전술된 바와 같이, 그레이 스케일 값이 임계치 미만인 화소들이 0으로 되고 그레이 스케일 값이 임계치를 넘는 화소들이 1로 되거나, 그 반대로 된다.
이진화 후에는, 전술된 바와 같이, 영역들을 결합 영역들로 계산한다. 여기서, 바람직한 결합 영역은 전술된 8개의 결합 영역이다. 이어서, 그 각각의 계산된 결합 영역에 대해, 결합 영역의 크기를 산출한다. 그러한 산출된 크기를 비교 단계에서 예컨대 여기서 바람직하게는 동공인 눈 성분의 예상 크기와 비교한다. 그러한 비교를 각각의 계산된 결합 영역에 대해 수행한다. 모든 결합 영역들의 크기를 눈 성분의 예상 크기와 비교한 후에는, 반복 과정 단계에 의해 얼마나 많은 눈들을 찾아내었는지를 확인한다. 적어도 2개의 눈들을 찾아낸 경우에는, 실제의 이미지 데이터에 대한 눈들의 추적이 종료된다. 이어서, 도 1에 따른 방법을 식별된 눈들로 단계 135에서 속행한다.
또한, 예컨대 4번의 반복 과정 단계들을 수행한 후에도 반복 과정을 그만두는 것이 바람직하다. 하지만, 가용 계산 성능에 의존하여 더 적거나 훨씬 더 많은 반복 과정 단계들 후에 그때까지 적어도 2개의 눈들을 식별하지 못하면 반복 과정을 중단할 수도 있다.
번복 과정 단계에서 세그멘테이션을 위한 임계치를 계산하는 것을 단계 125에서 사용된 계산 규칙 및 그에 도입된 파라미터들을 기반으로 하여 다음과 같이 수행한다:
임계치 = 최소 광도 값 + 시작 값 + 반복 값 + (최대 거리 - 거리)/100
여기서, 반복 값은 1의 단계 폭을 갖는 0 내지 X의 값이고, 이미 수행된 반복 과정 단계들의 회수를 나타낸다. 반복 과정 단계들의 최대 회수 X는 전술된 측정들에 의해 산출된 값들의 최적화에 의해 결정된다. 설명되는 실시 형태에서는, 반복 과정들의 최대 회수가 4이다.
따라서, 제2 탐색 영역에서 눈들을 추적함에 있어서는, 반복 과정 단계들의 결정된 최대 회수 후에도 눈을 찾아내지 못할 수 있다. 그 경우에는, 예컨대 눈들을 추적하는 단계들을 더 큰 제2 탐색 영역에서 수행하거나 눈들을 찾아내는 단계들을 새로이 수행한다.
일 실시예에서는, 제2 탐색 영역을 결정하기 위해, 하나의 이미지에서 찾아낸 단계로부터 다음 이미지에서 추적하는 단계까지 양안의 3D 좌표들이 변하지 않거나 단지 최소한으로만 변한 경우에 다음 이미지에 후속하는 이미지에서도 3D 좌표들이 대략 동일한 것으로 추정한다. 다수의 이미지들에 걸쳐 추적된 양안의 3D 좌표들이 그것을 찾아내었을 때의 최초 3D 좌표들로부터 멀리 이동한 다른 경우에는, 후속 이미지의 3D 좌표들 및 그에 따른 제2 탐색 영역도 상기 이동에 의해 정의되는 이동 벡터 및 이동 속도를 사용하여 예컨대 칼만 필터링과 같은 공지의 방법들에 의해 기본적으로 예측할 수 있다.
본 발명에 따른 방법의 또 다른 바람직한 구성 형태들을 도 6에 의거하여 설명하기로 한다. 도 6에 도시된 방법은 도 1의 단계 135에서 눈들을 양안에 할당하는 동작들을 세부적으로 나타낸 것이다. 눈들을 양안에 할당하는 것은 눈들을 찾아내거나 추적할 시에 식별된 눈들로 수행된다. 그러한 식별된 눈들에 대해, 단계 610에서 전술된 바와 같이 3D 좌표들을 산출한다. 눈들을 양안에 할당하는 것 그 자체는 바람직한 구성에서는 분류에 해당한다. 분류 방법이란 물체들을 일정 부류들로 구분하는 방법 및 기준이다. 이미지 데이터에서 물체들을 할당하는데 적절하다면, 선행 기술로부터 공지된 분류들을 사용할 수 있다. 바람직한 구성에서는, 서포트 벡터 머신(support vector machine)을 분류기로 사용한다. 서포트 벡터 머신은 물체들의 양을 부류 경계 주위에 물체들이 없이 가능한 한 넓은 영역이 남도록 부류들로 분류한다. 그러한 분류를 위한 토대로서, 서포트 벡터 머신은 분류하고자 하는 양의 트레이닝 물체들로 트레이닝된다. 바람직한 구성에서는, 단계 615에서 여러 눈들을 나타내는 제1 양의 이미지들과 눈이 아닌 여러 것들을 나타내는 제2 양의 이미지들을 형성한다. 통상적으로, 방법을 수행하기 전에 그러한 양들을 형성하지만, 눈들을 양안에 할당하기 직전에야 비로소 형성할 수도 있다. 서포트 벡터 머신은 단계 620에서 그러한 양들에 의해 트레이닝되어 이미지 데이터에서의 눈들의 분류를 가능케 한다. 이어서, 찾아내어진 또는 추적된 눈들을 서포트 벡터 머신(625)의 패턴 비교에 의해 비교하여 단계 630에서 해당 부류에 일치할 경우에 눈의 부류 또는 눈이 아닌 것의 부류에 공급한다. 분류들의 결과를 다시 트레이닝 물체들로서 서포트 벡터 머신에 공급할 수 있다. 그리고 나서, 서포트 벡터 머신은 눈들의 부류에 할당된 눈들을 양안에 할당한다. 여기서 설명되는 실시 형태에 따라 양안을 할당하는 것은 단계 635에서 양안을 할당한 것으로 종료된다.
또한, 실시간으로 양안의 3D 좌표들을 찾아내고 이어서 추적하는 장치의 바람직한 구성을 도 7을 참조하여 설명하기로 한다. 예컨대, 공통의 캐리어 상에 고정되는 2개의 병렬 배치된 이미지 센서들(710), 각각의 이미지 센서에 대한 각각의 능동 조명 수단(715), 및 각각의 이미지 센서의 이미지 데이터를 본 발명에 따른 방법을 수행하는 제어 컴퓨터(725)에 전송하는 수단(720)이 도시되어 있다. 이미지 센서들(710)은 바람직한 구성에서는 조명 수단(715)과 연동하여 "어두운 동공 효과"를 재현하는 이미지 데이터를 촬영하도록 설계된다. 사용되는 이미지 센서들이 충분히 선명한 이미지 데이터를 제공하는 것을 보장할 수 있도록 하기 위해, 이미지 센서들은 특정의 식별 영역에 대해 자기 집광 방식이 아닌 광학 기구를 구비한다. 예컨대, 이미지 센서들은 폭이 0.5 내지 3.5 m 이상인 식별 영역 또는 0.5 내지 1.5 m 및/또는 1.8 내지 3.0 m의 작은 영역에 각각 사용될 수 있는 것이 바람직하다. 일 실시 형태에 따라 단일 광원으로만 이뤄질 수도 있는 능동 조명 수단(715)은 약 850 ㎚의 파장을 갖는 펄스형 적외선을 방출하도록 설계되는 것이 바람직하다. 능동 조명 이미지 센서들에 대해 배치하는 것은 이미지 센서들에 대한 찾아내어 추적하려는 피사체의 공간 위치에 의해 결정된다. 제어 컴퓨터(725)는 이미지 센서들에 의한 이미지 데이터의 촬영을 각각의 이미지 센서에 대한 이미지 데이터를 전송하는 수단(720)을 통해 제어하는데, 그 밖에도 능동 조명도 켜고 끈다. 일 실시 형태에 따르면, 각각의 이미지 센서에 대한 이미지 데이터를 전송하는 수단(720)은 단일의 직렬 인터페이스에 의해 구현된다.
또 다른 바람직한 구성에서는, 예컨대 클록 발생기에 의해 이미지 센서들과 능동 조명의 동기 제어가 구현된다. 이미지 센서들에 의해 촬영된 이미지들은 전송 수단(720)을 통해 중앙 제어 컴퓨터(725)에 전송된다. 제어 컴퓨터(725)에 실제로 제공될 수 있는 하드웨어 구성 요소들은 초당 25 이미지 이상의 식별 및 추적 주파수로 4명까지의 보는 사람들을 식별 및 추적하는 본 발명에 따른 방법의 수행을 가능케 한다. 그와 관련하여, 그러한 하드웨어 구성 요소들은 예컨대 모니터의 하우징에 집적될 수 있을 정도로 콤팩트하다. 제어 컴퓨터(725)에 의해 찾아내어져 추적된 눈들은 도시를 생략한 또 다른 인터페이스를 통해 후속 사용에 다시 전송될 수 있다. 바람직한 구성에서는, 이미지 데이터를 전송하는 수단(720)과 그 또 다른 인터페이스가 각각 직렬 인터페이스로서 구성된다. 본 발명에 따른 장치는 바람직한 구성에서는 본 발명에 따른 방법을 실시간으로 수행할 수 있도록, 즉 수신된 각각의 이미지 데이터에 해당하는 각각의 이미지에서 눈들을 찾아내어 추적할 수 있도록 설계된다.
또한, 본 발명에 따른 방법은 제어 컴퓨터(725)와 같은 컴퓨터를 제어하는 실행 가능한 컴퓨터 프로그램으로서 구현된다. 컴퓨터 프로그램으로서의 바람직한 구성을 도 8을 참조하여 설명하기로 한다. 도 8에 도시된 실시 형태는 객체 지향 패러다임에 따라 수행되는 컴퓨터 프로그램 진행의 초안을 나타낸 것으로, 그 초안은 당업자로 하여금 적절한 개발 환경에 의해 그 컴퓨터 프로그램을 객체 지향적으로 구현할 수 있게 한다.
이하에서 도입되는 객체들과 인스턴스(instance)들은 전술된 다수의 방법 단계들을 부분적으로 구현하거나 그 방법 단계들을 객체들과 인스턴스들에 통합시킨다. 따라서, 그러한 객체들과 인스턴스들 및 그것들에서 진행되는 방법 단계들에 대해서는 전술된 방법 단계들에 사용된 것과는 다른 명칭들을 선택하는데, 다만 그것이 전체적으로 상이한 방법이라는 뜻을 표명하는 것은 아니다. 오히려, 이하에서 설명되는 실시 형태는 단지 본 발명에 따른 방법의 객체 지향적 독특성에 불과하다는 것으로 이해하여야 한다.
여기서, 제어되는 메인 인스턴스(810)는 메인 루프로서의 역할을 하고, 그에 따라 후술할 방법 단계들 또는 방법 그룹들의 진행을 제어하기 위한 제어 인스턴스로서의 역할을 한다. 메인 인스턴스(810)에는 다음의 방법 단계들이 표현 및 구현된다.
- 이미지 데이터를 얻는 단계;
- 소위 트래커 인스턴스(tacker instance)(820)를 호출하는 단계;
- 식별된 모든 유효 눈 위치들에 대해 트래커 인스턴스(820)에 의해 눈들의 3D 좌표를 계산하는 단계;
- 3D 좌표들을 허용되는 영역 위치들에 한정함으로써 필터링 하는 단계로, 또 다른 실시 형태들에 따른 필터링은 시스템 지연 시간을 보상하기 위해 잡음 필터링 및 얼굴의 3D 이동 속도에 의거한 3D 위치의 사전 계산 또는 예측을 포함한다. 그와 관련하여, 60 ms 동안 3D 위치를 예측하는데, 왜냐하면 그것이 전형적인 시스템 지연 시간에 해당하기 때문이다. 여기서, 시스템 지연 시간이란 이미지 데이터의 수신과 양안의 3D 좌표의 제공까지 사이의 시간을 말한다;
- 결과적으로 생성된 3D 좌표들을 출력 인터페이스(870)를 통해 전송하여 결과물을 상응하게 후속 처리할 수 있도록 하는 단계.
여기서, 입력 데이터는 하나 이상의 이미지 센서들로부터 디지털 비디오 신호들의 시퀀스로서 얻은 이미지 데이터를 포함한다.
입력 데이터는 모든 양안들의 3D 좌표들을 포함한다.
얼굴 식별(115)과 눈 식별(125)과 눈 추적(130) 사이의 협력을 조정 및 관리하기 위해, 다수의 컨텍스트 인스턴스들(context instances)(840-1, …, 840-n)이관리 구조로서 구현될 수 있다. 그와 관련하여, 각각의 컨텍스트 인스턴스(840)에는 얼굴(115)을 찾아내는 얼굴 검출 인스턴스(850) 및 얼굴 검출 인스턴스(850)에 의해 색출된 해당 눈 탐색 영역에서 눈들(125)을 찾아내는 눈 검출 인스턴스(860)가 할당된다. 즉, 눈 검출 인스턴스(860)에 의해 찾아진 눈들은 얼굴 검출 인스턴스(850)에 의해 찾아진 얼굴에 속한다. 컨텍스트(840)는 그것이 피사체에 할당되지 않아 새로운 피사체의 추적에 제공되는 경우에 비어 있는(free) 것으로서 정의된다.
컨텍스트 인스턴스(840)의 가장 중요한 방법 단계들은 다음을 포함한다:
- 피사체마다 각각의 얼굴 검출기(850) 및 눈 검출기(860)를 관리는 단계;
- 허용되는 식별 및 추적 영역에 체류하는 시간 동안 그 양자의 인스턴스들(850, 860)을 피사체에 각각 참조시키는 단계;
- 컨텍스트들(840)을 제어 할당 및 관리하는 단계로서, 컨텍스트들(840)이 존재하는 것보다 더 적은 피사체들이 식별 및 추적 영역에 위치하는 경우에는 컨텍스트들(840)이 비어 있을 수 있고, 모든 컨텍스트들(840)이 차있을 때에는 더 이상의 피사체를 찾아내어 추적할 수 없다.
또한, 컨텍스트들(840) 내의 여러 얼굴 검출 및 눈 검출 인스턴스들(850, 860)의 협력을 조정하고, 트래커 인스턴스(820)에 의해 관리한다. 트래커 인스턴스(820)의 가장 중요한 단계들은 다음을 포함한다:
- 얼굴 검출기와 눈 검출기(850, 860)의 2개의 검출 객체들을 초기화하는 단계;
- 컨텍스트 인스턴스들(840-1, …, 840-n)을 관리하는 단계;
- 얼굴 검출기(850)로부터 얼굴 좌표들을 수신하여 얼굴 관리 인스턴스(830)에 전송하는 단계;
- 새로 찾아진 얼굴을 비어 있는 컨텍스트(840)에 할당하는 단계;
- 각각의 차있는 컨텍스트(840)의 얼굴 검출기 및 눈 검출기(850, 860)에 대한 알고리즘 함수들을 호출하는 단계;
- 모든 양안들의 3D 좌표들을 계산하는 단계.
입력 데이터는 이미지 데이터를 포함하고, 결과 데이터는 모든 양안들의 3D 좌표들을 포함한다.
트래커 인스턴스(820)의 특별한 단계들은 다음을 포함한다:
- 새로운 얼굴 좌표들이 존재하는지에 관해 입력 인터페이스(880)를 검사하고, 그 데이터를 판독하여 실제의 얼굴 위치들의 리스트에 삽입하는 단계;
- 적어도 하나의 컨텍스트(840)를 가용할 수 있을 경우에 얼굴 관리 인스턴스(830)를 호출하는 단계;
- 컨텍스트(840)에서 이미 얼굴들이 추적되고 있는지에 관해 얼굴 관리 인스턴스(830)의 얼굴 후보(candidate)들을 검사하고, 중복으로서 확인된 얼굴 후보들을 삭제하는 단계;
- 새로운 것으로 식별된 나머지 얼굴들을 비어 있는 컨텍스트(840)의 얼굴 검출기(850)에 할당하는 단계;
- 모든 컨텍스트들(840-1, …, 840-n)에 대해 다음의 단계들을 반복하는 단계:
°얼굴 검출기(850)를 호출하는 단계;
°얼굴 검출기(850)가 얼굴을 추적하는 경우에 눈 검출기(860)를 호출하고, 그렇지 않으면 실제의 컨텍스트(840)를 비어 있는 것으로 표식하는 단계;
°눈 검출기(860)가 탐색 모드로 있고 눈 후보들이 검출되면,
·얼굴 검출기(850) 의해 가장 좋은 눈 후보를 선택하는 단계;
·눈 검출기(860)를 추적 모드로 전환하는 단계;
°모든 컨텍스트들(840)이 처리될 때까지 다음 차있는 컨텍스트(840)에 대해 반복 과정을 수행하는 단계.
얼굴 검출기(850)로부터 수신된 얼굴 좌표들은 얼굴 관리 인스턴스(830)에 의해 평가되는데, 얼굴 관리 인스턴스(830)는 그 좌표들로부터 추적에 유효한 것으로 식별된 얼굴들을 포함한 후보 리스트를 산출한다.
그러한 얼굴 관리 인스턴스(830)의 단계들은 다음을 포함한다:
- 얼굴 검출기(850)의 찾아진 얼굴들을 관리하는 단계;
- 얼굴 검출기(850)의 찾아진 얼굴들에 의거하여 유효 식별 얼굴들을 포함한 후보 리스트를 작성하는 단계;
- 스테레오 이미지에서의 디스패리티에 의거하여 이미지 데이터를 제공하는 이미지 센서로부터 얼굴까지의 거리를 계산하는 단계;
입력 데이터는 이미지 데이터 및 얼굴 검색을 위한 검색 영역을 포함하고, 결과 데이터는 찾아내어진 얼굴들 및 그 좌표들을 포함한 리스트를 포함한다.
얼굴 관리 인스턴스(830)는 특별한 기능들로서 다음의 단계들을 포함한다:
- 실제의 얼굴 위치들의 리스트가 변경되면,
°리스트를 분석하는 단계;
°스테레오 분석에 의해 이미지 데이터를 제공하는 이미지 센서로부터 유효 얼굴들까지의 거리를 계산하고, 식별 및 추적 영역 내에 위치하는 얼굴들을 얼굴 후보 리스트에 넘기는 단계.
추적하려는 얼굴은 해당 얼굴 검출 인스턴스(850)에 의해 관리된다. 얼굴 검출 인스턴스(850)에는 얼굴 관리 인스턴스(830)의 얼굴들의 리스트로부터의 하나의 얼굴이 각각 할당된다. 그와 관련하여, 얼굴은 식별 및 추적 영역으로부터 나올 때까지 추적된다. 얼굴 검출 인스턴스(850)의 단계들은 다음을 포함한다:
- 찾아진 얼굴의 위치를 관리하는 단계;
- 눈 검출기(860)에 대한 탐색 영역을 계산하는 단계;
- 스테레오 이미지에서의 디스패리티에 의거하여 이미지 데이터를 제공하는 이미지 센서로부터 얼굴까지의 거리를 계산하는 단계;
- 해당 눈 검출 인스턴스(860)의 잠재적 양안들의 후보 리스트로부터 가장 좋은 양안을 결정하는 단계.
입력 데이터는 다음을 포함한다:
- 이미지 데이터;
- 찾아내어진 얼굴에 관한 정보;
- 얼굴 검출기(850)에 대한 탐색 영역;
- 양안 후보들의 리스트.
결과 데이터는 다음을 포함한다:
- 찾아내어진 얼굴들과 그 좌표들을 포함한 리스트;
- 눈 검출기(860)에 대한 탐색 영역;
- 선택된 양안.
그러한 얼굴 검출 인스턴스(850)는 특별한 기능들로서 다음의 단계들을 포함한다:
- 실제의 얼굴 위치들의 리스트가 변경되면,
°얼굴 위치를 업데이트/현실화하는 단계;
°발견-분실 참조 카운터를 리셋하는 단계로서, 그러한 참조 카운터는 한번 찾아내어진 얼굴이 얼마나 많은 후속 이미지들에서 더 이상 발견될 수 없는지에 관한 척도이다.
- 그렇지 않고, 리스트에 변함이 없으면,
°눈 검출기가 눈을 추적하는 경우에는,
·눈 위치에 의거하여 얼굴 위치를 계산하는 단계;
·얼굴/눈들의 거리를 계산하는 단계;
°그 밖의 경우에는,
·얼굴을 잃어버려 발견-분실 참조 카운터를 증가시킨다. 하지만, 얼굴을 여전히 찾아내어진 것으로 간주한다;
· 발견-분실 참조 카운터가 일정한 정해진 값을 넘지 않는 한 지금까지의 얼굴 위치는 그대로 유지되고, 그렇지 않으면 얼굴을 더 이상 존재하지 않는 것으로 간주한다.
눈들의 식별 및 추적은 미리 주어진 탐색 영역에서 탐색 모드로 눈들을 검출하거나 이미 찾아내어진 눈들을 추적 모드로 추적하는 눈 검출 인스턴스(860)에 의해 수행된다. 그와 관련하여, 잠재적 양안들을 색출하여 평가 기준에 의거해서 후보 리스트를 작성한다.
눈 검출 인스턴스(860)의 단계들은 다음을 포함한다:
- 찾아내어진 양안의 위치를 관리하는 단계;
- 눈들을 초기 탐색하는 단계;
- 추적을 위한 탐색 영역을 계산하는 단계;
- 눈 위치를 추적하는 단계;
- 찾아내어진 눈 후보들의 신뢰도를 산출하여 잠재적 후보들을 편성하는 단계.
입력 데이터는 다음을 포함한다:
- 이미지 데이터;
- 눈 탐색 및 추적을 위한 탐색 영역;
- 찾아내어진 얼굴에 관한 정보.
결과 데이터는 다음을 포함한다:
- 양안 및 그 좌표들.
그러한 눈 검출 인스턴스(860)의 특별한 기능들은 다음의 단계들을 포함한다:
- 눈 검출기(860)가 탐색 모드로 있으면,
°얼굴 검출기(850)에 의해 눈 탐색 영역을 산출하는 단계;
°눈 탐색 영역 내에서 눈들을 검출하기 위한 알고리즘을 적용하는 단계;
- 그렇지 않고, 눈 검출기(860)가 추적 모드로 있으면,
°이전 눈 위치 및 이미지 데이터를 제공하는 이미지 센서로부터 보는 사람까지의 거리에 의거하여 눈의 속도에 의해 탐색 영역의 새로운 위치 및 그 크기를 계산하고 예측 또는 외삽(extrapolation)하는 단계;
°탐색 영역 내에서 눈들을 추적하기 위한 알고리즘을 적용하는 단계;
- 후보들을 찾으면,
°양안의 잠재적 후보들을 색출하기 위해 각종의 테스트들을 수행하는 단계로서, 테스트와 그 기준은 다음을 포함한다:
·눈들의 상호 상대 위치 및 얼굴 위치에 대한 상대 위치;
·눈 간격 및 경사;
·찾아진 위치 및 주위 위치들의 영역에서의 고아도 패턴의 분류에 의거한 신뢰도로서, 주위 위치들은 추후에 더 좋은 신뢰도로 위치 정확성을 향상시키는데 사용된다;
°결과적으로 생성된 평가 기준들에 의거하여 후보 리스트를 작성하는 단계;
- 눈 검출기(860)가 추적 모드로 있으면,
°후보들을 찾은 경우에는,
·예측된 눈 위치들에 가장 가까운 양안을 선택하는 단계;
·실제의 눈 위치들을 새로운 결과들로서 업데이트하는 단계;
°그렇지 않고, 적절한 후보들을 찾지 못하면,
·눈 검출기(860)를 탐색 모드로 전환하여 탐색을 반복하는 단계.
본 발명의 전술된 실시 형태들은 부분적으로 이미 전술된 바와 같이 예컨대 디지털 신호 처리 장치(DSP) 및/또는 프로그래밍 가능한 디지털 집적 회로(FPGA) 및 해당 주변 장치와 예컨대 적절한 개인용 컴퓨터 등의 제어 컴퓨터에서 진행되는 제어 프로그램들과 같은 적절한 하드웨어 및/또는 소프트웨어에 구현된다.
청구되고 있는 컴퓨터 프로그램은 일 실시 형태에 따라 소프트웨어 구성 요소로서, 예컨대 ROM에 저장된 프로그램 코드로서 저장 또는 구현되거나, 하드웨어 구성 요소로서, 예컨대 ASIC 또는 FPGA의 논리 회로로서 저장 구현된다. 컴퓨터 프로그램이 소프트웨어 구성 요소로서 예컨대 제어 컴퓨터의 메모리에 저장되는 경우, 그 컴퓨터 프로그램은 일 실시 형태에 따라 예컨대 소프트웨어 구성 요소를 실행하는 고속 디지털 신호 처리 프로세서(DSP)를 포함하는 제어 컴퓨터의 동작 중에 실행된다.
데이터 캐리어는 일 실시 형태에 따라 예컨대 컴퓨터 프로그램이 저장된 CD-ROM 또는 ROM 메모리와 같은 기계 판독 가능한 데이터 캐리어이다.
710: 이미지 센서들
715: 능동 조명 수단
720: 인터페이스
725: 제어 컴퓨터

Claims (21)

  1. 적어도 하나의 얼굴에서 양안의 3D 좌표들을 찾아내고 이어서 추적하는 방법으로서,
    a) 적어도 하나의 이미지 센서로부터 적어도 하나의 디지털 비디오 신호의 시퀀스를 포함하는 이미지 데이터를 수신하는 단계;
    b) 상기 이미지 데이터에서 눈들을 찾아내거나 이미 찾아내어진 눈들을 추적하는 단계;
    c) 상기 찾아내어진 또는 추적된 눈들의 3D 좌표들을 산출하는 단계;
    d) 상기 찾아내어진 또는 추적된 눈들을 양안에 할당하는 단계; 및
    e) 상기 양안의 3D 좌표들을 제공하는 단계를 포함하되,
    상기 이미지 데이터에서 눈들을 찾아내는 상기 단계는
    f) 상기 이미지 데이터에서 하나 이상의 얼굴들을 식별하는 단계;
    g) 적어도 하나의 식별된 얼굴의 3D 좌표들을 산출하는 단계;
    h) 상기 식별된 얼굴 상에서 제1 탐색 영역을 결정하는 단계; 및
    i) 상기 제1 탐색 영역에서 적어도 하나의 눈을 찾아내는 단계를 포함하고,
    상기 이미지 데이터에서 이미 찾아내어진 눈들을 추적하는 상기 단계는
    j) 상기 식별된 얼굴 상에서 제2 탐색 영역을 결정하는 단계; 및
    k) 상기 제2 탐색 영역에서 양안의 눈들을 추적하는 단계를 포함하는 양안의 3D 좌표 식별 및 추적 방법에 있어서,
    상기 제1 탐색 영역에서 적어도 하나의 눈을 찾아내는 상기 단계는
    l) 상기 이미지 데이터를 제공하는 이미지 센서로부터 상기 식별된 얼굴까지의 거리에 의존하여 눈 성분의 예상 크기를 계산하는 단계;
    m) 상기 이미지 데이터를 제공하는 이미지 센서로부터 상기 식별된 얼굴까지의 거리에 의존하여 상기 제1 탐색 영역에서의 세그먼테이션을 위한 임계치로서의 그레이 스케일 값을 계산하는 단계;
    n) 콘트라스트를 향상시키기 위해 상기 제1 탐색 영역을 전처리하는 단계;
    o) 상기 전처리 후에 상기 제1 탐색 영역을 세그멘테이션하는 단계;
    p) 상기 세그멘테이션된 제1 탐색 영역에서 동일한 그레이 스케일 값을 갖는 인접 화소들을 합친 하나 이상의 결합 영역을 계산하는 단계;
    q) 각각의 계산된 결합 영역의 크기를 산출하는 단계; 및
    r) 상기 눈 성분의 예상 크기를 상기 결합 영역의 산출된 크기와 비교하여 상기 결합 영역의 산출된 크기가 상기 눈 성분의 예상 크기와 일치할 경우에 상기 결합 영역을 찾아내어진 눈으로 추정하는 단계를 포함하는 것을 특징으로 하는 양안의 3D 좌표 식별 및 추적 방법.
  2. 제1항에 있어서, 상기 제2 탐색 영역에서 양안의 눈들을 찾아내는 상기 단계는
    s) 상기 이미지 데이터를 제공하는 이미지 센서로부터 상기 식별된 얼굴까지의 거리에 의존하여 상기 눈 성분의 예상 크기를 계산하는 단계;
    t) 상기 제2 탐색 영역에서의 최소 그레이 스케일 값을 산출하는 단계;
    u) 상기 제2 탐색 영역에서의 임계치로서의 그레이 스케일 값에 대한 반복 과정(iteration)을 수행하되, 적어도 2개의 눈들이 식별될 경우에 상기 반복 과정을 중단하는 단계를 포함하고, 상기 반복 과정은
    v) 상기 이미지 데이터를 제공하는 이미지 센서로부터 상기 식별된 얼굴까지의 거리에 의존하여 실제 반복 과정 단계와 상기 최소 그레이 스케일 값으로부터 상기 제2 탐색 영역에서의 세그멘테이션을 위한 임계치로서의 그레이 스케일 값을 계산하는 단계;
    w) 상기 제2 탐색 영역을 세그멘테이션하는 단계;
    x) 상기 세그멘테이션된 제2 탐색 영역에서 동일한 그레이 스케일 값을 갖는 인접 화소들을 합친 하나 이상의 결합 영역을 계산하는 단계;
    y) 각각의 계산된 결합 영역의 크기를 산출하는 단계; 및
    z) 상기 눈 성분의 예상 크기를 상기 결합 영역의 산출된 크기와 비교하여 상기 결합 영역의 산출된 크기가 상기 눈 성분의 예상 크기와 일치할 경우에 상기 결합 영역을 추적된 눈으로 추정하는 단계를 포함하는 것을 특징으로 하는 양안의 3D 좌표 식별 및 추적 방법.
  3. 제1항에 있어서, 상기 세그멘테이션은 각각의 화소를 이진화하는 것으로, 상기 임계치 미만의 화소들을 1로 하고 상기 임계치를 넘는 화소들을 0으로 하거나, 역으로 상기 임계치 미만의 화소들을 0으로 하고 상기 임계치를 넘는 화소들을 1로 하는 것을 특징으로 하는 양안의 3D 좌표 식별 및 추적 방법.
  4. 제1항에 있어서, 단계 n)에서의 상기 전처리는 그레이 스케일 값 히스토그램 평활화인 것을 특징으로 하는 양안의 3D 좌표 식별 및 추적 방법.
  5. 제1항에 있어서, 상기 눈 성분은 동공을 포함하거나 동공 및 홍채를 포함하는 것을 특징으로 하는 양안의 3D 좌표 식별 및 추적 방법.
  6. 제1항에 있어서, 상기 찾아내어진 또는 추적된 눈들을 양안에 할당하는 것은 분류를 포함하는 것을 특징으로 하는 양안의 3D 좌표 식별 및 추적 방법.
  7. 제6항에 있어서, 서포트 벡터 머신에 의해 분류를 수행하고, 상기 서포트 벡터 머신은 눈들 및/또는 눈이 아닌 하나 이상의 이미지들로 트레이닝되는 것을 특징으로 하는 양안의 3D 좌표 식별 및 추적 방법.
  8. 제1항에 있어서, 상기 이미지 데이터에서 하나 이상의 얼굴들을 식별하는 것은 식별된 얼굴의 3D 좌표들을 앞선 단계에서 식별된 얼굴의 3D 좌표들과 비교하는 것을 포함하고, 상기 이미지 데이터를 제공하는 이미지 센서로부터 상기 식별된 얼굴까지의 거리를 산출하는 것은 상기 얼굴의 3D 좌표들에 기초하여 상기 얼굴의 거리를 계산하는 것을 포함하는 것을 특징으로 하는 양안의 3D 좌표 식별 및 추적 방법.
  9. 제1항에 있어서, 얼굴의 3D 좌표들을 산출하는 것은 상기 이미지 데이터의 스테레오 분석을 포함하는 것을 특징으로 하는 양안의 3D 좌표 식별 및 추적 방법.
  10. 제1항에 있어서, 상기 이미지 데이터의 촬영 시에 상기 얼굴을 적외선으로 능동 조명하는 것을 특징으로 하는 양안의 3D 좌표 식별 및 추적 방법.
  11. 제1항에 있어서, 상기 식별 및 추적 방법은 상기 이미지 센서로부터 0.5 m 내지 3.5 m의 거리를 두고 양안을 찾아내어 추적하는 것을 특징으로 하는 양안의 3D 좌표 식별 및 추적 방법.
  12. 제1항에 있어서, 상기 제1 탐색 영역의 크기는 상기 제2 탐색 영역의 크기보다 더 큰 것을 특징으로 하는 양안의 3D 좌표 식별 및 추적 방법.
  13. 제1항에 있어서, 상기 제1 탐색 영역은 50 ㎜×50 ㎜의 크기를 갖거나, 상기 제2 탐색 영역은 20 ㎜×15 ㎜의 크기를 갖고, 상기 제1 탐색 영역은 50 ㎜×50 ㎜의 크기를 갖고, 상기 제2 탐색 영역은 20 ㎜×15 ㎜의 크기를 갖는 것을 특징으로 하는 양안의 3D 좌표 식별 및 추적 방법.
  14. 제1항에 있어서, 상기 식별 및 추적 방법을 실시간으로 진행하는 것을 특징으로 하는 양안의 3D 좌표 식별 및 추적 방법.
  15. 삭제
  16. 컴퓨터로 판독가능한 저장매체로서, 컴퓨터 프로그램을 저장하며, 상기 컴퓨터 프로그램은 컴퓨터상에 실행될 때 제1항에 따른 방법을 수행하도록 컴퓨터를 제어하는, 컴퓨터로 판독가능한 저장매체.
  17. 제1항에 따른 방법을 수행하도록 설계된, 적어도 하나의 얼굴에서 양안의 3D 좌표들을 찾아내고 이어서 추적하는 장치.
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
KR1020107012593A 2007-11-16 2008-11-12 양안을 찾아내어 추적하는 방법 및 장치 KR101550474B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102007056528A DE102007056528B3 (de) 2007-11-16 2007-11-16 Verfahren und Vorrichtung zum Auffinden und Verfolgen von Augenpaaren
DE102007056528.5 2007-11-16

Publications (2)

Publication Number Publication Date
KR20100105591A KR20100105591A (ko) 2010-09-29
KR101550474B1 true KR101550474B1 (ko) 2015-09-04

Family

ID=40344911

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020107012593A KR101550474B1 (ko) 2007-11-16 2008-11-12 양안을 찾아내어 추적하는 방법 및 장치

Country Status (7)

Country Link
US (1) US8477996B2 (ko)
JP (1) JP5470262B2 (ko)
KR (1) KR101550474B1 (ko)
CN (1) CN101861118B (ko)
DE (1) DE102007056528B3 (ko)
TW (1) TW200938162A (ko)
WO (1) WO2009062945A1 (ko)

Families Citing this family (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110255761A1 (en) * 2007-06-26 2011-10-20 University Of Rochester Method and system for detecting lung tumors and nodules
WO2010037485A1 (de) * 2008-09-30 2010-04-08 Carl Zeiss Meditec Ag Anordnungen und verfahren zur messung einer augenbewegung, insbesondere einer bewegung des augenhintergrunds
CN102006402B (zh) * 2009-08-28 2014-02-19 鸿富锦精密工业(深圳)有限公司 摄像装置及其身份识别方法
KR101082691B1 (ko) 2009-12-22 2011-11-15 한양대학교 산학협력단 3차원 디스플레이장치에서 홍채 시선 검출을 통한 안구 운동 장치 및 방법
WO2012122194A1 (en) * 2011-03-09 2012-09-13 Bae Systems Information And Electronic Systems Integration Inc. System and method for situational awareness and target cueing
FR2976355B1 (fr) * 2011-06-09 2013-06-21 Jean Luc Desbordes Dispositif de mesure de vitesse et de position d'un vehicule se deplacant le long d'une voie de guidage, procede et produit programme d'ordinateur correspondant.
EP2807605A2 (en) * 2012-01-26 2014-12-03 Umoove Services Ltd. Eye tracking
DE102012004817A1 (de) * 2012-03-08 2013-09-12 GM Global Technology Operations LLC (n. d. Ges. d. Staates Delaware) Scheinwerfersystem für ein Kraftfahrzeug
JP2013215549A (ja) * 2012-03-16 2013-10-24 Fujitsu Ltd 画像処理装置、画像処理プログラムおよび画像処理方法
US9952663B2 (en) 2012-05-10 2018-04-24 Umoove Services Ltd. Method for gesture-based operation control
KR20130134103A (ko) * 2012-05-30 2013-12-10 삼성전자주식회사 단말기의 이미지 제공 장치 및 방법
CN103565399B (zh) * 2012-07-27 2015-09-30 原相科技股份有限公司 瞳孔检测装置
EP2712541B1 (en) * 2012-09-27 2015-12-30 SensoMotoric Instruments Gesellschaft für innovative Sensorik mbH Tiled image based scanning for head and/or eye position for eye tracking
US9911036B2 (en) * 2012-11-14 2018-03-06 Tascent, Inc. Focusing method for optically capturing an iris image
US9265458B2 (en) 2012-12-04 2016-02-23 Sync-Think, Inc. Application of smooth pursuit cognitive testing paradigms to clinical drug development
US9041642B2 (en) 2012-12-17 2015-05-26 Disney Enterprises, Inc. Large audience 3D display system without glasses
CN103902958A (zh) * 2012-12-28 2014-07-02 重庆凯泽科技有限公司 人脸识别的方法
KR102175853B1 (ko) * 2013-02-22 2020-11-06 삼성전자주식회사 동작 제어 방법 및 그 전자 장치
US9380976B2 (en) 2013-03-11 2016-07-05 Sync-Think, Inc. Optical neuroinformatics
US9772679B1 (en) * 2013-08-14 2017-09-26 Amazon Technologies, Inc. Object tracking for device input
CN103996215A (zh) * 2013-11-05 2014-08-20 深圳市云立方信息科技有限公司 一种实现虚拟视图转立体视图的方法及装置
KR101524516B1 (ko) * 2013-11-29 2015-06-02 전남대학교산학협력단 빈도수 기반의 영상 내 얼굴객체 추적방법
EP3079560B1 (en) * 2013-12-09 2018-01-31 SensoMotoric Instruments Gesellschaft für innovative Sensorik mbH Method for operating an eye tracking device and eye tracking device for providing an active illumination control for improved eye tracking robustness
WO2015130849A1 (en) * 2014-02-25 2015-09-03 Eyeverify Eye gaze tracking
US10027883B1 (en) * 2014-06-18 2018-07-17 Amazon Technologies, Inc. Primary user selection for head tracking
US9729865B1 (en) 2014-06-18 2017-08-08 Amazon Technologies, Inc. Object detection and tracking
KR101610525B1 (ko) 2014-10-20 2016-04-07 현대자동차주식회사 조도를 고려한 동공 검출 장치 및 그 방법
KR101619651B1 (ko) * 2014-11-26 2016-05-10 현대자동차주식회사 운전자 감시장치 및 그의 조명제어방법
US9953247B2 (en) 2015-01-29 2018-04-24 Samsung Electronics Co., Ltd. Method and apparatus for determining eye position information
CN104636736A (zh) * 2015-03-03 2015-05-20 上海博超联石智能科技有限公司 一种基于libjpeg库的高清人脸检测方法
CN107710050A (zh) 2015-06-30 2018-02-16 3M创新有限公司 照明器
WO2017025487A1 (en) 2015-08-07 2017-02-16 SensoMotoric Instruments Gesellschaft für innovative Sensorik mbH System and method for displaying a stream of images
KR102463169B1 (ko) * 2015-09-07 2022-11-04 삼성전자주식회사 시점 추적 방법 및 장치
US9928602B2 (en) * 2015-12-11 2018-03-27 Novartis Ag Fast and automated segmentation of layered image with heuristic graph search
EP3214602B1 (de) * 2016-03-03 2019-05-08 Sick Ag Verfahren zur dreidimensionalen erfassung von objekten
US9704216B1 (en) * 2016-08-04 2017-07-11 Le Technology Dynamic size adjustment of rendered information on a display screen
US10395099B2 (en) * 2016-09-19 2019-08-27 L'oreal Systems, devices, and methods for three-dimensional analysis of eyebags
KR102349543B1 (ko) * 2016-11-22 2022-01-11 삼성전자주식회사 사용자의 눈을 추적하는 방법 및 장치와 역변환된 저조도 영상을 생성하는 방법
CN112578911A (zh) * 2016-12-06 2021-03-30 美国景书公司 跟踪头部和眼睛的运动的装置和方法
CN108289151A (zh) * 2018-01-29 2018-07-17 维沃移动通信有限公司 一种应用程序的操作方法及移动终端
CN108446642A (zh) * 2018-03-23 2018-08-24 四川意高汇智科技有限公司 一种快速人脸识别系统
US11010646B2 (en) 2018-04-10 2021-05-18 Facebook Technologies, Llc Object tracking assisted with hand or eye tracking
US10951875B2 (en) 2018-07-03 2021-03-16 Raxium, Inc. Display processing circuitry
KR20200067465A (ko) 2018-12-04 2020-06-12 삼성전자주식회사 영상 처리 방법 및 장치
CN109910567B (zh) * 2019-02-01 2022-09-30 信利光电股份有限公司 一种用于汽车的智能遮阳装置及其控制方法
WO2021056177A1 (en) * 2019-09-24 2021-04-01 Citrix Systems, Inc. Systems and methods for screen brightness control and auto-lock based on eye detection
KR20220093144A (ko) 2019-11-01 2022-07-05 라시움, 아이엔씨. 눈 추적기를 통합하는 라이트 필드 디스플레이 및 눈 추적 정보를 사용하여 라이트 필드 디스플레이에 대한 뷰를 생성하기 위한 방법
CN111192241B (zh) * 2019-12-23 2024-02-13 深圳市优必选科技股份有限公司 一种人脸图像的质量评估方法、装置及计算机存储介质
US11475714B2 (en) * 2020-02-19 2022-10-18 Motorola Solutions, Inc. Systems and methods for detecting liveness in captured image data
CN115398493A (zh) * 2020-04-02 2022-11-25 京瓷株式会社 检测装置以及图像显示模块
KR102254045B1 (ko) 2020-11-26 2021-05-20 배이산업 주식회사 선박의 프로펠러용 안전 가드
WO2023078986A1 (en) * 2021-11-04 2023-05-11 Trinamix Gmbh Eye safety for projectors

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5016282A (en) * 1988-07-14 1991-05-14 Atr Communication Systems Research Laboratories Eye tracking image pickup apparatus for separating noise from feature portions
DE19731303B4 (de) * 1997-07-13 2009-02-26 Smi Senso Motoric Instruments Gmbh Verfahren und Vorrichtung zum kontaktlosen, helmfreien Messen der Blickrichtung von Augen bei Kopf- und Augenbewegungen
JP3651745B2 (ja) * 1998-03-17 2005-05-25 株式会社東芝 物体領域追跡装置および物体領域追跡方法
US6539100B1 (en) * 1999-01-27 2003-03-25 International Business Machines Corporation Method and apparatus for associating pupils with subjects
US7039909B2 (en) * 2001-09-29 2006-05-02 Intel Corporation Method and apparatus for performing compiler transformation of software code using fastforward regions and value specialization
US6997556B2 (en) * 2001-10-01 2006-02-14 Ernst Pfleger Method for detecting, evaluating, and analyzing look sequences
US6873714B2 (en) * 2002-02-19 2005-03-29 Delphi Technologies, Inc. Auto calibration and personalization of eye tracking system using larger field of view imager with higher resolution
US7206435B2 (en) * 2002-03-26 2007-04-17 Honda Giken Kogyo Kabushiki Kaisha Real-time eye detection and tracking under various light conditions
US8369607B2 (en) * 2002-03-27 2013-02-05 Sanyo Electric Co., Ltd. Method and apparatus for processing three-dimensional images
KR100682889B1 (ko) * 2003-08-29 2007-02-15 삼성전자주식회사 영상에 기반한 사실감 있는 3차원 얼굴 모델링 방법 및 장치
KR100552709B1 (ko) * 2004-05-21 2006-02-20 삼성전자주식회사 눈검출 장치 및 방법
RU2408162C2 (ru) 2005-08-17 2010-12-27 Сириал Текнолоджиз Гмбх Способ и устройство для обнаружения и отслеживания в реальном времени глаз нескольких наблюдателей
US20070147671A1 (en) * 2005-12-22 2007-06-28 Eastman Kodak Company Analyzing radiological image using 3D stereo pairs
DE102006002001B4 (de) 2006-01-16 2009-07-23 Sensomotoric Instruments Gmbh Verfahren zur Bestimmung der räumlichen Relation eines Auges einer Person bezüglich einer Kameravorrichtung

Also Published As

Publication number Publication date
KR20100105591A (ko) 2010-09-29
JP5470262B2 (ja) 2014-04-16
JP2011508289A (ja) 2011-03-10
TW200938162A (en) 2009-09-16
TWI366454B (ko) 2012-06-21
DE102007056528B3 (de) 2009-04-02
WO2009062945A1 (de) 2009-05-22
CN101861118B (zh) 2012-05-16
US20100303294A1 (en) 2010-12-02
CN101861118A (zh) 2010-10-13
US8477996B2 (en) 2013-07-02

Similar Documents

Publication Publication Date Title
KR101550474B1 (ko) 양안을 찾아내어 추적하는 방법 및 장치
US9392262B2 (en) System and method for 3D reconstruction using multiple multi-channel cameras
CN107850782B (zh) 用反射率图表示增强深度图表示
RU2616175C2 (ru) Определение расстояния до объекта по изображению
JP2020526821A (ja) 統合撮像装置を使用しての視覚的データ、深さデータ、および微小振動データの抽出
US10482347B2 (en) Inspection of the contoured surface of the undercarriage of a motor vehicle
JP4774818B2 (ja) 画像処理装置及び画像処理方法
CN105431078A (zh) 用于同轴眼睛凝视跟踪的系统和方法
KR102502310B1 (ko) 적외선 이미징을 사용한 색상 식별
CN107203743B (zh) 一种人脸深度跟踪装置及实现方法
WO2016142489A1 (en) Eye tracking using a depth sensor
EP3832601A1 (en) Image processing device and three-dimensional measuring system
CN112712059A (zh) 基于红外热图像和rgb图像的活体人脸识别方法
US11257237B2 (en) Optimized exposure control for improved depth mapping
CN116682140A (zh) 基于注意力机制多模态融合的三维人体姿态估计算法
JP2002366958A (ja) 画像認識方法および画像認識装置
EP2482232A2 (en) Rendering-based landmark localization from 3D range images
JP4568836B2 (ja) 実時間瞳孔位置検出システム
CN110532877A (zh) 一种单摄像头人脸识别方案防欺骗方法、系统、设备及存储装置
KR101827114B1 (ko) 축사 근접 개체 탐지 장치 및 방법
Rodríguez A methodology to develop computer vision systems in civil engineering: Applications in material testing and fish tracking
Van Crombrugge Safety tracking with range camera fusion
JP2022187546A (ja) 視線推定システム
CN114694265A (zh) 活体检测方法、装置及系统
Law et al. Foreground object segmentation from binocular stereo video

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
FPAY Annual fee payment

Payment date: 20180821

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190826

Year of fee payment: 5