KR101539923B1 - 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템 및 이를 이용한 안구이동추적 방법 - Google Patents

이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템 및 이를 이용한 안구이동추적 방법 Download PDF

Info

Publication number
KR101539923B1
KR101539923B1 KR1020130165905A KR20130165905A KR101539923B1 KR 101539923 B1 KR101539923 B1 KR 101539923B1 KR 1020130165905 A KR1020130165905 A KR 1020130165905A KR 20130165905 A KR20130165905 A KR 20130165905A KR 101539923 B1 KR101539923 B1 KR 101539923B1
Authority
KR
South Korea
Prior art keywords
signal
bio
processing
emg
unit
Prior art date
Application number
KR1020130165905A
Other languages
English (en)
Other versions
KR20150077571A (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 KR1020130165905A priority Critical patent/KR101539923B1/ko
Publication of KR20150077571A publication Critical patent/KR20150077571A/ko
Application granted granted Critical
Publication of KR101539923B1 publication Critical patent/KR101539923B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16ZINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS, NOT OTHERWISE PROVIDED FOR
    • G16Z99/00Subject matter not provided for in other main groups of this subclass
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Eye Examination Apparatus (AREA)
  • Measurement And Recording Of Electrical Phenomena And Electrical Characteristics Of The Living Body (AREA)

Abstract

이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템 및 이를 이용한 안구이동추적 방법을 개시한다.
상기 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템은 사용자의 시선 이동에 따라 움직이는 안구의 움직임으로 인해 발생되는 생체신호를 검출하는 생체신호 측정부(110); 주파수의 범위에 따라 상기 생체신호를 안전도 신호 및 근전도 신호로 분리하는 신호 분리부(120); 상기 안전도 신호의 파형을 PLA 기법에 적용시켜 복수 개의 연속된 선분으로 단순화시키고, 상기 선분을 다차원 벡터 형태를 갖는 특징집합으로 나열한 후, 상기 특징집합에 이중 기계학습을 적용시켜 상기 안구이동에 따른 상기 사용자의 시선 이동에 따른 거리정보가 포함된 제1 처리신호를 출력하는 안전도 신호처리부(130); 및 상기 근전도 신호의 파형을 PLA 기법에 적용시켜 복수 개의 연속된 선분들로 단순화시키고, 상기 복수 개의 선분들 중 상기 사용자가 이를 깨문 시점의 측두근 근전도 신호의 진폭값과 내부에 기설정된 문턱값을 비교하여 상기 진폭값이 상기 문턱값보다 클 경우, 마우스의 클릭을 수행하기 위한 제2 처리신호를 출력하는 근전도 신호처리부(140); 및 상기 제1 처리신호의 거리정보에 반응하여 마우스 커서를 이동시키며, 상기 제2 처리신호에 반응하여, 상기 마우스의 클릭버튼을 구동시키는 마우스 구동부(150)를 포함한다.

Description

이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템 및 이를 이용한 안구이동추적 방법{Bio-Signal Based Eye-Tracking System Using Dual Machine Learning Structure and Eye-Tracking Method using The Same}
본 발명은 안구이동추적 시스템에 관한 발명으로, 보다 상세하게는 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템 및 이를 이용한 안구이동추적 방법에 관한 것이다.
기존 안구이동을 이용한 HCI 시스템에 관한 연구는 크게 안전도를 이용한 방식과 카메라를 이용한 방식으로 나눌 수 있다.
먼저 안전도를 이용한 연구로 Deng은 두 채널의 안전도 신호를 얻을 수 있는 하드웨어를 제작하고 Fuzzy 분류기를 적용해 안구의 위치를 상, 하, 좌, 우, 정지 의 5단계로 구분하였다[참고문헌4].
또한 이러한 시스템을 이용해 TV 리모컨, 시야 검사, 간단한 게임조작에 응용할 수 있음을 보였다. 하지만 실질적으로 사용할 수 있는 명령은 상, 하, 좌, 우 의 4가지의 단순한 명령이기 때문에 5가지 이상의 선택지가 있는 상황에서는 한 번의 선택을 하기위해 여러 번의 명령동작이 필요해 지면서 안구의 피로를 야기한다는 단점이 있다. 또한, 별도의 동작 시작/정지 상태를 변경할 수 있는 조작방법을 제공하고 있지 않아 한 번 응용 프로그램이 시작되면 안구의 움직임이 항시 시스템에 적용되기 때문에 함부로 움직일 수 없어지는 불편함이 남았다.
한편 Usakli는 상, 하, 좌, 우 명령을 내릴 때 빠르게 원하는 방향으로 시선을 준 후 다시 중앙으로 돌아오는 명령패턴을 사용하도록 해 일반적인 안구의 움직임과 차별되도록 하였고 눈 깜빡임 명령을 추가하여 선택과 같은 명령을 두 번 연속으로 눈을 깜빡이는 동작을 통해 전달할 수 있도록 하였다[참고문헌5].
또한 시스템을 이용한 응용으로 가상 키보드와 4지 선다 메뉴를 보였으나 여전히 하나의 버튼을 선택하기 위해 여러 번의 명령동작이 필요하다는 점에서 안구의 피로함을 해소하기 어렵다는 단점이 있다.
이와 유사한 방식의 연구로 Ubeda는 이동 후 귀환하는 안구 움직임을 통해 상, 하, 좌, 우의 명령을 전달할 수 있도록 했고 이를 이용해 로봇 팔을 조작할 수 있도록 하였다[참고문헌6].
하지만 여전히 안구의 움직임을 여러 번 반복해서 명령을 주어야 하기 때문에 평면상의 5개의 지점에 순서대로 점을 찍기 위해 평균적으로 약 3분의 시간을 필요로 한다는 결과를 보여 실용성이 떨어진다는 단점이 남았다.
앞선 연구와는 다른 방식으로 안전도를 분석한 Barea는 단순한 상, 하, 좌, 우와 같은 패턴인식의 형태가 아닌 안구가 회전한 각도를 0 40까지 10 단위로 구분해서 검출할 수 있도록 하였다[참고문헌7].
따라서 한 번의 안구 움직임으로 보다 다양한 조작을 할 수 있기 때문에 실용성을 크게 향상시킬 수 있다는 점에서 주목할 만하나, 미분과 유사한 형태로 Wavelet 필터를 사용했기 때문에 안구의 이동속도가 느린 경우 큰 영향을 받을 수 있다는 단점이 있고 시스템의 구체적인 응용 방법이 제시되지 않았다. 카메라를 이용한 안구이동추적 시스템은 소형 카메라를 통해 안구의 영상을 얻고 영상처리를 통해 사용자가 응시하는 방향을 분석하는 시스템으로 안경이나 고글과 같은 구조물에 소형 카메라를 장치하고 이를 사용자가 착용하여 안구의 영상을 가까이서 얻는 방식[참고문헌8]과 일정 수준 거리가 있는 모니터 앞에 놓인 카메라를 통해 안구의 영상을 얻는 방식[참고문헌9-10]이 있다. 카메라를 이용한 안구이동추적 시스템들은 사용자가 현재 응시하고 있는 위치를 직접적으로 알아낼 수 있다는 장점이 있고 지속된 연구를 통해 단점이 해소되고 성능이 고도화 되어 최근에는 상용화된 안구 마우스 제품들도 출시되어 소개되고 있다[참고문헌10].
하지만 이러한 장점에도 불구하고 안구이동추적 이외의 클릭동작 구현부분에서 문제가 제기되고 있는데 눈 깜빡임을 통해 클릭을 구현하기에는 사용자가 클릭과 관계없이 눈을 깜빡이는 경우가 잦아 오작동의 우려가 있다는 점이다.
Tobii사의 제품[참고문헌10]과 같은 경우 터치패드나 키보드를 이용해 클릭동작을 하도록 하였으나 손을 이용하게 되면서 안구 마우스의 사용 목적이 모호해진다는 단점이 있다. 이외에도 고도화된 성능과 함께 영상 처리를 위한 시스템 사양 또한 고도화되어 이에 따라 휴대성이 떨어지고 수천달러 수준으로 비용이 비싸진다는 단점이 나타나고 있다.
따라서, 본 발명에서는 종래의 문제점을 해결할 수 있는 안구이동추적 시스템 및 이를 이용한 안구이동추적 방법을 제안하고자 한다.
M. Benzeghiba, R. De Mori, O. Deroo, S. Dupont, T. Erbes, D. Jouvet, L. Fissore, P. Laface, A. Mertins, C. Ris, R. Rose, V. Tyagi, C. Wellekens, "Automatic speech recognition and speech variability: A review", Speech Communication, vol 49, no 10-11, pp. 763-786, Oct-Nov. 2007.
본 발명이 해결하고자 하는 과제는 단채널 생체신호를 이용하여 사용자의 안구이동을 추적하되, 추가적인 전극부착 없이 이을 깨무는 동작을 통해 추가적인 조작도 가능하도록 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템 및 이를 이용한 안구이동추적 방법을 제공하고자 한다.
상기 과제를 해결하기 위한 본 발명의 실시 예에 따른 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템은 사용자의 시선 이동에 따라 움직이는 안구의 움직임으로 인해 발생되는 생체신호를 검출하는 생체신호 측정부(110); 주파수의 범위에 따라 상기 생체신호를 안전도 신호 및 근전도 신호로 분리하는 신호 분리부(120); 상기 안전도 신호의 파형을 PLA 기법에 적용시켜 복수 개의 연속된 선분으로 단순화시키고, 상기 선분을 다차원 벡터 형태를 갖는 특징집합으로 나열한 후, 상기 특징집합에 이중 기계학습을 적용시켜 상기 안구이동에 따른 상기 사용자의 시선 이동에 따른 거리정보가 포함된 제1 처리신호를 출력하는 안전도 신호처리부(130); 상기 근전도 신호의 파형을 PLA 기법에 적용시켜 복수 개의 연속된 선분들로 단순화시키고, 상기 복수 개의 선분들 중 상기 사용자가 이를 깨문 시점의 측두근 근전도 신호의 진폭값과 내부에 기설정된 문턱값을 비교하여 상기 진폭값이 상기 기 설정된 문턱값 보다 클 경우, 마우스의 클릭을 수행하기 위한 제2 처리신호를 출력하는 근전도 신호처리부(140); 및 상기 제1 처리신호의 거리정보에 반응하여 마우스 커서를 이동시키며, 상기 제2 처리신호에 반응하여, 상기 마우스의 클릭버튼을 구동시키는 마우스 구동부(150)를 포함한다.
상기 생체신호 측정부(110)는, 상기 생체신호의 저주파 성분을 제거하기 위한 전처리 필터부(111); 상기 전처리 필터부에서 저주파 성분이 필터링된 생체신호를 1차 증폭하는 계측증폭기(112); 상기 계측증폭기(112)에서 증폭된 생체신호의 40Hz 초과 주파수 대역을 제거하는 후처리 필터부(113); 상기 후처리 필터부(113)에 필터링된 생체신호를 2차 증폭하는 출력증폭부(114); 및 상기 출력증폭부에서 증폭된 생체신호를 디지털 신호로 변환하는 MCU(115)를 포함하고, 상기 전처리 필터부(111)는, 저주파 성분을 제거하는 적어도 하나 이상의 고역통과필터(111a)가 구비되는 것을 특징으로 한다.
상기 계측증폭기(112)는 증폭률이 56V/V으로 50 150 범위의 출력을 보이며, 상기 출력증폭부(114)는 증폭률이 10V/V으로 0.5 1.5V 범위의 출력을 보이는 것을 특징으로 한다.
상기 후처리 필터부(113)는 40Hz 초과 주파수 대역을 제거하는 저역통과필터(113a); 상기 저역통과필터에서 필터링된 생체신호로부터 제거되지 못한 60Hz 이상의 대역을 추가 필터링하는 대역제거필터(113b)를 포함하는 것을 특징으로 한다.
상기 신호 분리부(120)는 IIR(Infinite Impulse Response) 방식으로 설계되며, 안전도 신호를 추출하는 Butterworth 2pole 10Hz 저역통과필터(121); 및 IIR(Infinite Impulse Response) 방식으로 설계되며, 측두근 근전도 신호를 추출하는 Butterworth 4pole 30Hz 고역통과필터(122)를 포함하는 것을 특징으로 한다.
상기 안전도 신호처리부(130)는 내부에 저장된 변형 슬라이딩 윈도우 알고리즘을 통해 상기 안전도 신호의 파형을 복수 개의 연속된 선분으로 단순화시키는 PLA 처리부(131); 상기 선분을 다차원 벡터 형태의 특징집합들로 변환하는 특징 추출부(132); 및 상기 특징집합에 이중 기계학습을 적용시켜 상기 안구이동에 따른 상기 사용자의 시선 이동에 따른 거리정보가 포함된 제1 처리신호를 출력하는 이중 기계학습 처리부를 포함하는 것을 특징으로 한다.
상기 변형 슬라이딩 윈도우 알고리즘은 아래와 같은 유사코드로 표현되는 것을 특징으로 한다.
Figure 112013119862296-pat00001

상기 특징 추출부(132)는 상기 선분들을 벡터형태의 특징집합으로 아래에 기재된 식 1 내지 식 6을 순차적으로 이용하여 산출하는 것을 특징으로 한다.
[식 1]
Figure 112013119862296-pat00002

[식 2]
Figure 112013119862296-pat00003
[식 3]
Figure 112013119862296-pat00004
산출된 SFu를 Vtmp에 적용하면
[식 4]
Figure 112013119862296-pat00005
도출된 H와 V로부터 특징집합
Figure 112013119862296-pat00006
Figure 112013119862296-pat00007
가 다음과 같이 정리된다.
[식 5]
Figure 112013119862296-pat00008
[식 6]
Figure 112013119862296-pat00009
여기서, SFu는 개인화 상수이고, M+1은 연속된 선분들의 꼭짓점을 나타내며, Px는 꼭짓점의 x축 상에서의 위치 좌표를 나타내며, Py는 y축 상에서의 위치 좌표를 나타내며, D는 각 꼭짓점 사이 구간에서 시선이 이동한 거리를 나타내고,
Figure 112013119862296-pat00010
는 SFu와 너비와 높이로 이루어진 특징집합이며,
Figure 112013119862296-pat00011
는 기울기와 길이로 이루어진 특징집합을 의미한다.
상기 이중 기계학습 처리부는 시선이 이동되는 구간 내의 특징집합을 선별하는 분류기; 및 내부에 구비된 곡선 맞춤 모델에 상기 구간 내의 특징집합을 입력하여 상기 구간 내에 흩어져있는 상기 특징집합을 연속적인 1차원 함수로 나타내는 곡선 맞춤 처리부; 및 상기 1차원 함수의 좌표값으로 산출된 상기 사용자의 시선 이동에 따른 거리정보를 출력하는 출력부를 포함하는 것을 특징으로 한다.
상기 곡선 맞춤 모델은 Polynomial 커널함수, Sigmoid 커널함수, Gaussian 커널함수 중 어느 하나가 적용된 SVR(Support Vector Regression)인 것을 특징으로 한다.
상기 근전도 신호처리부(140)는 상기 측두근 근전도 신호의 파형을 PLA 기법에 적용시켜 복수 개의 연속된 선분들로 단순화시키는 PLA 처리부(141); 상기 복수 개의 연속된 선분들 중 이를 깨문 상태에서 발생된 측두근 근전도에 해당하는 선분을 선별하는 선별부(142); 상기 선별부(142)에서 선별된 선분의 시간 구간과 동일한 측두근 근전도의 시간 구간내의 구간 파워를 산출하는 파워 산출부(143); 상기 구간 파워와 내부에 기설정된 문턱값을 비교한 후, 상기 구간 파워가 상기 기 설정된 문턱값 보다 클 경우 이를 깨물고 있는 상태로 판단하여 마우스 클릭을 수행하기 위한 제2 처리신호를 출력하는 판단부(144)를 포함하는 것을 특징으로 한다.
상기 파워 산출부(143)는 상기 구간 파워를 아래에 기재된 식 10을 이용하여 산출하는 것을 특징으로 한다.
[식 10]
Figure 112013119862296-pat00012
여기서, 시간에 따른 측두근 근전도를 EMG(t)라고 했을 때, i 번째 선분에 대한 구간 파워는 Power(i)로 나타낸다.
상기 과제를 해결하기 위한 본 발명의 제1항 내지 제12항 중 어느 하나의 항에 기재된 안구이동추적 시스템을 이용한 안구이동추적 방법은 사용자의 시선 이동에 따라 움직이는 안구의 움직임으로 인해 발생되는 생체신호를 생체신호 검출부에서 검출하는 생체신호 검출단계(S110); 주파수의 범위에 따라 상기 생체신호를 신호 분리부(120)에서 안전도 신호 및 근전도 신호로 분리하는 신호 분리단계(S120); 상기 신호 분리단계(S120)에서 분리된 상기 안전도 신호의 파형을 PLA 기법에 적용시켜 복수 개의 연속된 선분으로 단순화시키고, 상기 선분을 다차원 벡터 형태를 갖는 특징집합으로 나열한 후, 상기 특징집합에 이중 기계학습을 적용시켜 상기 안구이동에 따른 상기 사용자의 시선 이동에 따른 거리정보가 포함된 제1 처리신호를 안전도 신호처리부(130)에서 출력하는 제1 처리신호 출력단계(S130); 및 상기 신호 분리단계(S120)에서 분리된 상기 근전도 신호의 파형을 PLA 기법에 적용시켜 복수 개의 연속된 선분들로 단순화시키고, 상기 복수 개의 선분들 중 상기 사용자가 이를 깨문 시점의 측두근 근전도 신호의 시간에 따른 구간 파워와 내부에 기 설정된 문턱값을 비교하여 상기 구간 파워가 상기 기 설정된 문턱값보다 클 경우, 마우스의 클릭을 수행하기 위한 제2 처리신호를 근전도 신호처리부(140)에서 출력하는 제2 처리신호 출력단계(S140); 및 상기 제1 처리신호의 거리정보에 반응하여 마우스 커서를 이동시키며, 상기 제2 처리신호에 반응하여, 상기 마우스의 클릭버튼을 마우스 구동부(150)에서 구동시키는 마우스 구동단계(S150)를 포함한다.
상기 생체신호 측정단계(S110)는 저주파 성분을 제거하는 적어도 하나 이상의 고역통과필터(111a)가 구비된 전처리 필터부(111)를 이용하여 상기 생체신호의 저주파 성분을 제거하는 단계(S111); 상기 전처리 필터부(111)에서 저주파 성분이 필터링된 생체신호를 계측증폭기를 이용하여 1차 증폭하는 단계(S112); S112에서 1차 증폭된 생체신호의 40Hz 초과 주파수 대역을 후처리 필터부에서 제거하는 단계(S113); S113에서 필터링된 생체신호를 출력증폭부에서 2차 증폭하는 단계(S114); 및 S114에서 증폭된 생체신호를 MCU(115)를 통해 디지털 신호로 변환하는 단계(S115)를 포함하는 것을 특징으로 한다.
상기 S113은, 상기 S112에서 1차 증폭된 생체신호의 40Hz 초과 주파수 대역을 저역통과필터(113a)를 이용하여 제거하는 단계(S113a); 및 S113에서 필터링된 생체신호로부터 제거되지 못한 60Hz 이상의 대역을 대역제거필터(113b)를 이용하여 추가 필터링하는 단계(S113b)를 포함하는 것을 특징으로 한다.
상기 신호 분리단계(S120)는 Butterworth 2pole 10Hz 저역통과필터(121)를 이용하여 안전도 신호를 추출하는 단계(S121); 및 Butterworth 4pole 30Hz 고역통과필터(122)를 이용하여 측두근 근전도 신호를 추출하는 단계(S122)를 포함하는 것을 특징으로 한다.
상기 안전도 신호처리단계(S130)는 PLA 처리부(131) 내에 저장된 변형 슬라이딩 윈도우 알고리즘을 통해 상기 안전도 신호의 파형을 복수 개의 연속된 선분으로 단순화시키는 단계(S131); 특징 추출부(132)에서 상기 선분을 다차원 벡터 형태의 특징집합들로 변환하는 단계(S132); 및 이중 기계학습 처리부(133)에서 상기 특징집합을 이중 기계학습시켜 상기 안구이동에 따른 상기 사용자의 시선 이동에 따른 거리정보가 포함된 제1 처리신호를 출력하는 단계(S133);를 포함하는 것을 특징으로 한다.
상기 S133은 분류기를 이용하여 시선이 이동되는 구간 내의 특징집합을 선별하는 단계(S133a); 곡선 맞춤 처리부 내에 구비된 곡선 맞춤 모델에 상기 구간 내의 특징집합을 입력하여 상기 구간 내에 흩어져있는 상기 특징집합을 연속적인 1차원 함수로 산출하는 단계(S133b); 및 출력부에서 상기 1차원 함수의 좌표값으로 산출된 상기 사용자의 시선 이동에 따른 거리정보를 출력하는 단계(S133c)를 포함하는 것을 특징으로 한다.
상기 근전도 신호처리단계(S140)는, PLA 처리부에서 상기 측두근 근전도 신호의 파형을 PLA 기법에 적용시켜 복수 개의 연속된 선분들로 단순화시키는 단계(S141); 선별부에서 상기 복수 개의 연속된 선분들 중 이를 깨문 상태에서 발생된 측두근 근전도에 해당하는 선분을 선별하는 단계(S142); S142에서 선별된 선분의 시간 구간과 동일한 측두근 근전도의 시간 구간내의 구간 파워를 파워 산출부에서 산출하는 단계(S143); 및 판단부(144)에서 상기 구간 파워와 내부에 기 설정된 문턱값을 비교한 후, 상기 구간 파워가 상기 기 설정된 문턱값 보다 클 경우 이를 깨물고 있는 상태로 판단하여 마우스 클릭을 수행하기 위한 제2 처리신호를 출력하는 단계(S144)를 포함하는 것을 특징으로 한다.
상기 S143은, 상기 구간 파워를 아래에 기재된 식 10을 이용하여 산출하는 것을 특징으로 한다.
[식 10]
Figure 112013119862296-pat00013
여기서, 시간에 따른 측두근 근전도를 EMG(t)라고 했을 때, i 번째 선분에 대한 구간 파워는 Power(i)로 나타낸다.
본 발명에 따른 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템은 전극을 단 두 개만 사용하는 단채널 생체신호에서 안전도와 근전도 정보를 동시에 얻어 서로 영향을 끼치지 않도록 독립적으로 분석되고 동작되도록 설계되었으며, 이 중 안전도 분석에서는 Piecewise Linear Approximation(PLA) 알고리즘을 이용해 신호의 특징을 찾아내었고, 이중 기계학습 구조를 적용시켰으며, PLA는 안전도 신호처리에 적합하여 처리해야할 데이터의 양을 대폭 줄어주고 데이터의 특징을 직관적으로 나타낼 수 있도록 하였으며, 이중 기계학습 처리부는 두 가지 기계학습 기술을 순차적으로 적용하는 방법으로 앞서 적용되는 분류기에서 생체신호의 잡음에 대한 강인함을 확보하고 이후에 적용될 곡선 맞춤 모델과 문제의 복잡도를 분담하면서 보다 정확한 분석이 가능하도록 하여 정확성을 향상시킬 수 있다는 이점을 갖는다.
또한, 본 발명은 사용자가 응시하는 위치로 마우스 포인터가 이동되고 이를 깨무는 동작을 통해 마우스 클릭을 조작하는 직관적인 방식으로 모니터 화면상의 마우스를 조작 가능하다는 이점을 갖는다.
또한, 기존 안전도 패턴인식을 이용한 HCI 기술과 비교해 더욱 즉각적이고 연속적인 응답을 보이고 간소화된 전극부착으로도 완성된 동작을 하기 때문에 실사용 시의 거부감이 최소화 되었으며 직관적인 조작을 통해 마우스와 같이 친숙한 인터페이스로 응용이 가능하다는 이점을 갖는다.
또한, 기존의 손을 이용해 조작을 하는 인터페이스 방식에서 벗어나 새로운 사용자 경험을 제공하며 사지 거동이 불편한 중증 장애인들에게도 유용하게 사용될 수 있다는 이점을 갖는다.
도 1은 본 발명의 실시 예에 따른 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템을 나타낸 블록도이다.
도 2는 도 1에 도시된 생체신호 측정부의 실사도이다.
도 3은 안구의 움직임에 따른 안전도 검출과정을 나타낸 예시도이다.
도 4는 측두근과 근저도의 관계를 나타낸 예시도이다.
도 5는 도 2의 생체신호 측정부를 보다 상세하게 나타낸 블록도이다.
도 6은 고역통과필터에 따른 안전도 신호 변화를 나타낸 그래프이다.
도 7은 이동거리 L에 따른 원의 움직임 변화를 나타낸 예시도이다.
도 8은 주파수 분할을 위한 필터의 주파수 응답곡선을 나타낸 예시도이다.
도 9는 생체신호의 주파수 분할 결과를 나타낸 그래프이다.
도 10은 기본형 슬라이딩 윈도우(Sliding Window) 알고리즘의 유사코드를 나타낸 예시도이다.
도 11은 본 발명에서 제공하는 변형 슬라이딩 윈도우 알고리즘 유사코드를 나타낸 예시도이다.
도 12는 ErrorFnc의 종류 및 계산 방식을 나타낸 예시도이다.
도 13은 k, Th, ErrorFnc 변화에 따른 성능 변화를 나타낸 예시도이다.
도 14는 ErrorFnc에 따른 성능변화를 나타낸 그래프이다.
도 15는 안전도의 오버슈팅 현상과 PLA 적용 예를 나타낸 그래프이다.
도 16은 분류기 성능 비교를 나타낸 그래프이다.
도 17은 곡선 맞춤 모델 이용 예를 나타낸 예시도이다.
도 18은 ?와 C의 변화에 따른 LibSVM의 성능 변화를 나타낸 그래프이다.
도 19는 매개변수의 최적화를 위한 휴리스틱 기법을 나타낸 예시도이다.
도 20a는 Polynomial 커널함수를 이용한 결과를 나타낸 그래프이다.
도 20b는 Sigmoid 커널함수를 이용한 결과를 나타낸 그래프이다.
도 20c는 Gaussian 커널함수를 이용한 결과를 나타낸 그래프이다.
도 21은 측두근 근저도 처리과정을 나타낸 예시도이다.
도 22a는 도 1에 도시된 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템을 이용한 안구이동추적 방법의 흐름도이다.
도 22b는 S110을 보다 상세하게 설명하기 위한 흐름도이다.
도 22c는 S113을 보다 상세하게 설명하기 위한 흐름도이다.
도 22d는 S120을 보다 상세하게 설명하기 위한 흐름도이다.
도 22e는 S130을 보다 상세하게 설명하기 위한 흐름도이다.
도 22f는 S133을 보다 상세하게 설명하기 위한 흐름도이다.
도 22g는 S140을 보다 상세하게 설명하기 위한 흐름도이다.
도 23은 성능평가 프로그램 동작방식을 설명하기 위한 예시도이다.
도 24는 생체신호 수집 단계와 성능평가 단계에서의 원의 위치를 나타낸 예시도이다.
도 25는 성능평가 결과를 나타낸 표이다.
도 26은 성능평가 결과를 나타낸 그래프이다.
도 27은 최종 사용자를 위한 응용 프로그램의 동작 방식을 나타낸 순서도이다.
이상의 본 발명의 목적들, 다른 목적들, 특징들 및 이점들은 첨부된 도면과 관련된 이하의 바람직한 실시 예들을 통해서 쉽게 이해될 것이다. 그러나 본 발명은 여기서 설명되는 실시 예들에 한정되지 않고 다른 형태로 구체화될 수도 있다.
오히려, 여기서 소개되는 실시 예들은 개시된 내용이 철저하고 완전해질 수 있도록 그리고 당업자에게 본 발명의 사상이 충분히 전달될 수 있도록 하기 위해 제공되는 것이다. 본 명세서에서, 어떤 구성요소가 다른 구성요소 상에 있다고 언급되는 경우에 그것은 다른 구성요소 상에 직접 형성될 수 있거나 또는 그들 사이에 제 3의 구성요소가 개재될 수도 있다는 것을 의미한다. 또한 도면들에 있어서, 구성요소들의 두께는 기술적 내용의 효과적인 설명을 위해 과장된 것이다.
본 명세서에서 기술하는 실시 예들은 본 발명의 이상적인 예시도인 단면도 및/또는 평면도들을 참고하여 설명될 것이다. 도면들에 있어서, 막 및 영역들의 두께는 기술적 내용의 효과적인 설명을 위해 과장된 것이다.
따라서 제조 기술 및/또는 허용 오차 등에 의해 예시도의 형태가 변형될 수 있다. 따라서 본 발명의 실시 예들은 도시된 특정 형태로 제한되는 것이 아니라 제조 공정에 따라 생성되는 형태의 변화도 포함하는 것이다. 예를 들면, 직각으로 도시된 식각 영역은 라운드지거나 소정 곡률을 가지는 형태일 수 있다.
따라서 도면에서 예시된 영역들은 속성을 가지며, 도면에서 예시된 영역들의 모양은 소자의 영역의 특정 형태를 예시하기 위한 것이며 발명의 범주를 제한하기 위한 것이 아니다. 본 명세서의 다양한 실시 예들에서 제1, 제2 등의 용어가 다양한 구성요소들을 기술하기 위해서 사용되었지만, 이들 구성요소들이 이 같은 용어들에 의해서 한정되어서는 안 된다. 이들 용어들은 단지 어느 구성요소를 다른 구성요소와 구별시키기 위해서 사용되었을 뿐이다. 여기에 설명되고 예시되는 실시 예들은 그것의 상보적인 실시 예들도 포함한다.
본 명세서에서 사용된 용어는 실시 예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 '포함한다(comprises)' 및/또는 '포함하는(comprising)'은 언급된 구성요소는 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 이하, 도면을 참조하여 본 발명을 상세히 설명하도록 한다.
아래의 특정 실시 예들을 기술하는데 있어서, 여러 가지의 특정적인 내용들은 발명을 더 구체적으로 설명하고 이해를 돕기 위해 작성되었다. 하지만 본 발명을 이해할 수 있을 정도로 이 분야의 지식을 갖고 있는 독자는 이러한 여러 가지의 특정적인 내용들이 없어도 사용될 수 있다는 것을 인지할 수 있다.
어떤 경우에는, 발명을 기술하는 데 있어서 흔히 알려졌으면서 발명과 크게 관련 없는 부분들은 본 발명을 설명하는데 있어 별 이유 없이 혼돈이 오는 것을 막기 위해 기술하지 않음을 미리 언급해 둔다.
이하, 도면을 참조하여 본 발명의 실시 예에 따른 안구이동추적 시스템 및 이를 이용한 안구이동추적 방법을 보다 상세하게 설명하도록 한다.
도 1은 본 발명의 실시 예에 따른 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템을 나타낸 블록도이다.
도 2는 도 1에 도시된 생체신호 측정부의 실사도이다.
도 3은 안구의 움직임에 따른 안전도 검출과정을 나타낸 예시도이다.
도 4는 측두근과 근저도의 관계를 나타낸 예시도이다.
도 5는 도 2의 생체신호 측정부를 보다 상세하게 나타낸 블록도이다.
도 6은 고역통과필터에 따른 안전도 신호 변화를 나타낸 그래프이다.
도 7은 이동거리 L에 따른 원의 움직임 변화를 나타낸 예시도이다.
도 8은 주파수 분할을 위한 필터의 주파수 응답곡선을 나타낸 예시도이다.
도 9는 생체신호의 주파수 분할 결과를 나타낸 그래프이다.
도 10은 기본형 슬라이딩 윈도우(Sliding Window) 알고리즘의 유사코드를 나타낸 예시도이다.
도 11은 본 발명에서 제공하는 변형 슬라이딩 윈도우 알고리즘 유사코드를 나타낸 예시도이다.
도 12는 ErrorFnc의 종류 및 계산 방식을 나타낸 예시도이다.
도 13은 k, Th, ErrorFnc 변화에 따른 성능 변화를 나타낸 예시도이다.
도 14는 ErrorFnc에 따른 성능변화를 나타낸 그래프이다.
도 15는 안전도의 오버슈팅 현상과 PLA 적용 예를 나타낸 그래프이다.
도 16은 분류기 성능 비교를 나타낸 그래프이다.
도 17은 곡선 맞춤 모델 이용 예를 나타낸 예시도이다.
도 18은 ?와 C의 변화에 따른 LibSVM의 성능 변화를 나타낸 그래프이다.
도 19는 매개변수의 최적화를 위한 휴리스틱 기법을 나타낸 예시도이다.
도 20a는 Polynomial 커널함수를 이용한 결과를 나타낸 그래프이다.
도 20b는 Sigmoid 커널함수를 이용한 결과를 나타낸 그래프이다.
도 20c는 Gaussian 커널함수를 이용한 결과를 나타낸 그래프이다.
도 21은 측두근 근저도 처리과정을 나타낸 예시도이다.
도 22a는 도 1에 도시된 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템을 이용한 안구이동추적 방법의 흐름도이다.
도 22b는 S110을 보다 상세하게 설명하기 위한 흐름도이다.
도 22c는 S113을 보다 상세하게 설명하기 위한 흐름도이다.
도 22d는 S120을 보다 상세하게 설명하기 위한 흐름도이다.
도 22e는 S130을 보다 상세하게 설명하기 위한 흐름도이다.
도 22f는 S133을 보다 상세하게 설명하기 위한 흐름도이다.
도 22g는 S140을 보다 상세하게 설명하기 위한 흐름도이다.
도 23은 성능평가 프로그램 동작방식을 설명하기 위한 예시도이다.
도 24는 생체신호 수집 단계와 성능평가 단계에서의 원의 위치를 나타낸 예시도이다.
도 25는 성능평가 결과를 나타낸 표이다.
도 26은 성능평가 결과를 나타낸 그래프이다.
도 27은 최종 사용자를 위한 응용 프로그램의 동작 방식을 나타낸 순서도이다.
도 1에 도시된 바와 같이, 본 발명의 안구이동추적 시스템(100)은 생체신호 측정부(110), 신호 분리부(120), 안전도 신호처리부(130), 근전도 신호처리부(140) 및 마우스 구동부(150)를 포함한다.
상기 생체신호 측정부(110)는 사용자의 시선 이동에 따라 움직이는 안구의 움직임으로 인해 발생되는 생체신호를 검출하는 기능을 수행한다.
상기 신호 분리부(120)는 주파수의 범위에 따라 상기 생체신호를 안전도 신호 및 근전도 신호로 분리하는 기능을 수행한다.
상기 안전도 신호처리부(130)는 상기 안전도 신호의 파형을 PLA 기법에 적용시켜 복수 개의 연속된 선분으로 단순화시키고, 상기 선분을 다차원 벡터 형태를 갖는 특징집합으로 나열한 후, 상기 특징집합에 이중 기계학습을 적용시켜 상기 안구이동에 따른 상기 사용자의 시선 이동에 따른 거리정보가 포함된 제1 처리신호를 출력하는 기능을 수행한다.
상기 근전도 신호처리부(140)는 상기 근전도 신호의 파형을 PLA 기법에 적용시켜 복수 개의 연속된 선분들로 단순화시키고, 상기 복수 개의 선분들 중 상기 사용자가 이를 깨문 시점의 측두근 근전도 신호의 진폭값과 내부에 기설정된 문턱값을 비교하여 상기 진폭값이 상기 기 설정된 문턱값 보다 클 경우, 마우스의 클릭을 수행하기 위한 제2 처리신호를 출력하는 기능을 수행한다.
상기 마우스 구동부(150)는 상기 제1 처리신호의 거리정보에 반응하여 마우스 커서를 이동시키며, 상기 제2 처리신호에 반응하여, 상기 마우스의 클릭버튼을 구동시키는 기능을 수행한다.
보다 구체적으로, 도 5를 참조하면, 상기 생체신호 측정부(110)는 사용자의 양쪽 관자놀이에 부착되어, 안구의 수평방향 이동에 따른 안전도 신호 및 측두근 근전도 신호를 검출하는 기능을 수행한다.
이때, 생체신호 측정부(110)는 2개의 생체전극이 구비되어, 2개의 생체전극 각각은 사용자의 양족 관자놀이 부분에 하나씩 부착된다.
또한, 생체신호 측정부(110)는 PCB 형태로 제작된 소형의 하드웨어 모듈 형태로서, 단채널 생체신호를 취득하도록 제작된 구조로서, 전처리 필터부(111), 계측증폭기(112), 후처리 필터부(113), 출력증폭부(114) 및 MCU(115)를 포함한다.
상기 전처리 필터부(111)는 상기 생체신호의 저주파 성분을 제거하는 기능을 수행하도록, 저주파 성분을 제거하는 적어도 하나 이상의 고역통과필터(111a)가 구비된다.
상기 계측증폭기(112)는 상기 전처리 필터부에서 저주파 성분이 필터링된 생체신호를 1차 증폭하는 기능을 수행하며,
상기 후처리 필터부(113)는 상기 계측증폭기(112)에서 증폭된 생체신호의 40Hz 초과 주파수 대역을 제거하는 기능을 수행한다.
상기 출력증폭부(114)는 상기 후처리 필터부(113)에 필터링된 생체신호를 2차 증폭하는 기능을 수행한다.
상기 MCU(115)는 상기 출력증폭부에서 증폭된 생체신호를 디지털 신호로 변환하는 기능을 수행한다.
여기서, 상기 계측증폭기(112)는 증폭률이 56V/V으로 ±50 ~ ±150mV 범위의 출력을 보이며, 상기 출력증폭부(114)는 증폭률이 10V/V으로 ±0.5 ~ ±1.5V 범위의 출력을 보인다.
또한, 상기 후처리 필터부(113)는 40Hz 초과 주파수 대역을 제거하는 저역통과필터(113a) 및 상기 저역통과필터에서 필터링된 생체신호로부터 제거되지 못한 60Hz 이상의 대역을 추가 필터링하는 대역제거필터(113b)를 포함한다.
참고로, 양쪽 관자놀이 부분은 두 눈의 외부 안각과 양쪽 측두근의 사이에 위치하여, 수평방향 안구이동에 대한 안전도와 측두근 근전도를 동시에 관찰이 가능하다.
따라서, 본 발명에서 제시하는 생체신호 측정부(110)는 사용자의 착용 시에 거부감을 최소화시켜주기 위하여 안경과 같은 구조물과 결합되어 사용될 수도 있다.
일반적으로, 생체신호는 양 전극에서 전달받는 신호를 차동증폭 하여 얻은 차동신호로서, 이때 동상모드 신호는 잡음으로 취급된다. 일반적으로, 생체신호를 취득하는 장치에서는 이러한 동상모드 신호의 간섭을 효과적으로 제거하기 위해 접지전극을 추가해 동상모드 신호를 귀환 시키는 방식을 취하게 된다.
이 경우 부착해야 하는 전극의 수가 늘어나면서 착용 시의 부담감을 증가된다는 단점이 있다.
따라서 본 발명의 생체신호 측정부(110)는 접지전극의 추가 없이 생체신호를 측정하기 위하여 전처리 필터(111)를 사용한다. 여기서 전처리 필터(111)는 생체신호가 차동증폭을 위해 계측증폭기를 거치기 이전에 먼저 적용되어 저주파 성분을 제거하는 적어도 하나 이상의 고역통과필터를 구비한다.
여기서, 저주파 성분 제거에는 두 가지 의미가 있다.
첫째는 입력되는 생체신호를 측정회로의 계측증폭기가 가진 동상모드 입력전압 범위 안에 있도록 보장한다는 점이다.
측정회로와 인체는 서로 공통된 접지를 가지고 있지 않기 때문에 측정회로 입장에서 인체의 생체신호가 어떠한 동상모드 전위를 나타낼지는 예측할 수가 없다.
따라서 경우에 따라서는 계측증폭기가 가지는 동상모드 입력전압 범위를 넘어설 위험이 있고 이러한 경우 심각한 신호왜곡으로 이어질 수 있기 때문에 반드시 방지하여야 한다.
둘째로는 직류 오프셋을 제거한다는 점이 있다.
두 전극 간의 신호를 차동증폭하는 과정에서 두 신호 사이에 직류 오프셋 전압이 존재하는 경우 차동증폭에 의해서도 제거되지 않고 남아 증폭되는데 생체신호 측정회로의 경우 통상 수백 배의 증폭률을 갖기 때문에 이 직류성분으로 인한 증폭기 포화현상이 일어나기 쉽다. 이때 고역통과필터는 양 전극으로부터 전달되는 신호에 각각 동일하게 적용되어 두 신호의 직류 전압을 동일하게 맞추어 앞서 설명한 두 가지 문제를 동시에 해결한다.
도 6의 (a), (b), (c)를 참조하면, 고역통과필터의 변화에 따른 안전도의 모습으로 t1 시점을 기준으로 좌측은 안구움직임이 느린 경우, 우측은 안구움직임이 빠른 경우의 안전도를 보인다.
3.0Hz 수준의 고역통과필터를 사용하는 경우 마치 미분을 취한 것과 유사하게 안구가 이동하는 구간에만 큰 진폭을 보이는 파형이 나타나기 때문에 안구가 이동한 시점을 검출하는 데에는 유리한 면이 있다.
하지만 안구움직임의 속도에 따라 파형의 변화량에 크게 영향을 받는 것을 확인할 수 있고 안전도 주파수 대역의 많은 부분을 감쇄시키기 때문에 파형자체의 크기가 줄어들어 잡음에 취약해진다는 단점이 있다.
반면 0.008Hz 수준의 고역통과필터를 사용하는 경우 안구가 움직이지 않을 때 평탄한 파형을 보이는 전형적인 안전도 양상을 보이면서 안구 움직임의 속도가 변화하더라도 파형의 변화량에는 큰 영향을 받지 않는 모습을 보인다.
따라서 파형이 상승 혹은 하강한 정도를 분석해 안구의 이동거리를 분석하기에 적합하며 신호의 세기가 강하기 때문에 잡음에도 강인한 모습을 보인다.
하지만 파형이 0 부근으로 안정화되는 시간이 오래 걸리기 때문에 측정자가 부착한 전극이나 케이블에 충격이 가해지는 경우와 같이 큰 잡음이 발생하게 되면 파형이 회복되기가 어렵다는 단점이 있어 측정시의 주의가 요구된다.
0.1Hz 수준의 고역통과필터를 사용하는 경우는 두 가지 경우의 파형의 특징을 고루 보이고 있으며 절충안으로 선택될 수 있는 형태라고 볼 수 있다. 이렇게 고역통과필터에 따른 각 파형의 특징에 따라 서로 장점과 단점이 존재하는 가운데 본 발명에서는 안구이동거리에 대한 정확한 분석이 요구된다는 점을 고려해 0.008Hz 수준의 고역통과필터를 선택하여 적용한다.
상기 전처리 필터(111)를 거친 신호는 계측증폭기에 입력되어 차동증폭이 된다. 얻고자 하는 생체신호는 최대 수십 수준의 작은 신호인데 비해 제거해야하는 동상모드 신호는 수백에까지 이르곤 하기 때문에 반드시 높은 동상모드제거비를 가진 계측증폭기를 사용하여야 한다.
따라서 본 발명에서는 생체신호의 증폭을 위해 널리 사용되는 IC칩인 INA128' 적용해 120 dB 수준의 동상모드제거비를 갖도록 하였다. 또한 계측증폭기의 증폭률은 56 V/V로 설정해 ±50 ~ ±150mV 수준의 크기를 보이는 생체신호를 얻어 이후의 신호처리 과정에서 유입될 수 있는 백색잡음보다 충분히 큰 크기가 될 수 있도록 하였다.
차동증폭을 거친 생체신호는 후처리 필터를 거쳐 남아있는 잡음을 제거하고 한 번 더 증폭되어진다. 후처리 필터부(113)의 잡음제거는 저역통과필터(113a)를 이용해 안전도와 측두근 근전도를 관찰하기에 충분한 대역인 40Hz 미만의 대역만을 남기고 제거하는 과정에서 시작한다.
또한 저역통과필터(113a)가 신호의 대역폭을 제한시키기 때문에 아날로그-디지털 변환(ADC)시의 표본화 주파수를 낮게 설정할 수 있게 되면서 디지털 신호처리 과정에서의 연산량을 줄이는 효과를 볼 수 있다.
다음으로, 대역제거필터(113b)를 이용한 60Hz 이상이 잡음 제거이다.
본 발명에서는 생체신호 측정 환경의 다양한 요인으로부터 발생하는 60Hz 잡음은 그 정도가 심한 경우 저역통과필터만으로 모두 제거되지 않는 경우도 있기 때문에 대역제거필터를 추가해 열악한 측정환경에서도 시스템 활용이 가능하도록 하였다.
이후, 10V/V 수준의 신호증폭을 수행해 생체신호의 크기를 ±0.5 ~ ±1.50V 수준으로 키워 아날로그-디지털 변환에 적합한 크기가 되도록 한다.
마지막으로, MCU(115)를 통해 증폭된 신호를 디지털화하여 PC로 전송하는 디지털처리를 한다.
MCU(115)에서 수행되는 아날로그-디지털 변환 과정은 10비트 해상도와 300Hz의 표본화주파수로 수행된다.
이후 변환된 디지털데이터를 USART 통신방식을 통해 USART to USB 변환 IC칩으로 전달하고 컴퓨터와 연결된 USB 케이블을 통해 데이터를 전송할 수 있도록 한다.
그리고 생체신호 측정부(110)의 전원 또한 USB 케이블을 통해 공급받도록 하였는데 이 과정에서 예측하기 어려운 파손이나 누전으로 인한 측정자의 감전피해를 방지하기위해 마이크로컨트롤러와 USART to USB 변환 IC칩 사이를 전기적으로 절연시켜 외부적인 요인으로 인한 사고 위험으로부터 측정자를 안전하게 보호할 수 있도록 할 수 있다.
다음으로, 상기 신호 분리부(120)는 상기 생체신호 측정부(110)에서 검출된 안전도 신호 및 측두근 근전도 신호를 주파수에 따라 분리하는 기능을 수행한다.
여기서, 양쪽 관자놀이에 부착한 전극으로부터 얻은 생체신호는 안전도와 근전도를 모두 담고 있다.
두 가지 신호는 처리방법이 다르고 그 처리과정에서 서로 간섭을 받아 성능이 떨어질 수 있기 때문에 서로 분리하는 과정이 필요하다. 이 때 두 신호의 주파수 대역에 차이가 있다는 점을 이용해 서로 다른 필터를 적용함으로써 원하는 신호만을 얻어야 한다.
따라서, 본 발명의 상기 신호 분리부(120)는 IIR(Infinite Impulse Response) 방식으로 설계되며, 안전도 신호를 추출하는 Butterworth 2pole 10Hz 저역통과필터(121), 및 IIR(Infinite Impulse Response) 방식으로 설계되며, 측두근 근전도 신호를 추출하는 Butterworth 4pole 30Hz 고역통과필터(122)로 구성될 수 있다. 도 8은 주파수 분할을 위한 필터의 주파수 응답곡선을 나타낸 예시도이다.
다음으로, 도 9를 참조하면, 분할 이전의 생체신호는 안전도와 측두근 근전도가 섞여서 나타나되 비교적 측두근 근전도의 크기가 작게 나타나 육안으로 판별하기 어려운 모습을 보인다.
하지만 분할 이후에는 근전도가 제거되어 매끈해진 안전도의 모습을 볼 수 있다. 또한 측두근 근전도는 진폭이 크기가 변화하는 모습이 육안으로도 확인할 수 있어 15초 이전 구간과 40초 이후 구간에서 이를 깨물은 상태이고 그 사이의 구간에서 이를 깨물지 않은 상태인 것이 확연히 드러나고 저주파성분이 모두 제거되어 0 부근으로 집중된 파형을 얻을 수 있다.
참고로, 안전도란 망막의 휴지전위를 측정하고 기록한 신호를 나타낸다.
도 3을 참조하면, 인체의 안구는 앞부분의 각막이 양극이고, 뒷부분의 후극부가 음극인 쌍극자처럼 동작한다. 눈 인근에 한 쌍의 전극을 부착한 경우 안구가 움직여 각막이 한 전극에 가까워지면 해당 전극의 전위는 상승, 반대편 전극의 전위는 하강하게 되고 이러한 양 전극 사이의 전위차 변화는 관찰하는 장치에 의해 그래프 혹은 시계열 데이터의 형태로 기록된다.
안전도 측정을 위해 가장 많이 이용되는 전극 부착위치는 양쪽 외부 안각 부근으로 이 부위에 부착된 전극으로 안구의 수평방향 움직임에 대한 안전도를 얻을 수 있다. 또한 별도로 눈 상하에 전극을 추가 부착하고 기록 장치를 추가하면 안구의 수직방향 움직임에 대한 안전도를 독립적으로 얻을 수 있다.
다음으로, 도 4를 참조하면, 근전도란 근섬유군의 활동에 의해 발생하는 활동전위를 측정하고 기록한 신호로 작게는 50㎶에서 20 ~ 30㎃ 수준의 진폭을 보인다.
하나의 운동뉴런의 지배하에 있는 근섬유군들은 해당 운동뉴런이 흥분하면 연결된 운동신경섬유를 통해 흥분충격을 전달받게 되고 거의 동시에 흥분 혹은 수축을 한다.
흥분충격은 7 ~ 20 Hz의 주기로 반복되기 때문에 근전도 또한 이 주파수 대역에서 주로 관찰된다. 근전도는 인체 피부 표면에 전극을 부착하여 측정 가능하며 전극의 위치에 따라 특정 근육의 활동을 집중적으로 관찰할 수 있다. 또한 측두근은 관자근이라고도 불리며 머리 양쪽의 관자뼈에서부터 광대뼈까지 위치한 근육으로 턱에 위치한 깨물근과 함께 씹기근으로 분류되며 음식물을 씹기 위해 아래턱을 움직이는 역할을 한다. 따라서 측두근에서 근전도를 관찰하면 이를 깨무는 경우에 진폭이 큰 신호가 발생하고 이를 깨무는 힘을 푼 경우에 진폭이 작은 신호가 발생하는 것을 확인 할 수 있다.
다음으로, 상기 안전도 신호처리부(130)는 PLA 처리부(131), 특징 추출부(132) 및 이중 기계학습 처리부(133)를 포함한다.
상기 PLA 처리부(131)는 내부에 저장된 변형 슬라이딩 윈도우 알고리즘을 통해 상기 안전도 신호의 파형을 복수 개의 연속된 선분으로 단순화시키는 기능을 수행한다.
상기 특징 추출부(132)는 상기 선분을 다차원 벡터 형태의 특징집합들로 변환하는 기능을 수행한다.
상기 이중 기계학습 처리부(133)는 상기 특징집합에 이중 기계학습을 적용시켜 상기 안구이동에 따른 상기 사용자의 시선 이동에 따른 거리정보가 포함된 제1 처리신호를 출력하는 기능을 수행한다.
여기서, 안전도 신호처리부(130)를 동작 과정을 설명하기에 앞서, 안전도 파형은 시선이 움직이는 동안에 가파르게 상승 혹은 하강하고 시선이 움직이지 않는 동안에는 평탄하게 전압을 유지하는 형태를 취한다. 이는 비단 시선을 빠르게 움직일 때만 적용되는 현상이 아니라 비교적 천천히 시선을 움직이는 경우에도 상승 하강하는 기울기가 눈에 띄게 완만해지지 않고 계단형태의 파형을 보인다.
도 9를 참조하면, 안전도 파형의 특징은 파형을 여러 개의 선분으로 단순화시켜 표현하기에 적합한 형태를 띠고 있다. 이렇게 안전도 파형과 같이 시계열의 형태로 존재하는 데이터를 여러 개로 구분된 선분으로 단순화시키는 기법을 Piecewise Linear Approximation(PLA) 라고 한다.
PLA를 활용하면 처리해야할 데이터의 양을 획기적으로 절감할 수 있다는 장점이 있다. 이는 데이터의 양상에 따라 효율의 차이가 있지만 안전도 파형과 같이 직선구간이 많은 경우에 특히 높은 효율을 보인다.
또한 선분으로 구성된 데이터의 경우에는 데이터의 특징을 선분의 너비와 높이 혹은 기울기와 길이와 같은 형태의 특징을 잘 나타내면서도 간략한 특징 데이터로 표현할 수 있어 컴퓨터로 표현하기가 용이해 진다는 장점도 있다.
참고로, PLA는 다양한 종류의 알고리즘이 존재한다. Sliding Window[참고문헌11], Scanalong[참고문헌12], Top Down[참고문헌13], Bottom up[참고문헌11] 과 같은 알고리즘들이 널리 알려져 있고 서로 다른 알고리즘을 결합해 서로의 장점을 모두 취하기 위한 응용 방식[참고문헌11, 14]들도 연구되고 있다.
이러한 다양한 PLA 알고리즘 가운데 본 발명의 PLA 처리부(131)는 실시간으로 안전도를 신호처리 하는 데 있어 적합한 특징을 보이는 Sliding Window 방식을 적용했다.
먼저 Sliding Window 방식 PLA는 뛰어난 실시간 응답을 보인다.
Top Down이나 Bottom up 과 같은 알고리즘은 성능은 뛰어나지만 일괄처리 방식이기 때문에 실시간처리가 불가능하고 이들 알고리즘을 기반으로 실시간 처리가 가능하도록 변형한 알고리즘의 경우에도 일정량 이상의 지연된 반응을 보이기 때문에 빠른 응답을 보여야 하는 시스템에는 적합하지 않다.
이에 반해 Sliding Window와 Scan along 알고리즘은 뛰어난 실시간성을 가지고 있어 거의 즉시적인 반응속도를 보이는 시스템 구현이 가능하다.
또한 Sliding Window 알고리즘은 Scan along 알고리즘에 비해 적용될 파형의 특징에 최적화된 변형이 가능하다는 장점이 있다. Sliding Window 알고리즘은 원신호와 단순화된 선분의 오차를 계산하는 과정을 거치는데 이 계산방식을 적용될 파형에 가장 적합한 방식으로 변경함으로써 알고리즘의 성능을 최적화할 수 있다.
기본형 Sliding Window 알고리즘은 도 10에 나타낸 유사코드와 같이 동작한다.
시계열 데이터에서 어떤 시간 P1과 P2사이의 원본 데이터를 두 지점을 잇는 선분으로 대체했을 경우 발생하는 오차를 계산한 후 이 오차가 문턱값 Th를 넘지 않을 경우 P2를 증가시키며 동작을 반복한다.
반대로 오차가?Th를 넘어서는 경우에는 P2 지점에 새로운 꼭짓점을 생성해 Px[cnt]와 Py[cnt]에 정보를 저장하고 P2 지점으로부터 다시 새로운 꼭짓점을 찾아 나아간다.
이러한 과정에서 기본형 Sliding Window 알고리즘의 단점이 드러나게 된다. 즉, P2를 증가시키며 오차를 계산할 때마다 P1과 P2 사이의 모든 데이터에 대한 오차를 계산해야 하기 때문에 한 지점에 대한 연산이 여러 번 발생하고 이에 따라 전체 연산량이 많다는 단점을 갖는다.
그리고 구간 내에서 가장 적합한 지점이 아닌 오차가 Th를 넘어서는 시점에서 꼭짓점을 생성하기 때문에 원본 데이터를 정확히 표현해내는 성능이 떨어진다는 점 또는 단점으로 꼽을 수 있다.
이에 본 발명에서는 기본형 Sliding Window 알고리즘의 단점을 보안하기 위해 아래와 같은 과정을 거쳐 설계한 변형된 Sliding Window 알고리즘을 사용한다.
먼저, 연산량이 많다는 점을 보완하기 위해 오차가 Th를 넘지 않는 경우 P2를 1씩 증가시키는 것이 아니라 증분 k만큼 증가시키도록 하였다. 이러한 방식은 Koski[참고문헌15]에 의해 제안되었던 방법으로 k를 크게 설정할 수 록 연산량이 줄일 수 있고 그로 인한 성능의 변화가 비교적 적다는 장점이 있다.[참고문헌11].
이와 더불어 알고리즘의 성능향상을 위해 꼭짓점 생성 이후 더욱 적합한 꼭짓점의 위치를 찾는 보정과정을 추가하였다. 보정과정은 마지막으로 새로운 꼭짓점이 Px[cnt] 지점에 생성된 후 버퍼 길이 K개 이상의 데이터가 추가로 발생되면 수행된다.
이 시점에서 새로운 임시 꼭짓점을 P2에 생성하면 2개의 선분
Figure 112013119862296-pat00014
Figure 112013119862296-pat00015
가 형성되고 Px[cnt]의 위치를 옮기면서 두 선분에 대한 오차의 합이 최소가 되도록 하는 Px[cnt]를 찾을 수 있다.
Px[cnt]는 Px[cnt-1]을 향해 위치를 옮기며 최적의 위치를 탐색하는데 이 탐색 범위가 Px[cnt]-K를 넘지 않도록 하여 불필요한 연산증가로 이어지지 않도록 하였다. 여기서 새로운 꼭짓점의 위치가 확정되어 다음 단계에 사용될 수 있게 되는 시점은 보정과정이 완료된 시점이기 때문에 K는 시스템의 반응속도를 나타낸 지표라고 볼 수 있고 시스템의 반응속도가 0.2초를 넘지 않도록 하기 위해 K를 55로 설정하였다.
이러한 과정을 거쳐 단점이 보완된 변형된 Sliding Window 알고리즘을 도 11에 유사코드로 나타내었다.
도 11에 도시된 변형된 Sliding Window 알고리즘은 k, Th 그리고 오차를 계산하는 수식 ErrorFnc의 종류에 따라 그 성능이 달라진다.
ErrorFnc의 종류로는 대표적으로 RMSE(Root Mean Squared Error), Euclidean Error 그리고 Euclidean Distance 등이 있으며 목적에 따라 다양한 응용 또한 가능하다.
도 12는 본 발명에서 고려한 세 가지 ErrorFnc의 서로 다른 계산 방식을 표현한다.
안전도 신호처리에 가장 적합한 방법을 선택하기 위해 k, Th 그리고 ErrorFnc을 변화시켰을 때 PLA의 성능 변화를 산출하였고 도 13과 도 14에 나타내었다.
성능은 전체 파형의 오차의 파워 평균 Perr과 Efficiency 평균으로 나타내었는데, 여기서 Efficiency란 안전도 파형을 측정할 당시 시선을 이동한 횟수를 고려해 가장 최적화된 선분의 개수 Mopt와 PLA의 결과로 얻은 선분의 개수 M의 비율이다.
따라서 Efficiency가 1보다 클수록 반드시 꼭짓점을 생성해야할 부분을 놓친 경우가 많다는 의미이고 1보다 작을수록 하나의 선분으로 표현 가능한 부분이 둘 이상의 선분으로 표현된 경우가 많다는 의미로 볼 수 있다.
도 14를 참조하면, Euclidean Error의 그래프는 완만하게 상승하는 반면 RMSE와 Euclidean Distance의 그래프는 불규칙하게 진동하는 모습을 볼 수 있다. 이러한 차이는 도 13에서 그 이유를 찾을 수 있는데 Euclidean Error의 경우 k의 변화에 따른 Perr와?Efficiency의 변화가 거의 없기 때문에 Th가 커짐에 따라 Perr와 Efficiency가 완만하게 상승하는 모습을 보이는 것이다.
이에 반해 RMSE의 경우 k에 따라 Efficiency가 변화하는 모습이 보이고 Euclidean Distance의 경우 k에 따라 Perr가 불규칙하게 변화하고 Efficiency는 Th보다 k의 영향을 더 많이 받는 모습을 보인다. 이러한 Euclidean Error 방식의 특징은 성능 변화에 대한 걱정 없이 k를 선택할 수 있도록 한다.
증분 k가 크면 클수록 연산량이 줄어드는 장점이 있지만 시스템의 반응속도를 고려하여 버퍼길이 K의 절반 수준인 30으로 k를 설정하였다.
또한, 문턱값 Th은 Efficiency를 0.8이 되도록 하는 수치인 41.0으로 설정하였다.
이는 전체의 평균적인 Efficiency를 고려할 때는 수치가 1일 때 가장 최적화 되었다고 볼 수도 있지만 일부의 경우에 반드시 꼭짓점을 생성해야 하는 부분을 놓친 경우가 존재한다고 볼 수 있기 때문에 이러한 위험을 방지하기 위해 전체의 평균 Efficiency가 약간 저하될 것을 감수하고 20% 정도의 여유를 두었다.
Euclidean Error 방식은 안전도 파형에서 흔히 찾아볼 수 있는 오버슈팅 현상을 극복하는 능력 또한 뛰어나다. 오버슈팅 현상은 시선을 목표 위치로 옮기려고 할 때 한 번에 정확한 위치로 이동하지 못하고 목표 위치를 넘어선 위치까지 이동한 이후에 다시 본래의 목표 위치를 찾아가는 과정에서 발생하는 것으로 안전도 측정 시 흔하게 발견되는 인적 오류이다.
도 15에서 볼 수 있듯이 Euclidean Error 방식은 오버슈팅 현상이 일어난 안전도 파형에서 오버슈팅 부분을 무시하고 꼭짓점을 찾아내는 능력을 갖추고 있다.
다음으로, 특징 추출부(132)는 PLA 처리부에서 여러 개의 연속된 선분으로 단순화된 신호를 이중 기계학습 구조에 적용하기 위해서는 특징집합(Feature set)의 형태로 표현한다.
여기서, 특징집합이란 표현하고자 하는 정보를 잘 표현할 수 있는 특징들을 수치화하여 다차원 벡터의 형태로 나열한 것으로 대부분의 기계학습 기법에서 채택하는 입력데이터의 형태를 말한다.
PLA 처리부(131)는 안전도 신호의 파형을 선분으로 나타나기 때문에 이를 표현하기 위한 특징으로 가로방향의 너비와 세로방향의 높이 혹은 기울기와 길이와 같은 두 가지 형태를 고려해 볼 수 있다.
이러한 두 가지 형태의 특징들은 선분에 대한 정보로부터 간단한 연산을 통해 얻을 수 있고 하나의 선분에 대해 정보를 직관적으로 표현 가능하다.
또한 하나의 선분을 특징집합으로 표현함에 있어 그 이전에 나타난 선분들에 대한 정보가 함께 있을 경우 해당 선분이 어떠한 선분인지 판단을 내리기에 수월할 수 있다는 점도 고려할 수 있다.
예를 들어, 안전도 신호의 경우 평탄한 신호가 지속된 후 급격하게 상승하는 선분이 나타난 경우 평탄한 구간에서는 시선이 고정되어 있다가 급격하게 상승하는 구간에서 시선을 이동하였다는 것을 알 수 있는데 이러한 판단을 내리기 위해서는 두 가지 구간 모두에 대한 정보가 있는 것이 유리하기 때문이다.
물론 해당하는 선분 이후에 나타나는 선분에 대한 정보도 유용할 수 있으나 이는 빠른 응답속도를 목표로 하는 시스템 설계목표에 저해되기 때문에 배제하였다.
따라서 하나의 선분을 표현하기 위해 몇 개의 선분에 대한 정보를 특징벡터에 기록하는지에 따라 분류성능이 달라질 수 있으며 이러한 선분의 개수를 NF로 표기하였다.
이와 더불어 생체신호를 사용하는 시스템의 특징으로 인해 발생하는 개인차에 대한 고려도 필요하다. 수집된 생체신호 데이터에는 모든 측정자가 같은 거리만큼 시선을 움직였을 때 이로 인해 상승하거나 하강하는 안전도 변화가 기록되어 있는데 이 안전도의 변화 폭에 개인마다 차이가 존재한다.
이러한 개인차를 극복하기 위해 수집된 생체신호 데이터를 분석하여 시선의 이동거리와 안전도 변화폭의 비율 평균을 측정자 개인마다 고유한 상수로 갖도록 하였고 각 측정자의 고유 번호 u를 첨자로 갖는 개인화 상수 SFu로 표기하였다.
PLA의 결과물로 연속된 선분들의 꼭짓점을 M+1개 찾았을 때 꼭짓점의 x축 상에서의 위치 좌표를
Figure 112013119862296-pat00016
, y축 상에서의 위치 좌표를
Figure 112013119862296-pat00017
이라 하고, 각 꼭짓점 사이 구간에서 시선이 이동한 거리를
Figure 112013119862296-pat00018
이라고 하면 SFu와 너비와 높이로 이루어진 특징집합
Figure 112013119862296-pat00019
그리고 기울기와 길이로 이루어진 특징집합
Figure 112013119862296-pat00020
을 다음과 같은 수식으로 정리할 수 있다.
[식 1]
Figure 112013119862296-pat00021

[식 2]
Figure 112013119862296-pat00022
라고 하면 개인화 상수 SFu
[식 3]
Figure 112013119862296-pat00023
산출된 SFu를 Vtmp에 적용하면
[식 4]
Figure 112013119862296-pat00024
도출된 H와 V로부터 특징집합
Figure 112013119862296-pat00025
Figure 112013119862296-pat00026
가 다음과 같이 정리된다.
[식 5]
Figure 112013119862296-pat00027
[식 6]
Figure 112013119862296-pat00028

다음으로, 이중 기계학습 처리부(133)는 시선이 이동되는 구간 내의 특징집합을 선별하는 분류기(133a), 내부에 구비된 곡선 맞춤 모델에 상기 구간 내의 특징집합을 입력하여 상기 구간 내에 흩어져있는 상기 특징집합을 연속적인 1차원 함수로 나타내는 곡선 맞춤 처리부(133b) 및 상기 1차원 함수의 좌표값으로 산출된 상기 사용자의 시선 이동에 따른 거리정보를 출력하는 출력부(133c)를 포함한다.
여기서, 상기 곡선 맞춤 모델 Polynomial 커널함수, Sigmoid 커널함수, Gaussian 커널함수 중 어느 하나가 적용된 SVR(Support Vector Regression)일 수 있다.
보다 구체적으로, 특징집합은 안전도의 특징을 표현하고 있기 때문에 곡선 맞춤 모델과 같은 기계학습 기법을 적용하면 시선이 이동한 거리를 도출할 수 있다. 하지만 안구이동추적으로 위해 필요한 정보는 시선을 이동하였을 때에 나타난 안전도 정보인 것에 비해 실제의 특징집합은 시선이 멈춰 있는 상황의 정보를 포함하고 있다.
이러한 경우 기계학습의 학습과정에서 시선 정지 상태인 안전도 특징을 입력 받을 때 0을 출력시키기 위해 정작 필요한 안구이동추적 분석 성능을 희생해야하는 상황이 발생할 수 있다. 더욱이 평탄하게 나타나야 할 시선 정지 상태의 안전도에 잡음의 간섭이 발생하게 될 경우 더욱 큰 성능저하를 일으킬 수 있다.
따라서 본 발명의 이중 기계학습 처리부(133)는 분류기와 곡선 맞춤 모델을 차례로 거치는 이중 기계학습 구조를 적용하여 분류기 단계에서 시선 이동시의 특징정보만을 미리 선별하도록 한다.
이러한 구조에서는 잡음이 발생한다 하더라도 불필요한 파형을 걸러낼 수 있기 때문에 잡음에 대한 강인함을 확보할 수 있다. 또한 곡선 맞춤 모델이 분석해야할 정보를 시선 이동시에 나타난 안전도 정보로 한정하고 이외의 부분은 분류기가 분담하는 역할을 하기 때문에 결과적으로 안구이동추적의 분석 성능이 향상된다.
여기서, 분류기(Classifier)(133a)는 기계학습 기술과 통계학을 이용한 대표적인 응용으로 훈련 집합(Training set) 데이터를 토대로 주어진 데이터를 분류하는 기준을 학습한 후 새로운 데이터가 입력되면 학습된 기준에 따라 어떠한 종류의 데이터 인지를 분류하는 역할을 한다.
대부분의 분류기는 앞에서 상술한 바와 같은 특징집합을 입력으로 하고 입력된 데이터가 어떤 종류인지를 출력하는데 훈련 집합 데이터에는 출력에 해당하는 종류정보가 포함되어야 한다.
본 발명에서는 이러한 분류기를 이중 기계학습 구조의 첫 단계로서 입력데이터로 주어진 선분 정보를 보고 한 곳을 응시하고 있는 상태인지 아니면 시선을 이동한 것인지를 판단하기 위해 적용하였다.
아래에 후술할 곡선맞춤 모델 과정에 앞서 이러한 분류기 단계를 거침으로써 불필요한 신호는 미리 걸러내어 잡음에 강인하게 되고 두 단계의 기계학습 도구가 안전도 분석의 복잡도를 분담하게 되면서 더욱 정확한 결과를 얻을 수 있도록 한다. 훈련 집합 데이터는 PLA의 결과물을 그래프로 확인하면서 수작업을 통해 한곳을 응시하고 있는 경우에는 'Class 0'으로, 시선이 이동하고 있는 경우에는 Class1'로 분류해 작성하였으며 이렇게 작성된 훈련 집합 데이터를 세 가지 분류기에 적용시켜 학습훈련과정 결과를 비교하였다.
분류기 학습훈련과정은 다양한 기계학습 도구와 데이터마이닝 도구들을 통합시킨 공개 소프트웨어로 널리 알려진 Weka[참고문헌16]'를 이용해 진행되었고, 분류기의 종류, 특징집합의 종류 그리고 NF에 따른 성능을 비교분석하였다.
학습훈련 결과 성능을 산출할 때에는 10-fold cross-validation 기법에 따라 전체 훈련 집합 데이터 중 90%의 데이터를 학습훈련시킨 후 나머지 10%의 데이터를 검사 집합(Test set)으로 두어 해당 검사 집합 데이터에 대한 분류기의 판단 정확도를 산출하고, 이러한 과정을 검사 집합 데이터가 중복되지 않도록 바꾸어 가며 10회 반복해서 평균을 취한 정확도를 성능으로 산출하였다.
도 16의 (a)와 (b)는 각각 특징집합으로
Figure 112013119862296-pat00029
Figure 112013119862296-pat00030
을 사용했을 때 분류기의 종류와 NF에 따른 분류성능 변화를 보인다.
분류기의 종류에 따라 성능의 추이가 소폭 차이가 있지만 ?NF=2일 때와 비교해 NF3일 때 성능이 좋은 모습을 보인다.
즉, 현재 분류하고자 하는 선분의 정보만을 사용하는?NF=2 방식에 비해 이전에 나타난 선분의 정보를 포함하여 분류하는 NF3 방식이 분류기의 성능에 유리하게 작용한다는 것을 확인할 수 있다.
다음으로, 곡선 맞춤 처리부(133b)는 내부에 프로그래밍된 곡선 맞춤 모델(Curve fitting model)을 통해 분류기와 함께 기계학습 기술과 통계학의 대표적인 응용으로 다차원 공간에 점으로 나타나는 데이터들의 집합이 있을 때 이들을 가장 잘 표현해 줄 수 있는 하나의 전달함수를 도출해낸다. 여기서, 상기 곡선 맞춤 모델은 회귀분석(Regression analysis)과 밀접한 관련이 있다.
도 17은 곡선 맞춤 모델을 이용한 예로 두 변수 x, y로 이루어진 2차원 공간에 흩어져있는 데이터들을 입력 하였을 때, 그 결과로 데이터들을 가장 잘 표현하는 x, y의 관계식을 1차원 함수의 형태로 얻는 모습을 보인다.
이와 같이 곡선 맞춤 모델의 적용은 이산 데이터의 집합을 연속적인 함수로 표현할 수 있다는 의미를 가지며 본 발명의 시스템에 있어서는 훈련 집합 데이터에서는 포함되지 않은 임의의 안구 움직임에 대해서도 대응하는 능력을 발휘할 수 있도록 한다는 의미를 갖는다.
참고로, Support Vector Regression(SVR)은 수많은 종류의 곡선 맞춤 모델 중 하나로 대만국립대학 소속의 CSIE(computer science & information engineering)에서 개발된 LibSVM'에 수록되어 있고 SVM(Support Vector Machine)의 이론과 알고리즘을 기반으로 하며 수많은 곡선 맞춤 모델 중에서도 비교적 뛰어난 성능을 보이는 것으로 알려져 있다[참고문헌17].
다만 SVR은 매개변수에 따라 성능이 변하기 때문에 최적화 과정이 필요하며 입력 데이터에 적합한 종류의 커널함수를 사용할 때 좋은 성능을 기대할 수 있다. 본 발명에서는 분류기를 통해 Class 1' 즉, 시선이 이동하는 구간인 것으로 분류된 선분들만을 SVR에 적용시키고 학습시켜 분류기와 문제의 복잡도를 분담할 수 있도록 하였다.
SVR의 입력데이터로는 분류기에 사용되어 좋은 성능을 보인 특징집합
Figure 112013119862296-pat00031
를 사용하되 3가지 커널 함수를 적용해 SVR 성능 변화를 확인하고 각각의 실험에서 매개 변수 최적화 과정을 거치도록 하였다.
커널함수는 기본적으로 1차원 입력을 처리하기 위한 알고리즘을 가진 SVR이 다차원 입력 데이터를 처리하기 위해 사용하는 함수로 임의의 함수를 한 차원 높은 함수로 변형해주는 기능을 한다.
따라서 커널함수를 여러 번 사용하면 어떠한 차원의 데이터도 처리할 수 있게 되어 특징집합
Figure 112013119862296-pat00032
와 같이?2NF차원 입력 데이터를 사용함에 있어서 필수적으로 사용된다. 학습 훈련 과정에서는 다음의 수식과 같이 표현되는 같은 세 가지 커널함수를 적용시켜 성능의 변화를 살펴보았다.
[식 7]
Figure 112013119862296-pat00033
[식 8]
Figure 112013119862296-pat00034
[식 7]
Figure 112013119862296-pat00035
수식을 통해
Figure 112013119862296-pat00036
, C0 그리고 d에 따라 모양이 바뀌는 것을 알 수 있는데, 특히
Figure 112013119862296-pat00037
의 경우 모든 커널함수에 포함되어 있고 SVR 성능에 큰 영향을 끼치는 것으로 알려져 있다.
더불어 SVR 알고리즘 내부에서 사용되는 변수인 C(cost) 또한 SVR의 성능에 영향을 끼치는데 도 18은 이러한?
Figure 112013119862296-pat00038
와 C0의 변화에 따른 LibSVM의 성능 변화를 예를 들어 보이고 있다[참고문헌18].
Figure 112013119862296-pat00039
와 C0는 적용대상에 따라 그 최적값이 다르기 때문에 가장 매번의 학습과정마다 최적화된 수치를 찾기 위한 과정이 필요하다. 이를 위해 매개변수 최적화를 위한 휴리스틱 기법을 적용하였고 이 과정을 도 19의 (a) (b) (c) (d)의 순서대로 나타내었다.
매개변수 최적화 과정은 각 변수에 따른 성능 변화가 2차 함수 형태를 띤다는 것을 점에 착안해 고안한 것으로 각 변수마다 임의의 간격으로 3개의 수치를 적용해 성능을 비교하고 성능이 좋아지는 방향을 따라 나아가도록 하였다.
이 과정이 반복되어 3개의 수치 중 가운데의 수치를 적용하였을 때 가장 좋은 성능을 보이게 되면 해당 수치 부근에서 최적화된 수치를 찾을 수 있다는 판단을 내려 적용할 수치의 간격을 절반으로 줄이며 더욱 자세하게 탐색하도록 하였고 미리 정해진 단계만큼으로 수치간의 간격이 줄어들어 충분히 정밀한 최적값을 얻으면 과정을 종료하도록 하였다.
매개 변수 최적화 과정을 거친 SVR의 학습과정을 분류기에서와 마찬가지 방법으로 10-fold cross-validation 기법에 따라 진행하였다.
도 20은 실험에서 사용한 커널함수의 종류에 따른 SVR의 성능을 비교한 것으로 SVR 학습 훈련 과정에서 입력된 시선의 실제 이동거리 D를 가로축에 나타내고 SVR이 입력 데이터를 이용해 예측한 출력 결과를 세로축에 나타낸 모습이다.
도 20을 참조하면, 사선으로 나타난 점선위치에 많은 점들이 형성될수록 더욱 정확한 성능을 보인다고 할 수 있으며, 이러한 점들의 분포를 결정 계수 R2?혹은 중상관계수 R로 수치화하여 성능을 비교할 수 있다. 도면에 나타난 바와 같이 Gaussian 커널함수를 사용하였을 때 R이 0.99317이라는 높은 수치를 보이며 실험에 사용한 세 가지 커널함수 중 가장 좋은 성능을 보이는 것을 확인할 수 있다.
다음으로, 상기 근전도 신호처리부(140)는 PLA 처리부(141), 선별부(142), 파워 산출부(143) 및 판단부를 포함한다.
상기 PLA 처리부(141)는 상기 측두근 근전도 신호의 파형을 PLA 기법에 적용시켜 복수 개의 연속된 선분들로 단순화시키는 기능을 수행한다.
상기 선별부(142)는 상기 복수 개의 연속된 선분들 중 이를 깨문 상태에서 발생된 측두근 근전도에 해당하는 선분을 선별하는 기능을 수행한다.
상기 파워 산출부(143)는 상기 선별부에서 선별된 선분의 시간 구간과 동일한 측두근 근전도의 시간 구간내의 구간 파워를 산출하는 기능을 수행한다.
상기 판단부(144)는 상기 구간 파워와 내부에 기설정된 문턱값을 비교한 후, 상기 구간 파워가 상기 문턱값 보다 클 경우 이를 깨물고 있는 상태로 판단하여 마우스 클릭을 수행하기 위한 제2 처리신호를 출력하는 기능을 수행한다.
여기서, 선분의 시간 구간과 동일한 구간의 측두근 근전도만을 분리하고 그 구간 내에서의 신호 크기를 판단하기 위한 척도로는 구간 내의 파워를 사용한다.
시간에 따른 측두근 근전도를 EMG(t)라고 했을 때 i번째 선분에 대한 구간내 파워 Power(i)는 아래의 식 10으로 나타낼 수 있다.
[식 10]
Figure 112013119862296-pat00040
식 10을 살펴보면 Power(i)를 구하는 과정에서 i번째 선분이 나타나는 구간인 두 꼭짓점 pxi와 pxi +1 사이의 구간에서 나타난 측두근 근전도 신호를 제곱한 후 시간평균을 취한다는 것을 알 수 있다.
측두근 근전도 신호는 고역통과필터에 의해 직류성분이 제거되어 0 부근으로 집중된 신호이기 때문에 제곱과 같은 비선형 신호처리과정을 거쳤을 때 진폭의 변화가 더욱 두드러지게 된다.
이렇게 얻은 Power(i)는 문턱값 Th와 비교되어 Power(i)가 문턱값 Th보다 큰 경우 측정자가 이를 깨물고 있는 상태로 판단하고 반대의 경우 이를 깨물고 있지 않다고 판단하게 된다.
문턱값 Th는 별도의 실험을 통해 이를 깨물고 있는 상태의 Power(i)와 그렇지 않은 상태의 Power(i)를 평균내고 다시 두 수치를 평균 내어 결정한다.
이하에서는 본 발명의 실시 예에 따른 안구이동추적 시스템을 이용한 안구이동추적 방법을 도면을 참조하여 설명하도록 한다.
도 22a에 도시된 바와 같이, 안구이동추적 방법(S100)은 생체신호 검출단계(S110), 신호 분리단계(S120), 제1 처리신호 출력단계(S130), 제2 처리신호 출력단계(S140) 및 마우스 구동단계(S150)를 포함한다.
상기 생체신호 검출단계(S110)는 사용자의 시선 이동에 따라 움직이는 안구의 움직임으로 인해 발생되는 생체신호를 생체신호 검출부에서 검출하는 단계일 수 있다.
상기 신호 분리단계(S120)는 주파수의 범위에 따라 상기 생체신호를 신호 분리부(120)에서 안전도 신호 및 근전도 신호로 분리하는 단계일 수 있다.
상기 제1 처리신호 출력단계(S130)는 상기 신호 분리단계(S120)에서 분리된 상기 안전도 신호의 파형을 PLA 기법에 적용시켜 복수 개의 연속된 선분으로 단순화시키고, 상기 선분을 다차원 벡터 형태를 갖는 특징집합으로 나열한 후, 상기 특징집합에 이중 기계학습을 적용시켜 상기 안구이동에 따른 상기 사용자의 시선 이동에 따른 거리정보가 포함된 제1 처리신호를 안전도 신호처리부(130)에서 출력하는 단계일 수 있다.
상기 제2 처리신호 출력단계(S140)는 상기 신호 분리단계(S120)에서 분리된 상기 근전도 신호의 파형을 PLA 기법에 적용시켜 복수 개의 연속된 선분들로 단순화시키고, 상기 복수 개의 선분들 중 상기 사용자가 이를 깨문 시점의 측두근 근전도 신호의 시간에 따른 구간 파워와 내부에 기설정된 문턱값을 비교하여 상기 구간 파워가 상기 문턱값보다 클 경우, 마우스의 클릭을 수행하기 위한 제2 처리신호를 근전도 신호처리부(140)에서 출력하는 단계일 수 있다.
상기 마우스 구동단계(S150)는 상기 제1 처리신호의 거리정보에 반응하여 마우스 커서를 이동시키며, 상기 제2 처리신호에 반응하여, 상기 마우스의 클릭버튼을 마우스 구동부(150)에서 구동시키는 단계일 수 있다.
도 22b를 참조하면, 상기 생체신호 측정단계(S110)는 저주파 성분을 제거하는 적어도 하나 이상의 고역통과필터(111a)가 구비된 전처리 필터부(111)를 이용하여 상기 생체신호의 저주파 성분을 제거하는 단계(S111), 상기 전처리 필터부(111)에서 저주파 성분이 필터링된 생체신호를 계측증폭기를 이용하여 1차 증폭하는 단계(S112), S112에서 1차 증폭된 생체신호의 40Hz 초과 주파수 대역을 후처리 필터부에서 제거하는 단계(S113), S113에서 필터링된 생체신호를 출력증폭부에서 2차 증폭하는 단계(S114) 및 S114에서 증폭된 생체신호를 MCU(115)를 통해 디지털 신호로 변환하는 단계(S115)를 포함한다.
도 22c를 참조하면, 상기 S113은 상기 S112에서 1차 증폭된 생체신호의 40Hz 초과 주파수 대역을 저역통과필터(113a)를 이용하여 제거하는 단계(S113a); 및 S113에서 필터링된 생체신호로부터 제거되지 못한 60Hz 이상의 대역을 대역제거필터(113b)를 이용하여 추가 필터링하는 단계(S113b)를 포함한다.
도 22d를 참조하면, 상기 신호 분리단계(S120)는 Butterworth 2pole 10Hz 저역통과필터(121)를 이용하여 안전도 신호를 추출하는 단계(S121) 및 Butterworth 4pole 30Hz 고역통과필터(122)를 이용하여 측두근 근전도 신호를 추출하는 단계(S122)를 포함한다.
도 22e를 참조하면, 상기 안전도 신호처리단계(S130)는 PLA 처리부(131) 내에 저장된 변형 슬라이딩 윈도우 알고리즘을 통해 상기 안전도 신호의 파형을 복수 개의 연속된 선분으로 단순화시키는 단계(S131), 특징 추출부(132)에서 상기 선분을 다차원 벡터 형태의 특징집합들로 변환하는 단계(S132) 및 이중 기계학습 처리부(133)에서 상기 특징집합을 이중 기계학습시켜 상기 안구이동에 따른 상기 사용자의 시선 이동에 따른 거리정보가 포함된 제1 처리신호를 출력하는 단계(S133)를 포함한다.
도 22f를 참조하면, 상기 S133은 분류기를 이용하여 시선이 이동되는 구간 내의 특징집합을 선별하는 단계(S133a), 곡선 맞춤 처리부 내에 구비된 곡선 맞춤 모델에 상기 구간 내의 특징집합을 입력하여 상기 구간 내에 흩어져있는 상기 특징집합을 연속적인 1차원 함수로 산출하는 단계(S133b) 및 출력부에서 상기 1차원 함수의 좌표값으로 산출된 상기 사용자의 시선 이동에 따른 거리정보를 출력하는 단계(S133c)를 포함한다.
도 22g를 참조하면, 상기 근전도 신호처리단계(S140)는 PLA 처리부에서 상기 측두근 근전도 신호의 파형을 PLA 기법에 적용시켜 복수 개의 연속된 선분들로 단순화시키는 단계(S141), 선별부에서 상기 복수 개의 연속된 선분들 중 이를 깨문 상태에서 발생된 측두근 근전도에 해당하는 선분을 선별하는 단계(S142), S142에서 선별된 선분의 시간 구간과 동일한 측두근 근전도의 시간 구간내의 구간 파워를 파워 산출부에서 산출하는 단계(S143) 및 판단부에서 상기 구간 파워와 내부에 기설정된 문턱값을 비교한 후, 상기 구간 파워가 상기 문턱값 보다 클 경우 이를 깨물고 있는 상태로 판단하여 마우스 클릭을 수행하기 위한 제2 처리신호를 출력하는 단계(S144)를 포함한다.
상기 S143은 상기 구간 파워를 아래에 기재된 식 10을 이용하여 산출한다.
[식 10]
Figure 112013119862296-pat00041
여기서, 시간에 따른 측두근 근전도를 EMG(t)라고 했을 때, i 번째 선분에 대한 구간 파워는 Power(i)로 나타낸다.
이하에서는 실험을 통해 본 발명에서 제안하는 안구이동추적 시스템의 성능평가 실험한 예를 설명하도록 한다.
본 발명에서 제안하는 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템(100)은 사용자의 안구이동을 연속적으로 추적해 화면상에서 사용자가 현재 응시하는 위치를 알아내는 기능을 수행한다.
그러나 사용자가 조작을 필요로 하지 않고 다만 화면을 보고 있는 상황에서도 이러한 기능을 계속해서 수행하는 것은 불필요한 자원의 낭비이며 오히려 사용자의 시야를 방해할 수 있다. 하지만 조작이 필요 없을 때 기능을 일시중지할 경우 사용자가 현재 응시하는 위치를 놓치게 되어 이후 기능을 재개할 때 추적을 시작할 위치를 알 수 없게 된다.
따라서 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템의 적합한 응용 방식은 조작이 필요한 시점이 되면 먼저 안구이동 추적을 시작할 위치가 주어지고 이 위치에서 시작된 안구이동 추적을 단시간 내에 완료하는 방식이라고 할 수 있고 이러한 취지에 따라 동작하는 프로그램을 제작해 시스템의 성능을 평가하였다.
여기서, 제작된 성능평가 프로그램은 먼저 화면 중앙에 원이 나타나 2초간 머문 후 좌우의 임의의 위치로 이동한다.
이때 시스템 사용자는 화면 중앙에 나타났던 원의 위치를 응시한 상태에서 이를 깨물고 이 후 원이 이동하게 되면 마우스를 이용해 드래그&드롭 동작을 하는 것과 같이 시선을 이동한 원 위치로 옮긴 후 이를 깨물던 힘을 풀도록 한다.
이러한 과정에서 프로그램은 이를 깨물고 있는 시간 동안 이루어진 안구이동을 연속적으로 추적하고 이를 깨물던 힘을 푸는 시점까지 시스템이 추적한 최종 위치와 화면상의 원이 이동한 위치를 비교해 성능을 파악하게 된다.
도 23 및 도 24를 참조하면, 일련의 동작은 수 초 내의 짧은 시간동안에 완성할 수 있으며 드래그&드롭과 유사한 친숙하고 직관적인 방식으로 이루어지기 때문에 사용법을 익히는 과정에서의 부담감이 없다.
또한 생체신호 수집 단계에서는 화면상의 원이 최대 9 군데의 위치를 목표로 하여 왕복하도록 하였었는데 성능평가 단계에서는 이와는 다른 좌우 10 군데의 위치로 선정하여 학습훈련되지 않은 임의의 위치로 시선을 이동했을 때 SVR이 안구이동을 얼마나 잘 추적해 줄 수 있는지에 대한 성능을 확인할 수 있도록 하였다.
도 23을 참조하면, 생체신호 수집단계에서 원의 이동이 이루어진 위치와 성능평가 단계에서 원이 임의 장소로 이동이 이루어진 위치 간의 차이를 보인다.
성능평가 단계에서 더욱 촘촘한 간격으로 배치시켜 서로 무관한 위치로 설정되었다는 것을 볼 수 있다.
이러한 성능평가 프로그램을 이용해 생체신호 수집에 참여한 총 7명 측정자 중 4명에 대한 성능평가를 수행하였다. 모든 성능평가 참여 측정자는 먼저 10분간 시스템을 사용해 보면서 익숙해지는 시간 가진 후 성능평가를 수행하였고 화면상의 원이 10 군데의 위치를 임의의 순서로 이동하는 것을 1 회로 하여 30회의 성능평가를 수행하였다. 따라서 측정자마다 총 300번의 안구이동에 대한 성능평가가 이루어 졌고 그 결과는 도 25 및 도 26을 참조한다.
'Subj #n'은 성능평가에 참여한 4명의 측정자에게 각각 번호를 붙여 표기한 것이고 시선이동의 목표위치별로 -5 ~ 5의 10군데 위치에 따라 결과를 따로 정리하여 위치에 따른 성능의 변화를 확인할 수 있도록 하였다.
성능평가 결과는 두 가지의 성능평가 지표를 산출하였는데 첫 번째 성능평가 지표는 도 25의 (a)로서, 프로그램이 표시하는 목표 원의 위치와 제안된 시스템을 이용해 측정자의 안구이동을 추적한 위치의 오차를 23인치 모니터상에서 봤을 때 cm 단위로 환산한 것으로 모니터의 너비가 51cm 인 것을 감안하여 오차의 수준을 확인할 수 있다.
또한 두 번째 성능평가 지표는 도 25의 (b)로서, 중앙의 원이 임의의 위치로 이동한 후 드래그&드롭 동작을 완료할 때까지 걸린 소요시간을 초 단위로 나타낸 것이다.
결과 중 오차를 보면 전반적으로 측정자에 따른 개인차가 크게 나타나지 않고 유사한 결과를 보이며 좌우방향에 따른 큰 차이 없이 대칭적인 결과가 나타나는 것을 확인할 수 있다.
위치에 따른 오차를 살펴보면 생체신호 수집단계에서 학습된 3, 7 위치와 인접한 3위치의 경우에는 보다 오차가 0.5cm 수준으로 가장 작으며 2 위치에서도 1cm 수준의 작은 오차를 보인다.
반면 이를 제외한 위치에서는 1.5 ~ 2cm 수준으로 좀 더 큰 오차를 보여 위치에 따른 편차가 나타나는 모습이 확인된다. 이러한 결과는 사람의 안구 움직임은 각도가 변화하는 회전운동인 것에 비해 시스템은 안구의 움직임을 직선운동인 것으로 취급하였기 때문에 움직임을 시작하는 중앙 위치에서 안구이동 거리가 중간수준인 2, 3의 위치에서 대해서 최적화되고 이 위치에서 벗어날수록 직선운동과 회전운동의 차이가 크게 나타나는 것이 원인으로 분석된다.
전체적인 평균오차는 1.40cm 수준으로 화면상의 원의 크기가 지름 3cm 이고 화면의 전체 크기가 51cm 인 것과 비교할 때 충분히 실용가능한 수준의 오차를 보이는 것으로 볼 수 있다.
한편 소요시간은 평균 수치에서 측정자별 개인차가 나타나고 있으나 위치에 다른 전반적인 경향은 유사하게 나타나고 있음을 확인할 수 있다. 전반적으로 고르게 평균 2초 수준의 소요시간을 보이는 가운데 시선 이동을 시작하는 중앙 위치에서 가장 가까운 1 위치에서는 평균 2.2초 수준의 약간 큰 수치를 보인다.
이는 시선을 이동해야 할 거리가 가깝기 때문에 측정자가 좀 더 세밀한 동작을 해야 한다는 인식을 하게 되면서 나타나는 현상으로 분석된다. 이처럼 측정자와 위치에 따라 약간씩의 편차를 보이고 있지만 전체 평균 1.97초의 소요시간을 보이고 있어 시스템 설계 목적에 맞는 빠른 응답속도를 보이고 있음을 알 수 있다.
앞에서 상술한 생체신호 수집단계는 안구운동에 따라 발생하는 생체신호의 특성을 분석하기 위한 사전 준비 과정으로서, 생체신호 분석에 필요한 표본 데이터들을 준비하기 위해 개발된 생체신호 취득 하드웨어를 이용해 총 7명의 측정자로부터 안구이동 정보와 이에 따라 발생하는 생체신호를 기록 및 수집하는 과정이다.
이러한 수집과정을 보다 정확히 진행하기 위해 별도의 GUI 프로그램을 제작하여 수집 과정을 진행하였다. 모니터 화면상에 표시한 원이 정해진 패턴대로 움직이도록 하여 측정자는 이 원을 지속적으로 응시하며 그 움직임에 따라 시선을 옮기도록 하였고 이때 발생하는 생체신호를 실시간으로 수집하였다. 더불어 이 화면상에서 움직이는 원의 이동경로는 곧 측정자의 안구이동 정보라고 볼 수 있기 때문에 생체신호와 함께 기록하였다.
생체신호 수집을 위한 GUI 프로그램은 사용자가 화면을 보면서 시선을 이동할 때 그 이동 거리와 이동 속도가 매번 차이가 있을 것을 가정하여 화면상에서 원이 한 번에 움직이는 거리를 세 단계로 구분하고 이동 속도 또한 세 단계로 구분하도록 제작되었다.
원의 이동거리 단계를 L이라 하면 원은 L에 따라 도 7에 나타낸 것과 같이 움직임을 변화하여 L이 작을수록 한 번에 먼 거리를 움직이고 L이 클수록 한 번에 짧은 거리씩 여러 번으로 나누어 움직인다.
따라서 각 L마다 세 단계의 속도를 적용해 총 9 단계로 구분된 서로 다른 움직임을 보이고 측정자는 원의 움직임에 따라 시선을 움직이며 생체신호를 기록하게 된다.
각 측정자는 9 단계의 측정을 1회로 하여 총 10회씩 측정하도록 하였고 시선의 이동정보와 측정된 생체신호를 동시에 기록하였다.
이렇게 9 단계로 구분하여 수집된 데이터는 본 발명에서 제시하는 곡선 맞춤모델에 적용되어 더욱 세밀하고 다양한 안구의 움직임에도 대응할 수 있는 능력을 얻게 된다.
이하에서는 본 발명의 안구이동추적 시스템 응용방법의 한 가지 종류로 개발된 최종 사용자를 위한 응용프로그램을 설명하도록 한다.
응용프로그램은 기본적으로 성능평가 프로그램과 유사한 동작방식을 취하되 실사용자의 편의성을 고려하여 개발되었다. 먼저 프로그램을 처음 실행했을 시에는 화면에 나타나는 부분 없이 Windows 운영체제상의 트레이 아이콘만 나타난다.
이 트레이 아이콘을 오른 클릭하면 나타나는 메뉴에서는 사용자 선택을 할 수 있는데 사전에 미리 저장된 사용자의 경우 개인별 SF가 저장되어 있어 자신의 이름을 선택하는 것으로 SF를 설정할 수가 있다.
만약 미리 저장된 사용자가 아닌 경우에는 생체신호 수집 과정을 간소하게 치를 수 있어 즉석에서 개인의 SF를 얻을 수 있도록 하였다. 사용자 선택을 마친 이후에는 동일한 트레이 아이콘 메뉴에서 PC에 연결된 생체신호 취득 하드웨어를 찾고 연결하는 기능을 수행할 수 있으며 연결 이후에는 사용자의 생체신호가 PC로 전달되고 실시간으로 제안된 시스템의 알고리즘이 수행된다.
도 27을 참조하면, 생체신호 측정부가 연결된 단계에서 수행되는 알고리즘은 최소한의 부분이고 화면상의 변화도 없으며 단지 이를 깨무는 동작이 있을 때까지 대기한다.
이때, 측두근 근전도 분석을 통해 이를 깨무는 동작이 포착되면 화면 중앙에 먼저 손가락 모양의 포인터가 1초에 걸쳐 서서히 나타나고 곧이어 이 포인터를 중심으로 좌우에 6개의 버튼이 1초에 걸쳐 서서히 나타난다.
사용자는 서서히 나타나고 있는 중앙의 포인터를 응시하고 있다가 2초의 시간이 흘러 버튼까지 모두 나타난 이후 포인터의 색이 청색으로 변하고 나면 시선을 움직여 좌우의 버튼으로 포인터를 이동시킬 수 있고 원하는 버튼 위로 시선을 옮긴 후 이를 깨물고 있던 힘을 풀어 버튼을 클릭할 수 있다.
마우스의 버튼 클릭까지 모든 동작이 완료된 이후에는 화면에 나타났던 포인터와 버튼이 사라지며 생체신호 측정부가 갓 연결된 상태와 마찬가지로 최소한의 동작만을 하며 사용자가 이를 깨물 때까지 대기상태에 들어간다.
이러한 일련의 동작은 한 번의 이를 깨물고 시선을 이동 후 다시 놓아주는 간단한 조작을 통해 하나의 완성된 명령을 PC에 전달할 수 있으며 기존 마우스를 이용해 친숙하게 사용하던 드래그&드롭 동작과 유사해 적응에 어려움이 없다.
또한 대기상태에서는 화면에 나타나 시야를 방해하는 요소가 없는 것에 더해 최소한의 동작을 위한 알고리즘만이 수행되기 때문에 PC의 연산량에 대한 부담이 없다. 따라서 손을 이용하지 않고도 5초 안팎의 시간동안 간단한 조작을 통해 원하는 명령을 내릴 수 있다.
본 발명은 단채널 생체신호를 이용하여 안구이동을 추적하고 이와 독립되어 추가적인 조작도 가능한 시스템으로서, 단 2개의 전극만을 부착하고 단채널 생체신호를 취득 가능하며 이를 주파수 분할을 통해 안전도와 측두근 근전도로 분리한 후 동시에 독립적으로 처리하도록 개발되었다.
여기서, 안전도 신호처리 과정에서는 먼저 시계열 데이터를 연속된 선분의 형태로 단순화하는 PLA 알고리즘을 적용해 효율적으로 안전도의 특징을 얻는 동시에 안구의 움직임에 대해 0.2초 수준의 빠른 응답속도를 보일 수 있었으며, 이후 분류기와 곡선 맞춤 모델의 두 가지 기계학습 기법을 순차적으로 적용시키는 이중 기계학습 구조를 적용해 생체신호의 잡음에 대한 강인함을 확보하고 안전도 처리에 대한 복잡도를 분담시켜 분석결과의 정확성을 향상시켰다.
또한, 실용적인 응용 프로그램을 적용하여 손을 전혀 사용하지 않는 방식으로 마우스로 드래그&드롭을 하는 동작과 유사한 조작을 수행할 수 있어 소요시간 5초 미만의 간단하고 친숙한 조작을 통해 원하는 임의의 위치를 클릭하는 완성된 동작을 보였다.
이는 기존의 안전도를 이용한 HCI 연구들에서의 패턴검출 방식과 달리 연속적으로 안구의 움직임을 추적하기 때문에 더욱 즉각적이고 연속적인 조작이 가능하며 선택지가 많은 경우에도 적용할 수 있다는 점에서 실용성이 크게 향상되었으며 부착해야 하는 전극의 수 또한 간소화되었기 때문에 사용자의 거부감을 최소화할 수 있다.
한편 카메라를 이용한 안구이동추적 시스템은 현재 안구의 방향을 직접적으로 분석하는 방식인 것에 비하여 제안된 시스템은 안구이동을 연속적으로 추적해 현재 안구의 방향을 찾기 때문에 장시간 연속적으로 이용할 경우 오차가 조금씩 누적되어 정확성이 떨어지는 상황이 발생할 수 있다.
하지만 본 발명에서 제안한 응용방식은 평소에는 최소한의 동작만을 유지하며 조작이 필요한 순간에만 미리 정해진 위치에서부터 안구이동 추적을 하기 때문에 이러한 단점에서 자유롭다.
또한 실시간 영상처리를 위해 고성능의 시스템이 필요한 카메라 기반의 안구이동추적 시스템과 유사한 기능을 매우 가벼운 시스템 사양만으로 수행할 수 있어 비용과 휴대성 측면에서 장점을 보인다.
더불어 이를 깨무는 동작을 감지하는 기능을 통해 안구이동추적 이후의 클릭이나 선택과 같은 추가적인 조작도 가능하기 때문에 손을 전혀 이용하지 않고도 완성된 동작이 가능하여 기존의 손을 이용하는 인터페이스와는 차별화된 사용자 경험을 줄 수 있으며 사지 거동이 불편한 중증 장애인들을 위해 유용하게 사용될 수 있다.
성능평가 결과에서 위치에 따라 편차가 있는 오차가 발생한 부분은 이러한 회전 운동과 직선이동의 차이를 SVR이 충분히 따라가지 못했기 때문으로 분석되기 때문이다. 또한 제안된 시스템의 근본적인 한계로 화면의 크기 혹은 위치가 바뀌면 정확한 성능을 발휘할 수 없다는 점을 고려해 볼 수 있다.
본 발명의 실험과정은 이러한 변수가 고정된 상황에서 이루어졌지만 실생활에서의 응용에는 이러한 한계가 드러날 수 있다.
따라서 제안된 시스템의 응용에는 HMD(Head Mounted Display)와 같이 사용자 입장에서 크기 및 위치가 고정된 화면을 제공하는 장치와의 연동이 이상적이라고 볼 수 있다.
HMD 장치는 근래 십 수년 동안 꾸준히 발전하여 왔고 최근에는 3D 디스플레이의 발전에 힘입어 한 단계 도약이 진행되고 있다. 더욱이 스마트폰과 모바일환경에 발맞추어 Google 사의 Glass[참고문헌19]와 같은 프로젝트도 진행되며 새로운 트렌드를 주도하기 위한 노력을 기울이고 있어 향후 제안된 시스템과의 연동을 통한다면 그 발전 가능성이 기대된다.
한편, 이상에서는 본 발명의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안 될 것이다.
[참고문헌]
[참고문헌1] M. Benzeghiba, R. De Mori, O. Deroo, S. Dupont, T. Erbes, D. Jouvet,
L. Fissore, P. Laface, A. Mertins, C. Ris, R. Rose, V. Tyagi, C. Wellekens, "Automatic speech recognition and speech variability: A review", Speech Communication, vol 49, no 10-11, pp. 763-786, Oct-Nov. 2007.
[참고문헌2] S. Mitra, T. Acharya, "Gesture Recognition: A Survey", IEEE Trans. Applications and Reviews, vol. 37, no. 3, pp. 311-324, May. 2007.
[참고문헌3] A. Bashashati, M. Fatourechi, R. K. Ward, G. E. Birch, "A survey of signal processing algorithms in braincomputer interfaces based on electrical brain signals", Journal of Neural Engineering, vol. 4, no. 2, Mar. 2007.
[참고문헌4] L. Y. Deng, C. L. Hsu, T. C. Lin, J. S. Tuan, S. M. Chang, "EOG-based HumanComputer Interface system development", Expert Systems with Applications, vol 37, no 4, pp. 3337-3343, Apr. 2010.
[참고문헌5] A. B. Usakli, S. Gurkan, "Design of a Novel Efficient HumanComputer Interface: An Electrooculagram Based Virtual Keyboard", IEEE Trans. Instrumentation and Measurement, vol. 59, no. 8, pp. 2099-2018, Aug. 2010.
[참고문헌6] A. Ubeda, E. Ianez, J. M. Azorin, "Wireless and Portable EOG-Based Interface for Assisting Disabled People", IEEE/ASME Trans. Mechatronics, vol. 16, no. 5, pp. 870-873, Oct. 2011.
[참고문헌7] R. Barea, L. Boquete, S. Ortega, E. Lopez, J. M. Rodriguez-Ascariz, "EOG-based eye movements codification for human computer interaction", Expert Systems with Applications, vol 39, no 3, pp. 2677-2683, Feb. 2012.
[참고문헌8] C. S. Lin, C. C. Huan, C. N. Chan, M. S. Yeh, C. C. Chiu, "Design of a computer game using an eye-tracking device for eyes activity rehabilitation", Optics and Lasers in Engineering, vol 42, no 1, pp. 91-108, Jul. 2004.
[참고문헌9] Z. Zhu, Q. Ji, "Novel Eye Gaze Tracking Techniques Under Natural Head Movement", IEEE Trans. Biomedical Engineering, vol. 54, no. 12, pp. 2246-2260, Dec. 2007.
[참고문헌10] Tobii Technology, "Tobii Eye Tracking - An introduction to eye tracking and Tobii Eye Trackers", Whitepapers by Tobii Technology, pp. 1-14, Jan. 2010.
[참고문헌11] E. Keogh, S. Chu, D. Hart, M. Pazzani, "An Online Algorithm for Segmenting Time Series", in Proc. IEEE Inter. Conf. Data Mining, pp. 289-296, Nov. 2001.
[참고문헌12] J. Sklansky, V. Gonzalez, "Fast polygonal approximation of digitized curves", Pattern Recognition, vol. 12, no. 5, pp. 327-331, 1980.
[참고문헌13] D. H. Douglas, T. K. Peucker, "Algorithms for the Reduction of the Number of Points Required to Represent a Digitized Line or Its Caricature.", Canadian Cartographer, vol. 10, no. 2, pp. 112-122, Dec. 1973.
[참고문헌14] A. Kolesnikov, "Efficient Online Algorithms for the Polygonal Approximation of Trajectory Data", IEEE Inter. Conf. Mobile Data Management, vol. 1, Jun. 2011.
[참고문헌15] A. Koski, M. Juhola, M. Meriste, "Syntactic Recognition of ECG Signals By Attributed Finite Automata.", Pattern Recognition, vol. 28, no. 12, pp. 1927-1940, Dec. 1995.
[참고문헌16] M. Hall, E. Frank, G. Holmes, B. Pfahringer, P. Reutemann, I. H. Witten, "The weka data mining software: An update.", ACM SIGKDD Explorations Newsletter, vol. 11, no. 1, Jun. 2009.
[참고문헌17] C. C. Chang, C. J. Lin, "LIBSVM: A Library for Support Vector Machines", Technical report, Department of Computer Science, National Taiwan University, pp. 1-39, 2001
[참고문헌18] C. W. Hsu, C. C. Chang, C. J. Lin, "A Practical Guide to Support Vector Classication", Technical report, Department of Computer Science, National Taiwan University, pp. 1-16, 2003
[참고문헌19] Google Inc., "Google Glass - What It Does", Google. 28 Feb. 2013. URL http://www.***.com/glass/start/what-it-does/
100: 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템
110: 생체신호 측정부
111: 전처리 필터부 111a: 고역통과필터
112: 계측증폭기 113: 후처리 필터부
113a: 저역통과필터 113b: 대역제거필터
114: 출력증폭부 115: MCU
120: 신호 분리부 121: 저역통과필터
122: 고역통과필터 130: 안전도 신호처리부
131: PLA 처리부 132: 특징 추출부
133: 이중 기계학습 처리부 133a: 분류기
133b: 곡선 맞춤 처리부 133c: 출력부
140: 근전도 신호처리부 141: PLA 처리부
142: 선별부 143: 파워 산출부
144: 판단부 150: 마우스 구동부

Claims (20)

  1. 사용자의 시선 이동에 따라 움직이는 안구의 움직임으로 인해 발생되는 생체신호를 검출하는 생체신호 측정부(110);
    주파수의 범위에 따라 상기 생체신호를 안전도 신호 및 근전도 신호로 분리하는 신호 분리부(120);
    상기 안전도 신호의 파형을 PLA 기법에 적용시켜 복수 개의 연속된 선분으로 단순화시키고, 상기 선분을 다차원 벡터 형태를 갖는 특징집합으로 나열한 후, 상기 특징집합에 이중 기계학습을 적용시켜 상기 안구이동에 따른 상기 사용자의 시선 이동에 따른 거리정보가 포함된 제1 처리신호를 출력하는 안전도 신호처리부(130);
    상기 근전도 신호의 파형을 PLA 기법에 적용시켜 복수 개의 연속된 선분들로 단순화시키고, 상기 복수 개의 선분들 중 상기 사용자가 이를 깨문 시점의 측두근 근전도 신호의 진폭값과 내부에 기설정된 문턱값을 비교하여 상기 진폭값이 상기 문턱값보다 클 경우, 마우스의 클릭을 수행하기 위한 제2 처리신호를 출력하는 근전도 신호처리부(140); 및
    상기 제1 처리신호의 거리정보에 반응하여 마우스 커서를 이동시키며, 상기 제2 처리신호에 반응하여, 상기 마우스의 클릭버튼을 구동시키는 마우스 구동부(150)를 포함하는 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템.
  2. 제1항에 있어서,
    상기 생체신호 측정부(110)는,
    상기 생체신호의 저주파 성분을 제거하기 위한 전처리 필터부(111);
    상기 전처리 필터부(111)에서 저주파 성분이 필터링된 생체신호를 1차 증폭하는 계측증폭기(112);
    상기 계측증폭기(112)에서 증폭된 생체신호의 40Hz 초과 주파수 대역을 제거하는 후처리 필터부(113);
    상기 후처리 필터부(113)에 필터링된 생체신호를 2차 증폭하는 출력증폭부(114); 및
    상기 출력증폭부(114)에서 증폭된 생체신호를 디지털 신호로 변환하는 MCU(115)를 포함하고,
    상기 전처리 필터부(111)는,
    저주파 성분을 제거하는 적어도 하나 이상의 고역통과필터(111a)가 구비되는 것을 특징으로 하는 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템.
  3. 제2항에 있어서,
    상기 계측증폭기(112)는,
    증폭률이 56V/V으로 ±50 ~ ±150mV 범위의 출력을 보이며, 상기 출력증폭부(114)는 증폭률이 10V/V으로 ±0.5 ~ ±1.5V 범위의 출력을 보이는 것을 특징으로 하는 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템.
  4. 제2항에 있어서,
    상기 후처리 필터부(113)는,
    40Hz 초과 주파수 대역을 제거하는 저역통과필터(113a);
    상기 저역통과필터(113a)에서 필터링된 생체신호로부터 제거되지 못한 60Hz 이상의 대역을 추가 필터링하는 대역제거필터(113b)를 포함하는 것을 특징으로 하는 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템.
  5. 제1항에 있어서,
    상기 신호 분리부(120)는,
    IIR(Infinite Impulse Response) 방식으로 설계되며, 안전도 신호를 추출하는 Butterworth 2pole 10Hz 저역통과필터(121); 및
    IIR(Infinite Impulse Response) 방식으로 설계되며, 측두근 근전도 신호를 추출하는 Butterworth 4pole 30Hz 고역통과필터(122)를 포함하는 것을 특징으로 하는 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템.
  6. 제1항에 있어서,
    상기 안전도 신호처리부(130)는,
    내부에 저장된 변형 슬라이딩 윈도우 알고리즘을 통해 상기 안전도 신호의 파형을 복수 개의 연속된 선분으로 단순화시키는 PLA 처리부(131);
    상기 선분을 다차원 벡터 형태의 특징집합들로 변환하는 특징 추출부(132); 및
    상기 특징집합에 이중 기계학습을 적용시켜 상기 안구이동에 따른 상기 사용자의 시선 이동에 따른 거리정보가 포함된 제1 처리신호를 출력하는 이중 기계학습 처리부(133);를 포함하는 것을 특징으로 하는 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템.
  7. 제6항에 있어서,
    상기 변형 슬라이딩 윈도우 알고리즘은,
    아래와 같은 의사코드(pseudo-code)로 표현되는 것을 특징으로 하는 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템.
    Figure 112015018517912-pat00042

  8. 제6항에 있어서,
    상기 특징 추출부(132)는,
    상기 선분들을 벡터형태의 특징집합을 아래에 기재된 식 1 내지 식 6을 순차적으로 이용하여 산출하는 것을 특징으로 하는 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템.
    [식 1]
    Figure 112015018517912-pat00043


    [식 2]
    Figure 112015018517912-pat00044

    [식 3]
    Figure 112015018517912-pat00045

    산출된 SFu를 Vtmp에 적용하면
    [식 4]
    Figure 112015018517912-pat00046

    도출된 H와 V로부터 특징집합
    Figure 112015018517912-pat00047
    Figure 112015018517912-pat00048
    가 다음과 같이 정리된다.
    [식 5]
    Figure 112015018517912-pat00049

    [식 6]
    Figure 112015018517912-pat00050

    여기서, SFu는 개인화 상수이고, M+1은 연속된 선분들의 꼭짓점을 나타내며, pxi는 꼭짓점의 x축 상에서의 위치 좌표를 나타내며, pyi는 y축 상에서의 위치 좌표를 나타내며, di는 각 꼭짓점 사이 구간에서 시선이 이동한 거리를 나타내고,
    Figure 112015018517912-pat00051
    는 SFu와 너비와 높이로 이루어진 특징집합이며, ?
    Figure 112015018517912-pat00052
    는 기울기와 길이로 이루어진 특징집합이고, NF는 선분의 개수를 의미한다.
  9. 제6항에 있어서,
    상기 이중 기계학습 처리부(133)는,
    시선이 이동되는 구간 내의 특징집합을 선별하는 분류기(133a); 및
    내부에 구비된 곡선 맞춤 모델에 상기 구간 내의 특징집합을 입력하여 상기 구간 내에 흩어져있는 상기 특징집합을 연속적인 1차원 함수로 나타내는 곡선 맞춤 처리부(133b); 및
    상기 1차원 함수의 좌표값으로 산출된 상기 사용자의 시선 이동에 따른 거리정보를 출력하는 출력부(133c)를 포함하는 것을 특징으로 하는 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템.
  10. 제9항에 있어서,
    상기 곡선 맞춤 모델은,
    Polynomial 커널함수, Sigmoid 커널함수, Gaussian 커널함수 중 어느 하나가 적용된 SVR(Support Vector Regression)인 것을 특징으로 하는 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템.
  11. 제1항에 있어서,
    상기 근전도 신호처리부(140)는,
    상기 측두근 근전도 신호의 파형을 PLA 기법에 적용시켜 복수 개의 연속된 선분들로 단순화시키는 PLA 처리부(141);
    상기 복수 개의 연속된 선분들 중 이를 깨문 상태에서 발생된 측두근 근전도에 해당하는 선분을 선별하는 선별부(142);
    상기 선별부(142)에서 선별된 선분의 시간 구간과 동일한 측두근 근전도의 시간 구간내의 구간 파워를 산출하는 파워 산출부(143); 및
    상기 구간 파워와 내부에 기 설정된 문턱값을 비교한 후, 상기 구간 파워가 상기 기 설정된 문턱값 보다 클 경우 이를 깨물고 있는 상태로 판단하여 마우스 클릭을 수행하기 위한 제2 처리신호를 출력하는 판단부(144)를 포함하는 것을 특징으로 하는 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템.
  12. 제11항에 있어서,
    상기 파워 산출부(143)는,
    상기 구간 파워를 아래에 기재된 식 10을 이용하여 산출하는 것을 특징으로 하는 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템.
    [식 10]
    Figure 112013119862296-pat00053

    여기서, 시간에 따른 측두근 근전도를 EMG(t)라고 했을 때, i 번째 선분에 대한 구간 파워는 Power(i)로 나타낸다.
  13. 제1항 내지 제12항 중 어느 하나의 항에 기재된 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템을 이용한 안구이동추적 방법에 있어서,
    사용자의 시선 이동에 따라 움직이는 안구의 움직임으로 인해 발생되는 생체신호를 생체신호 검출부에서 검출하는 생체신호 검출단계(S110);
    주파수의 범위에 따라 상기 생체신호를 신호 분리부(120)에서 안전도 신호 및 근전도 신호로 분리하는 신호 분리단계(S120);
    상기 신호 분리단계(S120)에서 분리된 상기 안전도 신호의 파형을 PLA 기법에 적용시켜 복수 개의 연속된 선분으로 단순화시키고, 상기 선분을 다차원 벡터 형태를 갖는 특징집합으로 나열한 후, 상기 특징집합에 이중 기계학습을 적용시켜 상기 안구이동에 따른 상기 사용자의 시선 이동에 따른 거리정보가 포함된 제1 처리신호를 안전도 신호처리부(130)에서 출력하는 제1 처리신호 출력단계(S130); 및
    상기 신호 분리단계(S120)에서 분리된 상기 근전도 신호의 파형을 PLA 기법에 적용시켜 복수 개의 연속된 선분들로 단순화시키고, 상기 복수 개의 선분들 중 상기 사용자가 이를 깨문 시점의 측두근 근전도 신호의 시간에 따른 구간 파워와 내부에 기 설정된 문턱값을 비교하여 상기 구간 파워가 상기 기 설정된 문턱값보다 클 경우, 마우스의 클릭을 수행하기 위한 제2 처리신호를 근전도 신호처리부(140)에서 출력하는 제2 처리신호 출력단계(S140); 및
    상기 제1 처리신호의 거리정보에 반응하여 마우스 커서를 이동시키며, 상기 제2 처리신호에 반응하여, 상기 마우스의 클릭버튼을 마우스 구동부(150)에서 구동시키는 마우스 구동단계(S150)를 포함하는 안구이동추적 방법.
  14. 제13항에 있어서,
    상기 생체신호 측정단계(S110)는,
    저주파 성분을 제거하는 적어도 하나 이상의 고역통과필터(111a)가 구비된 전처리 필터부(111)를 이용하여 상기 생체신호의 저주파 성분을 제거하는 단계(S111);
    상기 전처리 필터부(111)에서 저주파 성분이 필터링된 생체신호를 계측증폭기를 이용하여 1차 증폭하는 단계(S112);
    S112에서 1차 증폭된 생체신호의 40Hz 초과 주파수 대역을 후처리 필터부에서 제거하는 단계(S113);
    S113에서 필터링된 생체신호를 출력증폭부에서 2차 증폭하는 단계(S114)
    S114에서 증폭된 생체신호를 MCU(115)를 통해 디지털 신호로 변환하는 단계(S115)를 포함하는 것을 특징으로 하는 안구이동추적 방법.
  15. 제14항에 있어서,
    상기 S113은,
    상기 S112에서 1차 증폭된 생체신호의 40Hz 초과 주파수 대역을 저역통과필터(113a)를 이용하여 제거하는 단계(S113a); 및
    S113에서 필터링된 생체신호로부터 제거되지 못한 60Hz 이상의 대역을 대역제거필터(113b)를 이용하여 추가 필터링하는 단계(S113b)를 포함하는 것을 특징으로 하는 안구이동추적 방법.
  16. 제13항에 있어서,
    상기 신호 분리단계(S120)는,
    Butterworth 2pole 10Hz 저역통과필터(121)를 이용하여 안전도 신호를 추출하는 단계(S121); 및
    Butterworth 4pole 30Hz 고역통과필터(122)를 이용하여 측두근 근전도 신호를 추출하는 단계(S122)를 포함하는 것을 특징으로 하는 안구이동추적 방법.
  17. 제13항에 있어서,
    상기 안전도 신호처리단계(S130)는,
    PLA 처리부(131) 내에 저장된 변형 슬라이딩 윈도우 알고리즘을 통해 상기 안전도 신호의 파형을 복수 개의 연속된 선분으로 단순화시키는 단계(S131);
    특징 추출부(132)에서 상기 선분을 다차원 벡터 형태의 특징집합들로 변환하는 단계(S132); 및
    이중 기계학습 처리부(133)에서 상기 특징집합을 이중 기계학습시켜 상기 안구이동에 따른 상기 사용자의 시선 이동에 따른 거리정보가 포함된 제1 처리신호를 출력하는 단계(S133);를 포함하는 것을 특징으로 하는 안구이동추적 방법.
  18. 제17항에 있어서,
    상기 S133은,
    분류기(133a)를 이용하여 시선이 이동되는 구간 내의 특징집합을 선별하는 단계(S133a);
    곡선 맞춤 처리부(133b) 내에 구비된 곡선 맞춤 모델에 상기 구간 내의 특징집합을 입력하여 상기 구간 내에 흩어져있는 상기 특징집합을 연속적인 1차원 함수로 산출하는 단계(S133b); 및
    출력부(133c)에서 상기 1차원 함수의 좌표값으로 산출된 상기 사용자의 시선 이동에 따른 거리정보를 출력하는 단계(S133c)를 포함하는 것을 특징으로 하는 안구이동추적 방법.
  19. 제13항에 있어서,
    상기 근전도 신호처리단계(S140)는,
    PLA 처리부(141)에서 상기 측두근 근전도 신호의 파형을 PLA 기법에 적용시켜 복수 개의 연속된 선분들로 단순화시키는 단계(S141);
    선별부(142)에서 상기 복수 개의 연속된 선분들 중 이를 깨문 상태에서 발생된 측두근 근전도에 해당하는 선분을 선별하는 단계(S142);
    S142에서 선별된 선분의 시간 구간과 동일한 측두근 근전도의 시간 구간내의 구간 파워를 파워 산출부에서 산출하는 단계(S143); 및
    판단부(144)에서 상기 구간 파워와 내부에 기 설정된 문턱값을 비교한 후, 상기 구간 파워가 상기 기 설정된 문턱값 보다 클 경우 이를 깨물고 있는 상태로 판단하여 마우스 클릭을 수행하기 위한 제2 처리신호를 출력하는 단계(S144)를 포함하는 것을 특징으로 하는 안구이동추적 방법.
  20. 제19항에 있어서,
    상기 S143은,
    상기 구간 파워를 아래에 기재된 식 10을 이용하여 산출하는 것을 특징으로 하는 안구이동추적 방법.
    [식 10]
    Figure 112013119862296-pat00054

    여기서, 시간에 따른 측두근 근전도를 EMG(t)라고 했을 때, i 번째 선분에 대한 구간 파워는 Power(i)로 나타낸다.
KR1020130165905A 2013-12-27 2013-12-27 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템 및 이를 이용한 안구이동추적 방법 KR101539923B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130165905A KR101539923B1 (ko) 2013-12-27 2013-12-27 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템 및 이를 이용한 안구이동추적 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130165905A KR101539923B1 (ko) 2013-12-27 2013-12-27 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템 및 이를 이용한 안구이동추적 방법

Publications (2)

Publication Number Publication Date
KR20150077571A KR20150077571A (ko) 2015-07-08
KR101539923B1 true KR101539923B1 (ko) 2015-07-29

Family

ID=53790294

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130165905A KR101539923B1 (ko) 2013-12-27 2013-12-27 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템 및 이를 이용한 안구이동추적 방법

Country Status (1)

Country Link
KR (1) KR101539923B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11538576B2 (en) 2019-10-15 2022-12-27 International Business Machines Corporation Illustrative medical imaging for functional prognosis estimation

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102451268B1 (ko) 2015-12-09 2022-10-06 삼성전자주식회사 신호 처리 방법, 신호 필터링 장치 및 신호 처리 장치
CN107357429B (zh) * 2017-07-10 2020-04-07 京东方科技集团股份有限公司 用于确定视线的方法、设备和计算机可读存储介质
KR102243040B1 (ko) 2019-04-10 2021-04-21 한양대학교 산학협력단 전자 장치, 아바타 얼굴 표정 표시 시스템 및 제어 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050054773A (ko) * 2003-12-06 2005-06-10 한국전자통신연구원 생체신호를 이용한 전자기기 제어장치 및 그 방법
KR100652010B1 (ko) * 2005-12-02 2006-12-01 한국전자통신연구원 이물기를 이용한 문자 형성 장치 및 방법
KR20120011772A (ko) * 2010-07-20 2012-02-08 삼성전자주식회사 생체 정보를 활용한 가상 세계 조작 장치 및 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20050054773A (ko) * 2003-12-06 2005-06-10 한국전자통신연구원 생체신호를 이용한 전자기기 제어장치 및 그 방법
KR100652010B1 (ko) * 2005-12-02 2006-12-01 한국전자통신연구원 이물기를 이용한 문자 형성 장치 및 방법
KR20120011772A (ko) * 2010-07-20 2012-02-08 삼성전자주식회사 생체 정보를 활용한 가상 세계 조작 장치 및 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
강경우 외 1명, "근전도와 안전도 기반의 인간-기계 인터페이스기술", 전자공학회 논문지 제50권 제12호, 2013.12. *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11538576B2 (en) 2019-10-15 2022-12-27 International Business Machines Corporation Illustrative medical imaging for functional prognosis estimation

Also Published As

Publication number Publication date
KR20150077571A (ko) 2015-07-08

Similar Documents

Publication Publication Date Title
US11972049B2 (en) Brain-computer interface with high-speed eye tracking features
Lee et al. Real-time “eye-writing” recognition using electrooculogram
JP7492951B2 (ja) ユーザ相互作用の高速且つ正確な追跡を使用する人間/コンピュータインターフェース
EP3617815B1 (en) Work support device, work support method, and work support program
US20200337653A1 (en) Brain-computer interface with adaptations for high-speed, accurate, and intuitive user interactions
US20130096453A1 (en) Brain-computer interface devices and methods for precise control
Ramkumar et al. A review-classification of electrooculogram based human computer interfaces
KR101656739B1 (ko) 뇌파 기반의 착용형 로봇의 제어 장치 및 방법
Soltani et al. A practical efficient human computer interface based on saccadic eye movements for people with disabilities
Chang Electrooculograms for human–computer interaction: A review
CN109976525B (zh) 一种用户界面交互方法、装置及计算机设备
KR101539923B1 (ko) 이중 기계학습 구조를 이용한 생체신호 기반의 안구이동추적 시스템 및 이를 이용한 안구이동추적 방법
Qi et al. Comparison of ANN and SVM for classification of eye movements in EOG signals
KR101745774B1 (ko) 안구전도 시선 트래킹 기술 기반 눈글 인식 방법 및 시스템
Banerjee et al. Eye movement sequence analysis using electrooculogram to assist autistic children
KR101571848B1 (ko) 뇌전도 및 눈동자 움직임 기반 하이브리드형 인터페이스 장치 및 이의 제어 방법
Becerra-García et al. Data mining process for identification of non-spontaneous saccadic movements in clinical electrooculography
López et al. EOG-based system for mouse control
Lv et al. Design and implementation of an eye gesture perception system based on electrooculography
Huda et al. Recognition of reading activity from the saccadic samples of electrooculography data
Prince et al. Brain machine interface using Emotiv EPOC to control robai cyton robotic arm
Olesen et al. Hybrid EEG-EOG-based BCI system for vehicle control
CN113111745B (zh) 基于openpose的产品关注度的眼动识别的方法
Alom et al. Classification for the P300-based brain computer interface (BCI)
Lin et al. A wireless Electrooculography-based human-computer interface for baseball game

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180524

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20190521

Year of fee payment: 5