최근 물리적 디바이스의 도움 없이 사람이 시스템과 인터랙션 할 수 있는 인간 친화적인 인간-기계 인터페이스가 많이 연구되고 있다. 이중 대표적인 것이 본 논문의 주제인 비전기반 제스처인식이다. 본 논문에서 우리는 설정된 가상세계의 객체와의 인터랙션을 위한 손 제스처들을 정의하고 이들을 인식할 수 있는 효과적인 방법론을 제안한다. 먼저, 웹캠으로 촬영된 저해상도 영상에서 사용자의 양손을 검출 및 추적하고, 손 영역을 분할하여 손 실루엣을 추출한다. 우리는 손 검출을 위해, RGB 공간에서 명암에 따라 두개의 타원형 모델을 이용하여 피부색을 모델링하였으며, 블랍매칭(blob matching) 방법을 이용하여 손 추적을 수행하였다. 우리는 플러드필(floodfill) 알고리즘을 이용해 얻은 손 실루엣의 행/열 모드 검출 및 분석을 통해 Thumb-Up, Palm, Cross 등 세 개의 손모양을 인식하였다. 그리고 인식된 손 모양과 손 움직임의 콘텍스트를 분석해서 다섯 가지 제스처를 인식할 수 있었다. 제안하는 제스처인식 방법론은 정확한 손 검출을 위해 카메라 앞에 주요 사용자가 한 명 등장한다는 가정을 하고 있으며 많은 실시간 데모를 통해 효율성 및 정확성이 입증되었다.
최근 물리적 디바이스의 도움 없이 사람이 시스템과 인터랙션 할 수 있는 인간 친화적인 인간-기계 인터페이스가 많이 연구되고 있다. 이중 대표적인 것이 본 논문의 주제인 비전기반 제스처인식이다. 본 논문에서 우리는 설정된 가상세계의 객체와의 인터랙션을 위한 손 제스처들을 정의하고 이들을 인식할 수 있는 효과적인 방법론을 제안한다. 먼저, 웹캠으로 촬영된 저해상도 영상에서 사용자의 양손을 검출 및 추적하고, 손 영역을 분할하여 손 실루엣을 추출한다. 우리는 손 검출을 위해, RGB 공간에서 명암에 따라 두개의 타원형 모델을 이용하여 피부색을 모델링하였으며, 블랍매칭(blob matching) 방법을 이용하여 손 추적을 수행하였다. 우리는 플러드필(floodfill) 알고리즘을 이용해 얻은 손 실루엣의 행/열 모드 검출 및 분석을 통해 Thumb-Up, Palm, Cross 등 세 개의 손모양을 인식하였다. 그리고 인식된 손 모양과 손 움직임의 콘텍스트를 분석해서 다섯 가지 제스처를 인식할 수 있었다. 제안하는 제스처인식 방법론은 정확한 손 검출을 위해 카메라 앞에 주요 사용자가 한 명 등장한다는 가정을 하고 있으며 많은 실시간 데모를 통해 효율성 및 정확성이 입증되었다.
Recently, many human-friendly communication methods have been studied for human-machine interface(HMI) without using any physical devices. One of them is the vision-based gesture recognition that this paper deals with. In this paper, we define some gestures for interaction with objects in a predefin...
Recently, many human-friendly communication methods have been studied for human-machine interface(HMI) without using any physical devices. One of them is the vision-based gesture recognition that this paper deals with. In this paper, we define some gestures for interaction with objects in a predefined virtual world, and propose an efficient method to recognize them. For preprocessing, we detect and track the both hands, and extract their silhouettes from the low-resolution hand images captured by a webcam. We modeled skin color by two Gaussian distributions in RGB color space and use blob-matching method to detect and track the hands. Applying the foodfill algorithm we extracted hand silhouettes and recognize the hand shapes of Thumb-Up, Palm and Cross by detecting and analyzing their modes. Then, with analyzing the context of hand movement, we recognized five predefined one-hand or both-hand gestures. Assuming that one main user shows up for accurate hand detection, the proposed gesture recognition method has been proved its efficiency and accuracy in many real-time demos.
Recently, many human-friendly communication methods have been studied for human-machine interface(HMI) without using any physical devices. One of them is the vision-based gesture recognition that this paper deals with. In this paper, we define some gestures for interaction with objects in a predefined virtual world, and propose an efficient method to recognize them. For preprocessing, we detect and track the both hands, and extract their silhouettes from the low-resolution hand images captured by a webcam. We modeled skin color by two Gaussian distributions in RGB color space and use blob-matching method to detect and track the hands. Applying the foodfill algorithm we extracted hand silhouettes and recognize the hand shapes of Thumb-Up, Palm and Cross by detecting and analyzing their modes. Then, with analyzing the context of hand movement, we recognized five predefined one-hand or both-hand gestures. Assuming that one main user shows up for accurate hand detection, the proposed gesture recognition method has been proved its efficiency and accuracy in many real-time demos.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
본 논문에서 제안하는 손 제스처 인식 알고리즘은 가상공간의 오브제와의 인터랙션을 위해 현실공간에 있는 사용자의 제스처를 인식하는 것을 목표로 한다. 인터랙션을 위해 정의한 제스처는 PUSH, PULL, POINTING 등 세 가지 명령형 제스처와 가상 오브제(예: 김연아)에게 점프동작을 학습시키기 위한 JUMP 동작이 있다.
본 논문은 사용자가 가상의 사이버 공간의 객체들과 소통하는 프로그램을 제작하기 위한 프로젝트의 일부이다. 설정된 사이버 공간에는 인간과 닮은 사이버 객체들이 존재한다.
우리는 본 논문에서 효과적인 손 검출 및 추적 방법론과 손 모양 인식에 기반을 둔 제스처 인식 방법론을 제안하였다. 제안한 손 검출 및 추적 방법론은 움직임이 발생한 부분 주변의 피부색 영역이 제스처를 수행중인 손이라는 생각에 기초하였다.
우리는 서론의 뒷부분에서 정의된 제스처의 특징과 용도에 대해 설명하고 관련 연구를 소개한다. 2절에서는 제스처 인식을 위한 저해상도 손 검출 및 추적 방법론을 소개하고, 3절에서 손 모양 인식 및 제스처 인식 방법론을 소개한다.
가설 설정
둘째, 우리는 배경이 복잡하지 않고 사용자가 피부색과 유사한 옷을 착용하지 않음을 가정하고 있다. 영상 차가 발생한 부분에 있는 피부색 부분을 손으로 인식하기 때문에, 피부색 옷이 이동하는 경우 손으로 오인될 가능성이 높다.
사용자와 가상세계의 인터페이스 시작 프로토콜은 사용자가 차렷 자세를 일정시간 지속한 후 손을 올리는 것으로 정하였다. 제스처를 수행하기 위해 손을 올릴 때, 손이 처음 등장하는 위치는 화면의 아래 부분이라 예상할 수 있다.
셋째, 우리는 한 명의 사용자만 프로그램을 제어한다고 가정하고 있다. 이러한 가정 하에서 피부색 블랍의 크기만으로 얼굴을 검출한 후, 허리, 가슴 등의 인체 부위를 추정할 수 있었다.
노이즈에 강인한 손 추적을 위해 손 사이즈 필터를 고안하였다. 연속된 두 프레임에서 손의 크기가 많이 변하지 않는다는 가정 하에, 이전 프레임의 손의 크기와 비슷한 크기를 가지는 피부색 블랍을 현재 프레임의 해당 손으로 선택하였다. 이 사이즈 필터링으로 인해 몸통에서 발생할 수 있는 작은 피부색 블랍을 손으로 오인하는 오류를 방지할 수 있다.
제안 방법
제스처는 사람의 움직임을 통해 의미를 전달하는 수단이기 때문에, 고정된 카메라로 촬영된 영상에서 움직임이 있는 피부색 화소를 손의 일부로 판단하였다. 그리고 손 추적 시 얼굴의 피부색 영역이 손으로 인식되는 오류를 방지하고, 신체부위를 추정하기 위해 얼굴 검출을 수행하였다. 다음 그림 2는 제안하는 손 검출 및 추적 알고리즘의 도식을 보여준다.
노이즈에 강인한 손 추적을 위해 손 사이즈 필터를 고안하였다. 연속된 두 프레임에서 손의 크기가 많이 변하지 않는다는 가정 하에, 이전 프레임의 손의 크기와 비슷한 크기를 가지는 피부색 블랍을 현재 프레임의 해당 손으로 선택하였다.
지시형 제스처는 주먹을 쥔 상태에서 검지 손가락을 핀 상태로 물체를 가리키는 것이 일반적이라 할 수 있으나 카메라 한 대를 사용할 경우 깊이 정보를 얻을 수 없기 때문에, 이러한 손 모양을 인식하기 매우 어렵다. 따라서 우리는 주먹을 쥔 상태에서 검지를 세우고 엄지손가락을 옆으로 향하게 한 십자형(Cross) 손 모양을 인식하여 이를 Pointing 제스처로 인식하였다. Cross 손 모양이 인식되면 화면에 놓여 있는 마우스가 활성화되고 마우스가 손을 따라 이동한다.
al[6]은 손가락에 골무를 착용한 사용자에 대해 저해상도 손 영상에 대해 7개의 손 모양 인식 및 5개의 제스처 인식을 수행하였다. 마이크로소프트는 Natal 프로젝트[7]에서 일반 CMOS 카메라와 TOF 방식의 적외선 카메라를 이용하여 키넥트(Kinect) 게임을 개발하였다.
얼굴 검출을 위해 알려진 정교한 방법론들이 많이 알려져 있으나, 실시간 처리를 위해 피부색 영역의 크기를 이용한 간단한 방법으로 얼굴 영역을 검출하였다. 소개하는 얼굴 검출 방법론은 주요 제스처 행위자가 한 명일 경우에 유효하다.
하지만 손이라는 객체는 형태의 변화가 매우 크고 빠르게 움직일 수 있기 때문에 추적하기 어려운 대상이다. 우리는 2절에서 제안한 손 검출 방법론이 매우 빠르고 안정적이기 때문에 검출에 기반을 둔 추적 방식을 제안한다.
피부색은 인간의 피부가 아닌 영역에서도 검출될 수 있는 자연에 존재하는 색이다. 우리는 배경에 존재하는 피부색 영역을 필터링하기 위해, 위 조건 (1), (2)를 만족하는 피부색 화소들에 대해 연결성분석(Connected Component Analysis)을 수행하여 연결성분의 외곽박스(bounding box)를 검출하고, 다음 조건 (3)을 만족하는 연결성분을 제거하였다.
Else는 Palm, Thumb-Up, Cross가 아닌 상태를 말한다. 우리는 손을 분할한 영상에서 행과 열의 모드(mode)의 개수로 이 네 가지 손 모양을 구분하였다. 여기서 모드는 국부적 최댓값(local maximum)을 의미한다.
우리는 위 제스처를 인식하기 위하여 손 검출 및 추적, 손모양 인식, 제스처 인식 등 세 가지 세부 알고리즘을 개발하였다. 정의된 제스처는 손이 움직이는 경로와 움직임 속에서 취하는 손 모양(posture)에 따라 종류가 구분된다.
Jump 제스처는 두 손이 가슴에 위치한 상태에서 위로 점프하는 동작으로 정의하였다. 우리는 점프 시 높이의 변화 정도를 알아보기 위해 얼굴 중심 위치의 변화를 측정하였다. 아래 그래프는 한 학습데이터의 세 번의 점프에 대한 얼굴 중심의 높이 변화를 보여 준다.
손 추적이란 이전 프레임에서 손의 위치가 결정되었을 때, 다음 프레임에서 해당 손의 위치를 결정하는 것이다. 우리는 제스처 영역 안에서 검출된 이동 피부색 블랍을 이전 프레임의 가장 가까운 손으로 대응시키는 블랍 매칭을 수행하였다. 만약 이전 프레임에 손이 추적되었지만 현재 프레임에서 이동 피부색 블랍이 검출되지 않은 경우, 손이 잠시 멈춰있는 상태로 간주하고 이전 손 위치를 현재 손 위치로 간주하였다.
우리는 히스토그램으로부터 빈(bin)의 값이 증가하다 감소하는 순간을 포착하여 히스토그램의 모드의 개수를 조사 하였다. 그러나 히스토그램의 범위(support)가 너무 긴 경우 하나 이상의 모드를 가지는 것으로 간주하였다.
이를 가비지 제스처(garbage gesture)라 하는데, 이러한 동작은 의미 있는 제스처로 오인될 가능성이 높으며 손 추적 시 오류를 범할 가능성이 높다. 이러한 오류를 방지하기 위해, 의미 없는 손동작이 빈번한 허리 아래 부분을 제외한 위 영역을 제스처 영역으로 설정하였다. 손 추적 및 제스처 인식은 설정된 제스처 영역 안에서만 수행되며 손이 이 영역을 벗어날 경우, 손 검출부터 다시 수행하였다.
모드 검출은 높은 정확성을 보이나 손의 기울어짐 정도에 따라 잘못 인식되는 경우가 있다. 이러한 오류에 대해 강인 하고자 보팅(Voting) 필터링을 고안하였다. 보팅 필터링이란, 크기가 N인 큐(Queue)에 최근 N개 프레임의 손 모양(type)을 기록하고, 이 중 다수(majority) 손 모양을 현재 프레임의 손 모양으로 결정하는 것이다.
제안하는 손 검출 방법론은 피부색 검출에 기반을 둔다. 이를 위해, 타원형 피부색 모델과 배경의 피부색 영역을 제거하기 위한 필터, 피부색을 이용한 얼굴검출 방법론을 소개한다. 우리는 피부색 모델링을 위해 다양한 조명환경에서 100개의 피부 영상조각을 수집하였다.
우리의 손 검출 알고리즘은 피부색 검출과 움직임 정보에 기반을 둔다. 제스처는 사람의 움직임을 통해 의미를 전달하는 수단이기 때문에, 고정된 카메라로 촬영된 영상에서 움직임이 있는 피부색 화소를 손의 일부로 판단하였다. 그리고 손 추적 시 얼굴의 피부색 영역이 손으로 인식되는 오류를 방지하고, 신체부위를 추정하기 위해 얼굴 검출을 수행하였다.
제안하는 손 검출 방법론은 피부색 검출에 기반을 둔다. 이를 위해, 타원형 피부색 모델과 배경의 피부색 영역을 제거하기 위한 필터, 피부색을 이용한 얼굴검출 방법론을 소개한다.
제안하는 손 제스처 인식 시스템은 한 번만 사용자의 손을 검출하고, 다음 프레임부터는 손 추적 알고리즘을 이용하여 손의 위치와 모양을 인식한다. 다음은 손 추적 알고리즘에 대해 설명한다.
우리는 본 논문에서 효과적인 손 검출 및 추적 방법론과 손 모양 인식에 기반을 둔 제스처 인식 방법론을 제안하였다. 제안한 손 검출 및 추적 방법론은 움직임이 발생한 부분 주변의 피부색 영역이 제스처를 수행중인 손이라는 생각에 기초하였다. 플러드필 알고리즘을 효과적으로 적용하여 손 영역을 분할하여 얻어진 손 실루엣에서 모드 분석을 통해 Thumb -Up, Palm, Cross, Else 등 네 가지 손 모양을 구분하였다.
우리는 이 픽셀들을 포함하는 손 영역을 플러드필 (floodfill) 알고리즘을 이용하여 복원한다. 즉, 이 픽셀들 각각을 시드(seed)로 하여, 시드와 컬러값의 차이가 적은 주변 픽셀들을 차례로 검출한다. 다음 그림 5는 이 과정을 순서대로 보여 준다.
제안한 손 검출 및 추적 방법론은 움직임이 발생한 부분 주변의 피부색 영역이 제스처를 수행중인 손이라는 생각에 기초하였다. 플러드필 알고리즘을 효과적으로 적용하여 손 영역을 분할하여 얻어진 손 실루엣에서 모드 분석을 통해 Thumb -Up, Palm, Cross, Else 등 네 가지 손 모양을 구분하였다. 손 모양과 더불어, 손의 위치 및 개수의 콘텍스트 정보를 인식하여 정의된 제스처들을 인식할 수 있었다.
대상 데이터
이를 위해, 타원형 피부색 모델과 배경의 피부색 영역을 제거하기 위한 필터, 피부색을 이용한 얼굴검출 방법론을 소개한다. 우리는 피부색 모델링을 위해 다양한 조명환경에서 100개의 피부 영상조각을 수집하였다. 다음 그림 3은 대표적인 피부색 영상 샘플을 보여준다.
이론/모형
#는 밝은(어두운) 피부색의 R , G, B 채널의 평균값이고, #는 밝은(어두운) 피부색의 R, G, B 채널의 표준편차이다. 밝은 피부색과 어두운 피부색은 3차원 RGB 공간에서 K 평균 군집화(K means clustering) 알고리즘을 이용해 분리하였다.
이 픽셀들은 이동 중인 손의 일부라 할 수 있다. 우리는 이 픽셀들을 포함하는 손 영역을 플러드필 (floodfill) 알고리즘을 이용하여 복원한다. 즉, 이 픽셀들 각각을 시드(seed)로 하여, 시드와 컬러값의 차이가 적은 주변 픽셀들을 차례로 검출한다.
성능/효과
아래 그림 7은 얼굴 검출의 예를 보여 준다. 우리는 얼굴을 검출함으로써, 손 움직임 영역을 설정할 수 있어 안정적인 손 추적을 가능케 할 수 있었고, 가슴영역을 추정할 수 있어 양손 제스처 인식률을 향상시킬 수 있었다.
제안한 손 추적 방법론과 인식 방법론은 간단하고 효과적이라는 장점이 있다. 위의 세 가지 제약조건 하에서, 제안한 알고리즘은 100%에 가까운 인식 성능을 보임을 많은 데모를 통해 확인할 수 있었다.
제안한 손 추적 방법론과 인식 방법론은 간단하고 효과적이라는 장점이 있다. 위의 세 가지 제약조건 하에서, 제안한 알고리즘은 100%에 가까운 인식 성능을 보임을 많은 데모를 통해 확인할 수 있었다.
RGB 공간의 피부색은 조명에 민감하다는 단점이 있는 것으로 알려져 있다. 하지만 다음과 같이 두 개의 타원형 모델을 사용할 경우 다른 색 공간보다 피부색 검출률이 높음을 실험적으로 확인할 수 있었다.
첫째, 제안한 손 검출 알고리즘은 피부색 검출에 기반을 두고 있기 때문에 조명 조건 및 인종에 따라 달라지는 모든 피부색을 검출하지 못한다. 하지만, 형광등이 켜져 있는 일반 강의실 및 실험실의 조명에서 높은 검출 성능을 보임을 확인할 수 있었다. 피부색 검출 성능을 높이기 위해 적응적인 피부색 모델에 대한 연구를 진행하고 있다.
후속연구
다음 그림 1은 Palm, Thumb-Up, Cross 손 모양의 대표적인 예를 보여준다. 제안하는 제스처 인식 시스템은 카메라 전방에 한 명의 유저만 등장하고 배경이 매우 복잡하지 않다는 제한 조건을 가진다.
첫째, 제안한 손 검출 알고리즘은 피부색 검출에 기반을 두고 있기 때문에 조명 조건 및 인종에 따라 달라지는 모든 피부색을 검출하지 못한다. 하지만, 형광등이 켜져 있는 일반 강의실 및 실험실의 조명에서 높은 검출 성능을 보임을 확인할 수 있었다.
질의응답
핵심어
질문
논문에서 추출한 답변
손 제스처 인식 알고리즘의 목표는?
본 논문에서 제안하는 손 제스처 인식 알고리즘은 가상공간의 오브제와의 인터랙션을 위해 현실공간에 있는 사용자의 제스처를 인식하는 것을 목표로 한다. 인터랙션을 위해 정의한 제스처는 PUSH, PULL, POINTING 등 세 가지 명령형 제스처와 가상 오브제(예: 김연아)에게 점프동작을 학습시키기 위한 JUMP 동작이 있다.
피부색 검출에 기반을 둔 손 검출 방법론의 피부색 모델링을 위해 선행된 것은?
이를 위해, 타원형 피부색 모델과 배경의 피부색 영역을 제거하기 위한 필터, 피부색을 이용한 얼굴검출 방법론을 소개한다. 우리는 피부색 모델링을 위해 다양한 조명환경에서 100개의 피부 영상조각을 수집하였다. 다음 그림 3은 대표적인 피부색 영상 샘플을 보여준다.
양손 제스처에는 어떤 것이 있는가?
양손 제스처는 화면 확대를 위한 Pull 제스처, 화면 축소를 위한 Push 제스처, 가상공간의 객체에게 점프 동작을 가르치기 위한 Jump 제스처가 있다. 두 손이 모두 가슴 부분에 위치하면, 이 세 가지 제스처 중 어느 하나가 인식될 수 있다.
참고문헌 (13)
Y. Fang, K. Wang, J. Cheng and H. Lu, "A real-time hand gesture recognition method", IEEE International Conference on Multimedia and Expo, pp. 995-998, 2007.
A. F. Bobick, and J. W. Davis, "The Recognition of Human Movement Using Temporal Templates", IEEE Transactions on Pattern Recognition and Machine Learning, Vol. 23, No. 3, 2001.
J.W. Davis, "Hierarchical Motion History Images for Recognizing Human Motion", IEEE workshop on Detection and Recognition of Events in Video, pp.39-46, 2001.
N. D. Binh, E. Shuichi and T. Ejima, "Real-Time Hand Tracking and Gesture Recognition System", GVIP Conference, 2005.
L. Bretzber, I. Laptev, Tony Lindeberg, "Hand Gesture Recognition using Mulit-Scale Colour Features, Hierarchical Models and Partical Filtering", IEEE Interntional Conference on Automatic Face and Gesture Recognition, pp.423-428. 2002.
H. Kim, G. Albuquerque, S. Havemann, D. W. Fellner, "Tangible 3D: Hand Gesture Interaction for Immersive 3D Modeling", IPT & EGVE Workshop, 2005.
Microsoft Project Natal, http://research.microsoft .com/apps/video/default.aspx?id144455 .
T. Kirishima, K. Sato, K., Chihara, "Real-Time Gesture Recognition by Learning and Selective Control of Visual Interest Points", IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 27, No. 3, pp.351-364, 2005.
A. Malima, E. Ozgur, M. Cetin, "A Fast Algorithm for Vision-based Hand Gesture Recognition for Robot Control", IEEE Conference on Signal Processing and Communications Applications, 2006.
H.-S. Yoon, J. Soh, Y. J. Bae, H. S. Yang, "Hand gesture recognition using combined features of location, angle and velocity", Pattern Recognition, Vol. 34, pp. 1491-1501, 2001.
P. Viola and M. Jones, "Robust Real-time Face Detection", International Journal of Computer Vision, vol.57, No. 2, pp. 137-154, 2001.
X. Xiong and F. D. Torre, "Supervised Descent Method and its Applications to Face Alignment", IEEE Conference on Computer Vision and Pattern Recognition, 2013.
J.-H. Ahn and J.-H. Kim, "A Stable Hand Tracking Method by Skin Color Blob Matching", Pacific Science Review, Vol.12, No.2, pp. 146-151, 2010.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.