KR20200109895A - Methods and apparatus for supporting interaction Undo for interaction among multiple users - Google Patents
Methods and apparatus for supporting interaction Undo for interaction among multiple users Download PDFInfo
- Publication number
- KR20200109895A KR20200109895A KR1020190029697A KR20190029697A KR20200109895A KR 20200109895 A KR20200109895 A KR 20200109895A KR 1020190029697 A KR1020190029697 A KR 1020190029697A KR 20190029697 A KR20190029697 A KR 20190029697A KR 20200109895 A KR20200109895 A KR 20200109895A
- Authority
- KR
- South Korea
- Prior art keywords
- restoration
- interaction
- time
- user
- users
- 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/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- 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
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
인터랙션 복원을 지원하는 방법 및 장치에 관한 것으로, 구체적으로, 여러 사용자 사이의 상호작용과 관련된 인터랙션의 복원을 지원하는 방법 및 장치에 관한 것이다.The present invention relates to a method and apparatus for supporting interaction restoration, and more particularly, to a method and apparatus for supporting restoration of an interaction related to an interaction between multiple users.
[국가지원 연구개발에 대한 설명][Explanation of nationally supported R&D]
본 연구는 한국연구재단의 관리 하에 과학기술정보통신부의 글로벌프론티어지원(R&D) 사업의 "원격 사용자간 협업을 위한 손 기반 Seamless CoUI 기술 개발에 관한 연구"(과제 고유번호: 1711082612, 세부과제번호: 2011-0031425)의 지원에 의하여 이루어진 것이다.This study is under the management of the National Research Foundation of Korea, "A Study on the Development of Hand-Based Seamless CoUI Technology for Collaboration between Remote Users" of the Global Frontier Support (R&D) Project of the Ministry of Science and ICT. 2011-0031425).
최근 사용자들은 컴퓨터 기술과 장비의 급속한 발전과 더불어 다양한 제품 개발이 이루어짐에 따라 이전과는 다른 다양한 인터랙션을 경험하고 있다. 지금까지 사람과 컴퓨터 간의 효율적이고 개선된 인터랙션(상호작용)을 위한 연구는 꾸준히 진행되어 왔으며, 제스처 등의 행위를 기반으로 하여 복수의 사용자가 가상 공간에서 3차원 물체 또는 다른 사용자와 인터랙션하는 자연스러운 사용자 인터페이스(NUI, Natural User Interface) 분야가 계속해서 발전할 것으로 예측되고 있다.Recently, users are experiencing a variety of interactions different from before as various products are developed along with the rapid development of computer technology and equipment. Until now, research for efficient and improved interaction (interaction) between humans and computers has been steadily progressing, and natural users in which multiple users interact with 3D objects or other users in virtual space based on actions such as gestures. It is predicted that the field of natural user interface (NUI) will continue to develop.
가상 공간에서 복수의 사용자들이 상호 작용을 하는 경우, 예를 들어, 사용자 1, 사용자 2가 함께 가상 물체를 이동시키는 상호 작용을 하는 경우, 사용자 1의 행위에 대한 인식 오류 등에 따라 가상 공간 내에서의 사용자 1의 행위를 복원(Undo)해야 되는 상황이 발생할 수 있다. 여기서, 복원은 이전의 상호 작용을 무효(Undo)로 하고 다시 수행하는 것를 의미한다. 상술한 행위 기반의 3차원 가상 공간의 사용자 인터페이스 환경은 이러한 인터랙션의 복원 기능을 제공할 수 있다. When a plurality of users interact in a virtual space, for example, when User 1 and User 2 interact to move a virtual object together, in the case of an error in recognition of User 1's behavior, There may be a situation in which user 1's behavior must be undoed. Here, restoration means making the previous interaction undo and performing it again. The above-described behavior-based user interface environment of a 3D virtual space may provide a function of restoring such an interaction.
다만, 종래의 인터랙션의 복원은 사용자의 행위를 다시 인식하여 가상 물체를 다시 잡아서 인터랙션을 계속 진행하거나, 시스템을 초기화하여 모든 과정을 다시 시작하는 방식으로 제공되었다. 또한, 종래의 인터랙션에서는 인터랙션의 복원을 요청한 사용자와 가상 물체와의 관계만을 고려하여 복원을 제공하였으며, 인터랙션의 복원과 관련하여 상기 가상 공간에 협업하고 있는 다른 사용자는 고려되지 않았다. 즉, 복수의 사용자가 서로 협력하는 3차원 인터랙션 조작에 대한 복원(Undo)은 협력하는 다른 사용자의 조작에 영향을 미치므로 다른 사용자를 고려하여, 전체 시각적인 관점에서 3차원 인터랙션에 대한 복원을 수행하는 방법 및 장치가 요구되고 있는 실정이다.However, in the conventional restoration of the interaction, the user's behavior is recognized again and the virtual object is captured again to continue the interaction, or the system is initialized to restart all processes. Also, in the conventional interaction, restoration was provided in consideration of only the relationship between the user who requested the restoration of the interaction and the virtual object, and other users collaborating with the virtual space in relation to the restoration of the interaction were not considered. In other words, Undo for 3D interaction manipulation in which multiple users cooperate with each other affects the manipulation of other cooperating users, so the 3D interaction is restored from the overall visual point of view in consideration of other users. There is a demand for a method and an apparatus for this.
본 발명은 전체 시각의 관점에서 복수의 사용자 각각에 대한 인터랙션 히스토리를 관리하고, 다른 사용자의 상호 영향을 고려하여 인터랙션 복원을 지원하는 방법 및 장치를 제공한다.The present invention provides a method and apparatus for managing an interaction history for each of a plurality of users from the perspective of a whole view, and supporting interaction restoration in consideration of mutual influences of other users.
본 발명의 일 실시예에 따른 인터랙션 복원 지원 방법은 복수의 사용자가 참여하는 가상 공간에서 상기 복수의 사용자 사이의 상호작용에 대한 인터랙션 복원을 지원하는 인터랙션 복원 지원 방법으로, 인터랙션 복원을 수행한 복원 요청 사용자로부터 복원 정보를 수신하는 단계; 상기 복원 정보에 따라 상기 복수의 사용자 중 상기 복수 요청 사용자 이외의 다른 사용자의 복원 시점을 결정하는 단계; 및 상기 다른 사용자에게 결정된 복원 시점으로 인터랙션 복원을 요청하는 단계를 포함한다.An interaction restoration support method according to an embodiment of the present invention is an interaction restoration support method that supports restoration of interactions between the plurality of users in a virtual space in which a plurality of users participate, and a restoration request after performing an interaction restoration Receiving restoration information from a user; Determining a restoration time point of a user other than the plurality of requesting users among the plurality of users according to the restoration information; And requesting the other user to restore the interaction to the determined restoration time point.
본 발명의 다른 실시예에 따른 인터랙션 복원 지원 장치는 복수의 사용자가 참여하는 가상 공간에서 상기 복수의 사용자 사이의 상호작용에 대한 인터랙션 복원을 지원하는 인터랙션 복원 지원 장치로, 인터랙션 복원을 수행한 복원 요청 사용자로부터 복원 정보를 수신하고, 상기 복원 정보에 따라 상기 복수의 사용자 중 상기 복수 요청 사용자 이외의 다른 사용자의 복원 시점을 결정하며, 상기 다른 사용자에게 결정된 복원 시점으로 인터랙션 복원을 요청하는 것을 특징으로 한다.An interaction restoration support apparatus according to another embodiment of the present invention is an interaction restoration support apparatus that supports restoration of an interaction for an interaction between the plurality of users in a virtual space where a plurality of users participate, and a restoration request after performing an interaction restoration Receiving restoration information from a user, determining a restoration time of a user other than the plurality of users among the plurality of users according to the restoration information, and requesting the other user to restore an interaction at the determined restoration time. .
본 발명의 또 다른 실시예에 따른 가상 공간 제공 시스템은 복수의 사용자에게 가상 공간을 제공하는 가상 공간 제공 장치; 상기 복수의 사용자의 신체의 적어도 일부를 인식하여 상기 가상 공간에 반영하게 하는 입력 장치; 상기 가상 공간을 출력하여 상기 복수의 사용자에게 제공하는 출력 장치; 상기 복수의 사용자들의 인터랙션을 저장하는 인터랙션 히스토리 저장부; 및 상기 복수의 사용자들의 인터랙션 타입 정보 및 시계열적 정보를 수집하며, 인터랙션 복원을 수행한 복원 요청 사용자로부터 복원 정보를 수신하고, 상기 복원 정보에 따라 상기 복수의 사용자 중 상기 복수 요청 사용자 이외의 다른 사용자의 복원 시점을 결정하며, 상기 다른 사용자에게 결정된 복원 시점으로 인터랙션 복원을 요청하는 인터랙션 복원 지원 장치를 포함한다.A virtual space providing system according to another embodiment of the present invention includes a virtual space providing device for providing a virtual space to a plurality of users; An input device for recognizing at least some of the bodies of the plurality of users and reflecting them in the virtual space; An output device that outputs the virtual space and provides it to the plurality of users; An interaction history storage unit for storing the interactions of the plurality of users; And collecting interaction type information and time-series information of the plurality of users, receiving restoration information from a restoration requesting user who performed the interaction restoration, and other users other than the plurality of users among the plurality of users according to the restoration information. And an interaction restoration support device that determines the restoration time of the user and requests the other user to restore the interaction to the determined restoration time.
본 발명의 일 실시예에 따른 인터랙션 복원 지원 장치는 복원 요청 사용자의 복원 시점에 따라 복수의 사용자 중 복원 요청 사용자 이외의 다른 사용자의 복원 시점을 결정하고, 이에 대응하는 인터랙션의 복원을 수행되도록 지원할 수 있다.The apparatus for supporting restoration of interaction according to an embodiment of the present invention may determine a restoration time of a user other than the restoration requesting user among a plurality of users according to the restoration time of the restoration requesting user, and support the restoration of the corresponding interaction. have.
즉, 본 발명의 일 실시예에 따른 인터랙션 복원 지원 장치는 전체 시각의 관점에서 복수의 사용자 각각에 대한 인터랙션 히스토리를 관리하고, 다른 사용자의 상호 영향을 고려하여 인터랙션 복원을 지원할 수 있으며, 이를 포함하는 가상 공간 제공 시스템은 보다 개선된 인터랙션 복원을 제공하는 사용자 환경을 제공할 수 있다.That is, the apparatus for restoring an interaction according to an embodiment of the present invention manages the interaction history for each of a plurality of users from the perspective of the whole view, and supports the restoration of the interaction in consideration of mutual influences of other users, including The virtual space providing system may provide a user environment that provides more improved interaction restoration.
도 1은 본 발명의 일 실시예에 따른 가상 공간 제공 시스템의 블록도이다.
도 2는 본 발명의 일 실시예에 따른 가상 공간을 나타낸 예시도이다.
도 3은 본 발명의 일 실시예에 따른 가상 공간 제공 시스템과 인터랙션 복원 지원 장치의 관계를 도시한 도면이다.
도 4는 글로벌 인터랙션 히스토리 관리부에서 수집된 인터랙션 타입 및 시계열적 정보를 도시한 그래프이다.
도 5는 복원 요청 사용자를 기준으로 인터랙션이 복원되는 과정을 도시한 순서도이다.
도 6은 다른 사용자를 기준으로 인터랙션이 복원되는 과정을 도시한 순서도이다.
도 7은 본 발명의 다른 실시예에 따른 인터랙션 복원 방법의 순서도이다.1 is a block diagram of a system for providing a virtual space according to an embodiment of the present invention.
2 is an exemplary view showing a virtual space according to an embodiment of the present invention.
3 is a diagram illustrating a relationship between a system for providing a virtual space and an apparatus for supporting interaction restoration according to an embodiment of the present invention.
4 is a graph showing interaction types and time series information collected by a global interaction history management unit.
5 is a flowchart illustrating a process of restoring an interaction based on a restoration requesting user.
6 is a flowchart illustrating a process of restoring an interaction based on another user.
7 is a flowchart of an interaction restoration method according to another embodiment of the present invention.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당 업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시 예는 서로 다르지만 상호 배타적일 필요는 없다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예와 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있다. 따라서, 후술하는 상세한 설명은 한정적인 의미로 기술된 것이 아니며, 본 발명의 범위는 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에서 동일하거나 유사한 기능을 지칭한다.DETAILED DESCRIPTION OF THE INVENTION The detailed description of the present invention to be described below refers to the accompanying drawings, which illustrate specific embodiments in which the present invention may be practiced. These embodiments are described in detail enough to enable a person skilled in the art to practice the present invention. The various embodiments of the present invention are different from each other, but need not be mutually exclusive. For example, certain shapes, structures, and characteristics described herein may be implemented in other embodiments without departing from the spirit and scope of the present invention in relation to one embodiment. Further, the position or arrangement of individual components within each disclosed embodiment may be changed without departing from the spirit and scope of the present invention. Accordingly, the detailed description to be described below is not described in a limiting sense, and the scope of the present invention is limited only by the appended claims along with all scopes equivalent to those claimed by the claims. Like reference numerals in the drawings refer to the same or similar functions in various aspects.
본 명세서에서 사용되는 용어는 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어를 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 관례 또는 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 명세서의 설명 부분에서 그 의미를 기재할 것이다. 따라서 본 명세서에서 사용되는 용어는, 단순한 용어의 명칭이 아닌 그 용어가 가지는 실질적인 의미와 본 명세서의 전반에 걸친 내용을 토대로 해석되어야 한다.The terms used in the present specification have selected general terms that are currently widely used as possible while considering functions, but this may vary according to the intention or custom of a technician working in the field or the emergence of new technologies. In addition, in certain cases, there are terms arbitrarily selected by the applicant, and in this case, the meaning will be described in the description of the corresponding specification. Accordingly, terms used in the present specification should be interpreted based on the actual meaning of the term and the entire contents of the present specification, not a simple name of the term.
도 1은 본 발명의 일 실시예에 따른 가상 공간 제공 시스템의 블록도이다. 도 2는 본 발명의 일 실시예에 따른 가상 공간을 나타낸 예시도이다.1 is a block diagram of a system for providing a virtual space according to an embodiment of the present invention. 2 is an exemplary view showing a virtual space according to an embodiment of the present invention.
실시예들에 따른 가상 공간 제공 시스템(10) 및 이를 구성하는 각각의 장치 또는 부(unit)는, 전적으로 하드웨어이거나, 또는 부분적으로 하드웨어이고 부분적으로 소프트웨어인 측면을 가질 수 있다. 예컨대, 본 발명의 일 실시예에 따른 가상 공간 제공 시스템(10)의 각각의 구성요소는 하드웨어 및 해당 하드웨어에 의해 구동되는 소프트웨어의 조합을 지칭한다. 하드웨어는 CPU(Central Processing Unit) 또는 다른 프로세서(processor)를 포함하는 데이터 처리 기기일 수 있다. 또한, 하드웨어에 의해 구동되는 소프트웨어는 실행중인 프로세스, 객체(object), 실행파일(executable), 실행 스레드(thread of execution), 프로그램(program) 등을 지칭할 수 있다. 예를 들어, 인터랙션 복원 지원 장치(100)는, 여러 사용자 사이에서 발생하는 인터랙션을 복원하기 위한 하드웨어 및 이를 위한 소프트웨어의 조합을 지칭할 수 있다.The virtual
또한, 본 명세서에서 가상 공간 제공 시스템(10)을 구성하는 각 모듈은 분산 컴퓨팅 환경 하에서 서로 통신 가능하게 연결될 수 있으며, 반드시 물리적으로 구분되는 별개의 구성요소를 지칭하는 것으로 의도되는 것은 아니다. In addition, in the present specification, modules constituting the virtual
가상 공간 제공 시스템(10)은 복수의 사용자가 참여할 수 있는 가상 공간을 제공할 수 있다. 가상 공간은 소정의 물리량을 가진 복수의 가상 모델이 구현될 수 있다. 가상 모델은 가상 공간상에서 사용자의 신체 일부 또는 실제 물체와 근사하게 물리적인 운동을 수행하도록 구현될 수 있다. 가상 모델은 그래픽 정보와 물리 정보를 포함할 수 있다. 여기서, 그래픽 정보는 가상 모델을 가상 공간에 렌더링하기 위한 정보일 수 있으며, 물리 정보는 가상 물체의 물리 법칙을 적용하기 위한 물리량 및 다른 물리 정보를 가진 가상 물체와의 접촉을 인식하는 접촉 포인트 등에 관한 정보일 수 있다. 예시적으로, 가상 물체의 접촉 포인트는 메쉬 형태로 구성될 수 있으며, 가상 물체간의 접촉은 이러한 메쉬 포인트의 접촉으로 인식될 수 있다. 가상 공간은 가상 블록을 활용한 블록 놀이가 가능한 공간일 수 있으나, 이에 한정되는 것은 아니며 체스 게임을 수행할 수 있는 게임 공간 또는 사무 업무를 처리하는 가상 오피스일 수도 있다.The virtual
가상 공간 제공 시스템(10)은 상술한 가상 공간을 생성하는 가상 공간 생성 장치(101), 사용자의 신체의 적어도 일부를 인식하여 가상 공간에 반영하게 하는 입력 장치(102) 및 가상 공간을 출력하여 사용자에게 제공하는 출력 장치(103)를 포함한다. 또한, 가상 공간 제공 시스템(10)의 가상 공간 생성 장치(101)는 서버일 수 있으며, 가상 공간 제공 시스템(10)은 상기 가상 공간 생성 장치(101)에 접속하기 위한 클라이언트 장치(104)를 더 포함할 수 있다. 사용자는 클라이언트 장치(104)를 통해 상기 가상 공간 생성 장치(101)에 접속할 수 있다.The virtual
사용자의 신체의 적어도 일부(예를 들어, 손)가 립 모션(Leap Motion) 센서, 카메라와 같은 영상 센서, 특히 RGBD 센서를 포함하는 공지의 다양한 센서 등과 같은 입력 장치(102)를 통해 인식될 수 있으며, 인식된 손은 입력 정보로 가상 공간 생성 장치(101)에 제공되어 가상 공간에 가상 손으로 구현될 수 있다. 또한, 현재 구현되는 가상 공간은 3차원 디스플레이 장치 또는 헤드 마운트형 디스플레이 장치와 같은 출력 장치(103)를 통해 사용자에게 출력될 수 있다.At least a part of the user's body (e.g., hand) may be recognized through the
가상 공간에 참여하는 사용자는 복수일 수 있으며, 사용자는 가상 공간에서 인터랙션(Interaction)을 수행할 수 있다. 여기서, 인터랙션은 인간(Human) 대 세상(World)의 인간-세상(Human-World) 인터랙션(또는, 인간-물체 인터랙션)과, 인간 대 인간의 인간-세상-인간(Human-World-Human) 인터랙션을 포함할 수 있다. 가상 공간에 참여하는 사용자는 신체의 적어도 일부를 이용해 제스처를 취함으로써, 사용자 인터페이스를 통해 가상 공간의 가상 물체를 조작하는 인터랙션 또는 가상 공간의 다른 사용자와 물체를 매개로 상호 작용을 수행할 수 있다. 상술한, 입력 장치(102), 출력 장치(103) 및 클라이언트 장치(104)는 사용자 각각에 제공될 수 있으며, 각 사용자는 클라이언트 장치(104)를 통해 가상 공간에 접속하며, 입력 장치(102)를 통해 가상 공간 상에서 인터랙션을 수행하고, 인터랙션이 반영된 가상 공간은 출력 장치(103)를 통해 사용자에게 출력될 수 있다. 복수의 사용자는 같은 공간에서 상술한 입력 장치(102), 출력 장치(103) 및 클라이언트 장치(104)를 사용하여 가상 공간에 참여할 수 있으나, 이에 한정되는 것은 아니다. 도 2에 도시된 사용자 1 내지 사용자 3에 해당하는 복수의 사용자는 서로 다른 공간에 위치할 수 있고, 네트워크로 통해 연결되어 하나의 가상 공간에 참여할 수 있다.There may be a plurality of users participating in the virtual space, and the user may perform an interaction in the virtual space. Here, the interaction is a human-world interaction (or human-object interaction) of human versus world, and human-world-human interaction between human and human. It may include. A user participating in the virtual space may perform a gesture using at least a part of the body, thereby performing an interaction that manipulates a virtual object in the virtual space through a user interface or an interaction with another user in the virtual space through the object. As described above, the
가상 공간 생성 장치(101)가 제공하는 가상공간에서 발생할 수 있는 인터랙션은 인터랙션 타입(Interaction type)으로 미리 분류될 수 있다. 인터랙션 타입은 인터랙션의 최소 의미 단위로 정의 및 분류될 수 있다. 인터랙션 타입은 인터랙션을 기술(Descript)할 수 있는 상위 레벨의 추상적 설명(High-level abstract description)을 의미할 수 있다. 인터랙션 타입은 인식의 레벨뿐만 아니라, 해석, 의도 및 행동에 관련된 다른 레벨들이 포함될 수 있다. 인터랙션 타입은 단순히 사람의 제스처를 인식하여 발생되는 사람과 가상 물체 사이의 상호작용을 의미하는 것이 아니라, 사람이 가상 물체에 부여한 의미 있는 행위 상태가 정의된 것으로 볼 수 있다.Interactions that may occur in a virtual space provided by the virtual
예시적으로, 사용자가 특정 물체를 조작하는 경우 정의될 수 있는 인터랙션 타입은 접근(Approach), 물러남(Withdraw), 응시(Eye Gaze), 잡기(Grasp), 이동(Translation) 및 회전(Rotation) 등을 포함할 수 있다. 또한, 복수의 사용자의 상호 협동에 따라 수행될 수 있는 동작도 인터랙션 타입으로 정의될 수 있다. 예시적으로, 물체를 함께 잡기(InterP-Grasp), 물체를 함께 당기기(InterP-Pull), 물체를 다른 사용자에게 전달(Handover) 등의 상호작용도 인터랙션 타입으로 미리 정의될 수 있다. For example, when a user manipulates a specific object, the interaction types that can be defined are Approach, Withdraw, Eye Gaze, Grasp, Translation, and Rotation. It may include. In addition, an operation that can be performed according to mutual cooperation of a plurality of users may also be defined as an interaction type. For example, interactions such as grabbing objects together (InterP-Grasp), pulling objects together (InterP-Pull), and handover of an object to another user may also be predefined as an interaction type.
이러한, 인터랙션 타입은 사용자 인터페이스로써 사용자에게 제공될 수 있다. 사용자의 제스처, 음성 등의 사용자 행위를 입력 장치(102)를 통해 획득하고, 가상 공간 생성 장치(101)는 사용자 입력에 대한 인식 결과를 복수의 알고리즘을 통해 분석하여 적절한 인터랙션 타입을 추론할 수 있다. 가상 공간 생성 장치(101)는 인식 결과에 대한 분석을 수행하는 프로세서와 인터랙션 타입을 사용자 인터페이스로 제공하는 사용자 인터페이스 제공부를 포함할 수 있다. 사용자 입력에 대한 인식 결과는 인터랙션 타입의 확신도로 나타날 수 있으며, 인터랙션 타입의 확신도에 따라 적용될 인터랙션 타입이 가상 공간 생성 장치(101)에서 결정될 수 있다. 예시적으로, 사용자 입력에 대한 인식 결과로 산출된 잡기(Grasp) 인터랙션 타입의 확신도 값이 미리 설정된 기준 값 이상인 경우, 사용자의 입력에 대한 인터랙션은 잡기(Grasp) 인터랙션 타입으로 선택될 수 있다. 선택된 인터랙션 타입이 가상공간에 구현될 수 있다. Such an interaction type may be provided to a user as a user interface. User actions, such as a user's gesture and voice, are acquired through the
여기서, 프로세서에 의해 분석되어 결정된 인터랙션 타입은 데이터 베이스에 저장될 수 있다. 즉, 본 발명의 일 실시예에 따른 가상 공간 제공 시스템(10)은 추론된 인터랙션 타입 정보와 이에 대응되는 시계열적 정보가 저장되는 인터랙션 히스토리 저장부(105)를 포함한다. 인터랙션 히스토리 저장부(105)는 각 사용자에 대응하여 준비될 수 있다. 인터랙션 히스토리 저장부(105)에 저장된 인터랙션 타입 정보와 시계열적 정보에 따라 후술할 인터랙션 조작에 대한 복원이 제공될 수 있다.Here, the interaction type analyzed and determined by the processor may be stored in a database. That is, the virtual
상술한 인터랙션 타입은 일종의 유저 인터페이스와 같이, 사용자가 참여하는 가상 공간의 화면상에 표시될 수 있다. 여기서, 가상 공간 생성 장치(101)는 상술한 인터랙션 타입을 기준으로 가상 공간 내의 인터랙션 조작에 대한 복원(Undo)을 제공할 수 있다. 가상 공간 제공 시스템(10)은 여러 사용자 사이에서 발생하는 인터랙션을 전체 시각적인 관점에서 제어하도록 구성된 인터랙션 복원 지원 장치(100)를 더 포함할 수 있다. 이하, 상기 가상공간에서 수행되는 인터랙션의 복원 과정 및 인터랙션 복원 지원 장치(100)에 대해 보다 상세히 설명하도록 한다.The above-described interaction type may be displayed on a screen of a virtual space in which a user participates, like a kind of user interface. Here, the virtual
도 3은 본 발명의 일 실시예에 따른 가상 공간 제공 시스템과 인터랙션 복원 지원 장치의 관계를 도시한 도면이다. 도 4는 글로벌 인터랙션 히스토리 관리부에서 수집된 인터랙션 타입 및 시계열적 정보를 도시한 그래프이다. 3 is a diagram illustrating a relationship between a system for providing a virtual space and an apparatus for supporting interaction restoration according to an embodiment of the present invention. 4 is a graph showing interaction types and time series information collected by a global interaction history management unit.
도 3에 도시된 바와 같이, 가상 공간 제공 시스템(10)은 복수의 사용자(사용자 1,..., 사용자 N) 각각에 대응하는 인터랙션 히스토리 저장부(105)를 포함할 수 있다. 복수의 사용자(사용자 1, ..., 사용자 N)는 각각 제공된 입력 장치(102), 출력 장치(103) 및 클라이언트 장치(104)를 통해 가상 공간에서 상호 협력적인 인터랙션을 수행하고 있다. 여기서, 각 사용자의 행동 및 동작은 미리 정의된 인터랙션 타입 내에서 추론되어 가상 공간에서 구현될 수 있으며, 추론된 인터랙션 타입 정보 및 이의 시계열적 정보는 대응하는 인터랙션 히스토리 저장부(105)에 저장될 수 있다. As shown in FIG. 3, the virtual
인터랙션 복원 지원 장치(100)는 각 사용자의 인터랙션 히스토리 저장부(105)와 연결될 수 있다. 인터랙션 복원 지원 장치(100)는 각 사용자의 인터랙션 히스토리 저장부(105)와 네트워크를 통해 연결될 수 있으나, 이에 한정되는 것은 아니다. 인터랙션 복원 지원 장치(100)는 연결된 각 사용자의 인터랙션 히스토리 저장부(105)로부터 인터랙션 타입 정보 및 시계열적 정보를 수집할 수 있다. 여기서, 인터랙션 타입 정보는 추론되어 가상 공간에 구현된 인터랙션 타입에 대한 정보를 의미하며, 시계열적 정보는 상기 인터랙션 타입이 가상 공간에 구현된 시간을 의미할 수 있다. The interaction
인터랙션 복원 지원 장치(100)는 상술한 인터랙션 타입 정보와 시계열적 정보를 각 사용자의 인터랙션 히스토리 저장부(105)로부터 수집하는 글로벌 인터랙션 히스토리 관리부(110) 및 시간 동기화를 위한 NTP 서버(120)를 포함할 수 있다. 각 사용자의 인터랙션 히스토리 저장부(105)는 NTP 서버(120)와 시간이 동기화될 수 있다. 따라서, 시간 오차의 발생 없이 각 사용자의 추론된 인터랙션 타입 정보 및 이의 시계열적 정보가 글로벌 인터랙션 히스토리 관리부(110)에 수집될 수 있다. The interaction
도 4는 사용자 1 및 사용자 2로부터 인터랙션 타입 정보 및 이의 시계열적 정보를 수집한 글로벌 인터랙션 히스토리 관리부를 예시적으로 도시한 그래프이다. 글로벌 인터랙션 히스토리 관리부(110)는 사용자 1로부터 제2 시점(t2)에 수행된 인터랙션 타입 정보, 제4 시점(t4)에 수행된 인터랙션 타입 정보, 제5 시점(t5)에 수행된 인터랙션 타입 정보를 수집하고, 사용자 2로부터 제1 시점(t1)에 수행된 인터랙션 타입 정보, 제3 시점(t3)에 수행된 인터랙션 타입 정보, 제4 시점(t4)에 수행된 인터랙션 타입 정보 및 제6 시점(t6)에 수행된 인터랙션 타입 정보를 각각 수집한다. 여기서, 제1 시점(t1)이 현재 시점을 기준으로 가장 오래된 시점일 수 있고, 제6 시점(t6)이 현재 시점에서 가장 가까운 시점일 수 있다. 또한, 동일한 시점에 복수의 사용자로부터 인터랙션이 동시에 수집된 경우, 복수의 사용자들이 함께 인터랙션을 수행한 것으로 볼 수 있다. 즉, 제4 시점(t4)에 사용자 1 및 사용자 2는 함께 협력적인 인터랙션, 예를 들어, 물체를 함께 잡기(InterP-Grasp), 물체를 함께 당기기(InterP-Pull), 물체를 다른 사용자에게 전달(Handover ) 등을 수행한 것으로 볼 수 있다. 4 is a graph exemplarily showing a global interaction history management unit that collects interaction type information and time series information from users 1 and 2; The global interaction
글로벌 인터랙션 히스토리 관리부(110)는 가상 공간에 참여하고 있는 모든 사용자의 인터랙션 타입 정보 및 시계열적 정보를 수집하고, 이의 히스토리를 관리할 수 있다. 수집된 인터랙션 타입 정보 및 시계열적 정보는 특정 사용자의 복원에 대해 다른 사용자의 인터랙션 복원 시점을 결정하기 위한 기초 자료가 될 수 있다. 여기서, 시계열적 정보에 따른 시점이 사용자들이 수행한 인터랙션에 대응되기에, 각 사용자의 복원 시점을 결정하는 것은 각 사용자의 복원될 인터랙션을 결정하는 것으로 간주될 수 있으며, 복원될 인터랙션은 복원 시점을 결정함에 따라 결정될 수 있다.The global interaction
인터랙션 복원 지원 장치(100)의 글로벌 인터랙션 히스토리 관리부(110)는 연결된 복수의 사용자 중 적어도 한 명 이상의 사용자로부터 인터랙션 타입의 복원 정보를 수신할 수 있다. 가상 공간에 참여하는 복수의 사용자 중 적어도 한 명 이상이 인터랙션에 복원을 진행하고, 본인이 수행한 복원과 관련된 복원 정보를 글로벌 인터랙션 히스토리 관리부(110)에 송신할 수 있다. 복수의 사용자 중 인터랙션 복원을 진행한 사용자를 복원 요청 사용자로 정의하고, 복수의 사용자 중 복원 요청 사용자 이외의 사용자를 다른 사용자로 정의한다. 예시적으로, 복수의 사용자(사용자 1, ..., 사용자 N)에서 사용자 1이 복원 요청 사용자이면, 나머지 사용자 2, ..., 사용자 N이 다른 사용자에 해당한다. 여기서, 인터랙션 타입의 복원 정보는 복원 요청 사용자의 복원 시점에 대한 정보를 포함할 수 있다. The global interaction
인터랙션 복원 지원 장치(100)의 글로벌 인터랙션 히스토리 관리부(110)는 복원 요청 사용자의 복원 시점을 기준으로 다른 사용자의 인터랙션을 조정할 수 있다. 즉, 글로벌 인터랙션 히스토리 관리부(110)는 복원 요청 사용자의 변경된 복원 시점을 기준으로 다른 사용자의 복원 시점을 결정할 수 있다. 구체적으로, 글로벌 인터랙션 히스토리 관리부(110)는 복원 요청 사용자의 복원 시점이 제n 시점(tn)인 경우, 복원 요청 사용자를 제외한 다른 사용자에 대해 제n 시점(tn) 이후인 제n+1 시점(tn+1)의 인터랙션을 모두 무효(Undo)시킬 수 있다. The global interaction
그리고, 글로벌 인터랙션 히스토리 관리부(110)는 복원 요청 사용자를 제외한 다른 사용자가 제n 시점(tn)에 인터랙션을 수행한 경우, 제n 시점(tn)으로 다른 사용자의 복원 시점을 결정할 수 있으며, 다른 사용자가 제n 시점(tn)에 인터랙션을 수행하지 않은 경우, 제n 시점(tn)과 가장 가까운 이전 시점으로 다른 사용자의 복원 시점을 결정할 수 있다.In addition, the global interaction
예시적으로, 도 4에서 제2 사용자가 복원 요청 사용자이며, 제2 사용자의 복원 시점이 제4 시점(t4)인 경우, 제1 사용자의 제5 시점(t5)의 행동은 무효가 된다. 그리고, 제1 사용자는 제4 시점(t4)에 인터랙션을 수행하였기에 제1 사용자의 복원 시점은 제4 시점(t4)으로 결정될 수 있다. 또한, 제2 사용자가 복원 요청 사용자이며, 제2 사용자의 복원 시점이 제3 시점(t3)인 경우, 제1 사용자의 제4 시점(t4), 제5 시점(t5)의 행동은 무효가 된다. 그리고, 제1 사용자는 제3 시점(t3)에 인터랙션을 수행하지 않았기에, 제1 사용자의 복원 시점은 제3 시점(t3)의 직전 시점으로 결정될 수 있다. 즉, 제3 시점(t3)과 가장 가까운 이전 시점인 제2 시점(t2)으로 결정될 수 있다. For example, in FIG. 4, when the second user is a user requesting restoration, and the restoration time of the second user is the fourth time point t 4 , the first user's action at the fifth point point t 5 is invalid. . In addition, since the first user performs the interaction at the fourth time point t 4 , the restoration time point of the first user may be determined as the fourth time point t 4 . In addition, when the second user is the restoration requesting user, and the restoration time of the second user is the third time point (t 3 ), the actions of the first user at the fourth time point (t 4 ) and the fifth time point (t 5 ) are It becomes invalid. In addition, since the first user has not performed the interaction at the third time point t 3 , the restoration time point of the first user may be determined as a time point immediately before the third time point t 3 . That is, it may be determined as the second time point t 2 which is the closest previous time point to the third time point t 3 .
인터랙션 복원 지원 장치(100)의 글로벌 인터랙션 히스토리 관리부(110)는 다른 사용자의 복원 시점을 결정하고, 결정된 복원 시점으로의 인터랙션 복원을 요청할 수 있다. 글로벌 인터랙션 히스토리 관리부(110)는 복원 요청 명령을 가상 공간 생성 장치(101)로 제공할 수 있다. 가상 공간 생성 장치(101)는 복원 요청 사용자의 요청에 따라 현재 시점이 변경될 것이라는 알림을 다른 사용자에게 제공할 수 있으며, 다른 사용자들은 변경될 시점에 수행하였던 인터랙션에 대응하는 동작, 포즈로 변경하여 가상 공간의 인터랙션 복원에 적절히 대응할 수 있다.The global interaction
여기서, 복원 요청 사용자가 복수인 경우, 글로벌 인터랙션 히스토리 관리부(110)는 복원 정보가 수신된 시간 순서대로 다른 사용자의 복원 시점을 결정할 수 있다. 예시적으로, 제1 복원 요청 사용자의 제1 복원 정보가 제2 복원 요청 사용자의 제2 복원 정보보다 먼저 수신되는 경우, 제1 복원 정보를 기초로 복원 시점을 결정한 이후, 제2 복원 정보를 기초로 복원을 수행할 수 있다. Here, when there are a plurality of users requesting restoration, the global interaction
또한, 글로벌 인터랙션 히스토리 관리부(110)는 복수의 복원 정보의 수신 시간의 차이가 기설정된 기준 시간 이내인 경우, 늦게 수신된 복원 정보에 따른 복원을 수행하지 않을 수 있다. 예시적으로, 제1 복원 정보와 제2 복원 정보의 수신 시간의 차이가 기설정된 기준 시간 이내인 경우, 제2 복원 정보에 따른 복원을 수행하지 않을 수 있다. 즉, 제1 복원 요청 사용자의 복원 시점과 제2 복원 요청 사용자의 복원 시점의 차이가 매우 짧은 경우, 먼저 복원을 요청한 제1 복원 요청 사용자를 기준으로 전체적인 복원이 수행되고, 제2 복원 요청 사용자가 요청한 복원은 수행되지 않을 수 있다. 이러한 경우, 제2 복원 요청 사용자는 제1 복원 요청 사용자의 복원 시점을 기준으로 결정된 복원 시점에 대응하는 복원이 상술한 과정과 같이 수행될 수 있다. In addition, the global interaction
또한, 글로벌 인터랙션 히스토리 관리부(110)는 복수의 복원 정보의 수신 시간이 동일한 경우, 더 이전 시점으로 복원하는 복원 요청 사용자를 기준으로 전체적인 복원을 수행할 수 있다. 예시적으로, 제1 복원 정보와 제2 복원 정보의 수신 시간이 동일하고, 제1 복원 정보의 복원 시점이 제2 복원 정보의 복원 시점보다 이전인 경우, 제1 복원 정보를 기준으로 전체적인 복원이 수행될 수 있다. 즉, 제2 복원 요청 사용자의 복원은 수행되지 않고, 제2 복원 요청 사용자는 제1 복원 요청 사용자의 복원 시점을 기준으로 결정된 복원 시점에 대응하는 복원이 상술한 과정과 같이 수행될 수 있다.In addition, when the reception times of the plurality of restoration information are the same, the global interaction
도 5는 복원 요청 사용자를 기준으로 인터랙션이 복원되는 과정을 도시한 순서도이다. 도 5를 참조하면, 인터랙션의 복원을 요청하는 입력(Undo/Redo 모드로 진입하기 위한 입력)이 사용자로부터 획득되면, 가상 공간 생성 장치(101)의 프로세서는 복원 요청 사용자에게 복원 모드를 제공할 수 있다. 복원 요청 사용자는 음성 명령 또는 손을 제외한 신체 부위의 제스처 등을 이용하여 인터랙션 복원을 위한 모드의 실행을 요청할 수 있다. 인터랙션의 복원을 요청하는 입력이 획득되지 않으면, 사용자의 동작에 대한 인터랙션 타입의 추론이 수행되며(인터랙션 모드), 추론된 인터랙션 타입은 인터랙션 히스토리 저장부(105)에 저장될 수 있다. 복원 모드에서 가상 공간 생성 장치(101)는 인터랙션 히스토리 저장부(105)로부터 복원 가능 정보를 획득하여, 복원 가능 정보에 대응되는 사용자 인터페이스를 사용자에게 제공할 수 있다. 여기서, 복원 가능 정보는 복원 요청 시점 이전에 인터랙션 히스토리 저장부(105)에 저장되었던 인터랙션 타입 및 이의 시계열적인 정보를 포함할 수 있다. 도 5에서, 인터랙션 히스토리 저장부(105)는 가상 물체에 대해 잡기(Grasp), 회전(Rotation), 놓기(Release)하는 인터랙션 타입이 시계열적인 정보에 해당하는 시점(t1, t2, t3)와 함께 저장된 것이 도시되어 있으며, 각 인터랙션 타입 및 이에 대응하는 시계열적인 정보가 사용자 인터페이스로 사용자에게 제공될 수 있다(복원 인터랙션 선택 UI). 사용자 인터페이스를 통해 특정 인터랙션 타입에 대한 선택이 감지되면, 프로세서는 특정 인터랙션 타입을 참조로 하여 사용자의 행위 상태 및 가상 객체의 상태 중 적어도 하나를 복원하도록 지원할 수 있다.5 is a flowchart illustrating a process of restoring an interaction based on a restoration requesting user. Referring to FIG. 5, when an input requesting restoration of an interaction (an input for entering the Undo/Redo mode) is obtained from a user, the processor of the virtual
여기서, 가상 공간 생성 장치(101)는 사용자가 복원할 인터랙션에 대응하는 포즈(행위 상태)를 취할 수 있도록 지원할 수 있다. 예시적으로, 가상 공간 생성 장치(101)는 인식 장치를 통해 인식되는 현재 사용자의 인터랙션 포즈의 그래픽 요소와 복원할 인터랙션 포즈의 그래픽 요소를 같이 제공하여, 사용자가 복원할 인터랙션 포즈와 같은 포즈(행위 상태)를 취할 수 있도록 지원할 수 있다. 또한, 복원할 인터랙션 포즈의 그래픽 요소를 깜빡이거나, 화살표 등의 가이드 라인을 제공하여 사용자가 쉽게 포즈를 취하도록 지원할 수도 있다.Here, the virtual
또한, 가상 공간 생성 장치(101)는 사용자로부터 인터랙션 입력이 발생되면(사용자가 포즈를 취했을 때 인터랙션 인식부가 이를 인식하면), 사용자의 현재 인터랙션 포즈와 복원할 인터랙션 포즈를 비교하여 적합 정도를 판단한 후 적합 정도가 기준 이상이 되면, 유지되는 시간(duration)을 체크하여 최종적으로 인터랙션을 복원할 수 있다.In addition, when an interaction input is generated from the user (when the interaction recognition unit recognizes it when the user poses), the virtual
또한, 가상 공간 생성 장치(101)의 프로세서는 복원을 위한 인터랙션 타입 및 이의 시계열적 정보를 포함한 복원 정보를 글로벌 인터랙션 히스토리 관리부(110)에게 제공할 수 있다. 글로벌 인터랙션 히스토리 관리부(110)는 상술한 과정을 통해 복원 요청 사용자를 제외한 다른 사용자의 복원 시점을 결정할 수 있으며, 이에 대한 복원 명령을 다른 사용자에게 제공한다.In addition, the processor of the virtual
도 6은 다른 사용자를 기준으로 인터랙션이 복원되는 과정을 도시한 순서도이다. 다른 사용자들은 각 사용자들의 요청이 아닌, 상기 복원 명령에 의해 다른 사용자의 복원 모드가 시작될 수 있다. 가상 공간 생성 장치(101)는 상기 복원 모드에 따라 다른 사용자들에게 복원 모드를 제공할 수 있다. 상기 복원 모드에서, 글로벌 인터랙션 히스토리 관리부(110)에 의해 제공된 복원 명령에 따른 복원 시점에 대응하는 인터랙션으로 복원될 수 있다. 가상 공간 생성 장치(101)는 복원 모드에서 복원 명령에 따라 결정된 복원 시점(tu)에 대응하는 인터랙션에 대응하는 포즈(행위 상태)를 취할 수 있도록 지원할 수 있다.6 is a flowchart illustrating a process of restoring an interaction based on another user. Other users may start the restoration mode of another user by the restoration command rather than the request of each user. The virtual
예시적으로, 가상 공간 생성 장치(101)는 인식 장치를 통해 인식되는 현재 사용자의 인터랙션 포즈의 그래픽 요소와 복원할 인터랙션 포즈의 그래픽 요소를 같이 제공하여, 사용자가 복원할 인터랙션 포즈와 같은 포즈(액션)를 취할 수 있도록 지원할 수 있다. 또한, 복원할 인터랙션 포즈의 그래픽 요소를 깜빡이거나, 화살표 등의 가이드 라인을 제공하여 사용자가 쉽게 포즈를 취하도록 지원할 수도 있다.As an example, the virtual
또한, 가상 공간 생성 장치(101)는 사용자로부터 인터랙션 입력이 발생되면(사용자가 포즈를 취했을 때 인터랙션 인식부가 이를 인식하면), 사용자의 현재 인터랙션 포즈와 복원할 인터랙션 포즈를 비교하여 적합 정도를 판단한 후 적합 정도가 기준 이상이 되면, 유지되는 시간(duration)을 체크하여 최종적으로 인터랙션을 복원할 수 있다.In addition, when an interaction input is generated from the user (when the interaction recognition unit recognizes it when the user poses), the virtual
본 발명의 일 실시예에 따른 인터랙션 복원 지원 장치(100)는 복원 요청 사용자의 복원 시점에 따라 복수의 사용자 중 복원 요청 사용자 이외의 다른 사용자의 복원 시점을 결정하고, 이에 대응하는 인터랙션의 복원을 수행되도록 지원할 수 있다. 즉, 인터랙션 복원 지원 장치(100)는 전체 시각의 관점에서 복수의 사용자 각각에 대한 인터랙션 히스토리를 관리하고, 다른 사용자의 상호 영향을 고려하여 인터랙션 복원을 지원할 수 있으며, 이를 포함하는 가상 공간 제공 시스템(10)은 보다 개선된 인터랙션 복원을 제공하는 사용자 환경을 제공할 수 있다.The interaction
도 7은 본 발명의 다른 실시예에 따른 인터랙션 복원 방법의 순서도이다. 본 실시예에 따른 방법은 도 1 내지 도 6에 따른 인터랙션 복원 장치에서 수행되는 인터랙션 복원 방법으로 중복되는 설명은 생략한다.7 is a flowchart of an interaction restoration method according to another embodiment of the present invention. The method according to the present embodiment is an interaction restoration method performed in the interaction restoration apparatus according to FIGS. 1 to 6, and a redundant description thereof will be omitted.
도 7을 참조하면, 본 발명의 실시예에 따른 인터랙션 복원 방법은 복수의 사용자들의 인터랙션 타입 정보 및 시계열적 정보를 수집하는 단계(S100), 인터랙션 복원을 수행한 복원 요청 사용자로부터 복원 정보를 수신하는 단계(S110), 상기 복원 정보에 따라 상기 복수의 사용자 중 상기 복수 요청 사용자 이외의 다른 사용자의 복원 시점을 결정하는 단계(S120) 및 상기 다른 사용자에게 결정된 복원 시점으로 인터랙션 복원을 요청하는 단계(S130)를 포함한다.Referring to FIG. 7, the method for restoring an interaction according to an embodiment of the present invention includes the steps of collecting interaction type information and time-series information of a plurality of users (S100), receiving restoration information from a restoration requesting user who has performed interaction restoration. Step (S110), determining a restoration time of a user other than the plurality of users among the plurality of users according to the restoration information (S120), and requesting the other user to restore the interaction to the determined restoration time (S130) ).
먼저, 방법은 복수의 사용자들의 인터랙션 타입 정보 및 시계열적 정보를 수집한다(S100). First, the method collects interaction type information and time series information of a plurality of users (S100).
복수의 사용자들의 인터랙션 타입 정보 및 시계열적 정보는 각 사용자들에 대응하는 인터랙션 히스토리 저장부(105)에 저장될 수 있다. 여기서, 인터랙션 복원 지원 장치(100)는 각 사용자의 인터랙션 히스토리 저장부(105)와 연결될 수 있다. 인터랙션 복원 지원 장치(100)는 각 사용자의 인터랙션 히스토리 저장부(105)와 네트워크를 통해 연결될 수 있으나, 이에 한정되는 것은 아니다. 인터랙션 복원 지원 장치(100)는 연결된 각 사용자의 인터랙션 히스토리 저장부(105)로부터 인터랙션 타입 정보 및 시계열적 정보를 수집할 수 있다. 여기서, 인터랙션 타입 정보는 추론되어 가상 공간에 구현된 인터랙션 타입에 대한 정보를 의미하며, 시계열적 정보는 상기 인터랙션 타입이 가상 공간에 구현된 시간을 의미할 수 있다. 각 사용자의 인터랙션 히스토리 저장부(105)는 NTP 서버와 시간이 동기화될 수 있다. 즉, 복수의 사용자들의 인터랙션 타입 정보 및 시계열적 정보는 NTP 서버를 통해 시간이 동기화될 수 있다. 따라서, 시간 오차의 발생 없이 각 사용자의 추론된 인터랙션 타입 정보 및 이의 시계열적 정보가 글로벌 인터랙션 히스토리 관리부(110)에 수집될 수 있다. 상기 수집된 인터랙션 타입 정보 및 시계열적 정보에 기초하여 다른 사용자의 복원 시점이 결정될 수 있다.The interaction type information and time series information of a plurality of users may be stored in the interaction
이어서, 인터랙션 복원을 수행한 복원 요청 사용자로부터 복원 정보를 수신한다(S110). Subsequently, restoration information is received from the restoration requesting user who has performed the restoration of the interaction (S110).
인터랙션 복원 지원 장치(100)는 연결된 복수의 사용자 중 적어도 한 명 이상의 사용자로부터 인터랙션 타입의 복원 정보를 수신할 수 있다. 가상 공간에 참여하는 복수의 사용자 중 적어도 한 명 이상이 인터랙션에 복원을 진행하고, 본인이 수행한 복원과 관련된 복원 정보를 인터랙션 복원 지원 장치(100)에 송신할 수 있다. 인터랙션 타입의 복원 정보는 복원 요청 사용자의 복원 시점에 대한 정보를 포함할 수 있다.The
다음으로, 복원 정보에 따라 상기 복수의 사용자 중 상기 복수 요청 사용자 이외의 다른 사용자의 복원 시점을 결정한다(S120).Next, a restoration time point of a user other than the plurality of requesting users among the plurality of users is determined according to the restoration information (S120).
인터랙션 복원 지원 장치(100)는 복원 요청 사용자의 복원 시점을 기준으로 다른 사용자의 인터랙션을 조정할 수 있다. 즉, 인터랙션 복원 지원 장치(100)는 복원 요청 사용자의 복원 시점을 기준으로 다른 사용자의 복원 시점을 결정할 수 있다. 인터랙션 복원 지원 장치(100)는 상기 다른 사용자에게 결정된 복원 시점으로 인터랙션 복원을 요청할 수 있다.The
인터랙션 복원 지원 장치(100)는 복원 요청 사용자의 복원 시점이 제n 시점(tn)인 경우, 복원 요청 사용자를 제외한 다른 사용자에 대해 제n 시점(tn) 이후인 제n+1 시점(tn+1)의 인터랙션을 모두 무효(Undo)시킬 수 있다. Interaction restore
그리고, 글로벌 인터랙션 히스토리 관리부(110)는 복원 요청 사용자를 제외한 다른 사용자가 제n 시점(tn)에 인터랙션을 수행한 경우, 제n 시점(tn)으로 다른 사용자의 복원 시점을 결정할 수 있으며, 다른 사용자가 제n 시점(tn)에 인터랙션을 수행하지 않은 경우, 제n 시점(tn)과 가장 가까운 이전 시점으로 다른 사용자의 복원 시점을 결정할 수 있다.In addition, the global interaction
다른 사용자에게 결정된 복원 시점으로 인터랙션 복원을 요청한다(S130).Another user is requested to restore the interaction to the determined restoration time point (S130).
인터랙션 복원 지원 장치(100)는 다른 사용자의 복원 시점을 결정하고, 결정된 복원 시점으로의 인터랙션 복원을 요청할 수 있다. 인터랙션 복원 지원 장치(100)는 복원 요청 명령을 가상 공간 생성 장치(101)로 제공할 수 있다. 가상 공간 생성 장치(101)는 복원 요청 사용자의 요청에 따라 현재 시점이 변경될 것이라는 알림을 다른 사용자에게 제공할 수 있으며, 다른 사용자들은 변경될 시점에 수행하였던 인터랙션에 대응하는 동작, 포즈로 변경하여 가상 공간의 인터랙션 복원에 적절히 대응할 수 있다.The
이상에서 설명한 실시예들에 따른 인터랙션 복원 방법에 의한 동작은, 적어도 부분적으로 컴퓨터 프로그램으로 구현되고 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다. 실시예들에 따른 인터랙션 복원 방법에 의한 동작을 구현하기 위한 프로그램이 기록되고 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다. 또한, 본 실시예를 구현하기 위한 기능적인 프로그램, 코드 및 코드 세그먼트(segment)들은 본 실시예가 속하는 기술 분야의 통상의 기술자에 의해 용이하게 이해될 수 있을 것이다.The operation by the method for restoring an interaction according to the embodiments described above may be implemented at least partially as a computer program and recorded on a computer-readable recording medium. A recording medium in which a program for implementing an operation by the method of restoring an interaction according to the embodiments is recorded and the computer-readable recording medium includes all types of recording devices in which data that can be read by a computer is stored. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, and optical data storage devices. In addition, the computer-readable recording medium may be distributed over a computer system connected through a network, and computer-readable codes may be stored and executed in a distributed manner. In addition, functional programs, codes, and code segments for implementing the present embodiment may be easily understood by those skilled in the art to which the present embodiment belongs.
이상에서는 실시예들을 참조하여 설명하였지만 본 발명은 이러한 실시예들 또는 도면에 의해 한정되는 것으로 해석되어서는 안 되며, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although the above has been described with reference to the embodiments, the present invention should not be construed as being limited by these embodiments or drawings, and those skilled in the art will have the spirit and scope of the present invention described in the following claims. It will be understood that various modifications and changes can be made to the present invention within the range not departing from.
10: 가상 공간 제공 시스템
100: 인터랙션 복원 지원 장치
101: 가상 공간 생성 장치
102: 입력 장치
103: 출력 장치
104: 클라이언트 장치
105: 인터랙션 히스토리 저장부
110: 글로벌 인터랙션 히스토리 관리부
120: NTP 서버10: Virtual space provision system
100: interaction restoration support device
101: virtual space creation device
102: input device
103: output device
104: client device
105: interaction history storage unit
110: Global interaction history management department
120: NTP server
Claims (11)
인터랙션 복원을 수행한 복원 요청 사용자로부터 복원 정보를 수신하는 단계;
상기 복원 정보에 따라 상기 복수의 사용자 중 상기 복수 요청 사용자 이외의 다른 사용자의 복원 시점을 결정하는 단계; 및
상기 다른 사용자에게 결정된 복원 시점으로 인터랙션 복원을 요청하는 단계를 포함하는 인터랙션 복원 지원 방법.An interaction restoration support method that supports restoration of interactions for interactions between the plurality of users in a virtual space where a plurality of users participate,
Receiving restoration information from a restoration requesting user who has performed interaction restoration;
Determining a restoration time point of a user other than the plurality of requesting users among the plurality of users according to the restoration information; And
And requesting the other user to restore the interaction to the determined restoration time point.
상기 복원 정보는 상기 복원 요청 사용자의 복원 시점에 대한 정보를 포함하고,
상기 다른 사용자의 복원 시점을 결정하는 단계는,
상기 복원 요청 사용자의 복원 시점이 제n 시점(tn)인 경우, 상기 다른 사용자에 대해 상기 제n 시점(tn) 이후에 수행된 제n+1 시점(tn+1)의 인터랙션을 모두 무효시키는 것을 포함하는 인터랙션 복원 지원 방법.The method of claim 1,
The restoration information includes information on the restoration time of the restoration requesting user,
The step of determining the restoration time of the other user,
If the recovery time of the user request to reclaim the n-th point in time (t n), all of the interaction of the n-th point in time (t n) of the n-th +1 time performed after the (t n + 1) with respect to the other users How to support interaction restoration, including invalidating.
상기 다른 사용자의 복원 시점을 결정하는 단계는,
상기 다른 사용자가 상기 제n 시점(tn)에 인터랙션을 수행한 경우, 상기 제n 시점(tn)으로 다른 사용자의 복원 시점을 결정하고,
상기 다른 사용자가 상기 제n 시점(tn)에 인터랙션을 수행하지 않은 경우, 상기 제n 시점(tn)과 가장 가까운 이전 시점으로 다른 사용자의 복원 시점을 결정하는 것을 포함하는 인터랙션 복원 지원 방법.The method of claim 2,
The step of determining the restoration time of the other user,
When the said other user interaction to perform the n-th point in time (t n), and to the n-th point in time (t n) determining the time of restoration of the other users,
If the other user has not performed an interaction in the n-th point in time (t n), interaction restore supporting method includes determining a restore point of other users in the closest previous time and the n-th point in time (t n).
상기 인터랙션 복원을 수행한 복원 요청 사용자로부터 복원 정보를 수신하는 단계 이전에, 상기 복수의 사용자들의 인터랙션 타입 정보 및 시계열적 정보를 수집하는 단계를 더 포함하고,
상기 다른 사용자의 복원 시점은 상기 수집된 인터랙션 타입 정보 및 시계열적 정보에 기초하여 결정되는 것을 특징으로 하는 인터랙션 복원 지원 방법.The method of claim 1,
Before the step of receiving restoration information from the restoration requesting user who performed the interaction restoration, further comprising collecting interaction type information and time series information of the plurality of users,
The restoration time point of the other user is determined based on the collected interaction type information and time series information.
상기 복수의 사용자들의 인터랙션 타입 정보 및 시계열적 정보는 NTP 서버를 통해 시간이 동기화되는 것을 특징으로 하는 인터랙션 복원 지원 방법.The method of claim 4,
The interaction type information and time-series information of the plurality of users are synchronized in time through an NTP server.
인터랙션 복원을 수행한 복원 요청 사용자로부터 복원 정보를 수신하고,
상기 복원 정보에 따라 상기 복수의 사용자 중 상기 복수 요청 사용자 이외의 다른 사용자의 복원 시점을 결정하며, 상기 다른 사용자에게 결정된 복원 시점으로 인터랙션 복원을 요청하는 것을 특징으로 하는 인터랙션 복원 지원 장치.An interaction restoration support device that supports restoration of interactions for interactions between the plurality of users in a virtual space where a plurality of users participate,
Receives restoration information from the restoration request user who performed the interaction restoration,
And determining a restoration time of a user other than the plurality of requesting users among the plurality of users according to the restoration information, and requesting the other user to restore an interaction to the determined restoration time.
상기 복원 정보는 상기 복원 요청 사용자의 복원 시점에 대한 정보를 포함하고,
상기 다른 사용자의 복원 시점을 결정하는 것은,
상기 복원 요청 사용자의 복원 시점이 제n 시점(tn)인 경우, 상기 다른 사용자에 대해 상기 제n 시점(tn) 이후에 수행된 제n+1 시점(tn+1)의 인터랙션을 모두 무효시키는 것을 포함하는 인터랙션 복원 지원 장치.The method of claim 6,
The restoration information includes information on the restoration time of the restoration requesting user,
Determining the restoration time of the other user,
If the recovery time of the user request to reclaim the n-th point in time (t n), all of the interaction of the n-th point in time (t n) of the n-th +1 time performed after the (t n + 1) with respect to the other users Interaction restoration support apparatus including invalidating.
상기 다른 사용자의 복원 시점을 결정하는 것은,
상기 다른 사용자가 상기 제n 시점(tn)에 인터랙션을 수행한 경우, 상기 제n 시점(tn)으로 다른 사용자의 복원 시점을 결정하고,
상기 다른 사용자가 상기 제n 시점(tn)에 인터랙션을 수행하지 않은 경우, 상기 제n 시점(tn)의 직전 시점으로 다른 사용자의 복원 시점을 결정하는 것을 포함하는 인터랙션 복원 지원 장치.The method of claim 7,
Determining the restoration time of the other user,
When the said other user interaction to perform the n-th point in time (t n), and to the n-th point in time (t n) determining the time of restoration of the other users,
If the other user has not performed an interaction in the n-th point in time (t n), interaction restore enabled device that includes determining a restore point of another user to the previous point in the n-th point in time (t n).
상기 인터랙션 복원 지원 장치는,
상기 인터랙션 복원을 수행한 복원 요청 사용자로부터 복원 정보를 수신하기 이전에, 상기 복수의 사용자들의 인터랙션 타입 정보 및 시계열적 정보를 더 수집하고,
상기 다른 사용자의 복원 시점은 상기 수집된 인터랙션 타입 정보 및 시계열적 정보에 기초하여 결정되는 것을 특징으로 하는 인터랙션 복원 지원 장치.The method of claim 6,
The interaction restoration support device,
Before receiving the restoration information from the restoration requesting user who performed the interaction restoration, further collecting interaction type information and time series information of the plurality of users,
The restoring time of the other user is determined based on the collected interaction type information and time-series information.
상기 복수의 사용자들의 인터랙션 타입 정보 및 시계열적 정보는 NTP 서버를 통해 시간이 동기화되는 것을 특징으로 하는 인터랙션 복원 지원 장치.The method of claim 9,
The apparatus for supporting interaction restoration, characterized in that the time is synchronized with the interaction type information and time series information of the plurality of users through an NTP server.
상기 복수의 사용자의 신체의 적어도 일부를 인식하여 상기 가상 공간에 반영하게 하는 입력 장치;
상기 가상 공간을 출력하여 상기 복수의 사용자에게 제공하는 출력 장치;
상기 복수의 사용자들의 인터랙션을 저장하는 인터랙션 히스토리 저장부; 및
상기 복수의 사용자들의 인터랙션 타입 정보 및 시계열적 정보를 수집하며, 인터랙션 복원을 수행한 복원 요청 사용자로부터 복원 정보를 수신하고, 상기 복원 정보에 따라 상기 복수의 사용자 중 상기 복수 요청 사용자 이외의 다른 사용자의 복원 시점을 결정하며, 상기 다른 사용자에게 결정된 복원 시점으로 인터랙션 복원을 요청하는 인터랙션 복원 지원 장치를 포함하는 가상 공간 제공 시스템.A virtual space providing device that provides a virtual space to a plurality of users;
An input device for recognizing at least some of the bodies of the plurality of users and reflecting them in the virtual space;
An output device that outputs the virtual space and provides it to the plurality of users;
An interaction history storage unit for storing the interactions of the plurality of users; And
It collects the interaction type information and time series information of the plurality of users, receives restoration information from the restoration requesting user who performed the interaction restoration, and according to the restoration information, a user other than the plurality of users among the plurality of users A system for providing a virtual space including an interaction restoration support device that determines a restoration time and requests the other user to restore an interaction to the determined restoration time.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190029697A KR102285331B1 (en) | 2019-03-15 | 2019-03-15 | Methods and apparatus for supporting interaction Undo for interaction among multiple users |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190029697A KR102285331B1 (en) | 2019-03-15 | 2019-03-15 | Methods and apparatus for supporting interaction Undo for interaction among multiple users |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200109895A true KR20200109895A (en) | 2020-09-23 |
KR102285331B1 KR102285331B1 (en) | 2021-08-04 |
Family
ID=72708445
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190029697A KR102285331B1 (en) | 2019-03-15 | 2019-03-15 | Methods and apparatus for supporting interaction Undo for interaction among multiple users |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102285331B1 (en) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090004231A (en) * | 2007-07-06 | 2009-01-12 | 엔에이치엔(주) | Method and system for sharing information on image-data edited by editing-applications |
JP2010113539A (en) * | 2008-11-06 | 2010-05-20 | Konica Minolta Holdings Inc | Information processing method, information processing apparatus, and program |
JP2010165178A (en) * | 2009-01-15 | 2010-07-29 | Konica Minolta Holdings Inc | Information processing method and information processor |
KR20110063741A (en) * | 2008-08-22 | 2011-06-14 | 마이크로소프트 코포레이션 | Social virtual avatar modification |
JP4853573B2 (en) * | 2008-06-20 | 2012-01-11 | コニカミノルタホールディングス株式会社 | Information processing method, information processing apparatus, and program |
KR20130023736A (en) * | 2011-08-29 | 2013-03-08 | (주)이스트소프트 | The system of cooperative editing of mind-map and the method thereof |
-
2019
- 2019-03-15 KR KR1020190029697A patent/KR102285331B1/en active IP Right Grant
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090004231A (en) * | 2007-07-06 | 2009-01-12 | 엔에이치엔(주) | Method and system for sharing information on image-data edited by editing-applications |
JP4853573B2 (en) * | 2008-06-20 | 2012-01-11 | コニカミノルタホールディングス株式会社 | Information processing method, information processing apparatus, and program |
KR20110063741A (en) * | 2008-08-22 | 2011-06-14 | 마이크로소프트 코포레이션 | Social virtual avatar modification |
JP2010113539A (en) * | 2008-11-06 | 2010-05-20 | Konica Minolta Holdings Inc | Information processing method, information processing apparatus, and program |
JP2010165178A (en) * | 2009-01-15 | 2010-07-29 | Konica Minolta Holdings Inc | Information processing method and information processor |
KR20130023736A (en) * | 2011-08-29 | 2013-03-08 | (주)이스트소프트 | The system of cooperative editing of mind-map and the method thereof |
Also Published As
Publication number | Publication date |
---|---|
KR102285331B1 (en) | 2021-08-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5147933B2 (en) | Man-machine interface device system and method | |
US8364643B2 (en) | Method and system thereof for restoring virtual desktops | |
Sahana et al. | Design and development of context-Aware and context-Adaptable system with session handling mechanism for ubiquitous computing | |
US20210256427A1 (en) | Automated Computer Operating System Optimization | |
US10546509B2 (en) | Evaluating user contribution in collaborative environments | |
CN110568929A (en) | Virtual scene interaction method and device and electronic equipment | |
CN113312153B (en) | Cluster deployment method and device, electronic equipment and storage medium | |
US20170365084A1 (en) | Image generating apparatus and image generating method | |
WO2020038376A1 (en) | Method and system for uniformly performing feature extraction | |
KR102511069B1 (en) | Device, method of assessing the psychological state through the drawing process of the subject and computer program | |
KR102285331B1 (en) | Methods and apparatus for supporting interaction Undo for interaction among multiple users | |
US10635163B2 (en) | System and method for interaction analysis of virtual space | |
US20200410695A1 (en) | Motion tracking sychronization in virtual reality spaces | |
Diamantis et al. | ASML: Algorithm-agnostic architecture for scalable machine learning | |
US11672467B2 (en) | User device based Parkinson's disease detection | |
Trindade et al. | Improving 3D navigation techniques in multiscale environments: a cubemap-based approach | |
KR102135331B1 (en) | System and Method for 3D Interaction Visualization of Virtual Space | |
Taylor et al. | Performance modeling of interactive, immersive virtual environments for finite element simulations | |
CN113157455A (en) | Memory management method and device, electronic equipment and computer readable storage medium | |
JP7422910B1 (en) | Information processing device, information processing method and program | |
JP5620449B2 (en) | Man-machine interface device system and method | |
KR102106432B1 (en) | System for extracting and analyzing on information of eye and method thereof | |
KR102130064B1 (en) | System and method for supporting interaction type application development | |
JP2024117527A (en) | Control device and information presentation method | |
DE112021004302T5 (en) | SYNCHRONIZE A VOICE RESPONSE FROM A VOICE ASSISTANT TO ACTIVITIES FROM A USER |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
X091 | Application refused [patent] | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) | ||
GRNT | Written decision to grant |