KR101647969B1 - 사용자 시선을 검출하기 위한 사용자 시선 검출 장치 및 그 방법과, 그 방법을 실행하기 위한 컴퓨터 프로그램 - Google Patents

사용자 시선을 검출하기 위한 사용자 시선 검출 장치 및 그 방법과, 그 방법을 실행하기 위한 컴퓨터 프로그램 Download PDF

Info

Publication number
KR101647969B1
KR101647969B1 KR1020140120825A KR20140120825A KR101647969B1 KR 101647969 B1 KR101647969 B1 KR 101647969B1 KR 1020140120825 A KR1020140120825 A KR 1020140120825A KR 20140120825 A KR20140120825 A KR 20140120825A KR 101647969 B1 KR101647969 B1 KR 101647969B1
Authority
KR
South Korea
Prior art keywords
user
gaze
point
coordinate system
dimensional
Prior art date
Application number
KR1020140120825A
Other languages
English (en)
Other versions
KR20160031183A (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 재단법인대구디지털산업진흥원
Priority to KR1020140120825A priority Critical patent/KR101647969B1/ko
Publication of KR20160031183A publication Critical patent/KR20160031183A/ko
Application granted granted Critical
Publication of KR101647969B1 publication Critical patent/KR101647969B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

사용자 시선 검출 방법이 개시된다. 본 방법은, 뎁스 카메라로 촬영을 수행하여 뎁스 맵을 획득하는 단계, 뎁스 맵 내에서 인물 영역을 제외한 배경 영역을 제거하는 단계, 인물 영역 내에서 얼굴의 위치 및 자세를 추정하는 단계, 추정된 위치 및 자세를 이용하여, 3차원 실좌표계에서의 사용자 시선 위치를 산출하고, 사용자 시선 위치를 2차원 픽셀 좌표계에서의 사용자 시선 위치로 변환하는 변환 단계, 디스플레이 패널의 해상도 및 2차원 픽셀 좌표계에서의 사용자 시선 위치를 이용하여, 디스플레이 패널 상에서 사용자 시선이 위치하는 포인트를 산출하는 시선 검출 단계를 포함한다. 이에 따라, 조명의 영향 없이 사용자의 시선 포인트를 산출할 수 있다.

Description

사용자 시선을 검출하기 위한 사용자 시선 검출 장치 및 그 방법과, 그 방법을 실행하기 위한 컴퓨터 프로그램 { APPARATUS FOR DETECTING USER GAZE POINT, AND METHOD THEREOF }
본 발명은 사용자 시선 검출에 대한 것으로, 보다 상세하게는 뎁스 카메라(depth camera)를 이용하여 사용자가 어느 부분을 보고 있는지를 검출하는 사용자 시선 검출 장치 및 그 방법에 대한 것이다.
전자 기술의 발달에 힘입어 다양한 유형의 장치들이 개발 및 보급되고 있다. 특히, 일반 가정에서는 과거에 비해 더 커지고 선명해진 디스플레이를 구비한 TV나 모니터 등과 같은 장치들이 많이 사용되고 있다.
크기나 형태뿐만 아니라 장치의 기능 역시 과거에 비해 크게 향상되었다. 이에 따라 사용자의 의도를 정확하게 인지하고, 그에 대응되는 동작을 수행하도록 하는 사용자 인터랙션에 대한 관심도 함께 증대되고 있다.
이러한 사용자 인터랙션 기술 중 하나로 사용자의 시선을 추적하여 그에 따라 적절한 동작을 수행하는 시선 추적 기술이 있다. 종래의 시선 추적 기술은 RGB 카메라를 이용하여 사용자를 촬영하여 일반 영상을 획득하고, 그 획득된 일반 영상을 분석하여 사용자의 시선을 추적하였다. 하지만, 이러한 RGB 카메라는 조명 변화에 취약하다는 단점이 있다. 예를 들어, 조명이 강해서 사용자의 얼굴 부분의 휘도가 크게 증가하거나, 반대로 조명이 약해서 사용자의 얼굴이 정확하게 인식되지 않는 경우가 있을 수 있다. 이에 따라, 사용자의 시선을 정확하게 추적할 수 없다는 단점이 있다.
따라서, 종래에 비해 좀 더 정확하고 효과적으로 사용자 시선을 검출할 수 있는 기술에 대한 필요성이 대두되었다.
본 발명은 상술한 필요성에 따른 것으로, 본 발명의 목적은, 뎁스 카메라를 이용하여 사용자를 촬영하고, 그 촬영된 뎁스 맵을 이용하여 사용자 시선을 효과적으로 검출할 수 있는 사용자 시선 검출 장치 및 그 방법을 제공함에 있다.
상술한 목적을 달성하기 위한 본 발명의 일 실시 예에 따르면, 사용자 시선 검출 방법은, 디스플레이 장치의 디스플레이 패널 방향으로 배치된 뎁스 카메라로 촬영을 수행하여 뎁스 맵을 획득하는 단계, 상기 뎁스 맵 내에서 인물 영역을 제외한 배경 영역을 제거하는 단계, 상기 인물 영역 내에서 얼굴의 위치 및 자세를 추정하는 단계, 상기 추정된 위치 및 자세를 이용하여, 3차원 실좌표계에서의 사용자 시선 위치를 산출하고, 상기 사용자 시선 위치를 2차원 픽셀 좌표계에서의 사용자 시선 위치로 변환하는 변환 단계, 상기 디스플레이 패널의 해상도 및 상기 2차원 픽셀 좌표계에서의 사용자 시선 위치를 이용하여, 상기 디스플레이 패널 상에서 사용자 시선이 위치하는 포인트를 산출하는 시선 검출 단계를 포함한다.
또는, 칼만 필터를 이용하여 상기 산출된 포인트를 보정하는 단계를 더 포함할 수도 있다.
또는, 상기 디스플레이 패널 상에서 상기 사용자 시선이 위치하는 포인트에 GUI 객체를 표시하는 단계를 더 포함할 수도 있다.
여기서, 상기 변환 단계는, 상기 추정된 위치를 나타내는 3차원 좌표값(x, y, z)과, 상기 추정된 자세를 나타내는 3차원 각도값(θx, θy, θz)을
Figure 112014086426971-pat00001
Figure 112014086426971-pat00002
Figure 112014086426971-pat00003
와 같은 수학식에 대입하여 상기 3차원 실좌표계에서의 사용자 시선 위치 좌표(x', y', z')를 산출하고,
상기 3차원 실좌표계에서의 상기 사용자 시선 위치 좌표(x', y', z')를
Figure 112014086426971-pat00004
Figure 112014086426971-pat00005
와 같은 수학식에 대입하여 상기 2차원 픽셀좌표계에서의 사용자 시선 위치 좌표(x", y")를 산출할 수 있다. 여기서 상기 뎁스 카메라의 해상도는 w1 x h1이고, 초점 거리는 f, 픽셀 사이즈는 p가 될 수 있다.
또한, 상기 시선 검출 단계는, 상기 디스플레이 장치의 해상도가 w2 x h2이면,
Figure 112014086426971-pat00006
Figure 112014086426971-pat00007
와 같은 수학식을 이용하여 상기 디스플레이 패널 상에서 상기 사용자 시선이 위치하는 포인트의 좌표(X, Y)를 산출할 수 있다.
한편, 본 발명의 일 실시 예에 따른 사용자 시선 검출 장치는, 디스플레이 장치의 디스플레이 패널 방향으로 배치된 뎁스 카메라에 의해 촬영된 뎁스 맵을 저장하는 저장부, 상기 뎁스 맵에서 인물 영역을 제외한 배경 영역을 제거하고, 상기 인물 영역 내에서 얼굴 위치 및 자세를 추정하며, 추정된 얼굴 위치 및 자세를 이용하여 3차원 실좌표계에서의 사용자 시선 위치를 산출하고, 상기 사용자 시선 위치를 2차원 픽셀 좌표계에서의 사용자 시선 위치로 변환하며, 상기 디스플레이 장치의 해상도 및 상기 2차원 픽셀 좌표계에서의 사용자 시선 위치를 이용하여, 상기 디스플레이 패널 상에서 사용자 시선이 위치하는 포인트를 산출하는 제어부를 포함한다.
여기서, 상기 제어부는, 상기 포인트가 산출되면, 칼만 필터를 이용하여 상기 산출된 포인트를 보정할 수 있다.
또한, 상기 사용자 시선 검출 장치는, 상기 디스플레이 장치에 내장되며, 상기 제어부는, 상기 포인트가 최종적으로 산출되면, 상기 디스플레이 장치의 상기 디스플레이 패널을 제어하여 상기 사용자 시선이 위치하는 포인트에 GUI 객체를 표시할 수 있다.
또는, 사용자 시선 검출 장치는, 별도로 마련된 상기 디스플레이 장치와 통신을 수행하기 위한 인터페이스를 더 포함할 수 있다. 여기서, 상기 제어부는, 상기 포인트가 최종적으로 산출되면, 상기 디스플레이 패널 상에서 상기 사용자 시선이 위치하는 포인트에 GUI 객체를 표시하기 위한 제어 신호를 상기 인터페이스를 통해 상기 디스플레이 장치로 전송할 수 있다.
또한, 상기 제어부는, 상기 추정된 위치를 나타내는 3차원 좌표값(x, y, z)과, 상기 추정된 자세를 나타내는 3차원 각도값(θx, θy, θz)을
Figure 112014086426971-pat00008
Figure 112014086426971-pat00009
Figure 112014086426971-pat00010
와 같은 수학식에 대입하여 상기 3차원 실좌표계에서의 사용자 시선 위치 좌표(x', y', z')를 산출하고,
상기 3차원 실좌표계에서의 상기 사용자 시선 위치 좌표(x', y', z')를
Figure 112014086426971-pat00011
Figure 112014086426971-pat00012
와 같은 수학식에 대입하여 상기 2차원 픽셀좌표계에서의 사용자 시선 위치 좌표(x", y")를 산출할 수 있다. 여기서 상기 뎁스 카메라의 해상도는 w1 x h1이고, 초점 거리는 f, 픽셀 사이즈는 p가 될 수 있다.
또한, 상기 제어부는, 상기 디스플레이 장치의 해상도가 w2 x h2이면,
Figure 112014086426971-pat00013
Figure 112014086426971-pat00014
와 같은 수학식을 이용하여 상기 디스플레이 장치의 디스플레이 상에서 상기 사용자 시선이 위치하는 포인트의 좌표(X, Y)를 산출할 수 있다.
이상과 같은 본 발명의 다양한 실시 예에 따르면, 주변의 조명에 상관없이 사용자의 시선을 추적하고 디스플레이 상에서 사용자가 바라보는 지점을 효과적으로 찾아낼 수 있다.
도 1은 본 발명의 일 실시 예에 따른 사용자 시선 추적 장치의 동작을 설명하기 위한 도면,
도 2는 본 발명의 일 실시 예에 따른 사용자 시선 추적 장치의 구성을 나타내는 블럭도,
도 3은 사용자의 시선 포인트에 따라 GUI 객체를 표시하는 방법을 설명하기 위한 도면,
도 4는 본 발명의 일 실시 예에 따른 사용자 시선 추적 방법을 설명하기 위한 흐름도,
도 5는 뎁스 맵으로부터 배경 영역을 제거하는 과정을 설명하기 위한 도면,
도 6은 좌표계 변환 과정을 설명하기 위한 도면,
도 7은 사용자 시선 추적 장치에 저장되는 소프트웨어 모듈의 구성을 나타내는 도면,
도 8 및 도 9는 본 발명의 다양한 실시 예에 따른 사용자 시선 추적 장치의 동작을 설명하기 위한 도면, 그리고,
도 10은 본 발명의 또 다른 실시 예에 따른 사용자 시선 추적 장치의 구성을 나타내는 블럭도이다.
이하에서, 첨부된 도면을 이용하여 본 발명에 대하여 구체적으로 설명한다.
도 1은 본 발명의 일 실시 예에 따른 사용자 시선 추적 장치의 동작을 설명하기 위한 도면이다. 도 1에 따르면, 사용자 시선 추적 장치(100)는 뎁스 카메라(110) 및 디스플레이 패널(120)을 모두 탑재한 하나의 디스플레이 장치로 구현될 수 있다. 즉, 사용자 시선 추적 장치(100) 자체가 디스플레이 장치에 내장될 수 있다.
도 1에서, 뎁스 카메라(110)는 디스플레이 장치(100)의 전(前) 방향, 즉, 디스플레이 패널(120) 방향으로 배치되어, 그 앞에 위치한 사용자(10)를 촬영할 수 있다. 사용자 시선 추적 장치(100)는 뎁스 카메라(110)에 의해 촬영된 뎁스 맵을 이용하여, 사용자가 디스플레이 패널(140)의 어느 포인트(P)를 보고 있는지 여부를 판단한다. 구체적으로는, 사용자 시선 추적 장치(100)는 뎁스 맵 내의 인물 영역에 포함된 얼굴의 위치 및 자세를 추정하고, 추정된 위치 및 자세를 이용하여, 3차원 실좌표계에서의 사용자 시선 위치를 산출할 수 있다. 그리고, 사용자 시선 추적 장치(100)는 산출된 사용자 시선 위치를 2차원 픽셀 좌표계에서의 사용자 시선 위치로 변환한 후, 디스플레이 패널(140)의 해상도를 고려하여, 사용자 시선이 위치하는 포인트(P)를 산출한다.
실시 예에 따라서는, 사용자 시선 추적 장치(100)는 뎁스 맵 내에서 배경 영역(background part)을 제거하여 인물 영역(men part)을 먼저 검출한 후, 검출된 인물 영역에서 얼굴 부분을 확인하여 위치 및 자세를 추정할 수도 있다. 또는, 사용자 시선 추적 장치(100)는 사용자 시선이 위치하는 포인트를 산출한 이후에, 뎁스 카메라와 디스플레이 패널의 해상도 차이로 인한 잡음의 영향을 제거하기 위하여 필터링할 수도 있다. 이와 같은 뎁스 맵 처리 과정에 대해서는 후술하는 부분에서 구체적으로 설명한다.
사용자 시선 추적 장치(100)는 디스플레이 패널(140) 상에서 사용자의 시선이 위치하는 포인트(P)가 확인되면, 그 포인트에 따라 다양한 인터랙션을 수행할 수 있다.
일 예로, 디스플레이 패널(140) 상에 디스플레이되는 컨텐츠나 광고 등에 대한 사용자의 관심 여부를 파악할 수 있다. 사용자 시선 추적 장치(100)는 사용자가 일정 시간 이상 해당 컨텐츠나 광고를 보고 있다고 판단되면, 그 컨텐츠 또는 광고를 사용자 선호 정보로 등록해 둘 수 있다. 또는, 사용자 시선 추적 장치(100)는 컨텐츠 내에 포함된 특정 오브젝트(예를 들어, 영화 배우 얼굴이나 가방, 시계 등)에 사용자 시선이 일정 시간 이상 위치한다고 판단되면, 그 오브젝트와 관련된 각종 상세 정보 또는 링크 메뉴를 디스플레이 패널(140) 내에 추가적으로 표시하여 줄 수도 있다. 또 다른 예로, 사용자 시선 추적 장치(100)는 사용자의 제스쳐, 목소리 등도 함께 입력받을 수 있다. 이 경우, 사용자 시선 추적 장치(100)는 사용자의 시선이 위치한 포인트와 함께, 사용자의 제스쳐, 목소리 등을 조합하여, 사용자의 의도를 파악하고, 이에 따른 인터랙션을 수행할 수 있다.
도 2는 본 발명의 일 실시 예에 따른 사용자 시선 추적 장치(100)의 구성을 나타내는 블럭도이다. 도 2에 따르면, 사용자 시선 추적 장치(100)는 뎁스 카메라(110), 디스플레이 패널(120), 저장부(130), 제어부(140)를 포함한다. 도 2의 사용자 시선 추적 장치(100)는 디스플레이 장치 내에 내장된 형태를 도시하였다. 일 예로, 사용자 시선 추적 장치(100)는 TV, 모니터, 키오스크, 전광판 등과 같은 다양한 장치로 구현될 수 있다.
뎁스 카메라(110)는 피사체를 촬영하여 뎁스 맵을 획득하기 위한 카메라이다. 뎁스 맵(depth map)에는 피사체의 RGB값 대신에 뎁스 카메라(110)로부터 피사체까지의 거리 정보, 즉, 깊이 값(depth value)이 포함된다.
저장부(130)는 뎁스 카메라(110)에 의해 촬영된 뎁스 맵을 저장한다. 저장부(130)는 실시 예에 따라 다양한 형태로 구현될 수 있다. 예를 들어, 저장부(130)는 버퍼, HDD(Hard Disk Drive), 플래시 메모리, 메모리 카드, 메모리 스틱 등과 같은 다양한 형태의 스토리지 중 적어도 하나를 포함할 수 있다.
제어부(140)는 사용자 시선 검출 장치(100)의 전반적인 동작을 제어하기 위한 구성요소이다. 제어부(140)는 특정 이벤트가 발생하면, 뎁스 카메라(110)를 제어하여 피사체를 촬영할 수 있다. 여기서 특정 이벤트란 사용자가 촬영 명령을 입력하는 이벤트, 디스플레이 패널(120)에서 임의의 컨텐츠가 디스플레이되는 이벤트, 사용자가 디스플레이 명령 또는 컨텐츠 변경 명령을 입력하는 이벤트, 뎁스 카메라(110)의 촬영 범위 이내로 사용자가 진입하는 이벤트, 촬영 범위 내에서 사용자가 움직이다가 일정 시간 이상 정지하는 이벤트, 기 설정된 시간 주기가 도래하는 이벤트 등과 같이 다양한 이벤트를 포함할 수 있다.
또한, 제어부(140)는 사용자 명령 또는 기 저장된 디폴트 코맨드에 따라 디스플레이 패널(120)에 임의의 컨텐츠를 디스플레이할 수 있다. 컨텐츠의 종류는 사용자 시선 검출 장치의 종류에 따라 다양하게 변경될 수 있다. 일 예로, 사용자 시선 검출 장치(100)가 일반 TV로 구현된 경우, 방송 화면, 컨텐츠 재생 화면, 인터넷 화면, 기능 설정 화면 등이 선택적으로 디스플레이될 수 있다. 또는, 사용자 시선 검출 장치(100)가 공공 장소에 설치된 키오스크나 광고 장치인 경우, 각종 안내 메시지나 광고 메시지 등이 디스플레이될 수도 있다.
제어부(140)는 뎁스 카메라(110)에 의해 촬영된 뎁스 맵을 분석해서, 디스플레이 패널(120) 상의 어떤 포인트에 사용자 시선이 위치하는지를 판단한다.
구체적으로는, 제어부(140)는 뎁스 맵에 포함된 인물 영역에서 얼굴 위치 및 자세를 추정한다. 제어부(140)는 추정된 얼굴 위치 및 자세를 이용하여 3차원 실좌표계에서의 사용자 시선 위치를 산출하고, 산출된 사용자 시선 위치를 2차원 픽셀 좌표계에서의 사용자 시선 위치로 변환한다.
제어부(140)는 2차원 픽셀 좌표계에서의 사용자 시선 위치가 산출되면, 디스플레이 패널(120)의 해상도를 고려하여 디스플레이 패널(120) 상에서 사용자 시선이 위치하는 포인트를 산출할 수 있다.
즉, 2차원 픽셀 좌표계는 뎁스 카메라에서 촬영된 뎁스 맵에 기초하여 산출한 것이므로 뎁스 카메라의 해상도에 따라 결정된다. 실제 사용자가 쳐다보는 디스플레이 패널(120)의 해상도는 뎁스 카메라의 해상도와 다를 수 있기 때문에, 이를 반영하여 실제 포인트를 산출한다. 또한, 이러한 해상도 차이로 인해 잡음의 영향을 크게 받을 수도 있다. 이러한 점을 고려하여, 제어부(140)는 칼만 필터(Kalman filter)를 이용하여, 산출된 포인트를 추가적으로 보정하여 줄 수도 있다. 이러한 포인트 산출 방법에 대해서는 후술하는 부분에서 구체적으로 설명한다.
제어부(140)는 사용자가 쳐다보고 있는 포인트가 산출되면, 그 포인트를 이용하여 다양한 사용자 인터랙션 동작을 수행할 수 있다.
도 3은 사용자 시선 검출 기술을 이용한 사용자 인터랙션 동작의 일 예를 나타낸다. 도 3에 따르면, 제어부(140)는 임의의 컨텐츠 화면(300)을 디스플레이 패널(140) 상에 디스플레이하고 있는 상태에서, 뎁스 카메라(110)를 제어하여 피사체의 뎁스 맵을 촬영한다. 제어부(140)는 상술한 바와 같이 뎁스 맵을 처리하여, 디스플레이 패널(140) 상에서 사용자가 쳐다보고 있는 포인트를 검출한다. 사용자가 보고 있는 포인트에는 커서(30)와 같은 GUI 객체가 표시될 수 있다. 실시 예에 따라서는, 커서(30)는 항상 표시될 수도 있고, 선택적으로 표시될 수도 있다. 가령, 제어부(140)는 평상시에는 커서(30)를 표시하지 않다가, 사용자 시선 추적 모드가 활성화되거나, 일정 시간 이상 한 포인트를 쳐다보는 등의 상황이 발생할 때만, 커서(30)를 표시할 수도 있다. 도 3에서는 사용자가 P1(X1, Y1)을 보다가 P2(X2, Y2)으로 시선을 옮긴 상태를 나타낸다.
제어부(140)는 사용자가 옮긴 포인트 P2에 표시되고 있는 오브젝트(object)를 분석한다. 도 3에서는 컨텐츠 화면(300) 내에서 특정 출연자(310)의 얼굴 부분을 쳐다보고 있는 상황을 도시하였다.
제어부(140)는 디스플레이 패널(140)에 표시되는 화면 프레임과 사용자 시선 포인트를 비교하여, 어떠한 객체 또는 메뉴가 선택되었는지 판단할 수 있다. 예를 들어, 컨텐츠 화면(300) 내에서 특정 포인트(P2)가 검출되었다면, 제어부(140)는 해당 컨텐츠를 구성하는 전체 비디오 프레임 중 동일 시점의 타임 스탬프를 가지는 비디오 프레임을 파싱하여, 그 비디오 프레임 내에 포함되는 각 오브젝트의 에지를 검출한다. 제어부(140)는 검출된 에지의 형태를 분석하여, 사람인지 아니면 제품인지 여부를 판단한다. 만약, 각 비디오 프레임의 타임 스탬프 별로 등장 인물이나 제품 정보를 매칭시킨 메타 데이터가 존재한다면, 제어부(140)는 메타 데이터를 이용하여 오브젝트의 종류를 판단할 수도 있다.
도 3에 도시된 예에서와 같이, 사용자가 출연자(310)를 일정 시간 이상 쳐다보면, 제어부(140)는 해당 출연자(310)와 관련된 정보를 인터넷 등을 통해 검색하여, 검색 결과 화면(320)을 일측에 디스플레이할 수 있다. 검색 결과 화면(320)는 GUI 객체로 구성될 수 있다. 도 3에서는 출연자의 이름, 나이 등과 같은 각종 상세 정보(321)와 함께, 그 출연자가 나왔던 다른 컨텐츠를 선택할 수 있는 메뉴(322, 323)들이 표시되는 상태를 도시하였으나, 그 레이아웃 및 표시되는 정보의 종류는 다양하게 변형될 수 있다.
제어부(140)는 검색 결과(320) 내에서 하나의 메뉴(322)로 사용자의 시선이 옮겨졌다고 판단되면, 해당 메뉴(322)에 대응되는 결과 화면(330)을 디스플레이한다. 제어부(140)는 GUI 객체의 위치 정보와 포인트 좌표를 비교하여 사용자가 어떤 메뉴를 쳐다보았는지 바로 판단할 수 있다.
도 3과 같이, 사용자가 "영화 1"(322) 메뉴를 쳐다보았다면, 제어부(140)는 해당 영화에 대한 미리 보기 화면과 함께 그 영화를 재생할 수 있는 재생 메뉴(331) 및 선택을 취소하기 위한 메뉴(332)를 표시할 수 있다. 이러한 상태에서, 사용자가 재생 메뉴(331)를 일정 시간 이상 쳐다보았다면, 제어부(140)는 영화 1을 재생하여 그 재생 화면(340)을 디스플레이한다.
도 3에서는 사용자가 사람, 즉, 출연자(310)를 쳐다본 경우를 도시하였으나, 일반 사물을 쳐다볼 수도 있다. 예를 들어, 출연자(310)가 착용한 장신구나 가방, 구두, 옷 등을 쳐다보았다고 판단되는 경우, 제어부(140)는 그 사물에 대한 광고 정보나 안내 정보 등을 디스플레이할 수 있다. 이 경우, 추가로 디스플레이되는 광고 정보 영역 또는 안내 정보 영역에는 제품 구입을 위한 각종 메뉴가 표시될 수도 있다. 이와 같이, 제어부(140)는 사용자 시선이 위치하는 포인트에 따라, 다양한 인터랙션 동작을 수행할 수 있다.
도 3에서는 컨텐츠 화면상에서 이루어지는 인터랙션 동작을 설명하였으나, 인터랙션 동작의 예는 반드시 이에 한정되는 것은 아니다. 즉, 제어부(140)는 각종 워드 프로그램의 재생 화면이나, 웹 브라우저 화면 등을 디스플레이 패널(120)에 디스플레이하고 있는 상태에서도, 사용자 시선에 따라 커서(30)를 화면에 중첩시켜 표시할 수 있다.
또한, 일정 시간 이상 하나의 포인트를 쳐다보고 있으면, 제어부(140)는 해당 포인트에 표시되어 있던 오브젝트에 대한 간단한 설명 창을 팝업 형태로 제공하여 줄 수도 있다. 이러한 인터랙션 동작은 사용자 시선 검출 장치의 종류나 그 사용 환경, 사용 용도 등에 따라 다양하게 변형될 수 있다. 가령, 키오스크나 대형 전광판에 사용되는 경우에는 좀 더 다양한 인터랙션 동작을 수행할 수도 있다. 이러한 인터랙션 동작의 예들에 대해서는 후술하는 부분에서 다시 구체적으로 설명한다.
도 4는 사용자 시선 검출 방법을 구체적으로 설명하기 위한 흐름도이다. 도 4에 따르면, 사용자 시선 검출 장치는 디스플레이 패널 방향으로 배치된 뎁스 카메라로 촬영을 수행하여 뎁스 맵을 획득한다(S410). 사용자 시선 검출 장치는 도 1 및 2에 도시된 바와 같이 디스플레이 장치 내에 디스플레이 패널과 함께 내장될 수도 있지만, 서로 독립적인 장치로 구현될 수도 있다. 본 사용자 시선 검출 방법은 이러한 실시 예들에서 공통적으로 구현될 수 있다.
뎁스 맵이 획득되면, 사용자 시선 검출 장치는 뎁스 맵 내에서 인물 영역을 제외한 배경 영역을 제거한다(S420). 배경 영역까지 모두 포함하고 있는 뎁스 맵으로부터 바로 사용자의 시선을 검출할 수도 있지만, 본 실시 예에서는, 주위 배경으로 인한 오동작을 방지하고 얼굴 위치 및 자세를 좀 더 정확하게 추정하기 위해서, 배경 영역을 제거한 상태에서 사용자 시선을 검출한다.
배경 영역 제거는 기 설정된 임계치를 기준으로 실행될 수 있다. 뎁스 맵에 포함된 깊이 값은 뎁스 카메라(110)와 가까울수록 작은 값으로 표현되고, 멀수록 큰 값으로 표현된다. 사용자 시선 검출 장치는 임계치보다 큰 픽셀은 전부 블랙값으로 표현하여, 배경 영역을 제거한다. 임계치는 뎁스 카메라(110)와 피사체와의 통상적인 거리를 반복 실험을 통해 측정하여 사용할 수 있다. 이러한 임계치는 디스플레이 장치의 종류에 따라 달라질 수 있다. 가령, TV인 경우, 일반적으로 사용자가 TV로부터 1 ~ 4 미터 사이에 위치하므로, 4미터를 임계치로 설정할 수 있다. 반면, 쇼핑 몰에서 사용하는 광고 판이나 키오스크(kiosk)인 경우, 사용자가 3 ~ 7미터 정도 떨어진 위치에서 시청한다면, 7미터를 임계치로 설정할 수 있다.
도 5는 배경 영역을 제거하는 과정을 설명하기 위한 도면이다. 도 5에 따르면, 획득한 뎁스 맵(510)은 인물 영역(511) 및 배경 영역(512)으로 구성된다. 배경 영역(512)은 사용자의 후방 사물의 형태, 개수, 위치 등에 따라 다양한 깊이 값을 가지는 픽셀로 구성된다. 사용자 시선 검출 장치는 임계치를 기준으로 임계치보다 큰 깊이 값을 가지는 픽셀은 블랙 픽셀로 대체하고, 임계치보다 낮은 깊이 값을 가지는 픽셀은 화이트 픽셀로 대체하여, 배경 영역(512)이 제거된 뎁스 맵(520)을 획득한다. 도 5에 따르면, 변경된 뎁스 맵(520)은 인물 영역(521)이 화이트 픽셀로 구성되고, 배경 영역(521)은 전부 블랙 픽셀로 구성되고 있음을 알 수 있다.
다시 도 4에 대한 설명으로 돌아가면, 사용자 시선 검출 장치는 배경 영역이 제거된 뎁스 맵의 인물 영역에서 얼굴의 위치 및 자세를 추정한다(S430). 추정 방법으로는 다양한 알고리즘이 사용될 수 있다. 본 실시 예에서는 학습 데이터의 양이 증가함에도 효율적으로 학습이 가능하며 실시간 동작이 가능한 랜덤 포레스트 분류기를 이용하여 추정할 수 있다.
얼굴 위치 및 자세가 추정되면, 사용자 시선 검출 장치는 3차원 실좌표계에서의 사용자 위치를 산출하고(S440), 산출된 위치를 2차원 픽셀 좌표계로 변환한다(S450).
3차원 실좌표계란 사용자가 위치하는 실제 3차원 공간에서의 얼굴 위치 및 자세를 나타내는 좌표계이다. 구체적으로는, 뎁스 카메라(110)의 위치를 (0, 0, 0)으로 두었을 때, 실제 사용자가 존재하는 공간 상의 좌표로서, 단위는 mm가 될 수 있다.
2차원 픽셀 좌표계는 2차원 평면 상에서의 사용자 얼굴 위치 및 자세를 표현하기 위한 좌표계이다. 구체적으로는 획득한 뎁스 맵 또는 디스플레이 영상에서의 좌표를 의미하며, 좌측 상단을 (0, 0)으로 하며, 단위는 픽셀 단위가 된다.
뎁스 맵으로부터 추정된 얼굴 위치를 3차원 좌표값(x, y, z)이라고 하고, ㅊ추정된 자세를 3차원 각도값(θx, θy, θz)으로 가정하면, 하기 수학식 1을 이용하여 3차원 실좌표계에서의 사용자 시선 위치 좌표(x', y', z')를 산출할 수 있다.
Figure 112014086426971-pat00015
Figure 112014086426971-pat00016
Figure 112014086426971-pat00017
사용자 시선 검출 장치는, 수학식 1을 이용하여 검출한 사용자 시선 위치 좌표(x', y', z')를 하기 수학식 2에 대입하여 2차원 픽셀 좌표계의 좌표(x", y")로 변환할 수 있다.
Figure 112014086426971-pat00018
Figure 112014086426971-pat00019
여기서, w1은 뎁스 카메라의 가로 해상도, h1은 뎁스 카메라의 세로 해상도, f는 초점 거리, p는 픽셀 사이즈를 나타낸다.
사용자 시선 검출 장치는, 2차원 픽셀좌표계에서의 사용자 시선 위치 좌표(x", y")를 이용하여 디스플레이 패널 상의 시선 포인트를 산출한다(S460).
예를 들어, 뎁스 카메라의 해상도가 w1 x h1이고, 디스플레이 장치의 해상도가 w2 x h2라고 가정하면, 디스플레이 패널 상의 시선 포인트의 좌표(X, Y)는 다음과 같은 수학식으로 표현될 수 있다.
Figure 112014086426971-pat00020
Figure 112014086426971-pat00021
도 6은 사용자 시선 포인트를 산출하는 과정을 구체적으로 설명하기 위한 도면이다. 도 6에서 (a)는 3차원 실좌표계를 나타내고, (b)는 2차원 픽셀 좌표계를 나타낸다.
도 6의 (a)에 따르면, 추정된 얼굴 좌표 P1(x,y,z)은 실좌표계에서의 좌표 P2(x', y', z')로 변환된다. 사용자 시선 검출 장치는 실좌표계에서의 좌표 P2를 2차원 픽셀 좌표계에서의 포인트 P3(x", y")로 변환한 후, 이를 다시 디스플레이 해상도에 맞는 포인트 P4(X, Y)로 변환한다.
이와 같이, 디스플레이 패널(120) 상에서의 시선 포인트가 산출되면, 사용자 시선 검출 장치는, 산출된 포인트에 대하여 보정을 수행한다(S470). 일반적으로 뎁스 카메라(110)의 해상도가 640x480인 반면, 실제 사용되는 디스플레이 패널의 해상도는 Full-HD 또는 4K 정도의 해상도를 가지게 된다. 이러한 해상도의 차이로 인하여 잡음의 영향을 크게 받게 된다. 본 실시 예에서는 이러한 잡음의 영향을 해결하기 위하여, 계산된 시선 포인트에 칼만 필터를 적용하여 보정을 수행한다.
도 7은 상술한 사용자 시선 검출 방법을 수행하기 위한 소프트웨어 모듈 구성의 일 예를 설명하기 위한 도면이다. 도 7에 따르면, 저장부(130)에는 데이터 검출 모듈(131), 헤드 포즈(head pose) 추정 모듈(132), 시선 추적 모듈(133), 보정 처리 모듈(134), 디스플레이 처리 모듈(135) 등과 같은 다양한 소프트웨어 모듈이 저장될 수 있다.
데이터 검출 모듈(131)은 뎁스 카메라(110)에서 촬영된 촬영 데이터에 대해 기 설정된 임계치 정보(131-1)를 적용하여 배경 영역을 제거하여, 인물 영역을 부각시킨 뎁스 맵을 생성한다. 생성된 뎁스 맵은 저장부(130) 내부 또는 외부에 마련된 이미지 메모리(미도시)에 저장될 수 있다.
헤드 포즈 추정 모듈(132)은 랜덤 포레스트(random forest) 처리 모듈(132-1)을 이용하여 뎁스 맵 내의 얼굴 영역의 위치 및 자세를 추정하기 위한 소프트웨어 모듈이다.
시선 추적 모듈(133)은 추정된 위치 및 자세에 대해 지오메트릭 모델(geometric model)(133-1)을 적용하여 사용자 시선이 머무는 포인트를 산출하기 위한 소프트웨어 모듈이다. 포인트 산출 방식에 대해서는 상술한 부분에서 구체적으로 설명한 바 있으므로, 중복 설명은 생략한다.
보정 처리 모듈(134)은 시선 추적 모듈(133)에서 산출한 포인트에 대해 칼만 필터(134-1)를 적용하여 포인트 좌표를 보정하는 소프트웨어 모듈이다.
저장부(130)에 저장된 각 소프트웨어 모듈은 제어부(140)에 의해 실행될 수 있다. 도 7의 예에 따르면, 제어부(140)는 CPU(141) 및 메모리(142)를 포함한다.
CPU(141)는 저장부(130)에 저장된 각 소프트웨어 모듈을 메모리(142)에 복사하고, 그 복사된 소프트웨어 모듈을 실행시켜 상술한 사용자 시선 검출 방법을 실행할 수 있다. 그 밖에, CPU(141)는 디스플레이 처리 모듈(135)을 실행시켜, 디스플레이 패널(120) 상에 다양한 화면을 디스플레이할 수 있다.
구체적으로는, CPU(141)는 디스플레이 패널 상에서 사용자 시선이 위치하는 포인트에 각종 GUI 객체를 표시할 수 있다.
한편, 상술한 다양한 실시 예들에서는 사용자 시선 검출 장치가 디스플레이 장치에 내장된 경우를 기준으로 설명하였으나, 사용자 시선 검출 장치는 디스플레이 장치와 별도의 장치로 설계될 수도 있다. 일 예로, 사용자 시선 검출 장치는 외부 디스플레이 장치와 연결되는 PC, 랩탑 PC, 휴대폰, PDA 등과 같은 사용자 단말 장치로 구현될 수 있다.
도 8은 디스플레이 장치에 내장되지 않은 사용자 시선 검출 장치의 인터랙션 동작의 일 예를 나타낸다.
도 8에 따르면, 디스플레이 장치(820)와 사용자 시선 검출 장치(800), 뎁스 카메라(810)는 각각 별도의 독립적인 장치로 구현되어 서로 연결될 수 있다. 도 8에서는 디스플레이 장치(820)가 대형 전광판이고, 뎁스 카메라(810)는 그 전광판 상부 중앙에 설치된 상태를 도시하였다.
이 경우, 사용자 시선 검출 장치(800)는 뎁스 카메라에서 촬영된 뎁스 맵을 저장하기 위한 저장부와, 그 뎁스 맵을 이용하여 사용자의 시선 포인트를 산출하는 제어부만을 포함하는 형태로 구현될 수 있다.
도 8의 시스템에 따르면, 디스플레이 장치(820), 뎁스 카메라(810)는 각각 사용자 시선 검출 장치(800)와 무선 또는 유선 인터페이스를 통해 연결되어 각종 신호를 송수신한다. 사용자 시선 검출 장치(800)는 디스플레이 장치(820), 뎁스 카메라(810) 등과 같은 외부 장치와 통신을 수행하기 위한 다양한 인터페이스를 포함할 수 있다.
구체적으로는 뎁스 카메라(810)가 촬영한 촬영 데이터는 사용자 시선 검출 장치(800)로 제공된다. 사용자 시선 검출 장치(800)는 제공된 촬영 데이터를 내부 버퍼(미도시)에 저장하고, 이를 이용하여 디스플레이 장치(820) 상에서의 시선 포인트를 산출한다. 포인트 산출 방법에 대해서는 상술한 부분에서 이미 구체적으로 설명하였으므로 중복 설명은 생략한다. 한편, 정확한 포인트 산출을 위해서 사용자 시선 검출 장치(800)는 디스플레이 장치(820)의 해상도 정보, 뎁스 카메라(810)의 해상도 정보 각각을 미리 제공받아 저장하고 있을 수 있다.
사용자 시선 검출 장치(800)는 포인트가 산출되면, 그 산출된 포인트에 GUI 객체를 표시하도록 하는 제어 신호를 인터페이스를 통해 디스플레이 장치(820)로 전송할 수 있다.
이 경우, 사용자 시선 검출 장치(800)의 제어부는, 사용자 시선 포인트의 위치에 따라 상이한 내용의 GUI 객체를 표시하도록 디스플레이 장치(820)를 제어할 수 있다. 즉, GUI 객체의 위치, 형태, 컬러, 크기, 내용 등은 포인트 별로 상이하게 변경될 수 있다. 도 8에서는 사용자(10)가 P1을 보고 있을 때는 P1에 대응되는 제1 GUI 객체(821)가 표시되고, P2를 보고 있을 때는 이와 다른 제2 GUI 객체(822)가 표시되고 있음을 나타낸다. 일 예로, 중심을 기준으로 좌측에 위치한 P1을 바라보았을 때는 최신 상품 정보를 나타내는 제1 GUI 객체(821)를 표시하고, 우측의 P2를 바라보았을 때는 할인 정보를 나타내는 제2 GUI 객체(822)를 표시할 수 있다.
한편, 도 8의 디스플레이 장치(820)는 투명 디스플레이로 구현될 수도 있다. 이 경우, 시선 방향에 놓여진 내부 진열품의 종류에 따라 GUI 객체의 내용이 달라질 수도 있다. 가령, P1 방향에 운동화가 놓여져 있다면, 운동화 명칭, 가격, 할인 정보 등을 포함하는 제1 GUI 객체(821)가 P1에 표시될 수 있다. 반면, P2 방향에 옷이 걸려 있다면, 그 옷에 해당하는 상세 정보를 포함하는 제2 GUI 객체(822)가 P2에 표시될 수도 있다.
한편, 이상과 같은 다양한 실시 예들에서는, 사용자가 쳐다본 객체 또는 메뉴의 종류에 따라 특정 동작이 자동으로 실행되는 인터랙션을 설명하였으나, 별다른 동작을 수행하지 않고, 사용자의 시선 포인트를 사용자의 관심 분야나 관심 컨텐츠를 파악하기 위한 용도로 사용할 수도 있다. 가령, 사용자가 다수의 옷을 여러번 바라보았다면, 사용자가 패션에 관심이 있다고 파악하여, 사용자 정보를 업데이트할 수도 있다. 업데이트된 사용자 정보는 이후에 다른 어플리케이션 수행 시에 활용될 수 있다.
또한, 상술한 다양한 실시 예들에서는 하나의 사용자만이 존재하는 경우를 도시하였으나 반드시 이러한 환경에서만 적용되는 것은 아니다. 가령, 복수의 사용자가 감지되는 경우, 사용자 시선 검출 장치는 각 사용자별로 시선을 검출하여, 서로 다른 GUI 객체를 디스플레이할 수도 있다. 도 9는 이러한 인터랙션 방법을 설명하기 위한 도면이다.
도 9에 따르면, 3명의 사용자(11, 12, 13)들이 디스플레이 장치(820)를 보고 있는 경우, 사용자 시선 검출 장치(800)는 각 사용자들의 시선을 추적하여, 디스플레이 장치(820) 상에서 시선이 위치하는 포인트를 각각 검출한다. 사용자 시선 검출 장치(800)는 각 포인트별로 서로 다른 화면(910, 920, 930)을 디스플레이한다. 이 경우, 각 사용자는 하나의 디스플레이 장치(820)를 공통적으로 사용하면서 서로 자신이 원하는 화면을 볼 수 있다. 본 실시 예는 대형 전광판 또는 스크린을 이용하는 환경에서 활용될 수 있다. 예를 들어, 극장에 설치된 디스플레이 장치(100)의 경우, 다수의 사용자들이 그 화면 내의 다양한 컨텐츠를 바라보면, 사용자 시선 검출 장치(800)는 각 사용자가 쳐다보는 컨텐츠에 대한 예고 영상, 예약 현황 등을 그 시선 포인트 위치에 표시하여 줄 수 있다.
이상과 같은 실시 예들에서 뎁스 카메라는 하나만 사용하는 것처럼 도시 및 설명하였으나, 반드시 이에 한정되는 것은 아니다. 즉, 디스플레이 사이즈가 큰 디스플레이 장치의 경우, 화각을 고려하여 다수의 뎁스 카메라를 가로 방향으로 정렬시켜 사용할 수 있다. 예를 들어 도 9와 같은 환경의 경우, 사용자가 많으면 하나의 뎁스 카메라로 전부 촬영할 수 없다. 이러한 환경에서는 뎁스 카메라를 다수 설치할 수 있다.
한편, 이상과 같은 실시 예들에서는 사용자 시선 검출 장치가 뎁스 카메라만을 이용하여 사용자 시선을 검출하는 것으로 설명하였으나, 반드시 이에 한정되는 것은 아니다. 즉, 본 발명의 또 다른 예에 따르면, 사용자 시선 검출 장치는 뎁스 카메라 뿐만 아니라 일반 RGB 카메라도 함께 이용하여 사용자의 사진 이미지를 촬영할 수 있다. 사용자 시선 검출 장치는 뎁스 카메라에 의해 촬영한 뎁스 맵과, 일반 카메라를 이용하여 촬영한 사진 이미지를 조합하여, 사용자의 시선을 보다 정확하게 검출할 수도 있다.
이 밖에, 사용자 시선 검출 장치는 사용자 시선뿐만 아니라 사용자의 제스쳐나 음성, 버튼 조작 등과 같은 다양한 입력을 함께 조합하여 사용자의 의도를 파악할 수도 있다. 도 10은 이러한 실시 예에 따른 사용자 시선 검출 장치의 구성을 나타내는 도면이다.
도 10에 따르면, 사용자 시선 검출 장치(1000)는 뎁스 카메라(1010), 카메라(1020), 마이크(1030), 제어부(1040), 저장부(1050), 리모콘 신호 수신부(1060)을 포함한다.
뎁스 카메라(1010)는 뎁스 맵을 촬영하고, 저장부(1050)는 그 뎁스 맵을 저장한다. 제어부(1040)는 저장된 뎁스 맵을 이용하여 디스플레이 패널 상의 사용자 시선 포인트를 검출한다. 디스플레이 패널은 사용자 시선 검출 장치(1000)에 구비된 것일 수도 있으나, 반드시 이에 한정되는 것은 아니다. 즉, 도 8 및 도 9에 도시된 바와 같이, 외부의 디스플레이 장치에 대한 사용자 시선 포인트를 검출할 수도 있다. 포인트 검출 방법은 상술한 다양한 실시 예에서 구체적으로 설명한 바 있으므로 중복 설명은 생략한다.
카메라(1020)는 피사체를 촬영하여 사진 이미지를 획득하기 위한 구성요소이다. 제어부(1040)는 카메라(1020)에서 촬영된 사진 이미지를 분석하여, 사용자의 제스쳐를 판단한다. 구체적으로는 제어부(1040)는 연속적으로 촬영된 복수의 사진 이미지 내에서 서로 매칭되는 픽셀을 검출하고, 그 픽셀의 좌표를 비교하여 사진 이미지 내의 객체의 움직임을 분석한다. 예를 들어, 사용자가 손을 들어 흔드는 제스쳐를 취하는 경우, 손바닥에 해당하는 픽셀 값을 가지는 픽셀 좌표가 이미지 좌측 및 우측 방향으로 교번적으로 이동하는 움직임 벡터가 검출될 수 있다. 이와 같이, 제어부(1040)는 사진 이미지 내의 각 픽셀 값 및 그 위치 좌표를 이용하여, 사용자가 어떠한 제스쳐를 취하는지 판단할 수 있다.
마이크(1030)는 사용자가 말한 음성 신호를 입력받기 위한 구성요소이다. 제어부(1040)는 마이크(1030)를 통해 입력된 음성 신호를 분석하여, 사용자의 의도를 판단한다. 구체적으로는, 제어부(1040)는 입력된 음성 신호의 주파수를 분석하여 특징을 추출하고, 추출된 특징을 이용하여 음성 신호를 세그먼테이션(segmentation)하여 자음 및 모음을 인식한다. 제어부(1040)는 인식된 자음 및 모음을 단어 사전에 기초하여 조합하여 단어를 추출할 수 있다. 제어부(1040)는 동적정합법(Dynamic time warping method), 은닉 마코프모델(Hidden Markov Model), 신경망(Neural Network) 등과 같은 다양한 인식 알고리즘 중 적어도 하나를 사용하여 사용자의 음성을 인식할 수 있다. 추출된 단어가 기 정의된 음성 코맨드인 경우, 제어부(1040)는 그 음성 코맨드에 대응되는 동작을 수행할 수 있다. 반면, 사용자 음성이 정의되지 않은 임의의 텍스트를 발음한 것이라면, 제어부(1040)는 그 텍스트에 대응되는 응답 동작을 수행한다.
리모콘 신호 수신부(1060)는 외부의 리모콘으로부터 전송되는 리모콘 신호를 수신하기 위한 구성요소이다. 실시 예에 따라, 리모콘 신호 수신부(1060)는 IR 신호를 수신하기 위한 IR 수신부, RF 신호 수신 회로, 블루투스 모듈 등과 같이 다양한 형태로 구현될 수 있다.
제어부(1040)는 뎁스 맵으로부터 산출한 사용자의 시선 포인트의 위치 뿐만 아니라, 카메라(1020)에서 촬영한 사진 이미지로부터 인식되는 사용자의 제스쳐, 마이크(1030)를 통해 입력된 음성 신호로부터 인식된 사용자 음성 내용, 리모콘 신호 수신부(1060)를 통해 수신된 리모콘 신호의 종류 등을 함께 조합하여, 인터랙션을 수행할 수 있다.
예를 들어, 사용자가 화면상의 하나의 메뉴를 보고 있는 상태에서 손을 들어 허공에서 앞으로 뻗거나, 손가락을 오므려 동그라미 표시를 하는 등의 기 정의된 제스쳐를 취하는 경우, 제어부(1040)는 그 메뉴가 선택된 것으로 판단할 수 있다. 또는, 사용자가 화면상의 하나의 메뉴를 보고 있는 상태에서 사용자가 "확인"이나 "OK"등과 같은 기 정의된 음성 명령어를 발화하거나, 리모콘의 OK 버튼을 누르는 경우에도, 제어부(1040)는 그 메뉴가 선택된 것으로 판단할 수 있다.
도 10에서는 제스쳐 인식 기술, 음성 인식 기술, 리모콘 제어 기술 등이 모두 함께 조합되는 것으로 도시 및 설명하였으나, 사용자 시선 검출 장치(1000)의 종류나 사용 환경 등에 따라 이들 기술 중 하나 또는 일부만이 사용될 수도 있다.
이상과 같은 다양한 실시 예들에 따르면, 주변의 조명과 상관없이 정확하고 효율적으로 사용자의 시선 포인트를 추적할 수 있다. 이에 따라, 광고나 컨텐츠에 대한 사용자의 관심 여부를 파악하여 그에 따른 다양한 인터랙션 동작을 수행할 수 있다. 또한, 키보드나 마우스 등과 같은 입력 수단이 없더라도 자연스러운 인터랙션이 수행될 수 있다.
이상과 같은 다양한 사용자 시선 검출 방법을 수행하기 위한 프로그램은 다양한 유형의 비일시적 판독 가능 매체(non-transitory readable medium)에 저장되어 사용될 수 있다.
비일시적 판독 가능 매체란 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 각종 프로세서에 의해 액세스되어 판독(reading) 가능한 매체를 의미한다. 구체적으로는, CD, DVD, 하드 디스크, 블루레이 디스크, USB, 메모리카드, ROM 등이 될 수 있다.
또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.
100 : 사용자 시선 검출 장치 110 : 뎁스 카메라
120 : 디스플레이 패널 130 : 저장부
140 : 제어부

Claims (12)

  1. 디스플레이 장치의 디스플레이 패널 방향으로 배치된 뎁스 카메라(depth camera)로 촬영을 수행하여 뎁스 맵(depth map)을 획득하는 단계;
    상기 뎁스 맵 내에서 인물 영역을 제외한 배경 영역을 제거하는 단계;
    상기 인물 영역 내에서 얼굴의 위치 및 자세를 추정하는 단계;
    상기 추정된 위치 및 자세를 이용하여, 3차원 실좌표계에서의 사용자 시선 위치를 산출하고, 상기 사용자 시선 위치를 2차원 픽셀 좌표계에서의 사용자 시선 위치로 변환하는 변환 단계;
    상기 디스플레이 패널의 해상도 및 상기 2차원 픽셀 좌표계에서의 사용자 시선 위치를 이용하여, 상기 디스플레이 패널 상에서 사용자 시선이 위치하는 포인트를 산출하는 시선 검출 단계;를 포함하고,
    상기 변환 단계는,
    상기 추정된 위치를 나타내는 3차원 좌표값(x, y, z)과, 상기 추정된 자세를 나타내는 3차원 각도값(θx, θy, θz)을
    Figure 112016037597529-pat00046

    Figure 112016037597529-pat00047

    Figure 112016037597529-pat00048

    와 같은 수학식에 대입하여 상기 3차원 실좌표계에서의 사용자 시선 위치 좌표(x', y', z')를 산출하고,
    상기 3차원 실좌표계에서의 상기 사용자 시선 위치 좌표(x', y', z')를
    Figure 112016037597529-pat00049

    Figure 112016037597529-pat00050

    와 같은 수학식에 대입하여 상기 2차원 픽셀좌표계에서의 사용자 시선 위치 좌표(x", y")를 산출하며, 여기서 상기 뎁스 카메라의 해상도는 w1 x h1이고, 초점 거리는 f, 픽셀 사이즈는 p인, 사용자 시선 검출 방법.
  2. 제1항에 있어서,
    칼만 필터(Kalman filter)를 이용하여 상기 산출된 포인트를 보정하는 단계;를 더 포함하는 사용자 시선 검출 방법.
  3. 제2항에 있어서,
    상기 디스플레이 패널 상에서 상기 사용자 시선이 위치하는 포인트에 GUI 객체를 표시하는 단계;를 더 포함하는 사용자 시선 검출 방법.
  4. 삭제
  5. 제1항에 있어서,
    상기 시선 검출 단계는,
    상기 디스플레이 장치의 해상도가 w2 x h2이면,
    Figure 112016037597529-pat00027

    Figure 112016037597529-pat00028

    와 같은 수학식을 이용하여 상기 디스플레이 패널 상에서 상기 사용자 시선이 위치하는 포인트의 좌표(X, Y)를 산출하는 것을 특징으로 하는 사용자 시선 검출 방법.
  6. 사용자 시선 검출 장치에 있어서,
    디스플레이 장치의 디스플레이 패널 방향으로 배치된 뎁스 카메라에 의해 촬영된 뎁스 맵을 저장하는 저장부;
    상기 뎁스 맵에서 인물 영역을 제외한 배경 영역을 제거하고, 상기 인물 영역 내에서 얼굴 위치 및 자세를 추정하며, 추정된 얼굴 위치 및 자세를 이용하여 3차원 실좌표계에서의 사용자 시선 위치를 산출하고, 상기 사용자 시선 위치를 2차원 픽셀 좌표계에서의 사용자 시선 위치로 변환하며, 상기 디스플레이 장치의 해상도 및 상기 2차원 픽셀 좌표계에서의 사용자 시선 위치를 이용하여, 상기 디스플레이 패널 상에서 사용자 시선이 위치하는 포인트를 산출하는 제어부;를 포함하고,
    상기 제어부는,
    상기 추정된 위치를 나타내는 3차원 좌표값(x, y, z)과, 상기 추정된 자세를 나타내는 3차원 각도값(θx, θy, θz)을
    Figure 112016037597529-pat00051

    Figure 112016037597529-pat00052

    Figure 112016037597529-pat00053

    와 같은 수학식에 대입하여 상기 3차원 실좌표계에서의 사용자 시선 위치 좌표(x', y', z')를 산출하고,
    상기 3차원 실좌표계에서의 상기 사용자 시선 위치 좌표(x', y', z')를
    Figure 112016037597529-pat00054

    Figure 112016037597529-pat00055

    와 같은 수학식에 대입하여 상기 2차원 픽셀좌표계에서의 사용자 시선 위치 좌표(x", y")를 산출하며, 여기서 상기 뎁스 카메라의 해상도는 w1 x h1이고, 초점 거리는 f, 픽셀 사이즈는 p인, 사용자 시선 검출 장치.
  7. 제6항에 있어서,
    상기 제어부는,
    상기 포인트가 산출되면, 칼만 필터를 이용하여 상기 산출된 포인트를 보정하는 것을 특징으로 하는 사용자 시선 검출 장치.
  8. 제7항에 있어서,
    상기 사용자 시선 검출 장치는,
    상기 디스플레이 장치에 내장되며,
    상기 제어부는,
    상기 포인트가 최종적으로 산출되면, 상기 디스플레이 장치의 상기 디스플레이 패널을 제어하여 상기 사용자 시선이 위치하는 포인트에 GUI 객체를 표시하는 사용자 시선 검출 장치.
  9. 제7항에 있어서,
    별도로 마련된 상기 디스플레이 장치와 통신을 수행하기 위한 인터페이스;를 더 포함하며,
    상기 제어부는,
    상기 포인트가 최종적으로 산출되면, 상기 디스플레이 패널 상에서 상기 사용자 시선이 위치하는 포인트에 GUI 객체를 표시하기 위한 제어 신호를 상기 인터페이스를 통해 상기 디스플레이 장치로 전송하는 사용자 시선 검출 장치.
  10. 삭제
  11. 제6항에 있어서,
    상기 제어부는,
    상기 디스플레이 장치의 해상도가 w2 x h2이면,
    Figure 112016037597529-pat00034

    Figure 112016037597529-pat00035

    와 같은 수학식을 이용하여 상기 디스플레이 장치의 디스플레이 상에서 상기 사용자 시선이 위치하는 포인트의 좌표(X, Y)를 산출하는 것을 특징으로 하는 사용자 시선 검출 장치.
  12. 프로세서에 의해 처리되어 제1항 내지 제3항 및 제5항 중 어느 한 항에 따른 사용자 시선 검출 방법을 실행하기 위하여, 기록 매체에 저장된 컴퓨터 프로그램.

KR1020140120825A 2014-09-12 2014-09-12 사용자 시선을 검출하기 위한 사용자 시선 검출 장치 및 그 방법과, 그 방법을 실행하기 위한 컴퓨터 프로그램 KR101647969B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140120825A KR101647969B1 (ko) 2014-09-12 2014-09-12 사용자 시선을 검출하기 위한 사용자 시선 검출 장치 및 그 방법과, 그 방법을 실행하기 위한 컴퓨터 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140120825A KR101647969B1 (ko) 2014-09-12 2014-09-12 사용자 시선을 검출하기 위한 사용자 시선 검출 장치 및 그 방법과, 그 방법을 실행하기 위한 컴퓨터 프로그램

Publications (2)

Publication Number Publication Date
KR20160031183A KR20160031183A (ko) 2016-03-22
KR101647969B1 true KR101647969B1 (ko) 2016-08-12

Family

ID=55644675

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140120825A KR101647969B1 (ko) 2014-09-12 2014-09-12 사용자 시선을 검출하기 위한 사용자 시선 검출 장치 및 그 방법과, 그 방법을 실행하기 위한 컴퓨터 프로그램

Country Status (1)

Country Link
KR (1) KR101647969B1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102455382B1 (ko) * 2018-03-02 2022-10-18 엘지전자 주식회사 이동단말기 및 그 제어 방법
KR20190118965A (ko) * 2018-04-11 2019-10-21 주식회사 비주얼캠프 시선 추적 시스템 및 방법
WO2019199035A1 (ko) * 2018-04-11 2019-10-17 주식회사 비주얼캠프 시선 추적 시스템 및 방법
KR102250712B1 (ko) * 2019-03-29 2021-05-11 경북대학교 산학협력단 전자 장치 및 제어 방법
KR102299103B1 (ko) * 2019-10-23 2021-09-07 주식회사 비주얼캠프 시선 분석 장치 및 이를 이용한 시선 분석 시스템 및 방법
KR102575529B1 (ko) 2020-11-09 2023-09-07 신라대학교 산학협력단 사용자가 특정하는 대상을 추정하는 방법 및 장치
KR102665453B1 (ko) * 2022-01-17 2024-05-10 엔에이치엔 주식회사 시선인식 기반 맞춤형 콘텐츠를 제공하는 장치 및 방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101815020B1 (ko) * 2010-08-26 2018-01-31 삼성전자주식회사 인터페이스 제어 장치 및 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
기정석 외 5명, 방송공학회 논문지 제11권 제4호(2006.12.31. 공개)*

Also Published As

Publication number Publication date
KR20160031183A (ko) 2016-03-22

Similar Documents

Publication Publication Date Title
US11093045B2 (en) Systems and methods to augment user interaction with the environment outside of a vehicle
KR101647969B1 (ko) 사용자 시선을 검출하기 위한 사용자 시선 검출 장치 및 그 방법과, 그 방법을 실행하기 위한 컴퓨터 프로그램
TWI534654B (zh) 用於在一頭部安裝裝置上選擇一擴充實境物件之方法及電腦可讀媒體與用於選擇一擴充實境物件之頭部安裝裝置
CN102780893B (zh) 图像处理设备及其控制方法
EP2813922B1 (en) Visibility improvement method based on eye tracking, machine-readable storage medium and electronic device
CN103765346B (zh) 基于眼睛凝视的用于音频视觉回放的位置选择
US8388146B2 (en) Anamorphic projection device
US20130135295A1 (en) Method and system for a augmented reality
KR102414602B1 (ko) 데이터 인식 모델 구축 장치 및 이의 데이터 인식 모델 구축 방법과, 데이터 인식 장치 및 이의 데이터 인식 방법
WO2017126172A1 (ja) 情報処理装置、情報処理方法、及び記録媒体
US9785836B2 (en) Dataset creation for tracking targets with dynamically changing portions
US11582409B2 (en) Visual-inertial tracking using rolling shutter cameras
US20140140623A1 (en) Feature Searching Based on Feature Quality Information
KR101308184B1 (ko) 윈도우 형태의 증강현실을 제공하는 장치 및 방법
US9261974B2 (en) Apparatus and method for processing sensory effect of image data
US11682045B2 (en) Augmented reality advertisements on objects
US11169603B2 (en) Electronic apparatus and method for recognizing view angle of displayed screen thereof
CN103428551A (zh) 一种手势遥控系统
US20230368396A1 (en) Image processing apparatus, image processing method, and non-transitory computer-readable storage medium
KR102702585B1 (ko) 전자 장치 및 이의 제어 방법

Legal Events

Date Code Title Description
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190701

Year of fee payment: 4