KR20140010500A - 자세 인식 장치 및 그 동작 방법 - Google Patents
자세 인식 장치 및 그 동작 방법 Download PDFInfo
- Publication number
- KR20140010500A KR20140010500A KR1020120076099A KR20120076099A KR20140010500A KR 20140010500 A KR20140010500 A KR 20140010500A KR 1020120076099 A KR1020120076099 A KR 1020120076099A KR 20120076099 A KR20120076099 A KR 20120076099A KR 20140010500 A KR20140010500 A KR 20140010500A
- Authority
- KR
- South Korea
- Prior art keywords
- posture
- hand
- random forest
- feature vector
- image
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/107—Static hand or arm
- G06V40/113—Recognition of static hand signs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
자세 인식 장치 및 그 동작 방법이 개시된다. 일실시예에 따른 학습된 랜덤 포레스트를 이용하여 손의 자세를 인식하는 자세 인식 장치는, 영상을 입력 받는 입력부; 상기 영상으로부터 상기 손과 관련된 관심 영역을 추출하는 추출부; 상기 관심 영역에 대한 중심점을 연산하는 연산부; 상기 학습된 랜덤 포레스트를 생성할 때 이용된 특징 벡터 생성기 및 상기 중심점에 기반하여 특징 벡터를 생성하는 생성부; 및 상기 학습된 랜덤 포레스트에 상기 특징 벡터를 입력하고, 상기 학습된 랜덤 포레스트에 포함된 복수의 트리 각각으로부터 인식 결과를 수집하며, 상기 수집된 인식 결과 중에서 다수표(Majority Vote)를 받은 인식 결과를 상기 손의 자세로 선택하는 처리부를 포함할 수 있다.
Description
본 발명의 실시예들은 자세 인식 장치 및 그 동작 방법에 관한 것이다.
손을 활용한 기기 조작을 하기 위해서는, 자연스러운 손 자세와 동작을 이해하고 사용자의 의도를 잘 반영할 수 있는 시스템이 필요하다.
한편, 지금까지의 손자세 인식 방법은 주로 특정 방향(Orientation)에서의 자세를 인식하기 위한 기술이 이용되어 왔다. 최근 깊이(Depth) 영상 기반 전신 모션 인식 기술이 발전하면서 픽셀 별로 몸체 파트(Body part)의 ID를 인식하고, 이로부터 전신 자세를 계산하는 방법의 개발로, 자세 추정이 가능하게 되고 있다. 하지만, 이러한 방법은 자세 추정을 위한 컴퓨팅 계산 부담(Computational burden)이 크다.
일실시예에 따른 학습된 랜덤 포레스트를 이용하여 손의 자세를 인식하는 자세 인식 장치는, 영상을 입력 받는 입력부; 상기 영상으로부터 상기 손과 관련된 관심 영역을 추출하는 추출부; 상기 관심 영역에 대한 중심점을 연산하는 연산부; 상기 학습된 랜덤 포레스트를 생성할 때 이용된 특징 벡터 생성기 및 상기 중심점에 기반하여 특징 벡터를 생성하는 생성부; 및 상기 학습된 랜덤 포레스트에 상기 특징 벡터를 입력하고, 상기 학습된 랜덤 포레스트에 포함된 복수의 트리 각각으로부터 인식 결과를 수집하며, 상기 수집된 인식 결과 중에서 다수표(Majority Vote)를 받은 인식 결과를 상기 손의 자세로 선택하는 처리부를 포함할 수 있다.
일실시예에 따른 학습된 랜덤 포레스트를 이용하여 손의 자세를 인식하는 자세 인식 장치의 동작 방법은, 영상을 입력 받는 단계; 상기 영상으로부터 상기 손과 관련된 관심 영역을 추출하는 단계; 상기 관심 영역에 대한 중심점을 연산하는 단계; 상기 학습된 랜덤 포레스트를 생성할 때 이용된 특징 벡터 생성기 및 상기 중심점에 기반하여 특징 벡터를 생성하는 단계; 상기 학습된 랜덤 포레스트에 상기 특징 벡터를 입력하는 단계; 상기 학습된 랜덤 포레스트에 포함된 복수의 트리 각각으로부터 인식 결과를 수집하는 단계; 및 상기 수집된 인식 결과 중에서 다수표(Majority Vote)를 받은 인식 결과를 상기 손의 자세로 선택하는 단계를 포함할 수 있다.
본 발명의 실시예들에 따르면, 사용자의 손의 인식 확률을 높일 수 있다.
또한, 손의 자세를 인식한 이후에 손의 동작이나 6DOF를 계산함으로써, 원하지 않게 동작이 인식되는 오류 발생률을 낮출 수 있다.
도 1은 일실시예에 따른 자세 인식 장치의 동작을 나타내는 도면이다.
도 2는 일실시예에 따른 자세 인식 장치가 학습된 랜덤 포레스트를 생성하는 동작을 나타내는 도면이다.
도 3은 일실시예에 따른 특징 벡터 생성기의 동작을 나타내는 도면이다.
도 4는 일실시예에 따른 관심 영역을 나타내는 도면이다.
도 5는 일실시예에 따른 중심점을 나타내는 도면이다.
도 6은 일실시예에 따른 랜덤 포레스트를 나타내는 도면이다.
도 7은 일실시예에 따른 자세 인식 장치의 구성을 나타내는 도면이다.
도 8은 일실시예에 따른 자세 인식 장치가 시간 프레임 별로 인식된 손의 자세를 누적하는 동작을 나타내는 도면이다.
도 9는 일실시예에 따른 자세 인식 장치가 손의 위치를 누적하는 동작을 나타내는 도면이다.
도 10은 일실시예에 따른 자세 인식 장치의 동작 방법을 나타내는 흐름도이다.
도 2는 일실시예에 따른 자세 인식 장치가 학습된 랜덤 포레스트를 생성하는 동작을 나타내는 도면이다.
도 3은 일실시예에 따른 특징 벡터 생성기의 동작을 나타내는 도면이다.
도 4는 일실시예에 따른 관심 영역을 나타내는 도면이다.
도 5는 일실시예에 따른 중심점을 나타내는 도면이다.
도 6은 일실시예에 따른 랜덤 포레스트를 나타내는 도면이다.
도 7은 일실시예에 따른 자세 인식 장치의 구성을 나타내는 도면이다.
도 8은 일실시예에 따른 자세 인식 장치가 시간 프레임 별로 인식된 손의 자세를 누적하는 동작을 나타내는 도면이다.
도 9는 일실시예에 따른 자세 인식 장치가 손의 위치를 누적하는 동작을 나타내는 도면이다.
도 10은 일실시예에 따른 자세 인식 장치의 동작 방법을 나타내는 흐름도이다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
본 발명을 설명함에 있어서, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고, 본 명세서에서 사용되는 용어(terminology)들은 본 발명의 바람직한 실시예를 적절히 표현하기 위해 사용된 용어들로서, 이는 사용자, 운용자의 의도 또는 본 발명이 속하는 분야의 관례 등에 따라 달라질 수 있다. 따라서, 본 용어들에 대한 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 1은 일실시예에 따른 자세 인식 장치의 동작을 나타내는 도면이다.
도 1을 참조하면, 자세 인식 장치(100)는 사용자(110)의 손의 자세(120)를 인식할 수 있다. 손의 자세(120)는 사용자(110)의 손(111)이 어떠한 자세인지에 대한 정보뿐 아니라, 손(111)이 어떠한 움직임을 보이는지 등 손(111)과 관련된 다양한 정보 역시 포함할 수 있다.
손의 자세(120)를 인식하기 위하여, 자세 인식 장치(100)는 사용자(110)에 대한 영상을 입력 받을 수 있다. 사용자(110)에 대한 영상은 카메라, 깊이 센서 등을 통하여 획득된 이미지, 동영상 등일 수 있다.
자세 인식기는 입력 받은 사용자(110)에 대한 영상을 분석하여 사용자(110)의 손의 자세(120)가 무슨 자세인지를 인식할 수 있다.
이와 같이 자세 인식 장치(100)가 판별한 사용자(110)의 손의 자세(120)는 모바일폰(Mobile phone), TV, 컴퓨터, 3차원 디스플레이(Any advanced 3D display) 등의 분야에서 인터페이스 등의 기술로 활용될 수 있다.
자세 인식 장치(100)는 입력된 영상으로부터 사용자(110)의 손의 자세(120)를 인식하기 위하여, 학습된 렌덤 포레스트(Random Forest)를 이용할 수 있다.
따라서, 이하 도 2 내지 도 6을 참조하여 학습된 렌덤 포레스트를 생성하는 과정에 대해서 우선 설명하고, 계속하여 자세 인식 장치(100)에 대하여 설명한다.
도 2는 일실시예에 따른 자세 인식 장치가 학습된 랜덤 포레스트를 생성하는 동작을 나타내는 도면이다.
도 2를 참조하면, 자세 인식 장치는 학습된 랜덤 포레스트(250)를 생성하기 위하여 참조 영상(Reference Image)(210)을 입력 받을 수 있다. 참조 영상(210)은 학습된 랜덤 포레스트(250)를 생성하기 위하여 이용되는 영상으로서, 손의 자세에 대한 정보를 미리 알 수 있는 영상일 수 있다.
자세 인식 장치는 참조 영상(210) 및 특징 벡터 생성기(220)를 이용하여 복수의 참조 특징 벡터(Reference Feature Vector)(230)를 생성할 수 있다. 즉, 자세 인식 장치는 참조 영상(210)을 특징 벡터 생성기(220)에 입력하고, 특징 벡터 생성기(220)는 복수의 참조 특징 벡터(230)를 생성할 수 있다. 특징 벡터 생성기(220)가 복수의 참조 특징 벡터(230)를 생성하는 동작에 대해서는 도 3을 참조하여 뒤에서 다시 상세히 설명한다.
자세 인식 장치는 랜덤 포레스트 학습 방법 및 생성된 복수의 참조 특징 벡터(230)를 이용하여 랜덤 포레스트(240)를 학습할 수 있다. 즉, 자세 인식 장치는 랜덤 포레스트 학습 방법을 이용하여 생성된 복수의 참조 특징 벡터(230)로부터 학습된 랜덤 포레스트(250)를 학습할 수 있다.
학습된 랜덤 포레스트(250)는 자세 인식기로 동작할 수 있다. 즉, 자세 인식 장치는 생성된 학습된 랜덤 포레스트(250)를 이용하여 사용자의 손의 자세를 인식할 수 있다.
한편, 도 6을 참조하면, 랜덤 포레스트(600)는 복수의 트리(Tree)(610)를 포함할 수 있다. 트리(610)는 이진 랜덤 트리(Binary Random Tree)일 수 있다.
이 때, 일측에 따른 자세 인식 장치는 랜덤 포레스트(240)에 포함된 복수의 트리(Tree)가 서로 다른 특징을 갖도록 학습된 랜덤 포레스트(250)를 생성할 수 있다.
예를 들어, 자세 인식 장치는 특징 벡터 생성기(220)에서 생성한 복수의 참조 특징 벡터(230) 중 임의의 수의 참조 특징 벡터를 선택할 수 있다. 또한, 자세 인식 장치는 랜덤 포레스트(240)를 이용하여 선택된 임의의 수의 참조 특징 벡터를 학습할 수 있다. 따라서 각 트리마다 서로 다른 특징 벡터를 학습하게 되고, 자세 인식 장치는 복수의 트리가 서로 다른 특징을 가지도록 학습된 랜덤 포레스트(250)를 생성할 수 있다.
도 3은 일실시예에 따른 특징 벡터 생성기의 동작을 나타내는 도면이다.
도 3을 참조하면, 특징 벡터 생성기는 복수의 참조 특징 벡터를 생성하기 위하여, 참조 영상을 입력 받을 수 있다(310).
특징 벡터 생성기는 참조 영상으로부터 참조 관심 영역을 추출할 수 있다(320). 참조 관심 영역은 사용자에 대한 영상 중에서도 사용자의 손 주변의 영역을 나타낸다. 예를 들어, 전신 모션을 인식하는 알고리즘을 이용하여 사용자에 대한 영상으로부터 손의 위치를 파악할 수 있는데, 이 때, 손 주변 영상을 세그먼팅(segmenting)할 수 있고, 세그먼팅된 손 주변 영상이 참조 관심 영역이 될 수 있다. 도 4를 참조하면, 특징 벡터 생성기는 사용자에 대한 전체 영상(410)에서 손(401)에 대한 주변 영상(420)을 참조 관심 영역으로 추출할 수 있다.
참조 관심 영역이 추출되면, 특징 벡터 생성기는 참조 관심 영역에 대한 참조 중심점을 연산할 수 있다(330). 실시예에 따라서는 특징 벡터 생성기는 참조 관심 영역의 중심에 위치하는 점을 참조 중심점으로 연산하거나, 참조 관심 영역 중에서도 손이 차지하는 영역의 중심에 위치하는 점을 참조 중심점으로 연산할 수 있다. 도 5를 참조하면, 특징 벡터 생성기는 참조 관심 영역(510)의 중심에 있는 점(511)을 참조 중심점으로 연산할 수 있다. 또한, 특징 벡터 생성기는 참조 관심 영역(510) 중에서도 손이 차지하는 영역(520)의 중심에 있는 점(521)을 참조 중심점으로 연산할 수 있다.
참조 중심점이 연산되면, 특징 벡터 생성기는 참조 중심점을 기준으로 하여 임의의 두 점을 선택할 수 있다(340).
특징 벡터 생성기는 선택된 두 점 사이의 깊이 차(Depth Difference)를 연산하여 참조 특징 벡터를 생성할 수 있다(350).
특징 벡터 생성기는 참조 특징 벡터의 차원(Dimension)이 임계값을 초과할 때까지 참조 특징 벡터를 생성하는 동작(350)을 반복 수행할 수 있다(360). 임계값은 사용자가 생성되기를 원하는 참조 특징 벡터의 개수가 될 수 있다.
따라서, 특징 벡터 생성기는 상술한 동작(310~360)을 수행함으로써 복수의 참조 특징 벡터를 생성할 수 있다.
이상 도 2 내지 도 6을 참조하여, 자세 인식 장치가 학습된 렌덤 포레스트를 생성하는 동작에 대해서 설명하였다. 이하 자세 인식 장치가 학습된 랜덤 포레스트를 이용하여 손의 자세를 인식하는 동작에 대해서 설명한다.
도 7은 일실시예에 따른 자세 인식 장치의 구성을 나타내는 도면이다.
도 7을 참조하면, 자세 인식 장치(700)는 입력부(710), 추출부(720), 연산부(730), 생성부(740) 및 처리부(750)를 포함할 수 있다.
자세 인식 장치(700)는 입력된 사용자에 대한 영상(701)으로부터 사용자의 손의 자세(702)를 인식할 수 있다.
입력부(710)는 영상(701)을 입력 받을 수 있다. 영상(701)은 사용자에 대한 영상으로서, 센서 등을 통하여 입력될 수 있다.
추출부(720)는 영상(701)으로부터 사용자의 손과 관련된 관심 영역을 추출할 수 있다. 관심 영역은 사용자에 대한 영상(701) 중에서도 사용자의 손 주변의 영역을 나타낸다. 도 4를 참조하면, 추출부(720)는 사용자에 대한 전체 영상(410)에서 손(401)에 대한 주변 영상(420)을 관심 영역으로 추출할 수 있다.
연산부(730)는 관심 영역에 대한 중심점을 연산할 수 있다. 실시예에 따라서는 연산부(730)는 관심 영역의 중심에 위치하는 점을 중심점으로 연산하거나, 관심 영역 중에서도 손이 차지하는 영역의 중심에 위치하는 점을 중심점으로 연산할 수 있다. 도 5를 참조하면, 연산부(730)는 관심 영역(510)의 중심에 있는 점(511)을 중심점으로 연산할 수 있다. 또한, 연산부(730)는 관심 영역(510) 중에서도 손이 차지하는 영역(520)의 중심에 있는 점(521)을 중심점으로 연산할 수 있다.
생성부(740)는 학습된 랜덤 포레스트를 생성할 때 이용된 특징 벡터 생성기 및 연산된 중심점에 기반하여 특징 벡터를 생성할 수 있다. 이 때, 학습된 랜덤 포레스트를 생성할 때 이용된 특징 벡터 생성기는 도 2의 특징 벡터 생성기(220)를 나타낸다.
생성부(740)는 특징 벡터 생성기(220)를 이용하여 특징 벡터를 생성하게 되는데, 따라서, 생성부(740)는 특징 벡터 생성기(220)가 참조 특징 벡터를 생성하기 위하여 선택한 두 점을 그대로 이용할 수 있다. 즉, 생성부(740)는 연산된 중심점을 기준으로 특징 벡터 생성기(220)가 선택한 두 점을 이용하고, 두 점 사이의 깊이 차를 연산하여 특징 벡터를 생성할 수 있다.
처리부(750)는 학습된 랜덤 포레스트에 생성된 특징 벡터를 입력할 수 있다. 학습된 랜덤 포레스트는 도 2에서 생성된 학습된 랜덤 포레스트(250)를 나타낸다.
처리부(750)는 학습된 랜덤 포레스트에 특징 벡터를 입력할 수 있다. 일실시예에 따른 처리부(750)는 학습된 랜덤 포레스트에 포함된 복수의 트리 각각에 특징 벡터를 입력할 수 있다. 트리는 입력된 특징 벡터를 어떤 손의 자세(702)인지 분류(classification)할 수 있다.
처리부(750)는 학습된 랜덤 포레스트에 포함된 복수의 트리 각각으로부터 인식 결과를 수집할 수 있다. 또한, 처리부(750)는 수집된 인식 결과 중에서 다수표(Majority Vote)를 받은 인식 결과를 손의 자세(702)로 선택할 수 있다.
일측에 따른 처리부(750)는 손의 자세 별로 가중치를 부여하여 입력된 영상(701)에서 손의 자세(702)를 인식할 수 있다. 이 때, 처리부(750)는 수집된 인식 결과에 대하여 미리 설정된 손의 자세 별 가중치를 부여할 수 있다. 또한, 처리부(750)는 가중치가 부여된 값이 가장 큰 인식 결과를 손의 자세(702)로 선택할 수 있다.
수식 1은 처리부(750)가 가중치를 부여하는 동작을 나타내는 식이다.
수식 1
이 때, 는 학습된 랜덤 포레스트에서 손의 자세(702) B(Shape B)로 인식된 트리의 개수를 나타내고, 는 손의 자세(702) B에 대한 중요도를 표시하는 가중치 값(Weight Value)이며, 는 가중치가 반영된 값을 나타낸다.
이와 같이 손의 자세 별로 가중치를 부여하여 최종적인 손의 자세(702)를 선택함으로써, 자세 인식 장치(700)는 특정 손의 자세를 중요한 데이터로 취급하여 영상(701)을 분석할 수 있게 된다.
일측에 따른 처리부(750)는 입력된 영상(701)에 대한 시간 프레임 별로 인식된 손의 자세를 누적하여 최종적인 손의 자세(702)를 인식할 수 있다. 이하 도 8을 참조하여 처리부(750)가 시간 프레임 별로 인식된 손의 자세를 누적하여 최종적인 손의 자세(702)를 인식하는 동작에 대해서 설명한다.
도 8은 일실시예에 따른 자세 인식 장치가 시간 프레임 별로 인식된 손의 자세를 누적하는 동작을 나타내는 도면이다.
도 8을 참조하면, 자세 인식 장치(700)의 처리부(750)는 시간 프레임 별로 인식된 손의 자세를 누적하여 최종적인 손의 자세(702)를 인식할 수 있다. 이 때, 처리부(750)는 영상(701)에 대한 시간 프레임 별로 복수의 트리 각각으로부터 인식 결과를 수집할 수 있다. 또한, 처리부(750)는 시간 프레임 별로 수집된 인식 결과를 누적 처리할 수 있다. 또한, 처리부(750)는 누적 처리된 값이 가장 큰 인식 결과를 최종적인 손의 자세(702)로 선택할 수 있다.
예를 들어, 처리부(750)는 t-1초의 프레임으로부터 생성된 특징 벡터를 학습된 랜덤 포레스트(810)에 입력할 수 있다. 또한, 학습된 랜덤 포레스트(810)에 포함된 복수의 트리 각각으로부터 인식 결과를 수집할 수 있다. Nt-1(811)은 t-1초의 프레임에서 사용자의 손의 자세를 '손의 자세 1'로 인식한 트리의 개수를 나타내고, Mt-1(812)은 t-1초의 프레임에서 사용자의 손의 자세를 '손의 자세 2'로 인식한 트리의 개수를 나타내며, Ot-1(813)은 t-1초의 프레임에서 사용자의 손의 자세를 '손의 자세 3'으로 인식한 트리의 개수를 나타낸다.
또한, 처리부(750)는 t+n초의 프레임으로부터 생성된 특징 벡터를 학습된 랜덤 포레스트(820)에 입력할 수 있다. 또한, 학습된 랜덤 포레스트(820)에 포함된 복수의 트리 각각으로부터 인식 결과를 수집할 수 있다. Nt+n(821)은 t+n초의 프레임에서 사용자의 손의 자세를 '손의 자세 1'로 인식한 트리의 개수를 나타내고, Mt+n(822)은 t+n초의 프레임에서 사용자의 손의 자세를 '손의 자세 2'로 인식한 트리의 개수를 나타내며, Ot+n(823)은 t+n초의 프레임에서 사용자의 손의 자세를 '손의 자세 3'으로 인식한 트리의 개수를 나타낸다.
이와 같이 각 시간별 프레임 별로 복수의 트리로부터 인식 결과를 수집하고, 처리부(750)는 각 손의 자세 별로 인식 결과를 누적시킬 수 있다. 따라서 처리부(750)는 손의 자세 1로 인식된 결과값들을 누적시켜서 'Nt-1(811) + … + Nt+n(821)'을 최종적인 손의 자세 1의 인식 결과값으로 연산할 수 있고, 손의 자세 2로 인식된 결과값들을 누적시켜서 'Mt-1(812) + … + Mt+n(822)'을 최종적인 손의 자세 2의 인식 결과값으로 연산할 수 있으며, 손의 자세 3으로 인식된 결과값들을 누적시켜서 'Ot-1(813) + … + Ot+n(823)'을 최종적인 손의 자세 3의 인식 결과값으로 연산할 수 있다.
또 다른 실시예에 따르면, 처리부(750)는 인식 결과 누적 시, 가장 최근에 계산된 손의 자세에 더 많은 가중치를 부여할 수 있다. 예를 들어, Wt-1, Wt, ..., Wt+n의 가중치가 있을 때(이 때, Wt+n > Wt+n-1> ...> Wt > Wt-1), 처리부(750)는 누적 값을 'Mt-1(812)*Wt-1 + ... + Mt+n(822)*Wt+n'으로 계산할 수 있다.
처리부(750)는 누적값이 가장 큰 결과값을 갖는 손의 자세를 최종적인 손의 자세(702)로 선택할 수 있다. 예를 들어, 손의 자세 1에 대한 누적값이 100이고, 손의 자세 2에 대한 누적값이 50이며, 손의 자세 3에 대한 누적값이 120인 경우, 처리부(750)는 손의 자세 3을 최종적인 손의 자세(702)로 선택할 수 있다.
이와 같이 시간 프레임 별로 인식 결과를 누적 시켜서 최종적인 손의 자세(702)를 선택함으로써, 영상(701)의 노이즈로 인해 같은 자세에서도 다른 결과가 생성될 수 있는 오류를 방지할 수 있다.
일측에 따른 처리부(750)는 시간 프레임 별로 가중치 부여하여 입력된 영상(701)에서 최종적인 손의 자세(702)를 인식할 수 있다.
이 때, 처리부(750)는 시간 프레임 별로 수집된 인식 결과에 대하여 미리 설정된 시간 별 가중치를 부여할 수 있다. 예를 들어, 처리부(750)는 현재 시간과 가까운 시간의 프레임에는 가중치를 높게 부여하고, 현재 시간과 먼 시간의 프레임 시간의 프레임에는 가중치는 낮게 부여할 수 있다.
처리부(750)는 가중치가 부여된 시간 프레임 별로 수집된 인식 결과를 누적 처리할 수 있다. 또한, 처리부(750)는 누적 처리된 값이 가장 큰 인식 결과를 최종적인 손의 자세(702)로 선택할 수 있다.
실시예에 따라서는 특정 프레임에서 특정 손의 자세에 대한 인식 결과가 월등하게 좋은 경우(예를 들어, 인식 결과의 편중도가 임계값을 초과하는 경우)에는, 처리부(750)는 이 후의 프레임에 대해서는 인식 결과가 월등하게 좋게 나타난 해당 프레임 이후의 결과를 누적하여 최종적인 손의 자세(702)를 연산할 수 있다.
다시 도 7을 참조하면, 일측에 따른 자세 인식 장치(700)는 학습 처리부(751)를 더 포함할 수 있다.
학습 처리부(751)는 학습된 랜덤 포레스트를 생성할 수 있다. 즉, 학습 처리부(751)는 참조 영상을 특징 벡터 생성기에 입력하여 복수의 참조 특징 벡터를 생성할 수 있다. 또한, 학습 처리부(751)는 랜덤 포레스트를 이용하여 생성된 복수의 참조 특징 벡터를 학습하여 학습된 랜덤 포레스트를 생성할 수 있다.
일실시예에 따른 학습 처리부(751)는 랜덤 포레스트에 포함된 복수의 트리가 서로 다른 특징을 갖도록 학습된 랜덤 포레스트를 생성할 수 있다. 학습 처리부(751)는 생성된 복수의 참조 특징 벡터 중 임의의 수의 참조 특징 벡터를 선택할 수 있다. 또한, 학습 처리부(751)는 랜덤 포레스트를 이용하여 선택된 임의의 수의 참조 특징 벡터를 학습하여, 랜덤 포레스트에 포함된 복수의 트리가 서로 다른 특징을 갖도록 학습된 랜덤 포레스트를 생성할 수 있다.
도 2 및 도 3에서 설명한 학습된 랜덤 포레스트를 생성하는 동작은 학습 처리부(751)에 동일하게 적용될 수 있다.
일측에 따른 자세 인식 장치(700)는 판단부(760)를 더 포함할 수 있다.
판단부(760)는 선택된 손의 자세(702)가 유효한 자세인지 여부를 판단할 수 있다. 일실시예에 따른 판단부(760)는 인식된 손의 자세(702)와 샘플 손의 자세들을 비교하여 유사도가 임계값 이상인 손의 자세가 있는 경우, 인식된 손의 자세를 유효한 손의 자세(702)로 판단할 수 있다.
또한, 자세 인식 장치(700)는 손 위치 연산부(770)를 더 포함할 수 있다.
손 위치 연산부(770)는 선택된 손의 자세(702)가 유효한 자세인 경우, 영상(701)의 현재 프레임에서의 손의 위치를 연산하고, 영상(701)의 이전 프레임에서의 손의 위치를 연산할 수 있다. 또한, 손 위치 연산부(770)는 현재 프레임과 이전 프레임 각각에서의 연산된 손의 위치의 차이를 연산하여 손의 위치의 변이 값(771)을 연산할 수 있다.
자세 인식 장치(700)는 손 위치 연산부(770)에서 연산된 손의 위치의 변이 값(771)을 이용하여 손의 2차원 또는 3차원 변이 값을 획득할 수 있다.
실시예에 따라서는 손 위치 연산부(770)는, 이전 프레임과 현재 프레임 각각에서 인식된 손의 자세(702)가 동일한 경우, 이전 프레임과 현재 프레임 각각에서 특징점을 추출하고, 추출된 특징점 간의 반복 최근접 점들(Iterative Closest Points)을 계산하여 손의 위치 변이(Translation)를 계산할 수 있다. 이와 같이 연산된 계산된 결과를 이용하여 손 위치 연산부(770)는 손의 6DOF 조작 정보를 추정할 수 있다.
또한, 자세 인식 장치(700)는 손 이동 방향 연산부(780)를 더 포함할 수 있다.
선택된 손의 자세(702)가 유효한 자세인 경우, 손 이동 방향 연산부(780)는 손의 손바닥 평면의 법선 벡터를 연산하고, 손바닥 평면의 수직 방향과 손바닥 평면에서 손가락 끝 쪽으로의 방향을 연산하여 손의 이동 방향(781)을 연산할 수 있다.
자세 인식 장치(700)는 손 이동 방향 연산부(780)에서 연산된 값을 이용하여 손의 3차원 이동 방향을 획득할 수 있다.
실시예에 따라서는 손 이동 방향 연산부(780)는, 이전 프레임과 현재 프레임 각각에서 인식된 손의 자세(702)가 동일한 경우, 이전 프레임과 현재 프레임 각각에서 특징점을 추출하고, 추출된 특징점 간의 반복 최근접 점들(Iterative Closest Points)을 계산하여 손의 이동 방향(Orientation)을 계산할 수 있다. 이와 같이 연산된 계산된 결과를 이용하여 손 이동 방향 연산부(780)는 손의 6DOF 조작 정보를 추정할 수 있다.
일실시예에 따른 자세 인식 장치는 출력부(미도시)를 더 포함할 수 있다.
손의 동작 추정 시 원하지 않는 동작에서 발생하는 동작 인식결과로 인해 시스템(자세 인식 장치)이 생각하지 않았던 동작을 할 수 있다. 따라서 시스템(자세 인식 장치)에서는 사용자에게 특정 손 자세를 취하면 인식을 시작하겠다는 비쥬얼(Visual) 정보를 제공할 수 있다. 이 때, 출력부는 비쥬얼 정보를 출력할 수 있다.
이와 같이 제공된 비쥬얼 정보는 사용자가 동작을 취하기 전에 특정 손 자세를 취하도록 할 수 있는 효과가 있으며, 자세 인식 장치는 이렇게 취한 손 자세 이후 동작을 인식하여 결과를 제공할 수 있다. 실시예에 따라서는 사용자가 특정 손 자세를 취하면 자세 인식 장치는 화면상에 손이나 손에 상응하는 시각적 기호를 제공할 수 있다.
일측에 따른 자세 인식 장치는, 동작 인식의 오동작을 줄이는 방법으로서, 손의 위치를 누적할 수 있다. 이하 도 9를 참조하여 이에 대해서 상세히 설명한다.
도 9는 일실시예에 따른 자세 인식 장치가 손의 위치를 누적하는 동작을 나타내는 도면이다.
도 9를 참조하면, 자세 인식 장치는 처리부를 통하여 손의 자세를 획득할 수 있다(910).
자세 인식 장치는 판단부를 통하여 손의 자세가 유효한지 여부를 판단할 수 있다(920). 또한, 자세 인식 장치는 판단부 및 손 이동 방향 연산부를 통하여 손의 방향이 유효한지 여부를 판단할 수 있다. 즉, 자세 인식 장치는 손의 자세 및 방향의 유효성 판단을 통하여 사용자가 손의 자세를 다른 자세로 바꾸는지 여부를 판단할 수 있다.
손의 자세 및 방향이 유효한 경우, 자세 인식 장치는 손의 위치를 누적할 수 있다(930). 또한, 자세 인식 장치는 동작별 누적 확률을 연산할 수 있다(940). 일실시예에 따른 세 인식 장치는 누적된 궤적(Trajectory)을 이용하여 동작별 누적 확률을 연산할 수 있다.
자세 인식 장치는 동작별 누적 확률이 임계값을 초과하는지 여부를 판단할 수 있다(950). 동작별 누적 확률이 임계값을 초과하지 않는 경우, 자세 인식 장치는 단계(910)으로 돌아가서 단계(940)까지의 동작을 반복 수행할 수 있다. 동작별 누적 확률이 임계값을 초과하는 경우, 자세 인식 장치는 동작 인식 결과를 전달할 수 있다(960).
실시예에 따라서는 자세 인식 장치는 단계(950)에서 동작별 누적 확률이 임계값을 초과하는지 여부를 판단하는 대신, 동작별 누적 확률이 가비지 모델(Garbage Model)에서 연산된 누적 확률을 초과하는지 여부를 판단할 수 있다. 동작별 누적 확률이 가비지 모델에서 연산된 누적 확률을 초과하지 않는 경우, 자세 인식 장치는 단계(910)으로 돌아가서 단계(940)까지의 동작을 반복 수행할 수 있다. 동작별 누적 확률이 가비지 모델에서 연산된 누적 확률을 초과하는 경우, 자세 인식 장치는 동작 인식 결과를 전달할 수 있다.
단계(920)에서 손의 자세 및 방향이 유효하지 않은 것으로 판단되는 경우, 자세 인식 장치는 사용자가 손의 자세를 다른 자세로 바꾼 것으로 판단하여, 누적 위치 값을 초기화할 수 있다(970). 또한, 자세 인식 장치는 동작 별 확률 값을 초기화할 수 있다(980).
도 10은 일실시예에 따른 자세 인식 장치의 동작 방법을 나타내는 흐름도이다.
도 10을 참조하면, 자세 인식 장치의 동작 방법은 영상을 입력 받을 수 있다(1010). 영상은 사용자에 대한 영상으로서, 센서 등을 통하여 입력될 수 있다.
자세 인식 장치의 동작 방법은 영상으로부터 사용자의 손과 관련된 관심 영역을 추출할 수 있다(1020). 관심 영역은 사용자에 대한 영상 중에서도 사용자의 손 주변의 영역을 나타낸다.
자세 인식 장치의 동작 방법은 관심 영역에 대한 중심점을 연산할 수 있다(1030). 실시예에 따라서는 자세 인식 장치의 동작 방법은 관심 영역의 중심에 위치하는 점을 중심점으로 연산하거나, 관심 영역 중에서도 손이 차지하는 영역의 중심에 위치하는 점을 중심점으로 연산할 수 있다.
자세 인식 장치의 동작 방법은 학습된 랜덤 포레스트를 생성할 때 이용된 특징 벡터 생성기 및 연산된 중심점에 기반하여 특징 벡터를 생성할 수 있다(1040).
자세 인식 장치의 동작 방법은 학습된 랜덤 포레스트에 생성된 특징 벡터를 입력할 수 있다(1050). 일실시예에 따른 자세 인식 장치의 동작 방법은 학습된 랜덤 포레스트에 포함된 복수의 트리 각각에 특징 벡터를 입력할 수 있다. 트리는 입력된 특징 벡터를 어떤 손의 자세인지 분류(classification)할 수 있다.
자세 인식 장치의 동작 방법은 학습된 랜덤 포레스트에 포함된 복수의 트리 각각으로부터 인식 결과를 수집할 수 있다(1060). 또한, 자세 인식 장치의 동작 방법은 수집된 인식 결과 중에서 다수표(Majority Vote)를 받은 인식 결과를 손의 자세로 선택할 수 있다(1070).
일측에 따른 자세 인식 장치의 동작 방법은 손의 자세 별로 가중치를 부여하여 입력된 영상에서 손의 자세를 인식할 수 있다. 이 때, 자세 인식 장치의 동작 방법은 수집된 인식 결과에 대하여 미리 설정된 손의 자세 별 가중치를 부여할 수 있다. 또한, 자세 인식 장치의 동작 방법은 가중치가 부여된 값이 가장 큰 인식 결과를 손의 자세로 선택할 수 있다.
일측에 따른 자세 인식 장치의 동작 방법은 입력된 영상에 대한 시간 프레임 별로 인식된 손의 자세를 누적하여 최종적인 손의 자세를 인식할 수 있다.
일측에 따른 자세 인식 장치의 동작 방법은 선택된 손의 자세가 유효한 자세인지 여부를 판단하는 단계를 더 포함할 수 있다. 일실시예에 따른 자세 인식 장치의 동작 방법은 인식된 손의 자세와 샘플 손의 자세들을 비교하여 유사도가 임계값 이상인 손의 자세가 있는 경우, 인식된 손의 자세를 유효한 손의 자세로 판단할 수 있다.
자세 인식 장치의 동작 방법은 선택된 손의 자세가 유효한 자세인 경우, 영상의 현재 프레임에서의 손의 위치를 연산하고, 영상의 이전 프레임에서의 손의 위치를 연산하는 단계를 더 포함할 수 있다. 또한, 자세 인식 장치의 동작 방법은 현재 프레임과 이전 프레임 각각에서의 연산된 손의 위치의 차이를 연산하여 손의 위치의 변이 값을 연산하는 단계를 더 포함할 수 있다.
실시예에 따라서는 자세 인식 장치의 동작 방법은, 이전 프레임과 현재 프레임 각각에서 인식된 손의 자세가 동일한 경우, 이전 프레임과 현재 프레임 각각에서 특징점을 추출하고, 추출된 특징점 간의 반복 최근접 점들(Iterative Closest Points)을 계산하여 손의 위치 변이(Translation)를 계산할 수 있다. 이와 같이 연산된 계산된 결과를 이용하여 자세 인식 장치의 동작 방법은 손의 6DOF 조작 정보를 추정할 수 있다.
선택된 손의 자세가 유효한 자세인 경우, 자세 인식 장치의 동작 방법은 손의 손바닥 평면의 법선 벡터를 연산하고, 손바닥 평면의 수직 방향과 손바닥 평면에서 손가락 끝 쪽으로의 방향을 연산하여 손의 이동 방향을 연산하는 단계를 더 포함할 수 있다.
실시예에 따라서는 자세 인식 장치의 동작 방법은, 이전 프레임과 현재 프레임 각각에서 인식된 손의 자세가 동일한 경우, 이전 프레임과 현재 프레임 각각에서 특징점을 추출하고, 추출된 특징점 간의 반복 최근접 점들(Iterative Closest Points)을 계산하여 손의 이동 방향(Orientation)을 계산할 수 있다. 이와 같이 연산된 계산된 결과를 이용하여 자세 인식 장치의 동작 방법은 손의 6DOF 조작 정보를 추정할 수 있다.
손의 동작 추정 시 원하지 않는 동작에서 발생하는 동작 인식결과로 인해 시스템(자세 인식 장치)이 생각하지 않았던 동작을 할 수 있다. 따라서 시스템(자세 인식 장치)에서는 사용자에게 특정 손 자세를 취하면 인식을 시작하겠다는 비쥬얼(Visual) 정보를 제공할 수 있다. 이 때, 자세 인식 장치의 동작 방법은 비쥬얼 정보를 출력할 수 있다.
이와 같이 제공된 비쥬얼 정보는 사용자가 동작을 취하기 전에 특정 손 자세를 취하도록 할 수 있는 효과가 있으며, 자세 인식 장치는 이렇게 취한 손 자세 이후 동작을 인식하여 결과를 제공할 수 있다. 실시예에 따라서는 사용자가 특정 손 자세를 취하면 자세 인식 장치는 화면상에 손이나 손에 상응하는 시각적 기호를 제공할 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
700: 자세 인식 장치 710: 입력부
720: 추출부 730: 연산부
740: 생성부 750: 처리부
720: 추출부 730: 연산부
740: 생성부 750: 처리부
Claims (13)
- 학습된 랜덤 포레스트를 이용하여 손의 자세를 인식하는 자세 인식 장치에 있어서,
영상을 입력 받는 입력부;
상기 영상으로부터 상기 손과 관련된 관심 영역을 추출하는 추출부;
상기 관심 영역에 대한 중심점을 연산하는 연산부;
상기 학습된 랜덤 포레스트를 생성할 때 이용된 특징 벡터 생성기 및 상기 중심점에 기반하여 특징 벡터를 생성하는 생성부; 및
상기 학습된 랜덤 포레스트에 상기 특징 벡터를 입력하고, 상기 학습된 랜덤 포레스트에 포함된 복수의 트리 각각으로부터 인식 결과를 수집하며, 상기 수집된 인식 결과 중에서 다수표(Majority Vote)를 받은 인식 결과를 상기 손의 자세로 선택하는 처리부
를 포함하는 자세 인식 장치. - 제1항에 있어서,
상기 학습된 랜덤 포레스트를 생성하는 학습 처리부
를 더 포함하고,
상기 학습 처리부는
참조 영상을 상기 특징 벡터 생성기에 입력하여 복수의 참조 특징 벡터를 생성하고,
랜덤 포레스트 학습 방법 및 상기 생성된 복수의 참조 특징 벡터를 이용하여 랜덤 포레스트를 학습함으로써 상기 학습된 랜덤 포레스트를 생성하는
자세 인식 장치. - 제2항에 있어서,
상기 학습 처리부는
상기 랜덤 포레스트에 포함된 복수의 트리가 서로 다른 특징을 갖도록 상기 학습된 랜덤 포레스트를 생성하는
자세 인식 장치. - 제3항에 있어서,
상기 학습 처리부는
상기 생성된 복수의 참조 특징 벡터 중 임의의 수의 참조 특징 벡터를 선택하고,
상기 랜덤 포레스트를 이용하여 상기 선택된 임의의 수의 참조 특징 벡터를 학습하여, 상기 랜덤 포레스트에 포함된 복수의 트리가 서로 다른 특징을 갖도록 상기 학습된 랜덤 포레스트를 생성하는
자세 인식 장치. - 제1항에 있어서,
상기 특징 벡터 생성기는
참조 영상을 입력 받고,
상기 참조 영상으로부터 상기 손과 관련된 참조 관심 영역을 추출하며,
상기 참조 관심 영역에 대한 참조 중심점을 연산하고,
상기 참조 중심점을 기준으로 임의의 두 점을 선택하고,
상기 선택된 두 점 사이의 깊이 차(Depth Difference)를 연산하여 참조 특징 벡터를 생성하고,
상기 참조 특징 벡터의 차원(Dimension)이 임계값을 초과할 때까지 상기 참조 특징 벡터를 생성하는 동작을 반복 수행하는
자세 인식 장치. - 제1항에 있어서,
상기 처리부는
상기 수집된 인식 결과에 대하여 미리 설정된 상기 손의 자세 별 가중치를 부여하고,
상기 가중치가 부여된 값이 가장 큰 인식 결과를 상기 손의 자세로 선택하는
자세 인식 장치. - 제1항에 있어서,
상기 처리부는
상기 영상에 대한 시간 프레임 별로 상기 인식 결과를 수집하고,
상기 시간 프레임 별로 수집된 인식 결과를 누적 처리하며,
상기 누적 처리된 값이 가장 큰 인식 결과를 상기 손의 자세로 선택하는
자세 인식 장치. - 제7항에 있어서,
상기 처리부는
상기 시간 프레임 별로 수집된 인식 결과에 대하여 미리 설정된 시간 별 가중치를 부여하고,
상기 가중치가 부여된 시간 프레임 별로 수집된 인식 결과를 누적 처리하며,
상기 누적 처리된 값이 가장 큰 인식 결과를 상기 손의 자세로 선택하는
자세 인식 장치. - 제1항에 있어서,
상기 선택된 손의 자세가 유효한 자세인지 판단하는 판단부
를 더 포함하는 자세 인식 장치. - 제9항에 있어서,
상기 선택된 손의 자세가 유효한 자세인 경우, 상기 영상의 현재 프레임에서의 상기 손의 위치를 연산하고 상기 영상의 이전 프레임에서의 상기 손의 위치를 연산하는 손 위치 연산부
를 더 포함하고,
상기 손 위치 연산부는
상기 현재 프레임과 상기 이전 프레임 각각에서의 상기 손의 위치의 차이를 연산하여 상기 손의 위치의 변이 값을 연산하는
자세 인식 장치. - 제9항에 있어서,
상기 선택된 손의 자세가 유효한 자세인 경우, 상기 손의 손바닥 평면의 법선 벡터를 연산하고, 상기 손바닥 평면의 수직 방향과 상기 손바닥 평면에서 손가락 끝 쪽으로의 방향을 연산하여 상기 손의 이동 방향을 연산하는 손 이동 방향 연산부
를 더 포함하는 자세 인식 장치. - 학습된 랜덤 포레스트를 이용하여 손의 자세를 인식하는 자세 인식 장치의 동작 방법에 있어서,
영상을 입력 받는 단계;
상기 영상으로부터 상기 손과 관련된 관심 영역을 추출하는 단계;
상기 관심 영역에 대한 중심점을 연산하는 단계;
상기 학습된 랜덤 포레스트를 생성할 때 이용된 특징 벡터 생성기 및 상기 중심점에 기반하여 특징 벡터를 생성하는 단계;
상기 학습된 랜덤 포레스트에 상기 특징 벡터를 입력하는 단계;
상기 학습된 랜덤 포레스트에 포함된 복수의 트리 각각으로부터 인식 결과를 수집하는 단계; 및
상기 수집된 인식 결과 중에서 다수표(Majority Vote)를 받은 인식 결과를 상기 손의 자세로 선택하는 단계
를 포함하는 자세 인식 장치의 동작 방법. - 제12항의 방법을 실행하는 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120076099A KR101994311B1 (ko) | 2012-07-12 | 2012-07-12 | 자세 인식 장치 및 그 동작 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120076099A KR101994311B1 (ko) | 2012-07-12 | 2012-07-12 | 자세 인식 장치 및 그 동작 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20140010500A true KR20140010500A (ko) | 2014-01-27 |
KR101994311B1 KR101994311B1 (ko) | 2019-06-28 |
Family
ID=50143077
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120076099A KR101994311B1 (ko) | 2012-07-12 | 2012-07-12 | 자세 인식 장치 및 그 동작 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101994311B1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101601660B1 (ko) * | 2014-11-07 | 2016-03-10 | 재단법인대구경북과학기술원 | 깊이 영상을 이용한 손 영역 분류 방법 및 그 장치 |
CN109508661A (zh) * | 2018-10-31 | 2019-03-22 | 上海交通大学 | 一种基于物体检测和姿态估计的举手者检测方法 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102540560B1 (ko) | 2020-12-03 | 2023-06-12 | 숭실대학교 산학협력단 | 랜덤 포레스트를 사용한 손 자세의 계층적 추정 방법, 이를 수행하기 위한 기록 매체 및 장치 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110116422A (ko) * | 2010-04-19 | 2011-10-26 | 서경대학교 산학협력단 | 마커와 훈련자 손 인식을 통한 증강 현실 상황 훈련 시스템 |
-
2012
- 2012-07-12 KR KR1020120076099A patent/KR101994311B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110116422A (ko) * | 2010-04-19 | 2011-10-26 | 서경대학교 산학협력단 | 마커와 훈련자 손 인식을 통한 증강 현실 상황 훈련 시스템 |
Non-Patent Citations (1)
Title |
---|
김병민 외, "국부이진패턴 기반의 특징 벡터와 랜덤 포레스트 분류기를 이용한 실시간 손 모양 인식", 2012년도 대한전자공학회 하계학술대회 제35권 제1호,2012년6월.* * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101601660B1 (ko) * | 2014-11-07 | 2016-03-10 | 재단법인대구경북과학기술원 | 깊이 영상을 이용한 손 영역 분류 방법 및 그 장치 |
CN109508661A (zh) * | 2018-10-31 | 2019-03-22 | 上海交通大学 | 一种基于物体检测和姿态估计的举手者检测方法 |
CN109508661B (zh) * | 2018-10-31 | 2021-07-09 | 上海交通大学 | 一种基于物体检测和姿态估计的举手者检测方法 |
Also Published As
Publication number | Publication date |
---|---|
KR101994311B1 (ko) | 2019-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109670474B (zh) | 一种基于视频的人体姿态估计方法、装置及设备 | |
JP6942488B2 (ja) | 画像処理装置、画像処理システム、画像処理方法、及びプログラム | |
Wang et al. | Hidden‐Markov‐models‐based dynamic hand gesture recognition | |
Raheja et al. | Robust gesture recognition using Kinect: A comparison between DTW and HMM | |
US10891473B2 (en) | Method and device for use in hand gesture recognition | |
Yub Jung et al. | Random tree walk toward instantaneous 3d human pose estimation | |
CN108027972B (zh) | 用于对象跟踪的系统和方法 | |
CN108388879B (zh) | 目标的检测方法、装置和存储介质 | |
US9098740B2 (en) | Apparatus, method, and medium detecting object pose | |
US20180211104A1 (en) | Method and device for target tracking | |
EP3174012B1 (en) | Locating and tracking fingernails in images | |
KR20200120739A (ko) | 공중 필기 인식을 위한 방법, 장치, 기기 및 컴퓨터 판독 가능한 저장 매체 | |
CN111783506B (zh) | 目标特征的确定方法、装置和计算机可读存储介质 | |
CN114981841A (zh) | 用于视频对象分割(vos)的端到端合并 | |
JP2014137818A (ja) | 手の平開閉動作識別方法と装置、マン・マシン・インタラクション方法と設備 | |
CN110569731A (zh) | 一种人脸识别方法、装置及电子设备 | |
JP6756406B2 (ja) | 画像処理装置、画像処理方法および画像処理プログラム | |
WO2013081750A1 (en) | System and method for tracking and recognizing people | |
JP6597914B2 (ja) | 画像処理装置、画像処理方法、及びプログラム | |
CN112784750B (zh) | 基于像素和区域特征匹配的快速视频物体分割方法和装置 | |
KR20220033007A (ko) | 실시간 얼굴 랜드마크 검출 | |
KR101994311B1 (ko) | 자세 인식 장치 및 그 동작 방법 | |
KR101350387B1 (ko) | 깊이 정보를 이용한 손 검출 방법 및 그 장치 | |
JP6103765B2 (ja) | 行動認識装置、方法及びプログラム並びに認識器構築装置 | |
US9104980B2 (en) | Information processing device, information processing method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |