KR20220094988A - Method and apparatus for providing augmented reality, virtual reality, mixed reality and extended reality services - Google Patents

Method and apparatus for providing augmented reality, virtual reality, mixed reality and extended reality services Download PDF

Info

Publication number
KR20220094988A
KR20220094988A KR1020200186775A KR20200186775A KR20220094988A KR 20220094988 A KR20220094988 A KR 20220094988A KR 1020200186775 A KR1020200186775 A KR 1020200186775A KR 20200186775 A KR20200186775 A KR 20200186775A KR 20220094988 A KR20220094988 A KR 20220094988A
Authority
KR
South Korea
Prior art keywords
objects
information
environment space
relationship
electronic device
Prior art date
Application number
KR1020200186775A
Other languages
Korean (ko)
Inventor
김선희
김정훈
김영기
우효경
정희록
조효영
주영현
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020200186775A priority Critical patent/KR20220094988A/en
Priority to PCT/KR2021/002037 priority patent/WO2022145574A1/en
Publication of KR20220094988A publication Critical patent/KR20220094988A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction 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/04815Interaction 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
    • G06K9/62
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation

Abstract

The present disclosure relates to an apparatus and method for providing augmented reality, virtual reality, mixed reality, and extended reality services, which allow service users to experience more realistic augmented reality by rendering virtual objects based on information on objects existing in the surrounding environment. According to one embodiment, the method includes the steps of: a server's receiving a streaming request and first user information from an electronic device; identifying information about a type of the electronic device and a user's surrounding environmental space based on the first user information; identifying a relationship between multiple objects existing in a first virtual environment space; selecting one or more objects from among the multiple objects based on the information about the type of the electronic device and the user's surrounding environment space, and the relationship between the multiple objects; and transmitting image data about the one or more selected objects to the electronic device.

Description

증강 현실, 가상 현실, 혼합 현실 및 확장 현실 서비스를 제공하기 위한 장치 및 방법{METHOD AND APPARATUS FOR PROVIDING AUGMENTED REALITY, VIRTUAL REALITY, MIXED REALITY AND EXTENDED REALITY SERVICES}Apparatus and method for providing augmented reality, virtual reality, mixed reality and extended reality services

본 개시는 증강 현실, 가상 현실, 혼합 현실 및 확장 현실 서비스를 제공하기 위한 장치 및 방법에 관한 것이다.The present disclosure relates to an apparatus and method for providing augmented reality, virtual reality, mixed reality and extended reality services.

최근, 증강 현실(augmented reality, AR) 및 가상 현실(virtual reality, VR) 서비스를 제공할 수 있는 전자 장치가 개발되면서, 이를 활용할 수 있는 기술(방안)에 대한 관심이 높아지고 있다. 나아가, 5G 이동 통신 기술의 도입에 따라, 혼합 현실(mixed reality, MR) 및 확장 현실(extended reality, XR)을 실현하고 활용할 수 있는 기술도 연구되고 있다.Recently, as electronic devices capable of providing augmented reality (AR) and virtual reality (VR) services have been developed, interest in technologies (plans) that can utilize them is increasing. Furthermore, with the introduction of 5G mobile communication technology, technologies capable of realizing and utilizing mixed reality (MR) and extended reality (XR) are also being studied.

그러나, 현재의 확장 현실 기술의 경우, 서버에 증강 현실 서비스를 위한 모듈과 가상 현실 서비스를 위한 모듈이 별개로 존재하기 때문에 장치의 타입(예를 들어, 증강 현실 장치 또는 가상 현실 장치 등)에 따라 지원받을 수 있는 서비스가 제한된다는 문제점이 존재한다. However, in the case of the current extended reality technology, since the module for the augmented reality service and the module for the virtual reality service exist separately in the server, depending on the type of device (eg, augmented reality device or virtual reality device, etc.) There is a problem that the service that can be supported is limited.

또한, 현재의 증강 현실 서비스는 GPS(global positioning system)에 기반하여 제공되기 때문에, 사용자의 주변 환경 공간과 관계 없이, 특정 객체가 모든 사용자에게 동일한 위치에 렌더링된다는 한계가 존재한다.In addition, since the current augmented reality service is provided based on a global positioning system (GPS), there is a limitation that a specific object is rendered to the same location for all users regardless of the user's surrounding environment space.

상술한 논의를 바탕으로, 본 개시는 증강 현실, 가상 현실, 혼합 현실 및 확장 현실 서비스를 제공하기 위한 장치 및 방법을 제공한다.Based on the above discussion, the present disclosure provides apparatus and methods for providing augmented reality, virtual reality, mixed reality and extended reality services.

본 개시의 일 실시예에 의하면, 서버는,According to an embodiment of the present disclosure, the server,

하나 이상의 인스트럭션들을 저장하는 메모리;a memory storing one or more instructions;

상기 하나 이상의 인스트럭션들을 실행하는 적어도 하나의 프로세서를 포함하고, at least one processor executing the one or more instructions;

상기 적어도 하나의 프로세서는 상기 하나 이상의 인스트럭션들을 실행함으로써,The at least one processor by executing the one or more instructions,

전자 장치로부터 스트리밍 요청 및 제1 사용자 정보를 수신하고,Receive a streaming request and first user information from the electronic device,

상기 제1 사용자 정보에 기초하여, 상기 전자 장치의 타입 및 사용자의 주변 환경 공간에 관한 정보를 식별하고,based on the first user information, identify information about a type of the electronic device and a user's surrounding environment space,

제1 가상 환경 공간에 존재하는 복수의 객체들 간의 관계를 식별하고,Identifies a relationship between a plurality of objects existing in the first virtual environment space,

상기 전자 장치의 타입, 상기 사용자의 주변 환경 공간에 관한 정보 및 상기 복수의 객체들 간의 관계에 기초하여, 상기 복수의 객체들 중 하나 이상의 객체를 선택하고,selecting one or more objects from among the plurality of objects based on the type of the electronic device, information about the user's surrounding environment space, and a relationship between the plurality of objects,

상기 선택된 하나 이상의 객체에 관한 영상 데이터를 상기 전자 장치에게 전송할 수 있다.Image data regarding the one or more selected objects may be transmitted to the electronic device.

상기 적어도 하나의 프로세서는 미디어 컨텐츠 또는 상기 사용자의 주변 환경 공간에 관한 정보에 기초하여, 상기 제1 가상 환경 공간에 관한 정보를 결정할 수 있다.The at least one processor may determine information about the first virtual environment space based on media content or information about the user's surrounding environment space.

상기 복수의 객체들 중 하나 이상의 객체를 선택할 때, 상기 전자 장치가 증강 현실 장치인 경우, 상기 적어도 하나의 프로세서는 상기 사용자의 주변 환경 공간에 존재하는 적어도 하나의 객체 및 상기 복수의 객체들 간의 관계에 기초하여 선택할 수 있다.When selecting one or more objects from among the plurality of objects, if the electronic device is an augmented reality device, the at least one processor is configured to: at least one object existing in the user's surrounding environment space and a relationship between the plurality of objects can be selected based on

상기 복수의 객체들 중 하나 이상의 객체를 선택할 때, 상기 전자 장치가 가상 현실 장치인 경우, 상기 적어도 하나의 프로세서는 상기 전자 장치가 렌더링하는 제2 가상 환경 공간에 관한 정보 및 상기 복수의 객체들 간의 관계에 기초하여 선택할 수 있다.When one or more objects are selected from among the plurality of objects, if the electronic device is a virtual reality device, the at least one processor is configured to provide information about a second virtual environment space rendered by the electronic device and information about the space between the plurality of objects. You can choose based on your relationship.

상기 적어도 하나의 프로세서는 상기 제1 가상 환경 공간에 존재하는 상기 복수의 객체들 간의 관계를 식별할 때, 상기 복수의 객체들 간의 접촉 면적 및 중심 간 거리 중 적어도 하나에 기초하여 상기 복수의 객체들 간의 관계를 식별할 수 있다.When the at least one processor identifies a relationship between the plurality of objects existing in the first virtual environment space, the plurality of objects are selected based on at least one of a contact area between the plurality of objects and a center-to-center distance. relationship between them can be identified.

상기 적어도 하나의 프로세서는 상기 제1 가상 환경 공간에 존재하는 상기 복수의 객체들 간의 관계를 식별할 때, 의미론적 추론(semantic reasoning)에 기초하여 상기 복수의 객체들 간의 관계를 식별할 수 있다.When identifying the relationship between the plurality of objects existing in the first virtual environment space, the at least one processor may identify the relationship between the plurality of objects based on semantic reasoning.

상기 복수의 객체들 간의 관계에 관한 정보는 상기 복수의 객체들 간의 위치(position) 관계에 관한 정보를 포함할 수 있다.The information on the relationship between the plurality of objects may include information on the position relationship between the plurality of objects.

상기 적어도 하나의 프로세서는 상기 복수의 객체들 중 하나 이상의 객체를 선택할 때, 상기 사용자의 주변 환경 공간에 존재하는 적어도 하나의 객체 또는 상기 전자 장치가 렌더링하는 제2 가상 환경 공간에 존재하는 적어도 하나의 객체 중 제1 객체를 선택하고, 상기 복수의 객체들 간의 관계에 기초하여, 상기 제1 객체와 관계가 있는 제2 객체를 선택할 수 있다. 또한, 상기 적어도 하나의 프로세서는 상기 적어도 하나의 프로세서는 상기 복수의 객체들 간의 관계에 기초하여, 상기 제2 객체와 관계가 있는 제3 객체를 선택할 수 있다.When the at least one processor selects one or more objects from among the plurality of objects, at least one object existing in the environment space surrounding the user or at least one object present in the second virtual environment space rendered by the electronic device A first object may be selected from among the objects, and a second object related to the first object may be selected based on the relationship between the plurality of objects. Also, the at least one processor may select a third object related to the second object based on the relationship between the plurality of objects.

상기 적어도 하나의 프로세서는 상기 전자 장치로부터 제2 사용자 정보를 수신하고, 상기 제2 사용자 정보는 상기 사용자의 변경된 주변 환경 공간에 관한 정보를 포함할 수 있다.The at least one processor may receive second user information from the electronic device, and the second user information may include information about the user's changed surrounding environment space.

본 개시의 일 실시예에 의하면, 서버에 의해 수행되는 방법은, According to an embodiment of the present disclosure, the method performed by the server,

전자 장치로부터 스트리밍 요청 및 제1 사용자 정보를 수신하는 단계;Receiving a streaming request and first user information from the electronic device;

상기 제1 사용자 정보에 기초하여, 상기 전자 장치의 타입 및 사용자의 주변 환경 공간에 관한 정보를 식별하는 단계;identifying information about a type of the electronic device and a user's surrounding environment space based on the first user information;

제1 가상 환경 공간에 존재하는 복수의 객체들 간의 관계를 식별하는 단계;identifying a relationship between a plurality of objects existing in a first virtual environment space;

상기 전자 장치의 타입, 상기 사용자의 주변 환경 공간에 관한 정보 및 상기 복수의 객체들 간의 관계에 기초하여, 상기 복수의 객체들 중 하나 이상의 객체를 선택하는 단계; 및selecting one or more objects from among the plurality of objects based on the type of the electronic device, information about the user's surrounding environment space, and a relationship between the plurality of objects; and

상기 선택된 하나 이상의 객체에 관한 영상 데이터를 상기 전자 장치에게 전송하는 단계를 포함할 수 있다.The method may include transmitting image data regarding the one or more selected objects to the electronic device.

상기 서버에 의해 수행되는 방법은, 미디어 컨텐츠 또는 상기 사용자의 주변 환경 공간에 관한 정보에 기초하여, 상기 제1 가상 환경 공간에 관한 정보를 결정하는 단계를 더 포함할 수 있다.The method performed by the server may further include determining information about the first virtual environment space based on media content or information about the user's surrounding environment space.

상기 복수의 객체들 중 하나 이상의 객체를 선택하는 단계는, 상기 전자 장치가 증강 현실 장치인 경우, 상기 사용자의 주변 환경 공간에 존재하는 적어도 하나의 객체 및 상기 복수의 객체들 간의 관계에 기초하여 선택하는 단계를 포함할 수 있다.The selecting of one or more objects from among the plurality of objects may include selecting, when the electronic device is an augmented reality device, based on at least one object existing in a space surrounding the user and a relationship between the plurality of objects. may include the step of

상기 복수의 객체들 중 하나 이상의 객체를 선택하는 단계는, 상기 전자 장치가 가상 현실 장치인 경우, 상기 전자 장치가 렌더링하는 제2 가상 환경 공간에 관한 정보 및 상기 복수의 객체들 간의 관계에 기초하여 선택하는 단계를 포함할 수 있다.The selecting of one or more objects from among the plurality of objects may include, when the electronic device is a virtual reality device, based on information about a second virtual environment space rendered by the electronic device and a relationship between the plurality of objects. It may include the step of selecting.

상기 제1 가상 환경 공간에 존재하는 복수의 객체들 간의 관계를 식별하는 단계는, 상기 복수의 객체들 간의 접촉 면적 및 중심 간 거리 중 적어도 하나에 기초하여 상기 복수의 객체들 간의 관계를 식별하는 단계를 포함할 수 있다.The identifying of the relationship between the plurality of objects existing in the first virtual environment space may include: identifying the relationship between the plurality of objects based on at least one of a contact area between the plurality of objects and a distance between centers; may include

상기 제1 가상 환경 공간에 존재하는 복수의 객체들 간의 관계를 식별하는 단계는, 의미론적 추론에 기초하여 상기 복수의 객체들 간의 관계를 식별하는 단계를 포함할 수 있다.The identifying of the relationship between the plurality of objects existing in the first virtual environment space may include identifying the relationship between the plurality of objects based on semantic inference.

상기 복수의 객체들 간의 관계에 관한 정보는 상기 복수의 객체들 간의 위치 관계에 관한 정보를 포함할 수 있다.The information on the relationship between the plurality of objects may include information on the positional relationship between the plurality of objects.

상기 복수의 객체들 중 하나 이상의 객체를 선택하는 단계는, 상기 사용자의 주변 환경 공간에 존재하는 적어도 하나의 객체 또는 상기 전자 장치가 렌더링하는 제2 가상 환경 공간에 존재하는 적어도 하나의 객체 중 제1 객체를 선택하는 단계; 및 상기 복수의 객체들 간의 관계에 기초하여, 상기 제1 객체와 관계가 있는 제2 객체를 선택하는 단계를 포함할 수 있다. 또한, 상기 복수의 객체들 중 하나 이상의 객체를 선택하는 단계는, 상기 복수의 객체들 간의 관계에 기초하여, 상기 제2 객체와 관계가 있는 제3 객체를 선택하는 단계를 더 포함할 수 있다.The selecting of the one or more objects from among the plurality of objects may include: a first among at least one object existing in an environment space surrounding the user or at least one object present in a second virtual environment space rendered by the electronic device selecting an object; and selecting a second object having a relationship with the first object based on the relationship between the plurality of objects. In addition, the selecting of one or more objects from among the plurality of objects may further include selecting a third object having a relationship with the second object based on a relationship between the plurality of objects.

상기 서버에 의해 수행되는 방법은, 상기 전자 장치로부터 제2 사용자 정보를 수신하는 단계를 더 포함하고, 상기 제2 사용자 정보는 상기 사용자의 변경된 주변 환경 공간에 관한 정보를 포함할 수 있다.The method performed by the server may further include receiving second user information from the electronic device, wherein the second user information may include information about the user's changed surrounding environment space.

본 개시의 일 실시예에 의하면, 상기 서버에 의해 수행되는 방법을 구현하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체가 제공될 수 있다.According to an embodiment of the present disclosure, a computer-readable recording medium in which a program for implementing the method performed by the server is recorded may be provided.

본 개시의 일 실시예에 의하면, 전자 장치는,According to an embodiment of the present disclosure, an electronic device,

하나 이상의 인스트럭션들을 저장하는 메모리;a memory storing one or more instructions;

상기 하나 이상의 인스트럭션들을 실행하는 적어도 하나의 프로세서를 포함하고, at least one processor executing the one or more instructions;

상기 적어도 하나의 프로세서는 상기 하나 이상의 인스트럭션들을 실행함으로써,The at least one processor by executing the one or more instructions,

서버로 스트리밍 요청 및 사용자 정보를 송신하고,Send streaming request and user information to the server,

상기 사용자 정보에 대응하는 하나 이상의 객체에 관한 영상 데이터를 상기 서버로부터 수신하고,Receive image data about one or more objects corresponding to the user information from the server,

상기 수신한 영상 데이터에 기초하여 렌더링을 수행하고,Rendering is performed based on the received image data,

상기 영상 데이터는 상기 사용자 정보에 기초하여 식별된 전자 장치의 타입 및 사용자의 주변 환경 공간에 관한 정보와 가상 환경 공간에 존재하는 복수의 객체들 간의 관계에 기초하여, 선택된 상기 복수의 객체들 중 하나 이상의 객체에 관한 영상 데이터인 것을 특징으로 할 수 있다.The image data may include one of the plurality of objects selected based on the type of the electronic device identified based on the user information and the relationship between the information on the user's surrounding environment space and the plurality of objects existing in the virtual environment space. It may be characterized in that it is image data related to the above objects.

본 개시의 실시예에 따라, 전자 장치의 사용자들은 마치 그들이 같은 공간에 존재하는 것과 같은 경험을 할 수 있다. 보다 상세하게는, 사용자의 주변 환경 공간이 변화할 때마다 서버가 가상 환경 공간에 존재하는 복수의 객체들 중 렌더링할 객체를 다시 선택함으로써, 전자 장치의 사용자들은 마치 그들이 같은 공간에 존재하는 것과 같은 경험을 할 수 있다.According to an embodiment of the present disclosure, users of the electronic device may experience as if they were present in the same space. More specifically, whenever the user's surrounding environment space changes, the server reselects an object to be rendered from among a plurality of objects existing in the virtual environment space, so that users of the electronic device can act as if they exist in the same space. can experience

본 개시의 실시예에 따라, 증강 현실 및 가상 현실 서비스를 위한 모듈을 통합함으로써, 서버는 전자 장치의 타입과 관계 없이 확장 현실 서비스를 제공할 수 있다.According to an embodiment of the present disclosure, by integrating the modules for the augmented reality and virtual reality services, the server may provide the extended reality service regardless of the type of the electronic device.

본 개시의 실시예에 따라, 사용자의 주변 환경 공간에 존재하는 객체들에 관한 정보에 기초하여 가상 객체를 렌더링함으로써, 증강 현실 서비스 사용자는 보다 현실감 있는 증강 현실을 경험할 수 있다.According to an embodiment of the present disclosure, an augmented reality service user may experience a more realistic augmented reality by rendering a virtual object based on information about objects existing in the user's surrounding environment space.

본 개시의 실시예에 따라, 가상 환경 공간에 존재하는 복수의 객체들 간의 관계를 식별하고 이에 기초하여 복수의 객체들 중 하나 이상의 객체를 선택함으로써, 전자 장치는 다른 객체들과 관계가 없는 사소한 객체를 렌더링하지 않을 수 있다.According to an embodiment of the present disclosure, by identifying a relationship between a plurality of objects existing in the virtual environment space and selecting one or more objects from among the plurality of objects based on the identification, the electronic device is a trivial object that has no relationship with other objects. may not be rendered.

도 1은 본 개시의 일 실시예에 따른 개략적인 네트워크 환경을 설명하기 위한 도면이다.
도 2는 본 개시의 일 실시예에 따른 전자 장치와 서버 간의 동작 절차를 나타내는 흐름도이다.
도 3은 본 개시의 일 실시예에 따른 전자 장치들과 서버 간의 동작 절차를 나타내는 흐름도이다.
도 4 내지 도 6은 본 개시의 일 실시예에 따라 서버가 전자 장치의 타입에 기초하여 동작하는 과정을 나타내는 흐름도이다.
도 7a 내지 도 7c는 본 개시의 일 실시예에 따라 서버가 가상 환경 공간에 존재하는 복수의 객체들 간의 관계를 식별하는 과정을 설명하기 위한 도면이다.
도 8a 내지 도 8f는 본 개시의 일 실시예에 따라 서버가 전자 장치의 타입, 사용자의 주변 환경 공간에 관한 정보 및 복수의 객체들 간의 관계에 기초하여, 가상 환경 공간에 존재하는 복수의 객체들 중 하나 이상의 객체를 선택하는 과정을 설명하기 위한 도면이다.
도 9 내지 도 10은 본 개시의 일 실시예에 따라 사용자의 주변 환경 공간이 변화된 경우, 전자 장치들과 서버 간의 동작 절차를 나타내는 흐름도이다.
도 11은 서버와 전자 장치 간의 동작 절차를 개략적으로 설명하기 위한 도면이다.
도 12a 내지 도 12e는 본 개시의 일 실시예에 따라, 전자 장치가 서버에 스트리밍 요청 및 사용자 정보를 전송하고, 서버로부터 영상 데이터를 수신하여 렌더링을 수행하는 일 예를 설명하기 위한 도면이다.
1 is a diagram for explaining a schematic network environment according to an embodiment of the present disclosure.
2 is a flowchart illustrating an operation procedure between an electronic device and a server according to an embodiment of the present disclosure.
3 is a flowchart illustrating an operation procedure between electronic devices and a server according to an embodiment of the present disclosure.
4 to 6 are flowcharts illustrating a process in which a server operates based on a type of an electronic device according to an embodiment of the present disclosure.
7A to 7C are diagrams for explaining a process in which a server identifies a relationship between a plurality of objects existing in a virtual environment space according to an embodiment of the present disclosure.
8A to 8F are diagrams illustrating a server according to an embodiment of the present disclosure showing a plurality of objects existing in a virtual environment space based on a type of an electronic device, information about a user's surrounding environment space, and relationships between the plurality of objects; It is a diagram for explaining a process of selecting one or more objects among
9 to 10 are flowcharts illustrating an operation procedure between electronic devices and a server when a user's surrounding environment space is changed according to an embodiment of the present disclosure.
11 is a diagram for schematically explaining an operation procedure between a server and an electronic device.
12A to 12E are diagrams for explaining an example in which an electronic device transmits a streaming request and user information to a server, receives image data from the server, and performs rendering, according to an embodiment of the present disclosure.

이하, 본 개시의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings.

아래에서는 실시예를 설명함에 있어서 본 개시가 속하는 기술 분야에 익히 알려져 있고 본 개시와 직접적으로 관련이 없는 기술 내용에 대해서는 설명을 생략한다. 이는 불필요한 설명을 생략함으로써 본 개시의 요지를 흐리지 않고 더욱 명확히 전달하기 위함이다.Hereinafter, in describing the embodiments, descriptions of technical contents that are well known in the technical field to which the present disclosure pertains and are not directly related to the present disclosure will be omitted. This is to more clearly convey the gist of the present disclosure without obscuring the gist of the present disclosure by omitting unnecessary description.

마찬가지 이유로 첨부 도면에 있어서 일부 구성요소는 과장되거나 생략되거나 개략적으로 도시하였다. 또한, 각 구성요소의 크기는 실제 크기를 전적으로 반영하는 것이 아니다. 각 도면에서 동일한 또는 대응하는 구성요소에는 동일한 참조 번호를 부여하였다.For the same reason, some components are exaggerated, omitted, or schematically illustrated in the accompanying drawings. In addition, the size of each component does not fully reflect the actual size. In each figure, the same or corresponding elements are assigned the same reference numerals.

본 개시의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 개시는 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 개시가 완전하도록 하고, 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 본 개시의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 개시는 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.Advantages and features of the present disclosure, and methods of achieving them will become apparent with reference to the embodiments described below in detail in conjunction with the accompanying drawings. However, the present disclosure is not limited to the embodiments disclosed below, but may be implemented in various different forms, and only the present embodiments allow the present disclosure to be complete, and those of ordinary skill in the art to which the present disclosure pertains. It is provided to fully inform the person of the scope of the present disclosure, and the present disclosure is only defined by the scope of the claims. Like reference numerals refer to like elements throughout.

이때, 처리 흐름도 도면들의 각 블록과 흐름도 도면들의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수 있음을 이해할 수 있을 것이다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 흐름도 블록(들)에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 흐름도 블록(들)에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 흐름도 블록(들)에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.At this time, it will be understood that each block of the flowchart diagrams and combinations of the flowchart diagrams may be performed by computer program instructions. These computer program instructions may be embodied in a processor of a general purpose computer, special purpose computer, or other programmable data processing equipment, such that the instructions performed by the processor of the computer or other programmable data processing equipment are not described in the flowchart block(s). It creates a means to perform functions. These computer program instructions may also be stored in a computer-usable or computer-readable memory that may direct a computer or other programmable data processing equipment to implement a function in a particular manner, and thus the computer-usable or computer-readable memory. It is also possible that the instructions stored in the flow chart block(s) produce an article of manufacture containing instruction means for performing the function described in the flowchart block(s). The computer program instructions may also be mounted on a computer or other programmable data processing equipment, such that a series of operational steps are performed on the computer or other programmable data processing equipment to create a computer-executed process to create a computer or other programmable data processing equipment. It is also possible that instructions for performing the processing equipment provide steps for performing the functions described in the flowchart block(s).

또한, 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또한, 몇 가지 대체 실행 예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.Additionally, each block may represent a module, segment, or portion of code that includes one or more executable instructions for executing specified logical function(s). It should also be noted that in some alternative implementations it is also possible for the functions recited in blocks to occur out of order. For example, two blocks shown one after another may be performed substantially simultaneously, or the blocks may sometimes be performed in the reverse order according to a corresponding function.

이 때, 본 실시예에서 사용되는 '~부'라는 용어는 소프트웨어 또는 FPGA또는 ASIC과 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다. 뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다. 또한, 실시예에서 ‘~부’는 하나 이상의 프로세서를 포함할 수 있다.At this time, the term '~ unit' used in this embodiment means software or hardware components such as FPGA or ASIC, and '~ unit' performs certain roles. However, '-part' is not limited to software or hardware. '~' may be configured to reside on an addressable storage medium or may be configured to refresh one or more processors. Accordingly, as an example, '~' indicates components such as software components, object-oriented software components, class components, and task components, and processes, functions, properties, and procedures. , subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays and variables. The functions provided in the components and '~ units' may be combined into a smaller number of components and '~ units' or further separated into additional components and '~ units'. In addition, components and '~ units' may be implemented to play one or more CPUs in a device or secure multimedia card. Also, in an embodiment, '~ part' may include one or more processors.

본 개시에서, 가상 환경(virtual environment)은 증강 현실(augmented reality, AR), 가상 현실(virtual reality, VR), 혼합 현실(mixed reality, MR), 또는 확장 현실(extended reality, XR) 중 적어도 하나를 재현하기 위하여 시각적 경험과 함께 음성을 포함한 감각 정보를 추가하여 인공적으로 만든 합성 환경을 의미한다.In the present disclosure, a virtual environment is at least one of augmented reality (AR), virtual reality (VR), mixed reality (MR), or extended reality (XR). It refers to a synthetic environment created artificially by adding sensory information including voice along with visual experience to reproduce .

본 개시에서, 증강 현실(AR)은 현실 세계의 물리적 환경 공간이나 현실 객체 상에 가상 이미지를 오버레이(overlay)하여 함께 보여주는 것을 의미한다.In the present disclosure, augmented reality (AR) refers to overlaying and displaying a virtual image on a physical environment space or real object of the real world.

본 개시에서, 가상 현실(VR)은 인공적인 기술로 만들어낸 실제와 유사하지만 실제가 아닌 어떤 특정한 환경이나 상황을 의미한다.In the present disclosure, virtual reality (VR) refers to a specific environment or situation that is similar to the real world created by artificial technology but is not real.

본 개시에서, 혼합 현실(MR)은 가상 세계와 현실 세계를 합쳐서 새로운 환경 등 새로운 정보를 보여주는 것을 의미한다.In the present disclosure, mixed reality (MR) means showing new information such as a new environment by combining the virtual world and the real world.

본 개시에서, 확장 현실(XR)은 인공적인 기술로 생성된, 현실 세계와 가상 세계가 결합되어 인간과 기계가 상호 작용할 수 있는 환경이나 상황을 의미하거나, 증강 현실, 가상 현실 또는 혼합 현실 기술을 자유롭게 선택하며 확장된 현실을 창조하는 개념을 의미한다.In the present disclosure, extended reality (XR) refers to an environment or situation in which the real world and the virtual world are combined to allow humans and machines to interact, or augmented reality, virtual reality or mixed reality technology created by artificial technology. It refers to the concept of freely choosing and creating an expanded reality.

본 개시에서, 증강 현실 장치는 증강 현실 서비스를 제공할 수 있는 장치를 의미하며, 가상 현실 장치는 가상 현실 서비스를 제공할 수 있는 장치를 의미한다.In the present disclosure, an augmented reality device refers to a device capable of providing an augmented reality service, and a virtual reality device refers to a device capable of providing a virtual reality service.

이하, 본 개시의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.Hereinafter, embodiments of the present disclosure will be described in detail with reference to the accompanying drawings.

도 1은 본 개시의 일 실시예에 따른 개략적인 네트워크 환경을 설명하기 위한 도면이다.1 is a diagram for explaining a schematic network environment according to an embodiment of the present disclosure.

도 1을 참조하면, 본 개시의 네트워크 환경(100)은 서버(1000), 복수의 전자 장치들(2000, 2100, 2200) 및 네트워크(3000)를 포함할 수 있다. 다만, 네트워크 환경(100)이 포함하는 구성이 이에 제한되는 것은 아니다. 특히, 도 1에는 3개의 전자 장치들(2000, 2100, 2200)이 도시되어 있지만, 네트워크 환경(100)은 1개, 2개 또는 4개 이상의 전자 장치를 포함할 수 있다.Referring to FIG. 1 , the network environment 100 of the present disclosure may include a server 1000 , a plurality of electronic devices 2000 , 2100 , 2200 , and a network 3000 . However, the configuration included in the network environment 100 is not limited thereto. In particular, although three electronic devices 2000 , 2100 , and 2200 are illustrated in FIG. 1 , the network environment 100 may include one, two, or four or more electronic devices.

일 실시예에 따르면, 네트워크 환경(100)에 포함되는 구성요소들 각각은 물리적인 객체(entity) 단위를 의미하거나, 개별적인 기능(function)을 수행할 수 있는 소프트웨어 또는 모듈 단위를 의미할 수 있다.According to an embodiment, each of the components included in the network environment 100 may mean a physical entity unit or a software or module unit capable of performing an individual function.

일 실시예에 따른, 서버(1000)는 증강 현실, 가상 현실, 혼합 현실 또는 확장 현실 중 적어도 하나를 포함하는 가상 환경에 사용자가 몰입(immersed) 하도록 하기 위한, 컨텐츠를 제공하는 서버일 수 있다. 예를 들어, 서버(1000)는 MEC(multi-access edge computing 또는 mobile-edge computing) 서비스를 제공하기 위한 서버(MEC 서버), 클라우드 서버 등을 포함할 수 있다According to an embodiment, the server 1000 may be a server that provides content for a user to be immersed in a virtual environment including at least one of augmented reality, virtual reality, mixed reality, and extended reality. For example, the server 1000 may include a server (MEC server), a cloud server, etc. for providing a multi-access edge computing or mobile-edge computing (MEC) service.

일 실시예에 따르면, 전자 장치(2000, 2100, 2200)는 사용자에 의해 사용되는 장치를 의미할 수 있다. 예를 들어, 전자 장치(2000, 2100, 2200)는 단말(terminal), 사용자 단말(UE, user equipment), 이동국(mobile station), 가입자국(subscriber station), 원격 단말(remote terminal), 무선 단말(wireless terminal), 또는 사용자 장치(user device)를 의미할 수 있다.According to an embodiment, the electronic devices 2000 , 2100 , and 2200 may refer to devices used by a user. For example, the electronic devices 2000 , 2100 , and 2200 may include a terminal, a user equipment (UE), a mobile station, a subscriber station, a remote terminal, and a wireless terminal. (wireless terminal), or may mean a user device (user device).

또한, 전자 장치(2000, 2100, 2200)는 증강 현실, 가상 현실, 혼합 현실 또는 확장 현실 중 적어도 하나를 포함하는 가상 환경에 사용자가 몰입(immersed) 하도록 하기 위한, 컨텐츠를 제공하는 단말일 수 있다.In addition, the electronic devices 2000 , 2100 , and 2200 may be terminals that provide content for a user to be immersed in a virtual environment including at least one of augmented reality, virtual reality, mixed reality, and extended reality. .

즉, 일 실시예에 의하면, 전자 장치(2000, 2100, 2200)는 가상 현실, 증강 현실, 혼합 현실, 또는 확장 현실을 위한 컨텐츠를 제공하는 헤드 마운트 디스플레이(Head Mounted Display, HMD), 가상 현실 헤드셋(virtual reality headset, VRH), 안면부(顔面部)에 착용하는 안경 형상의 증강 현실 안경 장치(augmented reality glasses) 또는 증강 현실 헬멧(augmented reality helmet)일 수 있다.That is, according to an embodiment, the electronic devices 2000 , 2100 , and 2200 may include a head mounted display (HMD) or a virtual reality headset that provides content for virtual reality, augmented reality, mixed reality, or extended reality. It may be a virtual reality headset (VRH), a pair of glasses-shaped augmented reality glasses worn on the face, or an augmented reality helmet.

일 실시예에 따르면, 네트워크(3000)는 전자 장치(2000, 2100, 2200)와의 무선 통신을 위한 채널(channel)을 제공할 수 있다. 예를 들어, 네트워크(3000)는 RAN(radio access network), 기지국(base station), 이노드비(eNB, eNodeB), 송수신 포인트(TRP, transmission/reception point), 또는 5GNB(5th generation NodeB)를 의미할 수 있다.According to an embodiment, the network 3000 may provide a channel for wireless communication with the electronic devices 2000 , 2100 , and 2200 . For example, the network 3000 means a radio access network (RAN), a base station, an inode ratio (eNB, eNodeB), a transmission/reception point (TRP, transmission/reception point), or a 5th generation NodeB (5GNB). can do.

일 실시예에 따르면, 복수의 전자 장치들(2000, 2100, 2200) 각각은 네트워크(3000)를 통해 서버(1000)에게 스트리밍 요청 및 사용자 정보를 전송하고, 서버(1000)로부터 영상 데이터를 수신할 수 있다. 사용자 정보에 기초한, 서버(1000)와 전자 장치(2000, 2100, 2200) 간의 동작에 대한 자세한 설명은 후술하기로 한다.According to an embodiment, each of the plurality of electronic devices 2000 , 2100 , and 2200 transmits a streaming request and user information to the server 1000 through the network 3000 , and receives image data from the server 1000 . can A detailed description of an operation between the server 1000 and the electronic devices 2000, 2100, and 2200 based on user information will be described later.

도 2는 본 개시의 일 실시예에 따른 전자 장치(2000)와 서버(1000) 간의 동작 절차를 나타내는 흐름도이다.2 is a flowchart illustrating an operation procedure between the electronic device 2000 and the server 1000 according to an embodiment of the present disclosure.

도 2는 복수의 전자 장치들(2000, 2100, 2200) 중 하나의 전자 장치(2000)만이 서버(1000)와 동작을 수행하는 것으로 도시하지만, 복수의 전자 장치들(2000, 2100, 2200) 각각이 서버(1000)와 상기 동작을 동시에(simultaneously) 또는 시간차를 두고 수행할 수 있다.2 illustrates that only one electronic device 2000 of the plurality of electronic devices 2000, 2100, and 2200 performs an operation with the server 1000, each of the plurality of electronic devices 2000, 2100, and 2200 The server 1000 and the above operation may be performed simultaneously (simultaneously) or with a time difference.

도 2를 참조하면, S210 단계에서, 전자 장치(2000)는 서버(1000)에게 스트리밍 요청 및 사용자 정보를 전송할 수 있다. 스트리밍 요청은 가상 환경 공간에 관한 정보를 요청하는 것일 수 있다. 또한, 사용자 정보는 전자 장치(2000)를 사용하는 사용자의 환경에 관한 정보를 포함할 수 있다. 예를 들어, 사용자 정보는 전자 장치(2000)의 타입에 관한 정보 또는 사용자의 주변 환경 공간에 관한 정보를 포함할 수 있다. 한편, 사용자의 주변 환경 공간에 관한 정보는 전자 장치(2000)에 의해 획득될 수 있다.Referring to FIG. 2 , in step S210 , the electronic device 2000 may transmit a streaming request and user information to the server 1000 . The streaming request may be a request for information about the virtual environment space. Also, the user information may include information about the environment of the user who uses the electronic device 2000 . For example, the user information may include information about the type of the electronic device 2000 or information about the user's surrounding environment space. Meanwhile, information about the user's surrounding environment space may be acquired by the electronic device 2000 .

S220 단계에서, 서버(1000)는 사용자 정보에 기초하여, 전자 장치(2000)의 타입에 관한 정보 및 사용자의 주변 환경 공간에 관한 정보를 식별할 수 있다. 전자 장치(2000)의 타입에 관한 정보는 전자 장치(2000)가 증강 현실, 가상 현실, 혼합 현실 또는 확장 현실에 관한 서비스 중 어느 서비스를 제공할 수 있는지에 관한 정보일 수 있다.In operation S220 , the server 1000 may identify information about the type of the electronic device 2000 and information about the user's surrounding environment space based on the user information. The information about the type of the electronic device 2000 may be information about which service among the augmented reality, virtual reality, mixed reality, or extended reality service can be provided by the electronic device 2000 .

한편, 사용자의 주변 환경 공간에 관한 정보는 사용자의 주변에 존재하는 하나 이상의 객체(object)에 관한 정보로서 객체의 목록, 객체의 타입(type), 객체의 크기(size), 객체의 위치(position) 및 객체의 회전(rotation) 중 적어도 하나에 관한 정보를 포함할 수 있다. 이때, 하나 이상의 객체는 배경에 대응하는 객체를 포함할 수 있다. 한편, 하나 이상의 객체에 관한 정보는 깊이 맵(depth map), 포인트 클라우드(point cloud), 세그먼트화 마스크(segmentation mask) 또는 카메라 매트릭스(camera matrix) 등으로 표현될 수 있으나, 이에 제한되지 않는다.On the other hand, information about the user's surrounding environment space is information about one or more objects existing around the user. ) and information about at least one of rotation of the object. In this case, the one or more objects may include an object corresponding to the background. Meanwhile, information about one or more objects may be expressed as a depth map, a point cloud, a segmentation mask, or a camera matrix, but is not limited thereto.

일 실시예에 따르면, 서버(1000)는 전자 장치(2000)가 증강 현실 장치임을 식별하는 경우, 사용자의 주변 환경 공간에 관한 정보를 식별할 수 있다. 또한, 서버(1000)는 전자 장치(2000)가 가상 현실 장치임을 식별하는 경우, 사용자의 주변 환경 공간에 관한 정보를 식별하지 않을 수 있으나, 이제 제한되지 않는다.According to an embodiment, when the server 1000 identifies that the electronic device 2000 is an augmented reality device, the server 1000 may identify information about the user's surrounding environment space. Also, when the server 1000 identifies that the electronic device 2000 is a virtual reality device, the server 1000 may not identify information about the user's surrounding environment space, but is not limited thereto.

한편, 도 2에는 서버(1000)가 사용자 정보에 기초하여 사용자의 주변 환경 공간에 관한 정보를 식별하는 것으로 도시되어 있으나, 일 실시예에 따르면, 전자 장치(2000)가 객체의 목록, 객체의 타입, 객체의 크기, 객체의 위치 또는 객체의 회전 중 적어도 하나에 관한 정보를 포함하는 사용자의 주변 환경 공간에 관한 정보를 식별하고 서버(1000)에 식별된 정보를 전송할 수도 있다.Meanwhile, although FIG. 2 illustrates that the server 1000 identifies information about a user's surrounding environment space based on user information, according to an exemplary embodiment, the electronic device 2000 provides a list of objects and types of objects. , the size of the object, the location of the object, or the rotation of the object may identify information about the user's surrounding environment space including information about at least one and transmit the identified information to the server 1000 .

S230 단계에서, 서버(1000)는 가상 환경 공간에 존재하는 복수의 객체들 간의 관계를 식별할 수 있다. 객체들 간의 관계(relationship)는 객체들 간의 견련성(connectivity) 또는 의존성(dependency)이 있음을 나타내는 것으로서, 객체들 간의 인접도, 의미론적 추론(semantic reasoning) 또는 움직임에 기초하여 식별될 수 있다. 이와 관련하여 도 7a 내지 7c을 참조하여 자세히 설명하기로 한다.In step S230 , the server 1000 may identify a relationship between a plurality of objects existing in the virtual environment space. A relationship between objects indicates that there is connectivity or dependency between objects, and may be identified based on proximity, semantic reasoning, or movement between objects. In this regard, it will be described in detail with reference to FIGS. 7A to 7C.

S240 단계에서, 서버(1000)는 전자 장치(2000)의 타입, 사용자의 주변 환경 공간에 관한 정보 및 복수의 객체들 간의 관계에 기초하여, 가상 환경 공간에 존재하는 복수의 객체들 중 하나 이상의 객체를 선택할 수 있다. 이와 관련하여 도 8a 내지 8f를 참조하여 자세히 설명하기로 한다.In operation S240 , the server 1000 determines one or more objects among the plurality of objects existing in the virtual environment space based on the type of the electronic device 2000 , information about the user's surrounding environment space, and relationships between the plurality of objects. can be selected. In this regard, it will be described in detail with reference to FIGS. 8A to 8F.

S250 단계에서, 서버(1000)는 선택된 하나 이상의 객체에 관한 영상 데이터를 생성할 수 있다. 이때, 영상 데이터는 복수의 객체들 간의 관계에 기초하여 선택된 하나 이상의 객체의 목록, 타입, 크기, 위치 및 회전 중 적어도 하나에 관한 정보를 포함할 수 있다.In operation S250 , the server 1000 may generate image data regarding one or more selected objects. In this case, the image data may include information about at least one of a list, type, size, position, and rotation of one or more objects selected based on a relationship between the plurality of objects.

S260 단계에서, 서버(1000)는 생성된 영상 데이터를 전자 장치(2000)에게 전송할 수 있다. 이때, 영상 데이터는 등장방형 이미지(equirectangular image), 입방형 이미지(cubic image) 및 3D(3-Dimensional) 객체 목록 및 위치 정보 등으로 표현될 수 있으나, 이에 제한되지 않는다. In operation S260 , the server 1000 may transmit the generated image data to the electronic device 2000 . In this case, the image data may be expressed as an equirectangular image, a cubic image, and a 3D (3-dimensional) object list and location information, but is not limited thereto.

S270 단계에서, 전자 장치(2000)는 수신한 영상 데이터에 기초하여, 렌더링을 수행할 수 있다.In operation S270 , the electronic device 2000 may perform rendering based on the received image data.

도 3은 본 개시의 일 실시예에 따른 전자 장치들(2000, 2100)과 서버(1000) 간의 동작 절차를 나타내는 흐름도이다. 도 2와 중복되는 동작은 간략하게 설명하기로 한다.3 is a flowchart illustrating an operation procedure between the electronic devices 2000 and 2100 and the server 1000 according to an embodiment of the present disclosure. Operations overlapping those of FIG. 2 will be briefly described.

S310 단계에서, 제1 전자 장치(2000)는 서버(1000)에게 스트리밍 요청 및 사용자 정보를 전송할 수 있다. S315 단계에서, 제2 전자 장치(2100)는 서버(1000)에게 스트리밍 요청 및 사용자 정보를 전송할 수 있다. 사용자 정보는 스트리밍 요청과 별도로 전송될 수 있으나, 이에 제한되지 않고, 사용자 정보는 스트리밍 요청에 포함될 수 있다.In operation S310 , the first electronic device 2000 may transmit a streaming request and user information to the server 1000 . In operation S315 , the second electronic device 2100 may transmit a streaming request and user information to the server 1000 . The user information may be transmitted separately from the streaming request, but is not limited thereto, and the user information may be included in the streaming request.

이때, 사용자 정보는 제1 전자 장치(2000) 또는 제2 전자 장치(2100)를 사용하는 사용자에 대응하는 객체 각각의 크기, 위치 및 회전 중 적어도 하나에 관한 정보를 포함할 수 있다.In this case, the user information may include information about at least one of a size, a position, and a rotation of each object corresponding to the user who uses the first electronic device 2000 or the second electronic device 2100 .

비록 도 3에서는 제1 전자 장치(2000)가 제2 전자 장치(2100)보다 스트리밍 요청 및 사용자 정보를 먼저 전송하는 것으로 도시되어 있지만, 이는 하나의 실시예에 불과하며, 제2 전자 장치(2100)가 제1 전자 장치(2000)보다 스트리밍 요청 및 사용자 정보를 먼저 전송하거나 동시에 전송할 수 있다. 또한, 제2 전자 장치(2100)는 서버(1000)가 S320 동작을 수행하기 이전에 스트리밍 요청 및 사용자 정보를 전송하는 것으로 도시되어 있지만, 이는 하나의 실시예에 불과하며, 제2 전자 장치(2100)는 서버(1000)가 S320 동작을 수행한 이후 어느 순간에도 스트리밍 요청 및 사용자 정보를 전송할 수 있다.Although it is illustrated in FIG. 3 that the first electronic device 2000 transmits the streaming request and user information before the second electronic device 2100 , this is only one embodiment, and the second electronic device 2100 may transmit the streaming request and user information before or simultaneously with the first electronic device 2000 . Also, although it is illustrated that the second electronic device 2100 transmits a streaming request and user information before the server 1000 performs operation S320, this is only one embodiment, and the second electronic device 2100 ) may transmit a streaming request and user information at any moment after the server 1000 performs operation S320.

S320 단계에서, 서버(1000)는 사용자 정보에 기초하여, 제1 또는 제2 전자 장치(2000, 2100)의 타입에 관한 정보 및 사용자의 주변 환경 공간에 관한 정보를 식별할 수 있다.In operation S320 , the server 1000 may identify information about the type of the first or second electronic device 2000 or 2100 and information about the user's surrounding environment space based on the user information.

S325 단계에서, 서버(1000)는 미디어 컨텐츠 또는 사용자의 주변 환경 공간에 관한 정보에 기초하여 가상 환경 공간에 관한 정보를 결정(또는 생성)할 수 있다. 가상 환경 공간에 관한 정보는 가상 환경 공간 내에 존재하는 객체의 목록, 객체의 타입, 객체의 크기, 객체의 위치 및 객체의 회전 중 적어도 하나에 관한 정보를 포함할 수 있다.In operation S325 , the server 1000 may determine (or generate) information about the virtual environment space based on media content or information about the user's surrounding environment space. The information about the virtual environment space may include information about at least one of a list of objects existing in the virtual environment space, a type of an object, a size of an object, a position of an object, and rotation of an object.

서버(1000)가 미디어 컨텐츠에 기초하여 가상 환경 공간에 관한 정보를 결정하는 경우, 서버(1000)는 미디어 컨텐츠 내 존재하는 하나 이상의 객체를 식별하고, 식별한 하나 이상의 객체에 관한 정보를 깊이 맵, 포인트 클라우드, 세그먼트화 마스크 또는 카메라 매트릭스 등으로 표현할 수 있으나, 이에 제한되지 않는다.When the server 1000 determines information about the virtual environment space based on the media content, the server 1000 identifies one or more objects existing in the media content, and maps the information about the identified one or more objects to a depth map, It may be expressed as a point cloud, a segmentation mask, or a camera matrix, but is not limited thereto.

일 실시예에 따르면, 미디어 컨텐츠는 기 생성되어 서버(1000)에 입력되거나 서버(1000)에 존재하던 것으로, 동영상, 라이브-스트림(live-stream) 컨텐츠 또는 가상 현실 영상을 포함할 수 있다. 이때, 가상 현실 영상은 등장방형도법(equirectangular projection) 영상 또는 입방형 투영법(cubic projection) 영상을 의미할 수 있으나, 이에 제한되지 않는다.According to an embodiment, the media content is previously generated and input to the server 1000 or existing in the server 1000 , and may include a moving picture, live-stream content, or a virtual reality image. In this case, the virtual reality image may mean an equirectangular projection image or a cubic projection image, but is not limited thereto.

서버(1000)가 사용자의 주변 환경 공간에 관한 정보에 기초하여 가상 환경 공간에 관한 정보를 결정하는 경우, 일 실시예에 따르면, 서버(1000)는 제1 또는 제2 전자 장치(2000, 2100)로부터 수신한 사용자 정보 중 하나의 사용자 정보를 선택하고 이에 기초하여 가상 환경 공간에 관한 정보를 결정할 수 있다. 또한, 일 실시예에 따르면, 서버(1000)는 제1 또는 제2 전자 장치(2000, 2100)로부터 수신한 사용자 정보 각각에 기초하여, 둘 이상의 가상 환경 공간에 관한 정보를 결정할 수 있다.When the server 1000 determines the information about the virtual environment space based on the information about the user's surrounding environment space, according to an embodiment, the server 1000 is the first or second electronic device 2000 or 2100 . It is possible to select one piece of user information from among the user information received from , and determine information about the virtual environment space based on the selection. Also, according to an embodiment, the server 1000 may determine information about two or more virtual environment spaces based on each of the user information received from the first or second electronic devices 2000 and 2100 .

S330 단계에서, 서버(1000)는 가상 환경 공간에 존재하는 복수의 객체들 간의 관계를 식별할 수 있다.In operation S330 , the server 1000 may identify a relationship between a plurality of objects existing in the virtual environment space.

S340 단계에서, 서버(1000)는 제1 또는 제2 전자 장치(2000, 2100)의 타입, 사용자의 주변 환경 공간 및 복수의 객체들 간의 관계에 기초하여, 복수의 객체들 중 하나 이상의 객체를 선택할 수 있다.In operation S340 , the server 1000 selects one or more objects from among the plurality of objects based on the type of the first or second electronic device 2000 or 2100 , the user's surrounding environment space, and a relationship between the plurality of objects. can

S350 단계에서, 서버(1000)는 선택된 하나 이상의 객체에 관한 영상 데이터를 생성할 수 있다. 이때, 영상 데이터는 제1 또는 제2 전자 장치(2000, 2100)의 사용자에 대응하는 객체에 관한 정보를 포함할 수 있다. 일 실시예에 따르면, 제1 전자 장치(2000)에게 전송될 영상 데이터는 제2 전자 장치(2100)의 사용자에 대응하는 객체에 관한 정보를 포함할 수 있고, 제2 전자 장치(2100)에게 전송될 영상 데이터는 제1 전자 장치(2000)의 사용자에 대응하는 객체에 관한 정보를 포함할 수 있다.In operation S350 , the server 1000 may generate image data regarding one or more selected objects. In this case, the image data may include information about an object corresponding to the user of the first or second electronic device 2000 or 2100 . According to an embodiment, image data to be transmitted to the first electronic device 2000 may include information about an object corresponding to a user of the second electronic device 2100 , and is transmitted to the second electronic device 2100 . The to-be-formed image data may include information about an object corresponding to the user of the first electronic device 2000 .

S360 단계에서, 서버(1000)는 생성된 영상 데이터를 제1 또는 제2 전자 장치(2000, 2100)에게 전송할 수 있다. S370 단계에서, 제1 또는 제2 전자 장치(2000, 2100)는 수신한 영상 데이터에 기초하여, 렌더링을 수행할 수 있다.In operation S360 , the server 1000 may transmit the generated image data to the first or second electronic device 2000 or 2100 . In operation S370 , the first or second electronic device 2000 or 2100 may perform rendering based on the received image data.

도 4 내지 도 6은 본 개시의 일 실시예에 따라 서버(1000)가 전자 장치(2000, 2100, 2200)의 타입에 기초하여 동작하는 과정을 나타내는 흐름도이다. 도 2 및 도 3과 중복되는 동작은 간략하게 설명하기로 한다.4 to 6 are flowcharts illustrating a process in which the server 1000 operates based on the types of the electronic devices 2000 , 2100 , and 2200 according to an embodiment of the present disclosure. Operations overlapping those of FIGS. 2 and 3 will be briefly described.

도 4를 참고하면, S410 단계예서, 서버(1000)는 전자 장치(2000, 2100, 2200)로부터 스트리밍 요청 및 사용자 정보를 수신할 수 있다. S420 단계에서, 서버(1000)는 사용자 정보에 기초하여, 전자 장치(2000, 2100, 2200)의 타입에 관한 정보 및 사용자의 주변 환경 공간에 관한 정보를 식별할 수 있다. S430 단계에서, 서버(1000)는 미디어 컨텐츠 또는 사용자의 주변 환경 공간에 관한 정보에 기초하여 제1 가상 환경 공간에 관한 정보를 결정할 수 있다. S440 단계에서, 서버(1000)는 제1 가상 환경 공간에 존재하는 복수의 객체들 간의 관계를 식별할 수 있다.Referring to FIG. 4 , in step S410 , the server 1000 may receive a streaming request and user information from the electronic devices 2000 , 2100 , and 2200 . In operation S420 , the server 1000 may identify information about the type of the electronic devices 2000 , 2100 , and 2200 and information about the user's surrounding environment space based on the user information. In operation S430 , the server 1000 may determine information about the first virtual environment space based on media content or information about the user's surrounding environment space. In operation S440 , the server 1000 may identify a relationship between a plurality of objects existing in the first virtual environment space.

S450 단계에서, 서버(1000)는 전자 장치(2000, 2100, 2200)의 타입을 식별할 수 있다.In operation S450 , the server 1000 may identify the types of the electronic devices 2000 , 2100 , and 2200 .

도 5a는 S450 단계에서의 식별 결과, 전자 장치(2000, 2100, 2200)가 증강 현실 장치인 경우, 서버(1000)가 복수의 객체들 중 하나 이상의 객체를 선택하는 방법을 나타내는 흐름도이다.5A is a flowchart illustrating a method in which the server 1000 selects one or more objects from among a plurality of objects when the electronic devices 2000 , 2100 , and 2200 are augmented reality devices as a result of identification in step S450 .

S510 단계에서, 서버(1000)는 사용자의 주변 환경 공간에 존재하는 적어도 하나의 객체 및 복수의 객체들 간의 관계에 기초하여, 복수의 객체들 중 하나 이상의 객체를 선택할 수 있다. 사용자의 주변 환경 공간에 존재하는 적어도 하나의 객체에 관한 정보는 전자 장치(2000, 2100, 2200)로부터 수신한 사용자 정보에 기초하여 획득될 수 있다.In operation S510 , the server 1000 may select one or more objects from among the plurality of objects based on at least one object existing in the user's environment space and a relationship between the plurality of objects. Information on at least one object existing in the user's surrounding environment space may be obtained based on user information received from the electronic devices 2000 , 2100 , and 2200 .

도 5b는 S450 단계에서의 식별 결과, 전자 장치(2000, 2100, 2200)가 가상 현실 장치인 경우, 서버(1000)가 복수의 객체들 중 하나 이상의 객체를 선택하는 방법을 나타내는 흐름도이다.5B is a flowchart illustrating a method in which the server 1000 selects one or more objects from among a plurality of objects when the electronic devices 2000 , 2100 , and 2200 are virtual reality devices as a result of identification in step S450 .

S520 단계에서, 서버(1000)는 전자 장치(2000, 2100, 2200)가 디폴트(default) 영상 데이터에 기초하여, 제2 가상 환경 공간을 렌더링했는지 여부를 식별할 수 있다. 일 실시예에 따르면, 디폴트 영상 데이터는 전자 장치(2000, 2100, 2200)가 서버(1000)에게 스트리밍 요청을 전송하기 이전 또는 서버(1000)로부터 영상 데이터를 수신하기 이전에 전자 장치(2000, 2100, 2200)에 존재하던 영상 데이터를 의미할 수 있다. 또한, 일 실시예에 따르면, 디폴트 영상 데이터에 기초하여 생성된 가상 환경 공간에는 아무런 객체가 존재하지 않을 수 있다.In operation S520 , the server 1000 may identify whether the electronic devices 2000 , 2100 , and 2200 have rendered the second virtual environment space based on default image data. According to an embodiment, the default image data is stored in the electronic devices 2000 and 2100 before the electronic devices 2000 , 2100 , and 2200 transmit a streaming request to the server 1000 or before receiving the image data from the server 1000 . , 2200) may mean image data existing in the . Also, according to an embodiment, no object may exist in the virtual environment space created based on the default image data.

S530 단계에서, 서버(1000)는, S520 단계에서의 식별 결과가 No인 경우, 제2 가상 환경 공간이 제1 가상 환경 공간과 동일한지 여부를 식별할 수 있다.In operation S530 , when the identification result in operation S520 is No, the server 1000 may identify whether the second virtual environment space is the same as the first virtual environment space.

일 실시예에 따르면, S520 단계에서의 식별 결과가 No라는 것은 전자 장치(2000, 2100, 2200)가 이전에 서버(1000)로부터 수신한 영상 데이터에 기초하여 제2 가상 환경 공간을 렌더링 했다는 것을 의미할 수 있다. 또한, 이전에 서버(1000)로부터 수신한 영상 데이터는 전자 장치(2000, 2100, 2200)가 서버(1000)로부터 수신한 영상 데이터 중 가장 최근의 영상 데이터를 의미할 수 있다.According to an embodiment, that the identification result in step S520 is No means that the electronic devices 2000 , 2100 , and 2200 have rendered the second virtual environment space based on image data previously received from the server 1000 . can do. Also, the image data previously received from the server 1000 may mean the most recent image data among the image data received by the electronic devices 2000 , 2100 , and 2200 from the server 1000 .

S540 단계에서, 서버(1000)는, S530 단계에서의 식별 결과가 Yes인 경우, 다른 전자 장치의 사용자에 대응하는 객체를 선택할 수 있다. 일 실시예에 따르면, S530 단계에서의 식별 결과가 Yes라는 것은 서버(1000)가 제2 가상 환경 공간에 관한 정보를 기초로 제1 가상 환경 공간에 관한 정보를 결정했다는 것을 의미할 수 있다.In operation S540 , when the identification result in operation S530 is Yes, the server 1000 may select an object corresponding to a user of another electronic device. According to an embodiment, that the identification result in step S530 is Yes may mean that the server 1000 has determined information about the first virtual environment space based on the information about the second virtual environment space.

S550 단계에서, 서버(1000)는, S530 단계에서의 식별 결과가 No인 경우, 제1 가상 환경 공간에 존재하는 복수의 객체들 중 하나 이상의 객체를 제2 가상 환경 공간에 렌더링할지를 결정할 수 있다. 제1 가상 환경 공간에 존재하는 복수의 객체들 중 하나 이상의 객체를 제2 가상 환경 공간에 렌더링한다는 것은 전자 장치가 렌더링한 제2 가상 환경 공간에 이후 과정에서 선택될 하나 이상의 객체를 렌더링하여 추가한다는 것을 의미할 수 있다.In operation S550 , when the identification result in operation S530 is No, the server 1000 may determine whether to render one or more objects among a plurality of objects existing in the first virtual environment space in the second virtual environment space. Rendering one or more objects among the plurality of objects existing in the first virtual environment space in the second virtual environment space means that one or more objects to be selected in a subsequent process are rendered and added to the second virtual environment space rendered by the electronic device. can mean that

일 실시예에 따르면, 서버(1000)는 사용자 입력을 수신하고 이에 기초하여, 제1 가상 환경 공간에 존재하는 복수의 객체들 중 하나 이상의 객체를 제2 가상 환경 공간에 렌더링할지를 결정할 수 있다. 또다른 실시예에 따르면, 서버(1000)는 기 결정된 설정에 기초하여, 제1 가상 환경 공간에 존재하는 복수의 객체들 중 하나 이상의 객체를 제2 가상 환경 공간에 렌더링할지를 결정할 수 있다.According to an embodiment, the server 1000 may receive a user input and determine whether to render one or more objects among a plurality of objects existing in the first virtual environment space in the second virtual environment space based on the received user input. According to another embodiment, the server 1000 may determine whether to render one or more objects among a plurality of objects existing in the first virtual environment space in the second virtual environment space based on a predetermined setting.

S560 단계에서, 서버(1000)는, S520 단계에서의 식별 결과가 Yes이거나, S550 단계에서의 결정 결과가 No인 경우, 제1 가상 환경 공간에 존재하는 모든 객체를 선택할 수 있다. 이때, 제1 가상 환경 공간에 존재하는 모든 객체에는 제1 가상 환경 공간의 배경에 대응하는 객체도 포함될 수 있다.In operation S560, when the identification result in operation S520 is Yes or the determination result in operation S550 is No, the server 1000 may select all objects existing in the first virtual environment space. In this case, all objects existing in the first virtual environment space may include objects corresponding to the background of the first virtual environment space.

S570 단계에서 서버(1000)는, S550 단계에서의 결정 결과가 Yes인 경우, 제2 가상 환경 공간에 관한 정보를 식별할 수 있다. 제2 가상 환경 공간에 관한 정보는 제2 가상 환경 공간에 존재하는 객체의 목록, 객체의 타입, 객체의 크기, 객체의 위치 및 객체의 회전 중 적어도 하나에 관한 정보를 포함할 수 있다.In step S570 , when the determination result in step S550 is Yes, the server 1000 may identify information about the second virtual environment space. The information about the second virtual environment space may include information about at least one of a list of objects existing in the second virtual environment space, a type of an object, a size of an object, a position of an object, and a rotation of the object.

S580 단계에서, 서버(1000)는 제2 가상 환경 공간에 존재하는 적어도 하나의 객체 및 복수의 객체들 간의 관계에 기초하여, 복수의 객체들 중 하나 이상의 객체를 선택할 수 있다.In operation S580 , the server 1000 may select one or more objects from among the plurality of objects based on at least one object existing in the second virtual environment space and a relationship between the plurality of objects.

도 6을 참고하면, S610 단계에서, 서버(1000)는 선택된 하나 이상의 객체에 관한 영상 데이터를 생성할 수 있다. S620 단계에서, 서버(1000)는 생성된 영상 데이터를 전자 장치(2000, 2100, 2200)에게 전송할 수 있다.Referring to FIG. 6 , in step S610 , the server 1000 may generate image data regarding one or more selected objects. In operation S620 , the server 1000 may transmit the generated image data to the electronic devices 2000 , 2100 , and 2200 .

도 7a 내지 도 7c는 본 개시의 일 실시예에 따라 서버(1000)가 가상 환경 공간에 존재하는 복수의 객체들 간의 관계를 식별하는 과정을 설명하기 위한 도면이다.7A to 7C are diagrams for explaining a process in which the server 1000 identifies a relationship between a plurality of objects existing in a virtual environment space according to an embodiment of the present disclosure.

도 7a는 본 개시의 일 실시예에 따라, 가상 환경 공간에 존재하는 복수의 객체들 간의 인접도에 기초하여 관계를 식별하는 과정을 도시한다.7A illustrates a process of identifying a relationship based on a degree of proximity between a plurality of objects existing in a virtual environment space, according to an embodiment of the present disclosure.

도 7a를 참조하면, 가상 환경 공간에 존재하는 복수의 객체들을 식별한 결과로서 세그먼트화 마스크(510)가 도시되어 있다. 일 실시예에 따르면, 가상 환경 공간에 존재하는 사람(712), 술잔(714), 배경(716) 및 테이블(718)이 식별될 수 있다. 가상 환경 공간에 존재하는 복수의 객체들을 식별한 결과로서 세그먼트화 마스크(710)가 도시되어 있지만, 이에 제한되지 않는다. Referring to FIG. 7A , a segmentation mask 510 is illustrated as a result of identifying a plurality of objects existing in the virtual environment space. According to an embodiment, a person 712 , a drinking cup 714 , a background 716 , and a table 718 present in the virtual environment space may be identified. Although the segmentation mask 710 is illustrated as a result of identifying a plurality of objects existing in the virtual environment space, the present invention is not limited thereto.

일 실시예에 따르면, 서버(1000)는 복수의 객체들 간의 접촉 면적 또는 중심 간 거리에 기초하여 관계를 식별할 수 있다. 예를 들어, 제1 객체의 전체 면적 중 제2 객체와 접촉한 면적이 기 설정된 값 이상인 경우, 서버(1000)는 제1 객체와 제2 객체 간의 관계가 존재한다고 판단할 수 있다. 또는, 제1 객체의 중심과 제2 객체의 중심 간 거리가 기 설정된 값 이하일 경우, 서버(1000)는 제1 객체와 제2 객체 간의 관계가 존재한다고 판단할 수 있다.According to an embodiment, the server 1000 may identify a relationship based on a contact area between a plurality of objects or a distance between centers. For example, when the area in contact with the second object among the total area of the first object is equal to or greater than a preset value, the server 1000 may determine that a relationship exists between the first object and the second object. Alternatively, when the distance between the center of the first object and the center of the second object is equal to or less than a preset value, the server 1000 may determine that a relationship between the first object and the second object exists.

예를 들어, 서버(1000)는 술잔(714)의 전체 면적 중 사람(712)과 접촉한 면적이 기 설정된 값 이상이므로, 술잔(714)과 사람(712) 간의 관계가 존재한다고 판단할 수 있다. 또한, 서버(1000)는 사람(712)의 중심과 테이블(718)의 중심 간 거리가 기 설정된 값 이하이므로, 사람(712)과 테이블(718) 간의 관계가 존재한다고 판단할 수 있다.For example, the server 1000 may determine that there is a relationship between the drink cup 714 and the person 712 because the area in contact with the person 712 among the total area of the drink cup 714 is equal to or greater than a preset value. . Also, since the distance between the center of the person 712 and the center of the table 718 is equal to or less than a preset value, the server 1000 may determine that a relationship exists between the person 712 and the table 718 .

서버(1000)가 객체들 간의 관계를 식별한 경우, 서버(1000)는 관계가 존재하는 객체들 간의 위치 관계를 식별할 수 있다. 일 실시예에 따르면, 서버(1000)는 관계가 존재하는 객체들 간의 위치 관계를 식별하고, 이를 벡터로서 나타낼 수 있다. 예를 들어, 서버(1000)는 술잔(714)과 사람(712)의 중심 간의 위치 차이를 벡터(722)로서 나타낼 수 있다. 또한, 서버(1000)는 사람(712)과 테이블(718)의 중심 간의 위치 차이를 벡터(724, 726)로서 나타낼 수 있다. 벡터는 방향을 가지는 물리량으로서 판단의 기준이 되는 객체에 따라 일방향으로 나타날 수 있지만 양방향으로도 나타날 수도 있다. 예를 들어, 술잔(714)을 기준으로 사람(712)과의 위치 차이를 벡터로 나타내는 경우, 벡터(722)의 작용점이 술잔(714)에 위치하고 벡터(722)의 방향이 사람(712)을 향할 수 있다. 한편, 객체들 간의 위치 관계를 나타내는 방법으로서 벡터가 도시되어 있지만, 이는 실시예에 불과할 뿐 이에 제한되지 않는다.When the server 1000 identifies the relationship between the objects, the server 1000 may identify the positional relationship between the objects in which the relationship exists. According to an embodiment, the server 1000 may identify a positional relationship between objects in which a relationship exists, and represent this as a vector. For example, the server 1000 may represent a position difference between the centers of the cup 714 and the person 712 as a vector 722 . In addition, the server 1000 may represent the position difference between the center of the person 712 and the table 718 as vectors 724 and 726 . A vector is a physical quantity having a direction, and may appear in one direction or in both directions depending on an object that is a criterion for judgment. For example, when the position difference with the person 712 with respect to the cup 714 is expressed as a vector, the point of action of the vector 722 is located on the cup 714 and the direction of the vector 722 is the person 712 . can be headed Meanwhile, although a vector is illustrated as a method of indicating a positional relationship between objects, this is only an example and is not limited thereto.

도 7b는 본 개시의 일 실시예에 따라, 가상 환경 공간에 존재하는 복수의 객체들 간의 의미론적 추론(semantic reasoning)에 기초하여 관계를 식별하는 과정을 도시한다.7B illustrates a process of identifying a relationship based on semantic reasoning between a plurality of objects existing in a virtual environment space, according to an embodiment of the present disclosure.

도 7b를 참조하면, YOLO(You Only Look One) 알고리즘을 이용하여 가상 환경 공간에 존재하는 복수의 객체들을 식별한 결과(730)가 도시되어 있다. 일 실시예에 따르면, 가상 환경 공간에 존재하는 소년(732), 포크(734), 아이들(736), 테이블(738) 및 디저트(740)가 식별될 수 있다. YOLO 알고리즘을 이용하여, 가상 환경 공간에 존재하는 복수의 객체들을 식별한 결과가 도시되어 있지만, 이에 제한되지 않는다. 한편, 세그먼트화 마스크(710) 또는 YOLO 알고리즘을 이용하여 식별한 결과(730)는 사용자의 주변 환경 공간 또는 미디어 콘텐츠 내 존재하는 하나 이상의 객체를 식별하는 과정에서 획득될 수 있다.Referring to FIG. 7B , a result 730 of identifying a plurality of objects existing in a virtual environment space using the You Only Look One (YOLO) algorithm is shown. According to an embodiment, the boy 732 , the fork 734 , the children 736 , the table 738 , and the dessert 740 present in the virtual environment space may be identified. A result of identifying a plurality of objects existing in the virtual environment space using the YOLO algorithm is illustrated, but is not limited thereto. Meanwhile, the segmentation mask 710 or the identification result 730 using the YOLO algorithm may be obtained in the process of identifying one or more objects existing in the user's surrounding environment space or media content.

일 실시예에 따르면, 서버(1000)는 제1 객체의 의미와 제2 객체의 의미에 기초하여, 객체 간 수행될 수 있는 행동이나 위치 관계 등을 추론할 수 있는 경우, 제1 객체와 제2 객체 간의 관계가 존재한다고 판단할 수 있다.According to an embodiment, when the server 1000 can infer an action or a positional relationship that can be performed between objects based on the meaning of the first object and the meaning of the second object, the first object and the second object It can be determined that a relationship between objects exists.

도 7b를 참조하면, 예를 들어, 서버(1000)가 소년(732)이 포크(734)를 쥘 수 있다고 추론할 수 있으므로, 서버(1000)는 소년(732)과 포크(734) 간의 관계가 존재한다고 판단할 수 있다. 또한, 서버(1000)가 아이들(736)이 테이블(738)을 둘러 앉을 수 있다고 추론할 수 있으므로, 서버(1000)는 아이들(736)과 테이블(738) 간의 관계가 존재한다고 판단할 수 있다. 서버(1000)가 아이들(736)이 디저트(740)을 먹을 수 있다고 추론할 수 있으므로, 서버(1000)는 아이들(736)과 디저트(740) 간의 관계가 존재한다고 판단할 수 있다.Referring to FIG. 7B , for example, since server 1000 can infer that boy 732 can hold fork 734 , server 1000 determines that the relationship between boy 732 and fork 734 is can be considered to exist. Also, since server 1000 may infer that children 736 may sit around table 738 , server 1000 may determine that a relationship between children 736 and table 738 exists. Since the server 1000 may infer that the children 736 can eat the dessert 740 , the server 1000 may determine that a relationship between the children 736 and the dessert 740 exists.

한편, 도 7a 내지 도 7b는 서버(1000)가 복수의 객체들 간의 인접도 또는 의미론적 추론에 기초하여 관계를 식별하는 실시예를 도시하지만, 이는 일 실시예에 불과하며, 서버(1000)는 다른 요인에 기초하여 복수의 객체들 간의 관계를 식별할 수 있다. 예를 들어, 서버(1000)는 객체의 움직임에 기초하여 관계를 식별할 수 있다. 보다 구체적으로, 서버(1000)는 객체가 서로 다른 시작점에서 동일한 방향 및 속도로 이동하거나 또는 서로 다른 시작점에서 동일한 장소로 이동하는 등의 움직임에 기초하여 관계가 존재한다고 판단할 수 있다.Meanwhile, although FIGS. 7A to 7B show an embodiment in which the server 1000 identifies a relationship based on proximity or semantic inference between a plurality of objects, this is only an embodiment, and the server 1000 A relationship between the plurality of objects may be identified based on other factors. For example, the server 1000 may identify the relationship based on the movement of the object. More specifically, the server 1000 may determine that the relationship exists based on the movement of the object from different starting points in the same direction and speed or from different starting points to the same place.

일 실시예에 따르면, 서버(1000)는 전술한 하나의 요인에 기초하여 객체들 간의 관계를 식별할 수 있지만, 이에 제한되지 않고, 둘 이상의 요인에 기초하여 객체들 간의 관계를 식별할 수도 있다.According to an embodiment, the server 1000 may identify a relationship between objects based on one factor described above, but is not limited thereto, and may identify a relationship between objects based on two or more factors.

도 7c는 본 개시의 일 실시예에 따라, 서버(1000)가 가상 환경 공간에 존재하는 복수의 객체들 간의 관계를 식별한 결과에 대응하는 표(750)를 도시한다.7C illustrates a table 750 corresponding to a result of the server 1000 identifying a relationship between a plurality of objects existing in a virtual environment space, according to an embodiment of the present disclosure.

객체 열(752)은 가상 환경 공간에 존재하는 복수의 객체들에 관한 정보를 포함할 수 있다.The object column 752 may include information about a plurality of objects existing in the virtual environment space.

시간 열(754)은 객체 간의 관계가 식별된 시간에 관한 정보를 포함할 수 있다. 한편, 표(750)는 객체 간의 관계가 식별된 시간을 초(second)를 기준으로 나누어 나타냈지만, 프레임 넘버(frame number)를 기준으로 나눌 수도 있으며, 이에 제한되지 않는다.The time column 754 may include information regarding a time at which a relationship between objects was identified. Meanwhile, although the table 750 shows the time at which the relationship between objects is identified divided based on seconds, it may be divided based on the frame number, but is not limited thereto.

위치 열(756) 및 크기 열(758)은 식별된 객체의 위치 및 크기에 관한 정보를 포함할 수 있다. 일 실시예에 따르면, 식별된 객체의 위치는 객체의 중심의 위치로 표현되고, 객체의 크기는 객체의 면적으로 표현될 수 있으나, 이에 제한되지 않는다.The location column 756 and the size column 758 may include information regarding the location and size of the identified object. According to an embodiment, the position of the identified object may be expressed as the position of the center of the object, and the size of the object may be expressed as the area of the object, but is not limited thereto.

관계 열(760)은 특정 시간에 객체 열(752)의 객체와 관계가 존재한다고 판단된 객체에 관한 정보를 포함할 수 있다. 표(750)에는 특정 시간에 하나의 객체만이 객체 열(752)의 객체와 관계가 존재하는 것으로 도시되어 있지만, 일 실시예에 따라, 특정 시간에 2 이상의 객체가 객체 열(752)의 객체와 관계가 존재하는 것으로 판단될 수 있다.The relationship column 760 may include information about an object determined to have a relationship with the object of the object column 752 at a specific time. Although table 750 shows that only one object has a relationship with an object in object column 752 at a particular time, according to one embodiment, two or more objects at a particular time are objects in object column 752 . It can be judged that a relationship exists with

벡터 열(762)은 관계가 존재한다고 판단된 객체들의 중심 간의 위치 차이에 관한 정보를 포함할 수 있다.The vector column 762 may include information about a position difference between centers of objects for which a relationship is determined to exist.

한편, 표(750)의 항목에 위치 열(756) 및 크기 열(758) 등이 포함되어 있지만, 이는 실시예에 불과할 뿐, 사용자의 주변 환경 공간 또는 미디어 콘텐츠 내 존재하는 하나 이상의 객체를 식별한 결과의 표현 방법에 따라 표(750)의 항목은 달라질 수 있다.Meanwhile, although the items of the table 750 include a location column 756 and a size column 758, etc., this is only an example, and one or more objects existing in the user's surrounding environment space or media content are identified. The items of the table 750 may vary according to a method of expressing the result.

도 8a 내지 도 8f는 본 개시의 일 실시예에 따라 서버(1000)가 전자 장치의 타입, 사용자의 주변 환경 공간에 관한 정보 및 복수의 객체들 간의 관계에 기초하여, 가상 환경 공간에 존재하는 복수의 객체들을 중 하나 이상의 객체를 선택하는 과정을 설명하기 위한 도면이다. 도 7a 내지 도 7c와 중복되는 내용은 간략하게 설명하기로 한다.8A to 8F are diagrams illustrating a server 1000 in a virtual environment space based on a type of an electronic device, information about a user's surrounding environment space, and relationships between a plurality of objects, according to an embodiment of the present disclosure. It is a diagram for explaining a process of selecting one or more objects from among the objects of . The content overlapping with FIGS. 7A to 7C will be briefly described.

도 8a는 본 개시의 일 실시예에 따른, 증강 현실 장치 사용자의 주변 환경 공간을 도시한다. 사용자의 주변 환경 공간에는 테이블(802), 체스판(804), 소파(806) 및 쿠션(808)이 존재할 수 있다.8A illustrates an environment space around a user of an augmented reality device, according to an embodiment of the present disclosure. A table 802 , a chessboard 804 , a sofa 806 , and a cushion 808 may exist in the environment space around the user.

도 8b는 본 개시의 일 실시예에 따라, 서버(1000)가 사용자의 주변 환경 공간에 존재하는 하나 이상의 객체를 식별한 결과에 대응하는 표(820)를 도시한다. 객체 열(822)은 사용자 주변 환경 공간에 존재하는 하나 이상의 객체(802 내지 808)에 관한 정보를 포함할 수 있다. 위치 열(824) 및 크기 열(826)은 식별된 객체의 위치 및 크기에 관한 정보를 포함할 수 있다. 8B illustrates a table 820 corresponding to a result of the server 1000 identifying one or more objects existing in the user's surrounding environment space, according to an embodiment of the present disclosure. The object column 822 may include information about one or more objects 802 to 808 existing in the environment space around the user. The location column 824 and the size column 826 may include information regarding the location and size of the identified object.

도 8c는 본 개시의 일 실시예에 따라, 서버(1000)가 가상 환경 공간에 존재하는 복수의 객체들 간의 관계를 식별한 결과에 대응하는 표(840)를 도시한다. 도 8c의 표(840)는 도 7c의 표(750)와 동일한 식별 결과를 나타낼 수 있다.FIG. 8C illustrates a table 840 corresponding to a result of the server 1000 identifying a relationship between a plurality of objects existing in a virtual environment space, according to an embodiment of the present disclosure. The table 840 of FIG. 8C may indicate the same identification result as the table 750 of FIG. 7C .

도 8d는 본 개시의 일 실시예에 따라, 서버(1000)가 가상 환경 공간에 존재하는 복수의 객체들 간의 관계에 기초하여 하나 이상의 객체를 선택한 결과에 대응하는 표(860)를 도시한다. 표(860)는 도 8b의 표(820)와 비교하여, 시간 열(862), 관련 객체 열(864) 및 벡터 열(866)을 더 포함할 수 있다.FIG. 8D illustrates a table 860 corresponding to a result of the server 1000 selecting one or more objects based on a relationship between a plurality of objects existing in a virtual environment space, according to an embodiment of the present disclosure. Table 860 may further include a time column 862 , an associated object column 864 , and a vector column 866 compared to the table 820 of FIG. 8B .

일 실시예에 따르면, 서버(1000)는 가상 환경 공간에 존재하는 복수의 객체들 중 사용자의 주변 환경 공간에 존재하는 객체에 대응하는 객체를 식별할 수 있다. 예를 들어, 서버(1000)는 가상 환경 공간에 존재하는 복수의 객체들 중 사용자의 주변 환경 공간에 존재하는 테이블(802)에 대응하는 테이블(846)을 식별할 수 있다. 다음으로, 서버(1000)는 표(840)에 기초하여, 식별된 객체와 관계가 있는 객체를 선택하고 관련 객체 열(864)에 입력할 수 있다. 예를 들어, 서버(1000)는 표(840)에 기초하여, 테이블(846)과 관계가 있는 사람(842)를 선택하고 관련 객체 열(864)에 입력할 수 있다. 일 실시예에 따르면, 서버(1000)는 표(840)에 기초하여, 관계가 식별된 시간 및 관계가 있는 객체 간 위치 차이를 나타내는 벡터에 관한 정보를 획득하고, 이를 표(860)의 시간 열(862) 및 벡터 열(866) 각각에 입력할 수 있다. 예를 들어, 서버(1000)는 표(840)에 기초하여, 테이블(846)과 사람(842) 간의 관계가 식별된 시간에 관한 정보인 0:03~0:04와 0:04~0:05를 획득하고, 해당 시간의 테이블(846)과 사람(842) 간의 위치 차이를 나타내는 벡터 {10, 256}와 {10, 258}을 획득할 수 있다. 이후, 서버(1000)는 획득한 시간 및 벡터에 관한 정보를 표(860)의 시간 열(862) 및 벡터 열(866) 각각에 입력할 수 있다.According to an embodiment, the server 1000 may identify an object corresponding to an object existing in the user's surrounding environment space from among a plurality of objects existing in the virtual environment space. For example, the server 1000 may identify the table 846 corresponding to the table 802 existing in the user's surrounding environment space from among the plurality of objects existing in the virtual environment space. Next, the server 1000 may select an object related to the identified object based on the table 840 and input it into the related object column 864 . For example, based on the table 840 , the server 1000 may select a person 842 with a relationship to the table 846 and input it into the related object column 864 . According to an embodiment, the server 1000 obtains information about a vector indicating a time when a relationship is identified and a position difference between objects with a relationship, based on the table 840 , and uses this information as a time column of the table 860 . 862 and vector column 866, respectively. For example, based on the table 840, the server 1000 may provide information about the time at which the relationship between the table 846 and the person 842 was identified 0:03-0:04 and 0:04-0: 05 may be obtained, and vectors {10, 256} and {10, 258} indicating the position difference between the table 846 and the person 842 at the corresponding time may be obtained. Thereafter, the server 1000 may input the obtained time and vector information into the time column 862 and the vector column 866 of the table 860 , respectively.

도 8e는 본 개시의 일 실시예에 따라, 서버(1000)가, 가상 환경 공간에 존재하는 복수의 객체들 간의 관계에 기초하여, 선택된 객체와 관계가 있는 객체를 추가로 선택한 결과에 대응하는 표(880)을 도시한다. 전술한 동작과 중복되는 동작은 간략하게 설명하기로 한다.8E is a table corresponding to a result of the server 1000 additionally selecting an object related to the selected object based on the relationship between a plurality of objects existing in the virtual environment space, according to an embodiment of the present disclosure; 880 is shown. Operations overlapping with the above-described operations will be briefly described.

일 실시예에 따르면, 서버(1000)는 관련 객체 열(864)에 입력된 객체를 객체 열(822)에 추가로 입력할 수 있다. 예를 들어, 서버(1000)는 관련 객체 열(864)에 입력된 사람을 객체 열(822)에 추가로 입력할 수 있다. 다음으로, 서버(1000)는 표(840)에 기초하여, 객체 열(822)에 추가로 입력된 객체의 크기 및 위치를 결정할 수 있다. 예를 들어, 서버(1000)는 테이블(846)과 사람(842)의 위치 차이를 나타내는 벡터에 기초하여, 사람(882)의 위치 및 크기를 결정하고 이를 위치 열(824) 및 객체 열(826)에 입력할 수 있다. 이때, 서버(1000)는 사용자의 주변 환경 공간에 관한 정보에 기초하여, 사람(882)의 위치 및 크기를 조절할 수 있다.According to an embodiment, the server 1000 may additionally input the object input in the related object column 864 into the object column 822 . For example, the server 1000 may additionally input the person input in the related object column 864 into the object column 822 . Next, the server 1000 may determine the size and position of the object additionally input to the object column 822 based on the table 840 . For example, the server 1000 determines the position and size of the person 882 based on a vector representing the difference between the positions of the table 846 and the person 842 , and determines the position and size of the person 882 based on the location column 824 and the object column 826 . ) can be entered. In this case, the server 1000 may adjust the location and size of the person 882 based on information about the user's surrounding environment space.

일 실시예에 따르면, 서버(1000)는 새롭게 추가된 사람(882)에 대해 도 8d에 관하여 서술한 동작을 반복하여 수행할 수 있다. 예를 들어, 서버(1000)는 사람(882)에 대응하는 사람(842)를 식별하고, 사람과 관계가 있는 술잔(844)에 관한 정보를 표(880)에 입력할 수 있다. 이때, 서버(1000)는 판단의 기준이 되는 객체가 사람(882)임을 고려하여, 표(840)의 벡터와 반대 방향의 벡터를 입력할 수 있다.According to an embodiment, the server 1000 may repeatedly perform the operation described with reference to FIG. 8D for the newly added person 882 . For example, the server 1000 may identify the person 842 corresponding to the person 882 , and input information about the drinking cup 844 related to the person into the table 880 . In this case, the server 1000 may input a vector in a direction opposite to the vector of the table 840 in consideration of the person 882 as the object as a criterion for determination.

이후, 서버(1000)는 추가로 입력된 객체와 관계가 있는 객체를 식별하지 못할 때까지 상기 동작들을 반복하여 수행하거나 또는 기 설정된 횟수만큼 상기 동작들을 반복하여 수행할 수 있다.Thereafter, the server 1000 may repeatedly perform the above operations until it cannot identify an object related to the additionally input object, or may repeatedly perform the above operations for a preset number of times.

도 8f는 본 개시의 일 실시예에 따라, 가상 환경 공간에 존재하는 복수의 객체들 중 선택된 객체에 관한 영상 데이터를 렌더링한 결과를 도시한다. 예를 들어, 전자 장치(2000, 2100, 2200)은 선택된 사람(882) 및 술잔(884)이 포함된 영상 데이터를 수신하고 이를 렌더링할 수 있다.8F illustrates a result of rendering image data regarding a selected object from among a plurality of objects existing in a virtual environment space, according to an embodiment of the present disclosure. For example, the electronic devices 2000 , 2100 , and 2200 may receive image data including the selected person 882 and a drink cup 884 and render the image data.

한편, 도 8a 내지 도 8f가 전자 장치(2000, 2100, 2200)가 증강 현실 장치인 경우에 서버(1000)가 동작하는 방법을 도시하지만, 서버(1000)는 전자 장치(2000, 2100, 2200)가 가상 현실 장치인 경우에도 상기 동작들을 수행할 수 있다.Meanwhile, although FIGS. 8A to 8F illustrate a method in which the server 1000 operates when the electronic devices 2000 , 2100 , and 2200 are augmented reality devices, the server 1000 includes the electronic devices 2000 , 2100 , and 2200 . The above operations may be performed even when is a virtual reality device.

도 9 내지 도 10은 본 개시의 일 실시예에 따라 사용자의 주변 환경 공간이 변화한 경우, 전자 장치들(2000, 2100)과 서버(1000) 간의 동작 절차를 나타내는 흐름도이다. 도 2 및 도 3과 중복되는 동작은 간략하게 설명하기로 한다.9 to 10 are flowcharts illustrating an operation procedure between the electronic devices 2000 and 2100 and the server 1000 when a user's surrounding environment space is changed according to an embodiment of the present disclosure. Operations overlapping those of FIGS. 2 and 3 will be briefly described.

도 9는 본 개시의 일 실시예에 따라 서버(1000)가 제1 전자 장치(2000)의 사용자의 주변 환경 공간에 관한 정보에 기초하여 가상 환경 공간에 관한 정보를 결정하지 않은 경우, 제1 전자 장치(2000)와 서버(1000) 간의 동작 절차를 도시한다.9 is a diagram illustrating a case in which the server 1000 does not determine information about a virtual environment space based on information about a user's surrounding environment space of the first electronic device 2000 according to an embodiment of the present disclosure; An operation procedure between the device 2000 and the server 1000 is shown.

S910 단계에서, 제1 전자 장치(2000)는 서버(1000)에게 제2 사용자 정보를 전송할 수 있다. 일 실시예에 따르면, 제2 사용자 정보는 사용자의 변경된 주변 환경 공간에 관한 정보를 포함할 수 있다. 이때, 사용자의 주변 환경 공간이 변화하였다는 것은 사용자의 주변 환경 공간에 존재하는 객체의 목록, 타입, 크기, 위치 또는 회전 중 적어도 하나에 관한 정보가 변경되었다는 것을 의미할 수 있다.In operation S910 , the first electronic device 2000 may transmit second user information to the server 1000 . According to an embodiment, the second user information may include information about the user's changed surrounding environment space. In this case, that the user's surrounding environment space has changed may mean that information about at least one of a list, type, size, position, or rotation of an object existing in the user's surrounding environment space has changed.

S920 단계에서, 서버(1000)는 제2 사용자 정보에 기초하여, 사용자의 변경된 주변 환경 공간에 관한 정보를 식별할 수 있다.In operation S920 , the server 1000 may identify information about the user's changed surrounding environment space based on the second user information.

S930 단계에서, 서버(1000)는 전자 장치의 타입, 사용자의 변경된 주변 환경 공간에 관한 정보 및 복수의 객체들 간의 관계에 기초하여, 복수의 객체들 중 하나 이상의 객체를 선택할 수 있다. In step S930 , the server 1000 may select one or more objects from among the plurality of objects based on the type of the electronic device, information about the user's changed surrounding environment space, and relationships between the plurality of objects.

S940 단계에서, 서버(1000)는 선택된 하나 이상의 객체에 관한 영상 데이터를 생성할 수 있다. 일 실시예에 따라, 영상 데이터에 포함된 하나 이상의 객체의 목록, 타입, 크기, 위치 및 회전 중 적어도 하나에 관한 정보는 사용자의 주변 환경 공간이 변화하기 전의 정보와 같을 수도 또는 다를 수도 있다.In operation S940 , the server 1000 may generate image data regarding one or more selected objects. According to an embodiment, information about at least one of a list, type, size, position, and rotation of one or more objects included in the image data may be the same as or different from information before the user's surrounding environment space is changed.

S950 단계에서, 서버(1000)는 생성된 영상 데이터를 제1 전자 장치(2000)에게 전송할 수 있다. S960 단계에서, 제1 전자 장치(2000)는 수신한 영상 데이터에 기초하여, 렌더링을 수행할 수 있다.In operation S950 , the server 1000 may transmit the generated image data to the first electronic device 2000 . In operation S960, the first electronic device 2000 may perform rendering based on the received image data.

도 10은 본 개시의 일 실시예에 따라 서버(1000)가 제1 전자 장치(2000)의 사용자의 주변 환경 공간에 관한 정보에 기초하여 가상 환경 공간에 관한 정보를 결정한 경우, 제1 및 제2 전자 장치(2000, 2100)와 서버(1000) 간의 동작 절차를 도시한다.10 is a diagram illustrating first and second cases when the server 1000 determines information about a virtual environment space based on information about a user's surrounding environment space of the first electronic device 2000 according to an embodiment of the present disclosure; An operation procedure between the electronic devices 2000 and 2100 and the server 1000 is illustrated.

S1010 단계에서, 제1 전자 장치(2000)는 서버(1000)에게 제2 사용자 정보를 전송할 수 있다. 일 실시예에 따르면, 제2 사용자 정보는 사용자의 변경된 주변 환경 공간에 관한 정보를 포함할 수 있다.In step S1010 , the first electronic device 2000 may transmit second user information to the server 1000 . According to an embodiment, the second user information may include information about the user's changed surrounding environment space.

S1020 단계에서, 서버(1000)는 제2 사용자 정보에 기초하여, 사용자의 변경된 주변 환경 공간에 관한 정보를 식별할 수 있다.In step S1020 , the server 1000 may identify information about the user's changed surrounding environment space based on the second user information.

S1025 단계에서, 서버(1000)는 사용자의 변경된 주변 환경 공간에 관한 정보에 기초하여, 제2 가상 환경 공간에 관한 정보를 결정할 수 있다.In step S1025 , the server 1000 may determine information about the second virtual environment space based on the user's changed information about the surrounding environment space.

S1030 단계에서, 서버(1000)는 제2 가상 환경 공간에 존재하는 제2 복수의 객체들 간의 관계를 식별할 수 있다. 제2 복수의 객체들 간의 관계는 사용자의 주변 환경 공간이 변화하기 전의 복수의 객체들 간의 관계와 같을 수도 또는 다를 수도 있다.In operation S1030 , the server 1000 may identify a relationship between a plurality of second objects existing in the second virtual environment space. The relationship between the second plurality of objects may be the same as or different from the relationship between the plurality of objects before the user's surrounding environment space is changed.

S1040 단계에서, 서버(1000)는 전자 장치의 타입, 사용자의 주변 환경 공간에 관한 정보 및 제2 복수의 객체들 간의 관계에 기초하여, 복수의 객체들 중 하나 이상의 객체를 선택할 수 있다.In operation S1040 , the server 1000 may select one or more objects from among the plurality of objects based on the type of the electronic device, the information about the user's surrounding environment and space, and the relationship between the second plurality of objects.

S1050 단계에서, 서버(1000)는 선택된 하나 이상의 객체에 관한 영상 데이터를 생성할 수 있다. In operation S1050 , the server 1000 may generate image data regarding one or more selected objects.

S1060 단계에서, 서버(1000)는 생성된 영상 데이터를 제1 또는 제2 전자 장치(2000, 2100)에게 전송할 수 있다. S1070 단계에서, 제1 또는 제2 전자 장치(2000, 2100)는 수신한 영상 데이터에 기초하여, 렌더링을 수행할 수 있다. 일 실시예에 따라, 서버(1000)는 제2 사용자 정보를 전송한 제1 전자 장치(2000)에게는 생성된 영상 데이터를 전송하지 않을 수 있다.In operation S1060 , the server 1000 may transmit the generated image data to the first or second electronic device 2000 or 2100 . In operation S1070 , the first or second electronic device 2000 or 2100 may perform rendering based on the received image data. According to an embodiment, the server 1000 may not transmit the generated image data to the first electronic device 2000 that has transmitted the second user information.

도 11은 서버(1000)와 전자 장치(2000) 간의 동작 절차를 개략적으로 설명하기 위한 도면이다.11 is a diagram schematically illustrating an operation procedure between the server 1000 and the electronic device 2000 .

일 실시예에 따르면, 서버(1000)는 네트워크 인터페이스(1110), 프로세서(1120) 및 메모리(1130)를 포함할 수 있다. 그러나, 서버(1000)의 구성은 전술한 바에 한정되지 않고, 더 많은 구성을 포함하거나 적은 구성을 포함할 수 있다.According to an embodiment, the server 1000 may include a network interface 1110 , a processor 1120 , and a memory 1130 . However, the configuration of the server 1000 is not limited to the above, and may include more or fewer configurations.

서버(1000)는 네트워크 인터페이스(1110)를 이용하여 전자 장치(2000)로부터 스트리밍 요청 및 사용자 정보(1142)를 수신하고, 선택된 하나 이상의 객체에 관한 영상 데이터(1144)를 전자 장치(2000)에게 전송할 수 있다.The server 1000 receives a streaming request and user information 1142 from the electronic device 2000 using the network interface 1110 , and transmits image data 1144 regarding one or more selected objects to the electronic device 2000 . can

일 실시예에 따르면, 프로세서(1120)는 메모리(1130) 내 하나 이상의 인스트럭션을 실행함으로써 서버(1000)의 전반적인 동작을 제어할 수 있다. According to an embodiment, the processor 1120 may control the overall operation of the server 1000 by executing one or more instructions in the memory 1130 .

예를 들어, 프로세서(1120)는 전자 장치(2000)로부터 수신한 사용자 정보에 기초하여, 사용자의 주변 환경 공간에 존재하는 하나 이상의 객체를 식별할 수 있다. 또한, 프로세서(1120)는 미디어 컨텐츠 내 존재하는 하나 이상의 객체를 식별할 수 있다. For example, the processor 1120 may identify one or more objects existing in the environment space around the user based on user information received from the electronic device 2000 . Also, the processor 1120 may identify one or more objects existing in the media content.

프로세서(1120)는 미디어 컨텐츠 또는 사용자의 주변 환경 공간에 관한 정보에 기초하여 가상 환경 공간에 관한 정보를 결정할 수 있다. 또한, 프로세서(1120)는 가상 환경 공간에 존재하는 복수의 객체들 간의 관계를 식별할 수 있다.The processor 1120 may determine information about the virtual environment space based on media content or information about the user's surrounding environment space. Also, the processor 1120 may identify a relationship between a plurality of objects existing in the virtual environment space.

프로세서(1120)는 전자 장치(2000)의 타입, 사용자의 주변 환경 공간 및 복수의 객체들 간의 관계에 기초하여, 복수의 객체들 중 하나 이상의 객체를 선택할 수 있다. 또한, 프로세서(1120)는 선택된 하나 이상의 객체에 관한 영상 데이터를 생성할 수 있다.The processor 1120 may select one or more objects from among the plurality of objects based on the type of the electronic device 2000 , the user's surrounding environment space, and a relationship between the plurality of objects. Also, the processor 1120 may generate image data regarding one or more selected objects.

프로세서(1120)는 생성된 영상 데이터(1144)를 전자 장치(2000)에게 전송할 수 있다.The processor 1120 may transmit the generated image data 1144 to the electronic device 2000 .

프로세서(1120)의 상기 동작들과 관련하여, 도 2 및 도 3을 참조하여 전술한 바 있으므로, 자세한 내용은 생략하겠다.With respect to the operations of the processor 1120, since it has been described above with reference to FIGS. 2 and 3, the detailed description will be omitted.

일 실시예에 따르면, 메모리(1130)는 서버(1000)가 사용자의 주변 환경 공간 또는 미디어 컨텐츠에 존재하는 하나 이상의 객체를 식별하기 위한 인스트럭션들을 저장하는 객체 식별 모듈(1132)을 포함할 수 있다.According to an embodiment, the memory 1130 may include an object identification module 1132 that stores instructions for the server 1000 to identify one or more objects existing in the user's surrounding environment space or media content.

메모리(1130)는 서버(1000)가 미디어 컨텐츠 또는 사용자의 주변 환경 공간에 관한 정보에 기초하여 가상 환경 공간에 관한 정보를 결정하기 위한 인스트럭션들을 저장하는 가상 환경 공간 관리 모듈(1134)을 포함할 수 있다. 이때, 가상 환경 공간 관리 모듈(1134)은 가상 환경 공간에 관한 정보를 결정하고 가상 환경 공간에 존재하는 객체들에 관한 정보를 관리하기 위한 모듈로서, 3D 게임 엔진 또는 3D 시뮬레이션 모듈을 의미할 수 있다.The memory 1130 may include a virtual environment space management module 1134 that stores instructions for the server 1000 to determine information about the virtual environment space based on media content or information about the user's surrounding environment space. have. In this case, the virtual environment space management module 1134 is a module for determining information about the virtual environment space and managing information about objects existing in the virtual environment space, and may mean a 3D game engine or a 3D simulation module. .

메모리(1130)는 서버(1000)가 가상 환경 공간에 존재하는 복수의 객체들 간의 관계를 식별하기 위한 인스트럭션들을 저장하는 관계 식별 모듈(1136)을 포함할 수 있다. 또한, 메모리(1130)는 서버(1000)가 전자 장치(2000)의 타입, 사용자의 주변 환경 공간에 관한 정보 및 복수의 객체들 간의 관계에 기초하여, 복수의 객체들 중 하나 이상의 객체를 선택하기 위한 인스트럭션들을 저장하는 객체 선택 모듈(1138)을 포함할 수 있다. The memory 1130 may include a relationship identification module 1136 in which the server 1000 stores instructions for identifying a relationship between a plurality of objects existing in the virtual environment space. Also, the memory 1130 allows the server 1000 to select one or more objects from among the plurality of objects based on the type of the electronic device 2000, information about the user's surrounding environment space, and relationships between the plurality of objects. and an object selection module 1138 for storing instructions for

메모리(1130)는 서버(1000)가 선택된 하나 이상의 객체에 관한 영상 데이터를 생성하기 위한 인스트럭션들을 저장하는 장면 구성 모듈(scene composition module, 1140)을 포함할 수 있으나, 이에 한정되는 것은 아니다.The memory 1130 may include a scene composition module 1140 that stores instructions for generating image data related to one or more objects selected by the server 1000, but is not limited thereto.

일 실시예에 따르면, 전자 장치(2000)는 네트워크 인터페이스(1150), 센싱 모듈(1160), 프로세서(1170) 및 메모리(1180)를 포함할 수 있다. 그러나, 전자 장치(2000)의 구성은 전술한 바에 한정되지 않고, 더 많은 구성을 포함하거나 적은 구성을 포함할 수 있다.According to an embodiment, the electronic device 2000 may include a network interface 1150 , a sensing module 1160 , a processor 1170 , and a memory 1180 . However, the configuration of the electronic device 2000 is not limited to the above, and may include more or fewer configurations.

전자 장치(2000)는 네트워크 인터페이스(1150)를 이용하여 서버(1000)에게 스트리밍 요청 및 사용자 정보(1142)를 전송하고, 선택된 하나 이상의 객체 관한 영상 데이터(1144)를 서버(1000)로부터 수신할 수 있다.The electronic device 2000 may transmit a streaming request and user information 1142 to the server 1000 using the network interface 1150 , and may receive image data 1144 related to one or more selected objects from the server 1000 . have.

전자 장치(2000)는 센싱 모듈(1160)을 이용하여, 사용자의 주변 환경 공간에 관한 정보를 획득할 수 있다. 또한, 전자 장치(2000)는 센싱 모듈(1160)을 이용하여, 제1 가상 환경 공간에 존재하는 복수의 객체들 중 하나 이상의 객체를 제2 가상 환경 공간에 렌더링할지 여부에 관한 사용자 입력을 획득할 수 있다.The electronic device 2000 may use the sensing module 1160 to obtain information about the user's surrounding environment space. Also, the electronic device 2000 may use the sensing module 1160 to obtain a user input regarding whether to render one or more objects among a plurality of objects existing in the first virtual environment space in the second virtual environment space. can

일 실시예에 따르면, 프로세서(1170)는 메모리(1180) 내 하나 이상의 인스트럭션을 실행함으로써 전자 장치(2000)의 전반적인 동작을 제어한다. 예를 들어, 프로세서(1170)는 메모리(1180)에 저장된 하나 이상의 인스트럭션을 실행함으로써, 센싱 모듈(1160), 네트워크 인터페이스(1150) 등을 제어할 수 있다.According to an embodiment, the processor 1170 controls the overall operation of the electronic device 2000 by executing one or more instructions in the memory 1180 . For example, the processor 1170 may control the sensing module 1160 , the network interface 1150 , and the like by executing one or more instructions stored in the memory 1180 .

일 실시예에 따르면, 메모리(1180)는 서버(1000)로부터 수신한 영상 데이터(1144)에 기초하여 렌더링을 수행하기 위한 인스트럭션들을 저장하는 렌더링 모듈(1182)을 포함할 수 있으나, 이에 한정되는 것은 아니다.According to an embodiment, the memory 1180 may include a rendering module 1182 that stores instructions for performing rendering based on the image data 1144 received from the server 1000, but is limited thereto. not.

도 12a 내지 도 12e는 본 개시의 일 실시예에 따라, 전자 장치(2000, 2100, 2200)가 서버(1000)에게 스트리밍 요청 및 사용자 정보를 전송하고, 서버(1000)로부터 영상 데이터를 수신하여 렌더링을 수행하는 일 예를 설명하기 위한 도면이다.12A to 12E show that the electronic devices 2000 , 2100 , and 2200 transmit a streaming request and user information to the server 1000 , and receive image data from the server 1000 to render them, according to an embodiment of the present disclosure. It is a diagram for explaining an example of performing the

도 12a를 참조하면, 일 실시예에 따라 제1 및 제2 전자 장치(2000, 2100)는 증강 현실 장치일 수 있고, 제3 전자 장치(2200)는 가상 현실 전자 장치일 수 있다. 일 실시예에 따르면, 제1 전자 장치(2000)의 사용자의 주변 환경 공간(빈 사무실)에는 테이블(1202)만이 존재할 수 있다. 또한, 제2 전자 장치(2100)의 사용자의 주변 환경 공간(회의실)에는 테이블(1212), 노트북(1214), 방석(1216) 및 의자(1218)가 존재할 수 있다. 제3 전자 장치(2200)는 디폴트 영상 데이터에 기초하여 제2 가상 환경 공간에 관한 정보를 결정할 수 있다. 이는 제3 전자 장치가 렌더링한 제2 가상 환경 공간에 아무런 객체가 존재하지 않다는 것을 의미할 수 있다. 그러나, 이는 일 실시예에 불과하며, 제3 전자 장치(2200)는 이전에 수신한 영상 데이터에 기초하여 하나 이상의 객체가 존재하는 제2 가상 환경 공간을 렌더링할 수 있다.Referring to FIG. 12A , according to an embodiment, the first and second electronic devices 2000 and 2100 may be augmented reality devices, and the third electronic device 2200 may be virtual reality electronic devices. According to an embodiment, only the table 1202 may exist in the environment space (empty office) of the user of the first electronic device 2000 . In addition, a table 1212 , a laptop computer 1214 , a cushion 1216 , and a chair 1218 may exist in an environment space (a conference room) around the user of the second electronic device 2100 . The third electronic device 2200 may determine information about the second virtual environment space based on the default image data. This may mean that no object exists in the second virtual environment space rendered by the third electronic device. However, this is only an example, and the third electronic device 2200 may render a second virtual environment space in which one or more objects exist based on previously received image data.

일 실시예에 따르면, 전자 장치(2000, 2100, 2200)는 서버(1000)에게 스트리밍 요청 및 제1 사용자 정보를 전송할 수 있다. 제1 사용자 정보는 전자 장치(2000, 2100, 2200)의 타입에 관한 정보 또는 사용자의 주변 환경 공간에 관한 정보 등을 포함할 수 있다. 예를 들어, 제1 전자 장치(2000)가 전송한 제1 사용자 정보는 제1 전자 장치(2000)가 증강 현실 장치임을 나타내는 정보 및 사용자의 주변 환경 공간(사무실)에 관한 정보 등을 포함할 수 있다. 또한, 제2 전자 장치(2100)가 전송한 제1 사용자 정보는 제2 전자 장치(2100)가 증강 현실 장치임을 나타내는 정보 및 사용자의 주변 환경 공간(회의실)에 관한 정보 등을 포함할 수 있다. 제3 전자 장치(2200)가 전송한 제1 사용자 정보는 제3 전자 장치(2200)가 가상 현실 장치임을 나타내는 정보 및 제3 전자 장치(2200)가 디폴트 영상 데이터에 기초하여 제2 가상 환경 공간을 렌더링했는지 여부에 대한 정보 등을 포함할 수 있다. 다만, 제1 사용자 정보에 포함되는 정보는 이에 제한되지 않는다.According to an embodiment, the electronic devices 2000 , 2100 , and 2200 may transmit a streaming request and first user information to the server 1000 . The first user information may include information about the type of the electronic device 2000 , 2100 , or 2200 or information about the user's surrounding environment space. For example, the first user information transmitted by the first electronic device 2000 may include information indicating that the first electronic device 2000 is an augmented reality device and information about a user's surrounding environment space (office). have. Also, the first user information transmitted by the second electronic device 2100 may include information indicating that the second electronic device 2100 is an augmented reality device and information about a user's surrounding environment space (conference room). The first user information transmitted by the third electronic device 2200 is information indicating that the third electronic device 2200 is a virtual reality device and the third electronic device 2200 creates a second virtual environment space based on default image data. It may include information on whether or not it has been rendered. However, information included in the first user information is not limited thereto.

일 실시예에 따르면, 서버(1000)는 미디어 컨텐츠 또는 사용자의 주변 환경 공간에 관한 정보에 기초하여 제1 가상 환경 공간에 관한 정보를 결정할 수 있다. 예를 들어, 서버(1000)는 제2 전자 장치(2100) 사용자의 주변 환경 공간(회의실)에 관한 정보에 기초하여 제1 가상 환경 공간에 관한 정보를 결정할 수 있다. 또는, 서버(1000)는 제3 전자 장치(2200)가 렌더링한 제2 가상 환경 공간에 관한 정보에 기초하여 제1 가상 환경 공간에 관한 정보를 결정할 수 있다. According to an embodiment, the server 1000 may determine information about the first virtual environment space based on media content or information about the user's surrounding environment space. For example, the server 1000 may determine information about the first virtual environment space based on information about the environment space (conference room) around the user of the second electronic device 2100 . Alternatively, the server 1000 may determine information about the first virtual environment space based on information about the second virtual environment space rendered by the third electronic device 2200 .

일 실시예에 따르면, 서버(1000)는 제1 가상 환경 공간에 존재하는 복수의 객체들 간의 관계를 식별할 수 있다. 예를 들어, 서버(1000)는 제1 가상 환경 공간에 존재하는 객체들 간의 관계를 식별할 수 있다. 보다 구체적으로, 서버(1000)는 테이블(1212)과 노트북(1214) 간의 관계 및 방석(1216)과 의자(1218) 간의 관계가 존재한다고 판단할 수 있다.According to an embodiment, the server 1000 may identify a relationship between a plurality of objects existing in the first virtual environment space. For example, the server 1000 may identify a relationship between objects existing in the first virtual environment space. More specifically, the server 1000 may determine that the relationship between the table 1212 and the notebook 1214 and the relationship between the cushion 1216 and the chair 1218 exist.

일 실시예에 따르면, 서버(1000)는 전자 장치(2000, 2100, 2200)의 타입, 사용자의 주변 환경 공간에 관한 정보 및 복수의 객체들 간의 관계에 기초하여, 가상 환경 공간에 존재하는 복수의 객체들 중 하나 이상의 객체를 선택할 수 있다. 예를 들어, 서버(1000)는 제1 전자 장치(2000)의 타입, 사용자의 주변 환경 공간에 관한 정보 및 복수의 객체들 간의 관계에 기초하여, 제2 및 제3 전자 장치(2100, 2200)의 사용자에 대응하는 객체 및 노트북(1214)을 선택할 수 있다. 또한, 서버(1000)는 제2 전자 장치(2100)의 타입, 사용자의 주변 환경 공간에 관한 정보 및 복수의 객체들 간의 관계에 기초하여, 제1 및 제3 전자 장치(2000, 2200)의 사용자에 대응하는 객체를 선택할 수 있다. 서버(1000)는 제3 전자 장치(2200)의 타입 및 복수의 객체들 간의 관계에 기초하여, 제1 및 제2 전자 장치(2000, 2100)의 사용자에 대응하는 객체를 포함한 모든 객체를 선택할 수 있다.According to an embodiment, the server 1000 may configure a plurality of devices existing in the virtual environment space based on the type of the electronic device 2000 , 2100 , and 2200 , information about the user's surrounding environment space, and relationships between the plurality of objects. One or more of the objects may be selected. For example, the server 1000 may configure the second and third electronic devices 2100 and 2200 based on the type of the first electronic device 2000 , information about the user's surrounding environment space, and relationships between a plurality of objects. You can select an object and notebook 1214 corresponding to the user of . In addition, the server 1000 determines the user of the first and third electronic devices 2000 and 2200 based on the type of the second electronic device 2100 , information about the user's surrounding environment space, and relationships between a plurality of objects. You can select the object corresponding to . The server 1000 may select all objects including objects corresponding to users of the first and second electronic devices 2000 and 2100 based on the type of the third electronic device 2200 and the relationship between the plurality of objects. have.

일 실시예에 따르면, 서버(1000)는 선택된 하나 이상의 객체에 관한 영상 데이터를 생성하고, 생성된 영상 데이터를 전자 장치들(2000, 2100, 2200)에게 전송할 수 있다. According to an embodiment, the server 1000 may generate image data regarding one or more selected objects, and transmit the generated image data to the electronic devices 2000 , 2100 , and 2200 .

도 12b를 참조하면, 전자 장치(2000, 2100, 2200)는 수신한 영상 데이터에 기초하여, 렌더링을 수행할 수 있다. 예를 들어, 제1 전자 장치(2000)는 제2 및 제3 전자 장치(2100, 2200)의 사용자에 대응하는 객체(1280, 1290) 및 노트북(1204)을 렌더링 할 수 있다. 또한, 제2 전자 장치(2100)는 제1 및 제3 전자 장치(2000, 2200)의 사용자에 대응하는 객체(1270, 1290)를 렌더링할 수 있다. 제3 전자 장치(2200)는 제1 및 제2 전자 장치(2000, 2100)의 사용자에 대응하는 객체(1270, 1280), 테이블(1222), 노트북(1224), 방석(1226) 및 의자(1228)를 렌더링할 수 있다. 그에 따라, 전자 장치(2000, 2100, 2200)의 사용자들은 마치 그들이 같은 공간에 존재하는 것과 같은 경험을 할 수 있다. 이때, 렌더링되는 객체들의 크기 및 위치는 사용자의 주변 환경 공간에 관한 정보에 기초하여 변경될 수 있다.Referring to FIG. 12B , the electronic devices 2000 , 2100 , and 2200 may perform rendering based on the received image data. For example, the first electronic device 2000 may render the objects 1280 and 1290 and the notebook 1204 corresponding to users of the second and third electronic devices 2100 and 2200 . Also, the second electronic device 2100 may render objects 1270 and 1290 corresponding to users of the first and third electronic devices 2000 and 2200 . The third electronic device 2200 includes objects 1270 and 1280 corresponding to users of the first and second electronic devices 2000 and 2100 , a table 1222 , a notebook 1224 , a cushion 1226 , and a chair 1228 . ) can be rendered. Accordingly, users of the electronic devices 2000 , 2100 , and 2200 may experience as if they exist in the same space. In this case, the sizes and positions of the rendered objects may be changed based on information about the user's surrounding environment space.

한편, 도 12b 내지 도 12e는, 사용자의 주변 환경에 존재하는 객체와 제1 및 제2 전자 장치(2000, 2100)가 렌더링한 객체를 구별하기 위하여, 제1 및 제2 전자 장치(2000, 2100)가 렌더링한 객체의 윤곽(outline)을 굵게 도시하였다.Meanwhile, FIGS. 12B to 12E show the first and second electronic devices 2000 and 2100 in order to distinguish objects existing in the user's surrounding environment from objects rendered by the first and second electronic devices 2000 and 2100. ) shows the outline of the rendered object in bold.

일 실시예에 따르면, 전자 장치(2000, 2100, 2200)의 사용자의 주변 환경 공간이 변화한 경우, 전자 장치(2000, 2100, 2200)는 서버(1000)에게 변경된 주변 환경 공간에 관한 정보를 포함하는 제2 사용자 정보를 전송할 수 있다.According to an embodiment, when the user's surrounding environment space of the electronic device 2000 , 2100 , or 2200 is changed, the electronic device 2000 , 2100 , 2200 includes information about the changed surrounding environment space to the server 1000 . to transmit second user information.

도 12c를 참조하면, 예를 들어, 제1 전자 장치(2000)의 사용자의 주변 환경 공간에 의자(1206)가 새롭게 추가된 경우, 제1 전자 장치(2000)는 의자(1206)에 관한 정보를 추가로 포함하는 제2 사용자 정보를 전송할 수 있다. 다음으로, 서버(1000)는 변경된 주변 환경 공간에 관한 정보 및 복수의 객체들 간의 관계에 기초하여, 제2 및 제3 전자 장치(2100, 2200)의 사용자에 대응하는 객체, 노트북(1214) 및 방석(1216)을 선택하고 선택한 객체들에 관한 영상 데이터를 제1 전자 장치(2000)에게 전송할 수 있다. 제1 전자 장치는 수신한 데이터에 기초하여 제2 및 제3 전자 장치(2100, 2200)의 사용자에 대응하는 객체(1280, 1290), 노트북(1204) 및 방석(1208)을 렌더링 할 수 있다.Referring to FIG. 12C , for example, when a chair 1206 is newly added to the environment space of the user of the first electronic device 2000 , the first electronic device 2000 displays information about the chair 1206 . The additionally included second user information may be transmitted. Next, on the basis of the changed information on the surrounding environment space and the relationship between the plurality of objects, the server 1000 sets the object corresponding to the user of the second and third electronic devices 2100 and 2200, the notebook 1214 and the The cushion 1216 may be selected and image data regarding the selected objects may be transmitted to the first electronic device 2000 . The first electronic device may render the objects 1280 and 1290, the notebook 1204, and the cushion 1208 corresponding to the users of the second and third electronic devices 2100 and 2200 based on the received data.

도 12d를 참조하면, 예를 들어, 제2 전자 장치(2100)의 사용자의 주변 환경 공간에서 노트북(1214)이 없어진 경우, 제2 전자 장치(2100)는 노트북(1214)에 관한 정보를 포함하지 않는 제2 사용자 정보를 전송할 수 있다. 다음으로, 서버(1000)는 변경된 주변 환경 공간에 관한 정보 및 복수의 객체들 간의 관계에 기초하여, 제2 및 제3 전자 장치(2100, 2200)의 사용자에 대응하는 객체를 선택하고, 선택한 객체에 관한 영상 데이터를 제1 전자 장치(2000)에게 전송할 수 있다. 또한, 서버(1000)는 제1 및 제2 전자 장치(2000, 2100)의 사용자에 대응하는 객체 및 테이블(1212), 방석(1216) 및 의자(1218)를 선택하고, 선택한 객체에 관한 영상 데이터를 제3 전자 장치(2200)에게 전송할 수 있다.Referring to FIG. 12D , for example, when the notebook 1214 is removed from the environment space around the user of the second electronic device 2100, the second electronic device 2100 does not include information about the notebook 1214. It is possible to transmit second user information that is not Next, the server 1000 selects an object corresponding to the user of the second and third electronic devices 2100 and 2200 based on the changed information on the surrounding environment space and the relationship between the plurality of objects, and selects the selected object may transmit image data regarding to the first electronic device 2000 . In addition, the server 1000 selects an object, a table 1212 , a cushion 1216 , and a chair 1218 corresponding to users of the first and second electronic devices 2000 and 2100 , and image data related to the selected object may be transmitted to the third electronic device 2200 .

일 실시예에 따르면, 제1 전자 장치(2000)는 수신한 데이터에 기초하여 제2 및 제3 전자 장치(2100, 2200)의 사용자에 대응하는 객체(1280, 1290)를 렌더링 할 수 있다. 또한, 제3 전자 장치(2200)는 제1 및 제2 전자 장치(2000, 2100)의 사용자에 대응하는 객체(1270, 1280), 테이블(1222), 방석(1226) 및 의자(1228)를 렌더링할 수 있다.According to an embodiment, the first electronic device 2000 may render objects 1280 and 1290 corresponding to users of the second and third electronic devices 2100 and 2200 based on the received data. Also, the third electronic device 2200 renders the objects 1270 and 1280 , the table 1222 , the cushion 1226 , and the chair 1228 corresponding to the users of the first and second electronic devices 2000 and 2100 . can do.

도 12e를 참조하면, 제2 전자 장치(2100)의 사용자의 주변 환경 공간에서 노트북(1214)의 위치 및 회전이 변경된 경우, 제2 전자 장치(2100)는 변경된 노트북(1244)에 관한 정보를 포함하는 제2 사용자 정보를 전송할 수 있다. 다음으로, 서버(1000)는 변경된 노트북(1244)에 관한 영상 데이터를 제1 및 제3 전자 장치(2000, 2200)에게 전송할 수 있다.Referring to FIG. 12E , when the position and rotation of the notebook 1214 in the environment space around the user of the second electronic device 2100 are changed, the second electronic device 2100 includes information about the changed notebook 1244 . to transmit second user information. Next, the server 1000 may transmit the changed image data regarding the notebook 1244 to the first and third electronic devices 2000 and 2200 .

일 실시예에 따르면, 제1 전자 장치(2000)는 변경된 노트북(1244)에 관한 영상 데이터에 기초하여 위치와 회전이 변경된 노트북(1234)을 렌더링할 수 있다. 또한, 제3 전자 장치(2200)는 변경된 노트북(1244)에 관한 영상 데이터에 기초하여 위치와 회전이 변경된 노트북(1254)을 렌더링할 수 있다.According to an embodiment, the first electronic device 2000 may render the notebook 1234 whose position and rotation are changed based on the changed image data about the notebook 1244 . Also, the third electronic device 2200 may render the notebook 1254 whose position and rotation have been changed based on the changed image data about the notebook 1244 .

서버(1000)가 사용자의 주변 환경 공간이 변화할 때마다 전술한 동작을 수행함으로써, 전자 장치(2000, 2100, 2200)의 사용자들은 마치 그들이 같은 공간에 존재하는 것과 같은 경험을 할 수 있다.When the server 1000 performs the above-described operation whenever the user's surrounding environment space changes, users of the electronic devices 2000 , 2100 , and 2200 can experience as if they exist in the same space.

Claims (20)

하나 이상의 인스트럭션들을 저장하는 메모리; 및
상기 하나 이상의 인스트럭션들을 실행하는 적어도 하나의 프로세서를 포함하고,
상기 적어도 하나의 프로세서는 상기 하나 이상의 인스트럭션들을 실행함으로써,
전자 장치로부터 스트리밍 요청 및 제1 사용자 정보를 수신하고,
상기 제1 사용자 정보에 기초하여, 상기 전자 장치의 타입 및 사용자의 주변 환경 공간에 관한 정보를 식별하고,
제1 가상 환경 공간에 존재하는 복수의 객체들 간의 관계를 식별하고,
상기 전자 장치의 타입, 상기 사용자의 주변 환경 공간에 관한 정보 및 상기 복수의 객체들 간의 관계에 기초하여, 상기 복수의 객체들 중 하나 이상의 객체를 선택하고,
상기 선택된 하나 이상의 객체에 관한 영상 데이터를 상기 전자 장치에게 전송하는, 서버
a memory storing one or more instructions; and
at least one processor executing the one or more instructions;
The at least one processor by executing the one or more instructions,
Receive a streaming request and first user information from the electronic device,
based on the first user information, identify information about a type of the electronic device and a user's surrounding environment space,
Identifies a relationship between a plurality of objects existing in the first virtual environment space,
selecting one or more objects from among the plurality of objects based on the type of the electronic device, information about the user's surrounding environment space, and a relationship between the plurality of objects,
A server that transmits image data regarding the selected one or more objects to the electronic device
제1 항에 있어서,
상기 적어도 하나의 프로세서는 미디어 컨텐츠 또는 상기 사용자의 주변 환경 공간에 관한 정보에 기초하여, 상기 제1 가상 환경 공간에 관한 정보를 결정하는 것을 특징으로 하는, 서버.
According to claim 1,
The at least one processor is configured to determine the information about the first virtual environment space based on media content or information about the user's surrounding environment space.
제1 항에 있어서,
상기 복수의 객체들 중 하나 이상의 객체를 선택할 때, 상기 전자 장치가 증강 현실 장치인 경우, 상기 적어도 하나의 프로세서는 상기 사용자의 주변 환경 공간에 존재하는 적어도 하나의 객체 및 상기 복수의 객체들 간의 관계에 기초하여 선택하는 것을 특징으로 하는, 서버.
According to claim 1,
When selecting one or more objects from among the plurality of objects, if the electronic device is an augmented reality device, the at least one processor is configured to control at least one object existing in the environment space surrounding the user and a relationship between the plurality of objects Characterized in selecting based on the, server.
제1 항에 있어서,
상기 복수의 객체들 중 하나 이상의 객체를 선택할 때, 상기 전자 장치가 가상 현실 장치인 경우, 상기 적어도 하나의 프로세서는 상기 전자 장치가 렌더링하는 제2 가상 환경 공간에 관한 정보 및 상기 복수의 객체들 간의 관계에 기초하여 선택하는 것을 특징으로 하는, 서버.
According to claim 1,
When one or more objects are selected from among the plurality of objects, if the electronic device is a virtual reality device, the at least one processor is configured to provide information on a second virtual environment space rendered by the electronic device and information about the space between the plurality of objects. A server, characterized in that the selection is based on a relationship.
제1 항에 있어서,
상기 적어도 하나의 프로세서는 상기 제1 가상 환경 공간에 존재하는 상기 복수의 객체들 간의 관계를 식별할 때, 상기 복수의 객체들 간의 접촉 면적 및 중심 간 거리 중 적어도 하나에 기초하여 상기 복수의 객체들 간의 관계를 식별하는 것을 특징으로 하는, 서버.
According to claim 1,
When the at least one processor identifies a relationship between the plurality of objects existing in the first virtual environment space, the plurality of objects are selected based on at least one of a contact area between the plurality of objects and a center-to-center distance. A server, characterized in that it identifies a relationship between them.
제1 항에 있어서,
상기 적어도 하나의 프로세서는 상기 제1 가상 환경 공간에 존재하는 상기 복수의 객체들 간의 관계를 식별할 때, 의미론적 추론(semantic reasoning)에 기초하여 상기 복수의 객체들 간의 관계를 식별하는 것을 특징으로 하는, 서버.
According to claim 1,
When the at least one processor identifies the relationship between the plurality of objects existing in the first virtual environment space, the at least one processor identifies the relationship between the plurality of objects based on semantic reasoning. that the server.
제1 항에 있어서, 상기 복수의 객체들 간의 관계에 관한 정보는 상기 복수의 객체들 간의 위치(position) 관계에 관한 정보를 포함하는, 서버.The server of claim 1 , wherein the information on the relationship between the plurality of objects includes information on the position relationship between the plurality of objects. 제1 항에 있어서,
상기 적어도 하나의 프로세서는 상기 복수의 객체들 중 하나 이상의 객체를 선택할 때, 상기 사용자의 주변 환경 공간에 존재하는 적어도 하나의 객체 또는 상기 전자 장치가 렌더링하는 제2 가상 환경 공간에 존재하는 적어도 하나의 객체 중 제1 객체를 선택하고,
상기 복수의 객체들 간의 관계에 기초하여, 상기 제1 객체와 관계가 있는 제2 객체를 선택하는 것을 특징으로 하는, 서버.
According to claim 1,
When the at least one processor selects one or more objects from among the plurality of objects, at least one object existing in the environment space surrounding the user or at least one object present in a second virtual environment space rendered by the electronic device Select the first object among the objects,
Based on the relationship between the plurality of objects, the server, characterized in that selecting a second object having a relationship with the first object.
제8 항에 있어서,
상기 적어도 하나의 프로세서는 상기 복수의 객체들 간의 관계에 기초하여, 상기 제2 객체와 관계가 있는 제3 객체를 선택하는 것을 특징으로 하는, 서버.
9. The method of claim 8,
The server, characterized in that the at least one processor selects a third object having a relationship with the second object based on a relationship between the plurality of objects.
제1 항에 있어서,
상기 적어도 하나의 프로세서는 상기 전자 장치로부터 제2 사용자 정보를 수신하고,
상기 제2 사용자 정보는 상기 사용자의 변경된 주변 환경 공간에 관한 정보를 포함하는 것을 특징으로 하는, 서버.
According to claim 1,
The at least one processor receives second user information from the electronic device,
The second user information is characterized in that it includes information about the changed surrounding environment space of the user, the server.
서버에 의해 수행되는 방법에 있어서,
전자 장치로부터 스트리밍 요청 및 제1 사용자 정보를 수신하는 단계;
상기 제1 사용자 정보에 기초하여, 상기 전자 장치의 타입 및 사용자의 주변 환경 공간에 관한 정보를 식별하는 단계;
제1 가상 환경 공간에 존재하는 복수의 객체들 간의 관계를 식별하는 단계;
상기 전자 장치의 타입, 상기 사용자의 주변 환경 공간에 관한 정보 및 상기 복수의 객체들 간의 관계에 기초하여, 상기 복수의 객체들 중 하나 이상의 객체를 선택하는 단계; 및
상기 선택된 하나 이상의 객체에 관한 영상 데이터를 상기 전자 장치에게 전송하는 단계를 포함하는, 방법.
A method performed by a server comprising:
Receiving a streaming request and first user information from the electronic device;
identifying information about a type of the electronic device and a user's surrounding environment space based on the first user information;
identifying a relationship between a plurality of objects existing in a first virtual environment space;
selecting one or more objects from among the plurality of objects based on the type of the electronic device, information about the user's surrounding environment space, and relationships between the plurality of objects; and
and transmitting image data regarding the selected one or more objects to the electronic device.
제11 항에 있어서,
미디어 컨텐츠 또는 상기 사용자의 주변 환경 공간에 관한 정보에 기초하여, 상기 제1 가상 환경 공간에 관한 정보를 결정하는 단계를 더 포함하는, 방법.
12. The method of claim 11,
The method further comprising the step of determining information about the first virtual environment space based on media content or information about the surrounding environment space of the user.
제11 항에 있어서, 상기 복수의 객체들 중 하나 이상의 객체를 선택하는 단계는,
상기 전자 장치가 증강 현실 장치인 경우, 상기 사용자의 주변 환경 공간에 존재하는 적어도 하나의 객체 및 상기 복수의 객체들 간의 관계에 기초하여 선택하는 단계를 포함하는, 방법.
The method of claim 11, wherein selecting one or more objects from among the plurality of objects comprises:
When the electronic device is an augmented reality device, the method comprising the step of selecting based on at least one object existing in a space surrounding the user and a relationship between the plurality of objects.
제11 항에 있어서, 상기 복수의 객체들 중 하나 이상의 객체를 선택하는 단계는,
상기 전자 장치가 가상 현실 장치인 경우, 상기 전자 장치가 렌더링하는 제2 가상 환경 공간에 관한 정보 및 상기 복수의 객체들 간의 관계에 기초하여 선택하는 단계를 포함하는, 방법.
The method of claim 11, wherein selecting one or more objects from among the plurality of objects comprises:
When the electronic device is a virtual reality device, the method comprising: selecting based on information about a second virtual environment space rendered by the electronic device and a relationship between the plurality of objects.
제11 항에 있어서, 상기 제1 가상 환경 공간에 존재하는 복수의 객체들 간의 관계를 식별하는 단계는,
상기 복수의 객체들 간의 접촉 면적 및 중심 간 거리 중 적어도 하나에 기초하여 상기 복수의 객체들 간의 관계를 식별하는 단계를 포함하는, 방법
The method of claim 11 , wherein the step of identifying a relationship between a plurality of objects existing in the first virtual environment space comprises:
identifying a relationship between the plurality of objects based on at least one of a center-to-center distance and a contact area between the plurality of objects;
제11 항에 있어서, 상기 제1 가상 환경 공간에 존재하는 복수의 객체들 간의 관계를 식별하는 단계는,
의미론적 추론에 기초하여 상기 복수의 객체들 간의 관계를 식별하는 단계를 포함하는, 방법.
The method of claim 11 , wherein the step of identifying a relationship between a plurality of objects existing in the first virtual environment space comprises:
and identifying a relationship between the plurality of objects based on semantic inference.
제11 항에 있어서, 상기 복수의 객체들 중 하나 이상의 객체를 선택하는 단계는,
상기 사용자의 주변 환경 공간에 존재하는 적어도 하나의 객체 또는 상기 전자 장치가 렌더링하는 제2 가상 환경 공간에 존재하는 적어도 하나의 객체 중 제1 객체를 선택하는 단계; 및
상기 복수의 객체들 간의 관계에 기초하여, 상기 제1 객체와 관계가 있는 제2 객체를 선택하는 단계를 포함하는, 방법.
The method of claim 11, wherein selecting one or more objects from among the plurality of objects comprises:
selecting a first object from among at least one object existing in an environment space surrounding the user or at least one object existing in a second virtual environment space rendered by the electronic device; and
and selecting a second object having a relationship with the first object based on the relationship between the plurality of objects.
제17 항에 있어서, 상기 복수의 객체들 중 하나 이상의 객체를 선택하는 단계는,
상기 복수의 객체들 간의 관계에 기초하여, 상기 제2 객체와 관계가 있는 제3 객체를 선택하는 단계를 더 포함하는, 방법.
The method of claim 17, wherein selecting one or more objects from among the plurality of objects comprises:
based on the relationship between the plurality of objects, further comprising selecting a third object having a relationship with the second object.
제11 항에 있어서,
상기 전자 장치로부터 제2 사용자 정보를 수신하는 단계를 더 포함하고,
상기 제2 사용자 정보는 상기 사용자의 변경된 주변 환경 공간에 관한 정보를 포함하는, 방법.
12. The method of claim 11,
Further comprising the step of receiving second user information from the electronic device,
The second user information includes information about the changed surrounding environment space of the user.
제11 항 내지 제19 항 중 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
A computer-readable recording medium in which a program for executing the method of any one of claims 11 to 19 in a computer is recorded.
KR1020200186775A 2020-12-29 2020-12-29 Method and apparatus for providing augmented reality, virtual reality, mixed reality and extended reality services KR20220094988A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200186775A KR20220094988A (en) 2020-12-29 2020-12-29 Method and apparatus for providing augmented reality, virtual reality, mixed reality and extended reality services
PCT/KR2021/002037 WO2022145574A1 (en) 2020-12-29 2021-02-17 Device and method for providing augmented reality, virtual reality, mixed reality, and extended reality services

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200186775A KR20220094988A (en) 2020-12-29 2020-12-29 Method and apparatus for providing augmented reality, virtual reality, mixed reality and extended reality services

Publications (1)

Publication Number Publication Date
KR20220094988A true KR20220094988A (en) 2022-07-06

Family

ID=82259468

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200186775A KR20220094988A (en) 2020-12-29 2020-12-29 Method and apparatus for providing augmented reality, virtual reality, mixed reality and extended reality services

Country Status (2)

Country Link
KR (1) KR20220094988A (en)
WO (1) WO2022145574A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230120973A (en) * 2022-02-10 2023-08-17 주식회사 이매지니어스 Method for providing augmented reality service with non-fungible token content

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DK180470B1 (en) * 2017-08-31 2021-05-06 Apple Inc Systems, procedures, and graphical user interfaces for interacting with augmented and virtual reality environments
US11249714B2 (en) * 2017-09-13 2022-02-15 Magical Technologies, Llc Systems and methods of shareable virtual objects and virtual objects as message objects to facilitate communications sessions in an augmented reality environment
US20190324538A1 (en) * 2018-04-20 2019-10-24 Immersion Corporation Haptic-enabled wearable device for generating a haptic effect in an immersive reality environment
US10573019B1 (en) * 2018-09-25 2020-02-25 Ebay Inc. Augmented reality digital content search and sizing techniques
US20200371673A1 (en) * 2019-05-22 2020-11-26 Microsoft Technology Licensing, Llc Adaptive interaction models based on eye gaze gestures

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230120973A (en) * 2022-02-10 2023-08-17 주식회사 이매지니어스 Method for providing augmented reality service with non-fungible token content

Also Published As

Publication number Publication date
WO2022145574A1 (en) 2022-07-07

Similar Documents

Publication Publication Date Title
US11195332B2 (en) Information interaction method based on virtual space scene, computer equipment and computer-readable storage medium
US11477509B2 (en) Immersive cognitive reality system with real time surrounding media
CN110809750B (en) Virtually representing spaces and objects while preserving physical properties
US10917622B2 (en) Information processing apparatus, display control method, and storage medium
EP2394448B1 (en) Method and apparatus for creating virtual graffiti in a mobile virtual and augmented reality system
KR101643678B1 (en) Method and apparatus for recognizing target object at machine side in human-machine interaction
US11483629B2 (en) Providing virtual content based on user context
EP3258698A1 (en) Server, user terminal device, and control method therefor
US20090111434A1 (en) Mobile virtual and augmented reality system
US9509907B2 (en) Information processing device, storage medium having moving image data stored thereon, information processing system, storage medium having moving image reproduction program stored thereon, and moving image reproduction method
KR20150026367A (en) Method for providing services using screen mirroring and apparatus thereof
US11157530B2 (en) Automatic generation of geographic imagery tours
WO2017087251A1 (en) System and method for using augmented reality to visualize network service quality
WO2009029423A1 (en) Mobile virtual and augmented reality system
KR20160108158A (en) Method for synthesizing a 3d backgroud content and device thereof
US10957063B2 (en) Dynamically modifying virtual and augmented reality content to reduce depth conflict between user interface elements and video content
CN106982240A (en) The display methods and device of information
JP2014515153A (en) Content conversion apparatus, content conversion method and storage medium therefor
CN109478342A (en) Image display device and image display system
KR20220094988A (en) Method and apparatus for providing augmented reality, virtual reality, mixed reality and extended reality services
CN113206993A (en) Method for adjusting display screen and display device
CN106598250A (en) VR display method and apparatus, and electronic device
KR102140077B1 (en) Master device, slave device and control method thereof
JP7168969B2 (en) Heat map presentation device and heat map presentation program
US10482671B2 (en) System and method of providing a virtual environment