KR20240006289A - 공간의 위치 좌표계를 동기화하는 증강 현실 디바이스 및 방법 - Google Patents
공간의 위치 좌표계를 동기화하는 증강 현실 디바이스 및 방법 Download PDFInfo
- Publication number
- KR20240006289A KR20240006289A KR1020220083158A KR20220083158A KR20240006289A KR 20240006289 A KR20240006289 A KR 20240006289A KR 1020220083158 A KR1020220083158 A KR 1020220083158A KR 20220083158 A KR20220083158 A KR 20220083158A KR 20240006289 A KR20240006289 A KR 20240006289A
- Authority
- KR
- South Korea
- Prior art keywords
- joint
- value
- augmented reality
- reality device
- joint value
- Prior art date
Links
- 230000003190 augmentative effect Effects 0.000 title claims abstract description 408
- 238000000034 method Methods 0.000 title claims abstract description 49
- 210000002478 hand joint Anatomy 0.000 claims abstract description 5
- 210000000988 bone and bone Anatomy 0.000 claims description 50
- 238000004891 communication Methods 0.000 claims description 33
- 210000003811 finger Anatomy 0.000 claims description 31
- 210000001624 hip Anatomy 0.000 claims description 20
- 210000003813 thumb Anatomy 0.000 claims description 13
- 210000000707 wrist Anatomy 0.000 claims description 10
- 230000001360 synchronised effect Effects 0.000 abstract description 7
- 210000001503 joint Anatomy 0.000 description 77
- 238000013473 artificial intelligence Methods 0.000 description 24
- 238000010586 diagram Methods 0.000 description 15
- 210000000236 metacarpal bone Anatomy 0.000 description 12
- 210000004247 hand Anatomy 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 7
- 238000010295 mobile communication Methods 0.000 description 6
- 238000004590 computer program Methods 0.000 description 4
- 230000014509 gene expression Effects 0.000 description 4
- 238000003062 neural network model Methods 0.000 description 4
- 230000005856 abnormality Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 239000011521 glass Substances 0.000 description 3
- 230000033001 locomotion Effects 0.000 description 3
- 208000010392 Bone Fractures Diseases 0.000 description 2
- 206010027476 Metastases Diseases 0.000 description 2
- 210000003010 carpal bone Anatomy 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000009401 metastasis Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 239000004984 smart glass Substances 0.000 description 2
- 238000012706 support-vector machine Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 210000000245 forearm Anatomy 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012417 linear regression Methods 0.000 description 1
- 238000007477 logistic regression Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000007637 random forest analysis Methods 0.000 description 1
- 208000013860 rhabdoid tumor of the kidney Diseases 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000010409 thin film Substances 0.000 description 1
- 210000000623 ulna Anatomy 0.000 description 1
Images
Classifications
-
- 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/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- 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
-
- 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/002—Specific input/output arrangements not covered by G06F3/01 - G06F3/16
- G06F3/005—Input arrangements through a video camera
-
- 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
-
- 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
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- 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
-
- 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
-
- 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/20—Movements or behaviour, e.g. gesture recognition
-
- 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/20—Movements or behaviour, e.g. gesture recognition
- G06V40/28—Recognition of hand or arm movements, e.g. recognition of deaf sign language
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
촬영된 손의 위치 정보에 기초하여 외부 디바이스와 공간의 위치 좌표계를 동기화하는 증강 현실 디바이스 및 그 동작 방법을 제공한다. 본 개시의 일 실시 예에 따른 증강 현실 디바이스는 사용자의 손을 포함하는 이미지로부터 손의 관절값을 획득하고, 외부 디바이스로부터, 외부 디바이스에 의해 획득된 사용자의 손의 관절에 관한 기준 관절값을 수신하고, 획득된 관절값과 기준 관절값을 매칭시킴으로써, 증강 현실 디바이스의 3차원 위치 좌표계를 외부 디바이스의 3차원 위치 좌표계와 동기화할 수 있다.
Description
본 개시는 공간 위치 좌표계를 동기화하는 증강 현실 디바이스 및 방법에 관한 것이다. 구체적으로, 증강 현실 디바이스가 촬영된 손의 위치 정보에 기초하여 외부 디바이스와 공간의 위치 좌표계를 동기화하는 방법에 관한 것이다.
증강 현실(Augmented Reality)은 현실 세계의 물리적 환경 공간이나 현실 객체(real world object) 상에 가상 이미지를 오버레이(overlay)하여 함께 보여주는 기술로서, 증강 현실 기술을 활용한 증강 현실 디바이스(예를 들어, 스마트 글래스(Smart Glass)가 정보 검색, 길 안내, 카메라 촬영과 같이 일상 생활에서 유용하게 사용되고 있다. 특히, 스마트 글래스는 패션 아이템으로도 착용되고, 실외 활동에 주로 사용되고 있다.
증강 현실 디바이스는 특성 상 터치 조작이 불가능하므로, 증강 현실 서비스를 제공하기 위해서는 입력 수단으로써 사용자의 손의 3차원적 자세(pose)와 손 동작(hand gesture)를 이용하는 핸드 인터랙션(hand interaction)이 입력 인터페이스로서 중요하다. 따라서, 보다 실감나는 증강 현실 기술의 구현을 위해서는 손에 포함되는 관절의 3차원 위치 정보를 획득하고, 3차원 위치 정보를 통해 손의 자세(형태)를 추적하고, 손 동작을 인식하는 기술이 발달되었다.
다만, 하나의 증강 현실을 다수의 사용자가 공유하고자 하는 경우, 각 사용자가 착용하고 있는 증강 현실 디바이스를 통해 공유하는 하나의 증강 현실의 공간의 위치좌표값이 서로 정확히 일치될 것이 요구된다. 따라서, 각 사용자가 착용하고 있는 증강 현실 디바이스 간에 좌표계가 동기화되어야 할 필요가 있다.
본 개시의 다양한 실시 예는 사용자의 손의 관절에 관한 관절값을 외부 디바이스로부터 획득한 기준 관절값에 매칭함으로써, 증강 현실의 공간의 위치 좌표계를 동기화하는 증강 현실 디바이스 및 그 동작 방법을 제공하는 것을 목적으로 한다.
본 개시의 일 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 이하의 실시예들로부터 또 다른 기술적 과제들이 유추될 수 있다.
상술한 기술적 과제를 해결하기 위하여 본 개시는 외부 디바이스와 공간의 위치 좌표계를 동기화하는 증강 현실 디바이스(Augmented Reality device)를 제공한다. 본 개시의 일 실시 예에 따른 증강 현실 디바이스는 외부 디바이스와 데이터 통신을 수행하는 통신 인터페이스, 손을 촬영함으로써, 손을 포함하는 이미지를 획득하는 카메라, 적어도 하나의 명령어들(instructions)을 저장하는 메모리, 및 적어도 하나의 명령어들을 실행하는 적어도 하나의 프로세서를 포함하고, 적어도 하나의 프로세서는, 카메라를 통해 획득된 이미지로부터 손의 관절값을 획득하고, 외부 디바이스로부터, 외부 디바이스에 의해 획득된 사용자의 손의 관절에 관한 기준 관절값을 수신하고, 획득된 관절값을 기준 관절값과 매칭시키고, 매칭된 관절값에 기초하여, 증강 현실 디바이스의 3차원 위치 좌표계를 외부 디바이스의 3차원 위치 좌표계와 동기화한다.
본 개시의 일 실시 예에서, 적어도 하나의 프로세서는, 수신된 기준 관절값을 증강 현실 디바이스의 타입 정보에 기초하여 변환하고, 획득된 관절값을 변환된 기준 관절값과 매칭시킬 수 있다.
본 개시의 일 실시 예에서, 획득된 관절값은 제1 관절에 대응되는 제1 관절값, 제2 관절에 대응되는 제2 관절값 및 제3 관절에 대응되는 제3 관절값 중 적어도 하나를 포함하고, 기준 관절값은 제1 관절에 대응되는 제1 기준 관절값, 제2 관절에 대응되는 제2 기준 관절값 및 제3 관절에 대응되는 제3 기준 관절값 중 적어도 하나를 포함할 수 있다.
본 개시의 일 실시 예에서, 적어도 하나의 프로세서는, 제1 관절값을 제1 기준 관절값에, 제2 관절값을 제2 기준 관절값에, 제3 관절값을 제3 기준 관절값에 각각 매칭시킬 수 있다.
본 개시의 일 실시 예에서, 제1 기준 관절값 및 제1 관절값은 검지 기절골에 대응되는 관절 위치 좌표값이고, 제2 기준 관절값 및 제2 관절값은 엄지 기절골에 대응되는 관절 위치 좌표값이고, 제3 기준 관절값 및 제3 관절값은 검지 중절골에 대응되는 관절 위치 좌표값일 수 있다.
본 개시의 일 실시 예에서, 기준 관절값 및 관절값은 손가락, 손목 및 손바닥에 포함되는 복수의 관절들 중 하나의 위치 좌표값일 수 있다.
본 개시의 일 실시 예에서, 관절값은 공간 내 기설정된 제1 원점에 대한 복수의 관절들의 위치 좌표값 중 적어도 하나를 포함하고, 기준 관절값은 공간 내 외부 디바이스 기준으로 기설정된 제2 원점에 대한 복수의 관절들의 위치 좌표값 중 적어도 하나를 포함할 수 있다.
본 개시의 일 실시 예에서, 적어도 하나의 프로세서는, 매칭된 관절값에 기초하여, 제1 원점의 3차원 위치 좌표값을 제2 원점의 3차원 위치 좌표값과 일치하도록 재설정할 수 있다.
본 개시의 일 실시 예에서, 적어도 하나의 프로세서는, 기준 관절값 및 획득된 관절값의 차이에 기초하여, 증강 현실 디바이스에 의해 인식된 사용자의 손과 외부 디바이스에 의해 인식된 사용자의 손의 차이에 대한 보정값을 획득하고, 보정값을 획득된 관절값에 적용하여, 획득된 관절값을 변경할 수 있다.
본 개시의 일 실시 예에서, 보정값은 사용자의 손의 크기에 관한 크기 보정값을 포함하고, 적어도 하나의 프로세서는, 제1 기준 관절값과 제1 관절값을 동일 위치로 매칭시키고, 제2 기준 관절값과 제2 관절값을 비교하여, 증강 현실 디바이스에 의해 인식된 사용자의 손과 외부 디바이스에 의해 인식된 사용자의 손의 크기 차이에 대한 크기 보정값을 획득할 수 있다.
본 개시의 일 실시 예에서, 보정값은 사용자의 손의 각도에 관한 제1 각도 보정값을 포함하고, 적어도 하나의 프로세서는, 제1 기준 관절값과 제1 관절값을 동일 위치로 매칭시키고, 제2 기준 관절값과 제2 관절값을 비교하여, 증강 현실 디바이스에 의해 인식된 사용자의 손과 외부 디바이스에 의해 인식된 사용자의 손의 각도 차이에 대한 제1 각도 보정값을 획득할 수 있다.
본 개시의 일 실시 예에서, 보정값은 사용자의 손의 각도에 관한 제2 각도 보정값을 포함하고, 적어도 하나의 프로세서는, 제1 기준 관절값과 제1 관절값을 동일 위치로 매칭시키고, 제2 기준 관절값과 제2 관절값을 동일 위치로 매칭시키고, 제3 기준 관절값과 제3 관절값을 비교하여, 증강 현실 디바이스에 의해 인식된 사용자의 손과 외부 디바이스에 의해 인식된 사용자의 손의 각도 차이에 대한 제2 각도 보정값을 획득할 수 있다.
상술한 기술적 과제를 해결하기 위하여 본 개시는 증강 현실 디바이스가 외부 디바이스와 공간의 위치 좌표계를 동기화하는 방법을 제공한다. 본 개시의 일 실시 예에 따른 방법은 카메라를 통해 획득된 이미지로부터 손의 관절값을 획득하는 단계, 외부 디바이스로부터, 외부 디바이스에 의해 획득된 사용자의 손의 관절에 관한 기준 관절값을 수신하는 단계, 획득된 관절값을 기준 관절값과 매칭시키는 단계, 및 매칭된 관절값에 기초하여, 증강 현실 디바이스의 3차원 위치 좌표계를 외부 디바이스의 3차원 위치 좌표계와 동기화하는 단계를 포함한다.
본 개시의 일 실시 예에서, 획득된 관절값을 기준 관절값과 매칭시키는 단계는, 수신된 기준 관절값을 증강 현실 디바이스의 타입 정보에 기초하여 변환하는 단계, 및 획득된 관절값을 변환된 기준 관절값과 매칭시키는 단계를 포함할 수 있다.
본 개시의 일 실시 예에서, 획득된 관절값은 제1 관절에 대응되는 제1 관절값, 제2 관절에 대응되는 제2 관절값 및 제3 관절에 대응되는 제3 관절값 중 적어도 하나를 포함하고, 기준 관절값은 제1 관절에 대응되는 제1 기준 관절값, 제2 관절에 대응되는 제2 기준 관절값 및 제3 관절에 대응되는 제3 기준 관절값 중 적어도 하나를 포함하고, 획득된 관절값을 매칭시키는 단계는, 제1 관절값을 제1 기준 관절값에, 제2 관절값을 제2 기준 관절값에, 제3 관절값을 제3 기준 관절값에 각각 매칭시키는 단계를 포함할 수 있다.
본 개시의 일 실시 예에서, 획득된 관절값을 매칭시키는 단계는, 기준 관절값 및 획득된 관절값의 차이에 기초하여, 증강 현실 디바이스에 의해 인식된 사용자의 손과 외부 디바이스에 의해 인식된 사용자의 손의 차이에 대한 보정값을 획득하는 단계, 및 보정값을 획득된 관절값에 적용하여, 획득된 관절값을 변경하는 단계를 포함할 수 있다.
본 개시의 일 실시 예에서, 보정값은 사용자의 손의 크기에 관한 크기 보정값을 포함하고, 보정값을 획득하는 단계는, 제1 기준 관절값과 제1 관절값을 동일 위치로 매칭시키는 단계, 제2 기준 관절값과 제2 관절값을 비교하여, 증강 현실 디바이스에 의해 인식된 사용자의 손과 외부 디바이스에 의해 인식된 사용자의 손의 크기 차이에 대한 크기 보정값을 획득하는 단계를 포함할 수 있다.
본 개시의 일 실시 예에서, 보정값은 사용자의 손의 각도에 관한 제1 각도 보정값을 포함하고, 보정값을 획득하는 단계는, 제1 기준 관절값과 제1 관절값을 동일 위치로 매칭시키는 단계, 제2 기준 관절값과 제2 관절값을 비교하여, 증강 현실 디바이스에 의해 인식된 사용자의 손과 외부 디바이스에 의해 인식된 사용자의 손의 각도 차이에 대한 제1 각도 보정값을 획득하는 단계를 포함할 수 있다.
본 개시의 일 실시 예에서, 보정값은 사용자의 손의 각도에 관한 제2 각도 보정값을 포함하고, 보정값을 획득하는 단계는, 제1 기준 관절값과 제1 관절값을 동일 위치로 매칭시키는 단계, 제2 기준 관절값과 제2 관절값을 동일 위치로 매칭시키는 단계, 제3 기준 관절값과 제3 관절값을 비교하여, 증강 현실 디바이스에 의해 인식된 사용자의 손과 외부 디바이스에 의해 인식된 사용자의 손의 각도 차이에 대한 제2 각도 보정값을 획득하는 단계를 더 포함할 수 있다.
상술한 기술적 과제를 해결하기 위하여, 본 개시의 다른 실시 예는 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
본 개시는, 다음의 자세한 설명과 그에 수반되는 도면들의 결합으로 쉽게 이해될 수 있으며, 참조 번호(reference numerals)들은 구조적 구성요소(structural elements)를 의미한다.
도 1은 본 개시의 일 실시 예에 따른 증강 현실 디바이스가 공간의 위치 좌표계를 동기화하는 동작을 도시한 개념도이다.
도 2는 본 개시의 일 실시 예에 따른 증강 현실 디바이스의 구성 요소를 도시한 블록도이다.
도 3은 본 개시의 일 실시 예에 따른 증강 현실 디바이스의 동작 방법을 도시한 흐름도이다.
도 4는 본 개시의 일 실시 예에 따른 증강 현실 디바이스의 동작 방법을 설명하기 위한 흐름도이다.
도 5는 본 개시의 일 실시 예에 따른 증강 현실 디바이스가 인식하는 공간 좌표계를 설명하기 위한 도면이다.
도 6은 본 개시의 일 실시 예에 따라 증강 현실 디바이스가 3차원 위치 좌표계를 동기화하기 위해 획득하는 관절값을 설명하기 위한 도면이다.
도 7 및 도 8은 본 개시의 일 실시 예에 따른 증강 현실 디바이스가 3차원 위치 좌표계를 동기화하는 동작을 설명하기 위한 개념도들이다.
도 9는 본 개시의 일 실시 예에 따라 증강 현실 디바이스의 구체적인 동작 방법을 설명하기 위한 흐름도이다.
도 10 및 도 11은 본 개시의 일 실시 예에 따라 증강 현실 디바이스가 3차원 위치 좌표계를 동기화하기 위해 관절값을 매칭시키는 동작을 설명하기 위한 개념도들이다.
도 12 및 도 13은 본 개시의 일 실시 예에 따라 증강 현실 디바이스의 동작 방법을 설명하기 위한 흐름도들이다.
도 1은 본 개시의 일 실시 예에 따른 증강 현실 디바이스가 공간의 위치 좌표계를 동기화하는 동작을 도시한 개념도이다.
도 2는 본 개시의 일 실시 예에 따른 증강 현실 디바이스의 구성 요소를 도시한 블록도이다.
도 3은 본 개시의 일 실시 예에 따른 증강 현실 디바이스의 동작 방법을 도시한 흐름도이다.
도 4는 본 개시의 일 실시 예에 따른 증강 현실 디바이스의 동작 방법을 설명하기 위한 흐름도이다.
도 5는 본 개시의 일 실시 예에 따른 증강 현실 디바이스가 인식하는 공간 좌표계를 설명하기 위한 도면이다.
도 6은 본 개시의 일 실시 예에 따라 증강 현실 디바이스가 3차원 위치 좌표계를 동기화하기 위해 획득하는 관절값을 설명하기 위한 도면이다.
도 7 및 도 8은 본 개시의 일 실시 예에 따른 증강 현실 디바이스가 3차원 위치 좌표계를 동기화하는 동작을 설명하기 위한 개념도들이다.
도 9는 본 개시의 일 실시 예에 따라 증강 현실 디바이스의 구체적인 동작 방법을 설명하기 위한 흐름도이다.
도 10 및 도 11은 본 개시의 일 실시 예에 따라 증강 현실 디바이스가 3차원 위치 좌표계를 동기화하기 위해 관절값을 매칭시키는 동작을 설명하기 위한 개념도들이다.
도 12 및 도 13은 본 개시의 일 실시 예에 따라 증강 현실 디바이스의 동작 방법을 설명하기 위한 흐름도들이다.
본 명세서의 실시예들에서 사용되는 용어는 본 개시의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 실시예의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 명세서에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 명세서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다.
본 개시 전체에서 어떤 부분이 어떤 구성요소를 “포함”한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 본 명세서에 기재된 “...부”, “...모듈” 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
본 개시에서 사용된 표현 “~하도록 구성된(또는 설정된)(configured to)”은 상황에 따라, 예를 들면, “~에 적합한(suitable for)”, “~하는 능력을 가지는(having the capacity to)”, “~하도록 설계된(designed to)”, “~하도록 변경된(adapted to)”, “~하도록 만들어진(made to)”, 또는 “~를 할 수 있는(capable of)”과 바꾸어 사용될 수 있다. 용어 “~하도록 구성된(또는 설정된)”은 하드웨어적으로 “특별히 설계된(specifically designed to)” 것만을 반드시 의미하지 않을 수 있다. 대신, 어떤 상황에서는, “~하도록 구성된 시스템”이라는 표현은, 그 시스템이 다른 장치 또는 부품들과 함께 “~할 수 있는” 것을 의미할 수 있다. 예를 들면, 문구 “A, B, 및 C를 수행하도록 구성된(또는 설정된) 프로세서”는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU 또는 application processor)를 의미할 수 있다.
또한, 본 개시에서 일 구성요소가 다른 구성요소와 “연결된다” 거나 “접속된다” 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다.
본 개시에서, '증강 현실(Augmented Reality)'은 현실 세계(Real world)의 물리적 환경 공간 내에 가상 이미지를 함께 보여주거나 현실 객체와 가상 이미지를 함께 보여주는 것을 의미한다.
본 개시에서, '증강 현실 디바이스'는 증강 현실을 표현할 수 있는 장치로서, 일반적으로 사용자가 안면부(顔面部)에 착용하는 안경 형상의 증강 현실 안경 장치(Augmented Reality Glasses) 뿐만 아니라, 두부(頭部)에 착용하는 헤드 마운트 디스플레이 장치 (HMD : Head Mounted Display Apparatus)나, 증강 현실 헬멧(Augmented Reality Helmet) 등을 포괄한다. 그러나, 이에 한정되는 것은 아니고, 증강 현실 디바이스는 모바일 디바이스, 스마트 폰(smart phone), 노트북 컴퓨터(laptop computer), 데스크 탑, 태블릿 PC, 전자책 단말기, 디지털 방송용 단말기, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 네비게이션, MP3 플레이어, 캠코더, IPTV(Internet Protocol Television), DTV(Digital Television), 착용형 기기(wearable device) 등과 같은 다양한 전자 장치로 구현될 수 있다.
본 개시에서, '관절(joint)'은 뼈와 뼈가 서로 연결되는 인체의 부분으로서, 손가락, 손목, 손바닥 등 손 뿐만 아니라, 목, 팔, 어깨 등 상체에 포함되는 하나 이상의 부위를 나타낸다.
본 개시에서, '관절값'은 신체에 포함되는 복수의 관절에 관한 특징값을 나타낸다. 본 개시의 일 실시예에서, 관절값은 손가락, 손목, 손바닥, 목, 팔, 팔꿈치, 및 어깨에 포함되는 복수의 관절에 관한 3차원 위치 좌표값을 의미할 수 있다. 그러나, 이에 한정되는 것은 아니고, 다른 실시예에서 관절값은 상체에 포함되는 복수의 관절에 관한 3차원 위치 좌표값 뿐만 아니라, 관절의 각도값을 포함할 수도 있다.
본 개시에서, '기준 관절값'은 기준이 되는 외부 디바이스로부터 수신된, 복수의 관절들 중 적어도 하나의 관절에 관하여 기준이 되는 관절 위치 좌표값을 의미한다.
아래에서는 첨부한 도면을 참고하여 본 개시의 실시예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다.
이하에서는 도면을 참조하여 본 개시의 실시예들을 상세하게 설명한다.
도 1은 본 개시의 일 실시 예에 따른 증강 현실 디바이스(1000)가 공간의 위치 좌표계를 동기화하는 동작을 도시한 개념도이다. 참고적으로, 증강 현실 디바이스(1000)가, 촬영된 손의 위치 정보에 기초하여 외부 디바이스(2000)와 공간의 위치 좌표계를 동기화하는 방법의 동작을 도시한다.
도 1을 참조하면, 일 실시 예에 따른 증강 현실 디바이스(Augmented Reality Device; 100)는 사용자의 손(10)을 포함하는 제1 이미지(110)를 획득한다.
증강 현실 디바이스(1000)는 증강 현실(augmented reality, AR)을 표현할 수 있는 장치로서, 현실에 존재하는 물리적 대상체(physical object) 및 가상 대상체(virtual object)를 포함하는 이미지를 표시할 수 있다.
증강 현실 디바이스(1000)는 예를 들어, 사용자가 안면부에 착용하는 안경 형상의 증강 현실 안경 장치(augmented reality glasses), 두부에 착용하는 헤드 마운트 디스플레이 장치(head mounted display, HMD), 가상 현실 헤드셋(virtual reality headset, VRH), 또는 증강 현실 헬멧(augmented reality helmet) 등을 포함할 수 있다. 한편, 본 개시의 증강 현실 디바이스(1000)는 전술한 예시로 한정되는 것은 아니며, 사용자에게 가상 현실 서비스 또는 증강 현실 서비스를 제공하거나, 복수의 카메라를 이용해 손의 3차원 포즈(pose) 및 손의 제스처(gesture)를 인식하는 다양한 종류의 기기를 포함할 수 있다.
증강 현실 디바이스(1000)는 카메라를 포함할 수 있다. 증강 현실 디바이스(1000)는 카메라를 이용하여 사용자의 손(10)을 촬영함으로써, 이미지 프레임을 획득할 수 있다.
증강 현실 디바이스(1000)는 인공지능 모델(Artificial Intelligent model, AI model)을 이용하여 이미지 프레임으로부터 사용자의 손을 인식할 수 있다. 인공지능 모델은 딥 러닝(Deep Learning) 기반의 객체 인식 모델로 구성될 수 있다. 일 실시 예에서, 증강 현실 디바이스(1000)는 객체 인식 모델을 이용한 추론을 통해 이미지 프레임 각각으로부터 손을 인식할 수 있다.
그러나, 이에 한정되는 것은 아니고, 증강 현실 디바이스(1000)는 공지의 이미지 프로세싱(image processing) 기술을 이용하여 이미지 프레임으로부터 사용자의 손을 인식할 수 있다.
증강 현실 디바이스(1000)는 카메라를 이용하여 사용자의 손(10)을 촬영함으로써 제1 이미지(110)를 획득할 수 있다. 증강 현실 디바이스(1000)는 획득된 제1 이미지(110)로부터 손의 관절값을 획득할 수 있다.
본 개시에서 관절값은 신체에 포함되는 복수의 관절에 관한 특징값을 나타낸다. 예를 들어, 손의 관절값은 손에 포함된 복수의 관절의 관한 위치 좌표값을 의미할 수 있다.
증강 현실 디바이스(1000)는 외부 디바이스(2000)에 의해 획득된 사용자의 손(10)에 관한 외부 관절 데이터(210)를 획득할 수 있다. 외부 관절 데이터(210)는 사용자의 손(10)에 관한 기준 관절값을 포함할 수 있다.
본 개시에서 기준 관절값은 기준이 되는 외부 디바이스(2000)에 의해 측정된, 신체에 포함되는 복수의 관절에 관한 특징값을 나타낸다. 예를 들어, 손의 기준 관절값은 복수의 디바이스의 공간의 위치 좌표계를 동기화하기 위해, 손에 포함된 복수의 관절에 관해 기준이 되는 관절의 위치 좌표값을 의미할 수 있다.
본 개시의 일 실시예에서, 기준 관절값에 관한 정보는 증강 현실 디바이스의 메모리에 미리 저장되어 있을 수 있으나, 이에 한정되는 것은 아니다.
참고적으로, 사용자의 손(10)을 포함하는 제1 이미지(110) 와 사용자의 손(10)에 관한 외부 관절 데이터(210)는 동일한 사용자의 손에 대한 정보들이다.
증강 현실 디바이스(1000)는 제1 이미지(110)로부터 획득된 관절값과, 획득된 외부 관절 데이터(210)에 포함된 기준 관절값을 비교함으로써, 공간의 위치 좌표계를 동기화할 수 있다.
도 2는 본 개시의 일 실시 예에 따른 증강 현실 디바이스(1000)의 구성 요소를 도시한 블록도이다.
도 2를 참조하면, 증강 현실 디바이스(1000)는 카메라(1100), 통신 인터페이스(1200), 프로세서(1300), 메모리(1400), 및 디스플레이부(1500)를 포함할 수 있다. 카메라(1100), 통신 인터페이스(1200), 프로세서(1300), 메모리(1400), 및 디스플레이부(1500)는 각각 전기적 및/또는 물리적으로 서로 연결될 수 있다.
도 2에 도시된 구성 요소는 본 개시의 일 실시예에 따른 것일 뿐, 증강 현실 디바이스(1000)가 포함하고 있는 구성 요소가 도 2에 도시된 것으로 한정되는 것은 아니다. 증강 현실 디바이스(1000)는 도 2에 도시된 구성 요소 중 일부를 포함하지 않을 수 있고, 도 2에 도시되지 않은 구성 요소를 더 포함할 수도 있다.
카메라(1100)는 현실 공간을 촬영함으로써, 현실 공간 내의 현실 객체에 관한 이미지를 획득하도록 구성된다. 일 실시예에서, 카메라(1100)는 렌즈 모듈, 이미지 센서, 및 영상 처리 모듈을 포함할 수 있다. 카메라(1100)는 이미지 센서(예를 들어, CMOS 또는 CCD)에 의해 얻어지는 정지 이미지 또는 동영상을 획득할 수 있다. 영상 처리 모듈은 이미지 센서를 통해 획득된 정지 이미지 또는 동영상을 가공하여, 필요한 정보를 추출하고, 추출된 정보를 프로세서(1300)에 전달할 수 있다.
카메라(1100)는 예를 들어, 좌안 카메라 및 우안 카메라를 포함하고, 두 개의 카메라를 이용하여 촬영 대상체에 관한 3차원 입체 이미지를 획득하는 스테레오 카메라(Stereo camera)일 수 있다. 또는, 카메라(1100)는 두 개 이상의 카메라를 포함하고, 각각의 카메라를 이용하여 촬영 대상체에 관한 3차원 입체 데이터를 획득하는 다중 카메라(Multiple camera)일 수 있다.
일 실시예에서, 카메라(1100)는 프로세서(1300)의 제어에 의해 사용자의 손을 실시간으로 촬영함으로써, 이미지 프레임을 획득할 수 있다. 카메라(1100)는 획득된 이미지 프레임에 관한 데이터를 프로세서(1300)에 제공할 수 있다.
통신 인터페이스(1200)는 외부 디바이스, 또는 서버와 데이터 통신을 수행하도록 구성된다. 일 실시예에서, 통신 인터페이스(1200)는 근거리 무선 통신 모듈 및 이동 통신 모듈을 포함할 수 있다.
근거리 무선 통신 모듈(short-range wireless communication unit)은 무선 통신 네트워크를 이용하여 외부 디바이스 또는 서버와 연결하고, 데이터 송수신을 수행하도록 구성된다. 근거리 무선 통신 모듈은 예를 들어, 와이파이(WiFi), WFD(Wi-Fi Direct) 통신부, 블루투스 통신부, BLE(Bluetooth Low Energy) 통신부, NFC(Near Field Communication unit), 지그비(Zigbee) 통신부, Ant+ 통신부, 또는 마이크로 웨이브(μWave) 통신부 중 적어도 하나의 하드웨어 모듈로 구성될 수 있으나, 이에 한정되는 것은 아니다. 일 실시예에서, 근거리 무선 통신 모듈(1220)은 게이트웨이(gateway) 또는 라우터(router)를 통해 외부 서버와 데이터 통신을 수행할 수도 있다.
일 실시예에서, 증강 현실 디바이스(1000)는 와이파이(WiFi), WFD(Wi-Fi Direct), 블루투스(Bluetooth), BLE(Bluetooth Low Energy), NFC(Near Field Communication unit), 지그비(Zigbee), Ant+, 또는 마이크로 웨이브(μWave) 중 적어도 하나의 근거리 무선 통신 네트워크를 이용하여, 외부 디바이스와 데이터 송수신을 수행하고, 외부 디바이스에 의해 획득된 사용자의 손의 관절에 관한 기준 관절값을 수신할 수 있다.
이동 통신 모듈은 이동 통신망 상에서 기지국, 외부 디바이스, 또는 서버 중 적어도 하나와 무선 신호를 송수신하도록 구성되는 통신 모듈이다. 이동 통신 모듈은 예를 들어, 5G mmWave 통신, 5G Sub 6 통신, LTE(Long Term Evolution) 통신, 또는 3G 이동 통신 중 적어도 하나의 통신 방식을 이용하여 데이터를 송수신할 수 있다. 일 실시예에서, 이동 통신 모듈은 프로세서(1300)의 제어에 의해 서버와 데이터를 송수신할 수 있다.
프로세서(1300)는 메모리(1400)에 저장된 프로그램의 하나 이상의 명령어들(instructions)을 실행할 수 있다. 프로세서(1300)는 산술, 로직 및 입출력 연산과 시그널 프로세싱을 수행하는 하드웨어 구성 요소로 구성될 수 있다. 프로세서(1300)는 예를 들어, 중앙 처리 장치(Central Processing Unit), 마이크로 프로세서(microprocessor), 그래픽 프로세서(Graphic Processing Unit), ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), 및 FPGAs(Field Programmable Gate Arrays) 중 적어도 하나로 구성될 수 있으나, 이에 한정되는 것은 아니다.
도 2에는 프로세서(1300)가 하나의 엘리먼트로 도시되었으나, 이에 한정되는 것은 아니다. 일 실시예에서, 프로세서(1300)는 하나 또는 하나 이상의 복수 개로 구성될 수 있다.
일 실시예에서, 프로세서(1300)는 인공 지능(Artificial Intelligence; AI) 학습을 수행하는 AI 프로세서를 포함할 수 있다. 이 경우, AI 프로세서는 인공지능(AI) 시스템의 학습 네트워크 모델을 이용하여 사용자의 손을 인식할 수 있다. AI 프로세서는, 인공 지능(AI)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 증강 현실 디바이스(1000) 내의 프로세서(1300)에 탑재될 수 있다.
메모리(1400)에는 증강 현실 디바이스(1000)가 사용자의 손의 관절에 관한 위치 정보를 획득하기 위한 애플리케이션을 구성하는 명령어들(instructions)이 저장될 수 있다. 일 실시예에서, 메모리(1400)에는 프로세서(1300)가 판독할 수 있는 명령어들 및 프로그램 코드(program code)가 저장될 수 있다. 이하의 실시예에서, 프로세서(1300)는 메모리(1400)에 저장된 명령어들 또는 프로그램 코드들을 실행함으로써 구현될 수 있다.
메모리(1400)는 예를 들어, 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 램(RAM, Random Access Memory) SRAM(Static Random Access Memory), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 또는 광 디스크 중 적어도 하나의 타입의 저장매체로 구성될 수 있다. 일 실시예에서, 증강 현실 디바이스(1000)는 네트워크를 통해 접속 가능하고, 저장 기능을 수행하는 웹 스토리지(web storage) 또는 클라우드 서버를 운영할 수도 있다.
프로세서(1300)는 메모리(1400)에 저장된 명령어들 또는 프로그램 코드들을 실행함으로써 이하의 실시예들을 구현할 수 있다.
프로세서(1300)는 카메라(1100)로부터 사용자의 손에 관한 이미지 프레임을 획득할 수 있다. 일 실시예에서, 카메라(1100)는 현실 공간 내의 사용자의 손을 실시간으로 촬영함으로써 이미지 프레임을 획득하고, 획득된 이미지 프레임을 프로세서(1300)에 제공할 수 있다.
프로세서(1300)는 이미지 프레임으로부터 사용자의 손을 인식할 수 있다. 일 실시예에서, 프로세서(1300)는 인공지능 모델(Artificial Intelligent model, AI model)을 이용하여 이미지 프레임으로부터 손을 인식할 수 있다. '인공지능 모델'은 카메라(1100)로부터 입력받은 이미지 데이터로부터 객체를 인식하고, 객체를 타입에 따라 분류(classify)하도록 학습된 심층 신경망 모델을 포함할 수 있다. 인공지능 모델은 메모리(1400)에 저장될 수 있지만, 이에 한정되는 것은 아니다. 일 실시예에서, 인공지능 모델은 외부 서버에 저장되어 있고, 증강 현실 디바이스(1000)는 서버에 이미지 데이터를 전송하고, 서버의 인공지능 모델로부터 추론 결과인 객체의 타입에 관한 정보를 수신할 수도 있다.
인공지능 모델은 수만 내지 수억장의 이미지를 입력 데이터로 적용하고, 이미지에 포함되는 객체의 라벨값(label)을 출력 정답값(groundtruth)로 적용하여 학습된(trained) 모델 파라미터로 구성되는 심층 신경망 모델(Deep Neural Network)을 포함할 수 있다. 심층 신경망 모델은 예를 들어, 컨볼루션 신경망 모델(Convolutional Neural Network; CNN), 순환 신경망 모델(Recurrent Neural Network; RNN), RBM(Restricted Boltzmann Machine), DBN(Deep Belief Network), BRDNN(Bidirectional Recurrent Deep Neural Network) 및 심층 Q-네트워크 (Deep Q-Networks) 중 적어도 하나를 포함할 수 있다. 그러나, 인공지능 모델이 심층 신경망 모델만을 포함하는 것은 아니고, SVM(Support Vector Machine), 선형 회귀(linear regression), 로지스틱 회귀(logistic regression), 나이브 베이즈 분류(Naive Bayes), 랜덤 포레스트(random forest), decision tree, 또는 k-nearest neighbor algorithm 중 적어도 하나로 구성될 수도 있다.
프로세서(1300)는 인공지능(AI) 프로세서를 포함할 수 있다. 인공 지능(AI) 프로세서는, 인공 지능(AI)을 위한 전용 하드웨어 칩 형태로 구성될 수도 있고, 범용 프로세서(예를 들어, CPU 또는 애플리케이션 프로세서) 또는 그래픽 전용 프로세서(예를 들어, GPU)의 일부로서 프로세서(1300)에 포함될 수 있다. 인공지능 프로세서는 인공지능 모델을 이용하여, 카메라(1100)를 통해 획득된 이미지 프레임으로부터 사용자의 손을 인식할 수 있다.
프로세서(1300)는 인공지능 모델을 이용하여 인식된 손에 포함된 복수의 특징점에 관한 위치 정보를 획득할 수 있다. 일 실시예예서, '특징점(keypoint, feature point)'은 이미지 내에서 주위 배경과 구분되거나 식별이 용이한 지점을 의미하고, 손의 경우 복수의 특징점은 손에 포함된 복수의 관절일 수 있다. 일 실시예에서, 프로세서(1300)는 이미지 프레임으로부터의 손의 인식 결과에 따라 손에 포함된 복수의 관절의 x축, y축 및 z축에 관한 위치 정보인 3차원 위치 좌표값인 관절값을 획득할 수 있다. 프로세서(1300)는 카메라(1100)를 이용하여 손을 촬영함으로써 획득된 이미지로부터 손의 관절값을 획득할 수 있다.
외부 디바이스가 손을 인식하는 방법은 다양할 수 있다. 예를 들어, 인식하고자 하는 손에 포함된 복수의 특징점을 설정하는 방법에 따라, 외부 디바이스가 획득하는 관절의 위치 좌표값은, 증강 현실 디바이스(1000)가 획득하는 대응되는 관절의 위치 좌표값들과 매칭되지 않을 수 있다. 따라서, 프로세서(1300)는 통신 인터페이스(1200)를 통해 외부 디바이스로부터 수신된 기준 관절값을 증강 현실 디바이스(1000)의 타입 정보에 기초하여 변환할 수 있다.
증강 현실 디바이스(1000)의 타입 정보에 따라, 손을 인식하는 방법, 프로그램 등은 다양할 수 있다. 즉, 예를 들어, 외부 디바이스와 증강 현실 디바이스(1000)의 타입 정보가 서로 다름에 따라, 외부 디바이스와 증강 현실 디바이스(1000)가 동시에 동일한 손을 인식하더라도, 획득한 손에 대한 정보의 종류가 다를 수 있다.
예를 들어, 증강 현실 디바이스(1000)는 사용자의 손의 제1 관절에 관한 위치 좌표값을 획득할 수 있고 사용자의 손의 제2 관절에 관한 위치 좌표값을 획득하지 않을 수 있으나, 외부 디바이스(2000)는 사용자의 손의 제1 관절에 관한 위치 좌표값을 획득하지 않을 수 있고 사용자의 손의 제2 관절에 관한 위치 좌표값을 획득할 수 있다. 따라서, 외부 디바이스(2000)에 의해 제1 관절에 관한 위치 좌표값은 획득되지 않더라도, 증강 현실 디바이스(1000)는 외부 디바이스(2000)에 의해 획득된 제2 관절에 관한 위치 좌표값(즉, 기준 관절값)을 통해 제1 관절에 관한 위치 좌표값(즉, 변환된 기준 관절값)을 획득할 수 있다.
따라서, 증강 현실 디바이스(1000)는 외부 디바이스에 의해 획득된 손 인식 정보를 수신하여, 수신한 손 인식 정보를 증강 현실 디바이스(1000)의 타입 정보에 기초하여 변환할 수 있다.
증강 현실 디바이스(1000)의 타입 정보는 디바이스에 따라 손을 인식하는 스타일에 관한 것일 수 있다. 예를 들어, 디바이스에 따라 사용자의 손의 특징점, 즉, 특징이 되는 복수의 주요 관절을 설정하는 방식이 다를 수 있다. 따라서, 동일한 사용자의 손을 인식하는 경우라 하더라도, 증강 현실 디바이스(1000)에 의해 획득된 위치 좌표값에 대응되는 복수의 관절은, 외부 디바이스(2000)에 의해 획득된 위치 좌표값에 대응되는 복수의 관절에 대응되지 않을 수 있다.
예를 들어, 증강 현실 디바이스(1000)의 타입 정보는 MRTK 스타일, nreal 스타일, 또는 공지의 관절 설정 방식 중 적어도 하나를 포함할 수 있으나, 이는 예시일 뿐, 본 개시의 기술적 사상은 이에 한정되지 않는다.
프로세서(1300)는 획득된 관절값을 기준 관절값에 매칭시킬 수 있다. 프로세서(1300)는 매칭된 관절값에 기초하여 증강 현실 디바이스(1000)의 3차원 위치 좌표계를 외부 디바이스의 3차원 위치 좌표계와 동기화할 수 있다. 프로세서(1300)는 획득된 복수의 관절값을 복수의 기준 관절값에 각각 매칭시킬 수 있고, 매칭된 관절값들에 기초하여, 증강 현실 디바이스(1000)의 3차원 위치 좌표계를 외부 디바이스의 3차원 위치 좌표계와 동기화할 수 있다. 증강 현실 디바이스(1000)의 3차원 위치 좌표계를 동기화하는 구체적인 실시예에 대해서는 도 10 및 도 11에서 상세하게 설명하기로 한다.
전술한 실시예에서, 프로세서(1300)는 인공지능 모델을 이용하여 사용자의 손을 인식하고, 인식된 손에 포함된 복수의 관절에 관한 3차원 위치 좌표값을 획득한다고 기재하였지만, 본 개시가 상술한 실시예로 한정되는 것은 아니다. 다른 실시예에서, 프로세서(1300)는 공지의 이미지 프로세싱(image processing) 기술을 이용하여 이미지 프레임으로부터 사용자의 손을 인식하고, 손에 포함된 복수의 관절에 관한 3차원 위치 좌표값을 획득할 수 있다.
일 실시예에서, 프로세서(1300)는 복수의 관절에 관한 3차원 위치 좌표값인 관절값을 나타내는 그래픽 UI(Graphic User Interface)를 디스플레이부(1500) 상에 디스플레이할 수 있다. 또한, 프로세서(1300)는 통신 인터페이스(1200)를 통해 외부 디바이스로부터 수신한 기준 관절값을 나타내는 그래픽 UI를 디스플레이부(1500) 상에 디스플레이할 수 있다.
디스플레이부(1500)는 카메라(1100)를 통해 촬영된 이미지 프레임을 디스플레이하도록 구성된다. 디스플레이부(1500)는 이미지 프레임으로부터 인식된 사용자의 손을 나타내는 영역에 마커(marker)를 표시할 수 있다. 일 실시예에서, 디스플레이부(1500)는 프로세서(1300)의 제어에 의해 손에 포함된 복수의 관절을 나타내는 그래픽 UI를 디스플레이할 수 있다.
예를 들어, 증강 현실 디바이스(1000)가 안경 형태의 증강 현실 안경 장치(Augmented Reality Glasses)인 경우, 디스플레이부(1500)는 렌즈, 웨이브가이드(waveguide), 및 광학 모듈(예컨대, 프로젝터)을 포함할 수 있다.
그러나, 이에 한정되는 것은 아니고, 디스플레이부(1500)는 액정 디스플레이(liquid crystal display), 박막 트랜지스터 액정 디스플레이(thin film transistor-liquid crystal display), 유기 발광 다이오드(organic light-emitting diode, OLED), 플렉시블 디스플레이(flexible display), 3차원 디스플레이(3D display), 전기영동 디스플레이(electrophoretic display) 중에서 적어도 하나를 포함하는 물리적 장치로 구성될 수 있다. 일 실시예에서, 디스플레이부(1500)는 터치 인터페이스를 포함하는 터치스크린으로 구성될 수도 있다. 디스플레이부(1500)가 터치스크린으로 구성되는 경우, 디스플레이부(1500)는 터치 패널로 구성되는 사용자 입력부와 통합되는 구성 요소일 수 있다.
도 3은 본 개시의 일 실시 예에 따른 증강 현실 디바이스(1000)의 동작 방법을 도시한 흐름도이다. 도 4는 본 개시의 일 실시 예에 따른 증강 현실 디바이스(1000)의 동작 방법을 설명하기 위한 흐름도이다. 이하에서는, 도 3과 도 4를 함께 참조하여 증강 현실 디바이스(1000)의 동작 방법을 설명한다.
설명의 편의상, 도 1을 이용하여 설명한 것과 중복되는 것은 간략히 하거나 생략한다.
단계 S310에서, 증강 현실 디바이스(1000)는 카메라를 이용하여 손을 촬영함으로써 획득된 이미지로부터 손의 관절값을 획득할 수 있다.
도 4를 함께 참조하면, 도 3의 단계 S310은 도 4의 단계 S410에 대응될 수 있다. 단계 S410에서, 증강 현실 디바이스(1000)는 제1 이미지(110)로부터 사용자의 손(10)에 포함된 복수의 관절의 위치에 관한 위치 좌표값인 관절값(J1)을 획득할 수 있다. 획득된 관절값(J1)은, 사용자의 손(10)에 포함된 복수의 관절 중 적어도 하나의 관절의 위치에 관한 위치 좌표값을 포함할 수 있다.
획득된 관절값(J1)은 하나의 관절에 대응되는 것으로 도시되었으나, 이에 한정되지 않으며, 제1 관절에 대응되는 제1 관절값, 제2 관절에 대응되는 제2 관절값 및 제3 관절에 대응되는 제3 관절값 중 적어도 하나를 포함할 수 있다.
관절값(J1)은 손가락, 손목 및 손바닥에 포함되는 복수의 관절들 중 하나의 위치 좌표값일 수 있다. 제1 관절값은 검지 기절골에 대응되는 관절의 위치 좌표값일 수 있고, 제2 관절값은 엄지 기절골에 대응되는 관절 위치 좌표값일 수 있고, 제3 관절값은 검지 중절골에 대응되는 관절 위치 좌표값일 수 있다.
관절값(J1)은 공간 내 기설정된 제1 원점에 대한 복수의 관절들의 위치 좌표값 중 적어도 하나를 포함할 수 있다.
단계 S320에서, 증강 현실 디바이스(1000)는 외부 디바이스로부터, 외부 디바이스에 의해 획득된 사용자의 손의 관절에 관한 기준 관절값(R1)을 수신할 수 있다.
도 4를 함께 참조하면, 도 3의 단계 S320은 도 4의 단계 S420에 대응될 수 있다. 단계 S420에서, 증강 현실 디바이스(1000)는 외부 디바이스(2000)에 의해 획득된 사용자의 손(10)에 관한 외부 관절 데이터 (210)를 획득할 수 있다. 증강 현실 디바이스(1000)는 통신 인터페이스를 통해 외부 디바이스(2000)로부터 외부 관절 데이터(210)를 수신할 수 있다.
증강 현실 디바이스(1000)는 수신된 외부 관절 데이터(210)에 포함된 사용자의 손(10)의 복수의 관절의 위치에 관한 위치 좌표값인 기준 관절값(R1)을 획득할 수 있다. 특히, 기준 관절값(R1)은 증강 현실 디바이스(1000)가 공간의 위치 좌표계를 동기화하기 위해 기준이 되는 외부 디바이스(2000)에 의해 측정되는 관절값일 수 있다. 획득된 기준 관절값(R1)은, 사용자의 손(10)에 포함된 복수의 관절 중 적어도 하나의 관절의 위치에 관한 위치 좌표값을 포함할 수 있다. 외부 디바이스(2000)에 의해 측정된 복수의 관절의 위치에 관한 기준 관절값(R1)은, 증강 현실 디바이스(1000)에 의해 측정된 복수의 관절의 위치에 관한 관절값(J1)과 서로 대응될 수 있다.
기준 관절값(R1)은 하나의 관절에 대응되는 것으로 도시되었으나, 이에 한정되지 않으며, 제1 관절에 대응되는 제1 기준 관절값, 제2 관절에 대응되는 제2 기준 관절값 및 제3 관절에 대응되는 제3 기준 관절값 중 적어도 하나를 포함할 수 있다.
기준 관절값(R1)은 손가락, 손목 및 손바닥에 포함되는 복수의 관절들 중 하나의 위치 좌표값일 수 있다. 제1 기준 관절값은 검지 기절골에 대응되는 관절의 위치 좌표값일 수 있고, 제2 기준 관절값은 엄지 기절골에 대응되는 관절 위치 좌표값일 수 있고, 제3 기준 관절값은 검지 중절골에 대응되는 관절 위치 좌표값일 수 있다.
기준 관절값(R1)은 공간 내 외부 디바이스 기준으로 기설정된 제2 원점에 대한 복수의 관절들의 위치 좌표값 중 적어도 하나를 포함할 수 있다.
도 4를 함께 참조하면, 단계 S430에서, 증강 현실 디바이스(1000)는 수신된 기준 관절값(R1_a)을 증강 현실 디바이스(1000)의 타입 정보에 기초하여 변환 함으로써, 변환된 기준 관절값(R1_b)을 획득할 수 있다. 기준 관절값(R1_a)은 단계 S420의 기준 관절값(R1)과 동일할 수 있다.
증강 현실 디바이스(1000) 및 외부 디바이스(2000)를 포함하는 웨어러블 디바이스가 사용자의 손의 자세(형태) 및 동작을 인식하는 방법은 다양할 수 있다. 예를 들어, 사용자의 손의 특징점을 설정하는 방식이 달라질 수 있으므로, 관절의 위치에 관한 위치 좌표값인 관절값은 디바이스의 타입에 따라 오차가 있을 수 있다. 따라서, 증강 현실 디바이스(1000)에 의해 측정된 관절값(J1)을 외부 디바이스(2000)에 의해 측정된 기준 관절값(R1)에 매칭시키기 위해, 증강 현실 디바이스(1000)는 기준 관절값(R1_a)을 증강 현실 디바이스(1000)의 타입 정보에 기초하여 변환함으로써, 변환된 기준 관절값(R1_b)을 획득할 수 있다.
단계 S330에서, 증강 현실 디바이스(1000)는 획득된 관절값을 기준 관절값과 매칭시킬 수 있다.
도 4를 함께 참조하면, 도 3의 단계 S330은 도 4의 단계 S440에 대응될 수 있다. 단계 S440에서, 증강 현실 디바이스(1000)는 측정된 관절값(J2)을, 외부 디바이스(2000)에 의해 측정된 기준 관절값(R2)과 매칭시킬 수 있다. 관절값(J2)은 단계 S410의 관절값(J1)과 동일할 수 있고, 기준 관절값(R2)은 단계 S430의 변환된 기준 관절값(R1_b)과 동일할 수 있다.
복수의 관절은 제1 관절, 제2 관절 및 제3 관절 중 적어도 하나를 포함할 수 있다. 증강 현실 디바이스(1000)는 제1 관절에 대응되는 제1 관절값을 제1 관절에 대응되는 제1 기준 관절값과 매칭시킬 수 있고, 제2 관절에 대응되는 제2 관절값을 제2 관절에 대응되는 제2 기준 관절값과 매칭시킬 수 있고, 제3 관절에 대응되는 제3 관절값을 제3 관절에 대응되는 제3 기준 관절값과 매칭시킬 수 있다. 여기서, 관절값(J2)을 기준 관절값(R2)과 매칭시킨다는 의미는, 관절값의 위치 좌표값이 기준 관절값의 위치 좌표값에 일치하도록, 관절값의 위치 좌표값을 변경시키는 것을 의미할 수 있다.
증강 현실 디바이스(1000)는 기준 관절값(R2)과 획득된 관절값(J2)의 차이에 기초하여, 증강 현실 디바이스(1000)에 의해 인식된 사용자의 손과 외부 디바이스에 의해 인식된 사용자의 손의 차이에 대한 보정값을 획득할 수 있다. 증강 현실 디바이스(1000)는 보정값을 획득된 관절값(J2)에 적용하여, 획득된 관절값(J2)을 변경할 수 있다.
여기서, 보정값은 사용자의 손의 크기에 관한 크기 보정값을 포함할 수 있다. 증강 현실 디바이스(1000)는 제1 기준 관절값과 제1 관절값을 동일 위치로 매칭시킬 수 있다. 증강 현실 디바이스(1000)는 제2 기준 관절값과 제2 관절값을 비교하여, 증강 현실 디바이스(1000)에 의해 인식된 사용자의 손과 외부 디바이스(2000)에 의해 인식된 사용자의 손의 크기 차이에 대한 크기 보정값을 획득할 수 있다. 증강 현실 디바이스(1000)는 크기 보정값을 획득된 관절값(J2)에 적용하여, 획득된 관절값(J2)을 변경할 수 있다.
또한, 보정값은 사용자의 손의 각도에 관한 제1 각도 보정값을 포함할 수 있다. 증강 현실 디바이스(1000)는 제1 기준 관절값과 제1 관절값을 동일 위치로 매칭시킬 수 있다. 증강 현실 디바이스(1000)는 제2 기준 관절값과 제2 관절값을 비교하여, 증강 현실 디바이스(1000)에 의해 인식된 사용자의 손과 외부 디바이스(2000)에 의해 인식된 사용자의 손의 각도 차이에 대한 제1 각도 보정값을 획득할 수 있다. 증강 현실 디바이스(1000)는 제1 각도 보정값을 획득된 관절값(J2)에 적용하여, 획득된 관절값(J2)을 변경할 수 있다.
또한, 보정값은 사용자의 손의 각도에 관한 제2 각도 보정값을 포함할 수 있다. 증강 현실 디바이스(1000)는 제1 기준 관절값과 제1 관절값을 동일 위치로 매칭시킬 수 있다. 증강 현실 디바이스(1000)는 제2 기준 관절값과 제2 관절값을 동일 위치로 매칭시킬 수 있다. 증강 현실 디바이스(1000)는 제3 기준 관절값과 제3 관절값을 비교하여, 증강 현실 디바이스에 의해 인식된 사용자의 손과 외부 디바이스에 의해 인식된 사용자의 손의 각도 차이에 대한 제2 각도 보정값을 획득할 수 있다. 증강 현실 디바이스(1000)는 제2 각도 보정값을 획득된 관절값(J2)에 적용하여, 획득된 관절값(J2)을 변경할 수 있다.
단계 S340에서, 증강 현실 디바이스(1000)는 매칭된 관절값에 기초하여, 증강 현실 디바이스(1000)의 3차원 위치 좌표계를 외부 디바이스의 3차원 위치 좌표계와 동기화할 수 있다.
도 4를 함께 참조하면, 도 3의 단계 S340은 도 4의 단계 S450에 대응될 수 있다. 단계 S450에서, 증강 현실 디바이스(1000)는 매칭된 관절값에 기초하여, 증강 현실 디바이스(1000)의 3차원 위치 좌표계를 외부 디바이스(2000)의 위치 좌표계와 동기화할 수 있다.
증강 현실 디바이스(1000)는 손에 포함된 복수의 관절에 관한 관절값(J2)을 기준 관절값(R2)에 매칭시킴으로써, 증강 현실 디바이스(1000) 기준의 3차원 위치 좌표계를 외부 디바이스(2000)의 위치 좌표계와 동기화할 수 있다. 증강 현실 디바이스(1000)가 복수인 경우, 복수의 증강 현실 디바이스(1000)들은 손에 포함된 복수의 관절에 관한 관절값(J2)을 기준 관절값(R2)에 매칭시킴으로써, 복수의 증강 현실 디바이스(1000)들 각각의 3차원 위치 좌표계들을 외부 디바이스(2000)의 위치 좌표계와 각각 동기화할 수 있다.
증강 현실 디바이스(1000)는 복수의 관절에 관한 관절값(J2)을 기준 관절값(R2)에 매칭시킬 수 있다. 동시에, 증강 현실 디바이스(1000)는 매칭된 관절값에 기초하여, 제1 원점의 3차원 위치 좌표값을 제2 원점의 3차원 위치 좌표값과 일치하도록 제1 원점의 3차원 위치 좌표값을 재설정할 수 있다. 여기서, 제1 원점은 증강 현실 디바이스(1000)의 공간 좌표계 상의 원점을 의미하고, 제2 원점은 외부 디바이스(2000)의 공간 좌표계 상의 원점을 의미한다. 즉, 증강 현실 디바이스(1000)는 증강 현실 디바이스(1000)의 공간 좌표계와 외부 디바이스(2000)의 공간 좌표계가 일치되도록, 공간 좌표계를 동기화할 수 있다.
관절값(J2)을 기준 관절값(R2)과 매칭시키고, 매칭된 관절값에 기초하여 3차원 위치 좌표계를 동기화하는 방법에 관해 구체적인 사항은 도 10 및 도 11을 이용하여 후술한다.
도 5는 본 개시의 일 실시 예에 따른 증강 현실 디바이스(1000)가 인식하는 공간 좌표계를 설명하기 위한 도면이다.
참고적으로, 도 5는 증강 현실 디바이스(1000)가 인식하는 제1 공간 좌표계(A1)와, 외부 디바이스(2000)가 인식하는 제2 공간 좌표계(A2)가 동기화되지 않은 상태를 설명하기 위한 도면이다. 설명의 편의상, 도 1 내지 도 4를 이용하여 설명한 것과 중복되는 것은 생략한다.
도 5를 참조하면, 일 실시 예에 따른 증강 현실 디바이스(1000)는 제1 공간 좌표계(A1)를 통해, 공간을 인식할 수 있다.
제1 공간 좌표계(A1)는 제1 원점(O1)을 기준으로 형성된 공간 좌표계일 수 있다. 증강 현실 디바이스(1000)는 제1 공간 좌표계(A1) 내에서, 증강 현실 디바이스의 위치 좌표값(101)을 (x, y, z)로 획득할 수 있다. 즉, 증강 현실 디바이스(1000)는 증강 현실 디바이스(1000)가 제1 원점(O1)로부터 제1 축으로 x만큼, 제2 축으로 y만큼, 제3 축으로 z만큼 이격된 거리에 위치하는 것으로 인식할 수 있다.
증강 현실 디바이스(1000)는 제1 공간 좌표계(A1) 내에서, 사용자의 손의 위치 좌표값(11)을 (Hx, Hy, Hz)로 획득할 수 있다. 즉, 증강 현실 디바이스(1000)는 사용자의 손(10)이 제1 원점(O1)으로부터 제1 축으로 Hx만큼, 제2 축으로 Hy만큼, 제3 축으로 Hz만큼 이격된 거리에 위치하는 것으로 인식할 수 있다.
이에 반해, 외부 디바이스(2000)는 제2 공간 좌표계(A2)를 통해, 공간을 인식할 수 있다. 제2 공간 좌표계(A2)는 제1 공간 좌표계(A1)와 다를 수 있다.
제2 공간 좌표계(A2)는 제2 원점(O2)을 기준으로 형성된 공간 좌표계일 수 있다. 외부 디바이스(2000)는 제2 공간 좌표계(A2) 내에서, 외부 디바이스의 위치 좌표값(102)을 (x', y', z')로 획득할 수 있다. 즉, 외부 디바이스(2000)는 외부 디바이스(2000)가 제2 원점(O2)로부터 제1 축으로 x'만큼, 제2 축으로 y'만큼, 제3 축으로 z'만큼 이격된 거리에 위치하는 것으로 인식할 수 있다.
외부 디바이스(2000)는 제2 공간 좌표계(A2) 내에서, 사용자의 손의 위치 좌표값(12)을 (Hx', Hy', Hz')로 획득할 수 있다. 즉, 외부 디바이스(2000)는 사용자의 손의 위치 좌표값(12)이 제2 원점(O2)으로부터 제1 축으로 Hx'만큼, 제2 축으로 Hy'만큼, 제3 축으로 Hz'만큼 이격된 거리에 위치하는 것으로 인식할 수 있다.
따라서, 증강 현실 디바이스(1000)를 착용한 사용자와 외부 디바이스(2000)를 착용한 사용자가 동일한 손(10)을 보더라도, 사용자의 손(10)이 서로 다른 위치에 있는 것으로 판단할 가능성이 있다. 하나의 증강 현실을 다수의 사용자가 공유하고자 하는 경우, 증강 현실 디바이스(1000)는 인식된 제1 공간 좌표계(A1)를 수신된 제2 공간 좌표계(A2)와 동기화할 필요가 있다.
도 6은 본 개시의 일 실시 예에 따라 증강 현실 디바이스(1000)가 3차원 위치 좌표계를 동기화하기 위해 획득하는 관절값을 설명하기 위한 도면이다.
도 6을 참조하면, 일 실시 예에 따라 관절값은 신체에 포함되는 관절에 관한 특징값을 나타낸다. 관절값은 손가락, 손목, 손바닥, 목, 팔, 팔꿈치, 및 어깨에 포함되는 복수의 관절들 중 하나에 관한 관절 각도값이나 관절의 3차원 위치 좌표값을 포함할 수 있다.
본 개시에서, 관절은 뼈와 뼈가 서로 연결되는 인체의 부분으로서, 손가락, 손목, 손바닥 등 손 뿐만 아니라, 목, 팔, 어깨 등 상체에 포함되는 하나 이상의 부위를 나타낸다. 도 6에서는 손에 포함된 관절을 기준으로 설명한다.
본 개시에서 관절은 손목뼈(수근골; 5), 손허리뼈(중수골; 4), 첫마디뼈(기절골; 3), 중간마디뼈(중절골; 2) 및 끝마디뼈(말절골; 1) 중 적어도 두 뼈가 서로 연결되는 인체의 부분을 포함할 수 있다. 또한, 관절은 손목뼈(수근골; 5)와 아래팔뼈(요골 및 척골)가 서로 연결되는 인체의 부분 및, 끝마디뼈(말절골; 1)의 끝단을 포함할 수 있다.
예를 들어, 관절은 손허리뼈(중수골; 4)와 첫마디뼈(기절골; 3)가 서로 연결되는 인체의 부분, 첫마디뼈(기절골; 3)와 중간마디뼈(중절골; 2)가 서로 연결되는 인체의 부분, 중간마디뼈(중절골; 2)와 끝마디뼈(말절골; 1)가 서로 연결되는 인체의 부분 및 끝마디뼈(말절골; 1)의 끝단에 해당하는 인체의 부분을 포함할 수 있다.
증강 현실 디바이스(1000)가 3차원 위치 좌표계를 동기화하기 위해 획득하는 관절값은 도 6에 도시된 관절들의 3차원 위치 좌표값을 포함할 수 있다.
특히, 증강 현실 디바이스(1000)가 3차원 위치 좌표계를 동기화하기 위해 획득하는 관절값은 제1 관절(P1), 제2 관절(P2) 및 제3 관절(P3)의 3차원 위치 좌표값을 포함할 수 있다. 도 6에서, 관절값은 제1 관절(P1), 제2 관절(P2) 및 제3 관절(P3)을 중심으로 설명되지만, 또다른 관절에 대한 관절값을 포함할 수 있음은 물론이다.
제1 관절(P1)은 검지 첫마디뼈(기절골; 3)와 손허리뼈(중수골; 4)가 서로 연결되는 인체의 부분일 수 있다. 제2 관절(P2)은 엄지 첫마디뼈(기절골; 3)와 손허리뼈(중수골; 4)가 서로 연결되는 인체의 부분일 수 있다. 제3 관절(P3)은 검지 중간마디뼈(중절골; 2)와 첫마디뼈(기절골; 3)가 서로 연결되는 인체의 부분일 수 있다.
참고적으로, 도 6은 도 7, 도 11 및 도 12에서 관절값을 기준 관절값과 매칭시키는 동작을 구체적으로 설명하기 위해 도시된 도면이다. 따라서, 도 7, 도 11 및 도 12에서, 도 6을 참고하여 관절값을 기준 관절값과 매칭시키는 동작을 구체적으로 후술한다.
도 7 및 도 8은 본 개시의 일 실시 예에 따른 증강 현실 디바이스(1000)가 3차원 위치 좌표계를 동기화하는 동작을 설명하기 위한 개념도들이다.
도 6 및 도 7을 함께 참조하면, 일 실시 예에 따른 증강 현실 디바이스(1000)는 외부 디바이스(2000)에 의해 획득된 사용자의 손(10)에 관한 외부 관절 데이터(210)를 획득할 수 있다. 증강 현실 디바이스(1000)는 수신된 외부 관절 데이터(210)에 포함된 사용자의 손(10)의 복수의 관절의 위치에 관한 위치 좌표값인 기준 관절값을 획득할 수 있다. 기준 관절값은 제1 관절(P1)에 대응되는 제1 기준 관절값(R1_7), 제2 관절(P2)에 대응되는 제2 기준 관절값(R2_7) 및 제3 관절(P3)에 대응되는 제3 기준 관절값(R3_7)을 포함할 수 있다.
증강 현실 디바이스(1000)는 제1 관절(P1), 제2 관절(P2) 및 제3 관절(P3)의 위치에 관한 위치 좌표값인 기준 관절값(R1_7, R2_7, R3_7)을 획득할 수 있다. 기준 관절값은 외부 디바이스(2000)의 스케일에 따라 결정될 수 있다. 외부 디바이스(2000)의 스케일이 클수록, 증강 현실 디바이스(1000)는 사용자의 손(10)의 크기를 크게 인식할 수 있다. 예를 들어, 외부 디바이스(2000)의 스케일이 클수록, 증강 현실 디바이스(1000)는 제1 관절(P1) 및 제2 관절(P2)의 거리가 멀게 인식할 수 있다.
구체적으로, 외부 디바이스(2000)의 스케일에 기초하여, 증강 현실 디바이스(1000)는 1cm의 거리는 제1 길이(L1)로 인식할 수 있다. 외부 디바이스(2000)의 스케일에 기초하여, 증강 현실 디바이스(1000)는 제1 관절(P1), 제2 관절(P2) 및 제3 관절(P3)의 위치에 관한 위치 좌표값인 기준 관절값(R1_7, R2_7, R3_7)을 수신할 수 있다. 예를 들어, 증강 현실 디바이스(1000)가 외부 디바이스(2000)에 의해 제1 관절(P1)과 제2 관절(P2) 사이의 거리가 5cm로 측정된 기준 관절값(R1_7, R2_7, R3_7)을 수신하는 경우, 증강 현실 디바이스(1000)가 인식하는 기준 관절값(R1_7, R2_7, R3_7)에 기초한 제1 관절(P1)과 제2 관절(P2) 사이의 거리는, 제1 길이(L1)의 5배일 수 있다.
일 실시 예에 따른 증강 현실 디바이스(1000)는 사용자의 손(10)을 포함하는 제1 이미지(110)를 획득할 수 있다. 증강 현실 디바이스(1000)는 획득된 제1 이미지(110)로부터 사용자의 손(10)에 포함된 복수의 관절의 위치에 관한 위치 좌표값인 관절값을 획득할 수 있다.
도 6을 함께 참조하면, 증강 현실 디바이스(1000)는 제1 관절(P1), 제2 관절(P2) 및 제3 관절(P3)의 위치에 관한 위치 좌표값인 관절값(J1_7, J2_7, J3_7)을 획득할 수 있다. 관절값은 제1 관절(P1)에 대응되는 제1 관절값(J1_7), 제2 관절(P2)에 대응되는 제2 관절값(J2_7) 및 제3 관절(P3)에 대응되는 제3 관절값(J3_7)을 포함할 수 있다.
관절값은 증강 현실 디바이스(1000)의 스케일에 따라 결정될 수 있다. 증강 현실 디바이스(1000)의 스케일이 클수록, 증강 현실 디바이스(1000)는 제1 이미지(110)에 포함된 사용자의 손(10)을 크게 인식할 수 있다. 예를 들어, 증강 현실 디바이스(1000)의 스케일이 클수록, 증강 현실 디바이스(1000)는 제1 관절(P1) 및 제2 관절(P2)의 거리를 멀게 인식할 수 있다.
증강 현실 디바이스(1000)의 스케일에 기초하여, 1cm의 거리는 제2 길이(L2)로 대응될 수 있다. 증강 현실 디바이스(1000)의 스케일에 기초하여, 증강 현실 디바이스(1000)는 제1 관절(P1), 제2 관절(P2) 및 제3 관절(P3)의 위치에 관한 위치 좌표값인 관절값(J1_7, J2_7, J3_7)을 수신할 수 있다. 예를 들어, 증강 현실 디바이스(1000)가 제1 관절(P1)과 제2 관절(P2) 사이의 거리가 3cm로 측정된 관절값(J1_7, J2_7, J3_7)을 획득하는 경우, 증강 현실 디바이스(1000)가 인식하는 관절값(J1_7, J2_7, J3_7)에 기초한 제1 관절(P1)과 제2 관절(P2) 사이의 거리는, 제2 길이(L2)의 3배일 수 있다.
증강 현실 디바이스(1000)의 스케일은 외부 디바이스(2000)의 스케일과 다를 수 있다. 즉, 제1 길이(L1)와 제2 길이(L2)는 동일하게 1cm를 의미하지만, 서로 다를 수 있다. 예를 들어, 도 7에 도시된 바와 같이, 증강 현실 디바이스(1000)의 스케일은 외부 디바이스(2000)의 스케일보다 클 수 있다. 따라서, 증강 현실 디바이스(1000)의 사용자가 사용하는 공간과 외부 디바이스(2000)의 사용자가 사용하는 공간을 공유하기 위해서, 증강 현실 디바이스(1000)의 스케일과 외부 디바이스(2000)의 스케일을 일치시키는 동작이 필요할 수 있다.
일 실시 예에 따라, 증강 현실 디바이스(1000)는 외부 디바이스(2000)의 스케일에 기초하여 증강 현실 디바이스(1000)의 스케일을 재설정할 수 있다.
도 6을 함께 참조하면, 예를 들어, 증강 현실 디바이스(1000)는 외부 디바이스(2000)로부터 획득한 제1 관절(P1)의 위치 좌표값인 기준 관절값과, 카메라를 통해 획득한 제1 관절(P1)의 위치 좌표값인 관절값을 매칭할 수 있다. 증강 현실 디바이스(1000)는 외부 디바이스(2000)로부터 획득한 제1 관절(P1)의 위치와, 카메라를 통해 획득한 제1 관절(P1)의 위치를 일치시킬 수 있다. 즉, 증강 현실 디바이스(1000)는 제1 관절값(J1_7)을 제1 기준 관절값(R1_7)에 매칭시킬 수 있다.
또한, 증강 현실 디바이스(1000)는 외부 디바이스(2000)로부터 획득한 제2 관절(P2)의 위치 좌표값인 기준 관절값(R2_7)과, 카메라를 통해 획득한 제2 관절(P2)의 위치 좌표값인 관절값(J2_7)을 매칭할 수 있다. 즉, 증강 현실 디바이스(1000)는 제2 관절값(J2_7)을 제2 기준 관절값(R2_7)에 매칭시킬 수 있다.
증강 현실 디바이스(1000)는 기준 관절값(R1_7, R2_7, R3_7)에 기초하여, 외부 디바이스(2000)의 스케일에 따른 제1 관절(P1) 및 제2 관절(P2) 사이의 길이를 획득할 수 있다. 마찬가지로, 증강 현실 디바이스(1000)는 관절값(J1_7, J2_7, J3_7)에 기초하여, 증강 현실 디바이스(1000)의 스케일에 따른 제1 관절(P1) 및 제2 관절(P2) 사이의 길이를 획득할 수 있다.
증강 현실 디바이스(1000)는 외부 디바이스(2000)의 스케일에 따른 제1 관절(P1) 및 제2 관절(P2) 사이의 길이와, 증강 현실 디바이스(1000)의 스케일에 따른 제1 관절(P1) 및 제2 관절(P2) 사이의 길이를 비교함으로써, 증강 현실 디바이스(1000)의 스케일을 변경할 수 있다.
도 8을 참조하면, 일 실시 예에 따른 증강 현실 디바이스(1000)는 증강 현실 디바이스(1000)의 위치 좌표계를 통해 사용자의 손(10)의 위치 좌표값을 획득할 수 있다(S810).
증강 현실 디바이스(1000)의 위치 좌표계는 제1 원점(O1)을 포함할 수 있다. 증강 현실 디바이스(1000)는 증강 현실 디바이스(1000)의 위치 좌표계에 기초하여, 증강 현실 디바이스(1000)가 제1 원점(O1)을 기준으로 (x, y, z)의 위치 좌표값을 가지는 것으로 인식할 수 있다. 증강 현실 디바이스(1000)는 증강 현실 디바이스(1000)의 위치 좌표계에 기초하여, 사용자의 손(10)이 제1 원점(O1)을 기준으로 (Hx, Hy, Hz)의 위치 좌표값을 가지는 것으로 인식할 수 있다.
증강 현실 디바이스(1000)는 사용자의 손(10)에 포함된 복수의 관절의 위치에 관한 위치 좌표값인 관절값들을 인식할 수 있다(S820). 예를 들어, 도 8에 도시되지는 않았지만, 증강 현실 디바이스(1000)는 증강 현실 디바이스(1000)의 위치 좌표계에 기초하여, 사용자의 손(10)에 포함된 제1 관절(P1)이 제1 원점(O1)을 기준으로 (Hx1, Hy1, Hz1)의 위치 좌표값을 가지는 것으로 인식할 수 있고, 사용자의 손(10)에 포함된 제2 관절(P2)이 제1 원점(O1)을 기준으로 (Hx2, Hy2, Hz2)의 위치 좌표값을 가지는 것으로 인식할 수 있다.
일 실시 예에 따른 증강 현실 디바이스(1000)는 외부 디바이스(2000)의 위치 좌표계를 통해 사용자의 손(10)의 위치를 인식한 정보를 외부 디바이스(2000)로부터 수신할 수 있다(S830).
외부 디바이스(2000)의 위치 좌표계는 제2 원점(O2)을 포함할 수 있다. 증강 현실 디바이스(1000)는 외부 디바이스(2000)의 위치 좌표계에 기초하여, 외부 디바이스(2000)가 제2 원점(O2)을 기준으로 (x', y', z')의 위치 좌표값을 가지는 것으로 인식할 수 있다. 증강 현실 디바이스(1000)는 외부 디바이스(2000)의 위치 좌표계에 기초하여, 사용자의 손(10)이 제2 원점(O2)을 기준으로 (Hx', Hy', Hz')의 위치 좌표값을 가지는 것으로 인식할 수 있다.
증강 현실 디바이스(1000)는 사용자의 손(10)에 포함된 복수의 관절의 위치에 관한 위치 좌표값인 기준 관절값을, 외부 디바이스(2000)로부터 각각 수신할 수 있다(S840). 예를 들어, 도 8에 도시되지는 않았지만, 증강 현실 디바이스(1000)는 외부 디바이스(200)의 위치 좌표계에 기초하여, 사용자의 손(10)에 포함된 제1 관절(P1)이 제2 원점(O2)을 기준으로 (Hx'1, Hy'1, Hz'1)의 위치 좌표값을 가지는 것으로 인식할 수 있고, 사용자의 손(10)에 포함된 제2 관절(P2)이 제2 원점(O2)을 기준으로 (Hx'2, Hy'2, Hz'2)의 위치 좌표값을 가지는 것으로 인식할 수 있다.
증강 현실 디바이스(1000)는 단계 S820에서 획득된 관절값들을, 단계 S840에서 수신한 기준 관절값들과 매칭할 수 있다. 관절값들은 증강 현실 디바이스(1000)의 위치 좌표계에 기초한 위치 좌표값이므로, 관절값들은 외부 디바이스(2000)의 위치 좌표계에 기초한 위치 좌표값인 기준 관절값들과 동일하지 않을 수 있다.
따라서, 증강 현실 디바이스(1000)는 기준 관절값 및 획득된 관절값의 차이에 기초하여, 증강 현실 디바이스(1000)에 의해 인식된 사용자의 손(10)과 외부 디바이스(2000)에 의해 인식된 사용자의 손(10)의 차이에 대한 보정값을 획득할 수 있다. 증강 현실 디바이스(1000)는 매칭된 관절값에 기초하여, 관절값들과 기준 관절값들의 각도 차이인 각도 보정값을 획득할 수 있다(S850).
증강 현실 디바이스(1000)는 증강 현실 디바이스(1000)의 3차원 위치 좌표계를 외부 디바이스(2000)의 3차원 위치 좌표계와 동기화할 수 있다(S860).
구체적으로, 증강 현실 디바이스(1000)는 증강 현실 디바이스(1000)의 위치 좌표계에 각도 보정값을 적용함으로써, 관절값을 기준 관절값과 일치시키는 보정을 할 수 있다. 증강 현실 디바이스(1000)는 획득된 관절값이 기준 관절값과 일치하도록, 각도 보정값을 획득된 관절값에 적용하여, 획득된 관절값을 변경할 수 있다. 이에 따라, 증강 현실 디바이스(1000)는 보정된 관절값에 따라 증강 현실 디바이스(1000)의 위치 좌표계를 외부 디바이스(2000)의 위치 좌표계와 동기화할 수 있다(S870).
예를 들어, 증강 현실 디바이스(1000)는 사용자의 손(10)의 관절값인 (Hx, Hy, Hz)를, 외부 디바이스(2000)의 위치 좌표계로 인식한 사용자의 손(10)의 기준 관절값인 (Hx', Hy', Hz')로 보정할 수 있다. 그리고 증강 현실 디바이스(1000)는 보정된 관절값에 기초하여, 증강 현실 디바이스(1000)의 위치 좌표계의 제1 원점(O1; (0, 0, 0))을, 제3 원점(O3; (Hx'-Hx, Hy'-Hy, Hz'-Hz))으로 변경할 수 있다.
즉, 증강 현실 디바이스(1000)는 보정된 관절값에 기초하여, 증강 현실 디바이스(1000)의 위치 좌표계를 외부 디바이스(2000)의 위치 좌표계와 동기화할 수 있다. 증강 현실 디바이스(1000)는 획득한 손의 정보와 외부 디바이스에 의해 인식된 손의 정보를 매칭함으로써, 제1 원점(O1)을 제2 원점(O2)과 일치시키는 방식으로 3차원 위치 좌표계를 동기화할 수 있다. 증강 현실 디바이스(1000)는 매칭된 관절값에 기초하여, 제1 원점(O1)을 제2 원점(O2)과 일치하도록 재설정할 수 있다.
증강 현실 디바이스(1000)는 제3 원점(O3)을 기준으로 하는 변경된 증강 현실 디바이스(1000)의 위치 좌표계를 기준으로 객체를 인식할 수 있다.
도 9는 본 개시의 일 실시 예에 따라 증강 현실 디바이스(1000)의 구체적인 동작 방법을 설명하기 위한 흐름도이다.
참고적으로, 도 9는 도 3의 단계 S340 및 단계 S350을 구체적으로 설명하기 위한 도면이다.
도 9를 참조하면, 도 3의 단계 S340은 단계 S910 내지 단계 S940을 포함할 수 있다. 단계 S910에서, 증강 현실 디바이스(1000)는 획득된 제1 관절값을 제1 기준 관절값과 매칭할 수 있다.
증강 현실 디바이스(1000)는 제1 관절값과 제1 기준 관절값이 일치하도록, 제1 관절값의 위치 좌표값을 보정할 수 있다.
단계 S920에서, 증강 현실 디바이스(1000)는 제2 기준 관절값과 제2 관절값을 비교하여, 증강 현실 디바이스(1000)에 의해 인식된 사용자의 손(10)과 외부 디바이스(2000)에 의해 인식된 사용자의 손(10)의 각도 차이에 대한 제1 각도 보정값을 획득할 수 있다.
증강 현실 디바이스(1000)는 제1 관절값과 제1 기준 관절값이 일치된 후, 제2 관절값과 제2 기준 관절값의 위치 차이에 대한 정보를 획득할 수 있다. 증강 현실 디바이스(1000)는 제1 관절값과 제1 기준 관절값이 일치된 후, 제2 관절값과 제2 기준 관절값의 위치 차이에 대한 정보에 기초하여, 제1 각도 보정값을 획득할 수 있다.
단계 S930에서, 증강 현실 디바이스(1000)는 제2 기준 관절값과 제2 관절값을 비교하여, 증강 현실 디바이스(1000)에 의해 인식된 사용자의 손(10)과 외부 디바이스(2000)에 의해 인식된 사용자의 손(10)의 크기 차이에 대한 크기 보정값을 획득할 수 있다. 크기 보정값은 사용자의 손의 크기에 관한 정보일 수 있다.
증강 현실 디바이스(1000)는 제1 관절값과 제1 기준 관절값이 일치된 후, 제2 관절값과 제2 기준 관절값의 위치 차이에 대한 정보를 획득할 수 있다. 증강 현실 디바이스(1000)는 제1 관절값과 제1 기준 관절값이 일치된 후, 제2 관절값과 제2 기준 관절값의 위치 차이에 대한 정보에 기초하여, 크기 보정값을 획득할 수 있다.
단계 S920의 동작과 단계 S930의 동작의 순서는 예시일 뿐, 본 개시의 기술적 사상은 이에 한정되지 않는다. 예를 들어, 증강 현실 디바이스(1000)는 단계 S930에 따라 크기 보정값을 획득한 후, 단계 S920에 따라 제1 각도 보정값을 획득할 수 있다.
단계 S940에서, 증강 현실 디바이스(1000)는 제3 기준 관절값과 제3 관절값을 비교하여, 증강 현실 디바이스(1000)에 의해 인식된 사용자의 손(10)과 외부 디바이스(2000)에 의해 인식된 사용자의 손(10)의 각도 차이에 대한 제2 각도 보정값을 획득할 수 있다.
증강 현실 디바이스(1000)는 제1 관절값과 제1 기준 관절값이 일치되고 제2 관절값과 제2 기준 관절값이 일치된 후, 제3 관절값과 제3 기준 관절값의 위치 차이에 대한 정보를 획득할 수 있다. 증강 현실 디바이스(1000)는 제1 관절값과 제1 기준 관절값이 일치되고 제2 관절값과 제2 기준 관절값이 일치된 후, 제3 관절값과 제3 기준 관절값의 위치 차이에 대한 정보에 기초하여, 제2 각도 보정값을 획득할 수 있다.
도 3의 단계 S350은 단계 S950 및 단계 S960을 포함할 수 있다. 단계 S950에서, 증강 현실 디바이스(1000)는 제1 원점(O1, 도 8 참조)에 크기 보정값, 제1 각도 보정값 및 제2 각도 보정값을 적용함으로써, 재설정된 제1 원점 즉, 제3 원점(O3, 도 8 참조)을 획득할 수 있다.
단계 S960에서, 증강 현실 디바이스(1000)는 재설정된 제1 원점 즉, 제3 원점(O3, 도 8 참조)을 기준으로, 증강 현실 디바이스의 3차원 위치 좌표계를 동기화할 수 있다. 따라서, 증강 현실 디바이스(1000)는 획득한 사용자의 손(10)을 통해 획득한 관절값과 외부 디바이스에 의해 수신한 기준 관절값에 기초하여, 증강 현실 디바이스의 3차원 위치 좌표계를 동기화할 수 있다.
도 10 및 도 11은 본 개시의 일 실시 예에 따라 증강 현실 디바이스(1000)가 3차원 위치 좌표계를 동기화하기 위해 관절값을 매칭시키는 동작을 설명하기 위한 개념도들이다.
참고적으로, 도 10 및 도 11에서 도시된 사용자의 손은, 도 6에서 설명한 제1 관절(P1), 제2 관절(P2) 및 제3 관절(P3)의 위치를 이용하여 설명한다.
도 6 및 도 10을 참조하면, 증강 현실 디바이스(1000)는 사용자의 손(10)의 위치 좌표값에 관한 관절값을 획득할 수 있고, 외부 디바이스(2000)로부터 사용자의 손(10)의 위치 좌표값에 관한 기준 관절값을 획득할 수 있다. 도 5에서 설명한 바와 같이, 관절값은 증강 현실 디바이스(1000)의 위치 좌표계에 따른 위치 좌표값이고 기준 관절값은 외부 디바이스(2000)의 위치 좌표계에 따른 위치 좌표값이므로, 관절값과 기준 관절값은 일치하지 않을 수 있다.
단계 S1010에서, 증강 현실 디바이스(1000)는 사용자의 손(10)의 복수의 관절 중 하나의 관절값을, 대응되는 복수의 관절 중 하나의 기준 관절값에 매칭시킬 수 있다. 증강 현실 디바이스(1000)는 사용자의 손(10)의 복수의 관절 중 하나의 관절값을 보정할 수 있다. 증강 현실 디바이스(1000)는 보정된 관절값을 대응되는 기준 관절값과 일치시킬 수 있다.
일 실시 예에서, 증강 현실 디바이스(1000)는 사용자의 손(10)의 복수의 관절 중 제1 관절(P1)에 대한 관절값(J1a_10)을 획득할 수 있고, 외부 디바이스(2000)로부터 제1 관절(P1)에 대한 기준 관절값(R1a_10)을 수신할 수 있다. 증강 현실 디바이스(1000)는 제1 관절(P1)에 대한 관절값(J1a_10)과, 제1 관절(P1)에 대한 기준 관절값(R1a_10)을 동일 위치로 매칭시킬 수 있다. 증강 현실 디바이스(1000)는 제1 관절(P1)의 관절값(J1a_10)을 보정할 수 있다. 증강 현실 디바이스(1000)는 보정된 관절값(J1a_10)을 대응되는 제1 관절(P1)의 기준 관절값(R1a_10)과 일치시킬 수 있다. 즉, 증강 현실 디바이스(1000)는 제1 관절값(J1a_10)을 제1 기준 관절값(R1a_10)에 매칭시킬 수 있다.
단계 S1020에서, 증강 현실 디바이스(1000)는 사용자의 손(10)의 복수의 관절 중 또 다른 하나의 관절값을, 대응되는 복수의 관절 중 또 다른 하나의 기준 관절값에 매칭시킬 수 있다. 이 때, 사용자의 손(10)의 복수의 관절 중 또 다른 하나의 관절값은 증강 현실 디바이스 스케일에 따라 결정된 위치 좌표값이고 사용자의 손(10)의 복수의 관절 중 또 다른 하나의 기준 관절값은 외부 디바이스 스케일에 따라 결정된 위치 좌표값이므로, 사용자의 손(10)의 복수의 관절 중 또 다른 하나의 관절값과 사용자의 손(10)의 복수의 관절 중 또 다른 하나의 기준 관절값은 서로 일치되지 않을 수 있다.
예를 들어, 증강 현실 디바이스(1000)는 사용자의 손(10)의 복수의 관절 중 제2 관절(P2)에 대한 관절값(J2b_10)을 획득할 수 있고, 외부 디바이스(2000)로부터 제2 관절(P2)에 대한 기준 관절값(R2b_10)을 수신할 수 있다. 증강 현실 디바이스(1000)는 제2 관절(P2)에 대한 관절값(J2b_10)과 제2 관절(P2)에 대한 기준 관절값(R2b_10)을 동일 위치로 매칭시킬 수 있다. 즉, 증강 현실 디바이스(1000)는 제2 관절값(J2b_10)을 제2 기준 관절값(R2b_10)에 매칭시킬 수 있다.
증강 현실 디바이스(1000)는 제2 기준 관절값(R2b_10)과 제2 관절값(J2b_10)을 비교하여, 증강 현실 디바이스(1000)에 의해 인식된 사용자의 손(10)과 외부 디바이스(2000)에 의해 인식된 사용자의 손(10)의 크기 차이에 대한 크기 보정값을 획득할 수 있다.
단계 S1030에서, 증강 현실 디바이스(1000)는 증강 현실 디바이스(1000)의 위치 좌표계를 통해 인식한 관절값들을 보정할 수 있다. 증강 현실 디바이스(1000)는 단계 S1020에서 획득한 크기 보정값을 적용함으로써, 관절값들을 보정할 수 있다. 증강 현실 디바이스(1000)는 외부 디바이스(2000)의 스케일에 기초하여 증강 현실 디바이스(1000)의 스케일을 재설정할 수 있다.
참고적으로, 증강 현실 디바이스(1000)가 증강 현실 디바이스(1000)의 스케일을 재설정하는 방법에 관하여, 도 7을 이용하여 설명한 것과 중복되는 것은 간략히 하거나 생략한다.
증강 현실 디바이스(1000)는 수신된 복수의 기준 관절값들 중 제1 관절(P1) 및 제2 관절(P2)에 관한 기준 관절값들(R1c_10, R2c_10)에 기초하여, 제1 거리(D1)를 획득할 수 있다. 제1 거리(D1)는 외부 디바이스(2000)의 위치 좌표계를 기준으로 측정된 제1 관절(P1)과 제2 관절(P2) 사이의 거리일 수 있다. 또한, 증강 현실 디바이스(1000)는 획득한 복수의 관절값들 중 제1 관절(P1) 및 제2 관절(P2)에 관한 관절값들(R1c_10, R2c_10)에 기초하여, 제2 거리(D2)를 획득할 수 있다. 제2 거리(D2)는 증강 현실 디바이스(1000)의 위치 좌표계를 기준으로 측정된 제1 관절(P1)과 제2 관절(P2) 사이의 거리일 수 있다.
증강 현실 디바이스(1000)는 제2 거리(D2)가 제1 거리(D1)와 일치하도록, 제2 거리(D2)를 보정할 수 있다. 증강 현실 디바이스(1000)는 단계 S1010에서 매칭된 제1 관절값을 기준으로 하고 단계 S1020에서 매칭된 제2 관절값을 보정함으로써, 제2 거리(D2)를 보정할 수 있다. 제2 거리(D2)를 보정하는 방식은 도 7에 설명된 스케일을 변경하는 방법과 동일할 수 있다.
증강 현실 디바이스(1000)는 외부 디바이스(2000)의 스케일에 따른 제1 관절(P1)과 제2 관절(P2) 간의 길이(즉, 제1 거리(D1))에, 증강 현실 디바이스(1000)의 스케일에 따른 제1 관절(P1)과 제2 관절(P2) 간의 길이(즉, 제2 거리(D2))를 일치시킴으로써, 증강 현실 디바이스(1000)의 스케일을 변경할 수 있다.
도 6 및 도 11을 참조하면, 단계 S1040에서, 증강 현실 디바이스(1000)는 사용자의 손(10)의 복수의 관절 중 또 다른 하나의 관절값을, 대응되는 복수의 관절 중 또 다른 하나의 기준 관절값에 매칭시킬 수 있다. 즉, 증강 현실 디바이스(1000)는 제2 관절(P2)에 대한 관절값을, 제2 관절(P2)에 대한 기준 관절값에 매칭시킬 수 있다. 즉, 증강 현실 디바이스(1000)는 제2 관절값을 제2 기준 관절값에 매칭시킬 수 있다.
증강 현실 디바이스(1000)는 제2 기준 관절값(R2a_11)과 제2 관절값(J2a_11)을 비교하여, 증강 현실 디바이스(1000)에 의해 인식된 사용자의 손(10)과 외부 디바이스(2000)에 의해 인식된 사용자의 손(10)의 각도 차이에 대한 제1 각도 보정값을 획득할 수 있다.
참고적으로, 단계 S1040의 상태는 도 10의 단계 S1030과 동일할 수 있다. 즉, 단계 S1040는 외부 디바이스(2000)의 스케일에 기초하여 증강 현실 디바이스(1000)의 스케일을 재설정한 상태를 의미할 수 있다.
또한, 참고적으로, 도 11에서 표현하는 제1 방향 내지 제3 방향(C1, C2, C3)은 제1 관절(P1)로부터 제2 관절(P2)까지의 방향을 의미하고, 제1 방향(C1)과, 제2 방향(C2) 및 제3 방향(C3)은 기준이 되는 공간 좌표계가 다르므로 일치하지 않을 수 있다. 제4 방향 내지 제6 방향(C4, C5, C6)은 제1 관절(P1)로부터 제3 관절(P3)까지의 방향을 의미한다.
단계 S1050에서, 증강 현실 디바이스(1000)는 증강 현실 디바이스(1000)의 위치 좌표계를 통해 인식한 관절값들을 보정할 수 있다. 증강 현실 디바이스(1000)는 기준 관절값들(R1b_11, R2b_11, R3b_11)에 기초하여, 복수의 관절값들을 포함하는 사용자의 손(10)의 각도를 보정할 수 있다. 설명의 편의상, 단계 S1050에서의 각도 보정은 제1 각도 보정이라 표현될 수 있다. 증강 현실 디바이스(1000)는 단계 S1040에서 획득한 제1 각도 보정값에 기초하여, 관절값들을 보정할 수 있다.
증강 현실 디바이스(1000)는 복수의 관절값들 중 2개의 관절값에 기초하여, 제1 각도 보정을 수행할 수 있다.
구체적으로, 증강 현실 디바이스(1000)는 제1 관절(P1)을 기준으로 제2 관절(P2)의 관절값(J2b_11)을 보정함으로써, 제2 방향(C2)을 보정할 수 있다. 즉, 증강 현실 디바이스(1000)는 제1 각도 보정을 통하여, 증강 현실 디바이스(1000)의 위치 좌표계에 따른 제1 관절(P1)로부터 제2 관절(P2)까지의 방향인 제2 방향(C2)을 제3 방향(C3)으로 보정할 수 있다.
증강 현실 디바이스(1000)는 예를 들어, xy평면상 시계 방향으로 관절값들(J1b_11, J2b_11, J3b_11)을 회전함으로써, 제1 각도 보정을 수행할 수 있다.
또한, 단계 S1050에서, 증강 현실 디바이스(1000)는 사용자의 손(10)의 복수의 관절 중 또 다른 하나의 관절값을, 대응되는 복수의 관절 중 또 다른 하나의 기준 관절값에 매칭시킬 수 있다. 이 때, 사용자의 손(10)의 복수의 관절 중 또 다른 하나의 관절값은 증강 현실 디바이스 스케일에 따라 결정된 위치 좌표값이고 사용자의 손(10)의 복수의 관절 중 또 다른 하나의 기준 관절값은 외부 디바이스 스케일에 따라 결정된 위치 좌표값이므로, 사용자의 손(10)의 복수의 관절 중 또 다른 하나의 관절값과 사용자의 손(10)의 복수의 관절 중 또 다른 하나의 기준 관절값은 서로 일치되지 않을 수 있다.
예를 들어, 증강 현실 디바이스(1000)는 사용자의 손(10)의 복수의 관절 중 제3 관절(P3)에 대한 관절값(J3b_11)을 획득할 수 있고, 외부 디바이스(2000)로부터 제3 관절(P3)에 대한 기준 관절값(R3b_11)을 수신할 수 있다. 증강 현실 디바이스(1000)는 제3 관절(P3)에 대한 관절값(J3b_11)을, 제3 관절(P3)에 대한 기준 관절값(R3b_11)에 매칭시킬 수 있다. 즉, 증강 현실 디바이스(1000)는 제3 관절값(J3b_11)을 제3 기준 관절값(R3b_11)에 매칭시킬 수 있다.
증강 현실 디바이스(1000)는 제3 기준 관절값(R3b_11)과 제3 관절값(J3b_11)을 비교하여, 증강 현실 디바이스(1000)에 의해 인식된 사용자의 손(10)과 외부 디바이스(2000)에 의해 인식된 사용자의 손(10)의 각도 차이에 대한 제2 각도 보정값을 획득할 수 있다.
단계 S1060에서, 증강 현실 디바이스(1000)는 증강 현실 디바이스(1000)의 위치 좌표계를 통해 인식한 관절값들을 보정할 수 있다. 증강 현실 디바이스(1000)는 기준 관절값들에 기초하여, 복수의 관절값들을 포함하는 사용자의 손(10)의 각도를 보정할 수 있다. 설명의 편의상, 단계 S1060에서의 각도 보정은 제2 각도 보정이라 표현될 수 있다. 증강 현실 디바이스(1000)는 단계 S1050에서 획득한 제2 각도 보정값을 적용함으로써, 관절값들을 보정할 수 있다.
증강 현실 디바이스(1000)는 복수의 관절값들 중 3개의 관절값에 기초하여, 제2 각도 보정을 수행할 수 있다.
구체적으로, 증강 현실 디바이스(1000)는 제1 관절(P1) 및 제2 관절(P2)을 기준으로 제3 관절(P3)의 관절값(J3c_11)을 보정함으로써, 제5 방향(C5)을 보정할 수 있다. 즉, 증강 현실 디바이스(1000)는 제2 각도 보정을 통하여, 증강 현실 디바이스(1000)의 위치 좌표계에 따른 제1 관절(P1)로부터 제3 관절(P3)까지의 방향인 제5 방향(C5)을 제6 방향(C6)으로 보정할 수 있다.
증강 현실 디바이스(1000)는 예를 들어, xz평면상 시계 방향으로 관절값들을 회전함으로써, 제2 각도 보정을 수행할 수 있다.
도 12 및 도 13은 본 개시의 일 실시 예에 따라 증강 현실 디바이스(1000)의 동작 방법을 설명하기 위한 흐름도들이다.
또한, 설명의 편의상, 도 1 내지 도 11을 이용하여 설명한 것과 중복되는 것은 간략히 하거나 생략한다.
도 12를 참조하면, 단계 S1210에서, 일 실시 예에 따른 증강 현실 디바이스(1000)는 외부 디바이스 정보를 수신할 수 있다. 여기서 외부 디바이스 정보는 도 1 내지 도 11을 이용하여 설명한 외부 디바이스(2000)에 의해 획득된 사용자 손(10)에 대한 정보인, 기준 관절값을 포함할 수 있다.
단계 S1220에서, 증강 현실 디바이스(1000)는 외부 디바이스 정보에 따른 검지 기절골(첫마디뼈) 시작 위치와, 증강 현실 디바이스가 감지한 검지 기절골 시작 위치가 동일 위치에 위치하도록, 증강 현실 디바이스가 감지한 검지 기절골 시작 위치를 보정할 수 있다. 검지 기절골(첫마디뼈) 시작 위치는 제1 관절(P1)을 의미할 수 있다.
즉, 도 10의 단계 S1010에서 설명하였듯이, 단계 S1220에서, 증강 현실 디바이스(1000)는 사용자의 손(10)의 복수의 관절 중 하나의 관절값을, 대응되는 복수의 관절 중 하나의 기준 관절값에 매칭시킬 수 있다.
단계 S1230에서, 증강 현실 디바이스(1000)는 외부 디바이스 정보에 따른 엄지 기절골(첫마디뼈) 시작위치와, 증강 현실 디바이스가 감지한 엄지 기절골 시작 위치가 서로 가장 가까운 위치에 위치하도록, 회전 보정을 수행할 수 있다. 엄지 기절골(첫마디뼈) 시작 위치는 제2 관절(P2)을 의미할 수 있다.
즉, 도 10의 단계 S1050에서 설명하였듯이, 단계 S1230에서, 증강 현실 디바이스(1000)는 기준 관절값들에 기초하여, 복수의 관절값들을 포함하는 사용자의 손(10)의 각도를 보정할 수 있다. 증강 현실 디바이스(1000)는 복수의 관절값들 중 2개의 관절값에 기초하여, 제1 각도 보정을 수행할 수 있다.
단계 S1240에서, 증강 현실 디바이스(1000)는 외부 디바이스 정보에 따른 엄지 기절골(첫마디뼈) 시작 위치와, 증강 현실 디바이스(1000)가 감지한 엄지 기절골 시작 위치가 서로 가장 가까운 위치에 위치하도록, 크기 보정을 수행할 수 있다. 단, 단계 S1230과 단계 S1240의 순서는 예시일 뿐, 본 개시의 기술적 사상은 이에 한정되지 않는다. 예를 들어, 증강 현실 디바이스(1000)는 단계 S1240에 따른 크기 보정 이후에, 단계 S1230에 따른 회전 보정을 수행할 수도 있다.
도 10의 단계 S1030 및 도 7에서 설명하였듯이, 단계 S1240에서, 증강 현실 디바이스(1000)는 외부 디바이스(2000)의 스케일에 기초하여 증강 현실 디바이스(1000)의 스케일을 재설정할 수 있다.
단계 S1250에서, 증강 현실 디바이스(1000)는 외부 디바이스 정보에 따른 검지 중절골 시작 위치가, 증강 현실 디바이스(1000)가 감지한 검지 중절골 시작 위치와 동일 위치에 위치하도록, 미세 회전 보정 및 미세 크기 보정을 수행할 수 있다. 검지 중절골 시작 위치는 제3 관절(P3)을 의미할 수 있다.
즉, 도 11의 단계 S1060에서 설명하였듯이, 증강 현실 디바이스(1000)는 기준 관절값들에 기초하여, 복수의 관절값들을 포함하는 사용자의 손(10)의 각도를 보정할 수 있다. 증강 현실 디바이스(1000)는 복수의 관절값들 중 3개의 관절값에 기초하여, 제2 각도 보정을 수행할 수 있다. 단계 S1250에서 표현된 미세 회전 보정은 제2 각도 보정을 의미할 수 있다.
또한, 증강 현실 디바이스(1000)는 복수의 관절값들 중 3개의 관절값에 기초하여, 미세 크기 보정을 수행할 수 있다. 미세 크기 보정은 단계 S1240에 따른 크기 보정 후, 수행될 수 있다. 예를 들어, 증강 현실 디바이스(1000)는 단계 S1240에 따라, 제1 관절(P1) 및 제2 관절(P2)에 기초하여 크기 보정한 후, 제1 관절(P1) 및 제3 관절(P3)에 기초하여 미세 크기 보정을 수행할 수 있다. 미세 크기 보정의 방법은 도 7에서 설명한 크기 보정(스케일 변경)의 방법과 동일할 수 있다.
단계 S1260에서, 증강 현실 디바이스(1000)는 외부 디바이스 정보에 따른 검지 중절골, 엄지 중절골, 검지 기절골의 위치가 데이터 이상에 따른 오차가 있는 경우, 동기화 동작을 다시 수행할 수 있다. 예를 들어, 외부 디바이스 정보에 따른 검지 중절골, 엄지 중절골, 검지 기절골의 위치가 데이터 이상에 따른 오차가 있는 경우, 증강 현실 디바이스(1000)는 동기화 동작을 단계 S1210부터 다시 수행할 수 있다.
단계 S1260에서, 증강 현실 디바이스(1000)는 외부 디바이스 정보에 따른 검지 중절골, 엄지 중절골, 검지 기절골의 위치가 데이터 이상에 따른 오차가 없는 경우, 동기화 동작을 완료할 수 있다(S1270).
설명의 편의상, 도 1 내지 도 11을 이용하여 설명한 것과 중복되는 것은 간략히 하거나 생략한다.
도 13를 참조하면, 증강 현실 디바이스(1000)는 좌표 동기화 동작을 시작할 수 있다(S1310).
단계 S1320에서, 증강 현실 디바이스(1000)는 기준이 되는 사용자의 손을 인식할 수 있다. 증강 현실 디바이스(1000)는 부속된 카메라를 통해 사용자의 손(10)의 이미지를 획득할 수 있으나, 이는 예시일 뿐, 본 개시의 기술적 사상은 이에 한정되지 않는다.
단계 S1330에서, 증강 현실 디바이스(1000)는 공간을 동기화하고자 하는 증강 현실 디바이스인지 확인할 수 있다. 예를 들어, 증강 현실 디바이스(1000)는 사용자의 입력에 따라, 공간을 동기화하고자 하는 증강 현실 디바이스임을 확인할 수 있다.
단계 S1331에서, 증강 현실 디바이스(1000)가 공간을 동기화하고자 하는 증강 현실 디바이스가 아닌 경우, 증강 현실 디바이스(1000)는 인식된 손을 외부 디바이스에 전달할 수 있다. 이 때, 외부 디바이스는 공간을 동기화하고자 하는 증강 현실 디바이스일 수 있다.
단계 S1340에서, 증강 현실 디바이스(1000)가 본 개시의 실시 예에 따라 공간을 동기화하고자 하는 증강 현실 디바이스인 경우, 증강 현실 디바이스(1000)는 외부 디바이스에 의해 인식된 손에 대한 정보를 수신할 수 있다. 외부 디바이스에 의해 인식된 손에 대한 정보는 기준 관절값을 포함할 수 있다.
단계 S1350에서, 증강 현실 디바이스(1000)는 수신된 손 인식 정보를 증강 현실 디바이스(1000)의 타입 정보에 기초하여 변환할 수 있다. 증강 현실 디바이스(1000)는 수신한 기준 관절값을 증강 현실 디바이스(1000)의 타입 정보에 기초하여 변환할 수 있다.
증강 현실 디바이스(1000)의 타입 정보에 따라, 손을 인식하는 방법, 프로그램 등은 다양할 수 있다. 즉, 예를 들어, 외부 디바이스와 증강 현실 디바이스(1000)의 타입 정보가 서로 다름에 따라, 외부 디바이스와 증강 현실 디바이스(1000)가 동시에 동일한 손을 인식하더라도, 획득한 손에 대한 정보의 종류가 다를 수 있다.
예를 들어, 증강 현실 디바이스(1000)는 사용자의 손의 제1 관절에 관한 위치 좌표값을 획득할 수 있고 사용자의 손의 제2 관절에 관한 위치 좌표값을 획득하지 않을 수 있으나, 외부 디바이스(2000)는 사용자의 손의 제1 관절에 관한 위치 좌표값을 획득하지 않을 수 있고 사용자의 손의 제2 관절에 관한 위치 좌표값을 획득할 수 있다. 따라서, 외부 디바이스(2000)에 의해 제1 관절에 관한 위치 좌표값은 획득되지 않더라도, 증강 현실 디바이스(1000)는 외부 디바이스(2000)에 의해 획득된 제2 관절에 관한 위치 좌표값(즉, 기준 관절값)을 통해 제1 관절에 관한 위치 좌표값(즉, 변환된 기준 관절값)을 획득할 수 있다.
따라서, 증강 현실 디바이스(1000)는 외부 디바이스에 의해 획득된 손 인식 정보를 수신하여, 수신한 손 인식 정보를 증강 현실 디바이스(1000)의 타입 정보에 기초하여 변환할 수 있다.
증강 현실 디바이스(1000)의 타입 정보는 디바이스에 따라 손을 인식하는 스타일에 관한 것일 수 있다. 예를 들어, 디바이스에 따라 사용자의 손의 특징점, 즉, 특징이 되는 복수의 주요 관절을 설정하는 방식이 다를 수 있다. 따라서, 동일한 사용자의 손을 인식하는 경우라 하더라도, 증강 현실 디바이스(1000)에 의해 획득된 위치 좌표값에 대응되는 복수의 관절은, 외부 디바이스(2000)에 의해 획득된 위치 좌표값에 대응되는 복수의 관절에 대응되지 않을 수 있다.
단계 S1360에서, 증강 현실 디바이스(1000)는 외부 디바이스의 기준으로 스케일(Scale) 변환할 수 있다. 즉, 증강 현실 디바이스(1000)는 외부 디바이스의 기준으로 크기 보정을 수행할 수 있다. 크기 보정의 구체적인 방법은 도 7에서 설명한 것과 동일하므로, 중복되는 설명은 생략한다.
단계 S1370에서, 증강 현실 디바이스(1000)는 외부 디바이스와 증강 현실 디바이스(1000)를 통해 감지한 관절값을 활용하여 각도 보정값을 계산할 수 있다. 증강 현실 디바이스(1000)는 외부 디바이스에 의해 획득된 기준 관절값과, 증강 현실 디바이스(1000)를 통해 감지한 관절값을 매칭하여, 각도 보정값을 계산할 수 있다.
단계 S1380에서, 증강 현실 디바이스(1000)는 외부 디바이스와 증강 현실 디바이스를 통해 감지한 관절값을 활용하여 좌표 동기화할 수 있다. 증강 현실 디바이스(1000)는 외부 디바이스에 의해 획득된 기준 관절값과, 증강 현실 디바이스(1000)를 통해 감지한 관절값을 매칭하여, 공간의 위치 좌표계를 동기화할 수 있다.
증강 현실 디바이스(1000)는 공간의 위치 좌표계를 외부 디바이스(2000)의 위치 좌표계와 동기화하는 방법을 완료할 수 있다.
즉, 단계 S1370 내지 단계 S1380에서, 증강 현실 디바이스(1000)는 도 11을 이용하여 설명한 제1 각도 보정 및 제2 각도 보정을 수행할 수 있다.
기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적 저장매체'는 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다. 예로, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.
일 실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품(예: 다운로더블 앱(downloadable app))의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
Claims (20)
- 외부 디바이스와 공간의 위치 좌표계를 동기화하는 증강 현실 디바이스(Augmented Reality device)에 있어서,
상기 외부 디바이스와 데이터 통신을 수행하는 통신 인터페이스;
손을 촬영함으로써, 상기 손을 포함하는 이미지를 획득하는 카메라;
적어도 하나의 명령어들(instructions)을 저장하는 메모리; 및
상기 적어도 하나의 명령어들을 실행하는 적어도 하나의 프로세서;
를 포함하고,
상기 적어도 하나의 프로세서는,
상기 카메라를 통해 획득된 이미지로부터 손의 관절값을 획득하고,
상기 통신 인터페이스를 통해 상기 외부 디바이스로부터, 상기 외부 디바이스에 의해 획득된 사용자의 손의 관절에 관한 기준 관절값을 수신하고,
상기 획득된 관절값을 상기 기준 관절값과 매칭시키고,
상기 매칭된 관절값에 기초하여, 상기 증강 현실 디바이스의 3차원 위치 좌표계를 상기 외부 디바이스의 3차원 위치 좌표계와 동기화하는, 증강 현실 디바이스. - 제1항에 있어서,
상기 적어도 하나의 프로세서는,
상기 수신된 기준 관절값을 상기 증강 현실 디바이스의 타입 정보에 기초하여 변환하고,
상기 획득된 관절값을 상기 변환된 기준 관절값과 매칭시키는, 증강 현실 디바이스. - 제1항에 있어서,
상기 획득된 관절값은 제1 관절에 대응되는 제1 관절값, 제2 관절에 대응되는 제2 관절값 및 제3 관절에 대응되는 제3 관절값 중 적어도 하나를 포함하고,
상기 기준 관절값은 상기 제1 관절에 대응되는 제1 기준 관절값, 상기 제2 관절에 대응되는 제2 기준 관절값 및 상기 제3 관절에 대응되는 제3 기준 관절값 중 적어도 하나를 포함하는, 증강 현실 디바이스. - 제3항에 있어서,
상기 적어도 하나의 프로세서는,
상기 제1 관절값을 상기 제1 기준 관절값에, 상기 제2 관절값을 상기 제2 기준 관절값에, 상기 제3 관절값을 상기 제3 기준 관절값에 각각 매칭시키는, 증강 현실 디바이스. - 제3항에 있어서,
상기 제1 기준 관절값 및 상기 제1 관절값은 검지 기절골에 대응되는 관절 위치 좌표값이고,
상기 제2 기준 관절값 및 상기 제2 관절값은 엄지 기절골에 대응되는 관절 위치 좌표값이고,
상기 제3 기준 관절값 및 상기 제3 관절값은 검지 중절골에 대응되는 관절 위치 좌표값인, 증강 현실 디바이스. - 제1항에 있어서,
상기 기준 관절값 및 상기 관절값은 손가락, 손목 및 손바닥에 포함되는 복수의 관절들 중 하나의 위치 좌표값인, 증강 현실 디바이스. - 제1항에 있어서,
상기 관절값은 공간 내 기설정된 제1 원점에 대한 복수의 관절들의 위치 좌표값 중 적어도 하나를 포함하고,
상기 기준 관절값은 공간 내 상기 외부 디바이스 기준으로 기설정된 제2 원점에 대한 상기 복수의 관절들의 위치 좌표값 중 적어도 하나를 포함하는, 증강 현실 디바이스. - 제7항에 있어서,
상기 적어도 하나의 프로세서는,
상기 매칭된 관절값에 기초하여, 상기 제1 원점의 3차원 위치 좌표값을 상기 제2 원점의 3차원 위치 좌표값과 일치하도록 재설정하는, 증강 현실 디바이스. - 제3항에 있어서,
상기 적어도 하나의 프로세서는,
상기 기준 관절값 및 상기 획득된 관절값의 차이에 기초하여, 상기 증강 현실 디바이스에 의해 인식된 상기 사용자의 손과 상기 외부 디바이스에 의해 인식된 상기 사용자의 손의 차이에 대한 보정값을 획득하고,
상기 보정값을 상기 획득된 관절값에 적용하여, 상기 획득된 관절값을 변경하는, 증강 현실 디바이스. - 제9항에 있어서,
상기 보정값은 상기 사용자의 손의 크기에 관한 크기 보정값을 포함하고,
상기 적어도 하나의 프로세서는,
상기 제1 기준 관절값과 상기 제1 관절값을 동일 위치로 매칭시키고,
상기 제2 기준 관절값과 상기 제2 관절값을 비교하여, 상기 증강 현실 디바이스에 의해 인식된 상기 사용자의 손과 상기 외부 디바이스에 의해 인식된 상기 사용자의 손의 크기 차이에 대한 크기 보정값을 획득하는, 증강 현실 디바이스. - 제9항에 있어서,
상기 보정값은 상기 사용자의 손의 각도에 관한 제1 각도 보정값을 포함하고,
상기 적어도 하나의 프로세서는,
상기 제1 기준 관절값과 상기 제1 관절값을 동일 위치로 매칭시키고,
상기 제2 기준 관절값과 상기 제2 관절값을 비교하여, 상기 증강 현실 디바이스에 의해 인식된 상기 사용자의 손과 상기 외부 디바이스에 의해 인식된 상기 사용자의 손의 각도 차이에 대한 제1 각도 보정값을 획득하는, 증강 현실 디바이스. - 제9항에 있어서,
상기 보정값은 상기 사용자의 손의 각도에 관한 제2 각도 보정값을 포함하고,
상기 적어도 하나의 프로세서는,
상기 제1 기준 관절값과 상기 제1 관절값을 동일 위치로 매칭시키고,
상기 제2 기준 관절값과 상기 제2 관절값을 동일 위치로 매칭시키고,
상기 제3 기준 관절값과 상기 제3 관절값을 비교하여, 상기 증강 현실 디바이스에 의해 인식된 상기 사용자의 손과 상기 외부 디바이스에 의해 인식된 상기 사용자의 손의 각도 차이에 대한 제2 각도 보정값을 획득하는, 증강 현실 디바이스. - 증강 현실 디바이스(Augmented Reality device)가 외부 디바이스와 공간의 위치 좌표계를 동기화하는 방법에 있어서,
카메라를 통해 획득된 이미지로부터 손의 관절값을 획득하는 단계;
상기 외부 디바이스로부터, 상기 외부 디바이스에 의해 획득된 사용자의 손의 관절에 관한 기준 관절값을 수신하는 단계;
상기 획득된 관절값을 상기 기준 관절값과 매칭시키는 단계; 및
상기 매칭된 관절값에 기초하여, 상기 증강 현실 디바이스의 3차원 위치 좌표계를 상기 외부 디바이스의 3차원 위치 좌표계와 동기화하는 단계;
를 포함하는, 방법. - 제13항에 있어서,
상기 획득된 관절값을 상기 기준 관절값과 매칭시키는 단계는,
상기 수신된 기준 관절값을 상기 증강 현실 디바이스의 타입 정보에 기초하여 변환하는 단계; 및
상기 획득된 관절값을 상기 변환된 기준 관절값과 매칭시키는 단계를 포함하는, 방법. - 제13항에 있어서,
상기 획득된 관절값은 제1 관절에 대응되는 제1 관절값, 제2 관절에 대응되는 제2 관절값 및 제3 관절에 대응되는 제3 관절값 중 적어도 하나를 포함하고,
상기 기준 관절값은 상기 제1 관절에 대응되는 제1 기준 관절값, 상기 제2 관절에 대응되는 제2 기준 관절값 및 상기 제3 관절에 대응되는 제3 기준 관절값 중 적어도 하나를 포함하고,
상기 획득된 관절값을 매칭시키는 단계는,
상기 제1 관절값을 상기 제1 기준 관절값에, 상기 제2 관절값을 상기 제2 기준 관절값에, 상기 제3 관절값을 상기 제3 기준 관절값에 각각 매칭시키는 단계를 포함하는, 방법. - 제15항에 있어서,
상기 획득된 관절값을 매칭시키는 단계는,
상기 기준 관절값 및 상기 획득된 관절값의 차이에 기초하여, 상기 증강 현실 디바이스에 의해 인식된 상기 사용자의 손과 상기 외부 디바이스에 의해 인식된 상기 사용자의 손의 차이에 대한 보정값을 획득하는 단계; 및
상기 보정값을 상기 획득된 관절값에 적용하여, 상기 획득된 관절값을 변경하는 단계;
를 포함하는, 방법. - 제16항에 있어서,
상기 보정값은 상기 사용자의 손의 크기에 관한 크기 보정값을 포함하고,
상기 보정값을 획득하는 단계는,
상기 제1 기준 관절값과 상기 제1 관절값을 동일 위치로 매칭시키는 단계;
상기 제2 기준 관절값과 상기 제2 관절값을 비교하여, 상기 증강 현실 디바이스에 의해 인식된 상기 사용자의 손과 상기 외부 디바이스에 의해 인식된 상기 사용자의 손의 크기 차이에 대한 크기 보정값을 획득하는 단계를 포함하는, 방법. - 제16항에 있어서,
상기 보정값은 상기 사용자의 손의 각도에 관한 제1 각도 보정값을 포함하고,
상기 보정값을 획득하는 단계는,
상기 제1 기준 관절값과 상기 제1 관절값을 동일 위치로 매칭시키는 단계; 및
상기 제2 기준 관절값과 상기 제2 관절값을 비교하여, 상기 증강 현실 디바이스에 의해 인식된 상기 사용자의 손과 상기 외부 디바이스에 의해 인식된 상기 사용자의 손의 각도 차이에 대한 제1 각도 보정값을 획득하는 단계를 포함하는, 방법. - 제16항에 있어서,
상기 보정값은 상기 사용자의 손의 각도에 관한 제2 각도 보정값을 포함하고,
상기 보정값을 획득하는 단계는,
상기 제1 기준 관절값과 상기 제1 관절값을 동일 위치로 매칭시키는 단계;
상기 제2 기준 관절값과 상기 제2 관절값을 동일 위치로 매칭시키는 단계; 및
상기 제3 기준 관절값과 상기 제3 관절값을 비교하여, 상기 증강 현실 디바이스에 의해 인식된 상기 사용자의 손과 상기 외부 디바이스에 의해 인식된 상기 사용자의 손의 각도 차이에 대한 제2 각도 보정값을 획득하는 단계를 더 포함하는, 방법. - 제13항 내지 제19항 중 어느 한 항의 방법을 컴퓨터에서 수행하기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220083158A KR20240006289A (ko) | 2022-07-06 | 2022-07-06 | 공간의 위치 좌표계를 동기화하는 증강 현실 디바이스 및 방법 |
PCT/KR2023/009310 WO2024010304A1 (ko) | 2022-07-06 | 2023-07-03 | 공간의 위치 좌표계를 동기화하는 증강 현실 디바이스 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220083158A KR20240006289A (ko) | 2022-07-06 | 2022-07-06 | 공간의 위치 좌표계를 동기화하는 증강 현실 디바이스 및 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20240006289A true KR20240006289A (ko) | 2024-01-15 |
Family
ID=89453788
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220083158A KR20240006289A (ko) | 2022-07-06 | 2022-07-06 | 공간의 위치 좌표계를 동기화하는 증강 현실 디바이스 및 방법 |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR20240006289A (ko) |
WO (1) | WO2024010304A1 (ko) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10234941B2 (en) * | 2012-10-04 | 2019-03-19 | Microsoft Technology Licensing, Llc | Wearable sensor for tracking articulated body-parts |
US10304248B2 (en) * | 2014-06-26 | 2019-05-28 | Korea Advanced Institute Of Science And Technology | Apparatus and method for providing augmented reality interaction service |
KR102317247B1 (ko) * | 2015-06-15 | 2021-10-26 | 한국전자통신연구원 | 영상정보를 이용한 증강현실 기반 손 인터랙션 장치 및 방법 |
KR20170028130A (ko) * | 2015-09-03 | 2017-03-13 | 박준호 | 웨어러블 디바이스 |
KR102184243B1 (ko) * | 2018-07-06 | 2020-11-30 | 한국과학기술연구원 | Imu 센서를 이용한 손가락 동작 기반 인터페이스 제어 시스템 |
-
2022
- 2022-07-06 KR KR1020220083158A patent/KR20240006289A/ko unknown
-
2023
- 2023-07-03 WO PCT/KR2023/009310 patent/WO2024010304A1/ko unknown
Also Published As
Publication number | Publication date |
---|---|
WO2024010304A1 (ko) | 2024-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102637662B1 (ko) | 디바이스를 이용한 화면 처리 방법 및 장치 | |
US8179604B1 (en) | Wearable marker for passive interaction | |
US10078377B2 (en) | Six DOF mixed reality input by fusing inertial handheld controller with hand tracking | |
US9952676B2 (en) | Wearable device with gesture recognition mechanism | |
US10963152B2 (en) | Map interface interaction | |
US20180329209A1 (en) | Methods and systems of smart eyeglasses | |
CN112789578A (zh) | 用于可穿戴或移动设备上的姿势、穿戴、活动或携带检测的神经网络系统 | |
KR20210023680A (ko) | 증강 현실 환경에서의 콘텐트 생성 | |
US20200301513A1 (en) | Methods for two-stage hand gesture input | |
EP3869393A1 (en) | Image recognition method and apparatus, electronic device, and medium | |
US20200380723A1 (en) | Online learning for 3d pose estimation | |
US12105891B2 (en) | Steerable camera for AR hand tracking | |
US11669694B2 (en) | Electronic device for obtaining sentence corresponding to context information and operating method thereof | |
KR20220067964A (ko) | 카메라 시야(fov) 가장자리에서 움직임을 인식하여 전자 장치를 제어하는 방법 및 그 전자 장치 | |
KR20240006289A (ko) | 공간의 위치 좌표계를 동기화하는 증강 현실 디바이스 및 방법 | |
WO2024050263A1 (en) | Wrist rotation manipulation of virtual objects | |
WO2024050260A1 (en) | One-handed zoom operation for ar/vr devices | |
EP3879449A1 (en) | Electronic device for recognizing object in image, and operation method thereof | |
KR20230100472A (ko) | 손의 관절에 관한 위치 정보를 획득하는 증강 현실 디바이스 및 그 동작 방법 | |
KR20230170485A (ko) | 손 동작에 관한 이미지 데이터를 획득하는 전자 장치 및 그 동작 방법 | |
GB2533789A (en) | User interface for augmented reality | |
US20170178380A1 (en) | Real-Time Visualization Mechanism | |
CN112000828A (zh) | 搜索表情图片的方法、装置、电子设备和可读存储介质 | |
KR20230053492A (ko) | 손 동작에 관한 이미지 데이터를 획득하는 전자 장치 및 그 동작 방법 | |
US20240143085A1 (en) | Code scanning via augmented reality device |