KR102021851B1 - Method for processing interaction between object and user of virtual reality environment - Google Patents
Method for processing interaction between object and user of virtual reality environment Download PDFInfo
- Publication number
- KR102021851B1 KR102021851B1 KR1020170157620A KR20170157620A KR102021851B1 KR 102021851 B1 KR102021851 B1 KR 102021851B1 KR 1020170157620 A KR1020170157620 A KR 1020170157620A KR 20170157620 A KR20170157620 A KR 20170157620A KR 102021851 B1 KR102021851 B1 KR 102021851B1
- Authority
- KR
- South Korea
- Prior art keywords
- virtual
- motion
- hand
- finger
- user
- Prior art date
Links
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/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04815—Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
-
- 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
- G06F3/014—Hand-worn input/output arrangements, e.g. data gloves
-
- 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/003—Navigation within 3D models or images
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
본 발명은 가상현실 환경에서의 사용자와 객체 간 상호 작용 처리 방법에 관한 것으로서, HMD(Head Mounted Device)와 핸드 컨트롤러(Hand-Controller)를 이용하여 가상현실 환경에서 실시간 사용자 모션을 제어하는 가상현실 제어 알고리즘을 포함하는 영상 제어 단말을 통해 가상현실 환경에서의 사용자와 객체간 상호 작용 처리 방법에 있어서, 사용자 모션 캡쳐를 통해 읽어낸 사용자의 손을 가상 현실 환경 상에서 가상 핸드를 통해 구현되도록 핸드 컨트롤러와 상기 가상 핸드 간에 동기화를 수행하는 동기화 수행 단계; 상기 가상현실 환경에서 복수의 가상 객체와 가상 핸드의 모션 타입을 표현하기 위한 메타데이터를 자동 처리하여 활성화시키는 주변환경 탐지 단계; 상기 메타데이터를 근거로 하여 각 가상 객체의 타입, 크기, 무게, 위치값을 포함한 가상 객체의 특성을 확인하고, 상기 가상 객체의 특성별로 상기 가상 핸드의 모션 타입을 처리하여 상기 가상 객체와 실시간 상호 작용하도록 하는 상호작용 처리 단계; 및 상기 가상 핸드와 상기 가상 객체의 접촉이 감지되면 상기 가상 핸드를 마디 단위로 세분화하여 핑거모션을 탐지한 후 상기 탐지된 핑거모션에 따라 마디 단위로 손가락을 제어하여 상기 가상 핸드의 모션을 실행하는 모션 제어 단계를 포함한다. 따라서, 본 발명은 따라서, 본 발명은 전체가 아닌 각 손가락 관절의 마디 단위로 스크립트 제어하고, 각 손가락 관절을 마디 단위로 독립 제어하여 핑거 모션을 실행함으로써 우수한 현실감과 정밀한 옴직임 표현이 가능할 뿐만 아니라 별도의 장비 추가 없이 상용화된 HMD로 기술 구현이 가능하고, 이로 인해 영상 정보 처리 및 아이 디스플레이를 작동하기 위한 별도의 처리 과정이 필요 없어 효율적이며, 1개 이상의 HMD 디바이스에 적용될 수 있어 연동성, 확장성 및 유연성이 향상될 수 있다.The present invention relates to a method of processing interaction between a user and an object in a virtual reality environment, and controls a real-time user motion in a virtual reality environment using a head mounted device (HMD) and a hand controller. A method for processing interaction between a user and an object in a virtual reality environment through an image control terminal including an algorithm, the method comprising: a hand controller and the user to implement a user's hand read through user motion capture through a virtual hand in a virtual reality environment; Performing synchronization between the virtual hands; Surrounding environment detection step of automatically processing and activating metadata for representing motion types of a plurality of virtual objects and a virtual hand in the virtual reality environment; Check the characteristics of the virtual object including the type, size, weight, and position value of each virtual object based on the metadata, and process the motion type of the virtual hand for each characteristic of the virtual object to interact with the virtual object in real time. An interaction processing step for acting; And detecting a finger motion by subdividing the virtual hand into units of measure when a contact between the virtual hand and the virtual object is detected, and then controlling a finger by units of measure according to the detected finger motion to execute motion of the virtual hand. Motion control step. Therefore, the present invention, according to the present invention is not only the whole script control of the knuckles of each finger joint, but also independently control each finger joint by the knuckles to perform the finger motion not only excellent realism and precise omime expression can be expressed It is possible to implement the technology with commercially available HMD without additional equipment, and thus it is efficient because there is no need for a separate process for operating image information processing and eye display, and it can be applied to more than one HMD device. And flexibility can be improved.
Description
본 발명은 가상현실 환경에서의 사용자와 객체 간 상호 작용 처리 방법에 관한 것으로, 보다 상세하게는 손 전체가 아닌 각 손가락 관절의 마디 단위로 스크립트 제어하고, 각 손가락 관절을 마디 단위로 독립 제어하여 핑거 모션을 실행함으로써 우수한 현실감과 정밀한 움직임 표현이 가능한 가상현실 환경에서의 사용자와 객체 간 상호 작용 처리 방법에 관한 것이다.The present invention relates to a method of processing an interaction between a user and an object in a virtual reality environment. More specifically, the script is controlled by the node unit of each finger joint rather than the entire hand, and the finger joint is independently controlled by the node unit. The present invention relates to a method of processing interaction between a user and an object in a virtual reality environment that enables excellent motion and precise motion expression by executing motion.
최근 그래픽 효과가 뛰어난 다양한 게임이 출시되어 게이머들의 많은 관심을 받고 있다. 이러한 게임들은 현실과 유사한 그래픽 및 사운드 효과를 포함하는 우수한 컨텐츠로 높은 현실감을 느낄 수 있다는 평가를 받고 있다. 하지만, 키보드와 마우스만으로 게임을 컨트롤하는 현실적인 한계로 인해 게임 참여시 몰입감이 낮다는 단점이 있다. 이러한 게임의 몰입감을 개선하기 위하여 사용자가 실제 동작을 취하는 것으로 캐릭터를 조작하는 가상현실 게임이 출시되고 있다.Recently, various games with excellent graphic effects have been released and are attracting much attention from gamers. These games are evaluated for their high realism with excellent content including realistic graphics and sound effects. However, due to the realistic limitation of controlling the game with only the keyboard and mouse, there is a disadvantage that the immersion is low when participating in the game. In order to improve the immersion of the game, a virtual reality game in which a user manipulates a character by taking a real action has been released.
가상현실은 실제와 유사하지만 실제가 아닌 사이버 공간 환경을 의미한다. 현재 가상현실 기술은 HMD(HEAD MOUNT DISPLAY) 등 기존의 인터페이스 장치들을 활용하여 몰입형 가상현실을 제한적으로 구현하는 방향으로 개발되고 있다. 즉, 기존의 디스플레이(모니터, TV, HMD 등), 스피커, 키보드, 마우스 등의 일반적인 인터페이스 장치들을 활용하는 방향성을 추구하고 있다. 가상현실 구현에 필요한 요소는 3차원 공간성, 실시간 상호작용 및 몰입성이다. 각 요소의 구현을 위하여 컴퓨터 그래픽 기술, 네트워크 통신 기술, 그리고 HMD 등 오감을 자극하는 다수의 입출력 장치 개발 기술이 발전되고 있다.Virtual reality refers to a cyberspace environment that is similar to reality but not real. Currently, virtual reality technology is being developed to restrict immersive virtual reality by utilizing existing interface devices such as HMD (HEAD MOUNT DISPLAY). That is, the present invention seeks to use the existing interface devices such as a display (monitor, TV, HMD, etc.), a speaker, a keyboard, and a mouse. The elements required to implement virtual reality are three-dimensional spatiality, real-time interaction and immersion. In order to implement each element, a number of input / output device development technologies that stimulate the five senses such as computer graphic technology, network communication technology, and HMD have been developed.
특히, 가상현실을 위한 입력기기는 기존에 사용되던 물리 인터페이스인 키보드, 마우스와 달리, 사용자의 신체활동을 직접 인식할 수 있는 기기들이 사용된다. 모션 캡쳐는 3D 모션 기법의 하나인 모션 캡쳐 기술을 그대로 적용한 입력기기이다. 모션 캡쳐 입력 기기 중 모션 캡쳐 카메라는 본래 다양한 형태의 마커를 전신에 부착해야 정상적인 모션 인식이 가능했으나, 기술의 발전으로 인해 마커 없이 모션 인식이 가능한 기기들이 개발되기 시작되었다. 현재 모션 캡쳐 카메라는 키넥트, 옵티 트랙 등 다양한 모션 캡쳐 기기 상용화 되어 있다.In particular, the input device for virtual reality, unlike a keyboard and mouse, which are conventionally used physical interfaces, are devices that can directly recognize a user's physical activity. Motion capture is an input device that adopts motion capture technology, one of 3D motion techniques. Among motion capture input devices, motion capture cameras were originally capable of normal motion recognition by attaching various types of markers to the whole body. However, due to the development of technology, devices capable of motion recognition without markers have been developed. Currently, motion capture cameras are commercialized in various motion capture devices such as Kinect and OptiTrack.
하지만, 가상현실 환경에서의 게임은 대부분 아직까지 단순한 제스처 및 동작만을 이용하는 수준이며, 사용자의 신체를 머리, 손, 다리 등으로 실시간 감지하거나, 센서가 장착된 글러브 등을 착용한 상태로 사용자 손의 움직임을 인식하기도 한다. 이 경우에, 손가락의 움직임에 상관없이 손 단위로 실시간 감지하여 손의 움직임을 애니메이션으로 처리하거나 복합적인 움직임을 애니메이션 사이의 블렌딩 이펙트로 처리하여 가상현실 환경에 반영하기 때문에 손가락의 모양이나 손가락의 움직임에 대한 정밀하고 자연스러운 표현이 불가능하다는 문제점이 있다. However, most of the games in the virtual reality environment still use only simple gestures and gestures, and the user's hands are detected in real time using the head, hands, legs, or the like with a sensored glove. It also recognizes movement. In this case, regardless of the movement of the finger, it is detected by the unit of the hand in real time to animate the movement of the hand or the complex movement as a blending effect between the animation to reflect in the virtual reality environment, so the shape of the finger or the movement of the finger There is a problem that the precise and natural expression of the expression is impossible.
또한, HMD 및 HMD와 연동되는 컨트롤러를 사용하여 가상현실 환경을 구현할 경우에, HMD를 통해 디스플레이되고 있는 가상현실의 영상에 사용자 모션이나 시선 처리에 대한 영상을 실시간 반영하여 출력하도록 영상 정보 처리 및 아이 디스플레이 작동을 위한 별도의 처리 과정이 필요하고, HMD와 컨트롤러 간의 호환성 등의 문제로 인해 HMD마다 지정된 컨트롤러만을 사용해야 하므로 가상현실을 다양하게 즐기고 싶은 사용자는 가상현실을 구현하기 위한 시나리오, 장비 등의 선택 폭이 좁아지는 문제점이 있다. In addition, when implementing a virtual reality environment using the HMD and a controller linked with the HMD, the image information processing and the eye to reflect the image of the user motion or gaze processing in real time to the image of the virtual reality displayed through the HMD The user needs to use a specific controller for each HMD due to the need for a separate processing process for display operation and compatibility between the HMD and the controller. Therefore, a user who wants to enjoy a variety of virtual reality can select a scenario and equipment for implementing the virtual reality. There is a problem of narrowing the width.
본 발명은 핸드 컨트롤러의 트리거 버튼을 이용하여 가상현실 환경에서의 각 가상 객체에 맞는 손의 모션이 화면상에 구현되도록 손 전체가 아닌 각 손가락 관절의 마디 단위로 스크립트 제어하고, 각 손가락 관절을 마디 단위로 독립 제어하여 핑거 모션을 실행함으로써 우수한 현실감과 정밀한 옴직임 표현이 가능한 가상현실 환경에서의 사용자와 객체간 상호 작용 처리 방법을 제공한다. The present invention uses the trigger button of the hand controller to control scripts in the unit of each finger joint, not the entire hand, so that the motion of the hand corresponding to each virtual object in the virtual reality environment is realized on the screen. Provides a method of handling user-object interaction in a virtual reality environment that enables superior motion and precise ombudsmanship by executing finger motion by controlling each unit independently.
실시예들 중에서, 가상현실 환경에서의 사용자와 객체 간 상호 작용 처리 방법은, HMD(Head Mounted Device)와 핸드 컨트롤러(Hand-Controller)를 이용하여 가상현실 환경에서 실시간 사용자 모션을 제어하는 가상현실 제어 알고리즘을 포함하는 영상 제어 단말을 통해 가상현실 환경에서의 사용자와 객체간 상호 작용 처리 방법에 있어서, 사용자 모션 캡쳐를 통해 읽어낸 사용자의 손을 가상 현실 환경 상에서 가상 핸드를 통해 구현되도록 핸드 컨트롤러와 상기 가상 핸드 간에 동기화를 수행하는 동기화 수행 단계; 상기 가상현실 환경에서 복수의 가상 객체와 가상 핸드의 모션 타입을 표현하기 위한 메타데이터를 자동 처리하여 활성화시키는 주변환경 탐지 단계; 상기 메타데이터를 근거로 하여 각 가상 객체의 타입, 크기, 무게, 위치값을 포함한 가상 객체의 특성을 확인하고, 상기 가상 객체의 특성별로 상기 가상 핸드의 모션 타입을 처리하여 상기 가상 객체와 실시간 상호 작용하도록 하는 상호작용 처리 단계; 및 상기 가상 핸드와 상기 가상 객체의 접촉이 감지되면 상기 가상 핸드를 마디 단위로 세분화하여 핑거모션을 탐지한 후 상기 탐지된 핑거모션에 따라 마디 단위로 손가락을 제어하여 상기 가상 핸드의 모션을 실행하는 모션 제어 단계를 포함하는 것을 특징으로 한다.Among the embodiments, a method of processing interaction between a user and an object in a virtual reality environment may include a virtual reality control that controls real-time user motion in a virtual reality environment using a head mounted device (HMD) and a hand controller. A method for processing interaction between a user and an object in a virtual reality environment through an image control terminal including an algorithm, the method comprising: a hand controller and the user to implement a user's hand read through user motion capture through a virtual hand in a virtual reality environment; Performing synchronization between the virtual hands; Surrounding environment detection step of automatically processing and activating metadata for representing motion types of a plurality of virtual objects and a virtual hand in the virtual reality environment; Check the characteristics of the virtual object including the type, size, weight, and position value of each virtual object based on the metadata, and process the motion type of the virtual hand for each characteristic of the virtual object to interact with the virtual object in real time. An interaction processing step for acting; And detecting a finger motion by subdividing the virtual hand into units of measure when a contact between the virtual hand and the virtual object is detected, and then controlling a finger by units of measure according to the detected finger motion to execute motion of the virtual hand. It characterized in that it comprises a motion control step.
이때, 상기 핸드 컨트롤러는 사용자 손과 가상 핸드가 연동되도록 하는 트리거 버튼을 포함하는 것을 특징으로 한다. In this case, the hand controller is characterized in that it comprises a trigger button for the user hand and the virtual hand to work together.
상기 상호작용 처리 단계는, 상기 메타데이터에 근거하여 상기 가상 객체의 타입을 확인하는 단계; 상기 가상 객체의 타입이 도구인 경우에 상기 가상 핸드를 기준으로 해당 도구의 기설정된 위치값을 확인하여 가상 핸드의 툴 모션(tool motion)이 진행되도록 하는 단계; 상기 가상 객체의 타입이 도구가 아닌 일반 물체인 경우에 해당 물체의 크기와 무게를 확인하고, 상기 물체의 크기와 무게가 기설정된 크기와 무게 이상인 경우에 스냅/그랩 모션(snap/grab motion)이 진행되도록 하는 단계; 및 상기 가상 객체의 타입이 도구가 아닌 일반 물체인 경우에 상기 물체의 크기와 무게가 기설정된 크기와 무게 이하인 경우에 픽 모션(pick motion)이 진행되도록 하는 단계를 포함하는 것을 특징으로 한다. The interaction processing step may include identifying a type of the virtual object based on the metadata; When the type of the virtual object is a tool, confirming a preset position value of the tool based on the virtual hand so that a tool motion of the virtual hand proceeds; When the type of the virtual object is a general object rather than a tool, the size and weight of the object are checked. When the size and weight of the object are greater than or equal to a preset size and weight, the snap / grab motion is performed. Allowing it to proceed; And picking motion when the size and weight of the object is less than a predetermined size and weight when the type of the virtual object is a general object instead of a tool.
상기 모션 제어 단계는, 상기 가상 객체와 상기 가상 핸드가 접촉되는 접촉시점이 감지되면, 상기 접촉 시점에서 각 가상 객체에 맞는 상기 가상 핸드의 핑거 모션을 손가락 관절의 마디 단위로 처리하는 모션 타입 실행 명령을 출력하는 핑거 모션 탐지 단계; 및 상기 모션 타입 실행 명령에 따라 상기 접촉 시점 이후에 해당 가상 객체와 가상 핸드가 상호 작용하도록 각 손가락 관절을 마디 단위로 움직이도록 핑거 모션을 실행하는 핑거 모션 제어 단계를 포함하는 것을 특징으로 한다. The motion control step may include a motion type execution command for processing a finger motion of the virtual hand corresponding to each virtual object in units of knuckles of the finger joint when the contact point at which the virtual object is in contact with the virtual hand is detected. Detecting a finger motion; And a finger motion control step of performing a finger motion to move each finger joint in units of nodes so that the corresponding virtual object and the virtual hand interact with each other after the contact point in accordance with the motion type execution command.
상기 핑거 모션 탐지 단계는, 상기 가상 핸드의 손가락 관절을 말단 관절, 보조 관절 및 주 관절의 마디 단위로 구분하고, 상기 가상 객체에 접촉하는 접촉 시점에 말단 관절, 보조 관절 및 주 관절의 탐지 순서로 핑거 모션을 탐지하는 것을 특징으로 한다. The finger motion detection may be performed by dividing the finger joint of the virtual hand into nodes of the distal joint, the auxiliary joint, and the main joint, and detecting the distal joint, the auxiliary joint, and the main joint at the contact point of contact with the virtual object. Detecting a finger motion.
상기 핑거 모션 제어 단계는, 상기 가상 핸드의 손가락을 말단 관절, 보조 관절 및 주 관절의 마디 단위로 구분하고, 기본 핑거 모션 또는 상기 가상 객체에 맞는 모션 제어시 상기 주 관절, 보조 관절 및 말단 관절의 제어 순서로 스크립트 제어하는 것을 특징으로 한다.The finger motion control may include dividing a finger of the virtual hand into nodes of the distal joint, the auxiliary joint, and the main joint, and controlling the primary finger motion or the motion of the virtual object. The script control in the control order.
본 발명의 가상현실 환경에서의 사용자와 객체 간 상호 작용 처리 방법은, 손 전체가 아닌 각 손가락 관절의 마디 단위로 스크립트 제어하고, 각 손가락 관절을 마디 단위로 독립 제어하여 핑거 모션을 실행함으로써 우수한 현실감과 정밀한 옴직임 표현이 가능한 효과가 있다. In the virtual reality environment of the present invention, a method of processing interaction between a user and an object may be performed by script control of each finger joint instead of the entire hand and independently of each finger joint to execute finger motion. And precise grammatical expression is possible.
또한, 본 발명은 별도의 장비 추가 없이 상용화된 HMD로 기술 구현이 가능하고, 이로 인해 영상 정보 처리 및 아이 디스플레이를 작동하기 위한 별도의 처리 과정이 필요 없어 효율적일 뿐만 아니라, 1개 이상의 HMD 디바이스에 적용될 수 있어 연동성, 확장성 및 유연성이 향상될 수 있는 효과가 있다.In addition, the present invention can be implemented with a commercially available HMD without the addition of additional equipment, which is efficient because it does not require a separate process for operating image information processing and eye display, it is applied to more than one HMD device As a result, interoperability, extensibility and flexibility can be improved.
도 1은 본 발명의 일 실시예에 따른 가상현실 환경에서의 사용자와 객체 간 상호 작용 처리 시스템을 설명하는 도면이다.
도 2는 본 발명의 일 실시예에 따른 가상현실 환경에서의 사용자와 객체 간 상호 작용 처리 방법을 설명하는 순서도이다.
도 3은 본 발명의 일 실시예에 따른 핸드 컨트롤러를 이용한 가상핸드의 모션 구현 상태를 설명하는 도면이다.
도 4는 도 2의 상호 작용 처리 알고리즘의 동작을 설명하는 순서도이다.
도 5는 도 4의 상호 작용 알고리즘의 동작에 따라 가상 객체와 가상핸드의 핑거 모션 구현 상태를 설명하는 도면이다.
도 6은 도 2의 모션 제어 알고리즘의 핑거 모션 탐지 과정을 설명하는 도면이다.
도 7은 도 2의 모션 제어 알고리즘의 핑거 모션 제어 과정을 설명하는 도면이다.
도 8은 도 6 및 도 7의 핑거 모션 탐지 과정과 핑거 모션 제어 과정이 유기적으로 연동되는 모션 제어 알고리즘의 동작을 설명하는 도면이다.1 is a diagram illustrating a system for processing interaction between a user and an object in a virtual reality environment according to an embodiment of the present invention.
2 is a flowchart illustrating a method for processing interaction between a user and an object in a virtual reality environment according to an embodiment of the present invention.
3 is a diagram illustrating a motion implementation state of a virtual hand using a hand controller according to an embodiment of the present invention.
4 is a flowchart illustrating the operation of the interaction processing algorithm of FIG.
FIG. 5 is a diagram illustrating a finger motion implementation state of a virtual object and a virtual hand according to the operation of the interaction algorithm of FIG. 4.
FIG. 6 is a diagram illustrating a finger motion detection process of the motion control algorithm of FIG. 2.
FIG. 7 is a diagram illustrating a finger motion control process of the motion control algorithm of FIG. 2.
8 is a diagram illustrating an operation of a motion control algorithm in which the finger motion detection process and the finger motion control process of FIGS. 6 and 7 are organically linked.
본 발명에 기재된 실시예 및 도면에 도시된 구성은 본 발명의 바람직한 실시예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 표현하는 것은 아니므로, 본 발명의 권리범위는 본문에 설명된 실시예 및 도면에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.Configurations shown in the embodiments and drawings described in the present invention are merely preferred embodiments of the present invention, and do not represent all of the technical idea of the present invention, the scope of the invention is the embodiments and drawings described in the text It should not be construed as limited by That is, since the embodiments may be variously modified and may have various forms, the scope of the present invention should be understood to include equivalents capable of realizing the technical idea. In addition, the objects or effects presented in the present invention does not mean that a specific embodiment should include all or only such effects, the scope of the present invention should not be understood as being limited thereby.
여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.All terms used herein have the same meaning as commonly understood by one of ordinary skill in the art unless otherwise defined. The terms defined in the commonly used dictionary should be interpreted to correspond with the meanings in the context of the related art, and should not be interpreted as having an ideal or excessively formal meaning not explicitly defined in the present invention.
도 1은 본 발명의 일 실시예에 따른 가상현실 환경에서의 사용자와 객체 간 상호 작용 처리 시스템을 설명하는 도면이다.1 is a diagram illustrating a system for processing interaction between a user and an object in a virtual reality environment according to an embodiment of the present invention.
도 1을 참고하면, 가상현실 환경에서의 사용자와 객체 간 상호 작용 처리 시스템은, HMD(Head Mounted Device)(100), 핸드 컨트롤러(Hand-Controller)(200) 및 영상 제어 단말(300)을 포함한다. Referring to FIG. 1, an interaction processing system between a user and an object in a virtual reality environment includes a head mounted device (HMD) 100, a
HMD(100)는 카메라(110), 디스플레이(120), 모션 감지부(130), 영상 처리부(140), 통신부(150) 및 제어부(160)를 포함하지만 이에 한정되지 않고, 전원장치, 메모리, LED 등의 구성요소들을 더 포함할 수 있다. The HMD 100 includes, but is not limited to, a
카메라(110)는 전면에 부착되어 외부 환경 및 사용자 모션을 촬영하고, 모션 감지부(120)는 사용자의 움직임을 감지하며, 영상 처리부(130)는 카메라(110)를 통해 촬영되는 외부 환경에 대한 촬영 영상을 디스플레이(120) 상에 실시간으로 표시한다. 경우에 따라서, 모션 감지부(120)는 HMD(100)에 내장되거나 HMD(100)와 일정 거리 이상 이격된 위치에 배치되어 HMD(100)와 상호 통신을 통해 사용자의 움직임에 대한 모션 감지 데이터를 처리할 수 있다. The
통신부(150)는 핸드 컨트롤러(200)와 무선 통신하고, 제어부(160)는 통신부(150)를 통해 전송되는 사용자의 조작 명령에 따라 HMD(100)에 사용자의 움직임을 반영한 가상현실 영상이 표시되도록 한다. The
핸드 컨트롤러(200)는 통신부(210), 조작부(220) 및 제어부(230)를 포함하지만 이에 한정되지 않고, 전원 장치, 메모리, LED, 진동 모터 등의 구성요소들을 더 포함할 수 있다.The
통신부(210)는 HMD(100)와 통신하면서 사용자의 조작 명령을 전송하고, 조작부(220)는 다수의 버튼이나 센서들을 이용하여 사용자 움직임에 대한 조작 명령을 입력하며, 제어부(230)는 통신부(210)와 조작부(220)의 동작을 제어하여 사용자의 조작 명령을 HMD(100)에 전달하면서 각 구성요소의 동작 상태를 확인하여 LED 등에 표시되도록 한다. 이때, 조작부(220)는 가상 객체에 부합되는 가상핸드의 모션이 가상현실 환경에 구현되도록 하는 트리거 버튼(221)을 포함할 수 있다. The
영상 제어 단말(300)은 통신 모듈(310), 인터페이스 모듈(320), 제어 모듈(330) 및 저장 모듈(340)을 포함하는 단말로서, 데스트탑 PC, 노트북, 태블릿 PC, 랩탑 PC, 스마트 디바이스 등의 통신 및 영상 처리가 가능한 영상 기기 중 어느 하나가 될 수 있고, 외부 기기와 연동될 수 있다. The
통신 모듈(310)은 HMD(100) 및 핸드 컨트롤러(200) 뿐만 아니라 외부 기기와 블루투스, 와이파이 등의 근거리 무선 통신, 이동 통신을 포함한 다양한 방식으로 통신을 수행한다. The
인터페이스 모듈(320)은 HMD(100), 핸드 컨트롤러(200) 및 외부 기기와의 인터페이스를 담당한다. The
제어 모듈(330)은 HMD(100)의 촬영 영상을 통해 실제 공간의 실제 객체 이미지를 추출하고, 촬영된 실제 객체의 주변 환경에서 특정 위치마다 디스플레이될 가상 이미지를 결정하며, 핸드 컨트롤러(200)를 통해 가상 객체에 대한 사용자 모션이 결정되면 가상 객체와 결정된 사용자 모션을 포함하는 가상 이미지를 HMD(100)로 제공한다. The
이때, 제어 모듈(330)은 핸드 컨트롤러(200)를 이용하여 가상 이미지 내의 가상 핸드와 실제 사용자 손이 동기화되도록 하는 동기화 알고리즘, 주변 환경에 대한 기본 정보를 처리하는 메타데이터 처리 알고리즘, 사용자 모션에 따라 가상 핸드와 가상 객체가 상호 작용하도록 하는 상호 작용 처리 알고리즘, 사용자의 핑거 모션을 탐지한 후 가상 핸드의 핑거 모션을 제어하는 모션 제어 알고리즘 등 가상현실 환경에 사용자 모션이 반영되도록 하는 가상현실 제어 알고리즘을 포함하고 있고, 각 알고리즘이 유기적으로 연동되어 사용자 모션을 처리하도록 제어한다. 이때, 가상현실 제어 알고리즘은 가상현실 서비스를 제공하는 서비스 제공사를 통해 어플리케이션 형태로 제공될 수 있고, 네트워크를 통해 주기적으로 업데이트될 수 있다. In this case, the
저장부(340)는 가상 현실 환경에 관련된 시나리오 영상들 및 가상현실 제어 알고리즘, 가상 현실 관련된 기기 정보들을 저장한다. The
도 2는 본 발명의 일 실시예에 따른 가상현실 환경에서의 사용자와 객체 간 상호 작용 처리 방법을 설명하는 순서도이고, 도 3은 본 발명의 일 실시예에 따른 핸드 컨트롤러를 이용한 가상핸드의 모션 구현 상태를 설명하는 도면이다.2 is a flowchart illustrating a method for processing interaction between a user and an object in a virtual reality environment according to an embodiment of the present invention, and FIG. 3 illustrates a motion of a virtual hand using a hand controller according to an embodiment of the present invention. It is a figure explaining a state.
도 2 및 도 3을 참고하면, 가상현실 환경에서의 사용자와 객체 간 상호 작용 처리 방법은, HMD(100)에 의해 촬영된 실제 공간에 대한 촬영 영상이 수신되면, 촬영된 실제 공간 상에 디스플레이될 가상 객체를 결정하고, 가상 객체에 대한 타입 및 위치에 기초하여 기설정된 시나리오에 따라 가상 이미지를 출력한다.Referring to FIGS. 2 and 3, a method of processing interaction between a user and an object in a virtual reality environment may be displayed on the captured real space when a captured image of the real space photographed by the
이때, 가상현실 제어 알고리즘은 가상 객체의 종류, 가상 객체별 위치 정보, 가상 객체별 가상 핸드의 모션 타입 등에 관한 메타데이터를 HMD(100)에 제공한다. In this case, the virtual reality control algorithm provides the
가상현실 제어 알고리즘은 가상 이미지 내에서 가상 핸드와 가상 객체가 상호 작용하도록 동기화 알고리즘을 수행하여 핸드 컨트롤러(200)의 트리거 버튼(221)을 이용해 핸드 컨트롤러(200)와 가상 핸드를 동기화시킨다.(S10)The virtual reality control algorithm performs a synchronization algorithm to interact with the virtual hand and the virtual object in the virtual image to synchronize the
즉, 도 3에 도시된 바와 같이, 동기화 알고리즘은 가상현실 환경에서 가상 핸드(10)의 영상이 출력되면 사용자가 핸드 컨트롤러(200)의 트리거 버튼(221)을 클릭하고, 트리거 버튼(221)에 의해 트리거 신호가 전송되면 가상 핸드(300)와 동기화를 수행한다. 이러한 방식으로 핸드 컨트롤러(200)의 트리거 버튼(221)의 클릭만으로도 가상현실 환경 속의 도구나 물체 등의 잡기, 꺾기, 집기 등의 다양한 모션 타입을 구현할 수 있다. That is, as shown in FIG. 3, when the image of the
가상현실 제어 알고리즘은 가상현실 환경에 가상 객체의 종류와 다양한 가상 핸드의 모션 타입을 표현하기 위한 메타데이터 처리 알고리즘을 수행하여 메타데이터를 자동 처리한다.(S20) 여기서 가상 객체는 가상현실 환경에서 사용자가 핸드 컨트롤러(200)를 통해 접촉시 가상 핸드의 모션 제어가 필요한 모든 객체들을 의미한다. The virtual reality control algorithm automatically processes metadata by performing a metadata processing algorithm for expressing the types of virtual objects and motion types of various virtual hands in the virtual reality environment (S20). The virtual object is a user in the virtual reality environment. Refers to all objects requiring motion control of the virtual hand when contacting through the
가상현실 제어 알고리즘은 HMD(100)의 촬영 영상을 통해 주변 환경을 탐지하여 망치, 카메라, 연필 등의 공구도구/필기도구, 병, 컵, 핸드, 열쇠, 동전 등의 일반 물체를 포함한 가상 객체에 대한 객체 메타데이터를 자동 처리하고, 가상 객체별 모션 타입(tool, snap, grab, pick 등)을 포함하는 가상 핸드의 핸드 메타데이터를 자동 처리한다. 이때, 객체 메타데이터에는 가상 객체의 타입, 크기, 무게, 가상 핸드를 기준으로 정해진 위치값 등을 포함한다.The virtual reality control algorithm detects the surrounding environment through the captured image of the
상호 작용 처리 알고리즘은 통해 메타 데이터에 근거로 하여 각 가상 객체의 타입, 크기, 무게, 위치값을 포함한 가상 객체의 특성을 확인하고, 가상 객체의 특성별로 가상 핸드의 모션 타입에 대한 상호 작용 처리를 수행한다.(S30) The interaction processing algorithm checks the characteristics of the virtual object, including the type, size, weight, and position value of each virtual object, based on metadata, and performs interaction processing on the motion type of the virtual hand by the characteristics of the virtual object. (S30)
모션 제어 알고리즘은 가상 핸드와 가상 객체에 대한 접촉을 감지하고, 가상 핸드를 손 전체가 아니라 손가락 관절, 즉 주 관절, 보조 관절 및 말단 관절의 마디 단위로 세분화하여 핑거 모션을 탐지한 후 탐지된 핑거 모션에 따라 각 마디 단위로 가상 핸드의 핑거 모션을 스크립트 제어한다.(S40) The motion control algorithm detects the contact between the virtual hand and the virtual object and detects the finger motion by subdividing the virtual hand into the knuckles of the finger joints, that is, the main joint, the secondary joint, and the distal joint, rather than the entire hand. According to the motion, the finger motion of the virtual hand is script-controlled by each node.
이때, 상호 작용 처리 알고리즘(S3)과 모션 제어 알고리즘(S4)은 설명의 편의상 구분한 것으로서, 상호 작용 처리 알고리즘과 모션 제어 알고리즘은 유기적으로 연동되어 동작한다. In this case, the interaction processing algorithm S3 and the motion control algorithm S4 are classified for convenience of description, and the interaction processing algorithm and the motion control algorithm operate in an organic manner.
즉, 모션 제어 알고리즘이 가상 핸드가 가상 객체에 대한 접촉시 핑거 모션을 탐지하면 상호 작용 처리 알고리즘은 가상 핸드가 접촉된 가상 객체의 타입, 크기, 무게, 위치값에 따라 가상 핸드의 모션 타입(tool, snap, grab, pick 등)을 결정한 후 모션 제어 알고리즘이 가상 핸드의 모션 타입에 따라 핑거 모션에 대한 실행 명령을 출력한다.That is, if the motion control algorithm detects a finger motion when the virtual hand touches the virtual object, the interaction processing algorithm determines the motion type of the virtual hand according to the type, size, weight, and position value of the virtual object to which the virtual hand is contacted. , snap, grab, pick, etc.) and then the motion control algorithm outputs the execution command for the finger motion according to the motion type of the virtual hand.
도 4는 도 2의 상호 작용 처리 알고리즘의 동작을 설명하는 순서도이고, 도 5는 도 4의 상호 작용 알고리즘의 동작에 따라 가상 객체와 가상핸드의 핑거 모션 구현 상태를 설명하는 도면이다.4 is a flowchart illustrating an operation of the interaction processing algorithm of FIG. 2, and FIG. 5 is a diagram illustrating a finger motion implementation state of a virtual object and a virtual hand according to the operation of the interaction algorithm of FIG. 4.
도 4 및 도 5를 참고하면, 상호 작용 처리 알고리즘은 모션 제어 알고리즘을 통해 가상 핸드의 가상 객체 접촉이 탐지되면, 객체 메타데이터에 근거하여 가상 객체의 타입이 도구인지, 일반 물체인지를 확인한다.(S31)4 and 5, when the virtual object contact of the virtual hand is detected through the motion control algorithm, the interaction processing algorithm determines whether the type of the virtual object is a tool or a general object based on the object metadata. (S31)
상호 작용 처리 알고리즘은 가상 객체의 타입이 필기도구 또는 공구 도구인 경우에 가상 핸드를 기준으로 해당 도구의 기설정된 위치값을 확인하여 가상 핸드의 툴 모션(tool motion)이 진행되도록 한다.(S2, S33, S34) When the type of the virtual object is a writing tool or a tool tool, the interaction processing algorithm checks a predetermined position value of the corresponding tool based on the virtual hand so that the tool motion of the virtual hand proceeds (S2, S33, S34)
핸드 컨트롤러(200)는 진동 기능을 통해 사용자가 가상 객체에 접촉하면 사용자가 직접 진동을 느끼도록 하고, 가상 객체에 대한 사용자의 핑거 모션이 가상 핸드에 실시간 반영되도록 한다. 즉, 핸드 컨트롤러(200)는 사용자가 가상현실 환경에서 펜치를 잡는 순간에 진동 효과를 출력하고, 상호 작용 처리 알고리즘과 모션 제어 알고리즘은 펜치로 나사를 조이는 등의 가상 핸드의 핑거 모션을 실행한다.The
상호 작용 처리 알고리즘은 가상 객체의 타입이 도구가 아닌 일반 물체인 경우에 해당 물체의 크기와 무게를 확인하고, 물체의 크기와 무게가 기설정된 크기와 무게 이상인 경우, 즉 컵이나 스마트폰 등인 경우에 스냅/그랩 모션(snap/grab motion)이 진행되도록 한다.(S35, S36, S37)The interaction processing algorithm checks the size and weight of the virtual object if it is a normal object, not a tool, and if the size and weight of the object is greater than or equal to the preset size and weight, that is, a cup or a smartphone. Allows snap / grab motion to proceed (S35, S36, S37).
그러나 상호 작용 처리 알고리즘은 물체의 크기와 무게가 기설정된 크기와 무게 이하인 경우, 즉 열쇠, 동전 등인 경우에 픽 모션(pick motion)이 진행되도록 한다.(S38, S39) However, the interaction processing algorithm allows the pick motion to proceed when the size and weight of the object is less than or equal to the preset size and weight, that is, a key or a coin (S38, S39).
이와 같이, 상호 작용 처리 알고리즘은 가상 객체에 대해 기설정된 위치값과 특성을 확인한 후 해당 가상 객체에 맞게 모션 제어 알고리즘을 통해 핑거 모션을 구현하도록 한다. As described above, the interaction processing algorithm checks the preset position value and the characteristic of the virtual object and implements the finger motion through the motion control algorithm for the virtual object.
도 6은 도 2의 모션 제어 알고리즘의 핑거 모션 탐지 과정을 설명하는 도면이고, 도 7은 도 2의 모션 제어 알고리즘의 핑거 모션 제어 과정을 설명하는 도면이다.6 is a diagram illustrating a finger motion detection process of the motion control algorithm of FIG. 2, and FIG. 7 is a diagram illustrating a finger motion control process of the motion control algorithm of FIG. 2.
도 6에 도시된 바와 같이, 모션 제어 알고리즘은 가상 객체와 가상 핸드의 접촉하는 접촉시점이 감지되면, 접촉 시점에서 각 가상 객체에 접촉하는 말단 관절(1), 보조 관절(2) 및 주 관절(3)의 탐지 순서로로 핑거 모션을 탐지한다. As shown in FIG. 6, when the contact point of contact between the virtual object and the virtual hand is detected, the motion control algorithm detects the distal joint 1, the
도 7에 도시된 바와 같이, 모션 제어 알고리즘은 접촉 시점 이후에 가상 객체에 대해 가상 핸드가 기본 핑거 모션을 실행하거나 툴 모션, 스냅/그랩 모션, 픽 모션을 실행할 경우에 자연스러운 핑거 모션을 구현하기 위해 주관절, 보조 관절 및 말단 관절의 제어 순서로 가상 핸드가 움직이도록 핑거 모션을 제어한다. As shown in FIG. 7, the motion control algorithm is used to implement a natural finger motion when the virtual hand executes a basic finger motion or a tool motion, snap / grab motion, or pick motion on a virtual object after a contact point. Finger motion is controlled to move the virtual hand in the control order of the elbow, secondary joint and distal joint.
도 8은 도 6 및 도 7의 핑거 모션 탐지 과정과 핑거 모션 제어 과정이 유기적으로 연동되는 모션 제어 알고리즘의 동작을 설명하는 도면이다.8 is a diagram illustrating an operation of a motion control algorithm in which the finger motion detection process and the finger motion control process of FIGS. 6 and 7 are organically linked.
도 8을 참고하면, 모션 제어 알고리즘은 펜치를 잡기 전의 기본 핑거 모션, 펜치 잡기 시도 상태에서의 핑거 모션, 펜치 잡기 상태에서의 핑거 모션, 펜치를 놓은 후의 핑거 모션, 다시 기본 핑거 모션으로 모션 제어를 수행한다.Referring to FIG. 8, the motion control algorithm performs motion control using a basic finger motion before holding the pliers, a finger motion in a pliers grabbing attempt, a finger motion in a pliers grabbing state, a finger motion after releasing the pliers, and a basic finger motion again. Perform.
이때, 물체 잡기 시도 상태에서의 핑거 모션, 펜치 잡기 상태에서의 핑거 모션, 펜치를 놓은 후의 핑거 모션의 사이에는 펜치와 가상 핸드의 접촉을 탐지하는 핑거 모션 탐지 과정을 수행한다. 즉, 핑거 모션 탐지 과정에서는 가상 객체와 가상 핸드가 접촉한 접촉 시점에 해당 가상 객체에 맞는 핑거 모션을 처리할 수 있도록 모션 타입 실행 명령을 출력한다. 핑거 제어 과정에서는 모션 타입 실행 명령에 따라 해당 객체에 맞는 핑거 모션을 손 전체가 아닌 손가락의 마디 단위로 스크립트 제어한다. At this time, a finger motion detection process for detecting contact between the pliers and the virtual hand is performed between the finger motion in the object catch attempt state, the finger motion in the pinch catch state, and the finger motion after placing the pliers. That is, in the finger motion detection process, a motion type execution command is output so that the finger motion corresponding to the virtual object can be processed at the contact point of contact between the virtual object and the virtual hand. In the finger control process, according to the motion type execution command, the script motion for the object is scripted by the node of the finger rather than the entire hand.
따라서, 가상 핸드는 각 손가락의 마디인 주 관절, 보조 관절 및 말단 관절이 독립적으로 움직여 다양한 핑거 모션의 표현이 가능하고, 신속하고 정밀한 모션 제어를 수행할 수 있어 자연스러운 움직임을 표현할 수 있다. Therefore, the virtual hand can express various finger motions by independently moving the main joint, the secondary joint, and the distal joint, which are nodes of each finger, and can perform fast and precise motion control to express natural movement.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although described above with reference to a preferred embodiment of the present invention, those skilled in the art will be variously modified and changed within the scope of the invention without departing from the spirit and scope of the invention described in the claims below I can understand that you can.
100 : HMD 200 : 핸드 컨트롤러
300 : 영상 제어 단말 310 : 통신 모듈
320 : 인터페이스 모듈 330 : 제어 모듈
340 : 저장 모듈100: HMD 200: hand controller
300: image control terminal 310: communication module
320: interface module 330: control module
340: storage module
Claims (6)
상기 HMD에 의해 촬영된 실제 공간에 대한 촬영 영상을 획득하는 촬영 영상 획득 단계;
상기 촬영된 실제 공간 상에 디스플레이 될 가상 객체를 결정하고, 상기 가상 객체에 대한 타입 및 위치에 기초하여 기 설정된 시나리오에 따라 가상 이미지를 출력하는 가상 이미지 출력 단계;
상기 가상 객체의 타입, 크기, 무게, 가상 핸드를 기준으로 정해진 위치값을 포함하는 메타데이터를 상기 HMD에 제공하는 메타데이터 제공단계;
사용자가 상기 핸드 컨트롤러에 구비된 트리거 버튼을 조작하여 생성된 트리거 신호가 수신되면 사용자 모션 캡쳐를 통해 읽어낸 사용자의 손을 가상 현실 환경 상에서 가상 핸드를 통해 구현되도록 동기화 알고리즘에 의해 핸드 컨트롤러와 상기 가상 핸드 간에 동기화를 수행하는 동기화 수행 단계;
상기 가상현실 환경에서 복수의 가상 객체와 가상 핸드의 모션 타입을 표현하기 위한 메타데이터를 자동 처리하여 활성화시키는 주변환경 탐지 단계;
상기 메타데이터를 근거로 하여 각 가상 객체의 타입, 크기, 무게, 위치값을 포함한 가상 객체의 특성을 확인하고, 상기 가상 객체의 특성별로 상기 가상 핸드의 모션 타입을 처리하여 상기 가상 객체와 실시간 상호 작용하도록 하는 상호작용 처리 단계;
상기 가상 객체와 상기 가상 핸드가 접촉되는 접촉시점이 감지되면, 상기 접촉 시점에서 각 가상 객체에 맞는 상기 가상 핸드의 핑거 모션을 손가락 관절의 마디 단위로 처리하는 모션 타입 실행 명령을 출력하는 핑거모션 탐지단계; 및
상기 모션 타입 실행 명령에 따라 상기 접촉 시점 이후에 해당 가상 객체와 가상 핸드가 상호 작용하도록 각 손가락 관절을 마디 단위로 움직이도록 핑거 모션을 실행하는 핑거 모션 제어 단계;를 포함하는 것을 특징으로 하는 가상현실 환경에서의 사용자와 객체간 상호 작용 처리 방법.
Interaction between the user and the object in the virtual reality environment through an image control terminal including a virtual reality control algorithm for controlling real-time user motion in the virtual reality environment using a head mounted device (HMD) and a hand-controller. In the processing method,
A photographed image obtaining step of obtaining a photographed image of the real space photographed by the HMD;
A virtual image output step of determining a virtual object to be displayed on the photographed real space and outputting a virtual image according to a preset scenario based on a type and a position of the virtual object;
Providing metadata to the HMD, the metadata including a position value determined based on the type, size, weight, and virtual hand of the virtual object;
When a trigger signal generated by a user operating a trigger button provided in the hand controller is received, the hand controller and the virtual device are synchronized by a synchronization algorithm such that the user's hand, which is read through user motion capture, is implemented through a virtual hand in a virtual reality environment. A synchronization performing step of performing synchronization between hands;
Surrounding environment detection step of automatically processing and activating metadata for representing motion types of a plurality of virtual objects and a virtual hand in the virtual reality environment;
Check the characteristics of the virtual object including the type, size, weight, and position value of each virtual object based on the metadata, and process the motion type of the virtual hand for each characteristic of the virtual object to interact with the virtual object in real time. An interaction processing step for acting;
When a contact point at which the virtual object is in contact with the virtual hand is detected, a finger motion detection outputting a motion type execution command for processing a finger motion of the virtual hand corresponding to each virtual object at each node of a finger joint at the contact point is performed. step; And
And a finger motion control step of performing a finger motion to move each finger joint in units of nodes so that the corresponding virtual object and the virtual hand interact with each other after the contact point in accordance with the motion type execution command. How to handle interactions between users and objects in the environment.
상기 상호작용 처리 단계는,
상기 메타데이터에 근거하여 상기 가상 객체의 타입을 확인하는 단계;
상기 가상 객체의 타입이 도구인 경우에 상기 가상 핸드를 기준으로 해당 도구의 기설정된 위치값을 확인하여 가상 핸드의 툴 모션(tool motion)이 진행되도록 하는 단계;
상기 가상 객체의 타입이 도구가 아닌 일반 물체인 경우에 해당 물체의 크기와 무게를 확인하고, 상기 물체의 크기와 무게가 기설정된 크기와 무게 이상인 경우에 스냅/그랩 모션(snap/grab motion)이 진행되도록 하는 단계; 및
상기 가상 객체의 타입이 도구가 아닌 일반 물체인 경우에 상기 물체의 크기와 무게가 기설정된 크기와 무게 이하인 경우에 픽 모션(pick motion)이 진행되도록 하는 단계를 포함하는 것을 특징으로 하는 가상현실 환경에서의 사용자와 객체 간 상호 작용 처리 방법.
The method of claim 1,
The interaction processing step,
Identifying a type of the virtual object based on the metadata;
When the type of the virtual object is a tool, confirming a preset position value of the tool based on the virtual hand so that a tool motion of the virtual hand proceeds;
When the type of the virtual object is a general object rather than a tool, the size and weight of the object are checked. When the size and weight of the object are greater than or equal to a preset size and weight, the snap / grab motion is performed. Allowing it to proceed; And
And if the type of the virtual object is a general object rather than a tool, pick motion when the size and weight of the object is less than or equal to a preset size and weight. How to handle interactions between users and objects in.
상기 핑거 모션 탐지 단계는,
상기 가상 핸드의 손가락 관절을 말단 관절, 보조 관절 및 주 관절의 마디 단위로 구분하고, 상기 가상 객체에 접촉하는 접촉 시점에 말단 관절, 보조 관절 및 주 관절의 탐지 순서로 핑거 모션을 탐지하는 것을 특징으로 하는 가상현실 환경에서의 사용자와 객체간 상호 작용 처리 방법.
The method of claim 1,
The finger motion detection step,
The finger joint of the virtual hand is divided into nodes of the distal joint, the auxiliary joint, and the main joint, and finger motion is detected in the order of detection of the distal joint, the auxiliary joint, and the main joint at the point of contact with the virtual object. A method of handling interaction between user and object in virtual reality environment.
상기 핑거 모션 제어 단계는,
상기 가상 핸드의 손가락을 말단 관절, 보조 관절 및 주 관절의 마디 단위로 구분하고, 기본 핑거 모션 또는 상기 가상 객체에 맞는 모션 제어시 상기 주 관절, 보조 관절 및 말단 관절의 제어 순서로 스크립트 제어하는 것을 특징으로 하는 가상현실 환경에서의 사용자와 객체간 상호 작용 처리 방법.The method of claim 1,
The finger motion control step,
The finger of the virtual hand is divided into nodes of the distal joint, the secondary joint, and the main joint, and script control is performed in the control order of the main joint, the secondary joint, and the distal joint when controlling the basic finger motion or motion corresponding to the virtual object. A method of handling interaction between a user and an object in a virtual reality environment.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170157620A KR102021851B1 (en) | 2017-11-23 | 2017-11-23 | Method for processing interaction between object and user of virtual reality environment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170157620A KR102021851B1 (en) | 2017-11-23 | 2017-11-23 | Method for processing interaction between object and user of virtual reality environment |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190059726A KR20190059726A (en) | 2019-05-31 |
KR102021851B1 true KR102021851B1 (en) | 2019-11-04 |
Family
ID=66657355
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170157620A KR102021851B1 (en) | 2017-11-23 | 2017-11-23 | Method for processing interaction between object and user of virtual reality environment |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102021851B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11617953B2 (en) | 2020-10-09 | 2023-04-04 | Contact Control Interfaces, Llc. | Virtual object interaction scripts |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111857353A (en) * | 2020-08-02 | 2020-10-30 | 江湜玮 | Virtual reality environment auxiliary system |
KR102649487B1 (en) * | 2020-11-19 | 2024-03-21 | 김기홍 | System for providing virtual experience contents to feel five senses |
KR20230106328A (en) | 2022-01-06 | 2023-07-13 | 한국전자통신연구원 | Augmented reality or virtual reality device for tracking body joint and method using the same |
WO2023149671A1 (en) * | 2022-02-03 | 2023-08-10 | 삼성전자 주식회사 | Augmented reality device switching input mode, and method therefor |
EP4459429A1 (en) | 2022-02-03 | 2024-11-06 | Samsung Electronics Co., Ltd | Augmented reality device switching input mode, and method therefor |
WO2024071718A1 (en) * | 2022-09-28 | 2024-04-04 | 삼성전자 주식회사 | Electronic device for supporting augmented reality function and operating method thereof |
CN115904077A (en) * | 2022-11-28 | 2023-04-04 | 南方电网储能股份有限公司 | Data glove interface implementation method, device and equipment for electric power interactive courseware |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101562827B1 (en) * | 2008-10-23 | 2015-10-23 | 삼성전자주식회사 | Apparatus and method for manipulating virtual object |
US8988437B2 (en) * | 2009-03-20 | 2015-03-24 | Microsoft Technology Licensing, Llc | Chaining animations |
KR20110011362A (en) * | 2009-07-28 | 2011-02-08 | 삼성전자주식회사 | System and method for extracting grasping pattern of virtual object |
KR101779569B1 (en) | 2016-04-18 | 2017-09-19 | 김종만 | Input Apparatus Interlocking Virtual Reality Device |
KR20170120299A (en) | 2016-04-21 | 2017-10-31 | 주식회사 엘시스 | Realistic contents service system using leap motion |
-
2017
- 2017-11-23 KR KR1020170157620A patent/KR102021851B1/en active IP Right Grant
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11617953B2 (en) | 2020-10-09 | 2023-04-04 | Contact Control Interfaces, Llc. | Virtual object interaction scripts |
Also Published As
Publication number | Publication date |
---|---|
KR20190059726A (en) | 2019-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102021851B1 (en) | Method for processing interaction between object and user of virtual reality environment | |
JP7411133B2 (en) | Keyboards for virtual reality display systems, augmented reality display systems, and mixed reality display systems | |
US11221730B2 (en) | Input device for VR/AR applications | |
US10761612B2 (en) | Gesture recognition techniques | |
US10960298B2 (en) | Boolean/float controller and gesture recognition system | |
CN107533373B (en) | Input via context-sensitive collision of hands with objects in virtual reality | |
JP2022540315A (en) | Virtual User Interface Using Peripheral Devices in Artificial Reality Environment | |
US12056271B2 (en) | Gaze timer based augmentation of functionality of a user input device | |
US20120113223A1 (en) | User Interaction in Augmented Reality | |
WO2020146121A1 (en) | Hand motion and orientation-aware buttons and grabbable objects in mixed reality | |
CN113892074A (en) | Arm gaze driven user interface element gating for artificial reality systems | |
CN108885521A (en) | Cross-environment is shared | |
US11194400B2 (en) | Gesture display method and apparatus for virtual reality scene | |
US20200387213A1 (en) | Artificial reality systems with personal assistant element for gating user interface elements | |
EP2558924B1 (en) | Apparatus, method and computer program for user input using a camera | |
CN108431734A (en) | Touch feedback for non-touch surface interaction | |
Stuerzlinger et al. | The value of constraints for 3D user interfaces | |
CN113892075A (en) | Corner recognition gesture-driven user interface element gating for artificial reality systems | |
Alshaal et al. | Enhancing virtual reality systems with smart wearable devices | |
WO2019166005A1 (en) | Smart terminal, sensing control method therefor, and apparatus having storage function | |
TWI788607B (en) | Human computer interaction system and human computer interaction method | |
JP2015135572A (en) | Information processing apparatus and control method of the same | |
US20150355717A1 (en) | Switching input rails without a release command in a natural user interface | |
KR101962464B1 (en) | Gesture recognition apparatus for functional control | |
EP4345584A1 (en) | Control device, control method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |