KR102359136B1 - 제스처 인식 방법 및 이를 수행하는 제스처 인식 장치 - Google Patents

제스처 인식 방법 및 이를 수행하는 제스처 인식 장치 Download PDF

Info

Publication number
KR102359136B1
KR102359136B1 KR1020190144026A KR20190144026A KR102359136B1 KR 102359136 B1 KR102359136 B1 KR 102359136B1 KR 1020190144026 A KR1020190144026 A KR 1020190144026A KR 20190144026 A KR20190144026 A KR 20190144026A KR 102359136 B1 KR102359136 B1 KR 102359136B1
Authority
KR
South Korea
Prior art keywords
gesture
neural network
hand
image
gesture recognition
Prior art date
Application number
KR1020190144026A
Other languages
English (en)
Other versions
KR20210057358A (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 KR1020190144026A priority Critical patent/KR102359136B1/ko
Publication of KR20210057358A publication Critical patent/KR20210057358A/ko
Application granted granted Critical
Publication of KR102359136B1 publication Critical patent/KR102359136B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/002Specific input/output arrangements not covered by G06F3/01 - G06F3/16
    • G06F3/005Input arrangements through a video camera
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • 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/20Movements or behaviour, e.g. gesture recognition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Social Psychology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Psychiatry (AREA)
  • Image Analysis (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

본 발명은 관찰 영역(FoV: Field of View)에 대한 제스처 인식을 수행하는 제스처 인식 방법 및 이를 수행하는 제스처 인식 장치로, 카메라에 의해 제스처가 수행되는 공간을 촬영한 영상을 획득하는 단계, 싱글 이미지를 입력받는 2D CNN 모델로 제공되는 인공 신경망을 이용하여 트리거링 이벤트의 발생을 모니터링하는 단계, 상기 트리거링 이벤트가 발생하면 제스처 인식 모드를 실행하는 단계를 포함하되, 상기 제스처 인식 모드는 연속되는 이미지들을 입력받는 3D CNN 모델의 풀링 레이어 또는 풀리 커넥티드 레이어에 RNN 모델이 연결되는 형태로 제공되는 제2 인공 신경망을 이용하여 상기 특정 제스처가 검출된 이미지 프레임의 후속 이미지 프레임들로부터 상기 제스처의 종류를 식별하는 단계 및 상기 제스처의 종류에 기초하여 차량의 컴포넌트 중 타겟 컴포넌트가 타겟 동작을 수행하도록 제어하는 단계를 포함하는 제스처 인식 방법 및 이를 수행하는 인식 장치에 관한 발명이다.

Description

제스처 인식 방법 및 이를 수행하는 제스처 인식 장치 {GESTURE RECOGNITION METHOD AND GESTURE RECOGNITION DEVICE PERFORMING THE SAME}
본 발명은 제스처 인식 방법 및 이를 수행하는 제스처 인식 장치에 관한 것으로, 보다 상세하게는 관찰 영역을 촬영하여 획득한 이미지 또는 영상을 이용하여 관찰 영역에서 수행된 제스처를 인식하고 인식된 제스처에 대응하는 명령을 수행하는 제스처 인식 방법 및 이를 수행하는 제스처 인식 장치에 관한 것이다.
사용자의 편의를 위해 별도의 조작 없이 장치나 장비를 제어하는 기술의 대표적인 예로 음성 인식 기술 및 제스처 인식 기술을 들 수 있다. 이 중 제스처 인식 기술 분야는 사용자의 신체 일부를 이용하여 근거리 또는 원거리에서 장치나 장비를 제어하여 원하는 기능을 수행하는 것을 목적으로 하며, 그 과정에서 제스처의 인식 정확도 및 인식 속도를 향상시키는 데에 연구가 집중되고 있다.
최근 이미지 또는 영상을 분석하는 데에 있어 갖는 기계 학습 모델 또는 인공 지능 기술이 정확도 및 속도 측면에서 강점을 가지면서 대세적인 분석 기술로 자리잡고 있으며, 이러한 기계 학습 모델 또는 인공 지능은 이미지 또는 영상 분석 기술과 밀접한 관련이 있는 제스처 인식 기술 분야에서 역시 각광 받고 있다.
다만 종래에는 센서에 의해 획득된 제스처를 포함한 이미지 또는 영상 전체에 대해 기계 학습 모델 또는 인공 지능을 이용하여 제스처 인식을 수행함으로써, 여전히 인식 속도가 느리고 제스처 인식 시스템이 효율적이지 못한 한계점을 가지고 있다.
본 발명이 해결하고자 하는 일 과제는, 제스처 정보를 포함하는 이미지 또는 영상의 적어도 일부를 분석하여 제스처를 인식하는 제스처 인식 방법 및 이를 수행하는 제스처 인식 장치를 제공하는 것이다.
본 발명이 해결하고자 하는 일 과제는, 연속되는 이미지 데이터를 이용하여 제스처를 인식하는 데에 있어 트리거링 이벤트를 포함하는 이미지의 후속 이미지들로부터 제스처를 인식하는 제스처 인식 방법 및 이를 수행하는 제스처 인식 장치를 제공하는 것이다.
본 발명이 해결하고자 하는 일 과제는, 제스처 수행 주체를 구분하고 제스처 수행 주체에 따라 제스처 인식 결과를 다르게 설정하는 제스처 인식 방법 및 이를 수행하는 제스처 인식 장치를 제공하는 것이다.
본 발명이 해결하고자 하는 일 과제는, 제스처가 포함된 이미지 또는 영상을 분석하는 과정에서 도출되는 중간 데이터에 대해 트리거링 이벤트 감지 및/또는 제스처 수행 주체 판단을 수행하는 제스처 인식 방법 및 이를 수행하는 제스처 인식 장치를 제공하는 것이다.
본 발명이 해결하고자 하는 일 과제는, 트리거링 이벤트 감지 및/또는 제스처 수행 주체 감지를 위해 제스처 인식에 이용되는 인공 신경망과 다른 모델의 인공 신경망을 이용하는 제스처 인식 방법 및 이를 수행하는 제스처 인식 장치를 제공하는 것이다.
본 발명이 해결하고자 하는 과제가 상술한 과제로 제한되는 것은 아니며, 언급되지 아니한 과제들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 명세서의 일 양상에 따르면, 본 명세서의 일 양상에 따르면, 차량의 컴포넌트를 제어하기 위한 차량 탑승자의 핸드 제스처를 인식하는 방법으로서, 깊이 카메라에 의해 핸드 포스처와 핸드 무브먼트로 정의되는 상기 핸드 제스처가 수행되는 공간을 촬영한 영상을 획득하는 단계, 싱글 이미지를 입력받는 2D CNN 모델로 제공되고, 특정 핸드 포스처를 포함하는 깊이 이미지에 트리거링 이벤트의 발생과 관련된 제1 클래스 값이 라벨링된 학습용 데이터 셋으로 학습된 제1 인공 신경망을 이용하여 상기 영상에 포함된 이미지 프레임으로부터 상기 특정 핸드 포스처를 검출함으로써, 트리거링 이벤트의 발생을 모니터링하는 단계 및 상기 트리거링 이벤트가 발생하면, 제스처 인식 모드를 실행하는 단계를 포함하되, 상기 제스처 인식 모드는 연속되는 이미지들을 입력받는 3D CNN 모델의 풀링 레이어 또는 풀리 커넥티드 레이어에 RNN 모델이 연결되는 형태로 제공되고, 상기 핸드 제스처를 포함하는 연속되는 깊이 이미지들에 상기 핸드 제스처의 종류를 지시하는 클래스값이 라벨링된 학습용 데이터셋으로 학습된 제2 인공 신경망을 이용하여 상기 특정 핸드 포스처가 검출된 이미지 프레임의 후속 이미지 프레임들로부터 상기 핸드 제스처의 종류를 식별하는 단계 및 상기 핸드 제스처의 종류에 기초하여 상기 차량의 컴포넌트 중 타겟 컴포넌트가 타겟 동작을 수행하도록 제어하는 단계를 포함하는 제스처 인식 방법이 제공될 수 있다.
본 명세서의 다른 양상에 따르면, 차량의 컴포넌트를 제어하기 위한 차량 탑승자의 핸드 제스처를 인식하는 방법으로서, 깊이 카메라에 의해 핸드 포스처와 핸드 무브먼트로 정의되는 상기 핸드 제스처가 수행되는 공간을 촬영한 영상을 획득하는 단계, 연속되는 이미지들을 입력받는 3D CNN 모델의 맥스 풀링 레이어 또는 풀리 커넥티드 레이어에 RNN 모델이 연결되는 형태로 제공되고, 상기 핸드 제스처를 포함하는 연속되는 깊이 이미지들에 상기 핸드 제스처의 종류를 지시하는 클래스값이 태깅된 학습용 데이터셋으로 학습된 제1 인공 신경망을 제공하는 단계, 상기 제1 인공 신경망의 상기 3D CNN 모델이 상기 RNN 모델과 연결되는 상기 맥스 풀링 레이어 또는 상기 풀리 커넥티드 레이어를 입력 레이어로 하고, 특정 핸드 포스처를 포함하는 깊이 이미지에 트리거링 이벤트의 발생과 관련된 제1 클래스 값이 라벨링되고 상기 특정 핸드 포스처와 상이한 핸드 포스처를 포함하는 깊이 이미지에 상기 제1 클래스 값과 상이한 제2 클래스 값이 라벨링된 학습용 데이터셋으로 학습된 제2 인공 신경망을 제공하는 단계, 상기 영상이 상기 제1 인공 신경망에 입력됨에 따라 도출되는 상기 맥스 풀링 레이어 또는 상기 풀리 커넥티드 레이어의 노드값으로부터, 상기 제2 인공 신경망을 이용하여 상기 특정 핸드 포스처를 검출함으로써, 트리거링 이벤트의 발생을 모니터링하는 단계, 상기 트리거링 이벤트가 발생하면, 상기 제1 인공 신경망을 이용하여 상기 특정 핸드 포스처가 검출된 이미지 프레임의 후속 이미지 프레임들로부터 상기 핸드 제스처의 종류를 식별하는 단계 및 상기 핸드 제스처의 종류에 기초하여 상기 차량의 컴포넌트 중 타겟 컴포넌트가 타겟 동작을 수행하도록 제어하는 단계를 포함하는 제스처 인식 방법이 제공될 수 있다.
본 발명의 또 다른 양상에 따르면, 차량의 컴포넌트를 제어하기 위한 차량 탑승자의 핸드 제스처를 인식하는 방법으로서, 깊이 카메라에 의해 핸드 포스처와 핸드 무브먼트로 정의되는 상기 핸드 제스처가 수행되는 공간을 촬영한 영상을 획득하는 단계, 싱글 이미지를 입력받는 2D CNN 모델로 제공되고, 상기 차량 탑승자 중 운전자에 의해 수행된 핸드 제스처의 핸드 포스처를 포함하는 깊이 이미지에 상기 운전자를 지시하는 클래스 값이 라벨링되고 상기 차량 탑승자 중 동승자에 의해 수행된 핸드 제스처의 핸드 포스처를 포함하는 깊이 이미지에 상기 동승자를 지시하는 클래스 값이 라벨링된 학습용 데이터셋으로 학습된 제1 인공 신경망을 이용하여 상기 영상에 포함된 이미지 프레임으로부터 상기 핸드 제스처의 수행 주체를 판단하는 단계, 연속되는 이미지들을 입력받는 3D CNN 모델의 맥스 풀링 레이어 또는 풀리 커넥티드 레이어에 RNN 모델이 연결되는 형태로 제공되고, 상기 핸드 제스처를 포함하는 연속되는 깊이 이미지들에 상기 핸드 제스처의 종류를 지시하는 클래스값이 라벨링된 학습용 데이터셋으로 학습된 제2 인공 신경망을 이용하여 상기 영상의 이미지 프레임들로부터 상기 핸드 제스처의 종류를 식별하는 단계 및 상기 핸드 제스처의 수행 주체에 따라 상기 핸드 제스처의 종류에 대응하는 타겟 동작을 상기 차량의 컴포넌트 중 타겟 컴포넌트가 수행하도록 제어하는 단계를 포함하는 제스처 인식 방법이 제공될 수 있다.
본 발명의 또 다른 양상에 따르면, 차량의 컴포넌트를 제어하기 위한 차량 탑승자의 핸드 제스처를 인식하는 방법으로서, 깊이 카메라에 의해 핸드 포스처와 핸드 무브먼트로 정의되는 상기 핸드 제스처가 수행되는 공간을 촬영한 영상을 획득하는 단계, 싱글 이미지를 입력받는 2D CNN 모델로 제공되고, 상기 차량 탑승자 중 운전자에 의해 수행된 핸드 제스처의 핸드 포스처를 포함하는 깊이 이미지에 상기 운전자를 지시하는 클래스 값이 라벨링되고 상기 차량 탑승자 중 동승자에 의해 수행된 핸드 제스처의 핸드 포스처를 포함하는 깊이 이미지에 상기 동승자를 지시하는 클래스 값이 라벨링된 학습용 데이터셋으로 학습된 제1 인공 신경망을 이용하여 상기 영상에 포함된 이미지 프레임으로부터 상기 핸드 제스처의 수행 주체를 판단하는 단계, 상기 핸드 제스처의 수행 주체가 운전자인 경우 수행되며, 연속되는 이미지들을 입력받는 3D CNN 모델의 맥스 풀링 레이어 또는 풀리 커넥티드 레이어에 RNN 모델이 연결되는 형태로 제공되고, 상기 핸드 제스처를 포함하는 연속되는 깊이 이미지들에 상기 핸드 제스처의 종류를 지시하는 클래스값이 라벨링된 학습용 데이터셋으로 학습된 제2 인공 신경망을 이용하여 상기 특정 핸드 포스처가 검출된 이미지 프레임의 후속 이미지 프레임들로부터 상기 핸드 제스처의 종류를 식별하는 단계 및 상기 핸드 제스처의 종류에 기초하여 상기 차량의 컴포넌트 중 타겟 컴포넌트가 타겟 동작을 수행하도록 제어하는 단계를 포함하는 핸드 제스처 인식 방법이 제공될 수 있다.
본 발명의 과제의 해결 수단이 상술한 해결 수단들로 제한되는 것은 아니며, 언급되지 아니한 해결 수단들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명에 의하면, 제스처가 포함된 이미지 또는 영상 중 필요한 부분에 대해 제스처 인식을 수행함으로써 불필요한 데이터를 처리하는 것을 방지하여 제스처 인식 시스템의 효율 및 강건성이 향상될 수 있다.본 발명에 의하면, 제스처 수행 주체에 대한 판단을 통해 제스처 인식 결과를 달리함으로써 제스처 인식 알고리즘의 다양성을 확보할 수 있다.
본 발명에 의하면, 트리거링 이벤트 감지 및/또는 제스처 수행 주체 판단에 각각 적합한 인공 신경망을 이용함으로써 제스처 인식 시스템의 전체 처리 속도가 향상될 수 있다.
본 발명에 의하면, 제스처 인식 과정 중에 도출된 데이터를 이용하여 트리거링 이벤트 감지 및/또는 제스처 수행 주체 판단함으로써 새로운 알고리즘을 도입하는 것보다 처리하는 데이터량이 감소하여 상대적으로 적은 데이터를 이용하여 제스처 인식 알고리즘의 다양성을 확보할 수 있다.
본 발명의 효과가 상술한 효과들로 제한되는 것은 아니며, 언급되지 아니한 효과들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확히 이해될 수 있을 것이다.
도 1은 본 명세서의 일 실시예에 따른 제스처 인식 시스템을 도시한 도면이다.
도 2는 본 명세서의 일 실시예에 따른 컴포넌트 제어 유닛에 관한 블록도이다.
도 3은 본 명세서의 일 실시예에 따른 차량에 탑재된 제스처 인식 시스템에 관한 도면이다.
도 4는 본 명세서의 일 실시예에 따른 인공 신경망을 학습시키는 방법에 관한 도면이다.
도 5는 본 명세서의 일 실시예에 따른 인공 신경망의 구조를 도시한 도면이다.
도 6은 본 명세서의 일 실시예에 따른 연속된 이미지를 분석하기 위한 인공 신경망의 구조를 도시한 도면이다.
도 7는 본 명세서의 일 실시예에 따른 제스처 인식 방법을 도시한 순서도이다.
도 8은 본 명세서의 일 실시예에 따른 제스처와 컴포넌트 매칭을 나타내는 표에 관한 도면이다.
도 9 및 도 10은 본 명세서의 일 실시예에 따른 트리거링 이벤트를 감지하는 네트워크를 도시한 순서도이다.
도 11은 본 명세서의 일 실시예에 따른 차량 내 제스처 수행 주체를 도시한 도면이다.
도 12은 본 명세서의 일 실시예에 따른 제스처 수행 주체를 고려하여 제스처와 컴포넌트 매칭을 나타내는 표에 관한 도면이다.
도 13 내지 도 16은 본 명세서의 일 실시예에 따른 제스처 수행 주체를 인식하는 네트워크를 도시한 순서도이다.
도 17 내지 도 22은 본 명세서의 일 실시예에 따른 트리거링 이벤트 감지 및 제스처 수행 주체를 인식하는 네트워크를 도시한 순서도이다.
본 발명의 상술한 목적, 특징들 및 장점은 첨부된 도면과 관련된 다음의 상세한 설명을 통해 보다 분명해질 것이다. 다만, 본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예들을 가질 수 있는 바, 이하에서는 특정 실시예들을 도면에 예시하고 이를 상세히 설명하고자 한다.
본 명세서에 기재된 실시예는 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 본 발명의 사상을 명확히 설명하기 위한 것이므로, 본 발명이 본 명세서에 기재된 실시예에 의해 한정되는 것은 아니며, 본 발명의 범위는 본 발명의 사상을 벗어나지 아니하는 수정예 또는 변형예를 포함하는 것으로 해석되어야 한다.
본 명세서에 첨부된 도면은 본 발명을 용이하게 설명하기 위한 것으로 도면에 도시된 형상은 본 발명의 이해를 돕기 위하여 필요에 따라 과장되어 표시된 것일 수 있으므로 본 발명이 도면에 의해 한정되는 것은 아니다.
본 발명과 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.
또한, 이하의 설명에서 사용되는 구성요소에 대한 접미사 "유닛", "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다.
본 명세서의 일 양상에 따르면, 차량의 컴포넌트를 제어하기 위한 차량 탑승자의 핸드 제스처를 인식하는 방법으로서, 깊이 카메라에 의해 핸드 포스처와 핸드 무브먼트로 정의되는 상기 핸드 제스처가 수행되는 공간을 촬영한 영상을 획득하는 단계, 싱글 이미지를 입력받는 2D CNN 모델로 제공되고, 특정 핸드 포스처를 포함하는 깊이 이미지에 트리거링 이벤트의 발생과 관련된 제1 클래스 값이 라벨링된 학습용 데이터 셋으로 학습된 제1 인공 신경망을 이용하여 상기 영상에 포함된 이미지 프레임으로부터 상기 특정 핸드 포스처를 검출함으로써, 트리거링 이벤트의 발생을 모니터링하는 단계 및 상기 트리거링 이벤트가 발생하면, 제스처 인식 모드를 실행하는 단계를 포함하되, 상기 제스처 인식 모드는 연속되는 이미지들을 입력받는 3D CNN 모델의 풀링 레이어 또는 풀리 커넥티드 레이어에 RNN 모델이 연결되는 형태로 제공되고, 상기 핸드 제스처를 포함하는 연속되는 깊이 이미지들에 상기 핸드 제스처의 종류를 지시하는 클래스값이 라벨링된 학습용 데이터셋으로 학습된 제2 인공 신경망을 이용하여 상기 특정 핸드 포스처가 검출된 이미지 프레임의 후속 이미지 프레임들로부터 상기 핸드 제스처의 종류를 식별하는 단계 및 상기 핸드 제스처의 종류에 기초하여 상기 차량의 컴포넌트 중 타겟 컴포넌트가 타겟 동작을 수행하도록 제어하는 단계를 포함하는 제스처 인식 방법이 제공될 수 있다.
여기서, 상기 학습용 데이터셋은 상기 특정 핸드 포스처와 상이한 핸드 포스처를 포함하는 깊이 이미지에 상기 제1 클래스 값과 상이한 제2 클래스 값이 라벨링된 데이터셋을 포함할 수 있다.
또 여기서, 미리 설정된 시간이 경과하면 상기 제스처 인식 모드를 종료하는 단계가 더 포함될 수 있다.
또 여기서, 상기 타켓 컴포넌트의 동작이 수행되는 상기 핸드 제스처의 종류가 식별되는 경우 상기 제스처 인식 모드를 종료하는 단계가 더 포함될 수 있다.
또 여기서, 상기 RNN 모델은 LSTM 모델일 수 있다.
또 여기서, 상기 타겟 컴포넌트에서 수행되는 상기 타겟 동작은 상기 핸드 무브먼트에 대응될 수 있다.
또 여기서, 상기 제스처는 상기 타겟 컴포넌트 종류에 따라 미리 정해진 포스처 및 상기 타겟 동작의 속성에 대응하는 이동 속도를 갖는 무브먼트를 포함할 수 있다.
본 명세서의 다른 양상에 따르면, 차량의 컴포넌트를 제어하기 위한 차량 탑승자의 핸드 제스처를 인식하는 방법으로서, 깊이 카메라에 의해 핸드 포스처와 핸드 무브먼트로 정의되는 상기 핸드 제스처가 수행되는 공간을 촬영한 영상을 획득하는 단계, 연속되는 이미지들을 입력받는 3D CNN 모델의 맥스 풀링 레이어 또는 풀리 커넥티드 레이어에 RNN 모델이 연결되는 형태로 제공되고, 상기 핸드 제스처를 포함하는 연속되는 깊이 이미지들에 상기 핸드 제스처의 종류를 지시하는 클래스값이 태깅된 학습용 데이터셋으로 학습된 제1 인공 신경망을 제공하는 단계, 상기 제1 인공 신경망의 상기 3D CNN 모델이 상기 RNN 모델과 연결되는 상기 맥스 풀링 레이어 또는 상기 풀리 커넥티드 레이어를 입력 레이어로 하고, 특정 핸드 포스처를 포함하는 깊이 이미지에 트리거링 이벤트의 발생과 관련된 제1 클래스 값이 라벨링되고 상기 특정 핸드 포스처와 상이한 핸드 포스처를 포함하는 깊이 이미지에 상기 제1 클래스 값과 상이한 제2 클래스 값이 라벨링된 학습용 데이터셋으로 학습된 제2 인공 신경망을 제공하는 단계, 상기 영상이 상기 제1 인공 신경망에 입력됨에 따라 도출되는 상기 맥스 풀링 레이어 또는 상기 풀리 커넥티드 레이어의 노드값으로부터, 상기 제2 인공 신경망을 이용하여 상기 특정 핸드 포스처를 검출함으로써, 트리거링 이벤트의 발생을 모니터링하는 단계, 상기 트리거링 이벤트가 발생하면, 상기 제1 인공 신경망을 이용하여 상기 특정 핸드 포스처가 검출된 이미지 프레임의 후속 이미지 프레임들로부터 상기 핸드 제스처의 종류를 식별하는 단계 및 상기 핸드 제스처의 종류에 기초하여 상기 차량의 컴포넌트 중 타겟 컴포넌트가 타겟 동작을 수행하도록 제어하는 단계를 포함하는 제스처 인식 방법이 제공될 수 있다.
여기서, 상기 트리거링 이벤트가 발생하고 미리 설정된 시간이 경과하면 상기 핸드 제스처의 종류를 식별하는 단계를 종료할 수 있다.
또 여기서, 상기 RNN 모델은 LSTM 모델일 수 있다.
또 여기서, 상기 타겟 컴포넌트에서 수행되는 상기 타겟 동작은 상기 핸드 무브먼트에 대응될 수 있다.
또 여기서, 상기 제스처는 상기 타겟 컴포넌트 종류에 따라 미리 정해진 포스처 및 상기 타겟 동작의 속성에 대응하는 이동 속도를 갖는 무브먼트를 포함할 수 있다.
본 발명의 또 다른 양상에 따르면, 차량의 컴포넌트를 제어하기 위한 차량 탑승자의 핸드 제스처를 인식하는 방법으로서, 깊이 카메라에 의해 핸드 포스처와 핸드 무브먼트로 정의되는 상기 핸드 제스처가 수행되는 공간을 촬영한 영상을 획득하는 단계, 싱글 이미지를 입력받는 2D CNN 모델로 제공되고, 상기 차량 탑승자 중 운전자에 의해 수행된 핸드 제스처의 핸드 포스처를 포함하는 깊이 이미지에 상기 운전자를 지시하는 클래스 값이 라벨링되고 상기 차량 탑승자 중 동승자에 의해 수행된 핸드 제스처의 핸드 포스처를 포함하는 깊이 이미지에 상기 동승자를 지시하는 클래스 값이 라벨링된 학습용 데이터셋으로 학습된 제1 인공 신경망을 이용하여 상기 영상에 포함된 이미지 프레임으로부터 상기 핸드 제스처의 수행 주체를 판단하는 단계, 연속되는 이미지들을 입력받는 3D CNN 모델의 맥스 풀링 레이어 또는 풀리 커넥티드 레이어에 RNN 모델이 연결되는 형태로 제공되고, 상기 핸드 제스처를 포함하는 연속되는 깊이 이미지들에 상기 핸드 제스처의 종류를 지시하는 클래스값이 라벨링된 학습용 데이터셋으로 학습된 제2 인공 신경망을 이용하여 상기 영상의 이미지 프레임들로부터 상기 핸드 제스처의 종류를 식별하는 단계 및 상기 핸드 제스처의 수행 주체에 따라 상기 핸드 제스처의 종류에 대응하는 타겟 명령을 상기 차량의 컴포넌트 중 타겟 컴포넌트가 수행하도록 제어하는 단계를 포함하는 제스처 인식 방법이 제공될 수 있다.
여기서, 상기 타겟 컴포넌트 및 상기 타겟 동작은 매칭 테이블에 기초하여 설정되되, 상기 매칭 테이블은 상기 운전자의 제스처와 그에 대응되는 컴포넌트 및 동작을 포함하는 제1 매칭 테이블 및 상기 동승자의 제스처와 그에 대응되는 컴포넌트 및 동작을 포함하는 제2 매칭 테이블을 포함할 수 있다.
본 발명의 또 다른 양상에 따르면, 차량의 컴포넌트를 제어하기 위한 차량 탑승자의 핸드 제스처를 인식하는 방법으로서, 깊이 카메라에 의해 핸드 포스처와 핸드 무브먼트로 정의되는 상기 핸드 제스처가 수행되는 공간을 촬영한 영상을 획득하는 단계, 싱글 이미지를 입력받는 2D CNN 모델로 제공되고, 상기 차량 탑승자 중 운전자에 의해 수행된 핸드 제스처의 핸드 포스처를 포함하는 깊이 이미지에 상기 운전자를 지시하는 클래스 값이 라벨링되고 상기 차량 탑승자 중 동승자에 의해 수행된 핸드 제스처의 핸드 포스처를 포함하는 깊이 이미지에 상기 동승자를 지시하는 클래스 값이 라벨링된 학습용 데이터셋으로 학습된 제1 인공 신경망을 이용하여 상기 영상에 포함된 이미지 프레임으로부터 상기 핸드 제스처의 수행 주체를 판단하는 단계, 상기 핸드 제스처의 수행 주체가 운전자인 경우 수행되며, 연속되는 이미지들을 입력받는 3D CNN 모델의 맥스 풀링 레이어 또는 풀리 커넥티드 레이어에 RNN 모델이 연결되는 형태로 제공되고, 상기 핸드 제스처를 포함하는 연속되는 깊이 이미지들에 상기 핸드 제스처의 종류를 지시하는 클래스값이 라벨링된 학습용 데이터셋으로 학습된 제2 인공 신경망을 이용하여 상기 특정 핸드 포스처가 검출된 이미지 프레임의 후속 이미지 프레임들로부터 상기 핸드 제스처의 종류를 식별하는 단계 및 상기 핸드 제스처의 종류에 기초하여 상기 차량의 컴포넌트 중 타겟 컴포넌트가 타겟 동작을 수행하도록 제어하는 단계를 포함하는 핸드 제스처 인식 방법이 제공될 수 있다.
본 명세서는 제스처 인식 방법 및 이를 수행하는 제스처 인식 장치에 관한 것으로, 보다 상세하게는 관찰 영역을 촬영하여 획득한 이미지 또는 영상을 이용하여 관찰 영역에서 수행된 제스처를 인식하고 인식된 제스처에 대응하는 명령을 수행하는 제스처 인식 방법 및 이를 수행하는 제스처 인식 장치에 관한 것이다.
여기서, 제스처(gesture)는 일반적으로 사용자의 신체 일부분의 형태 또는 동작을 의미할 수 있다. 이 때, 이용되는 사용자의 신체 부위에 따라 제스처는 핸드 제스처(hand gesture), 풋 제스처(foot gesture) 또는 포인팅 제스처(pointing gesture) 등을 포함할 수 있다. 또한, 제스처는 사용자의 신체가 일정 시간 움직이지 않는 포스처(posture), 특정한 경로를 따라 움직이는 무브먼트(movement) 및 포스처와 무브먼트의 조합을 포함할 수 있다. 예를 들어, 핸드 제스처는 핸드 포스처 및 핸드 무브먼트를 포함할 수 있다. 제스처에 관한 보다 상세한 설명은 후술하도록 한다.
여기서, 관찰 영역(FoV: Field of View)은 제스처가 인식될 수 있는 영역으로, 센서 또는 장비 등에 의해 이미지 또는 영상 데이터가 획득되는 영역을 의미할 수 있다. 관찰 영역에 대한 구체적인 설명은 후술하도록 한다.
여기서, 제스처 인식(gesture recognition)은 사용자의 제스처에 대한 이미지 또는 영상 데이터를 분석하여 컴포넌트의 기능을 수행하는 것을 의미할 수 있다. 여기서, 컴포넌트는 그 컴포넌트가 속하는 장치, 장비 또는 건물 등에서 특정 기능을 수행할 수 있다. 예를 들어, 차량 내 컴포넌트는 차량 내 냉난방기 제어, 미디어 제어, 창문, 차문 등의 기계적 구조 제어 등을 수행할 수 있다. 또 다른 예로, 가전 제품 컴포넌트는 가전 제품의 각종 기능 제어 등을 수행할 수 있다. 한편, 제스처 인식은 사용자의 제스처를 감지하여 해당 제스처를 특정 기준에 따라 분류하여 의미를 부여하는 제스처 이미지 분석을 의미할 수도 있다.
이하에서는, 도 1을 참조하여 본 명세서의 일 실시예에 따라 제스처 인식을 수행하기 위한 제스처 인식 시스템(100)에 대하여 서술하도록 한다.
도 1은 본 명세서의 일 실시예에 따른 제스처 인식 시스템을 도시한 도면이다. 도 1을 참조하면, 제스처 감지 유닛(1200)을 통해 관찰 영역에 대한 데이터가 획득되고, 컴포넌트 제어 유닛(1400)은 관찰 영역에 대한 데이터를 분석하여 컴포넌트를 제어함으로써 제스처 인식을 수행하되, 제스처 인식 과정에서 서버(1600)가 이용될 수 있다.
제스처 감지 유닛(1200)은 관찰 영역에 대한 데이터를 획득할 수 있다. 예를 들어, 제스처 감지 유닛(1200)은 라이다(LiDAR: Light Detection And Ranging 또는 Laser Imaging, Detection And Ranging) 장치, 레이더(RaDAR: Radio Detection And Ranging) 장치, 깊이 카메라 및 RGB 카메라 중 적어도 하나를 포함할 수 있다.
여기서, 관찰 영역에 대한 데이터는 관찰 영역에 전파, 광 등을 조사하여 획득한 비행 시간(ToF: Time of Flight) 데이터, 깊이(depth) 데이터, 세기(intensity) 데이터, 2차원 또는 3차원 이미지 데이터 및 영상 데이터 중 적어도 하나를 포함할 수 있다.
관찰 영역에 대한 데이터는 일정 시간 동안 획득된 데이터의 집합을 의미할 수 있다. 예를 들어, 제스처 감지 유닛(1200)은 주기적으로 일정 시간 동안 관찰 영역에 대한 데이터를 획득하도록 설정될 수 있고, 이 때 획득되는 관찰 영역에 대한 데이터는 관찰 영역에 대응되며 연속되는 이미지 프레임들의 집합인 영상 데이터를 포함할 수 있다.
제스처 감지 유닛(1200)은 컴포넌트 제어 유닛(1400)과 유/무선으로 통신할 수 있다. 제스처 감지 유닛(1200)은 컴포넌트 제어 유닛(1400)으로 관찰 영역에 대한 데이터를 제공할 수 있다.
제스처 감지 유닛(1200)은 서버(1600)에 관찰 영역에 대한 데이터를 제공할 수 있다.
제스처 감지 유닛(1200)은 컴포넌트 제어 유닛(1400) 및 서버(1600) 중 적어도 하나와 통신하기 위해 통신 모듈을 포함할 수 있다.
컴포넌트 제어 유닛(1400)은 관찰 영역에 대한 제스처 인식을 수행할 수 있다. 구체적으로, 컴포넌트 제어 유닛(1400)은 제스처 감지 유닛(1200)으로부터 획득한 관찰 영역에 대한 데이터를 가공하여 이미지 또는 영상 데이터를 획득할 수 있다. 이 때, 컴포넌트 제어 유닛(1400)이 제스처 감지 유닛(1200)으로부터 이미지 데이터 또는 영상 데이터를 직접 획득할 수도 있다.
컴포넌트 제어 유닛(1400)은 관찰 영역에 대한 데이터를 분석하여 컴포넌트를 제어하는 명령을 생성함으로써 제스처 인식을 수행할 수 있다. 구체적으로, 컴포넌트 제어 유닛(1400)은 제스처 감지 유닛(1200)이 사용자의 제스처를 촬영한 데이터를 이용하여 이미지 또는 영상 데이터를 획득하고, 획득한 이미지 또는 영상 데이터를 분석하여 사용자의 제스처를 판별하고 판별된 제스처에 대응하여 컴포넌트를 제어할 수 있다.
컴포넌트 제어 유닛(1400)은 서버(1600)와 통신할 수 있다. 구체적으로, 컴포넌트 제어 유닛(1400)은 서버(1600)로부터 컴포넌트 제어 명령을 수신하여 컴포넌트를 제어할 수도 있다.
서버(1600)는 제스처 감지 유닛(1200) 또는 컴포넌트 제어 유닛(1400)을 대신하여 제스처 인식을 수행할 수 있다. 구체적으로, 서버(1600)는 제스처 감지 유닛(1200)으로부터 관찰 영역에 대한 데이터를 획득하여 컴포넌트 제어 명령어를 생성하고 컴포넌트 제어 유닛(1400)에 생성한 컴포넌트 제어 명령어를 제공하거나 컴포넌트 각각에 제공할 수 있다.
서버(1600)는 제스처 감지 유닛(1200) 및 컴포넌트 제어 유닛(1400)과 통신할 수 있다. 구체적으로, 서버(1600)는 제스처 감지 유닛(1200)으로부터 관찰 영역에 대한 데이터를 획득할 수 있다. 또한, 서버(1600)는 제스처 감지 유닛(1200)으로부터 획득한 관찰 영역에 대한 데이터를 분석하여 컴포넌트 제어 명령어를 생성할 수 있다.
제스처 인식 과정에서 서버(1600)가 이용됨에 따라 제스처 감지 유닛(1200) 및 컴포넌트 제어 유닛(1400)에 의한 제스처 인식 속도가 보다 향상될 수 있다.
이상에서 설명한 제스처 인식 시스템(100)은 물리적으로 단일한 장치로 제공되거나 복수의 장치로 제공될 수 있다. 예를 들어, 제스처 감지 유닛(1200)과 컴포넌트 제어 유닛(1400)은 물리적으로 통합된 단일한 제스처 인식 장치로 제공될 수 있다. 또 다른 예로, 제스처 감지 유닛(1200)과 컴포넌트 제어 유닛(1400)은 분리된 복수의 장치로 제공될 수 있다.
이 때, 관찰 영역에 대한 데이터 생성, 가공 및 처리와 관찰 영역에 대한 제스처 인식은 제스처 감지 유닛(1200), 컴포넌트 제어 유닛(1400) 및 서버(1600) 중 적어도 어느 하나에서 수행될 수 있다. 예를 들어, 제스처 감지 유닛(1200)에서 관찰 영역에 대한 데이터를 가공하여 관찰 영역에 대한 이미지 또는 영상을 컴포넌트 제어 유닛(1400)에 제공하고, 컴포넌트 제어 유닛(1400)은 획득한 이미지 또는 영상 데이터를 이용하여 관찰 영역에 대한 제스처 인식을 수행할 수 있다. 또 다른 예로, 제스처 감지 유닛(1200)은 관찰 영역에 대한 데이터를 가공 및 이용하여 제스처 인식을 수행할 수 있으며 컴포넌트 제어 유닛(1400)을 통해 컴포넌트를 제어할 수 있다. 또 다른 예로, 서버(1600)는 제스처 감지 유닛(1200)으로부터 관찰 영역에 대한 데이터를 획득하여 제스처 인식을 수행할 수 있다.
이하에서는, 도 2를 참조하여 본 명세서의 일 실시예에 따른 컴포넌트 제어 유닛(1400)에 대하여 서술한다.
도 2는 본 명세서의 일 실시예에 따른 컴포넌트 제어 유닛(1400)에 관한 블록도이다. 도 2를 참조하면, 컴포넌트 제어 유닛(1400)은 제어 모듈(1410), 컴포넌트(1420), 입력 모듈(1430), 출력 모듈(1440), 통신 모듈(1450) 및 메모리(1460)를 포함할 수 있다.
통신 모듈(1450)은 외부 기기와 통신을 수행할 수 있다. 컴포넌트 제어 유닛(1400)은 통신 모듈(1450)을 통해 제스처 감지 유닛(1200)이나 서버(1600)와 데이터 송수신을 할 수 있다. 여기서, 통신 모듈(1450)은 유/무선 방식을 포함할 수 있다.
메모리(1460)는 각종 정보를 저장할 수 있다. 메모리(1460)에는 컴포넌트 제어 유닛(1400)을 구동하기 위한 운용 프로그램이나 컴포넌트 제어 유닛(1400)의 각 구성을 동작시키기 위한 프로그램을 비롯해 컴포넌트 제어 유닛(1400)의 동작에 필요한 각종 데이터가 임시적으로 또는 반영구적으로 저장될 수 있다. 예를 들어, 메모리(1460)에는 관찰 영역에 대한 데이터를 가공 및 처리하기 위한 프로그램 및 데이터 분석을 위한 인공 신경망이 저장될 수 있다. 메모리(1460)는 컴포넌트 제어 유닛(1400)에 내장되는 형태나 탈부착 가능한 형태로 제공될 수 있다.
입력 모듈(1430)은 사용자로부터 사용자 입력을 수신할 수 있다. 사용자 입력은 키 입력, 터치 입력, 음성 입력을 비롯한 다양한 형태로 이루어 질 수 있다. 입력 모듈(1430)은 전통적인 형태의 키패드나 물리적 버튼, 키보드, 마우스는 물론, 사용자의 터치를 감지하는 터치 센서 및 그 외의 다양한 형태의 사용자 입력을 감지하거나 입력 받는 다양한 형태의 입력 수단을 모두 포함하는 포괄적인 개념이다.
출력 모듈(1440)은 각종 정보를 출력해 사용자에게 이를 제공할 수 있다. 출력 모듈(1440)은 영상을 출력하는 디스플레이, 소리를 출력하는 스피커, 진동을 발생시키는 햅틱 장치 및 그 외의 다양한 형태의 출력 수단을 모두 포함하는 포괄적인 개념이다.
제어 모듈(1410)은 컴포넌트 제어 유닛(1400)의 전반적인 동작을 제어할 수 있다. 예를 들어, 제어 모듈(1410)은 메모리(1460)로부터 데이터 가공 및 분석을 위한 프로그램을 로딩하여 제스처 감지 유닛(1200)으로부터 획득한 데이터를 가공 및 분석하고 그 결과를 출력 모듈(1440)을 통해 사용자에게 제공하거나 해당 컴포넌트(1420)의 기능을 수행하도록 제어 신호를 생성할 수 있다.
컴포넌트(1420)는 미리 설정된 기능이나 동작을 수행하는 장비, 장치, 모듈, 기기 또는 기구 등을 포함할 수 있다. 컴포넌트(1420)는 설정된 기능이나 동작에 따라 제1 내지 제n 컴포넌트를 포함할 수 있다. 컴포넌트(1420)는 제어 모듈(1410)에 의해 각각 설정된 기능이나 동작을 수행할 수 있다. 이를 위해 각각의 컴포넌트(1420)는 제어 모듈(1410)과 유/무선 통신할 수 있다. 후술하듯이 컴포넌트(1420)는 인식되는 제스처에 따라 제어될 수 있다.
한편, 컴포넌트(1420) 중 적어도 일부는 컴포넌트 제어 유닛(1400)으로부터 물리적으로 분리되어 제공될 수 있다. 예를들어, 컴포넌트(1420)는 컴포넌트 제어 유닛(1400)으로부터 분리되어 제공되되, 각각 별도의 제어 모듈을 가지고, 컴포넌트 제어 유닛(1400)으로부터 제어 신호를 획득하여 동작할 수도 있다.
또는, 컴포넌트 제어 유닛(1400)은 하나의 컴포넌트(1420)를 갖되 복수 개로 제공될 수 있다.
컴포넌트 제어 유닛(1400)은 별도의 전원부를 가지거나 유선 혹은 무선으로 외부로부터 전원을 공급받을 수 있으며 전원부를 제어하는 스위치를 별도로 가질 수 있다.
컴포넌트 제어 유닛(1400)은 제스처 인식을 수행하기 위해 빅데이터(big data), 기계 학습 모델(machine learning model), 인공 지능(artificial intelligence) 또는 인공 신경망(ANN: Artificial Neural Network) 등의 기술을 이용할 수 있다. 예를 들어, 컴포넌트 제어 유닛(1400)은 기계 학습된 프로그램을 구동하여 관찰 영역에 대한 제스처 인식을 수행할 수 있다. 컴포넌트 제어 유닛(1400)에서 제스처 인식이 수행되는 예들에 대한 보다 구체적인 설명은 후술하도록 한다.
이하에서는, 도 3을 참조하여 본 명세서의 일 실시예에 따라 제스처 인식 시스템(100)이 활용되는 방법에 대해 서술한다.
도 3은 본 명세서의 일 실시예에 따른 차량에 탑재된 제스처 인식 시스템(100)에 관한 도면이다. 도 3을 참조하면, 제스처 인식 시스템(100)은 차량 내 관찰 영역(200)에 대한 제스처 인식을 수행할 수 있다.
제스처 감지 유닛(1200)은 차량 내부에 탑재되어 관찰 영역(200)에 대한 데이터를 획득할 수 있다. 구체적으로, 제스처 감지 유닛(1200)은 차량 천장 또는 차량 내 리어 뷰 미러(rear view mirror)에 탑재되어 차량 내부를 관찰 영역(200)으로 하여 제스처 인식을 위한 데이터를 획득할 수 있다.
관찰 영역(200)은 다양한 형상으로 형성될 수 있다. 예를 들어, 관찰 영역(200)은 제스처 감지 유닛(1200)으로부터 일정 거리 이격된 가상 평면 또는 가상 곡면을 포함할 수 있다. 또 다른 예로, 관찰 영역(200)은 제스처 감지 유닛 (1200)으로부터 제1 거리 이격된 면과 제2 거리 이격된 면 사이의 가상 공간을 포함할 수 있다. 또 다른 예로, 관찰 영역(200)은 제스처 감지 유닛(1200)으로부터 미리 설정된 수평 각도와 미리 설정된 수직 각도 및 이격 거리에 의해 정의되는 임의의 면 또는 공간을 포함할 수 있다.
차량 내에서 관찰 영역(200)은 다양한 범위로 설정될 수 있다. 예를 들어, 관찰 영역(200)은 차량 내 탑승자의 제스처를 인식하기 위해 기어를 중심으로 형성되거나 차량 내 운전석과 조수석 사이 공간에 형성될 수 있다. 또 다른 예를 들어, 관찰 영역(200)은 차량 내 컴포넌트(1420)로부터 일정 거리 이내에 형성될 수도 있다. 또 다른 예를 들어, 관찰 영역(200)은 차량 내 각 좌석을 중심으로 형성되거나 차량 내부 전체에 대해 형성될 수도 있다.
이상에서는 차량 내부에서 관찰 영역(200)이 형성되는 것으로 서술하였으나, 본 발명의 사상이 이에 한정되는 것은 아니며 관찰 영역(200)은 차량 외부, 핸드폰과 같은 단말기로부터 일정 거리 이내 등 제스처가 인식될 수 있는 공간에 형성될 수 있음은 물론이다.
컴포넌트 제어 유닛(1400)은 다양한 형태로 차량 내 탑재될 수 있다. 예를 들어, 컴포넌트 제어 유닛(1400)은 대시 보드(dash board)에 내장되어 차량 내 서로 다른 위치에 배치된 각각의 컴포넌트(1420)를 유/무선 방식으로 제어할 수 있다. 또 다른 예를 들어, 차량의 각 컴포넌트(1420) 마다 컴포넌트 제어 유닛(1400)이 제공될 수 있다. 또 다른 예로, 서버(1600)에서 컴포넌트(1420)를 제어하여 컴포넌트 제어 유닛(1400)은 일부 구성이 생략된 상태로 차량 내 탑재될 수도 있다.
이하에서는, 도 4 내지 도 6을 참조하여 본 명세서의 일 실시예에 따른 제스처 인식 시스템(100)에서 이용되는 인공 신경망에 대하여 서술한다.
제스처 인식 시스템(100)에서 제스처 인식을 수행하기 위해 인공 신경망이 이용될 수 있다. 구체적으로, 컴포넌트 제어 유닛(1400)은 제스처 감지 유닛(1200)으로부터 획득한 관찰 영역(200)에서의 사용자의 제스처에 대한 데이터 및 인공 신경망을 이용하여 사용자의 제스처를 판별하고 그 결과를 기초로 컴포넌트(1420)를 제어할 수 있다.
인공 신경망의 대표적인 예로는 데이터를 입력받는 입력 레이어(input layer), 결과를 출력하는 출력 레이어(output layer) 및 입력 레이어와 출력 레이어 사이에서 데이터를 처리하는 히든 레이어(hidden layer)를 포함하는 딥 러닝(deep learning) 계열의 인공 신경망이 있다. 인공 신경망의 세부적인 예시들로는, 심층 신경망(DNN: Deep Neural Network), 합성곱 신경망(CNN: Convolution Neural Network) 및 순환 신경망(Recurrent Neural Network) 등이 있으며, 본 명세서에서 인공 신경망은 상술된 인공 신경망, 그 외의 다양한 형태의 인공 신경망 및 이들이 조합된 형태의 인공 신경망을 모두 포함하는 포괄적인 의미로 해석되어야 하며, 반드시 딥 러닝 계열이어야만 하는 것도 아니다.
도 4는 본 명세서의 일 실시예에 따른 인공 신경망을 학습시키는 방법에 관한 도면이다.
도 4를 참조하면, 인공 신경망은 라벨링 데이터를 학습 데이터로 이용하여 학습하며, 학습 과정에서 출력 데이터와 라벨링 데이터의 오차가 고려될 수 있다.
여기서, 라벨링 데이터(labeling data)는 입력 값과 출력 값을 매칭시켜 놓은 학습용 데이터셋(data set)을 의미할 수 있다. 구체적으로, 라벨링 데이터는 특정 목적을 가지고 입력 값으로부터 특정 출력 값을 도출하고자 할 때, 해당 입력 값과 희망하는 출력 값 또는 해당 입력 값과 인과 관계가 있는 출력 값을 서로 매칭시킨 데이터를 포함할 수 있다. 보다 구체적으로, 제스처 인식 시스템(100)에서 라벨링 데이터는 관찰 영역(200)에 대한 데이터와 해당 관찰 영역(200)에 포함된 제스처 의미를 임의로 판별한 결과 데이터를 서로 매칭 시킨 데이터를 포함할 수 있다. 다른 예로, 라벨링 데이터는 관찰 영역(200)에 대한 이미지 또는 영상 데이터와 해당 이미지 또는 영상 내 제스처의 종류 또는 특징 등을 임의로 판단한 결과 데이터를 서로 매칭 시킨 데이터를 포함할 수 있다.
한편, 라벨링 데이터는 제스처 인식 시스템(100)을 위해 직접 생성 또는 가공될 수도 있으나 외부의 공개된 데이터베이스로부터 획득될 수도 있다.
인공 신경망은 라벨링 데이터로부터 학습 데이터를 입력 받아 출력 데이터를 생성하고 출력 데이터와 라벨링 데이터를 비교한 오차 역전파를 이용하여 학습될 수 있다. 구체적으로, 인공 신경망은 입력 데이터로부터 출력 데이터를 생성하기 위해 복수의 계수(가중치, weight)를 갖는 적어도 하나의 히든 레이어를 포함하고, 오차 역전파를 이용하여 계수들을 변경함으로써 학습될 수 있다.
도 5는 본 명세서의 일 실시예에 따른 인공 신경망의 구조를 도시한 도면이다. 도 5를 참조하면, 도 4에서 서술한 바와 같이 학습된 인공 신경망은 입력 데이터를 입력 레이어의 입력 값으로 하여 출력 레이어를 통해 결과 값을 산출할 수 있다.
구체적으로, 본 명세서의 일 실시예에 따르면 제스처 인식 시스템(100)에서 인공 신경망은 제스처에 대한 이미지 또는 영상 값을 입력 레이어의 입력 값으로 제공 받아 출력 레이어를 통해 제스처 인식 결과를 출력 값으로 획득할 수 있다.
제스처 인식 결과는 인공 신경망의 구현 형태에 따라 다양하게 도출될 수 있다.
예를 들어, 인공 신경망이 이진 분류기(binary classification) 형태로 제스처 인식 결과를 출력하는 경우에는 출력 레이어에 하나 또는 두 개의 출력 노드가 포함될 수 있다. 이진 분류기 형태로 결과 값을 출력하는 인공 신경망은 주로 제스처의 주체가 특정 인물에 해당하는지 여부를 판단할 수 있다.
또 다른 예를 들어, 인공 신경망이 다중 분류기(multi classification) 형태로 제스처 인식 결과를 출력하는 경우에는 출력 레이어는 복수 개의 출력 노드를 포함할 수 있다. 다중 분류기 형태로 결과값을 출력하는 인공 신경망은 주로 제스처가 어떤 종류의 제스처에 해당하는지 여부를 판단할 수 있다.
한편, 다시 도 5를 참조하면, 제스처 인식 시스템(100)에서 제스처 인식을 수행하기 위해 순환 신경망이 제공될 수 있다.
순환 신경망은 적어도 하나의 히든 레이어를 포함하되, 적어도 하나의 히든 레이어는 출력 값을 다시 입력 값이 되는 구조로 구현될 수 있다. 인공 신경망에 입력되는 입력 데이터가 순차적이거나 연속성을 갖는 경우 인공 신경망은 순환 신경망으로 구현될 수 있다. 순환 신경망의 히든 레이어가 순환하는 구조로 구현됨으로써 순환 신경망은 입력 데이터의 순서를 고려하여 학습될 수 있고 연속성을 갖거나 순차적인 데이터를 분석하는 데에 정확도가 높아지는 등의 효과가 발생할 수 있다.
도 6은 본 명세서의 일 실시예에 따른 연속된 이미지를 분석하기 위한 인공 신경망의 구조를 도시한 도면이다.
도 6을 참조하면, 제스처 인식 시스템(100)에서 제스처 인식을 수행하기 위해 합성곱 신경망 및 순환 신경망이 제공될 수 있다.
합성곱 신경망은 일반적으로 합성곱 레이어(convolution layer), 풀링 레이어(pooling layer) 및 전연결 레이어(FC layer: Fully Connected layer)를 포함할 수 있다. 합성곱 신경망은 입력 데이터 내 인접 데이터 사이의 특징을 고려하여 출력 데이터를 생성하도록 학습될 수 있다. 구체적으로, 합성곱 신경망은 이미지 데이터를 입력 데이터로 하여 합성곱 레이어 및 풀링 레이어를 통해 입력 데이터로부터 특징 값들을 추출하고 전연결 레이어를 통해 특징 값들을 연결하며 소프트맥스 레이어(softmax layer)를 이용하여 결과 값을 출력할 수 있다.
제스처 인식 시스템(100)에서 제스처 인식이 수행되기 위해 합성곱 신경망과 순환 신경망이 결합되어 제공될 수 있다. 다시 도 6을 참조하면, 합성곱 신경망에서 입력 데이터로부터 추출된 특징 값들이 전연결 레이어에서 서로 연결되고 순환 신경망은 전연결 레이어로부터 입력 데이터를 받아 출력 데이터를 생성할 수 있다.
여기서, 순환 신경망은 LSTM(Long-Short-Term Memory) 블록을 포함할 수 있다. LSTM 블록은 일반적인 순환 신경망에서 기억하거나 저장하고자 하는 데이터의 범위를 제한할 수 있다.
제스처 인식 시스템(100)에 있어서 상술한 합성곱 신경망과 순환 신경망의 조합이 제공됨으로써 이미지 또는 영상 데이터로 제공되는 포스처 및 무브먼트를 포함하는 제스처가 보다 효율적이고 정확하게 인식될 수 있다.
상술한 인공 신경망의 구조 또는 인공 신경망을 포함하는 알고리즘이 제스처 인식 시스템(100)에서 활용되는 방법에 대해서는 추후에 보다 구체적으로 서술하도록 한다.
이하에서는 도 7 및 도 8을 참조하여 본 명세서의 일 실시예에 따른 제스처가 인식되는 방법에 대하여 서술한다.
제스처 인식 방법에 대해 설명하기에 앞서 제스처 인식 시스템(100)에서 인식하고자 하는 제스처의 종류에 대해 먼저 서술하도록 한다.
제스처는 사용자의 움직임이 포함되지 않은 포스처와 사용자의 움직임이 포함되는 무브먼트를 포함할 수 있다. 예를 들어, 사용자가 관찰 영역(200)에 대해 손 또는 발과 같은 신체의 일부를 위치하고 움직이지 않는 경우 제스처 인식 결과 포스처로 구분될 수 있다. 또 다른 예를 들어, 사용자가 관찰 영역(200) 내에서 손 또는 발 등의 신체의 일부를 특정 경로를 따라 움직이는 경우 제스처 인식 결과 무브먼트로 구분될 수 있다.
포스처는 제스처 인식 시스템(100)에서 제스처를 인식하기 위한 트리거링 이벤트(triggering event) 감지 또는 제스처 수행 주체 판별에 이용될 수 있다. 예를 들어, 제스처 인식 시스템(100)은 컴포넌트(1420) 제어를 위한 제스처를 인식하기에 앞서 미리 설정된 포스처를 트리거링 이벤트로 검출하고, 트리거링 이벤트가 검출되면 제스처 윈도우(gesture window)를 실행하여 제스처 감지를 시작할 수 있다. 또 다른 예를 들어, 제스처 인식 시스템(100)은 차량 내 관찰 영역(200)에서 감지된 포스처가 운전자의 포스처인지 동승자의 포스처인지 여부를 판단할 수 있다.
여기서, 제스처 윈도우는 제스처 인식 시스템(100)에서 사용자의 제스처를 인식하기 위한 구간 또는 시간을 의미할 수 있다. 예를 들어, 트리거링 이벤트가 발생한 후 미리 설정된 시간 동안 무브먼트와 같은 연속성을 갖는 제스처를 감지하고 인식하는 프로그램이 실행됨으로써 제스처 윈도우가 실행될 수 있다.
컴포넌트 제어 유닛(1400)은 제스처 윈도우를 실행함으로써 제스처 인식 모드로 진입할 수 있다. 이와 같이 컴포넌트 제어 유닛(1400)이 상시 제스처 인식 모드에 있지 않고 트리거링 이벤트가 발생한 경우에 제스처 인식 모드로 진입함으로써 컴포넌트 제어 유닛(1400)에서 불필요한 데이터 처리가 방지되고 컴포넌트 제어 유닛(1400)에서 이루어지는 제스처 인식 프로세스의 효율 및 강건성이 향상될 수 있다.
여기서, 제스처 인식 모드는 컴포넌트(1420)를 제어하기 위한 제스처를 인식하기 위해 제스처 인식 시스템(100)이 진입하는 모드를 의미할 수 있다. 이 때, 제스처 인식 시스템(100)이 제스처 인식 모드에 진입할지 여부를 판단하기 위해 트리거링 이벤트 발생 여부가 이용될 수 있다. 제스처 인식 시스템(100)은 제스처 인식 모드 진입 후 제스처 인식을 위한 프로그램을 실행할 수 있으며, 제스처 인식 모드 진입 전에는 트리거링 이벤트 감지를 위한 프로그램을 실행할 수 있다. 보다 구체적으로, 제스처 인식 시스템(100)은 제스처 인식 모드 진입 전 후 다른 프로그램 또는 다른 인공 신경망으로 구현된 프로그램을 이용할 수 있다.
제스처 윈도우는 오프닝 제스처(opening gesture) 및 클로징 제스처(closing gesture)에 의해 시작과 끝 시점이 설정될 수 있다. 예를 들어, 상술한 포스처에 의해 트리거링 이벤트가 검출된 시점에 제스처 윈도우가 실행되고 미리 설정된 클로징 제스처가 감지되면 제스처 윈도우가 중단되고 제스처 인식 모드가 종료될 수 있다. 여기서, 오프닝 제스처 및 클로징 제스처는 같은 인공 신경망 또는 다른 인공 신경망에 의해 감지될 수 있다.
또는, 제스처 윈도우는 제스처 및 미리 설정된 시간에 의해 중단 시점이 설정될 수 있다.
또는, 제스처 윈도우는 미리 설정된 제스처 인식 개수에 의해 중단 시점이 설정될 수 있다. 예를 들어, 제스처 윈도우가 실행 된 후 컴포넌트(1420)를 제어하는 제스처가 인식된 경우 제스처 윈도우가 중단될 수 있다.
또는, 제스처 윈도우가 실행된 상태에서 미리 설정된 시간 동안 제스처 인식 시스템(100)에 의해 어떠한 제스처도 인식되지 않는 경우 제스처 윈도우는 중단되고 제스처 인식 모드가 종료될 수 있다.
무브먼트는 제스처 인식 시스템(100)에서 컴포넌트(1420)를 제어하는 데에 이용될 수 있다. 구체적으로, 상술한 포스처에 의해 트리거링 이벤트가 검출되어 제스처 윈도우가 실행되고, 컴포넌트 제어 유닛(1400)은 제스처 윈도우가 실행되는 동안 사용자에 의해 수행된 무브먼트를 인식하여 해당 무브먼트에 대응되는 컴포넌트(1420)의 기능을 수행하거나 동작시킬 수 있다.
한편, 본 발명에서 상술한 바와 같이 포스처와 무브먼트가 트리거링 이벤트 검출이나 제스처 수행 주체 판단, 컴포넌트(1420)에 이용되는 것으로 한정되는 것은 아니다. 예를 들어, 무브먼트가 제스처 윈도우를 실행하는 트리거링 이벤트 발생 여부를 판단하는 데에 이용될 수 있으며 포스처 역시 컴포넌트(1420)를 제어 하기 위해 인식되는 제스처로 이용될 수 있음은 물론이다. 다시 말해, 트리거링 이벤트 검출, 제스처 수행 주체 판단 및 타겟 컴포넌트 설정 또는 타겟 동작 설정이나 수행과 같은 컴포넌트(1420) 제어 등에 포스처, 무브먼트 또는 이들의 조합이 이용될 수도 있다.
도 7은 본 명세서의 일 실시예에 따른 제스처 인식 방법을 도시한 순서도이다.
도 8은 본 명세서의 일 실시예에 따른 제스처와 컴포넌트(1420) 매칭을 나타내는 표에 관한 도면이다.
도 7을 참조하면, 제스처 인식 방법은 관찰 영역(200)에 대한 이미지를 획득하는 단계(S1100), 트리거링 이벤트 검출 단계(S1200), 제스처 윈도우 실행 단계(S1300), 제스처 인식 수행 단계(S1500), 타겟 컴포넌트 및 타겟 동작 결정 단계(S1500) 및 타겟 동작 수행 단계(S1600)를 포함할 수 있다.
이하에서는 상술한 각 단계들에 대해서 보다 구체적으로 설명한다.
제스처 감지 유닛(1200)은 관찰 영역(200)에 대한 이미지를 획득할 수 있다(S1100). 여기서, 이미지는 관찰 영역(200)내 평면 좌표에 대응되는 픽셀 값들의 집합인 2D 이미지 및 관찰 영역(200)내 공간 좌표에 대응되는 픽셀 값들의 집합인 3D 이미지를 포함할 수 있다. 예를 들어, 제스처 감지 유닛(1200)은 일정한 주기로 관찰 영역(200)을 촬영하여 2D 이미지 데이터를 획득하여 컴포넌트 제어 유닛(1400)에 제공할 수 있다. 또 다른 예로, 제스처 감지 유닛(1200)은 관찰 영역(200)에 대해 조사한 광을 수신하여 관찰 영역(200)을 구성하는 포인트들 각각에 대한 획득한 비행 시간(ToF: Time of Flight) 데이터를 컴포넌트 제어 유닛(1400)에 제공하고, 컴포넌트 제어 유닛(1400)은 획득한 비행 시간 데이터를 기초로 포인트 클라우드(point cloud) 또는 깊이 이미지(depth map)를 획득할 수 있다.
컴포넌트 제어 유닛(1400)은 획득한 이미지를 기초로 트리거링 이벤트가 발생하였는 여부를 판단할 수 있다(S1200). 구체적으로, 컴포넌트 제어 유닛(1400)은 획득한 이미지를 인공 신경망의 입력 데이터로 하여 이미지에 포함된 제스처를 형상이나 의미를 분석하고, 그 결과에 기초하여 트리거링 이벤트가 발생하였는지 여부를 판단할 수 있다.
컴포넌트 제어 유닛(1400)은 트리거링 이벤트가 발생하면 제스처 윈도우를 실행할 수 있다(S1300). 다만, 컴포넌트 제어 유닛(1400)은 제스처를 포함하는 트리거링 이벤트 외에 물리적 버튼 입력 또는 음성 입력 등의 다른 수단을 이용하여 제스처 윈도우를 실행할 수도 있다.
한편, 제스처 인식 시스템(100)에서 주기적으로 관찰 영역(200)에 대한 데이터를 획득하여 제스처 인식을 수행하는 경우, 트리거링 이벤트 검출 단계(S1200) 및 제스처 윈도우 실행 단계(S1300)는 생략될 수 있다.
제스처 감지 유닛(1200) 및 컴포넌트 제어 유닛(1400)은 제스처 윈도우 실행 중에 제스처 인식을 수행할 수 있다(S1500). 구체적으로, 제스처 윈도우가 실행되면 제스처 감지 유닛(1200)은 주기적으로 관찰 영역(200)에 대한 데이터를 획득하여 컴포넌트 제어 유닛(1400)에 제공하고, 컴포넌트 제어 유닛(1400)은 획득한 데이터를 기초로 관찰 영역(200)에서 수행되는 제스처의 형상이나 종류를 판단할 수 있다.
컴포넌트 제어 유닛(1400)은 제스처 인식 결과에 기초하여 타겟 컴포넌트 및 타겟 동작을 결정할 수 있다(S1500).
제스처의 종류 또는 유형에 따라 타겟 컴포넌트 및 타겟 동작이 설정될 수 있다. 이를 위해, 제스처 종류, 타겟 컴포넌트 및 타겟 동작을 포함하는 매칭 테이블이 제공될 수 있다. 예를 들어, 도 8을 참조하면, 검지를 펴고 좌에서 우로 이동하거나 위 아래로 왕복 운동하는 제스처의 경우 '핸드폰'이 타겟 컴포넌트가 되고 '착신 또는 무시'가 타겟 동작으로 결정될 수 있다. 또 다른 예로, 검지를 펴고 정지한 제스처의 경우 '미디어 플레이어'가 타겟 컴포넌트가 되고 '재생 또는 일시 정지'가 타겟 동작으로 설정될 수 있다. 또 다른 예로, 검지를 펴고 시계 방향 또는 반시계 방향으로 원을 그리는 제스처의 경우 '미디어 플레이어'가 타겟 컴포넌트가 되고 '음량 조절'이 타겟 동작으로 설정될 수 있다.
본 발명에서 제스처와 컴포넌트(1420) 매칭이 도 8에 도시된 매칭 테이블에 한정되는 것은 아니며, 매칭 테이블은 제스처의 수행 주체에 따라 복수의 매칭 테이블이 제공될 수 있으며, 사용자가 임의로 제스처와 컴포넌트(1420)를 매칭시키는 등의 프로그램 설계도 가능함은 물론이다.
여기서, 제스처의 종류 또는 유형은 제스처가 포함하는 무브먼트의 경로, 방향, 속도와 같은 무브먼트의 특성에 기초하여 식별될 수 있으며, 무브먼트의 특성에 따라 타겟 컴포넌트 및 타겟 동작의 속성이 설정될 수도 있다. 예를 들어, 다시 도 8을 참조하면, 검지를 펴고 시계 방향 또는 반시계 방향으로 원을 그리는 무브먼트를 포함하는 제스처에 의해 '미디어 플레이어'가 타겟 컴포넌트로 설정되고, '음량 조절'이 타겟 동작으로 설정되는 경우, 무브먼트의 속도가 증가하면 미디어 플레이어의 음량이 커지는 속도가 증가하고 무브먼트의 방향에 따라 미디어 플레이어의 음량이 감소하거나 증가할 수 있다.
한편, 컴포넌트 제어 유닛(1400)은 제스처 인식 외에 물리적 버튼이나 음성 인식 등을 통해 타겟 컴포넌트를 설정할 수 있고, 제스처 인식을 통해 타겟 동작을 수행할 수도 있다.
컴포넌트 제어 유닛(1400)은 인식된 제스처에 매칭된 타겟 동작에 기초하여 타겟 컴포넌트를 동작시킬 수 있다(S1600).
이하에서는 도 9 및 도 10을 참조하여 본 명세서의 일 실시예에 따른 트리거링 이벤트 감지 방법에 대해서 서술한다.
도 9 및 도 10은 본 명세서의 일 실시예에 따른 트리거링 이벤트를 감지하는 네트워크를 도시한 순서도이다.
트리거링 이벤트 감지는 제스처 인식 시스템(100)에서 제스처 인식을 위해 이용되는 인공 신경망의 적어도 일부에서 수행될 수 있다. 도 9를 참조하면, 제스처 인식 시스템(100)에서 이용되는 제스처 인식 네트워크는 3차원 합성곱 신경망(3D CNN), 전연결 레이어, 순환 신경망을 포함하며 트리거링 이벤트 감지를 위해 2차원 합성곱 신경망(2D CNN)이 더 포함될 수 있다. 이하에서는 설명의 편의를 위해 제스처 인식 시스템(100)에서 깊이 이미지를 이용하고, 제스처 인식 네트워크가 상술한 구성으로 구현되는 것으로 서술하지만 본 발명의 사상이 이에 한정되는 것은 아니며 깊이 이미지가 아닌 관찰 영역(200)에 대한 데이터가 이용될 수 있고, 제스처 인식 네트워크는 상술한 구성 외에 다른 종류의 인공 신경망으로 구성되거나 그 구성 순서가 변경될 수 있음을 미리 밝혀둔다.
또한, 이하에서 서술하는 깊이 이미지는 경우에 따라 관찰 영역(200)에 대한 단일(single) 이미지이거나 관찰 영역(200)에 대한 연속된 이미지들의 집합을 의미할 수 있다. 예를 들어, 깊이 이미지가 2차원 합성곱 신경망 또는 심층 신경망에 입력되는 경우 단일 이미지로 인식될 수 있으며 깊이 이미지가 3차원 합성곱 신경망에 입력되는 경우 깊이 이미지는 특정 시간 동안 연속되는 이미지들의 집합을 의미할 수 있다.
다시 도 9를 참조하면, 제스처 인식 네트워크는 사용자 제스처에 대한 깊이 이미지를 획득하여 3차원 합성곱 신경망을 이용하여 깊이 이미지의 특징 값을 추출하고, 전연결 레이어를 이용하여 연결한 깊이 이미지의 특징 값들을 순환 신경망에 입력 데이터로 입력하여 제스처 종류를 판단하는 출력 데이터를 획득하고, 판단된 제스처 종류에 기초하여 컴포넌트(1420)를 제어하는 명령어를 생성할 수 있다.
여기서, 다시 도 9를 참조하면 제스처 인식 시스템(100)은 깊이 이미지를 분석하기 위해 3차원 합성곱 신경망에 입력하기에 앞서 깊이 이미지를 2차원 합성곱 신경망에 입력하여 트리거링 이벤트를 감지하고, 트리거링 이벤트가 감지된 경우 3차원 합성곱 신경망을 이용하여 제스처 인식을 수행할 수 있다.
여기서, 2차원 합성곱 신경망은 특정 포스처를 포함하는 깊이 이미지에 트리거링 이벤트의 발생과 관련된 제1 클래스 값이 라벨링된 라벨링 데이터를 이용하여 학습된 인공 신경망을 포함할 수 있다. 여기서, 2차원 합성곱 신경망을 학습시키기 위한 라벨링 데이터는 제1 클래스 값이 라벨링된 포스처와는 다른 특정 포스처를 포함하는 깊이 이미지에 제2 클래스 값이 라벨링된 라벨링 데이터를 더 포함할 수 있다.
한편, 2차원 합성곱 신경망을 대신하여 이미지 분석 프로그램이 이용될 수도 있다. 예를 들어, 제스처 인식 시스템(100)은 이미지와 레퍼런스(reference) 데이터를 비교하여 이미지가 포함하는 제스처가 트리거링을 위한 특정 포스처인지 여부를 판단할 수도 있다.
여기서, 3차원 합성곱 인공 신경망 또는 순환 신경망은 제스처를 포함하는 연속되는 깊이 이미지들에 제스처의 종류를 지시하는 클래스 값이 라벨링된 라벨링 데이터를 이용하여 학습된 인공 신경망을 포함할 수 있다.
제스처 인식 시스템(100)은 도 9에 도시된 제스처 인식 네트워크를 이용하여 관찰 영역(200)에 대한 연속적인 깊이 이미지를 획득하고 트리거링 이벤트를 감지한 시점 이후에 제스처 인식 모드로 진입하여 트리거링 이벤트가 감지된 깊이 이미지 이후에 입력되는 깊이 이미지들에 대해 제스처 인식을 수행할 수 있다.
이와 같이 제스처 인식 시스템(100)은 사용자의 제스처를 인식하는 데에 있어서 트리거링 이벤트를 검출한 경우에만 제스처 인식을 수행하여 처리해야하는 데이터를 선택함으로써 제스처 인식 프로세스의 강건성 및 효율을 향상시킬 수 있고, 깊이 이미지로부터 트리거링 이벤트를 감지하는 데에 3차원 합성곱 신경망보다 상대적으로 연산량이 적은 2차원 합성곱 신경망을 이용함으로써 데이터 처리 속도를 향상시킬 수 있다.
한편, 도 10을 참조하면 제스처 인식 네트워크는 3차원 합성곱 신경망, 전연결 레이어 및 순환 신경망을 포함하되, 전연결 레이어를 입력 데이터로 하여 트리거링 이벤트를 감지하는 심층 신경망을 포함할 수 있다.
심층 신경망은 3차원 합성곱 신경망에 의해 깊이 이미지로부터 추출된 특징 값들에 기초하여 깊이 이미지가 특정 포스처 또는 무브먼트를 포함하는지 여부를 판단함으로써 트리거링 이벤트를 감지할 수 있다.
여기서, 심층 신경망은 특정 포스처를 포함하는 깊이 이미지에 트리거링 이벤트의 발생과 관련된 제1 클래스 값이 라벨링되고 다른 특정 포스처를 포함하는 깊이 이미지에 제2 클래스 값이 라벨링된 라벨링 데이터를 이용하여 학습된 인공 신경망을 포함할 수 있다.
여기서, 3차원 합성곱 신경망 또는 순환 신경망은 제스처를 포함하는 연속되는 깊이 이미지들에 제스처의 종류를 지시하는 클래스 값이 라벨링된 라벨링 데이터를 이용하여 학습된 인공 신경망을 포함할 수 있다.
제스처 인식 시스템(100)은 도 10에 도시된 제스처 인식 네트워크를 이용하여 순환 신경망에서 연속된 깊이 이미지를 분석하기 앞서 트리거링 이벤트를 감지하여 순환 신경망의 동작 여부를 결정할 수 있다.
이와 같이 제스처 인식 시스템(100)은 순환 신경망을 이용하여 연속적인 깊이 이미지들을 분석하기에 앞서 트리거링 이벤트를 감지하여 불필요한 데이터 처리 과정을 생략할 수 있고 3차원 합성곱 신경망에 의해 깊이 이미지로부터 추출된 특징 값들을 이용하여 트리거링 이벤트를 감지하므로 부가적인 데이터 가공을 생략할 수 있으며, 순환 신경망 보다 상대적으로 연산 속도가 빠른 심층 신경망을 이용함으로써 결과적으로 보다 신속하게 제스처 인식을 수행할 수 있다.
이하에서는 도 11 및 도 12를 참조하여 본 명세서의 일 실시예에 따른 제스처 수행 주체를 판단하는 방법에 대해 서술한다.
도 11은 본 명세서의 일 실시예에 따른 차량 내 제스처 수행 주체를 도시한 도면이다.
도 12는 본 명세서의 일 실시예에 따른 제스처 수행 주체를 고려하여 제스처와 컴포넌트(1420) 매칭을 나타내는 표에 관한 도면이다.
제스처의 수행 주체는 복수일 수 있다. 예를 들어, 도 11을 참조하면 차량 내 제스처는 운전석에 탑승한 운전자와 보조석에 탑승한 동승자에 의해 수행될 수 있다. 또 다른 예로, 차량 내 제스처는 앞좌석인 운전석 및 보조석뿐만 아니라 뒷좌석에 탑승한 동승자에 의해 수행될 수도 있다.
제스처 인식 시스템(100)은 제스처의 수행 주체에 따라 제스처 인식을 수행하거나 수행하지 않을 수 있다. 또는, 제스처 인식 시스템(100)은 제스처의 수행 주체에 따라 다른 컴포넌트(1420)를 제어하거나 같은 컴포넌트(1420)의 다른 기능을 수행하거나 동작 시킬 수 있다.
제스처 인식 시스템(100)은 제스처 수행 주체에 따른 제스처 인식을 위해 제스처 수행 주체를 고려하여 제스처와 타겟 컴포넌트 및 타겟 동작을 매칭 시킨 매칭 테이블이 이용될 수 있다. 예를 들어, 도 12를 참조하면 검지를 편 손을 일정 각도 구부린 상태에서 좌측 또는 우측으로 움직이는 핸드 제스처는 제스처의 주체와 상관 없이 '라디오'가 타겟 컴포넌트로 설정되고 '채널 조절'이 타겟 동작으로 설정될 수 있다. 또 다른 예로, 엄지를 위로 편 핸드 제스처는 '오픈'이 타겟 동작으로 설정되되, 제스처 수행 주체가 운전자인 경우 '운전석 창문'이 타겟 컴포넌트로 설정되고 제스처 수행 주체가 동승자인 경우 '보조석 창문'이 타겟 컴포넌트로 설정될 수 있다.
이와 같은 매칭 테이블은 운전자의 제스처, 그와 매칭되는 타겟 컴포넌트 및 타겟 동작으로 구성된 적어도 하나의 매칭 데이터를 포함하는 제1 매칭 테이블 및 동승자의 제스처, 그와 매칭되는 타겟 컴포넌트 및 타겟 동작으로 구성된 적어도 하나의 매칭 데이터를 포함하는 제2 매칭 테이블을 포함할 수 있다.
본 발명에서 제스처 수행 주체를 고려한 제스처와 컴포넌트(1420) 매칭이 도 12에 도시된 표에 한정되는 것은 아니며, 사용자가 임의로 제스처와 컴포넌트(1420)를 매칭시키는 등의 프로그램 설계도 가능함은 물론이다.
한편, 컴포넌트 제어 유닛(1400)은 제스처 인식 외에 물리적 버튼이나 음성 인식 등을 통해 타겟 컴포넌트를 설정할 수 있고, 제스처 인식을 통해 타겟 동작을 수행할 수도 있다.
이하에서는 도 13 내지 도 16을 참조하여 본 명세서의 일 실시예에 따른 제스처 수행 주체 감지 방법에 대해서 서술한다.
도 13 내지 도 16은 본 명세서의 일 실시예에 따른 제스처 수행 주체를 인식하는 네트워크를 도시한 순서도이다.
도 13 내지 도 16에 도시된 제스처 수행 주체를 인식하는 네트워크의 구성은 별도의 언급이 없는 경우 앞서 도 9에서 서술한 내용이 동일하게 적용될 수 있다.
제스처 수행 주체 감지는 제스처 인식 시스템(100)에서 제스처 인식을 위해 이용되는 인공 신경망의 적어도 일부에서 수행될 수 있다. 도 13을 참조하면, 제스처 인식 시스템(100)에서 이용되는 제스처 인식 네트워크는 3차원 합성곱 신경망, 전연결 레이어, 순환 신경망을 포함하며 제스처 수행 주체 감지를 위해 2차원 합성곱 신경망이 더 포함될 수 있다.
다시 도 13을 참조하면, 제스처 인식 시스템(100)은 깊이 이미지를 입력 데이터로 하는 2차원 합성곱 신경망을 이용하여 깊이 이미지에 포함된 제스처의 수행 주체를 판단하고, 그 결과에 기초하여 컴포넌트(1420)를 제어하는 명령어를 생성하지 않을 수 있다.
한편, 제스처 인식 시스템(100)은 깊이 이미지를 이용하여 제스처의 수행 주체를 판단하고 제스처 수행 주체가 컴포넌트(1420) 제어 자격이 없는 경우 제스처 인식 모드로 진입하지 않을 수도 있다.
여기서, 2차원 합성곱 신경망은 제1 주체에 의해 수행된 제스처의 포스처를 포함하는 깊이 이미지에 제1 주체를 지시하는 클래스 값이 라벨링된 라벨링 데이터를 이용하여 학습된 인공 신경망을 포함할 수 있다. 예를 들어, 2차원 합성곱 신경망은 차량 탑승자 중 운전자에 의해 수행된 제스처의 포스처를 포함하는 깊이 이미지에 운전자를 지시하는 클래스 값이 라벨링된 라벨링 데이터를 이용하여 학습된 인공 신경망을 포함할 수 있다.
또는, 2차원 합성곱 신경망은 제1 주체에 의해 수행된 제스처의 포스처를 포함하는 깊이 이미지에 제1 주체를 지시하는 클래스 값이 라벨링되고, 제2 주체에 의해 수행된 제스처의 포스처를 포함하는 깊이 이미지에 제2 주체를 지시하는 클래스 값이 라벨링된 라벨링 데이터를 이용하여 학습된 인공 신경망을 포함할 수 있다. 예를 들어, 2차원 합성곱 신경망은 차량 탑승자 중 운전자에 의해 수행된 제스처의 포스처를 포함하는 깊이 이미지에 운전자를 지시하는 클래스 값이 라벨링되고 차량 탑승자 중 동승자에 의해 수행된 제스처의 포스처를 포함하는 깊이 이미지에 동승자를 지시하는 클래스 값이 라벨링된 라벨링 데이터를 이용하여 학습된 인공 신경망을 포함할 수 있다.
한편, 2차원 합성곱 신경망을 대신하여 이미지 분석 알고리즘이 이용될 수도 있다. 예를 들어, 제스처 인식 시스템(100)은 이미지와 레퍼런스(reference) 데이터를 비교하여 이미지가 포함하는 제스처가 운전자의 제스처인지 여부를 판단할 수도 있다.
도 14를 참조하면 제스처 인식 시스템(100)은 제스처 수행 주체에 따라 다른 명령어를 생성할 수 있다. 예를 들어, 제스처 인식 시스템(100)은 깊이 이미지를 획득하고 2차원 합성곱 신경망을 이용하여 깊이 이미지에 포함된 제스처의 수행 주체를 판단하고 판단된 제스처 수행 주체 및 제스처 수행 주체가 고려된 제스처 및 컴포넌트(1420) 매칭 테이블 및 깊이 이미지들을 분석한 제스처 인식 결과에 기초하여 컴포넌트(1420)를 제어하는 명령어를 생성할 수 있다.
여기서, 제스처 인식 네트워크에서 수행되는 제스처 인식 및 제스처 수행 주체 판단은 동시에 또는 순차적으로 수행될 수 있다.
한편, 도 15 및 도 16을 참조하면 제스처 인식 네트워크는 전연결 레이어를 입력 데이터로 하여 제스처 수행 주체를 감지하는 심층 신경망을 포함할 수 있다.
여기서, 심층 신경망은 3차원 합성곱 신경망에 의해 깊이 이미지로부터 추출된 특징 값들로부터 깊이 이미지가 특정 포스처 또는 무브먼트를 포함하는지 여부에 기초하여 제스처 수행 주체를 감지할 수 있다.
여기서, 심층 신경망은 제1 주체에 의해 수행된 제스처의 포스처를 포함하는 깊이 이미지에 제1 주체를 지시하는 클래스 값이 라벨링된 라벨링 데이터를 이용하여 학습된 인공 신경망을 포함할 수 있다. 예를 들어, 심층 신경망은 운전자에 의해 수행된 제스처의 포스처를 포함하는 깊이 이미지에 운전자를 지시하는 클래스 값이 라벨링된 라벨링 데이터를 이용하여 학습된 인공 신경망을 포함할 수 있다.
한편, 다시 도 16을 참조하면 심층 신경망은 제1 주체에 의해 수행된 제스처의 포스처를 포함하는 깊이 이미지에 제1 주체를 지시하는 클래스 값이 라벨링되고 제2 주체에 의해 수행된 제스처의 포스처를 포함하는 깊이 이미지에 제2 주체를 지시하는 클래스 값이 라벨링된 라벨링 데이터를 이용하여 학습된 인공 신경망을 포함할 수 있다. 예를 들어, 심층 신경망은 차량 탑승자 중 운전자에 의해 수행된 제스처의 포스처를 포함하는 깊이 이미지에 운전자를 지시하는 클래스 값이 라벨링되고 차량 탑승자 중 동승자에 의해 수행된 제스처의 포스처를 포함하는 깊이 이미지에 동승자를 지시하는 클래스 값이 라벨링된 라벨링 데이터를 이용하여 학습된 인공 신경망을 포함할 수 있다.
제스처 인식 시스템(100)은 도 13 내지 도 16에 도시된 제스처 인식 네트워크를 이용하여 컴포넌트(1420) 제어를 위한 명령어를 생성함에 있어 제스처 수행 주체를 고려할 수 있다.
나아가 제스처 수행 주체가 고려된 컴포넌트(1420) 제어는 제스처 인식 시스템(100)에서 복수의 제스처 수행 주체를 감지하는 경우에도 각 제스처에 대응되는 타겟 컴포넌트가 설정되고 타겟 동작이 수행될 수 있어 복수의 사용자가 차량을 이용하며 동시에 제스처를 수행하는 경우에도 제스처 인식 기능을 제공할 수 있다.
이와 같이 본 발명에서 제스처 인식 시스템(100)은 제스처 수행 주체를 고려하여 제스처 인식을 수행하고, 보다 복잡하고 다양한 제스처 인식 시스템(100)의 구현이 가능해져 제스처 인식 기술 분야에서 다양하게 활용될 수 있다.
이하에서는 도 17 내지 도 22를 참조하여 상술한 트리거링 이벤트를 감지하는 네트워크 및 제스처 수행 주체를 감지하는 네트워크를 혼합한 하이브리드 네트워크에 대하여 서술한다.
도 17 내지 도 22은 본 명세서의 일 실시예에 따른 트리거링 이벤트 감지 및 제스처 수행 주체를 인식하는 네트워크를 도시한 순서도이다.
도 17 내지 도 22에 도시된 하이브리드 네트워크의 구성은 별도의 언급이 없는 경우 앞서 도 9에서 서술한 내용이 동일하게 적용될 수 있다.
도 17을 참조하면, 제스처 인식 시스템(100)에서 이용되는 하이브리드 네트워크는 깊이 이미지 분석을 위한 3차원 합성곱 신경망 및 순환 신경망, 트리거링 이벤트 감지를 위한 2차원 합성곱 신경망 및 제스처 수행 주체 감지를 위한 심층 신경망을 포함할 수 있다.
보다 구체적으로, 제스처 인식 시스템(100)은 2차원 합성곱 신경망을 이용하여 사용자의 제스처가 포함된 연속된 깊이 이미지 중 적어도 일부에 대해 트리거링 이벤트를 감지하고, 트리거링 이벤트가 감지되는 경우 연속된 깊이 이미지에 대해 3차원 합성곱 신경망 및 순환 신경망을 이용하여 제스처 종류를 구분하되, 전연결 레이어에서 추출된 특징 값들을 입력으로 하는 심층 신경망을 이용하여 제스처의 수행 주체를 판단하고, 제스처의 수행 주체가 운전자인 경우에만 컴포넌트(1420) 제어를 위한 명령어를 생성할 수 있다.
이 때, 2차원 합성곱 신경망은 도 9에서 서술한 바와 같이 특정 포스처에 대한 라벨링 데이터를 이용하여 학습된 인공 신경망을 포함하고, 3차원 합성곱 신경망 또는 순환 신경망은 제스처 종류와 관련된 라벨링 데이터를 이용하여 학습된 인공 신경망을 포함하며, 심층 신경망은 도 15에서 서술한 바와 같이 제스처 수행 주체에 관련된 라벨링 데이터를 이용하여 학습된 인공 신경망을 포함할 수 있다.
한편, 도 18을 참조하면 전연결 레이어에서 추출된 특징 값들을 입력으로 하는 심층 신경망은 도 16에서 서술한 바와 같이 제스처 수행 주체를 구분하도록 학습된 인공 신경망을 포함하고, 이로써 제스처 인식 시스템(100)은 제스처 수행 주체를 고려하여 제스처와 타겟 컴포넌트 및 타겟 동작을 매칭시켜 놓은 매칭 테이블 및 인공 신경망에 의해 판단된 제스처 종류를 이용하여 명령어를 생성할 수 있다.
이와 같이 제스처 인식을 수행함에 있어서 트리거링 이벤트를 감지하고 제스처 수행 주체를 판단하거나 구분함으로써 제스처 인식 시스템(100)이 다양하게 구현되어 활용도가 높아지고 제스처 인식 알고리즘 또는 프로세스의 강건성 및 정확도가 향상되며, 별도의 데이터 처리 방법을 이용하는 것보다 제스처 인식 속도도 향상될 수 있다.
도 19를 참조하면, 제스처 인식 시스템(100)에서 이용되는 하이브리드 네트워크는 깊이 이미지 분석을 위한 2차원 합성곱 신경망, 트리거링 이벤트 감지를 위한 제1 심층 신경망, 제스처 수행 주체 감지를 위한 제2 심층 신경망을 포함할 수 있다.
보다 구체적으로, 제스처 인식 시스템(100)은 2차원 합성곱 신경망과 제1 심층 신경망을 이용하여 깊이 이미지로부터 트리거링 이벤트 발생 여부를 판단할 수 있고 트리거링 이벤트가 감지된 경우 3차원 합성곱 신경망 및 순환 신경망을 이용하여 깊이 이미지에 대한 제스처 인식을 수행할 수 있고, 2차원 합성곱 신경망과 제2 심층 신경망을 이용하여 제스처 수행 주체를 판단하여 제스처 수행 주체가 특정 주체, 예를 들어 운전자인 경우 컴포넌트(1420)를 제어하는 명령어를 생성할 수 있다.
이 때, 제1 심층 신경망은 특정 포스처를 포함하는 깊이 이미지에 트리거링 이벤트의 발생과 관련된 클래스 값이 라벨링된 라벨링 데이터를 이용하여 학습된 인공 신경망을 포함할 수 있고, 제2 심층 신경망은 제1 주체에 의해 수행된 제스처의 포스처를 포함하는 깊이 이미지에 제1 주체를 지시하는 클래스 값이 라벨링된 라벨링 데이터를 이용하여 학습된 인공 신경망을 포함할 수 있다.
한편, 도 20을 참조하면 제2 심층 신경망은 도 16에서 서술한 바와 같이 제스처 수행 주체를 구분하도록 학습된 인공 신경망을 포함하고, 이로써 제스처 인식 시스템(100)은 제스처 수행 주체를 고려하여 제스처와 타겟 컴포넌트 및 타겟 동작을 매칭시켜 놓은 매칭 테이블 및 인공 신경망에 의해 판단된 제스처 종류를 이용하여 명령어를 생성할 수 있다.
도 21을 참조하면, 제스처 인식 시스템(100)에서 이용되는 하이브리드 네트워크는 깊이 이미지로부터 트리거링 이벤트를 감지하고 제스처 수행 주체를 감지하는 2차원 합성곱 신경망 및 소프트맥스 레이어를 포함할 수 있다.
여기서, 소프트맥스 레이어는 깊이 이미지에 포함된 제스처가 트리거링 이벤트에 해당하는지 여부 및 깊이 이미지에 포함된 제스처의 수행 주체를 판단할 수 있다. 소프트맥스 레이어는 2차원 합성곱 신경망에 포함될 수 있다.
보다 구체적으로, 2차원 합성곱 신경망은 특정 포스처 및 제1 주체에 의해 수행된 제스처의 포스처를 포함하는 깊이 이미지에 트리거링 이벤트의 발생 및 제1 주체를 지시하는 제1 클래스 값이 라벨링 되고, 특정 포스처를 포함하지 않고 제1 주체에 의해 수행된 제스처의 포스처를 포함하는 깊이 이미지에 트리거링 이벤트가 발생되지 않음 및 제1 주체를 지시하는 제2 클래스 값이 라벨링 되고, 특정 포스처를 포함하되 제1 주체에 의해 수행된 제스처의 포스처를 포함하지 않는 깊이 이미지에 트리거링 이벤트의 발생 및 제1 주체가 아님을 지시하는 제3 클래스 값이 라벨링 되고, 특정 포스처 및 제1 주체에 의해 수행된 제스처의 포스처를 모두 포함하지 않는 깊이 이미지에 트리거링 이벤트의 미발생 및 제1 주체가 아님을 지시하는 제4 클래스 값이 라벨링된 라벨링 데이터를 이용하여 학습된 인공 신경망을 포함할 수 있다.
제스처 인식 시스템(100)은 2차원 합성곱 신경망에 의해 도출된 제스처 인식 결과에 기초하여 트리거링 이벤트가 발생하고 제스처 수행 주체가 특정 주체인 경우 컴포넌트(1420)를 제어하는 명령어를 생성할 수 있다.
또는, 제스처 인식 시스템(100)은 2차원 합성곱 신경망에 의해 도출된 제스처 인식 결과에 기초하여 트리거링 이벤트가 감지되면 3차원 합성곱 신경망 및 순환 신경망을 이용하여 제스처 인식을 수행하고, 제스처 수행 주체가 특정 주체인 경우 컴포넌트(1420)를 제어하는 명령어를 생성할 수 있다.
한편, 2차원 합성곱 신경망은 트리거링 이벤트 및 특정 주체 구분과 관련된 라벨링 데이터를 이용하여 학습된 인공 신경망을 포함할 수도 있다. 이 때, 제스처 인식 시스템(100)은 제스처 수행 주체와 타겟 컴포넌트 및 타겟 동작을 매칭시킨 제스처 매칭 테이블을 고려하여 컴포넌트(1420) 제어를 위한 명령어를 생성할 수 있다.
도 22를 참조하면 제스처 인식 시스템(100)에서 이용되는 하이브리드 네트워크는 깊이 전연결 레이어로부터 입력 데이터를 받아 깊이 이미지로부터 트리거링 이벤트를 감지하고 제스처 수행 주체를 감지하는 심층 신경망 및 소프트맥스 레이어를 포함할 수 있다. 여기서, 소프스맥스 레이어는 심층 신경망에 포함될 수 있다.
보다 구체적으로, 심층 신경망은 특정 포스처 및 제1 주체에 의해 수행된 제스처의 포스처를 포함하는 깊이 이미지에 트리거링 이벤트의 발생 및 제1 주체를 지시하는 제1 클래스 값이 라벨링 되고, 특정 포스처를 포함하지 않고 제1 주체에 의해 수행된 제스처의 포스처를 포함하는 깊이 이미지에 트리거링 이벤트가 발생되지 않음 및 제1 주체를 지시하는 제2 클래스 값이 라벨링 되고, 특정 포스처를 포함하되 제1 주체에 의해 수행된 제스처의 포스처를 포함하지 않는 깊이 이미지에 트리거링 이벤트의 발생 및 제1 주체가 아님을 지시하는 제3 클래스 값이 라벨링 되고, 특정 포스처 및 제1 주체에 의해 수행된 제스처의 포스처를 모두 포함하지 않는 깊이 이미지에 트리거링 이벤트의 미발생 및 제1 주체가 아님을 지시하는 제4 클래스 값이 라벨링된 라벨링 데이터를 이용하여 학습된 인공 신경망을 포함할 수 있다.
제스처 인식 시스템(100)은 심층 신경망에 의해 도출된 제스처 인식 결과에 기초하여 트리거링 이벤트가 발생하고 제스처 수행 주체가 특정 주체인 경우 컴포넌트(1420)를 제어하는 명령어를 생성할 수 있다.
한편, 심층 신경망은 트리거링 이벤트 및 특정 주체 구분과 관련된 라벨링 데이터를 이용하여 학습된 인공 신경망을 포함할 수도 있다. 이 때, 제스처 인식 시스템(100)은 제스처 수행 주체와 타겟 컴포넌트 및 타겟 동작을 매칭시킨 제스처 매칭 테이블을 고려하여 컴포넌트(1420) 제어를 위한 명령어를 생성할 수 있다.
도 19 내지 도 22에서 서술한 바와 같이 제스처 인식을 수행함에 있어서 공통의 인공 신경망을 이용하거나 다중 분류기 형태의 인공 신경망을 이용하여 트리거링 이벤트를 감지하고 제스처 수행 주체를 판단하거나 구분하는 경우 하이브리드 네트워크의 구조가 단순해짐으로써 제스처 인식 시스템(10)에서 수행되는 일련의 제스처 인식 프로세스 또는 알고리즘의 정확도 및 강건성이 향상되고 나아가 제스처 인식 속도가 향상될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
100: 제스처 인식 시스템 200: 관찰 영역
1200: 제스처 감지 유닛 1400: 컴포넌트 제어 유닛
1600: 서버

Claims (15)

  1. 차량의 컴포넌트를 제어하기 위한 차량 탑승자의 핸드 제스처를 인식하는 방법으로서,
    깊이 카메라에 의해 핸드 포스처와 핸드 무브먼트로 정의되는 상기 핸드 제스처가 수행되는 공간을 촬영한 영상을 획득하는 단계;
    싱글 이미지를 입력받는 2D CNN 모델로 제공되고, 상기 차량 탑승자 중 운전자에 의해 수행된 핸드 제스처의 핸드 포스처를 포함하는 깊이 이미지에 상기 운전자를 지시하는 클래스 값이 라벨링되고 상기 차량 탑승자 중 동승자에 의해 수행된 핸드 제스처의 핸드 포스처를 포함하는 깊이 이미지에 상기 동승자를 지시하는 클래스 값이 라벨링된 학습용 데이터셋으로 학습된 제1 인공 신경망을 이용하여 상기 영상에 포함된 이미지 프레임으로부터 상기 핸드 제스처의 수행 주체를 판단하는 단계;
    연속되는 이미지들을 입력받는 3D CNN 모델의 맥스 풀링 레이어 또는 풀리 커넥티드 레이어에 RNN 모델이 연결되는 형태로 제공되고, 상기 핸드 제스처를 포함하는 연속되는 깊이 이미지들에 상기 핸드 제스처의 종류를 지시하는 클래스값이 라벨링된 학습용 데이터셋으로 학습된 제2 인공 신경망을 이용하여 상기 영상의 이미지 프레임들로부터 상기 핸드 제스처의 종류를 식별하는 단계; 및
    상기 핸드 제스처의 수행 주체에 따라 상기 핸드 제스처의 종류에 대응하는 타겟 동작을 상기 차량의 컴포넌트 중 타겟 컴포넌트가 수행하도록 제어하는 단계; 를 포함하는
    제스처 인식 방법.
  2. 제1 항에 있어서,
    특정 핸드 포스처를 포함하는 깊이 이미지에 트리거링 이벤트의 발생과 관련된 클래스 값이 라벨링된 학습용 데이터 셋으로 학습된 제3 인공 신경망을 이용하여 상기 영상에 포함된 이미지 프레임으로부터 트리거링 이벤트의 발생을 모니터링하는 단계;를 더 포함하고,
    상기 핸드 제스처의 종류를 식별하는 단계는 상기 트리거링 이벤트가 발생하면 수행되는,
    제스처 인식 방법.
  3. 제1 항에 있어서,
    상기 타겟 컴포넌트 및 상기 타겟 동작은 매칭 테이블에 기초하여 설정되되,
    상기 매칭 테이블은 상기 운전자의 제스처와 그에 대응되는 컴포넌트 및 동작을 포함하는 제1 매칭 테이블 및 상기 동승자의 제스처와 그에 대응되는 컴포넌트 및 동작을 포함하는 제2 매칭 테이블을 포함하는,
    제스처 인식 방법.
  4. 제3 항에 있어서,
    상기 제1 매칭 테이블은 제1 제스처에 제1 타겟 컴포넌트 및 제1 타겟 동작이 대응됨을 지시하고,
    상기 제2 매칭 테이블은 상기 제1 제스처에 상기 제1 타겟 컴포넌트와 다른 제2 타겟 컴포넌트 및 상기 제1 타겟 동작이 대응됨을 지시하는,
    제스처 인식 방법.
  5. 제1 항에 있어서,
    상기 RNN 모델은 LSTM 모델인 것을 특징으로 하는,
    제스처 인식 방법.
  6. 제1 항에 있어서,
    상기 타겟 컴포넌트에서 수행되는 상기 타겟 동작은 상기 핸드 무브먼트에 대응되는,
    제스처 인식 방법.
  7. 제1 항에 있어서,
    상기 핸드 제스처는 상기 타겟 컴포넌트 종류에 따라 미리 정해진 포스처 및 상기 타겟 동작의 속성에 대응하는 이동 속도를 갖는 무브먼트를 포함하는,
    제스처 인식 방법.
  8. 삭제
  9. 제2 항에 있어서,
    상기 트리거링 이벤트가 발생하고 미리 설정된 시간이 경과하면 상기 핸드 제스처의 종류를 식별하는 단계를 종료하는,
    제스처 인식 방법.
  10. 삭제
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 차량의 컴포넌트를 제어하기 위한 차량 탑승자의 핸드 제스처를 인식하는 방법으로서,
    깊이 카메라에 의해 핸드 포스처와 핸드 무브먼트로 정의되는 상기 핸드 제스처가 수행되는 공간을 촬영한 영상을 획득하는 단계;
    싱글 이미지를 입력받는 2D CNN 모델로 제공되고, 상기 차량 탑승자 중 운전자에 의해 수행된 핸드 제스처의 제1 핸드 포스처를 포함하는 깊이 이미지에 상기 운전자를 지시하는 클래스 값이 라벨링되고 상기 차량 탑승자 중 동승자에 의해 수행된 핸드 제스처의 제2 핸드 포스처를 포함하는 깊이 이미지에 상기 동승자를 지시하는 클래스 값이 라벨링된 학습용 데이터셋으로 학습된 제1 인공 신경망을 이용하여 상기 영상에 포함된 이미지 프레임으로부터 상기 핸드 제스처의 수행 주체를 판단하는 단계;
    상기 핸드 제스처의 수행 주체가 운전자인 경우 수행되며, 연속되는 이미지들을 입력받는 3D CNN 모델의 맥스 풀링 레이어 또는 풀리 커넥티드 레이어에 RNN 모델이 연결되는 형태로 제공되고, 상기 핸드 제스처를 포함하는 연속되는 깊이 이미지들에 상기 핸드 제스처의 종류를 지시하는 클래스값이 라벨링된 학습용 데이터셋으로 학습된 제2 인공 신경망을 이용하여 상기 제1 핸드 포스처가 검출된 이미지 프레임의 후속 이미지 프레임들로부터 상기 핸드 제스처의 종류를 식별하는 단계; 및
    상기 핸드 제스처의 종류에 기초하여 상기 차량의 컴포넌트 중 타겟 컴포넌트가 타겟 동작을 수행하도록 제어하는 단계; 를 포함하는
    제스처 인식 방법.
KR1020190144026A 2019-11-12 2019-11-12 제스처 인식 방법 및 이를 수행하는 제스처 인식 장치 KR102359136B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190144026A KR102359136B1 (ko) 2019-11-12 2019-11-12 제스처 인식 방법 및 이를 수행하는 제스처 인식 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190144026A KR102359136B1 (ko) 2019-11-12 2019-11-12 제스처 인식 방법 및 이를 수행하는 제스처 인식 장치

Publications (2)

Publication Number Publication Date
KR20210057358A KR20210057358A (ko) 2021-05-21
KR102359136B1 true KR102359136B1 (ko) 2022-02-09

Family

ID=76157530

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190144026A KR102359136B1 (ko) 2019-11-12 2019-11-12 제스처 인식 방법 및 이를 수행하는 제스처 인식 장치

Country Status (1)

Country Link
KR (1) KR102359136B1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102651012B1 (ko) * 2021-11-24 2024-03-25 (주)스마트레이더시스템 4차원 레이더 신호처리 장치
CN117992128A (zh) * 2022-11-03 2024-05-07 华为技术有限公司 一种唤醒方法及装置
KR102559138B1 (ko) 2022-12-28 2023-07-25 에이아이다이콤 (주) 차량용 비 접촉식 제어 시스템
CN116449947B (zh) * 2023-03-22 2024-02-02 江苏北斗星通汽车电子有限公司 一种基于tof相机的汽车座舱域手势识别系统及方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101558031B1 (ko) * 2012-10-30 2015-10-06 삼성에스디에스 주식회사 깊이 정보 기반의 포스처와 제스처 인식 장치 및 방법
KR101976498B1 (ko) * 2013-12-10 2019-05-10 현대자동차 주식회사 차량용 제스처 인식 시스템 및 그 방법
KR101542986B1 (ko) * 2013-12-19 2015-08-07 현대자동차 주식회사 홀로그램을 이용한 제스처 인식 시스템 및 그 제어 방법
KR102459487B1 (ko) * 2017-11-03 2022-10-26 주식회사 케이티 컨볼루션 신경망에 기반한 제스처 분류장치 및 방법
US11628851B2 (en) * 2019-07-11 2023-04-18 Lg Electronics Inc. Method and apparatus for controlling a vehicle in autonomous driving system

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ADITYA TEWARI 외 3인. A Probabilistic Combination of CNN and RNN Estimates for Hand Gesture Based Interaction in Car. IEEE International Symposium on Mixed and Augmented Reality Workshops. 2017년10월. 1부.*
김지섭 외 5인. Deep Convolutional Neural Network을 이용한 2D 영상에서의 사람 자세, 행동 및 위치 통합 인식 시스템. 한국정보과학회 학술발표논문집, 2015년06월, 846-848 pages.1부.*

Also Published As

Publication number Publication date
KR20210057358A (ko) 2021-05-21

Similar Documents

Publication Publication Date Title
KR102359136B1 (ko) 제스처 인식 방법 및 이를 수행하는 제스처 인식 장치
US11625508B2 (en) Artificial intelligence device for guiding furniture placement and method of operating the same
JP7110359B2 (ja) ビデオチューブを使用した行動認識方法
KR102298541B1 (ko) 이미지 데이터에서 사용자를 인식하는 인공 지능 장치 및 그 방법
US7308112B2 (en) Sign based human-machine interaction
US9977954B2 (en) Robot cleaner and method for controlling a robot cleaner
US7340077B2 (en) Gesture recognition system using depth perceptive sensors
US9959463B2 (en) Gesture recognition system using depth perceptive sensors
US9868449B1 (en) Recognizing in-air gestures of a control object to control a vehicular control system
US9501693B2 (en) Real-time multiclass driver action recognition using random forests
US9235269B2 (en) System and method for manipulating user interface in vehicle using finger valleys
US10242255B2 (en) Gesture recognition system using depth perceptive sensors
US9619035B2 (en) Gesture detection and recognition
US11501794B1 (en) Multimodal sentiment detection
US11330951B2 (en) Robot cleaner and method of operating the same
KR102286137B1 (ko) 공기 청정기의 배치 위치를 가이드하는 인공 지능 장치 및 그의 동작 방법
JP2023517383A (ja) マルチユーザ環境でハンドジェスチャを用いて装置を制御する方法及びシステム
KR20100086262A (ko) 로봇 및 그 제어방법
WO2022226736A1 (zh) 一种多屏交互的方法、装置、终端设备和车辆
US20190354178A1 (en) Artificial intelligence device capable of being controlled according to user action and method of operating the same
KR102280803B1 (ko) 로봇 및 그의 구동 방법
WO2022116656A1 (en) Methods and devices for hand-on-wheel gesture interaction for controls
CN103793056A (zh) 基于距离向量的空中手势漫游控制方法
JP2018206073A (ja) 遠隔操作システム
KR101652705B1 (ko) 멀티 모달 정보를 이용하는 사용자 의도 추론 장치 및 방법

Legal Events

Date Code Title Description
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right