KR20180129140A - Method of user mosion analyzing for virtual reality connection, method and device for virtual reality connection - Google Patents
Method of user mosion analyzing for virtual reality connection, method and device for virtual reality connection Download PDFInfo
- Publication number
- KR20180129140A KR20180129140A KR1020170064710A KR20170064710A KR20180129140A KR 20180129140 A KR20180129140 A KR 20180129140A KR 1020170064710 A KR1020170064710 A KR 1020170064710A KR 20170064710 A KR20170064710 A KR 20170064710A KR 20180129140 A KR20180129140 A KR 20180129140A
- Authority
- KR
- South Korea
- Prior art keywords
- user
- walking
- determining
- calculating
- avatar
- Prior art date
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/103—Detecting, measuring or recording devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
- A61B5/11—Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb
- A61B5/112—Gait analysis
-
- 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
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/103—Detecting, measuring or recording devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
- A61B5/11—Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb
- A61B5/1121—Determining geometric values, e.g. centre of rotation or angular range of movement
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B5/00—Measuring for diagnostic purposes; Identification of persons
- A61B5/103—Detecting, measuring or recording devices for testing the shape, pattern, colour, size or movement of the body or parts thereof, for diagnostic purposes
- A61B5/11—Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb
- A61B5/1126—Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb using a particular sensing technique
- A61B5/1127—Measuring movement of the entire body or parts thereof, e.g. head or hand tremor, mobility of a limb using a particular sensing technique using markers
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/01—Indexing scheme relating to G06F3/01
- G06F2203/012—Walk-in-place systems for allowing a user to walk in a virtual environment while constraining him to a given position in the physical environment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
Abstract
Description
아래의 실시예는 가상 현실 연동을 위한 보행 분석 방법, 가상 현실 연동 방법 및 장치에 관한 것이다.The following embodiments relate to a gait analysis method, a virtual reality interworking method, and an apparatus for virtual reality interworking.
가상 현실(virtual reality) 영상은 가상 현실 기기에 의해 제어되는 가상 환경에 따른 동적 변화를 재현함으로써, 사용자가 가상 현실의 움직임을 실제 현실의 움직임과 같이 느낄 수 있게 한다.The virtual reality image reproduces the dynamic change according to the virtual environment controlled by the virtual reality device so that the user can feel the movement of the virtual reality as the motion of the real reality.
종래의 가상 현실 장치는, 좌석에 앉아 화면상에서 벌어지는 상황에 따라 컨트롤러를 조작함으로써, 사용자에게 시각 및 청각의 체험을 가능하게 하였으나, 최근에는, 가상 현실을 사용자에게 제공함에 있어서, 사용자의 실제 동작(motion)을 가상 현실에 접목시키는 로코모션(locomotion) 장치를 통해, 사용자가 가상 현실 영상에 몰입할 수 있는 환경을 제공하고 있다.The conventional virtual reality apparatus allows the user to experience the visual and auditory experience by operating the controller according to the situation on the screen sitting on the seat. However, recently, in providing the virtual reality to the user, motion through a locomotion device, which allows users to immerse themselves in virtual reality images.
가상 현실을 체험함에 있어서, 사용자의 보행 동작을 가상 현실 상에 구현하는 것은 중요한 문제이다. 사용자의 보행 동작과 가상 현실 상의 아바타의 동작에 차이가 생기면, 사용자가 불편함을 느끼거나, 가상 현실에 몰입하지 못하는 문제가 있다. 특히, 로코모션 장치는, 사용자를 특정한 위치에 구속하면서, 사용자에게 제한된 동작만을 제공하기 때문에, 사용자가 실제 보행을 하는 경우와 비교하여, 사용자의 동작을 가상현실에 불완전하게 구현하는 문제가 있다.In experiencing the virtual reality, it is an important problem to implement the user 's walking motion on the virtual reality. If there is a difference between the user's walking motion and the operation of the avatar on the virtual reality, there is a problem that the user feels uncomfortable or immersed in the virtual reality. Particularly, since the locomotion device restricts the user to a specific position and provides only a limited action to the user, there is a problem that the user's action is imperfectly implemented in the virtual reality as compared with the case where the user actually performs the walking.
또한, 사용자의 위치를 제한하기 위한 로코모션 시스템의 특성상, 사용자의 신체의 일부가 로코모션 장치에 의하여 가려지기 때문에, 사용자의 모션을 정확하게 캐치할 수 없는 문제가 발생할 수 있다.Also, due to the characteristics of the locomotion system for restricting the position of the user, a part of the user's body is hidden by the locomotion device, so that the user's motion can not be accurately caught.
따라서, 사용자를 제한된 범위 내에 위치시키면서도, 사용자의 움직임에 순응하여 다 자유도의 움직임을 구현하고, 사용자의 모션을 가상 현실 영상에 연동시키기 위한 장치가 필요한 실정이다.Accordingly, there is a need for a device for realizing movement of many degrees of freedom in accordance with a movement of a user while linking a motion of a user to a virtual reality image while positioning the user within a limited range.
이와 관련하여, 국내공개공보 제10-2015-0065303호는 손목 궤적을 이용한 전신 동작 생성 장치 및 방법에 대한 발명을 개시한다.In this regard, Korean Patent Laid-Open Publication No. 10-2015-0065303 discloses an apparatus and method for generating a whole body motion using a wrist trajectory.
일 실시 예에 따른 목적은, 사용자 신체의 관성 정보 및 위치 정보를 통해 보행을 분석함으로써, 보다 정확한 사용자 보행 동작을 분석할 수 있는 보행 분석 방법을 제공하기 위한 것이다.An object of an embodiment is to provide a gait analysis method that can analyze a gait operation more accurately by analyzing a gait through inertial information and position information of a user's body.
일 실시 예에 따른 목적은, 사용자의 허리 기울기를 통해 보행 방향을 설정함으로써, 실제 사용자의 보행 방향과 근접한 보행 분석 방법을 제공하기 위한 것이다.An object according to an embodiment is to provide a gait analysis method that is close to an actual user's gait direction by setting a gait direction through a waist inclination of a user.
일 실시 예에 따른 목적은, 가상 현실 내의 아바타의 동작을 사용자의 실제 보행 동작과 유사하게 연동시킴으로써, 사용자가 실제 가상 현실을 체험하는 것과 유사한 가상 현실 연동 방법을 제공하기 위한 것이다.An object according to an embodiment is to provide a virtual reality interworking method similar to a case where a user experiences an actual virtual reality by interlocking an operation of an avatar in a virtual reality similar to a user's actual walking motion.
일 실시 예에 따른 가상 현실 연동을 위한 사용자 보행 분석 방법은, 상기 사용자 신체 부분에 대한 위치 정보를 획득하는 단계; 상기 사용자 신체 부분에 대한 관성 정보를 획득하는 단계; 및 상기 위치 정보 및 상기 관성 정보에 기초하여, 상기 사용자 보행 동작을 결정하는 단계를 포함할 수 있다.According to an embodiment of the present invention, there is provided a method for analyzing user gait for virtual reality interworking, comprising: acquiring positional information on the user's body part; Obtaining inertia information for the user body part; And determining the user walking operation based on the position information and the inertia information.
일 측에 있어서, 상기 위치 정보를 획득하는 단계는, 입력 영상(observed image)으로부터 사용자 영상을 추출하는 단계; 상기 사용자 영상으로부터 사용자 신체 부분을 인식하는 단계; 및 상기 인식된 신체 부분의 위치 정보를 획득하는 단계를 포함할 수 있다.In one aspect of the present invention, the step of acquiring the position information includes: extracting a user image from an observed image; Recognizing a user body part from the user image; And acquiring position information of the recognized body part.
일 측에 있어서, 상기 관성 정보를 획득하는 단계는, 상기 관성 정보를 획득하기 위한 사용자 신체 부분을 설정하는 단계; 상기 설정된 신체 부분의 가속도를 측정하는 단계; 및 상기 설정된 신체 부분의 회전 가속도를 측정하는 단계를 포함할 수 있다.In one aspect, the step of acquiring inertia information comprises: setting a user's body part for obtaining the inertia information; Measuring an acceleration of the set body part; And measuring the rotational acceleration of the set body part.
일 측에 있어서, 상기 사용자의 보행 동작을 결정하는 단계는, 상기 사용자의 보행 방향을 결정하는 단계; 및 상기 사용자의 보행 속도를 결정하는 단계를 포함할 수 있다.In one aspect, the step of determining a walking operation of the user includes: determining a walking direction of the user; And determining a walking speed of the user.
일 측에 있어서, 상기 사용자의 보행 방향을 결정하는 단계는, 상기 사용자의 허리 기울기 방향에 따라 상기 보행 방향을 결정하는 단계를 포함할 수 있다.In one aspect, the step of determining the walking direction of the user may include the step of determining the walking direction in accordance with the waist tilting direction of the user.
일 측에 있어서, 상기 사용자의 보행 방향을 결정하는 단계는, 상기 사용자의 제 1 부분 및 제 2 부분의 평면 좌표값을 설정하는 단계; 상기 제 1 부분에 대한 제 2 부분의 방향 벡터를 산출하는 단계; 및 상기 방향 벡터를 상기 보행 방향으로 설정하는 단계를 포함할 수 있다.In one aspect, determining the walking direction of the user comprises: setting plane coordinate values of the first portion and the second portion of the user; Calculating a direction vector of a second portion for the first portion; And setting the direction vector in the walking direction.
일 측에 있어서, 상기 사용자의 보행 속도를 결정하는 단계는, 상기 사용자 신체의 관성 정보에 따른 제 1 센싱값을 산출하는 단계; 상기 사용자 신체 위치 정보에 따른 제 2 센싱값을 산출하는 단계; 상기 사용자 신체 위치 정보에 따른 제 3 센싱값을 산출하는 단계; 및 상기 제 1 센싱값, 제 2 센싱값 및 제 3 센싱값에 기초하여, 상기 사용자의 보행 속도를 산출하는 단계를 포함할 수 있다.In one aspect, the step of determining the walking speed of the user includes: calculating a first sensing value according to inertia information of the user's body; Calculating a second sensing value according to the user's body position information; Calculating a third sensing value according to the user's body position information; And calculating the walking speed of the user based on the first sensing value, the second sensing value, and the third sensing value.
일 측에 있어서, 상기 제 1 센싱값을 산출하는 단계는, 상기 사용자 발(foot)의 이동 속도를 측정하는 단계; 상기 측정된 이동 속도 값을 누적하여 저장하는 단계; 및 상기 누적된 이동 속도값의 평균치(normalize)에 따른 제 1 센싱값을 산출하는 단계를 포함할 수 있다.In one aspect of the present invention, the step of calculating the first sensing value includes: measuring a moving speed of the user foot; Accumulating and storing the measured moving speed values; And calculating a first sensing value according to an average value (normalize) of the accumulated moving speed values.
일 측에 있어서, 상기 제 2 센싱값을 산출하는 단계는, 상기 사용자의 허리 기울기를 측정하는 단계; 및 상기 측정된 허리 기울기를 기 설정된 수치 값으로 변환하는 단계를 포함할 수 있다.In one aspect of the present invention, the step of calculating the second sensing value includes: measuring a waist inclination of the user; And converting the measured waist slope to a predetermined numerical value.
일 측에 있어서, 상기 제 3 센싱값을 산출하는 단계는, 상기 사용자 양 무릎간 거리를 측정하는 단계; 상기 측정된 거리의 변화량에 따른 제 3 센싱값을 산출하는 단계를 포함할 수 있다.In one aspect, the step of calculating the third sensing value may include: measuring the distance between the user and the knee; And calculating a third sensing value according to the variation of the measured distance.
일 측에 있어서, 상기 보행 동작을 결정하는 단계는, 상기 사용자의 신체 부분의 관성 정보에 기초하여, 상기 사용자의 보행 여부를 결정하는 단계를 더 포함할 수 있다.The step of determining the walking operation may further include a step of determining whether the user is walking based on the inertia information of the body part of the user.
일 실시 예에 따른 사용자 보행 동작에 따른 가상 현실 연동 방법은, 영상 정보에 기초하여, 사용자 신체 부분의 위치 정보를 획득하는 단계; 관성 센서를 통해, 사용자 다리의 관성 정보를 획득하는 단계; 상기 위치 정보 및 관성 정보에 기초하여, 상기 사용자의 보행 동작을 결정하는 단계; 및 상기 결정된 보행 동작을 상기 가상 현실 내 사용자의 아바타(avatar)에 연동시키는 단계를 포함할 수 있다.According to an embodiment of the present invention, there is provided a virtual reality interworking method comprising: acquiring position information of a user's body part based on image information; Acquiring inertia information of the user's leg through the inertial sensor; Determining a walking operation of the user based on the position information and the inertia information; And associating the determined gait operation with an avatar of a user in the virtual reality.
일 측에 있어서, 상기 보행 동작을 결정하는 단계는, 상기 위치 정보에 기초하여, 상기 사용자의 보행 방향을 결정하는 단계; 상기 위치 정보 및 관성 정보에 기초하여, 상기 사용자의 보행 속도를 결정하는 단계를 포함할 수 있다.Wherein the step of determining the walking operation includes: determining a walking direction of the user based on the positional information; And determining the walking speed of the user based on the position information and the inertia information.
일 측에 있어서, 상기 사용자의 보행 방향을 결정하는 단계는, 상기 사용자의 골반 및 목의 위치 정보에 기초하여, 상기 골반 및 목 각각의 평면 좌표값을 설정하는 단계; 및 상기 골반에 대한 상기 목의 방향 벡터를 산출하는 단계를 포함할 수 있다.The step of determining the walking direction of the user on the side includes setting plane coordinate values of each of the pelvis and neck based on positional information of the user's pelvis and neck; And calculating a direction vector of the neck with respect to the pelvis.
일 측에 있어서, 상기 아바타에 연동시키는 단계는, 상기 산출된 방향 벡터에 따라 상기 아바타의 이동 방향을 연동시키는 단계를 포함할 수 있다.In one aspect, the step of interlocking with the avatar may include interlocking the moving direction of the avatar according to the calculated direction vector.
일 측에 있어서, 상기 사용자의 보행 속도를 결정하는 단계는, 상기 사용자 다리의 이동 속도에 따른 제 1 센싱값을 산출하는 단계; 상기 사용자 허리 기울기에 따른 제 2 센싱값을 산출하는 단계; 상기 사용자 무릎간 거리에 따른 제 3 센싱값을 산출하는 단계; 및 상기 제 1 센싱값, 제 2 센싱값 및 제 3 센싱값에 기초하여, 상기 사용자의 보행 속도를 산출하는 단계를 포함할 수 있다.In one aspect, the step of determining the walking speed of the user includes: calculating a first sensing value corresponding to a moving speed of the user leg; Calculating a second sensing value according to the user's waist inclination; Calculating a third sensing value according to the distance between the user's knees; And calculating the walking speed of the user based on the first sensing value, the second sensing value, and the third sensing value.
일 측에 있어서, 상기 아바타에 연동시키는 단계는, 상기 사용자의 신장(height)에 따른 보정값을 산출하는 단계; 상기 보정값을 통해, 상기 산출된 보행 속도를 보정하는 단계; 상기 보정된 보행 속도에 따라 상기 아바타의 이동 속도를 설정하는 단계를 포함할 수 있다.In one aspect, the step of interlocking with the avatar may include: calculating a correction value according to a height of the user; Correcting the calculated walking speed through the correction value; And setting the moving speed of the avatar according to the corrected walking speed.
일 측에 있어서, 상기 아바타에 연동시키는 단계는 상기 아바타의 이동 제한 속도를 설정하는 단계; 상기 아바타의 이동 속도를 상기 이동 제한 속도 이하로 제한하는 단계를 포함할 수 있다.In one aspect of the present invention, the step of interlocking with the avatar may include: setting a movement limit speed of the avatar; And limiting the moving speed of the avatar to less than or equal to the movement limit speed.
일 측에 있어서, 상기 아바타에 연동시키는 단계는, 상기 관성 센서로부터 측정된 수치값의 변화가 없는 경우, 상기 아바타의 보행 동작을 정지시키는 단계를 포함할 수 있다.The step of interlocking with the avatar may include a step of stopping the walking operation of the avatar when there is no change in the numerical value measured by the inertial sensor.
일 실시 예에 따른 컴퓨터 판독 가능 저장매체는, 상기 어느 하나의 방법을 수행하기 위한 명령어들을 포함할 수 있다.The computer readable storage medium according to one embodiment may include instructions for performing any of the methods described above.
일 실시 예에 따른 사용자의 보행 동작의 가상 현실 연동 장치는, 상기 사용자 신체 부분의 위치 정보를 획득하기 위한 위치 감지부; 상기 사용자 신체에 부착되고, 부착된 부분의 관성 정보를 획득하기 위한 관성 감지부; 상기 위치 정보 및 관성 정보에 기초하여, 상기 사용자의 보행 동작을 분석하는 모션 분석부; 및 상기 모션 분석부 및 상기 가상 현실을 연동시키기 위한 제어부를 포함할 수 있다.A virtual reality interworking apparatus for a walking operation of a user according to an exemplary embodiment includes a position sensing unit for acquiring position information of the user's body part; An inertial sensing unit attached to the user's body for acquiring inertial information of the attached part; A motion analyzer for analyzing the user's walking motion based on the position information and the inertia information; And a controller for interlocking the motion analyzer and the virtual reality.
일 실시 예에 가상 현실 연동을 위한 보행 분석 방법은, 사용자 신체의 관성 정보 및 위치 정보를 통해 보행을 분석함으로써, 보다 정확한 사용자 보행 동작을 분석할 수 있다.In one embodiment, the gait analysis method for interworking with virtual reality can analyze the gait operation more precisely by analyzing the gait through the inertia information and the position information of the user's body.
일 실시 예에 따른 가상 현실 연동을 위한 보행 분석 방법은, 사용자의 허리 기울기를 통해 보행 방향을 설정함으로써, 실제 사용자의 보행 방향과 근접한 보행 분석을 할 수 있다.The gait analysis method for interlocking virtual reality according to an embodiment can perform gait analysis close to the actual user's gait direction by setting the gait direction through the slope of the user's waist.
일 실시 예에 따른 가상 현실 연동 방법은, 가상 현실 내의 아바타의 동작을 사용자의 실제 보행 동작과 유사하게 연동시킴으로써, 사용자가 실제 가상 현실을 체험하는 것과 유사한 느낌을 줄 수 있다.The virtual reality interworking method according to an embodiment can give the user a feeling similar to the actual virtual reality by interlocking the operation of the avatar in the virtual reality similar to the actual walking operation of the user.
일 실시 예에 따른 보행 분석 방법 및 가상 현실 연동 방법의 효과는 이상에서 언급된 것들에 한정되지 않으며, 언급되지 아니한 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The effects of the gait analysis method and the virtual reality interworking method according to the embodiment are not limited to those mentioned above, and other effects not mentioned can be clearly understood by those skilled in the art from the following description.
본 명세서에 첨부되는 다음의 도면들은 본 발명의 바람직한 일 실시예를 예시하는 것이며, 발명의 상세한 설명과 함께 본 발명의 기술적 사상을 더욱 이해시키는 역할을 하는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어 해석 되어서는 아니 된다.
도 1은 일 실시 예에 따른 가상 현실 연동 장치의 모식도이다.
도 2는 일 실시 예에 따른 위치 감지부의 위치 정보 획득 과정을 도시하는 모식도이다.
도 3은 일 실시 예에 따른 관성 감지부가 관성 정보를 획득하는 과정을 도시하는 모식도이다.
도 4는 일 실시 예에 따른 보행 동작 분석 방법의 순서도이다.
도 5는 일 실시 예에 따른 보행 동작 결정 단계의 순서도이다.
도 6은 일 실시 예에 따른 사용자 보행 방향 결정 단계의 순서도이다.
도 7은 일 실시 예에 따른 보행 방향 결정 방법을 도시한다.
도 8은 일 실시 예에 따른 사용자 보행 속도를 결정하는 단계의 순서도이다.
도 9는 일 실시 예에 따른 제 1 센싱값 산출 방식에 대한 순서도이다.
도 10은 일 실시 예에 따른 제 2 센싱값 산출 방식에 대한 순서도이다.
도 11은 일 실시 예에 따른 제 3 센싱값 산출 방식에 대한 순서도이다.
도 12는 일 실시 예에 따른 가상 현실 연동 방법의 순서도이다.
도 13은 일 실시 예에 따른 보행 동작을 아바타에 연동시키는 단계에 대한 순서도이다.
도 14는 일 실시 예에 따른 아바타 이동 방향의 연동 방법을 도시하는 도면이다.
도 15는 일 실시 예에 따른 아바타를 연동시키는 단계에 대한 순서도이다.
도 16은 일 실시 예에 따른 아바타를 연동시키는 단계에 대한 순서도이다.
도 17은 일 실시 예에 따른 가상 현실 연동 방법에 대한 순서도이다.BRIEF DESCRIPTION OF THE DRAWINGS The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate preferred embodiments of the invention and, together with the description, serve to further the understanding of the technical idea of the invention, It should not be construed as limited.
1 is a schematic diagram of a virtual reality interworking apparatus according to an embodiment.
2 is a schematic diagram illustrating a process of acquiring position information of a position sensing unit according to an exemplary embodiment of the present invention.
3 is a schematic diagram showing a process of acquiring inertia information by the inertial sensing unit according to an embodiment.
4 is a flowchart of a walking motion analysis method according to an embodiment.
FIG. 5 is a flowchart of a step of determining a walking operation according to an embodiment.
6 is a flowchart of a user walking direction determination step according to an embodiment.
Fig. 7 shows a walking direction determination method according to an embodiment.
8 is a flowchart of steps for determining a user's walking speed according to one embodiment.
9 is a flowchart of a first sensing value calculation method according to an embodiment.
10 is a flowchart of a second sensing value calculation method according to an embodiment.
11 is a flowchart of a third sensing value calculation method according to an embodiment.
12 is a flowchart of a virtual reality interworking method according to an embodiment.
13 is a flowchart illustrating a step of linking a walking operation according to an embodiment to an avatar.
FIG. 14 is a diagram showing a method of interlocking in the moving direction of the avatar according to one embodiment.
FIG. 15 is a flowchart of a step of associating an avatar according to an embodiment.
FIG. 16 is a flowchart illustrating a step of associating an avatar according to an embodiment.
17 is a flowchart of a virtual reality interworking method according to an embodiment.
이하, 실시 예들을 예시적인 도면을 통해 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 실시 예를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 실시 예에 대한 이해를 방해한다고 판단되는 경우에는 그 상세한 설명은 생략한다. Hereinafter, embodiments will be described in detail with reference to exemplary drawings. It should be noted that, in adding reference numerals to the constituent elements of the drawings, the same constituent elements are denoted by the same reference symbols as possible even if they are shown in different drawings. In the following description of the embodiments, detailed description of known functions and configurations incorporated herein will be omitted when it may make the best of an understanding clear.
또한, 실시 예의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다. In describing the components of the embodiment, terms such as first, second, A, B, (a), and (b) may be used. These terms are intended to distinguish the constituent elements from other constituent elements, and the terms do not limit the nature, order or order of the constituent elements. When a component is described as being "connected", "coupled", or "connected" to another component, the component may be directly connected or connected to the other component, Quot; may be " connected, " " coupled, " or " connected. &Quot;
어느 하나의 실시 예에 포함된 구성요소와, 공통적인 기능을 포함하는 구성요소는, 다른 실시 예에서 동일한 명칭을 사용하여 설명하기로 한다. 반대되는 기재가 없는 이상, 어느 하나의 실시 예에 기재한 설명은 다른 실시 예에도 적용될 수 있으며, 중복되는 범위에서 구체적인 설명은 생략하기로 한다.The components included in any one embodiment and the components including common functions will be described using the same names in other embodiments. Unless otherwise stated, the description of any one embodiment may be applied to other embodiments, and a detailed description thereof will be omitted in the overlapping scope.
도 1은 일 실시 예에 따른 가상 현실 연동 장치(1)의 모식도이다.1 is a schematic diagram of a virtual
도 1을 참조하면, 일 실시 예에 따른 가상 현실 연동 장치(1)는, 사용자(user, U)의 보행 동작을 가상 현실에 연동시킴으로써, 가상 현실을 체험하는 사용자(U)의 몰입감을 향상시킬 수 있다. 예를 들어, 가상 현실 연동 장치(1)는, 가상 현실 내에서 사용자(U)로 설정되어 있는 객체에게 사용자(U)의 보행 동작에 대응하는 움직임을 부여할 수 있다. 가상 현실 내의 객체는 아바타(avatar, A)로 지칭될 수 있다. 가상 현실 연동 장치(1)는, 사용자(U)의 실제 동작을 분석하고, 분석된 데이터에 따라 결정된 보행 동작을 아바타(A)에 연동시킴으로써, 아바타(A)의 움직임을 사용자(U)의 실제 보행 동작과 유사하게 재현할 수 있다.Referring to FIG. 1, a virtual
사용자(U)가 가상 현실을 체험하는 경우, 사용자(U)는 도 1과 같은 로코모션(locomotion) 장치 내에 위치할 수 있다. 로코모션 장치는 사용자(U)의 위치를 베이스(B)(base, B)상으로 제한하면서, 사용자(U)의 자유로운 움직임을 가능하게 할 수 있다. 사용자(U)가 로코모션 장치 내에서 보행 동작 하는 경우, 사용자(U)의 실제 위치는 보행 동작에 관계 없이, 베이스(B) 상의 일정 범위에 위치할 수 있다. 이 경우, 가상 현실 연동 장치(1)는, 사용자(U)의 보행 동작에 대응하여 아바타(A)의 보행 동작을 구현함으로써, 사용자(U)의 보행 동작에 따른 실제 위치 이동과 같은 아바타(A)의 위치 이동을 재현할 수 있다. 다시 말하면, 디스플레이(display, D)에 표시되는 아바타(A)의 위치 변화는, 사용자(U)의 실제 위치와 관계없이, 사용자(U)의 보행 동작만으로 구현될 수 있다. 일 실시 예에 따른 가상 현실 연동 장치(1)는, 위치 센서, 관성 센서, 모션 분석부(130) 및 제어부(140)를 포함할 수 있다.If the user U experiences a virtual reality, the user U may be located in the locomotion device as in Fig. The locomotion device may allow free movement of the user U while restricting the position of the user U on the base B (base, B). When the user U is walking in the locomotion device, the actual position of the user U may be located in a certain range on the base B, regardless of the walking motion. In this case, the virtual
위치 감지부(110)는 사용자(U) 신체 부분(body parts)에 대한 위치 정보를 획득할 수 있다. 위치 감지부는 사용자 신체 부분의 포인트(Point)를 설정하고, 해당 포인트 지점에 대한 위치 정보를 획득할 수 있다. 위치 감지부(110)는 사용자(U) 관절에 대한 위치 정보, 예를 들어, 머리, 목, 어깨, 팔꿈치, 팔목, 손, 골반, 무릎, 발목, 발 등의 관절 위치에 대한 정보를 실시간으로 획득할 수 있다. 위치 감지부(110)는, 사용자(U)를 포함하는 입력 영상을 획득하고, 입력 영상으로부터 사용자(U) 영상을 추출할 수 있다. 위치 감지부(110)는, 사용자(U)에 적외선을 투사하고, 사용자(U)로부터 반사된 적외선에 기초하여 사용자(U)의 각 신체 부분에 대한 3차원 위치 정보를 인식할 수 있다. 위치 감지부(110)는, 예를 들어, 적외선 센서 및 카메라를 포함하는 키네틱(kinetic) 센서를 포함할 수 있다. 이 경우, 위치 감지부(110)는 사용자(U) 영상으로부터 사용자(U) 신체 부분을 인식하고, 인식된 신체 부분의 위치 정보를 획득할 수 있다. 예를 들어, 위치 감지부(110)는 사용자(U) 영상으로부터 복수의 관절을 인식하고, 각 관절의 위치에 대한 좌표 정보를 획득할 수 있다. The
관성 감지부(120)는, 사용자(U) 신체 부분에 대한 관성 정보를 획득할 수 있다. 예를 들어, 관성 감지부(120)는 관성 정보를 획득하기 위한 사용자(U) 신체 부분, 예를 들어, 사용자(U)의 다리(leg), 허리(waist)등과 같은 부분에 부착되고, 부착된 부분의 상태 값을 실시간으로 측정할 수 있다. 관성 감지부(120)는, 사용자(U) 신체 부분의 X, Y, Z방향에 대한 가속도와, 요(yaw), 롤(roll), 피치(pitch)에 대한 각 가속도를 실시간으로 측정할 수 있다. 관성 감지부(120)는, 예를 들어, 3축 가속도 센서, 3축 자이로 센서 및 3축 지자기 센서를 포함하는 관성 센서(IMU, Inertia Measurement Unit)을 포함할 수 있다. 관성 감지부(120)는, 사용자(U) 신체 부분에 대한 관성 정보를 실시간으로 획득함으로써, 사용자(U) 보행에 따른 신체 부위의 기울기, 이동 방향 및 속도 등의 정보를 획득할 수 있다.The
모션 분석부(130)는, 위치 감지부(110) 및 관성 감지부(120)로부터 획득한 사용자(U) 신체 부위에 대한 위치 정보 및 관성 정보에 기초하여, 사용자(U)의 보행 동작을 분석할 수 있다. 가상 현실을 체험하는 사용자(U)의 위치는 로코모션 장치 내에 위치하기 때문에, 모션 분석부(130)는 사용자(U) 신체 부분에 대한 위치 정보 및 관성 정보를 통해, 사용자(U)의 보행 동작에 따른 보행 방향 및 보행 속도를 결정하고, 이를 통해 사용자(U)의 보행 동작을 결정할 수 있다.The
제어부(140)는, 모션 분석부(130) 및 가상 현실을 연동시킬 수 있다. 제어부(140)는 모션 분석부(130)를 통해 결정된 사용자(U)의 보행 동작을 가상 현실 내 사용자(U) 아바타(A)에 연동시킴으로써, 사용자(U)의 실제 보행에 따른 움직임을 아바타(A)를 통해 재현할 수 있다. 이 경우, 제어부(140)는 가상 현실 내에서 구현되는 아바타(A)의 이동 방향 및 이동 속도를 조절함으로써, 가상 현실을 체험하는 사용자(U)가 불편함, 예를 들어, 사용자(U)의 보행 동작 및 아바타(A)의 재현 동작의 불일치를 통해 나타나는 멀미 현상을 완화시킬 수 있다.The
도 2는 일 실시 예에 따른 위치 감지부(110)가 위치 정보를 획득하는 과정을 도시하는 모식도이다.2 is a schematic diagram showing a process of the
도 2를 참조하면, 일 실시 예에 따른 위치 감지부(110)는, 사용자(U)의 신체 부분의 위치 정보를 획득할 수 있다. 위치 감지부(110)는 가상 현실을 체험하는 사용자(U)의 영상으로부터 사용자(U)의 신체 부분을 인식하고, 인식한 신체 부분에 대한 3차원 위치 좌표를 획득할 수 있다. 위치 감지부(110)는 사용자(U) 신체를 각 관절로 구분하고, 구분된 관절의 좌표를 모션 분석부(130)에 제공할 수 있다. 예를 들어, 위치 감지부(110)는 도 2와 같이, 베이스(B)의 중심을 원점(origin)으로 설정하고, 사용자(U) 신체의 각 부분, 예를 들어, 목(neck), 골반(pelvis), 무릎(knee)등의 위치를 원점에 대한 절대 좌표값으로 설정할 수 있다. 이와 같은 방식에 의하면, 사용자(U)의 여러 신체 부분의 상대적인 위치 변화를 수치값으로 확인할 수 있기 때문에, 각 신체 부분의 기울기, 위치 변화, 방향성과 같은 정보를 빠르고 정확하게 확인할 수 있다. 이하, 설명의 편의를 위해 베이스(B)의 중심을 원점(origin)으로 가정하여 설명하도록 한다.Referring to FIG. 2, the
도 3은, 일 실시 예에 따른 관성 감지부(120)가 관성 정보를 획득하는 과정을 도시하는 모식도이다.FIG. 3 is a schematic diagram illustrating a process in which the
도 3을 참조하면, 일 실시 예에 따른 관성 감지부(120)는, 사용자(U)의 신체 부분의 관성 정보를 획득할 수 있다. 관성 감지부(120)는, 관성 정보를 획득하고자 하는 사용자(U)의 신체 부분에 부착되고, 상기 신체 부분의 움직임에 따른 관성 정보의 변화를 실시간으로 획득하여 모션 분석부(130)에 제공할 수 있다. 예를 들어, 관성 감지부(120)는 사용자(U)의 양 발(foot)에 부착되어, 사용자(U) 보행에 따른 양 발의 가속도 및 각가속도의 변화를 실시간으로 측정할 수 있다. 사용자(U)의 보행 속도가 빨라질수록, 사용자(U)의 발의 각도 변화가 증가하므로, 관성 감지부(120)를 통해 발의 각도 변화를 정확하게 측정할 수 있다.Referring to FIG. 3, the
도 4는 일 실시 예에 따른 보행 동작 분석 방법의 순서도이고, 도 5는 일 실시 예에 따른 보행 동작 결정 단계의 순서도이다.FIG. 4 is a flow chart of a walking motion analysis method according to an embodiment, and FIG. 5 is a flowchart of a walking motion determination step according to an embodiment.
도 4 및 도 5를 참조하면, 일 실시 예에 따른 보행 동작 분석 방법은, 사용자(U) 신체 부분에 대한 위치 정보를 획득하는 단계(410), 사용자(U) 신체 부분의 관성 정보를 획득하는 단계(420) 및 사용자(U) 보행 동작을 결정하는 단계(430)를 포함할 수 있다.4 and 5, a method for analyzing a gait operation according to an exemplary embodiment of the present invention includes a
단계 410은, 사용자(U) 신체 부분의 위치 정보, 예를 들어, 3차원 절대 좌표값을 획득할 수 있다. 단계 410은, 입력 영상(observed image)로부터 사용자(U) 영상을 추출하는 단계, 사용자(U) 영상으로부터 사용자(U) 신체 부분을 인식하는 단계, 인식된 신체 부분의 위치 정보를 획득하는 단계를 포함할 수 있다. 단계 410에서는, 위치 감지부(110)를 통해 사용자(U) 신체 부분의 위치 정보를 획득할 수 있다. 사용자(U) 신체 부분은, 예를 들어, 사용자(U)의 목, 골반, 무릎일 수 있다.Step 410 may obtain positional information, e.g., three-dimensional absolute coordinate values, of the user (U) body part. Step 410 includes extracting a user (U) image from an observed image, recognizing a user (U) body part from a user (U) image, and acquiring position information of the recognized body part . In
단계 420은, 사용자(U) 신체 부분의 관성 정보를 획득할 수 있다. 단계 420은, 관성 정보를 획득하기 위한 사용자(U) 신체 부분을 설정하는 단계, 설정된 신체 부분의 가속도를 측정하는 단계, 설정된 신체 부분의 회전 가속도를 측정하는 단계를 포함할 수 있다. 설정된 신체 부분은, 예를 들어, 사용자(U)의 양 다리일 수 있다.Step 420 may obtain inertia information of the user (U) body part. Step 420 may include setting a user (U) body part to obtain inertia information, measuring the acceleration of the set body part, and measuring the rotational acceleration of the set body part. The set body part may be, for example, both legs of the user U.
단계 430은, 획득한 위치 정보 및 관성 정보에 기초하여, 사용자(U) 보행 동작을 결정할 수 있다. 단계 430은, 사용자(U) 보행 방향을 결정하는 단계(510), 사용자(U) 보행 속도를 결정하는 단계(520) 및 사용자(U) 보행 여부를 결정하는 단계(530)를 포함할 수 있다.Step 430 can determine the user U walking operation based on the acquired position information and inertia information. Step 430 may include determining 510 the user U walking direction, determining 520 the user U walking speed, and determining 530 whether the user U is walking .
도 6은, 일 실시 예에 따른 사용자(U) 보행 방향 결정 단계의 순서도이고, 도 7은 일 실시 예에 따른 보행 방향을 결정하는 방법을 도시한다.FIG. 6 is a flowchart of a user U walking direction determination step according to an embodiment, and FIG. 7 illustrates a method of determining a walking direction according to an embodiment.
단계 510은, 사용자(U)의 허리 기울기 방향에 따라 보행 방향을 결정할 수 있다. 다시 말하면, 사용자(U)가 보행하는 경우에, 사용자(U)의 허리가 보행 방향으로 기울어지기 때문에, 사용자(U)의 보행 방향을 사용자(U)의 허리 기울기 방향으로 설정할 수 있다. Step 510 may determine the walking direction according to the waist tilting direction of the user U. In other words, since the waist of the user U is inclined in the walking direction when the user U makes a walk, the walking direction of the user U can be set to the waist tilting direction of the user U.
도 6을 참조하면, 단계 510은, 사용자(U)의 제 1 부분 및 제 2 부분의 절대 위치 값을 설정하는 단계(610), 제 1 부분 및 제 2 부분의 평면 좌표값을 설정하는 단계(620), 제 1 부분에 대한 제 2 부분의 방향 벡터를 산출하는 단계(630) 및 방향 벡터를 허리 기울기 방향으로 설정하는 단계(640)를 포함할 수 있다.Referring to FIG. 6,
단계 610은, 사용자(U)의 신체의 제 1 부분 및 제 2 부분을 인식하고, 제 1 부분 및 제 2 부분의 절대 위치 값, 다시 말하면, 원점에 대한 3차원 위치 좌표값을 을 설정할 수 있다. 제 1 부분 및 제 2 부분은 사용자(U) 신체의 다양한 부분일 수 있다. 예를 들어, 제 1 부분 및 제 2 부분은 사용자(U)의 골반 및 목일 수 있다. 제 1 부분 및 제 2 부분을 골반 및 목으로 설정하는 경우, 사용자(U)가 다양한 움직임에도 로코모션 장치에 의하여 가려지는 문제가 발생하지 않기 때문에, 정확한 위치 좌표 측정이 가능할 수 있다. 이하, 설명의 편의를 위해, 제 1 부분 및 제 2 부분이 골반 및 목인 경우를 예시적으로 설명하도록 한다.Step 610 can recognize the first and second parts of the body of the user U and set the absolute position values of the first and second parts, i.e., the three-dimensional position coordinate values for the origin . The first and second portions may be various portions of the user (U) body. For example, the first and second portions may be the pelvis and neck of the user U. If the first and second portions are set to the pelvis and neck, accurate positional coordinate measurement may be possible since the problem of the user U being obscured by the locomotion device in various movements does not occur. Hereinafter, for convenience of explanation, the case where the first part and the second part are the pelvis and throat will be exemplarily described.
단계 620은, 제 1 부분 및 제 2 부분의 3차원 위치 좌표에서 Z방향 좌표를 제거하여, XY평면에 대한 제 1 부분 및 제 2 부분의 평면 좌표값을 설정할 수 있다.Step 620 can set the plane coordinate values of the first part and the second part with respect to the XY plane by removing the Z direction coordinates in the three-dimensional position coordinates of the first part and the second part.
단계 630은, 제 1 부분에 대한 제 2 부분의 방향 벡터를 산출할 수 있다. 다시 말하면, 단계 630은 제 1 부분을 '시점'으로 하고 제 2 부분을 '종점'으로 하는 방향 벡터를 산출할 수 있다.Step 630 may yield the direction vector of the second portion for the first portion. In other words, the step 630 may calculate a direction vector having the first part as a 'viewpoint' and the second part as an 'end point'.
단계 640은, 산출된 방향 벡터를 사용자(U)의 허리 기울기 방향으로 설정할 수 있다. 결과적으로, 산출된 방향 벡터는 사용자(U) 보행 방향으로 설정될 수 있다.Step 640 may set the calculated direction vector to the waist tilt direction of the user U. As a result, the calculated direction vector can be set in the user U walking direction.
도 7을 참조하면, 사용자(U)가 보행 동작을 하는 경우, 사용자(U)의 허리는 보행 방향을 향해 기울어질 수 있다. 위치 감지부(110)는, 사용자(U)의 제 1 부분 및 제 2 부분의 3차원 위치 좌표(P1, P2)를 설정할 수 있다. 이후, 위치 감지부(110)는 제 1 부분 및 제 2 부분의 3차원 위치 좌표를 평면 좌표(P1', P2')로 치환하고, 제 1 부분에 대한 제 2 부분의 방향 벡터 D1을 산출할 수 있다. 결과적으로, D1의 벡터 방향을 사용자(U)의 허리 기울기 방향, 다시 말해, 사용자(U)의 보행 방향으로 설정할 수 있다.Referring to FIG. 7, when the user U performs a walking operation, the waist of the user U may be inclined toward the walking direction. The
도 8은, 일 실시 예에 따른 사용자(U) 보행 속도를 결정하는 단계의 순서도이고, 도 9는 일 실시 예에 따른 제 1 센싱값 산출 방식에 대한 순서도이며, 도 10은, 일 실시 예에 따른 제 2 센싱값 산출 방식에 대한 순서도이고, 도 11은 일 실시 예에 따른 제 3 센싱값 산출 방식에 대한 순서도이다.FIG. 8 is a flowchart of a step of determining a user U walking speed according to an embodiment, FIG. 9 is a flowchart of a first sensing value calculating method according to an embodiment, FIG. 10 is a flowchart FIG. 11 is a flowchart illustrating a third sensing value calculation method according to an exemplary embodiment of the present invention. Referring to FIG.
도 8 내지 도 11을 참조하면, 사용자(U) 보행 속도를 결정하는 단계(520)는, 제 1 센싱값을 산출하는 단계(810), 제 2 센싱값을 산출하는 단계(820), 제 3 센싱값을 산출하는 단계(830) 및 사용자(U) 보행 속도를 산출하는 단계(840)를 포함할 수 있다.8-11, determining 520 the user U walking speed may include calculating 810 a first sensed value, calculating 820 a second sensed value, A
단계 810은, 사용자(U) 신체 관성 정보에 기초하여 제 1 센싱값을 산출할 수 있다. 제 1 센싱값은, 예를 들어, 사용자(U) 발의 관성 정보에 기초하여 산출될 수 있다. 단계 810은, 사용자(U) 발의 이동 속도를 측정하는 단계(910), 측정된 이동 속도를 누적하여 저장하는 단계(920) 및 누적된 이동 속도값의 평균치에 따른 제 1 센싱값을 산출하는 단계(930)를 포함할 수 있다.Step 810 may calculate the first sensed value based on the user (U) body inertia information. The first sensing value can be calculated based on, for example, inertia information of the user (U) foot. Step 810 includes a
도 9를 참조하면, 단계 810에서는 관성 감지부(120)가 사용자(U)의 양 발의 관성 정보를 측정할 수 있다. 예를 들어, 관성 감지부(120)가 사용자(U)의 양 발에 각각 부착되는 경우, 관성 감지부(120)는 각도의 변화량을 통해 사용자(U)의 양 발의 이동 속도를 측정할 수 있다. 양 발의 이동 속도가 각각 다른 경우, 단계 910는 양 발의 이동 속도 중 더 높은 값을 이동 속도로 선택할 수 있다. 단계 920는, 양 발의 이동 속도를 실시간으로 측정하고, 이동 속도의 측정값을 누적하여 저장할 수 있다. 예를 들어, 이동 속도의 측정값은 n개 단위로 누적될 수 있다. 이동 속도의 누적 값이 n개가 넘어가면, 측정된 순서대로 이동 속도의 측정값이 갱신될 수 있다. 단계 930은, 누적된 이동 속도의 n개 측정값의 평균치(normalize)에 따른 제 1 센싱값을 산출할 수 있다. 산출되는 제 1 센싱값은 사용자(U) 보행에 따라 실시간으로 갱신될 수 있다.Referring to FIG. 9, in
단계 820은, 사용자(U) 신체 위치 정보에 기초하여 제 2 센싱값을 산출할 수 있다. 제 2 센싱값은, 예를 들어, 사용자(U) 허리 기울기에 기초하여 산출될 수 있다. 예를 들어, 제 2 센싱값은 측정된 사용자(U) 허리 기울기를 기 설정된 수치 값으로 변환하여 산출될 수 있다. 이 경우, 기 설정된 수치 값은 -1 내지 +1의 범위일 수 있다. 다시 말하면, 기 설정된 수치 값은, 허리 기울기의 정도에 따라 결정될 수 있다. 예를 들어, 사용자(U)의 보행 속도가 증가함에 따라 허리 기울기 정도가 커질수록 기 설정된 수치 값은 절대값 1에 수렴할 수 있다. 반면, 사용자(U)의 보행 속도가 감소함에 따라 허리 기울기 정도가 작아질수록, 기 설정된 수치 값은 0에 수렴할 수 있다. Step 820 may yield a second sensed value based on the user (U) body position information. The second sensing value may be calculated based on, for example, the user U waist slope. For example, the second sensing value can be calculated by converting the measured user U's waist slope to a predetermined numerical value. In this case, the predetermined numerical value may range from -1 to +1. In other words, the predetermined numerical value can be determined according to the degree of the waist inclination. For example, as the walking speed of the user U increases, the predetermined numerical value converges to the
도 10을 참조하면, 단계 820은, 사용자(U) 신체의 제 1 부분 및 제 2 부분의 평면좌표를 설정하는 단계(1010), 제 1 부분에 대한 제 2 부분의 평면 방향 벡터를 산출하는 단계(1020), 상기 방향 벡터를 누적하여 저장하는 단계(1030) 및 누적된 방향 벡터의 평균치에 따른 제 2 센싱값을 산출하는 단계(1040)를 포함할 수 있다. 이 경우, 제 1 부분 및 제 2 부분은 사용자(U)의 골반 및 목일 수 있다. 제 1 부분에 대한 제 2 부분의 방향 벡터는 도 7과 같은 방식으로 산출될 수 있다.Referring to FIG. 10,
단계 830은, 사용자(U) 신체 위치 정보에 기초하여 제 3 센싱값을 산출할 수 있다. 제 3 센싱값은, 사용자의 보행 속도의 신뢰성을 높이기 위한 보정 상수 일 수 있다. 제 3 센싱값은, 예를 들어, 사용자(U)의 양 무릎간 거리에 기초하여 산출될 수 있다. 단계 830은, 사용자(U)의 양 무릎간 거리를 측정하는 단계(1110), 측정된 거리의 변화량을 누적하여 저장하는 단계(1120) 및 누적된 변화량의 평균치에 따른 제 3 센싱값을 산출하는 단계(1130)를 포함할 수 있다.Step 830 may yield a third sensed value based on the user (U) body position information. The third sensing value may be a correction constant for increasing the reliability of the walking speed of the user. The third sensing value can be calculated based on, for example, the distance between the knees of the user U. [
도 11을 참조하면, 단계 1110에서는 위치 감지부(110)가 사용자(U)의 양 무릎 사이의 거리를 실시간으로 측정할 수 있다. 예를 들어, 사용자(U)의 보행 속도가 빨라질수록 사용자(U)의 무릎 사이의 교차가 많아지기 때문에, 무릎 사이의 거리 변화를 통해, 사용자(U)의 보행 속도의 변화을 판단할 수 있다.Referring to FIG. 11, in
단계 1120에서는, 측정된 거리 변화량을 누적하여 저장할 수 있다. 단계 1120에서는, 측정된 거리 변화량의 신뢰 여부를 판단함으로써, 노이즈(noise)가 제거된 측정값만을 선별하여 저장할 수 있다. 실시간으로 측정되는 거리 변화량의 신뢰 여부 판단 방법은 제한되지 않는다. 예를 들어, 단계 1120은, 누적된 거리 변화량의 데이터와, 새로 측정된 거리 변화량의 값을 비교하고, 비교값의 차이가 일정 범위를 벗어나는 경우, 새로 측정된 거리 변화량의 신뢰성이 부족한 것으로 판단할 수 있다. 이 경우, 신뢰성이 부족한 것으로 판단된 측정값은 노이즈로 분류되어 제거될 수 있다. 단계 1120에서는, 다른 정보를 통해 측정된 거리 변화량의 신뢰성을 판단할 수도 있다. 예를 들어, 허리 기울기 등의 정보를 통해 사용자의 보행 속도가 느려지는 것으로 판단되는 경우에, 단계 1120은, 측정된 거리 변화량의 값이 줄어드는 경우에만, 측정값을 저장함으로써, 노이즈를 제거할 수 있다.In
단계 1120은, 누적된 데이터 저장값을 통해, 단계 1110에서 측정된 데이터의 신뢰 여부를 판단하고, 단계 1110에서 측정된 데이터의 신뢰성이 부족한 경우, 누적된 데이터를 통해 새로 측정된 데이터를 보완함으로써, 신뢰성 있는 데이터를 유추할 수 있다.
단계 1130은, 누적된 거리 변화량의 평균치를 통해 제 3 센싱값을 산출할 수 있다. 제 3 센싱값은, 누적된 데이터의 평균값을 통해 산출되기 때문에, 측정된 데이터에 기초하여 결정되는 사용자 보행 속도가 급격하게 변화하는 것을 방지할 수 있다. 또한 제 3 센싱값은, 실시간으로 갱신되는 데이터의 누적 평균값을 사용하기 때문에, 실제 사용자의 보행 속도를 결정함에 있어서, 높은 신뢰성을 보장할 수 있다.
단계 840은, 제 1 센싱값, 제 2 센싱값 및 제 3 센싱값을 통해, 사용자(U)의 보행 속도를 결정할 수 있다. 단계 840은 각각의 센싱값을 통해 사용자 보행 속도에 대한 결정값을 보정함으로써, 신뢰성 있는 보행 속도를 산출할 수 있다. 각각의 센싱값을 통해 사용자 보행 속도를 결정하는 산출 방식은 제한되지 않는다. 예를 들어, 단계 840에서는, 관성 정보를 통해 측정한 제 1 센싱값을 속도 값으로 변환하고, 제 2 센싱값 및 제 3 센싱값을 가중치 값으로 변환하여 제 1 센싱값에 곱함으로써, 사용자(U)의 보행 속도에 대한 결정값을 산출할 수 있다. 결과적으로, 단계 840은, 사용자(U)의 보행 속도를 결정함에 있어서, 관성 정보 및 위치 정보를 통해 측정한 데이터를 상호 보완함으로써, 하나의 정보를 통해 보행 속도를 결정하는 경우에 비하여, 보다 정확한 사용자(U) 보행 속도를 실시간으로 산출할 수 있다.Step 840 may determine the walking speed of the user U through the first sensing value, the second sensing value, and the third sensing value. Step 840 can calculate a reliable walking speed by correcting the determination value for the user's walking speed through each sensed value. The calculation method for determining the user's walking speed through each sensing value is not limited. For example, in
이하, 일 실시 예에 따른 사용자(U) 보행 동작에 따른 가상 현실 연동 방법에 대하여 설명하도록 한다. 가상 현실 연동 방법을 설명함에 있어서, 앞서 설명한 기재와 중복되는 내용은 생략하도록 한다.Hereinafter, a virtual reality interlocking method according to a user U walking operation according to an embodiment will be described. In describing the virtual reality interworking method, contents overlapping with the above description will be omitted.
도 12는 일 실시 예에 따른 가상 현실 연동 방법의 순서도이다.12 is a flowchart of a virtual reality interworking method according to an embodiment.
일 실시 예에 따른 가상 현실 연동 방법은, 사용자(U)의 보행 동작을 가상 현실 내 사용자(U)의 아바타(A)에 연동시킴으로써, 가상 현실을 체험하는 사용자(U)가 실제 보행을 하는 것과 유사한 느낌을 제공할 수 있다. 가상 현실 연동 방법은, 영상 정보에 기초하여, 사용자(U) 신체 부분의 위치 정보를 획득하는 단계(1210), 관성 센서를 통해 사용자(U) 다리의 관성 정보를 획득하는 단계(1220), 사용자(U) 보행 동작을 결정하는 단계(1230) 및 결정된 보행 동작을 아바타(A)에 연동시키는 단계(1240)를 포함할 수 있다.The virtual reality interworking method according to one embodiment is a method of interlocking the walking operation of the user U with the avatar A of the user U in the virtual reality so that the user U experiencing the virtual reality actually walks It can provide a similar feeling. The virtual reality interworking method includes a
단계 1210에서는, 사용자(U) 신체 부분의 위치에 대한 정보를 실시간으로 획득할 수 있다. 예를 들어, 단계 1210에서는, 위치 감지부(110)가 사용자(U)의 신체 부분에 대한 3차원 위치 좌표를 획득할 수 있다. 단계 1220에서는, 관성 센서를 통해 사용자(U) 다리, 예를 들어, 사용자(U)의 양 발의 관성 정보를 획득할 수 있다. In
단계 1230은, 사용자(U)의 보행 동작을 결정할 수 있다. 예를 들어, 단계 1230에서는 모션 분석부(130)가 사용자(U) 신체에 대한 위치 정보 및 관성 정보에 기초하여, 사용자(U)의 보행 동작을 분석하고, 실제 사용자(U)의 보행 동작에 대한 분석값을 결정할 수 있다. 단계 1230은, 위치 정보에 기초하여 사용자(U)의 보행 방향을 결정하는 단계 및 위치 정보 및 관성 정보에 기초하여 사용자(U)의 보행 속도를 결정하는 단계를 포함할 수 있다.
사용자(U)의 보행 방향을 결정하는 단계는, 사용자(U) 골반 및 목의 위치 정보에 기초하여 골반 및 목 각각의 평면 좌표값을 설정하는 단계 및 골반에 대한 목의 방향 벡터를 설정하는 단계를 포함할 수 있다. 다시 말하면, 골반에 대한 목의 방향 벡터를 통해, 사용자(U)의 허리 기울기 방향을 검출하여, 사용자(U)의 보행 방향을 결정할 수 있다.The step of determining the walking direction of the user U includes the steps of setting the plane coordinate values of each of the pelvis and neck based on the positional information of the user ' s pelvis and neck, and setting the direction vector of the neck with respect to the pelvis . ≪ / RTI > In other words, the waist tilting direction of the user U can be detected through the direction vector of the neck with respect to the pelvis, and the walking direction of the user U can be determined.
사용자(U)의 보행 속도를 결정하는 단계는, 사용자(U) 다리의 이동 속도에 따른 제 1 센싱값을 산출하는 단계, 사용자(U) 허리 기울기에 따른 제 2 센싱값을 산출하는 단계, 사용자(U) 무릎간 거리에 따른 제 3 센싱값을 산출하는 단계 및 제 1 센싱값, 제 2 센싱값 및 제 3 센싱값에 기초하여 사용자(U)의 보행 속도를 산출하는 단계를 포함할 수 있다. 사용자(U)의 보행 속도를 결정하는 단계는, 도 8 내지 도 11과 같은 방식으로 수행될 수 있다. 제 1 센싱값, 제 2 센싱값 및 제 3 센싱값은, 실시간으로 측정되는 데이터의 누적 평균값을 통해 산출될 수 있다. 이 경우, 사용자 보행 속도의 결정값이 급격하게 변화하는 것을 방지할 수 있다. 예를 들어, 가상 현실을 체험하는 사용자는 일정한 속도를 계속 달릴 수가 없기 때문에, 실시간으로 측정된 데이터만을 사용하여 사용자 보행 속도를 결정하는 경우, 실제 사용자(U)의 보행 속도가 조금만 감소해도, 사용자(U)에 연동된 아바타(A)의 이동속도가 급격하게 감소하는 문제가 발생할 수 있다. 따라서, 사용자의 보행 속도를 누적된 데이터의 평균값을 통해 결정함으로써, 결정된 사용자(U)의 보행 속도가 실제 사용자(U)가 의도한 속도에 근접하도록 할 수 있다.The step of determining the walking speed of the user U comprises the steps of calculating a first sensed value according to the moving speed of the user U leg, calculating a second sensed value according to the waist inclination of the user U, Calculating a third sensed value according to the distance between the knees of the user U, and calculating a walking speed of the user U based on the first sensed value, the second sensed value, and the third sensed value . The step of determining the walking speed of the user U may be performed in the same manner as in Figs. 8 to 11. Fig. The first sensing value, the second sensing value, and the third sensing value can be calculated through a cumulative average value of data measured in real time. In this case, it is possible to prevent the determination value of the user's walking speed from rapidly changing. For example, since a user experiencing a virtual reality can not continue to run at a constant speed, when the user's walking speed is determined using only data measured in real time, even if the walking speed of the actual user U is slightly reduced, The moving speed of the avatar A interlocked with the moving object U may be drastically reduced. Therefore, by determining the walking speed of the user through the average value of the accumulated data, it is possible to make the walking speed of the determined user U close to the intended speed of the real user U.
도 13은 일 실시 예에 따른 보행 동작을 아바타(A)에 연동시키는 단계에 대한 순서도이고, 도 14는 일 실시 예에 따른 아바타(A) 이동 방향의 연동 방법을 도시하는 도면이다.FIG. 13 is a flow chart of a step of interlocking the walking operation according to the embodiment with the avatar A, and FIG. 14 is a diagram showing a method of interlocking the moving direction of the avatar A according to an embodiment.
도 13을 참조하면, 단계 1240은 결정된 사용자(U)의 보행 동작을 아바타(A)에 연동시킴으로써, 가상 현실 내 아바타(A)를 통해 사용자(U)의 실제 보행과 유사한 동작을 재현할 수 있다. 단계 1240은, 사용자(U) 보행 방향에 아바타(A) 이동 방향을 연동시키는 단계(1310), 사용자(U) 보행 속도에 아바타(A) 이동 속도를 연동시키는 단계(1320) 및 아바타(A) 보행 동작을 정지시키는 단계(1330)를 포함할 수 있다.13,
단계 1310은, 사용자(U) 보행 방향에 아바타(A)의 이동 방향을 연동시킬 수 있다. 예를 들어, 도 14와 같이, 사용자(U)가 보행 동작 하는 경우, 사용자(U)의 보행 방향은 사용자(U)의 목 및 골반의 위치 좌표(P1, P2)에 기초한, 방향 벡터 D1을 통해 결정될 수 있다. 다시 말하면, 사용자(U)의 보행 방향은 방향 벡터 D1을 정면으로 하는 방향일 수 있다. D1을 X축에 대한 단위 벡터라고 가정할 경우, 가상 현실 상의 아바타(A)의 보행 방향은 가상 현실 상의 x축에 대한 단위 벡터일 수 있다. 결과적으로, 가상 현실 상의 아바타(A)의 정면 방향과 사용자(U)의 정면 방향을 일치하도록 연동시킴으로써, 사용자(U)가 원하는 이동 방향과 가상 공간상에서의 아바타(A)의 이동 방향을 일치시킬 수 있다. 이 경우, 사용자(U)의 실제 보행 방향과 아바타(A)의 보행 방향의 차이를 최소화 함으로써, 사용자(U)가 느끼는 불편함, 예를 들어, 멀미와 같은 현상을 해결할 수 있다.
단계 1320은, 사용자(U) 보행 속도에 아바타(A) 이동 속도를 연동시킬 수 있다. 예를 들어, 단계 1320은, 결정된 사용자(U)의 보행 속도에 따라 가상 공간 상에서 아바타(A)의 이동 거리를 일치시킬 수 있다. 따라서, 사용자(U)가 느끼는 보행 거리와, 아바타(A)의 이동 거리의 차이가 최소화 됨으로써, 가상 현실을 체험하는 사용자(U)가 실제 보행 하는 것과 유사한 느낌을 제공할 수 있다.
단계 1330은, 사용자(U) 보행 동작에 기초하여, 아바타(A)의 보행을 정지시킬 수 있다. 예를 들어, 단계 1330에서는 관성 센서를 통해 측정되는 관성 변화값이 없는 경우, 아바타(A)의 보행 동작을 즉각적으로 정지시킬 수 있다. 사용자(U)의 보행 속도를 결정하는 과정에서는, 누적된 센싱값들의 평균치를 사용하기 때문에, 사용자(U)가 실제로 보행을 중단하는 경우, 결정된 보행 속도에 실제 사용자(U)의 보행 속도가 실시간으로 반영되지 않을 수 있다. 따라서, 관성 변화값이 없는 경우, 가상 현실상의 아바타(A)의 보행을 즉각적으로 정지시킴으로써, 실제 사용자(U)의 보행과 아바타(A)의 보행을 일치시킬 수 있다.
도 15는 일 실시 예에 따른 아바타(A)를 연동시키는 단계에 대한 순서도이다.FIG. 15 is a flowchart of a step of associating an avatar A according to an embodiment.
도 15를 참조하면, 단계 1240은 사용자(U)의 신장에 따른 보정값을 통해 아바타(A)의 이동 속도를 보정할 수 있다. 단계 1240은, 사용자(U) 신장에 따른 보정값을 산출하는 단계(1510), 보정값을 통해 사용자(U) 보행 속도를 보정하는 단계(1520) 및 보정된 보행 속도에 따라 아바타(A) 이동 속도를 설정하는 단계(1530)를 포함할 수 있다.Referring to FIG. 15,
단계 1510은, 사용자(U)의 신장에 따른 보정값을 산출할 수 있다. 사용자(U)의 허리 기울기에 따라 보행 속도를 결정하는 경우, XY평면에 대한 평면 벡터값을 사용하기 때문에, 사용자(U)의 신장(Height)에 따른 기울기 값의 편차가 커질 수 있다. 다시 말하면, 동일한 속도로 보행 하는 경우에도 신장이 큰 사람의 허리 기울기에 대한 평면 벡터값이 신장이 작은 사람에 비하여 크기 때문에, 신장에 따른 허리 기울기 값의 오차가 발생할 수 있다. 따라서, 단계 1510은, 사용자(U)의 보행 속도의 오차를 줄이기 위한 보정값을 산출할 수 있다. 이 경우, 보정값은 사용자(U)의 조절에 의하여 결정될 수 있다.
단계 1520은, 보정값을 통해 사용자(U) 보행 속도를 보정할 수 있다. 예를 들어, 신장이 큰 사람의 경우에는, 보정값을 통해 결정된 보행 속도가 낮아지도록 보정함으로써, 신장 차이로 인한 보행 속도의 오차를 최소화 할 수 있다. 반면, 신장이 작은 사람은 보행 속도에 따른 허리 기울기 값의 변동이 크기 때문에, 보정값을 통해 허리 기울기 값에 대한 수치를 높임으로써, 보행 속도의 오차를 최소화 할 수 있다.
단계 1530은, 보정된 보행 속도에 따라 가상 현실 내의 아바타(A)의 이동 속도를 설정할 수 있다. 결과적으로, 사용자(U)의 신장 차이에 관계 없이 가상 현실내 아바타(A)의 이동 속도를 사용자(U)가 느끼는 보행 속도와 유사하게 설정함으로써, 사용자(U)의 불편함을 저감시킬 수 있다.
도 16은 일 실시 예에 따른 아바타(A)를 연동시키는 단계에 대한 순서도이다.FIG. 16 is a flowchart of a step of associating an avatar A according to an embodiment.
도 16을 참조하면, 단계 1240은, 아바타(A)의 이동 제한 속도를 설정하는 단계(1610) 및 설정된 아바타(A)의 이동 속도를 이동 제한 속도 이하로 제한하는 단계(1620)를 포함할 수 있다.Referring to FIG. 16,
단계 1610은, 가상 현실 상의 아바타(A)의 이동 제한 속도를 설정할 수 있다. 가상 현실 상의 거리와, 현실에서의 실제 거리에는 체감상 차이가 있을 수 있기 때문에, 단계 1610에서는, 사용자(U)의 설정에 의하여 아바타(A)의 최대 이동 속도를 제한할 수 있다.
단계 1620에서는, 가상 현실 상의 아바타(A)의 이동 속도를 이동 제한 속도 이하로 제한할 수 있다. 이 경우, 결정된 보행 속도의 값에 관계 없이, 가상 현실을 체험하는 사용자(U)가 불편함을 느끼지 않도록, 가상 현실 상의 아바타(A)의 이동 속도가 제한 속도 이하로 제한 할 수 있다.In
도 17은 일 실시 예에 따른 가상 현실 연동 방법에 대한 순서도이다.17 is a flowchart of a virtual reality interworking method according to an embodiment.
가상 현실 연동 방법은, 방향 벡터를 산출하는 단계(1710), 아바타(A) 이동 방향을 결정하는 단계(1720), 사용자(U) 보행 속도를 결정하는 단계(1720), 아바타(A) 이동 속도를 결정하는 단계(1740), 사용자(U) 이동 여부를 판단하는 단계(1750) 및 아바타(A)를 이동시키는 단계(1760)를 포함할 수 있다.The virtual reality interworking method includes a
단계 1710에서는 위치 감지부(110)를 통해 획득한 사용자(U)의 목 및 골반의 위치 정보를 통해, 허리 기울기 방향에 대한 방향 벡터를 산출할 수 있다. In
단계 1720에서는, 산출한 방향 벡터를 통해 가상 현실 상의 아바타(A)의 이동 방향을 결정할 수 있다.In
단계 1730에서는, 위치 감지부(110)를 통해 획득한 사용자(U)의 양 무릎의 위치 정보와, 관성 감지부(120)를 통해 획득한 사용자(U)의 양 다리의 관성 정보 및 허리 기울기 방향에 대한 방향 벡터를 통해 사용자(U)의 보행 속도를 결정할 수 있다.In
단계 1740에서는, 결정된 사용자(U)의 보행 속도를 통해 아바타(A)의 이동 속도를 결정할 수 있다. 이 경우, 결정된 사용자(U)의 보행 속도가 아바타(A)의 이동 제한 속도를 초과하는 경우에는, 아바타(A)의 이동 속도는 이동 제한 속도로 설정되고, 사용자(U)의 보행 속도가 아바타(A)의 이동 제한 속도 이하인 경우에는, 아바타(A)의 이동 속도가 결정된 사용자(U) 보행 속도에 의해 설정될 수 있다.In
단계 1750에서는, 관성 감지부(120)를 통해 사용자(U)의 실제 이동 여부를 판단할 수 있다. 관성 감지부(120)를 통해 측정된 사용자(U) 발의 관성 수치 변화량이 없는 경우에는, 사용자(U)의 보행이 정지한 것으로 판단하고, 아바타(A)의 이동 동작을 즉각적으로 정지시킬 수 있다.In
단계 1760에서는, 결정된 아바타(A) 이동 방향, 아바타(A) 이동 속도 및 아바타(A) 이동 여부에 따라 아바타(A)를 이동시킬 수 있다.In
이상과 같이 비록 한정된 도면에 의해 실시 예들이 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 구조, 장치 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.Although the preferred embodiments of the present invention have been disclosed for illustrative purposes, those skilled in the art will appreciate that various modifications, additions and substitutions are possible, without departing from the scope and spirit of the invention as disclosed in the accompanying claims. For example, it is contemplated that the techniques described may be performed in a different order than the described methods, and / or that components of the described structures, devices, and the like may be combined or combined in other ways than the described methods, Appropriate results can be achieved even if they are replaced or replaced.
그러므로, 다른 구현들, 다른 실시 예들 및 청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.Therefore, other implementations, equivalents to other embodiments and the claims are also within the scope of the following claims.
U: 사용자
A: 아바타
1: 가상 현실 연동 장치
110: 위치 감지부
120: 관성 감지부
130: 모션 분석부
140: 제어부U: User
A: Avatar
1: Virtual reality interlock
110:
120: inertia sensing unit
130: motion analysis unit
140:
Claims (21)
상기 사용자 신체 부분에 대한 위치 정보를 획득하는 단계;
상기 사용자 신체 부분에 대한 관성 정보를 획득하는 단계; 및
상기 위치 정보 및 상기 관성 정보에 기초하여, 상기 사용자 보행 동작을 결정하는 단계를 포함하는, 보행 분석 방법.
A method for analyzing user gait for virtual reality interworking,
Obtaining location information for the user body part;
Obtaining inertia information for the user body part; And
And determining the user walking operation based on the position information and the inertia information.
상기 위치 정보를 획득하는 단계는,
입력 영상(observed image)으로부터 사용자 영상을 추출하는 단계;
상기 사용자 영상으로부터 사용자 신체 부분을 인식하는 단계; 및
상기 인식된 신체 부분의 위치 정보를 획득하는 단계를 포함하는, 보행 동작 분석 방법.
The method according to claim 1,
Wherein the acquiring of the position information comprises:
Extracting a user image from an observed image;
Recognizing a user body part from the user image; And
And obtaining position information of the recognized body part.
상기 관성 정보를 획득하는 단계는,
상기 관성 정보를 획득하기 위한 사용자 신체 부분을 설정하는 단계;
상기 설정된 신체 부분의 가속도를 측정하는 단계; 및
상기 설정된 신체 부분의 회전 가속도를 측정하는 단계를 포함하는, 보행 동작 분석 방법.
The method according to claim 1,
Wherein the acquiring of the inertia information comprises:
Setting a user body part for obtaining the inertia information;
Measuring an acceleration of the set body part; And
And measuring the rotational acceleration of the set body part.
상기 사용자의 보행 동작을 결정하는 단계는,
상기 사용자의 보행 방향을 결정하는 단계; 및
상기 사용자의 보행 속도를 결정하는 단계를 포함하는, 보행 동작 분석 방법
The method according to claim 1,
Wherein the step of determining the user ' s walking motion comprises:
Determining a walking direction of the user; And
Determining a walking speed of the user;
상기 사용자의 보행 방향을 결정하는 단계는,
상기 사용자의 허리 기울기 방향에 따라 상기 보행 방향을 결정하는 단계를 포함하는, 보행 동작 분석 방법
5. The method of claim 4,
Wherein the step of determining the walking direction of the user comprises:
And determining the walking direction in accordance with the waist tilting direction of the user.
상기 사용자의 보행 방향을 결정하는 단계는,
상기 사용자의 제 1 부분 및 제 2 부분의 평면 좌표값을 설정하는 단계;
상기 제 1 부분에 대한 제 2 부분의 방향 벡터를 산출하는 단계; 및
상기 방향 벡터를 상기 보행 방향으로 설정하는 단계를 포함하는, 보행 동작 분석 방법.
5. The method of claim 4,
Wherein the step of determining the walking direction of the user comprises:
Setting a plane coordinate value of the first portion and the second portion of the user;
Calculating a direction vector of a second portion for the first portion; And
And setting the direction vector in the walking direction.
상기 사용자의 보행 속도를 결정하는 단계는,
상기 사용자 신체의 관성 정보에 따른 제 1 센싱값을 산출하는 단계;
상기 사용자 신체 위치 정보에 따른 제 2 센싱값을 산출하는 단계;
상기 사용자 신체 위치 정보에 따른 제 3 센싱값을 산출하는 단계; 및
상기 제 1 센싱값, 제 2 센싱값 및 제 3 센싱값에 기초하여, 상기 사용자의 보행 속도를 산출하는 단계를 포함하는, 보행 동작 분석 방법.
5. The method of claim 4,
Wherein the step of determining the user's walking speed comprises:
Calculating a first sensed value according to inertia information of the user's body;
Calculating a second sensing value according to the user's body position information;
Calculating a third sensing value according to the user's body position information; And
And calculating the walking speed of the user based on the first sensing value, the second sensing value, and the third sensing value.
상기 제 1 센싱값을 산출하는 단계는,
상기 사용자 발(foot)의 이동 속도를 측정하는 단계;
상기 측정된 이동 속도 값을 누적하여 저장하는 단계; 및
상기 누적된 이동 속도값의 평균치(normalize)에 따른 제 1 센싱값을 산출하는 단계를 포함하는, 보행 동작 분석 방법.
8. The method of claim 7,
Wherein the calculating the first sensing value comprises:
Measuring a moving speed of the user's foot;
Accumulating and storing the measured moving speed values; And
And calculating a first sensing value according to an average value (normalize) of the accumulated moving speed values.
상기 제 2 센싱값을 산출하는 단계는,
상기 사용자의 허리 기울기를 측정하는 단계; 및
상기 측정된 허리 기울기를 기 설정된 수치 값으로 변환하는 단계를 포함하는, 보행 동작 분석 방법.
8. The method of claim 7,
Wherein the calculating the second sensing value comprises:
Measuring a waist inclination of the user; And
And converting the measured waist slope to a predetermined numerical value.
상기 제 3 센싱값을 산출하는 단계는,
상기 사용자 양 무릎간 거리를 측정하는 단계;
상기 측정된 거리의 변화량에 따른 제 3 센싱값을 산출하는 단계를 포함하는, 보행 동작 분석 방법.
8. The method of claim 7,
The step of calculating the third sensing value includes:
Measuring a distance between the user and the knee;
And calculating a third sensing value according to the measured amount of change in distance.
상기 보행 동작을 결정하는 단계는,
상기 사용자의 신체 부분의 관성 정보에 기초하여, 상기 사용자의 보행 여부를 결정하는 단계를 더 포함하는, 보행 동작 분석 방법.
5. The method of claim 4,
The step of determining the walking operation includes:
Further comprising the step of determining whether the user is walking based on inertia information of the body part of the user.
영상 정보에 기초하여, 사용자 신체 부분의 위치 정보를 획득하는 단계;
관성 센서를 통해, 사용자 다리의 관성 정보를 획득하는 단계;
상기 위치 정보 및 관성 정보에 기초하여, 상기 사용자의 보행 동작을 결정하는 단계; 및
상기 결정된 보행 동작을 상기 가상 현실 내 사용자의 아바타(avatar)에 연동시키는 단계를 포함하는, 가상 현실 연동 방법.
A virtual reality interworking method according to a user walking motion,
Acquiring positional information of the user's body part based on the image information;
Acquiring inertia information of the user's leg through the inertial sensor;
Determining a walking operation of the user based on the position information and the inertia information; And
And linking the determined gait to an avatar of a user in the virtual reality.
상기 보행 동작을 결정하는 단계는,
상기 위치 정보에 기초하여, 상기 사용자의 보행 방향을 결정하는 단계;
상기 위치 정보 및 관성 정보에 기초하여, 상기 사용자의 보행 속도를 결정하는 단계를 포함하는, 가상 현실 연동 방법.
13. The method of claim 12,
The step of determining the walking operation includes:
Determining a walking direction of the user based on the position information;
And determining the walking speed of the user based on the positional information and the inertial information.
상기 사용자의 보행 방향을 결정하는 단계는,
상기 사용자의 골반 및 목의 위치 정보에 기초하여, 상기 골반 및 목 각각의 평면 좌표값을 설정하는 단계; 및
상기 골반에 대한 상기 목의 방향 벡터를 산출하는 단계를 포함하는, 가상 현실 연동 방법.
14. The method of claim 13,
Wherein the step of determining the walking direction of the user comprises:
Setting plane coordinate values of each of the pelvis and neck based on positional information of the user's pelvis and neck; And
And calculating a direction vector of the neck with respect to the pelvis.
상기 아바타에 연동시키는 단계는,
상기 산출된 방향 벡터에 따라 상기 아바타의 이동 방향을 연동시키는 단계를 포함하는, 가상 현실 연동 방법.
15. The method of claim 14,
Wherein the step of interlocking with the avatar comprises:
And linking the direction of movement of the avatar according to the calculated direction vector.
상기 사용자의 보행 속도를 결정하는 단계는,
상기 사용자 다리의 이동 속도에 따른 제 1 센싱값을 산출하는 단계;
상기 사용자 허리 기울기에 따른 제 2 센싱값을 산출하는 단계;
상기 사용자 무릎간 거리에 따른 제 3 센싱값을 산출하는 단계; 및
상기 제 1 센싱값, 제 2 센싱값 및 제 3 센싱값에 기초하여, 상기 사용자의 보행 속도를 산출하는 단계를 포함하는, 가상 현실 연동 방법.
14. The method of claim 13,
Wherein the step of determining the user's walking speed comprises:
Calculating a first sensing value according to a moving speed of the user's leg;
Calculating a second sensing value according to the user's waist inclination;
Calculating a third sensing value according to the distance between the user's knees; And
And calculating the walking speed of the user based on the first sensing value, the second sensing value, and the third sensing value.
상기 아바타에 연동시키는 단계는,
상기 사용자의 신장(height)에 따른 보정값을 산출하는 단계;
상기 보정값을 통해, 상기 산출된 보행 속도를 보정하는 단계;
상기 보정된 보행 속도에 따라 상기 아바타의 이동 속도를 설정하는 단계를 포함하는, 가상 현실 연동 방법.
17. The method of claim 16,
Wherein the step of interlocking with the avatar comprises:
Calculating a correction value according to a height of the user;
Correcting the calculated walking speed through the correction value;
And setting the moving speed of the avatar according to the corrected walking speed.
상기 아바타에 연동시키는 단계는
상기 아바타의 이동 제한 속도를 설정하는 단계;
상기 아바타의 이동 속도를 상기 이동 제한 속도 이하로 제한하는 단계를 포함하는, 가상 현실 연동 방법.
13. The method of claim 12,
The step of interworking with the avatar
Setting a movement limit speed of the avatar;
And restricting the moving speed of the avatar to be less than or equal to the movement limit speed.
상기 아바타에 연동시키는 단계는,
상기 관성 센서로부터 측정된 수치값의 변화가 없는 경우, 상기 아바타의 보행 동작을 정지시키는 단계를 포함하는, 가상 현실 연동 방법.
13. The method of claim 12,
Wherein the step of interlocking with the avatar comprises:
And stopping the walking operation of the avatar when there is no change in the numerical value measured from the inertial sensor.
19. A computer-readable storage medium having stored thereon one or more programs comprising instructions for performing the method of any one of claims 1 to 18.
상기 사용자 신체 부분의 위치 정보를 획득하기 위한 위치 감지부;
상기 사용자 신체에 부착되고, 부착된 부분의 관성 정보를 획득하기 위한 관성 감지부;
상기 위치 정보 및 관성 정보에 기초하여, 상기 사용자의 보행 동작을 분석하는 모션 분석부; 및
상기 모션 분석부 및 상기 가상 현실을 연동시키기 위한 제어부를 포함하는, 가상 현실 연동 장치.
A virtual reality interworking apparatus for a walking operation of a user,
A position sensing unit for acquiring position information of the user's body part;
An inertial sensing unit attached to the user's body for acquiring inertial information of the attached part;
A motion analyzer for analyzing the user's walking motion based on the position information and the inertia information; And
And a controller for linking the motion analyzer and the virtual reality.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170064710A KR20180129140A (en) | 2017-05-25 | 2017-05-25 | Method of user mosion analyzing for virtual reality connection, method and device for virtual reality connection |
CN201710434202.0A CN108958465A (en) | 2017-05-25 | 2017-06-09 | Walking analysis method, virtual reality interlock method and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170064710A KR20180129140A (en) | 2017-05-25 | 2017-05-25 | Method of user mosion analyzing for virtual reality connection, method and device for virtual reality connection |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20180129140A true KR20180129140A (en) | 2018-12-05 |
Family
ID=64495288
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170064710A KR20180129140A (en) | 2017-05-25 | 2017-05-25 | Method of user mosion analyzing for virtual reality connection, method and device for virtual reality connection |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR20180129140A (en) |
CN (1) | CN108958465A (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200121055A (en) | 2019-04-15 | 2020-10-23 | 주식회사 스토익엔터테인먼트 | Virtual reality content control device, virtual reality attraction and calibration method thereof |
KR20210000336A (en) * | 2019-06-24 | 2021-01-05 | 고려대학교 산학협력단 | System and method for measuring dynamic postural balance |
IT201900014631A1 (en) * | 2019-08-12 | 2021-02-12 | Webbdone Srl | HANDLING METHOD FOR VIRTUAL REALITY |
KR20220026021A (en) * | 2020-08-24 | 2022-03-04 | 리벳 주식회사 | Physical Equilibrium Device Using VR Content |
KR20220170414A (en) * | 2021-06-22 | 2022-12-30 | 김장백 | Virtual Exercise Device and Virtual Exercise System |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111643885A (en) * | 2019-04-18 | 2020-09-11 | 成都奇天幻影数字娱乐有限公司 | Virtual reality steering control method based on IMU |
CN111643886A (en) * | 2019-04-18 | 2020-09-11 | 成都奇天幻影数字娱乐有限公司 | Virtual reality walking control method based on IMU |
CN112764545B (en) * | 2021-01-29 | 2023-01-24 | 重庆子元科技有限公司 | Virtual character motion synchronization method and terminal equipment |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102004840B (en) * | 2009-08-28 | 2013-09-11 | 深圳泰山在线科技有限公司 | Method and system for realizing virtual boxing based on computer |
JP5724237B2 (en) * | 2010-07-27 | 2015-05-27 | オムロンヘルスケア株式会社 | Walking change judgment device |
CN104407701A (en) * | 2014-11-27 | 2015-03-11 | 曦煌科技(北京)有限公司 | Individual-oriented clustering virtual reality interactive system |
CN109388142B (en) * | 2015-04-30 | 2021-12-21 | 广东虚拟现实科技有限公司 | Method and system for virtual reality walking control based on inertial sensor |
-
2017
- 2017-05-25 KR KR1020170064710A patent/KR20180129140A/en not_active Application Discontinuation
- 2017-06-09 CN CN201710434202.0A patent/CN108958465A/en active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200121055A (en) | 2019-04-15 | 2020-10-23 | 주식회사 스토익엔터테인먼트 | Virtual reality content control device, virtual reality attraction and calibration method thereof |
KR20210000336A (en) * | 2019-06-24 | 2021-01-05 | 고려대학교 산학협력단 | System and method for measuring dynamic postural balance |
IT201900014631A1 (en) * | 2019-08-12 | 2021-02-12 | Webbdone Srl | HANDLING METHOD FOR VIRTUAL REALITY |
KR20220026021A (en) * | 2020-08-24 | 2022-03-04 | 리벳 주식회사 | Physical Equilibrium Device Using VR Content |
KR20220170414A (en) * | 2021-06-22 | 2022-12-30 | 김장백 | Virtual Exercise Device and Virtual Exercise System |
Also Published As
Publication number | Publication date |
---|---|
CN108958465A (en) | 2018-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20180129140A (en) | Method of user mosion analyzing for virtual reality connection, method and device for virtual reality connection | |
JP6882916B2 (en) | Walking support system, walking support method, and walking support program | |
US8988438B2 (en) | Motion capture apparatus and method | |
WO2012039467A1 (en) | Exercise assistance system | |
JP5624625B2 (en) | Exercise support system | |
KR20150107597A (en) | Gesture recognition apparatus and control method of gesture recognition apparatus | |
KR102365191B1 (en) | Method and apparatus for recognizing user motion | |
US20130069939A1 (en) | Character image processing apparatus and method for footskate cleanup in real time animation | |
KR20210068336A (en) | Device and method for generating animation based on motion of object | |
JP2016077346A (en) | Motion support system, motion support method, and motion support program | |
CN113940667B (en) | Anti-falling walking aid method and system based on walking aid and terminal equipment | |
WO2021192906A1 (en) | Calculation method | |
Diaz-Monterrosas et al. | A brief review on the validity and reliability of microsoft kinect sensors for functional assessment applications | |
KR20200087027A (en) | Method and apparatus for capturing motion for musculoskeletal diagnosis | |
US20060134583A1 (en) | Simulation and training sphere for receiving persons | |
JP2007007803A (en) | Robot and control method thereof | |
CN108209931B (en) | System and method for measuring joint included angle | |
KR20170099715A (en) | Automatic Measuring System for Range of Motion and Automatic Measuring Method for range of Motion Using the Same | |
WO2021192908A1 (en) | Tracking method | |
WO2022074886A1 (en) | Posture detection device, posture detection method, and sleeping posture determination method | |
KR102133186B1 (en) | Rehabilitation exercise system | |
CN114053679A (en) | Exercise training method and system | |
JP6975001B2 (en) | Tilt measuring device and tilt measuring method | |
Hachaj et al. | Heuristic Method for Calculating the Translation of Human Body Recordings Using Data from an Inertial Motion Capture Costume | |
KR20200069232A (en) | Motion capture apparatus based sensor type motion capture system and method thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
N231 | Notification of change of applicant | ||
E601 | Decision to refuse application |