KR102622981B1 - 딥러닝 기술을 이용한 모션 추적 시스템 - Google Patents

딥러닝 기술을 이용한 모션 추적 시스템 Download PDF

Info

Publication number
KR102622981B1
KR102622981B1 KR1020220076436A KR20220076436A KR102622981B1 KR 102622981 B1 KR102622981 B1 KR 102622981B1 KR 1020220076436 A KR1020220076436 A KR 1020220076436A KR 20220076436 A KR20220076436 A KR 20220076436A KR 102622981 B1 KR102622981 B1 KR 102622981B1
Authority
KR
South Korea
Prior art keywords
motion
data
error
motion data
deep learning
Prior art date
Application number
KR1020220076436A
Other languages
English (en)
Other versions
KR20230004280A (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 PCT/KR2022/009349 priority Critical patent/WO2023277586A1/ko
Publication of KR20230004280A publication Critical patent/KR20230004280A/ko
Application granted granted Critical
Publication of KR102622981B1 publication Critical patent/KR102622981B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/292Multi-camera tracking
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • 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
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B21/00Alarms responsive to a single specified undesired or abnormal condition and not otherwise provided for
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/03Recognition of patterns in medical or anatomical images
    • G06V2201/033Recognition of patterns in medical or anatomical images of skeletal patterns

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Psychiatry (AREA)
  • Social Psychology (AREA)
  • Human Computer Interaction (AREA)
  • Business, Economics & Management (AREA)
  • Emergency Management (AREA)
  • Processing Or Creating Images (AREA)

Abstract

본 발명은 딥러닝 기술을 이용한 모션 추적 시스템에 관한 것으로, 해결하고자 하는 과제는 딥러닝 기반의 포즈 추정 기술과 착용형 모션 센서를 결합하여 객체 관절의 위치, 자세 및 모션 등에 대한 디테일한 실시간 추적과 추정이 가능하며, 손실된 좌표계를 알고리즘을 통해 보간하는 과정을 반복 학습시키면서 사각지대 발생시 자연스러운 동작을 추정 및 유추하여 제공하는데 있다.
일례로, 다수의 카메라를 통해 촬영되는 영상 데이터를 입력 받고, 입력된 영상 데이터에서 키 포인트를 추출하고, 딥러닝 알고리즘을 기반으로 해당 키 포인트의 위치 정보를 파악하고, 위치가 파악된 키 포인트 간의 연결을 통해 하나의 객체로 그룹핑하여 객체의 자세를 추정하고, 자세가 추정된 객체의 모션을 실시간 추적하여 제1 모션 데이터를 생성하는 영상 모션 데이터 생성부; 사용자의 신체 부위에 착용되는 착용형 모션 센서를 이용해 해당 신체 부위의 모션을 실시간 추적하여 제2 모션 데이터를 생성하는 착용형 모션 데이터 생성부; 및 상기 제1 모션 데이터의 각 영상 프레임에서 미리 설정된 제1 기준 피크치 이상의 흔들림 값을 갖는 오류 영상 프레임을 검출하고, 딥러닝 알고리즘을 기반으로 상기 오류 영상 프레임에 대한 흔들림 오류를 보정하고, 보정된 제1 모션 데이터에 상기 제2 모션 데이터를 매핑하여 3차원 영상 데이터를 생성하는 3차원 영상 데이터 생성부를 포함하는 딥러닝 기술을 이용한 모션 추적 시스템을 개시한다.

Description

딥러닝 기술을 이용한 모션 추적 시스템{SYSTEM FOR TRACKING MOTION USING DEEP LEARNING TECHNIC}
본 발명의 실시예는 딥러닝 기술을 이용한 모션 추적 시스템에 관한 것이다.
현대의 컴퓨팅 및 디스플레이 기술들은, 소위 가상 현실(Virtual Reality, VR) 경험을 위한 시스템들의 개발을 가능하게 하며, 디지털적으로 재생된 이들의 이미지들 또는 부분들은 이들이 실제인 것 같은 또는 실제인 것으로 인식될 수 있는 방식으로 사용자에게 제공되고 있다.
가상 현실의 시나리오는, 다른 실제 세계 시각의 입력에 투명하지 않은 디지털 또는 가상 이미지 정보의 표현을 통상적으로 포함한다.
가상 현실을 구현하기 위해서는 조작 도구와 작업 대상에 가상객체를 표현하기 위하여 조작 도구와 작업 대상의 자세나 모션을 추정하는 기술이 필요하다. 이와 관련하여 종래 기술은, 카메라를 원점으로 하여 조작 도구와 작업 대상에 대한 자세나 모션을 추정한다.
그러나, 종래의 자세 또는 모션 추적 시스템을 구현하기 위한 기술 중 하나로 포즈 추정(Pose Estimation) 기술이 있으며, 이러한 포즈 추정 기술은 사람의 자세나 모션을 감지하기 위해 특수한 센서가 없이 순수하게 영상과 이미지 데이터만으로 사람의 자세나 모션을 인식하는 딥러닝 기술이다.
이러한 딥러닝 기반의 포즈 추정 기술은 다수의 2D 카메라를 다양한 각도에서 사용자의 전신을 추정 대상으로 촬영하여, 추정 대상의 골반, 무릎 등 큰 관절의 움직임을 인식하거나, 팔 전체의 동작을 인식할 수 있으나, 카메라로 통해 촬영되지 않은 사각지대가 발생될 수 있다. 이러한 경우, 관절의 좌표계를 추출할 수 없기 때문에, 그로 인한 데이터 손실 시 가상 아바타는 전혀 다른 관절의 좌표 데이터를 반영할 수 있는데 이러한 경우 가상 아바타의 동작에 문제가 발생될 수 있다. 다만, 촬영 사각지대에 대한 신체 일부에 대한 자세나 모션을 딥러닝 기술로 보완할 수 있으나, 실시간으로 사각지대에 대한 자세 또는 모션 추적이 어렵다.
또한, 딥러닝 기반의 포즈 추정 기술은 사용자의 손에 포함된 각각의 손가락들의 움직임을 감지하거나, 손가락들이 굽혀 져서 사라지거나, 두 손가락이 겹쳐졌다가 떨어지는 등, 손에 의해 표현되는 정밀한 움직임들은 감지할 수 없는 한계가 있다.
공개특허공보 제10-2021-0085549호(공개일자: 2021년07월08일)
본 발명의 실시예는, 딥러닝 기반의 포즈 추정 기술과 착용형 모션 센서를 결합하여 객체 관절의 위치, 자세 및 모션 등에 대한 디테일한 실시간 추적과 추정이 가능하며, 손실된 좌표계를 알고리즘을 통해 보간하는 과정을 반복 학습시키면서 사각지대 발생시 자연스러운 동작을 추정 및 유추하여 제공할 수 있는 딥러닝 기술을 이용한 모션 추적 시스템을 제공한다.
본 발명의 실시예에 따른 딥러닝 기술을 이용한 모션 추적 시스템은, 다수의 카메라를 통해 촬영되는 영상 데이터를 입력 받고, 입력된 영상 데이터에서 키 포인트를 추출하고, 딥러닝 알고리즘을 기반으로 해당 키 포인트의 위치 정보를 파악하고, 위치가 파악된 키 포인트 간의 연결을 통해 하나의 객체로 그룹핑하여 객체의 자세를 추정하고, 자세가 추정된 객체의 모션을 실시간 추적하여 제1 모션 데이터를 생성하는 영상 모션 데이터 생성부; 사용자의 신체 부위에 착용되는 착용형 모션 센서를 이용해 해당 신체 부위의 모션을 실시간 추적하여 제2 모션 데이터를 생성하는 착용형 모션 데이터 생성부; 및 상기 제1 모션 데이터의 각 영상 프레임에서 미리 설정된 제1 기준 피크치 이상의 흔들림 값을 갖는 오류 영상 프레임을 검출하고, 딥러닝 알고리즘을 기반으로 상기 오류 영상 프레임에 대한 흔들림 오류를 보정하고, 보정된 제1 모션 데이터에 상기 제2 모션 데이터를 매핑하여 3차원 영상 데이터를 생성하는 3차원 영상 데이터 생성부를 포함한다.
또한, 상기 영상 모션 데이터 생성부는, 상기 제1 모션 데이터를 생성하기 이전에, 미리 정의된 기본 설정 위치에서 있는 사용자를 카메라를 통해 촬영하여 생성된 기본 설정 영상 데이터를 입력 받고, 입력된 기본 설정 영상 데이터에서 사용자에 대한 기본 설정 키 포인트를 각각 추출하고, 해당 기본 설정 키 포인트 간의 길이를 각각 측정하여 사용자의 기본 위치에 대한 키 포인트 길이 데이터를 생성하고, 상기 키 포인트 길이 데이터에 포함된 기본 설정 키 포인트 간 길이인 제1 길이와, 상기 제1 모션 데이터에 포함된 키 포인트 간 길이인 제2 길이를 비교하고, 미리 정의된 포인트 길이 변화에 따른 이동 값 정보에 기초하여 상기 제2 길이가 상기 제1 길이보다 길어지는 경우 길어진 길이에 따른 전방 이동 값을 산출하고, 상기 제2 길이가 상기 제1 길이보다 짧아지는 경우 짧아진 길이에 따른 후방 이동 값을 산출하고, 상기 전방 이동 값과 상기 후방 이동 값 각각에 따른 사용자의 전후방 포지션 변화 데이터를 생성하고 상기 제1 모션 데이터에 적용하여 사용자의 전후방 이동에 따른 위치 값을 보정할 수 있다.
또한, 상기 착용형 모션 데이터 생성부는, 리니어 인코더(linear encoder) 센서뿐만 아니라, FBG(Fiber Bragg Grating) 센서 및 IMU(Inertia Measurement Unit) 센서 중 적어도 하나를 포함할 수 있다.
또한, 상기 3차원 영상 데이터 생성부는, 상기 제1 모션 데이터를 구성하는 각 영상 프레임 내 객체 흔들림 속도를 검출하고, 상기 객체 흔들림 속도와 상기 제1 기준 피크치 간을 비교하여 상기 제1 기준 피크치 이상의 객체 흔들림 속도를 갖는 오류 영상 프레임을 검출하는 오류 영상 프레임 검출부; 상기 오류 영상 프레임의 이전 및 이후 영상 프레임을 추출하고, 딥러닝 알고리즘 기반으로 상기 이전 및 이후 영상 프레임 사이에 위치할 보정 영상 프레임을 추정하는 보정 영상 프레임 추정부; 상기 오류 영상 프레임을 제거하고, 제거된 상기 오류 영상 프레임의 위치에 상기 보정 영상 프레임을 삽입하여 상기 제1 모션 데이터에 대한 흔들림 오류를 보정하는 제1 모션 데이터 오류 보정부; 및 상기 제1 모션 데이터 또는 상기 제1 모션 데이터 오류 보정부에 의해 보정된 제1 모션 데이터에 상기 제2 모션 데이터를 결합하여 상기 3차원 영상 데이터를 생성하는 모션 데이터 결합부를 포함할 수 있다.
또한, 상기 3차원 영상 데이터를 기반으로 가상 체험형 영상을 제공하되, 상기 제1 모션 데이터 내 객체에 대하여 미리 설정된 이동 모션을 검출할 경우, 상기 가상 체험형 영상에 이동 효과를 제공하기 위해 미리 준비된 애니메이션 영상을 상기 제1 모션 데이터와 상기 제2 모션 데이터를 대체하여 적용하여 제공하는 이동 모션 애니메이션 영상 제공부를 더 포함할 수 있다.
또한, 사용자의 활동이 가능한 물리적 공간 내 설치되어 해당 물리적 공간의 크기를 측정하고, 측정된 물리적 공간의 크기를 기반으로 사용자 이동 반경 영역을 설정하는 거리 센서부를 더 포함할 수 있다.
또한, 상기 이동 모션 애니메이션 영상 제공부는, 상기 제1 모션 데이터 내 객체에 대하여 제자리걸음 및 위치 이동하는 이동 모션을 각각 검출하되, 위치 이동하는 이동 모션의 경우 상기 거리 센서부에 의해 설정된 사용자 이동 반경 영역의 경계선에 미리 설정된 경고 거리까지 근접하면 사용자 이동을 제한하는 경고 신호를 출력할 수 있다.
또한, 사용자의 활동이 가능한 물리적 공간 내 설치되고, 해당 물리적 공간 내에서 객체의 위치를 추적하여 위치 데이터를 생성하는 위치 센서부를 더 포함할 수 있다.
또한, 상기 위치 데이터의 객체 위치값에 대하여 미리 설정된 제2 기준 피크치 이상의 흔들림 값을 갖는 오류 위치값을 검출하고, 딥러닝 알고리즘을 기반으로 상기 오류 위치값에 대한 흔들림 오류를 보정하고, 보정된 위치 데이터를 상기 제1 모션 데이터에 적용하는 위치 데이터 보정부를 더 포함할 수 있다.
또한, 상기 위치 데이터 보정부는, 상기 위치 데이터를 구성하는 각 객체 좌표값에 대한 흔들림 속도를 검출하고, 검출된 객체 좌표값에 대한 흔들림 속도와 상기 제2 기준 피크치 간을 비교하여 상기 제2 기준 피크치 이상의 흔들림 속도를 갖는 오류 객체 좌표값을 검출하는 오류 객체 좌표 검출부; 상기 오류 객체 좌표값의 이전 및 이후 객체 좌표값을 추출하고, 딥러닝 알고리즘 기반으로 상기 이전 및 이후 객체 좌표값 사이에 위치할 보정 객체 좌표값을 추정하는 보정 객체 좌표 추정부; 상기 오류 객체 좌표값을 제거하고, 제거된 상기 오류 객체 좌표값을 상기 보정 객체 좌표값을 삽입하여 상기 위치 데이터에 대한 흔들림 오류를 보정하는 객체 좌표 오류 보정부; 및 상기 위치 데이터 또는 상기 보정 객체 좌표값이 적용된 위치 데이터를 상기 제1 모션 데이터를 적용하는 위치 데이터 적용부를 포함할 수 있다.
본 발명에 따르면, 딥러닝 기반의 포즈 추정 기술과 착용형 모션 센서를 결합하여 객체 관절의 위치, 자세 및 모션 등에 대한 디테일한 실시간 추적과 추정이 가능하며, 손실된 좌표계를 알고리즘을 통해 보간하는 과정을 반복 학습시키면서 사각지대 발생시 자연스러운 동작을 추정 및 유추하여 제공할 수 있는 딥러닝 기술을 이용한 모션 추적 시스템을 제공할 수 있다.
도 1은 본 발명의 실시예에 따른 딥러닝 기술을 이용한 모션 추적 시스템의 전체 구성을 나타낸 개요도이다.
도 2는 본 발명의 실시예에 따른 딥러닝 기술을 이용한 모션 추적 시스템의 전체 구성을 나타낸 블록도이다.
도 3은 본 발명의 실시예에 따른 3차원 영상 데이터 생성부의 구성을 나타낸 블록도이다.
도 4 및 도 5는 본 발명의 실시예에 따른 영상 모션 데이터 생성부를 통한 오류 영상 프레임 검출 방법과 프레임 보간 방법을 설명하기 위해 나타낸 도면이다.
도 6은 본 발명의 실시예에 따른 이동 모션 애니메이션 영상 제공부를 통한 이동 모션 입력과 그에 따른 애니메이션 영상 제공 방법을 설명하기 위해 나타낸 도면이다.
도 7은 본 발명의 실시예에 따른 위치 데이터 보정부의 구성을 나타낸 블록도이다.
도 8은 본 발명의 실시예에 따른 위치 데이터 보정부를 통한 오류 객체 좌표 검출 및 보정 방법을 설명하기 위해 나타낸 도면이다.
도 9는 본 발명의 실시예에 따른 영상 모션 데이터 생성부를 통한 사용자의 전후방 이동 값을 보정하는 방법을 설명하기 위해 나타낸 도면이다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 발명에 대해 구체적으로 설명하기로 한다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나 이상의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
아래에서는 첨부한 도면을 참고하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
도 1은 본 발명의 실시예에 따른 딥러닝 기술을 이용한 모션 추적 시스템의 전체 구성을 나타낸 개요도이고, 도 2는 본 발명의 실시예에 따른 딥러닝 기술을 이용한 모션 추적 시스템의 전체 구성을 나타낸 블록도이고, 도 3은 본 발명의 실시예에 따른 3차원 영상 데이터 생성부의 구성을 나타낸 블록도이고, 도 4 및 도 5는 본 발명의 실시예에 따른 영상 모션 데이터 생성부를 통한 오류 영상 프레임 검출 방법과 프레임 보간 방법을 설명하기 위해 나타낸 도면이고, 도 6은 본 발명의 실시예에 따른 이동 모션 애니메이션 영상 제공부를 통한 이동 모션 입력과 그에 따른 애니메이션 영상 제공 방법을 설명하기 위해 나타낸 도면이고, 도 7은 본 발명의 실시예에 따른 위치 데이터 보정부의 구성을 나타낸 블록도이며, 도 8은 본 발명의 실시예에 따른 위치 데이터 보정부를 통한 오류 객체 좌표 검출 및 보정 방법을 설명하기 위해 나타낸 도면이다.
도 1 및 도 2를 참조하면, 본 발명의 실시예에 따른 딥러닝 기술을 이용한 모션 추적 시스템(1000)은 영상 모션 데이터 생성부(100), 착용형 모션 데이터 생성부(200), 3차원 영상 데이터 생성부(300), 이동 모션 애니메이션 영상 제공부(400), 거리 센서부(500), 위치 센서부(600) 및 위치 데이터 보정부(700) 중 적어도 하나를 포함할 수 있다.
상기 영상 모션 데이터 생성부(100)는, 다수의 2D 카메라를 통해 촬영되는 영상 데이터를 입력 받고, 입력된 영상 데이터에서 키 포인트를 추출하고, 딥러닝 알고리즘을 기반으로 해당 키 포인트의 위치 정보를 파악하고, 위치가 파악된 키 포인트 간의 연결을 통해 하나의 객체로 그룹핑하여 객체의 자세를 추정하고, 자세가 추정된 객체의 모션을 실시간 추적하여 제1 모션 데이터를 생성할 수 있다. 이때, 제1 모션 데이터를 생성하기 위한 영상 데이터는 적어도 2대 이상의 2D 카메라로부터 수신됨에 따라 시간적으로 서로 동기화되지 않는 경우가 있으므로, 각 영상 데이터 생성 시 메타데이터에 포함된 절대시간정보를 기준으로 동기화 프로세스를 선 처리한 후 제1 모션 데이터를 생성하기 위한 프로세스를 진행하는 것이 바람직하다.
이러한 영상 모션 데이터 생성부(100)는 인간의 몸짓을 감지하기 위한 특수한 센서가 없이 순수하게 영상, 이미지 데이터만으로 인간의 자세를 인식하는 딥러닝 기반의 포즈 추정(Pose Estimation) 기술로 상향식 기법(Bottom-up) 기반의 포즈 추정(Pose Estimation) 모델을 이용할 수 있다. 여기서 상향식 기법은 입력 이미지에서 주요 키 포인트에 대한 위치를 검출하고, 검출된 키 포인트에 대해 서로 연결정보를 찾아 하나의 객체로 연결시키는 그룹핑 기술이 적용된다.
좀 더 구체적으로, 이미지와 비디오 데이터를 입력한 후(1단계), 입력 데이터에서 딥러닝 합성곱신경망(CNN)을 통해 이미지의 특징(F)을 추출하고(2단계), 추출된 특징(F)을 각 단계를 거치며 키 포인트를 추출한 후, 추출된 키 포인트 사이를 연결(단계를 반복할수록 성능이 높아짐)하는 과정을 수행할 수 있다(3단계). 여기서, 각각의 단계는 브랜치 1과 브랜치 2로 구성되는데, 브랜치 1은 이미지에서 키 포인트의 위치를 파악할 수 있도록 학습하는 파트이며, 브랜치 2는 추출된 키 포인트를 연결하여 관계 정보를 생성하는 파트이다. 이후 동일한 사람의 키 포인트 간을 연결할 수 있다(4단계). 이때, 인접할 수 있는 키 포인트 정보는 사전에 프로그래밍될 수 있는데, 일례로, 오른쪽 어깨와 연결 가능한 목, 오른쪽 팔꿈치 등의 키 포인트 간의 연결 정보가 사전에 프로그래밍될 수 있다. 그리고, 해당 키 포인트와 연결될 가능성이 가장 높은 키 포인트 간을 연결할 수 있으며, 일례로 오른쪽 어깨와 연결 가능성이 가장 높은 오른쪽 팔꿈치를 연결할 수 있다. 어깨와 팔꿈치는 서로 연결 가능한 조합이므로, 연결 가능성을 측정하지만, 어깨와 오른쪽 발 사이의 연결 가능성은 고려하지 않는다. 이후, 각 신체 부위에 대한 결과물을 합계하여 제1 모션 데이터를 출력할 수 있다(5단계).
상기 착용형 모션 데이터 생성부(200)는, 사용자의 신체 부위에 착용되는 착용형 모션 센서를 이용해 해당 신체 부위의 모션을 실시간 추적하여 제2 모션 데이터를 생성할 수 있다.
기존의 딥러닝 방식의 영상추적 모션 시스템은 팔이나 다리 등의 큰 관절 부위에 대해 보정 알고리즘을 통해 어느 정도의 관절 데이터 추출이 가능하지만, 손가락 관절 등 작은 관절 부위에 대해 미세한 추적은 불가능하다. 따라서, 본 실시예에서는 손가락 등의 작은 관절 부위에 대한 추적을 위해 착용형 글러브 센서 등을 이용한 별도의 솔루션을 적용하여 손가락의 각 관절에 대한 움직임과 회전값을 별도로 추출할 수 있는 하이브리드 타입의 추적 기술을 제시한다.
이를 위해 착용형 모션 데이터 생성부(200)는 일례로 글러브 형태로 제작될 수 있으며, 사용자의 손에 착용될 수 있다. 이러한 모션 글러브 센서는 리니어 인코더(linear encoder) 센서뿐만 아니라, FBG(Fiber Bragg Grating) 센서 및 IMU(Inertia Measurement Unit) 센서 등을 포함할 수 있으나, 본 실시예에서는 이에 한정하지 않고 다양한 방식의 모션 글러브 센서를 적용하여 제2 모션 데이터를 생성할 수 있다.
상기 리니어 인코더는 리니어 스케일(linear scale)이라고도 하며, 직선 변위를 측정하는 센서로 동작원리 상으로 분류하면 광전식 인코더, 자기식 인코더, 전자유도식 인코더, 용량식 인코더 등이 있다.
상기 FBG 센서 즉, 광섬유 격자 센서는 부식이 되지 않아 내구성이 좋고, FBG 센서의 광원 특성 상 특정 전자기파의 영향을 받지 않아 정밀한 모션 데이터 측정에 대한 오류가 없다. 또한, 다중형 FBG 센서의 각 채널로 동시에 다수의 관절 모션 데이터의 측정이 가능한 새로운 방식의 형상 인식형 모션 측정 센서로 제작되어 다양한 산업에 활용이 가능하다. FBG 센서를 구성하는 광섬유는 입사된 광이 전반사가 이루어지도록 굴절률이 다른 코어(Fiber Core), 클래딩(Cladding) 및 이러한 코어 및 클래딩을 보호하기 위한 재킷으로 구성되는 것이 통상적이다. FBG 센서는 측정범위에 따라 일점, 분포 및 다중형 방식으로 분류될 수 있다. 여기서, 분포형 광섬유센서로서는 ODTR(Optical Time Domain Reflectometry)이 대표적이다. 이는 단일 광섬유를 이용하여 구조물의 전체적인 거동을 측정하는 데 유용하다는 장점이 있다. 다중형 광섬유센서는 하나의 광섬유센서에 2개 이상의 일점형 광섬유센서가 설치되어 있는 형태로서 FBG센서(Fiber Bragg Grating Sensor, 광섬유격자센서)가 이에 해당된다.
이러한 FBG 센서는 단일로 제작되는 경우 2차원의 각도 측정만 가능하나 3개 이상의 다중형으로 제작되는 경우 X, Y, Z축에 대한 3차원 형상 인식이 가능한 센서로서 제작이 가능하다. 이때, 3개 이상의 FBG 센서를 하나의 튜브에 삽입한 후 코팅 제작 시 각각의 FBG 센서 간의 미세한 간격이 안정적인 데이터 측정에 있어 매우 중요한 요소가 된다. 따라서, 이러한 FBG 센서의 균일한 간극 유지 및 코팅 제조 방식이 센서의 정밀도를 위해서는 상당히 중요하다고 할 수 있다.
상기 IMU(Inertia Measurement Unit) 센서는, 지자기 센서, 가속도 센서 등의 각종 센서와 더불어 고도계, 자이로 등의 기능의 하나의 칩에 들어가 있는 복합 센서로 이루어질 수 있으며, 이러한 복합 센서를 이용하여 사용자의 각 신체부위의 위치와 자세에 대한 제2 모션 데이터를 생성할 수 있다.
상기 3차원 영상 데이터 생성부(300)는, 제1 모션 데이터의 각 영상 프레임에서 미리 설정된 제1 기준 피크치 이상의 흔들림 값을 갖는 오류 영상 프레임을 검출하고, 딥러닝 알고리즘을 기반으로 상기 오류 영상 프레임에 대한 흔들림 오류를 보정하고, 보정된 제1 모션 데이터에 제2 모션 데이터를 매핑하여 3차원 영상 데이터를 생성할 수 있다.
이를 위해 3차원 영상 데이터 생성부(300)는 도 3에 도시된 바와 같이, 오류 영상 프레임 검출부(310), 보정 영상 프레임 추정부(320), 제1 모션 데이터 오류 보정부(330) 및 모션 데이터 결합부(340) 중 적어도 하나를 포함할 수 있다.
상기 오류 영상 프레임 검출부(310)는, 제1 모션 데이터를 구성하는 각 영상 프레임 내 객체 흔들림 속도를 검출하고, 객체 흔들림 속도와 제1 기준 피크치 간을 비교하여 제1 기준 피크치 이상의 객체 흔들림 속도를 갖는 오류 영상 프레임을 검출할 수 있다. 영상 모션 데이터 생성부(100)에서 생성된 제1 모션 데이터를 구성하는 프레임의 수는 상대적으로 많지 않기 때문에, 영상을 봤을 때 객체가 마치 튀는 듯한 오류가 종종 검출된다. 이러한 문제를 도 4를 참조하여 설명하면, 프레임 1 내지 프레임 4로 구성된 제1 모션 데이터가 있고, 프레임 2 구간에서 객체의 흔들리는 속도가 유독 큰 피크 값을 갖는다고 가정했을 때, 프레임 2에서 나타나는 흔들림 속도에 대한 피크 값이 미리 설정된 제1 기준 피크치 이상이거나 초과한 경우 오류 영상 프레임으로 판정할 수 있다.
상기 보정 영상 프레임 추정부(320)는, 오류 영상 프레임의 이전 및 이후 영상 프레임을 추출하고, 딥러닝 알고리즘 기반으로 기 이전 및 이후 영상 프레임 사이에 위치할 보정 영상 프레임을 추정할 수 있다. 상술한 오류 영상 프레임은 최종적으로 구현될 3차원 영상 데이터의 품질을 저하시킬 수 있으므로, 해당 오류 영상 프레임은 삭제될 수 있으며, 도 5에 도시된 바와 같이 새로운 프레임 2(Frame 2)를 삽입해 이전 오류 영상 프레임인 프레임 2(Frame 2)를 대체할 수 있다. 여기서, 새로운 프레임 2(Frame 2')는 보정 영상 프레임으로서 오류 영상 프레임인 프레임 2(Frame 2)의 이전 영상 프레임과 이후 영상 프레임을 기반으로 그 사이에 위치할 영상 프레임을 추정하여 생성된 것으로, 영상 프레임 간의 간격은 매우 짧은 찰나의 순간이므로, 실제 사용자가 그 사이에서 이전과 이후 영상 프레임에서 벗어나는 행동이나 모션을 취하는 것이 사실상 불가능하므로, 이전과 이후 영상 프레임의 중간 값에 해당하는 영상 프레임을 보정 영상 프레임(Frame 2')으로서 추정할 수 있다.
상기 제1 모션 데이터 오류 보정부(330)는, 오류 영상 프레임을 제거하고, 제거된 오류 영상 프레임의 위치에 보정 영상 프레임을 삽입하여 상기 제1 모션 데이터에 대한 흔들림 오류를 보정할 수 있다. 즉, 도 4 및 도 5에 도시된 바와 같이 보정 영상 프레임(Frame 2')을 오류 영상 프레임인 프레임 2(Frame 2)를 대체함으로써 오류 영상 프레임에 대한 보정 작업을 완료할 수 있다.
상기 모션 데이터 결합부(340)는, 제1 모션 데이터(오류 영상 프레임이 검출되지 않은 경우) 또는 제1 모션 데이터 오류 보정부(330)에 의해 보정된 제1 모션 데이터에 제2 모션 데이터를 결합하여 3차원 영상 데이터를 생성할 수 있다. 이에 따라, 제1 모션 데이터에 의해 골반, 무릎 등 큰 관절의 자세와 움직임을 인식하고, 제2 모션 데이터에 의해 손가락들이 굽혀 져서 사라지거나, 두 손가락이 겹쳐졌다가 떨어지는 등, 손에 의해 표현되는 정밀한 움직임을 인식함으로써 사각지대 없는 객체 모션 추적이 가능하다.
상기 이동 모션 애니메이션 영상 제공부(400)는, 3차원 영상 데이터를 기반으로 가상 체험형 영상을 제공하되, 제1 모션 데이터 내 객체에 대하여 미리 설정된 이동 모션을 검출할 경우, 해당 가상 체험형 영상에 이동 효과를 제공하기 위해 미리 준비된 애니메이션 영상을 제1 모션 데이터와 제2 모션 데이터를 대체하여 적용하여 제공할 수 있다.
예를 들어, 제1 모션 데이터를 구성하는 특정 영상 프레임에서 사용자가 제자리 걸음 또는 위치를 이동하는 모션을 검출하는 경우, 해당 모션을 위치 이동 명령에 대한 입력 값으로 받아 들여 사용자에게 제공하는 가상 공간을 위치 이동하는 영상을 미리 준비된 애니메이션 영상으로 대체하여 제공할 수 있다. 종래의 가상 공간 상에서 사용자가 이동하여 위치가 이동하게 되면 사용자의 위치 이동에 맞게 주변 환경을 구성하여 영상으로 출력하게 되는데, 이러한 경우 컴퓨터 장치에 비교적 많은 연산량이 요구된다. 따라서, 본 실시예에서는 제1 모션 데이터를 통해 사용자의 제자리 걸음이나 약간의 위치 이동과 같은 모션을 인식하게 되면, 소위 텔레포토(Telephoto) 방식과 같이 사용자가 위치 A에서 위치 B로 빠르게 이동할 때 볼 수 있는 주변 환경을 미리 준비된 애니메이션 영상으로 제공함으로써 실제 사용자가 이동할 때 구현되어 제공되는 가상의 영상을 제공할 필요가 없어지고 이에 따라 컴퓨터의 프로세스 부하도 줄일 수 있으며, 별도의 하드웨어 버튼 또는 스위치를 적용하여 사용자의 위치 이동을 인식할 수 있도록 구현 가능하다. 이러한 애니메이션 영상은 사용자가 가상 공간을 보는 시점 즉, 1인칭 시점인지 또는 3인칭 시점인지에 맞게 가공되어 제공될 수 있다. 또한, 가상 현실을 즐기는 사용자는 물리적으로 제한된 공간 내에서 활동을 할 수 있는데, 이러한 환경에서는 넓은 가상 공간 상을 이동하는 것을 실제로 반영하는데 한계가 존재할 수 밖에 없으므로, 좁은 물리적 게임 또는 가상 체험 활동 공간에서 이동 모션 애니메이션 영상 제공부(400)는 보다 효과적인 게임 또는 가상 체험 활동 운영을 가능하게 한다.
한편, 이동 모션 애니메이션 영상 제공부(400)는, 제1 모션 데이터 내 객체에 대하여 제자리걸음 및 위치 이동하는 이동 모션을 각각 검출하되, 위치 이동하는 이동 모션의 경우 후술하는 거리 센서부(500)에 의해 설정된 사용자 이동 반경 영역의 경계선에 미리 설정된 경고 거리까지 근접하면 사용자 이동을 제하하는 경고 신호를 출력할 수 있다. 예를 들어, 사용자의 실제 활동 공간이 5m*5m의 넓이로 계측되는 경우, 계측된 크기 또는 그보다 일정 수치만큼 작은 넓이로 활동 가능한 물리적 공간 영역을 정의할 수 있으며, 사용자가 해당 영역의 중심 위치에서 다른 위치로 이동하기 위해 대략 2.5m를 실제 걸었다면 해당 지점이 경계선에 도달하여 해당 공간에 마련된 벽이나 칸막이 등에 부딪혀 부상을 입을 가능성이 있으므로, 거리 센서부(500)와 연동하여 해당 경계선에 도달함을 인식하면 경고신호를 출력해 사용자의 이동을 제한할 수 있다.
상기 거리 센서부(500)는, 사용자의 활동이 가능한 물리적 공간 내 설치되어 해당 물리적 공간의 크기를 측정하고, 측정된 물리적 공간의 크기를 기반으로 사용자 이동 반경 영역을 설정할 수 있다. 이러한 거리 센서부(500)는 초음파센서, 라이다센서, 레이저센서, 카메라센서 등 물리적 공간의 크기, 사용자와의 거리를 측정 및 파악할 수 있는 수단이면 모두 적용 가능하다. 이러한 거리 센서부(500)는 이동 모션 애니메이션 영상 제공부(400)와 연동하여 물리적 공간 내에 위치한 사용자의 상대적 거리를 검출할 수 있다.
상기 위치 센서부(600)는, 사용자의 활동이 가능한 물리적 공간 내 설치되고, 해당 물리적 공간 내에서 객체의 상대적 위치를 추적하여 위치 데이터를 생성할 수 있다. 위치 센서부(600)는 사용자가 게임 또는 가상 체험 활동을 하는 물리적 공간 내에서 사용자(객체)의 상대적 위치를 추적하기 위한 기계식, 전기식, 자기식, 광학식 센서 등 다양한 방식의 센서가 적용될 수 있다.
상기 위치 데이터 보정부(700)는, 위치 센서부(600)를 통해 생성된 위치 데이터의 객체 위치값에 대하여 미리 설정된 제2 기준 피크치 이상의 흔들림 값을 갖는 오류 위치값을 검출하고, 딥러닝 알고리즘을 기반으로 오류 위치값에 대한 흔들림 오류를 보정하고, 보정된 위치 데이터를 제1 모션 데이터에 적용하여 보다 안정적인 3차원 영상 데이터가 생성될 수 있도록 한다.
이를 위해 위치 데이터 보정부(700)는 도 7에 도시된 바와 같이, 오류 객체 좌표 검출부(710), 보정 객체 좌표 추정부(720), 객체 좌표 오류 보정부(730) 및 위치 데이터 적용부(740) 중 적어도 하나를 포함할 수 있다.
상기 오류 객체 좌표 검출부(710)는, 위치 데이터를 구성하는 각 객체 좌표값에 대한 흔들림 속도를 검출하고, 검출된 객체 좌표값에 대한 흔들림 속도와 제2 기준 피크치 간을 비교하여 제2 기준 피크치 이상의 흔들림 속도를 갖는 오류 객체 좌표값을 검출할 수 있다. 사용자(객체)에 대한 위치 데이터 또한 영상 프레임과 유사하게 극히 짧은 시간으로 나누어 보면, 다수의 프레임으로 구성될 수 있다. 이러한 프레임들에는 객체에 대한 좌표값이 포함되어 있는데, 이러한 객체 좌표값은 시간의 흐름에 따라 어느 범위 내에서의 변화를 갖게 된다. 즉, 프레임 간의 간격은 매우 짧은 찰나의 순간이므로, 실제 사용자가 그 사이에서 이전과 이후 프레임에서 벗어나 위치를 바꾸는 것은 사실상 불가능하다. 따라서, 각 프레임의 객체 좌표값에 대한 변화 속도를 판단할 때, 미리 설정된 제2 기준 피크치 이상 또는 이를 초과하는 흔들림 속도로 객체 좌표값이 변화하는 경우, 해당 객체 좌표값을 현재 오류 객체 좌표값(P(x,y,z))으로 검출할 수 있다.
상기 보정 객체 좌표 추정부(720)는, 도 8에 도시된 바와 같이 오류 객체 좌표값(P(x,y,z))의 이전 객체 좌표값(P(x',y',z')과 이후 객체 좌표값(P(x",y",z")을 추출하고, 딥러닝 알고리즘 기반으로 이전 객체 좌표값(P(x',y',z')과 이후 객체 좌표값(P(x",y",z")) 사이에 위치할 보정 객체 좌표값(P(X,Y,Z))을 추정할 수 있다.
상기 객체 좌표 오류 보정부(730)는, 도 8에 도시된 바와 같이 오류 객체 좌표값(P(x,y,z))을 제거하고, 보정 객체 좌표 추정부(720)를 통해 추정된 보정 객체 좌표값(P(X,Y,Z))을 삽입하여 위치 데이터에 대한 흔들림 오류를 보정할 수 있다.
상기 위치 데이터 적용부(740)는, 위치 데이터(위치 흔들림 오류가 없는 경우) 또는 보정 객체 좌표값이 적용된 위치 데이터를 제1 모션 데이터를 적용하여 보다 안정적인 3차원 영상 데이터가 생성될 수 있도록 한다.
도 9는 본 발명의 실시예에 따른 영상 모션 데이터 생성부를 통한 사용자의 전후방 이동 값을 보정하는 방법을 설명하기 위해 나타낸 도면이다.
도 9를 참조하면, 본 발명의 실시예에 따른 영상 모션 데이터 생성부(100)는, 제1 모션 데이터를 생성하기 이전에, 미리 정의된 기본 설정 위치에서 있는 사용자를 2D 카메라를 통해 촬영하여 생성된 기본 설정 영상 데이터를 입력 받을 수 있다. 여기서, 기본 설정 위치란 사용자 즉 플레이어가 게임을 하기 이전에 해당 플레이어가 전방 또는 후방으로 이동함에 따른 위치 이동량에 따른 제1 모션 데이터를 보정하게 위해 기준이 되는 위치이며 게임을 시작하는 위치를 의미하며, 해당 위치에서 촬영된 기본 설정 영상 데이터를 기반으로 기본 위치 값이 설정될 수 있다.
이를 위해, 영상 모션 데이터 생성부(100)는, 도 9의 (b)에 도시된 바와 같이 기본 설정 영상 데이터에서 플레이어에 대한 기본 설정 키 포인트(최소 3쌍의 키 포인트)를 각각 추출하고, 해당 기본 설정 키 포인트 간의 길이를 각각 측정하여 사용자의 기본 위치에 대한 키 포인트 길이 데이터를 생성할 수 있다. 도 9의 (b)와 같이 다수의 기본 설정 키 포인트를 추출하는 경우, 한 쌍의 기본 설정 키 포인트 간의 길이(r1, r2, r3)의 평균 값을 산출하여 기준 길이 값을 결정할 수 있다. 이러한 기준 길이 값은 플레이어의 신체적 조건에 따라 상이하게 설정될 수 있으며, 최초 등록되면 이후에 반복해서 등록하지 않고 특정 플레이어가 게임을 시작할 경우, 해당 키 포인트 길이 데이터를 불러와 설정한 후 게임을 시작할 수 있다.
또한, 영상 모션 데이터 생성부(100)는, 키 포인트 길이 데이터에 포함된 기본 설정 키 포인트 간 길이인 제1 길이와, 제1 모션 데이터에 포함된 키 포인트 간 길이인 제2 길이를 비교하고, 미리 정의된 포인트 길이 변화에 따른 이동 값 정보에 기초하여 제2 길이가 제1 길이보다 길어지는 경우 길어진 길이에 따른 전방 이동 값을 산출하고, 제2 길이가 제1 길이보다 짧아지는 경우 짧아진 길이에 따른 후방 이동 값을 산출하고, 전방 이동 값과 후방 이동 값 각각에 따른 사용자의 전후방 포지션 변화 데이터를 생성하여 제1 모션 데이터에 적용할 수 있다.
예를 들어, 도 9의 (a)에 도시된 바와 같이 제1 모션 데이터에 포함된 키 포인트를 각각 추출한 후 각각의 쌍으로 이루어진 키 포인트 간의 길이 a1, a2, a3를 각각 산출하고, 이들의 평균 값 A을 구할 수 있다. 이때, 평균 값 A가 R보다 길어진 경우 해당 플레이어가 전방으로 이동함을 의미하므로, 평균 값 A가 R보다 상대적으로 얼마나 증가하였는지에 대한 값을 산출한 후 해당 값과 대응되는 전방 이동 거리를 추출해 제1 모션 데이터에 적용할 수 있다.
또한, 도 9의 (c)에 도시된 바와 같이 제1 모션 데이터에 포함된 키 포인트를 각각 추출한 후 각각의 쌍으로 이루어진 키 포인트 간의 길이 b1, b2, b3를 각각 산출하고, 이들의 평균 값 B을 구할 수 있다. 이때, 평균 값 B가 R보다 짧아진 경우 해당 플레이어가 후방으로 이동함을 의미하므로, 평균 값 B가 R보다 상대적으로 얼마나 증가하였는지에 대한 값을 산출한 후 해당 값과 대응되는 후방 이동 거리를 추출해 제1 모션 데이터에 적용함으로써, 플레이어의 전후방 이동에 따른 위치 값을 추가적으로 보정할 수 있다.
이에 더하여, 도 9의 (b)에 도시된 바와 같이 기본 설정 위치에서 플레이어의 발에 해당하는 키 포인트를 추출한 후 해당 키 포인트의 2차원 위치 값을 저장할 수 있으며, 이러한 2차원 위치 값을 제1 모션 데이터 중 발에 해당하는 키 포인트의 2차원 위치 값과 비교하여 상대적으로 아래로 내려간 경우 얼마나 내려갔는지에 대응되는 값을 추출해 제1 모션 데이터에 적용하고, 제1 모션 데이터 중 발에 해당하는 키 포인트의 2차원 위치 값과 비교하여 상대적으로 위로 올라간 경우 얼마나 올라갔는지에 대응되는 값을 추출해 제2 모션 데이터에 적용함으로써 플레이어의 전후방 이동에 따른 위치 값을 추가적으로 보정할 수 있다. 즉, 상술한 방법과 더불어 추가적으로 사용하거나 또는 독립적으로 사용할 수도 있다.
이상에서 설명한 것은 본 발명에 의한 딥러닝 기술을 이용한 모션 추적 시스템을 실시하기 위한 하나의 실시예에 불과한 것으로서, 본 발명은 상기 실시예에 한정되지 않고, 이하의 특허청구범위에서 청구하는 바와 같이 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변경 실시가 가능한 범위까지 본 발명의 기술적 정신이 있다고 할 것이다.
1000: 딥러닝 기술을 이용한 모션 추적 시스템
100: 영상 모션 데이터 생성부
200: 착용형 모션 데이터 생성부
300: 3차원 영상 데이터 생성부
310: 오류 영상 프레임 검출부
320: 보정 영상 프레임 추정부
330: 제1 모션 데이터 오류 보정부
340: 모션 데이터 결합부
400: 이동 모션 애니메이션 영상 제공부
500: 거리 센서부
600: 위치 센서부
700: 위치 데이터 보정부
710: 오류 객체 좌표 검출부
720: 보정 객체 좌표 추정부
730: 객체 좌표 오류 보정부
740: 위치 데이터 적용부

Claims (10)

  1. 다수의 카메라를 통해 촬영되는 영상 데이터를 입력 받고, 입력된 영상 데이터에서 키 포인트를 추출하고, 딥러닝 알고리즘을 기반으로 해당 키 포인트의 위치 정보를 파악하고, 위치가 파악된 키 포인트 간의 연결을 통해 하나의 객체로 그룹핑하여 객체의 자세를 추정하고, 자세가 추정된 객체의 모션을 실시간 추적하여 제1 모션 데이터를 생성하는 영상 모션 데이터 생성부;
    사용자의 신체 부위에 착용되는 착용형 모션 센서를 이용해 해당 신체 부위의 모션을 실시간 추적하여 제2 모션 데이터를 생성하는 착용형 모션 데이터 생성부; 및
    상기 제1 모션 데이터의 각 영상 프레임에서 미리 설정된 제1 기준 피크치 이상의 흔들림 값을 갖는 오류 영상 프레임을 검출하고, 딥러닝 알고리즘을 기반으로 상기 오류 영상 프레임에 대한 흔들림 오류를 보정하고, 보정된 제1 모션 데이터에 상기 제2 모션 데이터를 매핑하여 3차원 영상 데이터를 생성하는 3차원 영상 데이터 생성부를 포함하고,
    상기 영상 모션 데이터 생성부는,
    상기 제1 모션 데이터를 생성하기 이전에, 미리 정의된 기본 설정 위치에서 있는 사용자를 카메라를 통해 촬영하여 생성된 기본 설정 영상 데이터를 입력 받고, 입력된 기본 설정 영상 데이터에서 사용자에 대한 기본 설정 키 포인트를 각각 추출하고, 해당 기본 설정 키 포인트 간의 길이를 각각 측정하여 사용자의 기본 위치에 대한 키 포인트 길이 데이터를 생성하고,
    상기 키 포인트 길이 데이터에 포함된 기본 설정 키 포인트 간 길이인 제1 길이와, 상기 제1 모션 데이터에 포함된 키 포인트 간 길이인 제2 길이를 비교하고, 미리 정의된 포인트 길이 변화에 따른 이동 값 정보에 기초하여 상기 제2 길이가 상기 제1 길이보다 길어지는 경우 길어진 길이에 따른 전방 이동 값을 산출하고, 상기 제2 길이가 상기 제1 길이보다 짧아지는 경우 짧아진 길이에 따른 후방 이동 값을 산출하고, 상기 전방 이동 값과 상기 후방 이동 값 각각에 따른 사용자의 전후방 포지션 변화 데이터를 생성하고 상기 제1 모션 데이터에 적용하여 사용자의 전후방 이동에 따른 위치 값을 보정하는 것을 특징으로 하는 딥러닝 기술을 이용한 모션 추적 시스템.
  2. 삭제
  3. 제1 항에 있어서,
    상기 착용형 모션 데이터 생성부는,
    리니어 인코더(linear encoder) 센서뿐만 아니라, FBG(Fiber Bragg Grating) 센서 및 IMU(Inertia Measurement Unit) 센서 중 적어도 하나를 포함하는 것을 특징으로 하는 딥러닝 기술을 이용한 모션 추적 시스템.
  4. 제1 항에 있어서,
    상기 3차원 영상 데이터 생성부는,
    상기 제1 모션 데이터를 구성하는 각 영상 프레임 내 객체 흔들림 속도를 검출하고, 상기 객체 흔들림 속도와 상기 제1 기준 피크치 간을 비교하여 상기 제1 기준 피크치 이상의 객체 흔들림 속도를 갖는 오류 영상 프레임을 검출하는 오류 영상 프레임 검출부;
    상기 오류 영상 프레임의 이전 및 이후 영상 프레임을 추출하고, 딥러닝 알고리즘 기반으로 상기 이전 및 이후 영상 프레임 사이에 위치할 보정 영상 프레임을 추정하는 보정 영상 프레임 추정부;
    상기 오류 영상 프레임을 제거하고, 제거된 상기 오류 영상 프레임의 위치에 상기 보정 영상 프레임을 삽입하여 상기 제1 모션 데이터에 대한 흔들림 오류를 보정하는 제1 모션 데이터 오류 보정부; 및
    상기 제1 모션 데이터 또는 상기 제1 모션 데이터 오류 보정부에 의해 보정된 제1 모션 데이터에 상기 제2 모션 데이터를 결합하여 상기 3차원 영상 데이터를 생성하는 모션 데이터 결합부를 포함하는 것을 특징으로 하는 딥러닝 기술을 이용한 모션 추적 시스템.
  5. 제1 항에 있어서,
    상기 3차원 영상 데이터를 기반으로 가상 체험형 영상을 제공하되, 상기 제1 모션 데이터 내 객체에 대하여 미리 설정된 이동 모션을 검출할 경우, 상기 가상 체험형 영상에 이동 효과를 제공하기 위해 미리 준비된 애니메이션 영상을 상기 제1 모션 데이터와 상기 제2 모션 데이터를 대체하여 적용하여 제공하는 이동 모션 애니메이션 영상 제공부를 더 포함하는 것을 특징으로 하는 딥러닝 기술을 이용한 모션 추적 시스템.
  6. 제5 항에 있어서,
    사용자의 활동이 가능한 물리적 공간 내 설치되어 해당 물리적 공간의 크기를 측정하고, 측정된 물리적 공간의 크기를 기반으로 사용자 이동 반경 영역을 설정하는 거리 센서부를 더 포함하는 것을 특징으로 하는 딥러닝 기술을 이용한 모션 추적 시스템.
  7. 제6 항에 있어서,
    상기 이동 모션 애니메이션 영상 제공부는,
    상기 제1 모션 데이터 내 객체에 대하여 제자리걸음 및 위치 이동하는 이동 모션을 각각 검출하되, 위치 이동하는 이동 모션의 경우 상기 거리 센서부에 의해 설정된 사용자 이동 반경 영역의 경계선에 미리 설정된 경고 거리까지 근접하면 사용자 이동을 제한하는 경고 신호를 출력하는 것을 특징으로 하는 딥러닝 기술을 이용한 모션 추적 시스템.
  8. 제1 항에 있어서,
    사용자의 활동이 가능한 물리적 공간 내 설치되고, 해당 물리적 공간 내에서 객체의 위치를 추적하여 위치 데이터를 생성하는 위치 센서부를 더 포함하는 것을 특징으로 하는 딥러닝 기술을 이용한 모션 추적 시스템.
  9. 제8 항에 있어서,
    상기 위치 데이터의 객체 위치값에 대하여 미리 설정된 제2 기준 피크치 이상의 흔들림 값을 갖는 오류 위치값을 검출하고, 딥러닝 알고리즘을 기반으로 상기 오류 위치값에 대한 흔들림 오류를 보정하고, 보정된 위치 데이터를 상기 제1 모션 데이터에 적용하는 위치 데이터 보정부를 더 포함하는 것을 특징으로 하는 딥러닝 기술을 이용한 모션 추적 시스템.
  10. 제9 항에 있어서,
    상기 위치 데이터 보정부는,
    상기 위치 데이터를 구성하는 각 객체 좌표값에 대한 흔들림 속도를 검출하고, 검출된 객체 좌표값에 대한 흔들림 속도와 상기 제2 기준 피크치 간을 비교하여 상기 제2 기준 피크치 이상의 흔들림 속도를 갖는 오류 객체 좌표값을 검출하는 오류 객체 좌표 검출부;
    상기 오류 객체 좌표값의 이전 및 이후 객체 좌표값을 추출하고, 딥러닝 알고리즘 기반으로 상기 이전 및 이후 객체 좌표값 사이에 위치할 보정 객체 좌표값을 추정하는 보정 객체 좌표 추정부;
    상기 오류 객체 좌표값을 제거하고, 제거된 상기 오류 객체 좌표값을 상기 보정 객체 좌표값을 삽입하여 상기 위치 데이터에 대한 흔들림 오류를 보정하는 객체 좌표 오류 보정부; 및
    상기 위치 데이터 또는 상기 보정 객체 좌표값이 적용된 위치 데이터를 상기 제1 모션 데이터를 적용하는 위치 데이터 적용부를 포함하는 것을 특징으로 하는 딥러닝 기술을 이용한 모션 추적 시스템.
KR1020220076436A 2021-06-30 2022-06-22 딥러닝 기술을 이용한 모션 추적 시스템 KR102622981B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/KR2022/009349 WO2023277586A1 (ko) 2021-06-30 2022-06-29 딥러닝 기술을 이용한 모션 추적 시스템

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020210085975 2021-06-30
KR20210085975 2021-06-30

Publications (2)

Publication Number Publication Date
KR20230004280A KR20230004280A (ko) 2023-01-06
KR102622981B1 true KR102622981B1 (ko) 2024-01-10

Family

ID=84924393

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220076436A KR102622981B1 (ko) 2021-06-30 2022-06-22 딥러닝 기술을 이용한 모션 추적 시스템

Country Status (1)

Country Link
KR (1) KR102622981B1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102590549B1 (ko) * 2023-01-09 2023-10-17 (주)휴먼아이티솔루션 사용자 제스처 분석 장치 및 이를 이용한 운동 자세 분석 정보 제공 방법
CN116253248B (zh) * 2023-02-13 2023-10-03 江苏省特种设备安全监督检验研究院 起重机运行监测方法及起重机防撞人冗余系统和存储介质
CN117746192B (zh) * 2024-02-20 2024-06-28 荣耀终端有限公司 电子设备及其数据处理方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101768958B1 (ko) 2016-10-31 2017-08-17 (주)코어센스 고품질 콘텐츠 제작을 위한 하이브리드 모션캡쳐 시스템
KR102118937B1 (ko) * 2018-12-05 2020-06-04 주식회사 스탠스 3d 데이터서비스장치, 3d 데이터서비스장치의 구동방법 및 컴퓨터 판독가능 기록매체
KR102234646B1 (ko) 2020-03-31 2021-04-01 (주)케이넷 이엔지 가상 현실 체험 장치 및 방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180114756A (ko) * 2017-04-11 2018-10-19 한국전자통신연구원 헤드 마운티드 디스플레이의 충돌 경고 장치 및 방법
CN112822979A (zh) * 2018-07-23 2021-05-18 Mvi医疗保健公司 用于物理治疗的系统和方法
KR20200087027A (ko) * 2019-01-10 2020-07-20 한국전자통신연구원 근골격계 진단을 위한 동작 획득 방법 및 장치
KR102299936B1 (ko) 2019-12-30 2021-09-09 주식회사 버넥트 카메라로 촬영된 객체 추적을 위한 자세 추정 방법 및 시스템

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101768958B1 (ko) 2016-10-31 2017-08-17 (주)코어센스 고품질 콘텐츠 제작을 위한 하이브리드 모션캡쳐 시스템
KR102118937B1 (ko) * 2018-12-05 2020-06-04 주식회사 스탠스 3d 데이터서비스장치, 3d 데이터서비스장치의 구동방법 및 컴퓨터 판독가능 기록매체
KR102234646B1 (ko) 2020-03-31 2021-04-01 (주)케이넷 이엔지 가상 현실 체험 장치 및 방법

Also Published As

Publication number Publication date
KR20230004280A (ko) 2023-01-06

Similar Documents

Publication Publication Date Title
KR102622981B1 (ko) 딥러닝 기술을 이용한 모션 추적 시스템
JP5931215B2 (ja) 姿勢を推定する方法及び装置
CN113706699B (zh) 数据处理方法、装置、电子设备及计算机可读存储介质
JP5635736B2 (ja) 情報処理装置および情報処理方法
JP6723061B2 (ja) 情報処理装置、情報処理装置の制御方法およびプログラム
JP2021534516A (ja) 眼鏡用仮想試着システム及び方法
KR101711736B1 (ko) 영상에서 동작 인식을 위한 특징점 추출 방법 및 골격 정보를 이용한 사용자 동작 인식 방법
WO2013119352A1 (en) Head pose tracking using a depth camera
Plantard et al. Filtered pose graph for efficient kinect pose reconstruction
US20200286302A1 (en) Method And Apparatus For Manipulating Object In Virtual Or Augmented Reality Based On Hand Motion Capture Apparatus
JP2018119833A (ja) 情報処理装置、システム、推定方法、コンピュータプログラム、及び記憶媒体
KR20120138329A (ko) 가상터치를 이용한 3차원 장치 및 3차원 게임 장치
US20160210761A1 (en) 3d reconstruction
JP4938748B2 (ja) 画像認識装置及びプログラム
CN115862124B (zh) 视线估计方法、装置、可读存储介质及电子设备
CN111354029A (zh) 手势深度确定方法、装置、设备及存储介质
US20230290101A1 (en) Data processing method and apparatus, electronic device, and computer-readable storage medium
CN115601505B (zh) 一种人体三维姿态还原方法、装置、电子设备及存储介质
KR101527792B1 (ko) 상호작용하는 캐릭터를 모델링 하는 방법 및 장치
CN113240044B (zh) 一种基于多Kinect的人体骨骼数据融合评价方法
KR102157246B1 (ko) 실제 손에 대응하는 가상 손 모델링 방법 및 이를 위한 장치
JP2018128739A (ja) 画像処理装置、画像処理方法、コンピュータプログラム、及び記憶媒体
CN113536931A (zh) 一种手部姿态估计方法及装置
CN111368675A (zh) 手势深度信息的处理方法、装置、设备及存储介质
WO2023277586A1 (ko) 딥러닝 기술을 이용한 모션 추적 시스템

Legal Events

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