KR20240049072A - Method for controlling electronic device using spatial information and electronic device using spatial information - Google Patents

Method for controlling electronic device using spatial information and electronic device using spatial information Download PDF

Info

Publication number
KR20240049072A
KR20240049072A KR1020220148977A KR20220148977A KR20240049072A KR 20240049072 A KR20240049072 A KR 20240049072A KR 1020220148977 A KR1020220148977 A KR 1020220148977A KR 20220148977 A KR20220148977 A KR 20220148977A KR 20240049072 A KR20240049072 A KR 20240049072A
Authority
KR
South Korea
Prior art keywords
electronic device
task
information
user
spatial
Prior art date
Application number
KR1020220148977A
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 PCT/KR2023/010655 priority Critical patent/WO2024075949A1/en
Priority to US18/364,901 priority patent/US20240119604A1/en
Publication of KR20240049072A publication Critical patent/KR20240049072A/en

Links

Images

Classifications

    • 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L9/00Details or accessories of suction cleaners, e.g. mechanical means for controlling the suction or for effecting pulsating action; Storing devices specially adapted to suction cleaners or parts thereof; Carrying-vehicles specially adapted for suction cleaners
    • A47L9/28Installation of the electric equipment, e.g. adaptation or attachment to the suction cleaner; Controlling suction cleaners by electric means
    • 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/04817Interaction 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 using icons
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72409User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality by interfacing with external accessories
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mechanical Engineering (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

적어도 하나의 객체를 포함하는 공간에 대한 공간 정보와 전자 장치가 수행하도록 설정된 태스크에 기초하여, 태스크에 대응되는 공간에 위치한 객체 중 태스크에 방해가 되는 객체를 선정하고, 선정된 객체의 속성 정보에 따른 객체 이동 가이드 정보를 전자 장치의 사용자에게 제공하고, 상기 객체 이동 가이드 정보에 대응하는 사용자의 응답에 기초하여, 태스크를 수행하는데 이용되는 이동 경로를 결정하고, 결정된 이동 경로에 따라 전자 장치를 구동하는, 공간 정보를 이용하여 전자 장치를 제어하는 방법 및 공간 정보를 이용하는 전자 장치가 개시된다.Based on spatial information about a space containing at least one object and a task that the electronic device is set to perform, an object that interferes with the task is selected from among objects located in the space corresponding to the task, and the attribute information of the selected object is selected. Provide object movement guide information to the user of the electronic device, determine a movement path used to perform a task based on the user's response corresponding to the object movement guide information, and drive the electronic device according to the determined movement path. A method of controlling an electronic device using spatial information and an electronic device using spatial information are disclosed.

Description

공간 정보를 이용하여 전자 장치를 제어하는 방법 및 공간 정보를 이용하는 전자 장치{METHOD FOR CONTROLLING ELECTRONIC DEVICE USING SPATIAL INFORMATION AND ELECTRONIC DEVICE USING SPATIAL INFORMATION}Method for controlling electronic devices using spatial information and electronic devices using spatial information {METHOD FOR CONTROLLING ELECTRONIC DEVICE USING SPATIAL INFORMATION AND ELECTRONIC DEVICE USING SPATIAL INFORMATION}

공간 정보를 이용하여 전자 장치를 제어하는 방법 및 공간 정보를 이용하는 전자 장치에 관한 것이다.It relates to a method of controlling an electronic device using spatial information and an electronic device using spatial information.

인터넷은 인간이 정보를 생성하고 소비하는 인간 중심의 연결 망에서, 사물 등 분산된 구성 요소들 간에 정보를 주고 받아 처리하는 IoT(Internet of Things, 사물인터넷) 망으로 진화하고 있다. 클라우드 서버 등과의 연결을 통한 빅데이터(Big data) 처리 기술 등이 IoT 기술에 결합된 IoE (Internet of Everything) 기술도 대두되고 있다. IoT는 기존의 IT(information technology)기술과 다양한 산업 간의 융합 및 복합을 통하여 스마트 가전, 스마트홈, 스마트 빌딩, 스마트 시티 등의 분야에 응용될 수 있다.The Internet is evolving from a human-centered network where humans create and consume information to an IoT (Internet of Things) network that exchanges and processes information between distributed components such as objects. IoE (Internet of Everything) technology, which combines IoT technology with big data processing technology through connection to cloud servers, etc., is also emerging. IoT can be applied to fields such as smart home appliances, smart homes, smart buildings, and smart cities through the convergence and combination of existing IT (information technology) technology and various industries.

IoT 환경에서 서로 연결된 전자 장치들 각각은 데이터를 수집, 생성, 분석, 또는 가공하고, 상호 간에 데이터를 서로 공유하여, 각 장치의 태스크에 활용할 수 있다. 최근에는 컴퓨터 비전 분야의 비약적인 발전에 따라, 비전 태스크를 수행하는 신경망 모델을 활용하는 다양한 종류의 전자 장치가 개발되고 있다. 이에 따라, IoT 환경에서 다양한 종류의 전자 장치 간의 연결에 대한 관심이 고조되고 있다.In an IoT environment, each of the electronic devices connected to each other can collect, generate, analyze, or process data, share the data with each other, and utilize it for each device's tasks. Recently, with rapid progress in the field of computer vision, various types of electronic devices that utilize neural network models that perform vision tasks are being developed. Accordingly, interest in connections between various types of electronic devices in the IoT environment is increasing.

본 개시의 일 실시예에 따르면, 공간 정보를 이용하여 전자 장치를 제어하는 방법이 제공된다. 공간 정보를 이용하여 전자 장치를 제어하는 방법은 적어도 하나의 객체를 포함하는 공간에 대한 공간 정보와 전자 장치가 수행하도록 설정된 태스크에 기초하여, 태스크에 대응되는 공간에 위치한 객체 중 태스크에 방해가 되는 객체를 선정하는 단계를 포함한다. 또한, 공간 정보를 이용하여 전자 장치를 제어하는 방법은 선정된 객체의 속성 정보에 따른 객체 이동 가이드 정보를 전자 장치의 사용자에게 제공하는 단계를 포함한다. 또한, 공간 정보를 이용하여 전자 장치를 제어하는 방법은 객체 이동 가이드 정보에 대응하는 사용자의 응답에 기초하여, 상기 태스크를 수행하는데 이용되는 이동 경로를 결정하는 단계를 포함한다. 또한, 공간 정보를 이용하여 전자 장치를 제어하는 방법은 결정된 이동 경로에 따라 전자 장치를 구동하는 단계를 포함한다.According to an embodiment of the present disclosure, a method of controlling an electronic device using spatial information is provided. A method of controlling an electronic device using spatial information is based on spatial information about a space containing at least one object and a task that the electronic device is set to perform, and determines which of the objects located in the space corresponding to the task are interfering with the task. It includes the step of selecting an object. Additionally, a method of controlling an electronic device using spatial information includes providing object movement guide information according to attribute information of a selected object to a user of the electronic device. Additionally, a method of controlling an electronic device using spatial information includes determining a movement path used to perform the task based on a user's response corresponding to object movement guide information. Additionally, a method of controlling an electronic device using spatial information includes driving the electronic device according to a determined movement path.

본 개시의 일 실시예에 따르면, 전술한 방법을 실행시키기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체를 제공할 수 있다.According to one embodiment of the present disclosure, a computer-readable recording medium on which a program for executing the above-described method is recorded can be provided.

본 개시의 일 실시예에 따르면, 공간 정보를 이용하는 전자 장치가 제공된다. 공간 정보를 이용하는 전자 장치는 하나 이상의 인스트럭션을 저장하는 메모리, 메모리에 저장된 하나 이상의 인스트럭션을 실행하는 프로세서, 및 센싱부를 포함한다. 프로세서는 하나 이상의 인스트럭션을 실행함으로써, 상기 센싱부를 통해 획득된 적어도 하나의 객체를 포함하는 공간에 대한 공간 정보와 전자 장치가 수행하도록 설정된 태스크에 기초하여, 태스크에 대응되는 공간에 위치한 객체 중 태스크에 방해가 되는 객체를 선정한다. 또한, 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써, 선정된 객체의 속성 정보에 따른 객체 이동 가이드 정보를 전자 장치의 사용자에게 제공한다. 또한, 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써, 객체 이동 가이드 정보에 대응하는 사용자의 응답에 기초하여, 태스크를 수행하는데 이용되는 이동 경로를 결정한다. 또한, 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써, 결정된 이동 경로를 따라 전자 장치를 구동한다.According to an embodiment of the present disclosure, an electronic device using spatial information is provided. An electronic device that uses spatial information includes a memory that stores one or more instructions, a processor that executes one or more instructions stored in the memory, and a sensing unit. By executing one or more instructions, the processor selects a task among objects located in the space corresponding to the task, based on spatial information about a space containing at least one object obtained through the sensing unit and a task that the electronic device is set to perform. Select objects that are in the way. Additionally, by executing the one or more instructions, the processor provides object movement guide information according to attribute information of the selected object to the user of the electronic device. Additionally, the processor determines a movement path used to perform the task based on the user's response corresponding to the object movement guide information by executing the one or more instructions. Additionally, the processor drives the electronic device along the determined movement path by executing the one or more instructions.

도 1은 전자 장치와 외부 장치들이 서로 연결되는 댁내 IoT 환경을 설명하기 위한 도면이다.
도 2a 및 도 2b는 공간 맵을 설명하기 위한 흐름도이다.
도 3a, 도 3b, 도 3c, 도 3d는 공간 맵을 구성하는 레이어를 활용하는 방식을 설명하기 위한 도면이다.
도 4는 본 개시의 일 실시예에 따른 공간 맵을 획득하는 방법을 설명하기 위한 흐름도이다.
도 5는 본 개시의 일 실시예에 따른 공간 정보를 이용하여 전자 장치를 제어하는 방법을 설명하기 위한 흐름도이다.
도 6은 본 개시의 일 실시예에 따른 태스크에 대응되는 공간에 위치한 객체 중 태스크에 방해가 되는 객체를 선정하는 단계를 설명하기 위한 상세 흐름도이다.
도 7은 본 개시의 일 실시예에 따른 태스크에 방해가 되는 객체로 선정된 객체의 속성 정보에 따른 객체 이동 가이드 정보를 제공하는 단계를 설명하기 위한 상세 흐름도이다.
도 8은 본 개시의 일 실시예에 따른 제1 이동 리퀘스트 프로세스를 설명하기 위한 도면이다.
도 9는 본 개시의 일 실시예에 따른 객체 이동 가이드 정보를 사용자에게 제공하는 예를 설명하기 위한 도면이다.
도 10은 본 개시의 일 실시예에 따른 객체 이동 가이드 정보를 사용자에게 제공하는 다른 예를 설명하기 위한 도면이다.
도 11은 본 개시의 일 실시예에 따른 제2 이동 리퀘스트 프로세스를 설명하기 위한 도면이다.
도 12는 본 개시의 일 실시예에 따른 선정된 객체를 이동시킬 후보 위치들을 선정하는 과정을 설명하기 위한 도면이다.
도 13은 본 개시의 일 실시예에 따른 영상 평가 결과에 따른 객체 이동 가이드 정보를 사용자에게 제공하는 예를 설명하기 위한 도면이다.
도 14는 본 개시의 일 실시예에 따른 태스크를 수행하는데 이용되는 이동 경로를 결정하는 단계를 설명하기 위한 상세 흐름도이다.
도 15 및 도 16은 본 개시의 일 실시예에 따른 공간 정보를 이용하는 전자 장치의 구성을 나타낸 블록도이다.
Figure 1 is a diagram to explain an in-home IoT environment in which electronic devices and external devices are connected to each other.
2A and 2B are flowcharts for explaining a spatial map.
FIGS. 3A, 3B, 3C, and 3D are diagrams for explaining a method of utilizing the layers that make up a spatial map.
Figure 4 is a flowchart illustrating a method of obtaining a spatial map according to an embodiment of the present disclosure.
FIG. 5 is a flowchart illustrating a method of controlling an electronic device using spatial information according to an embodiment of the present disclosure.
FIG. 6 is a detailed flowchart illustrating the step of selecting an object that interferes with a task among objects located in a space corresponding to a task according to an embodiment of the present disclosure.
FIG. 7 is a detailed flowchart illustrating the step of providing object movement guide information according to attribute information of an object selected as an object interfering with a task according to an embodiment of the present disclosure.
FIG. 8 is a diagram for explaining a first move request process according to an embodiment of the present disclosure.
Figure 9 is a diagram for explaining an example of providing object movement guide information to a user according to an embodiment of the present disclosure.
FIG. 10 is a diagram illustrating another example of providing object movement guide information to a user according to an embodiment of the present disclosure.
FIG. 11 is a diagram for explaining a second move request process according to an embodiment of the present disclosure.
Figure 12 is a diagram for explaining a process of selecting candidate locations to move the selected object according to an embodiment of the present disclosure.
FIG. 13 is a diagram illustrating an example of providing object movement guide information to a user according to an image evaluation result according to an embodiment of the present disclosure.
FIG. 14 is a detailed flowchart illustrating the step of determining a movement path used to perform a task according to an embodiment of the present disclosure.
15 and 16 are block diagrams showing the configuration of an electronic device using spatial information according to an embodiment of the present disclosure.

본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 개시에 대해 구체적으로 설명하기로 한다. 본 개시에서, "a, b 또는 c 중 적어도 하나" 표현은 "a", "b", "c", "a 및 b", "a 및 c", "b 및 c", "a, b 및 c 모두", 혹은 그 변형들을 지칭할 수 있다.Terms used in this specification will be briefly described, and the present disclosure will be described in detail. In the present disclosure, the expression “at least one of a, b, or c” refers to “a”, “b”, “c”, “a and b”, “a and c”, “b and c”, “a, b and c", or variations thereof.

본 개시에서 사용되는 용어는 본 개시에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 개시에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.The terms used in this disclosure are general terms that are currently widely used as much as possible while considering the functions in this disclosure, but this may vary depending on the intention or precedent of a person working in the art, the emergence of new technology, etc. In addition, in certain cases, there are terms arbitrarily selected by the applicant, and in this case, the meaning will be described in detail in the relevant description. Therefore, the terms used in this disclosure should be defined based on the meaning of the term and the overall content of this disclosure, rather than simply the name of the term.

단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 명세서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 또한, 본 명세서에서 사용되는 '제1' 또는 '제2' 등과 같이 서수를 포함하는 용어는 다양한 구성 요소들을 설명하는데 사용할 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만 사용된다.Singular expressions may include plural expressions, unless the context clearly indicates otherwise. Terms used herein, including technical or scientific terms, may have the same meaning as generally understood by a person of ordinary skill in the technical field described herein. Additionally, terms including ordinal numbers such as 'first' or 'second' used in this specification may be used to describe various components, but the components should not be limited by the terms. The above terms are used only for the purpose of distinguishing one component from another.

명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에 기재된 "부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.When it is said that a part "includes" a certain element throughout the specification, this means that, unless specifically stated to the contrary, it does not exclude other elements but may further include other elements. Additionally, terms such as “unit” and “module” used in the specification refer to a unit that processes at least one function or operation, which may be implemented as hardware or software, or as a combination of hardware and software.

본 개시에 따른 인공지능과 관련된 기능은 프로세서와 메모리를 통해 동작된다. 프로세서는 하나 또는 복수의 프로세서로 구성될 수 있다. 이때, 하나 또는 복수의 프로세서는 CPU, AP, DSP(Digital Signal Processor) 등과 같은 범용 프로세서, GPU, VPU(Vision Processing Unit)와 같은 그래픽 전용 프로세서 또는 NPU와 같은 인공지능 전용 프로세서일 수 있다. 하나 또는 복수의 프로세서는, 메모리에 저장된 기 정의된 동작 규칙 또는 인공지능 모델에 따라, 입력 데이터를 처리하도록 제어한다. 또는, 하나 또는 복수의 프로세서가 인공지능 전용 프로세서인 경우, 인공지능 전용 프로세서는, 특정 인공지능 모델의 처리에 특화된 하드웨어 구조로 설계될 수 있다.Functions related to artificial intelligence according to the present disclosure are operated through a processor and memory. The processor may consist of one or multiple processors. At this time, one or more processors may be a general-purpose processor such as a CPU, AP, or DSP (Digital Signal Processor), a graphics-specific processor such as a GPU or VPU (Vision Processing Unit), or an artificial intelligence-specific processor such as an NPU. One or more processors control input data to be processed according to predefined operation rules or artificial intelligence models stored in memory. Alternatively, when one or more processors are dedicated artificial intelligence processors, the artificial intelligence dedicated processors may be designed with a hardware structure specialized for processing a specific artificial intelligence model.

기 정의된 동작 규칙 또는 인공지능 모델은 학습을 통해 만들어진 것을 특징으로 한다. 여기서, 학습을 통해 만들어진다는 것은, 기본 인공지능 모델이 학습 알고리즘에 의하여 다수의 학습 데이터들을 이용하여 학습됨으로써, 원하는 특성(또는, 목적)을 수행하도록 설정된 기 정의된 동작 규칙 또는 인공지능 모델이 만들어짐을 의미한다. 이러한 학습은 본 개시에 따른 인공지능이 수행되는 기기 자체에서 이루어질 수도 있고, 별도의 서버 및/또는 시스템을 통해 이루어 질 수도 있다. 학습 알고리즘의 예로는, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)이 있으나, 전술한 예에 한정되지 않는다.Predefined operation rules or artificial intelligence models are characterized by being created through learning. Here, being created through learning means that the basic artificial intelligence model is learned using a large number of learning data by a learning algorithm, thereby creating a predefined operation rule or artificial intelligence model set to perform the desired characteristics (or purpose). It means burden. This learning may be performed on the device itself that performs the artificial intelligence according to the present disclosure, or may be performed through a separate server and/or system. Examples of learning algorithms include supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but are not limited to the examples described above.

인공지능 모델은, 복수의 신경망 레이어들로 구성될 수 있다. 복수의 신경망 레이어들 각각은 복수의 가중치들(weight values)을 갖고 있으며, 이전(previous) 레이어의 연산 결과와 복수의 가중치들 간의 연산을 통해 신경망 연산을 수행한다. 복수의 신경망 레이어들이 갖고 있는 복수의 가중치들은 인공지능 모델의 학습 결과에 의해 최적화될 수 있다. 예를 들어, 학습 과정 동안 인공지능 모델에서 획득한 로스(loss) 값 또는 코스트(cost) 값이 감소 또는 최소화되도록 복수의 가중치들이 갱신될 수 있다. 인공 신경망은 심층 신경망(DNN:Deep Neural Network)를 포함할 수 있으며, 예를 들어, CNN (Convolutional Neural Network), DNN (Deep Neural Network), RNN (Recurrent Neural Network), RBM (Restricted Boltzmann Machine), DBN (Deep Belief Network), BRDNN(Bidirectional Recurrent Deep Neural Network) 또는 심층 Q-네트워크 (Deep Q-Networks) 등이 있으나, 전술한 예에 한정되지 않는다.An artificial intelligence model may be composed of multiple neural network layers. Each of the plurality of neural network layers has a plurality of weight values, and neural network calculation is performed through calculation between the calculation result of the previous layer and the plurality of weights. Multiple weights of multiple neural network layers can be optimized by the learning results of the artificial intelligence model. For example, a plurality of weights may be updated so that loss or cost values obtained from the artificial intelligence model are reduced or minimized during the learning process. Artificial neural networks may include deep neural networks (DNN), for example, Convolutional Neural Network (CNN), Deep Neural Network (DNN), Recurrent Neural Network (RNN), Restricted Boltzmann Machine (RBM), Deep Belief Network (DBN), Bidirectional Recurrent Deep Neural Network (BRDNN), or Deep Q-Networks, etc., but are not limited to the examples described above.

아래에서는 첨부한 도면을 참고하여 본 개시의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. Below, with reference to the attached drawings, embodiments of the present disclosure will be described in detail so that those skilled in the art can easily implement the present invention. However, the present disclosure may be implemented in many different forms and is not limited to the embodiments described herein.

이하 첨부된 도면을 참고하여 본 개시를 상세히 설명하기로 한다.Hereinafter, the present disclosure will be described in detail with reference to the attached drawings.

도 1은 전자 장치(100)와 외부 장치들이 서로 연결되는 댁내 IoT 환경을 설명하기 위한 도면이다.FIG. 1 is a diagram illustrating an in-house IoT environment in which the electronic device 100 and external devices are connected to each other.

본 개시에서 전자 장치(100)는 로봇 청소기인 것을 전제로 설명하나, 사용자의 편의를 위해 구동되는 다양한 종류의 어시스턴트 로봇이나 모바일 장치, AR(Augmented Reality) 기기, VR(Virtual Reality) 기기, 주변 환경을 감지하고 특정 위치 또는 공간에서 소정의 서비스를 제공하는 기기일 수 있다. 전자 장치(100)는 공간을 스캔하고 공간 내의 객체를 검출하기 위한 다양한 종류의 센서와 신경망(Neural Network) 모델을 탑재할 수 있다. 예를 들어, 전자 장치(100)는 카메라와 같은 이미지 센서, LDS(Laser Distance Sensor)와 같은 라이다(LiDAR, Light Detection And Ranging) 센서, ToF(Time of Flight) 센서 중 적어도 하나를 구비할 수 있다. 전자 장치(100)는 DNN(Deep Neural Network), CNN(Convolution Neural Network), RNN(Recurrent Neural Network), BRDNN(Bidirectional Recurrent Deep Neural Network)과 같은 모델을 적어도 하나 탑재할 수 있고, 이들을 조합적으로 이용할 수도 있다.In this disclosure, the electronic device 100 is described on the premise that it is a robot vacuum cleaner, but it can be used in various types of assistant robots or mobile devices, Augmented Reality (AR) devices, Virtual Reality (VR) devices, and surrounding environments operated for the convenience of users. It may be a device that detects and provides a certain service in a specific location or space. The electronic device 100 may be equipped with various types of sensors and neural network models for scanning space and detecting objects within the space. For example, the electronic device 100 may be equipped with at least one of an image sensor such as a camera, a Light Detection And Ranging (LiDAR) sensor such as a Laser Distance Sensor (LDS), and a Time of Flight (ToF) sensor. there is. The electronic device 100 may be equipped with at least one model such as a Deep Neural Network (DNN), a Convolution Neural Network (CNN), a Recurrent Neural Network (RNN), or a Bidirectional Recurrent Deep Neural Network (BRDNN), and can be used in combination. You can also use it.

전자 장치(100)와 서로 연결되는 외부 장치들은 클라우드 서버(200)와 다양한 종류의 IoT 기기들(300-1, 300-2, 300-3)일 수 있다. IoT 기기들은 도 1에 도시된 바와 같이, 버틀러 로봇(300-1), 애완로봇(300-2), 스마트 홈카메라(300-3) 등이 될 수 있으나, 이에 한정되는 것은 아니며, 전자 장치(100)와 동종의 기기일 수 있다. 버틀러 로봇(300-1), 애완로봇(300-2), 스마트 홈카메라(300-3) 각각은 구비된 다양한 종류의 센서를 이용하여 공간을 스캔하고 공간 내의 객체를 검출할 수 있다. External devices connected to the electronic device 100 may be a cloud server 200 and various types of IoT devices 300-1, 300-2, and 300-3. As shown in FIG. 1, IoT devices may be a butler robot (300-1), a pet robot (300-2), a smart home camera (300-3), etc., but are not limited thereto, and may include electronic devices ( It may be the same device as 100). The butler robot 300-1, the pet robot 300-2, and the smart home camera 300-3 can each scan the space and detect objects in the space using various types of sensors.

본 개시의 일 실시예에 따르면, 전자 장치(100), 버틀러 로봇(300-1), 애완로봇(300-2), 및 스마트 홈카메라(300-3)는 각각에서 수집된 공간 스캔 정보 또는 객체 정보를 이용하여 공간 맵을 적어도 하나의 객체를 포함하는 공간에 대한 공간 정보로써 생성하고 저장할 수 있다. 전자 장치(100), 버틀러 로봇(300-1), 애완로봇(300-2), 및 스마트 홈카메라(300-3)는 공간 스캔 정보나 객체 정보, 또는 공간 맵을 상호 간에 송신 또는 수신하여 저장함으로써 서로 공유할 수 있다.According to an embodiment of the present disclosure, the electronic device 100, the butler robot 300-1, the pet robot 300-2, and the smart home camera 300-3 collect spatial scan information or objects from each. Using the information, a spatial map can be created and stored as spatial information about a space including at least one object. The electronic device 100, the butler robot 300-1, the pet robot 300-2, and the smart home camera 300-3 transmit or receive space scan information, object information, or space maps to each other and store them. By doing this, we can share with each other.

동일한 공간 내에 있는 장치들이라하더라도, 각 장치의 위치나 각 장치의 성능 또는 센싱 레인지, 각 장치가 고정형인지 이동형인지, 각 장치가 동작하는 행태 등에 따라, 서로 다른 시점에서 서로 다른 화각으로 공간을 스캔하고 객체를 검출하기 때문에, 어느 하나의 장치에서 획득된 영상 또는 음성을 비롯한 센싱 정보가 다른 장치에 탑재된 인공지능 모델을 학습하는데 유용하게 활용될 수 있다.Even if there are devices in the same space, the space is scanned from different viewpoints and with different angles of view depending on the location of each device, the performance or sensing range of each device, whether each device is fixed or mobile, and the operating behavior of each device. Because objects are detected, sensing information, including video or audio, acquired from one device can be usefully used to learn an artificial intelligence model mounted on another device.

본 개시의 일 실시예에 따르면, 전자 장치(100), 버틀러 로봇(300-1), 애완로봇(300-2), 및 스마트 홈카메라(300-3) 중 어느 하나의 기기가 마스터 디바이스 또는 서버 디바이스가 될 수 있고, 나머지 기기들은 슬레이브 디바이스 또는 클라이언트 디바이스가 될 수 있다. 마스터 디바이스 또는 서버 디바이스에 해당하는 기기는 다른 IoT 기기들로부터 공간 스캔 정보나 객체 정보, 또는 공간 맵을 수신하여, 저장하고 관리할 수 있다. 마스터 디바이스 또는 서버 디바이스에 해당하는 기기는 수신된 정보들을 위치 별로 분류하여 저장하고 관리할 수 있다. 예를 들어, 마스터 디바이스 또는 서버 디바이스에 해당하는 기기는 동일한 공간인지, 동일한 구역인지, 또는 동일한 지역인지에 따라, 공간 스캔 정보나 객체 정보, 또는 공간 맵을 분류하여 취합하고 관리할 수 있다. 마스터 디바이스 또는 서버 디바이스에 해당하는 기기는 저장하고 있던 제1 정보를 동일한 위치에 대응되는 제2 정보로 업데이트함으로써, 해당 위치와 관련된 정보의 최신성 및 적확성을 유지할 수 있다.According to an embodiment of the present disclosure, any one of the electronic device 100, the butler robot 300-1, the pet robot 300-2, and the smart home camera 300-3 is a master device or a server. device, and the remaining devices can be slave devices or client devices. A device corresponding to a master device or server device can receive, store, and manage space scan information, object information, or space maps from other IoT devices. A device corresponding to a master device or server device can classify and store and manage the received information by location. For example, a device corresponding to a master device or a server device can classify, collect, and manage space scan information, object information, or space maps depending on whether it is the same space, the same area, or the same area. A device corresponding to a master device or a server device can maintain the up-to-dateness and accuracy of information related to the location by updating the stored first information with second information corresponding to the same location.

본 개시의 일 실시예에 따르면, 전자 장치(100), 버틀러 로봇(300-1), 애완로봇(300-2), 및 스마트 홈카메라(300-3)는 공간 스캔 정보나 객체 정보, 또는 공간 맵을 클라우드 서버(200)로 전송하여, 클라우드 서버(200)를 통해 공간 스캔 정보나 객체 정보, 또는 공간 맵을 저장하고 관리할 수 있다. 예를 들어, IoT 기기들의 전원이 꺼져 있거나 IoT 기기에서 특정 기능을 실행 중이어서 전자 장치(100)에 공간 스캔 정보나 객체 정보, 또는 공간 맵의 송신이 불가능한 경우, 전자 장치(100)는 클라우드 서버(200)에 공간 스캔 정보나 객체 정보, 또는 공간 맵을 요청하여 수신할 수 있다.According to an embodiment of the present disclosure, the electronic device 100, the butler robot 300-1, the pet robot 300-2, and the smart home camera 300-3 may use spatial scan information, object information, or spatial scan information. By transmitting the map to the cloud server 200, the spatial scan information, object information, or spatial map can be stored and managed through the cloud server 200. For example, when it is impossible to transmit spatial scan information, object information, or a spatial map to the electronic device 100 because the IoT devices are turned off or a specific function is running on the IoT device, the electronic device 100 is connected to the cloud server. Space scan information, object information, or space map can be requested and received from (200).

도 1에 도시된 바와 같이, 클라우드 서버(200)는 전자 장치(100), 버틀러 로봇(300-1), 애완로봇(300-2), 스마트 홈카메라(300-3) 각각으로부터 수신된 공간 스캔 정보나 객체 정보, 또는 공간 맵을 관리하고, 댁내 공간을 모니터링할 수 있다. 클라우드 서버(200)는 복수의 IoT 기기들로부터 수집된 공간 스캔 정보나 객체 정보, 또는 공간 맵을 등록된 사용자의 계정이나 등록된 위치 별로 저장 및 관리할 수 있다. 예를 들어, 클라우드 서버(200)는 동일한 공간인지 또는 동일한 구역인지에 따라, 공간 스캔 정보나 객체 정보, 또는 공간 맵을 분류하여 취합하고 관리할 수 있다. 클라우드 서버(200)는 댁내에 위치한 전자 장치(100), 버틀러 로봇(300-1), 애완로봇(300-2), 스마트 홈카메라(300-3)의 요청에 응답하여, 공간 맵과 같은 댁내 공간에 대한 정보를 전송할 수 있다. As shown in FIG. 1, the cloud server 200 performs spatial scans received from each of the electronic device 100, the butler robot 300-1, the pet robot 300-2, and the smart home camera 300-3. You can manage information, object information, or space maps, and monitor your home space. The cloud server 200 may store and manage space scan information, object information, or space maps collected from a plurality of IoT devices for each registered user's account or registered location. For example, the cloud server 200 may classify, collect, and manage space scan information, object information, or space maps depending on whether it is the same space or the same area. The cloud server 200 responds to requests from the electronic device 100, the butler robot 300-1, the pet robot 300-2, and the smart home camera 300-3 located within the home, and provides home information such as a space map. Information about space can be transmitted.

본 개시의 일 실시예에 따르면, 클라우드 서버(200) 대신, 댁내 위치한 AI 허브(예를 들어, AI 스피커)가 댁내 IoT 기기로부터 공간 스캔 정보나 객체 정보, 또는 공간 맵을 수신하여, 저장하고 관리할 수 있다. AI 허브는 복수의 IoT 기기들로부터 수집된 공간 스캔 정보나 객체 정보, 또는 공간 맵을 댁내의 공간 또는 구역 별로 저장 및 관리할 수 있다.According to an embodiment of the present disclosure, instead of the cloud server 200, an AI hub (e.g., an AI speaker) located within the home receives, stores, and manages spatial scan information, object information, or spatial maps from IoT devices within the home. can do. The AI hub can store and manage spatial scan information, object information, or spatial maps collected from multiple IoT devices by space or zone within the home.

본 개시의 일 실시예에 따르면, 댁내 위치한 AI 허브는 클라우드 서버(200)와 함께 공간 스캔 정보나 객체 정보, 또는 공간 맵을 저장하고 관리할 수 있다. 예를 들어, AI 허브는 공간 맵을 생성 또는 관리하기 위해, 공간 스캔 정보 또는 객체 정보를 가공 내지 처리하거나, 개인 정보가 보호되도록 데이터를 변환하여 클라우드 서버(200)로 전송할 수 있다. 클라우드 서버(200)는 AI 허브로부터 수신된 정보를 가공 내지 처리하여, 공간 스캔 정보나 객체 정보, 또는 공간 맵을 저장하고 관리할 수 있으며, AI 허브로 전송할 수 있다.According to an embodiment of the present disclosure, the AI hub located within the home may store and manage spatial scan information, object information, or spatial maps together with the cloud server 200. For example, the AI hub may process spatial scan information or object information to create or manage a spatial map, or convert the data to protect personal information and transmit it to the cloud server 200. The cloud server 200 can process information received from the AI hub, store and manage spatial scan information, object information, or spatial maps, and transmit it to the AI hub.

본 개시의 일 실시예에 따르면, 로봇 청소기와 같은 전자 장치(100)는 청소와 같은 태스크를 수행하기 위해 공간 맵을 이용할 수 있다. 이를 위해, 전자 장치(100)는 다양한 종류의 센서를 이용하여 공간을 스캔하여 최신의 공간 스캔 정보로 공간 맵을 업데이트할 수 있다. 전자 장치(100)는 직접 센싱한 정보뿐만 아니라, 댁내 IoT 환경에서 서로 연결되는 클라우드 서버(200), 버틀러 로봇(300-1), 애완로봇(300-2), 스마트 홈카메라(300-3)로부터 수신된 공간 맵의 일부 또는 전체를 이용하여 전자 장치(100)에 저장된 공간 맵을 업데이트할 수 있다. According to one embodiment of the present disclosure, an electronic device 100, such as a robot vacuum cleaner, may use a spatial map to perform a task such as cleaning. To this end, the electronic device 100 can scan the space using various types of sensors and update the space map with the latest space scan information. The electronic device 100 includes not only directly sensed information, but also a cloud server 200, a butler robot (300-1), a pet robot (300-2), and a smart home camera (300-3) that are connected to each other in an in-house IoT environment. The spatial map stored in the electronic device 100 may be updated using part or all of the spatial map received from.

예를 들어, 로봇 청소기는 댁내의 공간을 청소하기 위해, 충전 스테이션에서 충전이 완료되면, 로봇 청소기에 저장된 공간 맵을 이용하여 청소를 수행할 수 있다. 로봇 청소기는 동일한 공간에 대한 청소를 수행하기 위해, 최근에 이용한 공간 맵을 그대로 이용할 수도 있다. 하지만, 이전 청소 시의 공간의 상태와 현재의 공간의 상태가 서로 다르므로, 효율적인 청소를 수행하기 위해, 공간 내 위치한 객체들의 최신 정보를 공간 맵에 반영하는 것이 바람직하다. 이를 위해, 로봇 청소기는 충전 스테이션에서 출발하여, 주요 루트를 사전 주행하여, 공간 내의 객체 정보를 직접 수집할 수 있다. 그러나 사전 주행을 하게 되면, 사전 주행을 위한 시간이 더 소요되고, 사전 주행에 따라 배터리가 더 소모될 수 있다. 이때, 로봇 청소기는 다른 로봇 청소기나 동일한 공간에 위치한 적어도 하나의 외부 장치로부터 최신의 공간 맵을 수신하여, 로봇 청소기에 저장된 공간 맵을 업데이트할 수 있다. For example, when a robot vacuum cleaner is fully charged at a charging station to clean a space within the home, it can perform cleaning using a space map stored in the robot cleaner. The robot vacuum cleaner may use the most recently used space map to clean the same space. However, since the state of the space at the time of previous cleaning is different from the state of the current space, it is desirable to reflect the latest information about objects located in the space in the space map in order to perform efficient cleaning. To this end, the robot vacuum cleaner can start from the charging station, travel a major route in advance, and directly collect object information in the space. However, if pre-driving is performed, it takes more time for pre-driving, and the battery may be consumed more depending on the pre-driving. At this time, the robot cleaner may update the space map stored in the robot cleaner by receiving the latest space map from another robot cleaner or at least one external device located in the same space.

로봇 청소기는 외부 장치로부터 수신된 공간 맵의 일부 또는 전부를 활용할 수 있다. 로봇 청소기는 동종의 로봇 청소기로부터 수신된 공간 맵을 그대로 활용하거나 잦은 위치 변화가 예상되는 객체들에 관한 정보를 공간 맵의 업데이트에 활용할 수 있다. 로봇 청소기는 이종의 기기로부터 수신된 공간 맵이라 하더라도, 동일한 공간에 대한 공간 맵의 일부 또는 전부를 공간 맵의 업데이트에 활용할 수 있다.The robot vacuum cleaner may utilize part or all of the spatial map received from an external device. The robot cleaner can use the spatial map received from the same type of robot cleaner as is, or can use information about objects whose positions are expected to change frequently to update the spatial map. Even if the robot vacuum cleaner receives a spatial map from a heterogeneous device, it can utilize part or all of the spatial map for the same space to update the spatial map.

도 2a 및 도 2b는 공간 맵을 설명하기 위한 흐름도이다. 2A and 2B are flowcharts for explaining a spatial map.

도 2a를 참조하면, 로봇 청소기인 전자 장치(100)에 저장된 공간 맵과 공간 맵을 구성하는 복수의 레이어들 간의 계층적 구조를 나타내고 있다. 도 2a에 도시된 바와 같이, 공간 맵은 베이스 레이어, 시맨틱 맵 레이어, 실시간 레이어로 구성될 수 있으나, 이에 한정되는 것은 아니며, 태스크의 특성에 따라 레이어가 가감될 수 있다.Referring to FIG. 2A, it shows a hierarchical structure between a spatial map stored in the electronic device 100, which is a robot vacuum cleaner, and a plurality of layers constituting the spatial map. As shown in FIG. 2A, the spatial map may be composed of a base layer, a semantic map layer, and a real-time layer, but is not limited thereto, and layers may be added or subtracted depending on the characteristics of the task.

베이스 레이어는 벽, 기둥, 통로 등 공간 전체의 기본 구조에 관한 정보를 제공한다. 3차원 포인트 클라우드 데이터를 처리하여, 좌표계를 정합하고, 위치를 저장함으로써, 베이스 레이어는 공간의 3차원 정보, 객체의 위치 정보, 이동 궤적 정보 등을 제공할 수 있다. 베이스 레이어는 베이스 맵과 지오메트릭 맵의 역할을 수행한다. The base layer provides information about the basic structure of the entire space, including walls, columns, and passageways. By processing 3D point cloud data, matching the coordinate system, and storing the location, the base layer can provide 3D information in space, location information of objects, movement trajectory information, etc. The base layer acts as a base map and geometric map.

시멘틱 맵 레이어는 베이스 레이어 위에 시멘틱 정보를 제공하는 레이어이다. 전자 장치(100)의 사용자는 베이스 레이어의 공간 전체의 기본 구조에 'Room 1', 'Room 2', '접근 제한 구역' 등과 같은 시멘틱 정보를 부여하여, 전자 장치(100)의 태스크 수행에 활용할 수 있다. 예를 들어, 전자 장치(100)가 로봇 청소기인 경우, 사용자는 'Room 2'만 청소하게 하거나, '접근 제한 구역'은 로봇 청소기가 청소하지 않도록, 시멘틱 맵 레이어에 시멘틱 정보를 설정할 수 있다.The semantic map layer is a layer that provides semantic information on top of the base layer. The user of the electronic device 100 can assign semantic information such as 'Room 1', 'Room 2', 'access restricted area', etc. to the basic structure of the entire space of the base layer and use it to perform tasks of the electronic device 100. You can. For example, if the electronic device 100 is a robot vacuum cleaner, the user can set semantic information in the semantic map layer so that only 'Room 2' is cleaned, or the robot cleaner does not clean the 'restricted access area'.

실시간 레이어는 공간 내의 적어도 하나의 객체 정보를 제공하는 레이어이다. 객체는 정적 객체와 동적 객체 모두 포함될 수 있다. 본 개시에서 실시간 레이어는 객체의 속성 정보에 기초한 복수의 레이어들을 포함할 수 있으며, 레이어들 간의 계층적 구조를 가질 수 있다. 도 2a에 도시된 바와 같이, 실시간 레이어는 제1 레이어, 제2 레이어, 제3 레이어를 포함할 수 있으나, 이에 한정되는 것은 아니며, 객체의 속성 정보의 분류 기준에 따라 레이어의 개수가 가감될 수 있다. 도 2a를 보면, 제1 레이어에는 시스템 옷장, 붙박이 장이 포함되고, 제2 레이어에는 테이블과 소파가 포함되고, 제3 레이어에는 의자가 포함됨을 알 수 있다.A real-time layer is a layer that provides information on at least one object in space. Objects can include both static and dynamic objects. In the present disclosure, a real-time layer may include a plurality of layers based on attribute information of an object and may have a hierarchical structure between the layers. As shown in Figure 2a, the real-time layer may include a first layer, a second layer, and a third layer, but is not limited thereto, and the number of layers may be added or subtracted depending on the classification criteria of the object's attribute information. there is. Looking at Figure 2a, it can be seen that the first layer includes a system closet and a built-in cabinet, the second layer includes a table and a sofa, and the third layer includes a chair.

도 2b를 참조하면, 객체의 속성 정보에 기초한 복수의 레이어들을 포함하는 실시간 레이어의 다양한 예를 나타내고 있다.Referring to FIG. 2B, various examples of real-time layers including a plurality of layers based on object attribute information are shown.

객체의 속성 정보는 객체의 종류, 형상, 사이즈, 높이 등과 같은 객관적인 기준이나 복수의 기준을 조합하여 분류될 수 있는 정보일 수 있다. 또한, 객체의 속성 정보는 사용자 및 환경에 따라 달라질 수 있으므로, 객체 별로 레이블링하여 속성 정보를 입력해 둘 수있다. The attribute information of an object may be information that can be classified by combining objective criteria such as the type, shape, size, height, etc. of the object or a plurality of criteria. Additionally, since the property information of an object may vary depending on the user and environment, the property information can be entered by labeling each object.

본 개시의 일 실시예에 따르면, 객체의 속성 정보가 객체의 이동성 레벨(ML, Mobability Level)인 경우, 제1 레이어에는 ML 1에 해당하는 객체가 포함되고, 제2 레이어에는 ML 2와 ML 3에 해당하는 객체가 포함되며, 제3 레이어에는 ML 4에 해당하는 객체가 포함될 수 있다. 객체의 이동성 레벨은 객체의 객관적인 특징을 이동성을 평가하는 소정의 분류 기준에 적용함으로써 정해질 수 있다. 예를 들어, ML 1은 이동이 불가능한 객체, ML 2는 이동이 가능하지만, 주로 고정된 상태로 있는 객체, ML 3는 이동이 가능하지만, 가끔 이동하는 객체, ML 4는 이동 가능하며, 자주 이동하는 객체에 각각 대응된다. According to an embodiment of the present disclosure, when the attribute information of an object is the object's mobility level (ML), the first layer includes an object corresponding to ML 1, and the second layer includes ML 2 and ML 3. Objects corresponding to are included, and the third layer may include objects corresponding to ML 4. The mobility level of an object can be determined by applying objective characteristics of the object to predetermined classification criteria for evaluating mobility. For example, ML 1 is for objects that cannot move, ML 2 is for objects that are mobile but mostly stay stationary, ML 3 is for objects that are mobile but move occasionally, and ML 4 are objects that are mobile but often move. Each corresponds to an object.

본 개시의 일 실시예에 따르면, 객체의 속성 정보가 객체의 위치 이동 주기(Position Movement Cycle)인 경우, 제1 레이어에는 1개월 내로 위치 이동이 없었던 객체가 포함되고, 제2 레이어에는 1개월 내로 위치 이동이 있었던 객체가 포함되며, 제3 레이어에는 1주일 내로 위치 이동이 있었던 객체가 포함될 수 있다. 객체의 객관적 특징에 기초하여 분류되는 이동성 레벨과 달리, 위치 이동 주기는 객체를 사용하는 사용자나 객체가 위치하는 환경에 따라 동일한 객체라 하더라도, 위치 이동 주기는 다를 수 있다. 예를 들어, 'A'라는 객체는 제1 사용자가 자주 사용되는 객체인 반면, 제2 사용자는 거의 사용되지 않는 객체일 수 있다. 'B'라는 객체는 제1 장소에서는 자주 사용되는 객체인 반면, 제2 장소에서는 거의 사용되지 않는 객체일 수 있다.According to an embodiment of the present disclosure, when the attribute information of an object is the position movement cycle of the object, the first layer includes an object that has not moved its position within one month, and the second layer includes an object that has not moved its position within one month. Objects that have moved location are included, and the third layer may include objects that have moved location within one week. Unlike the mobility level, which is classified based on the objective characteristics of the object, the position movement cycle may be different even for the same object depending on the user using the object or the environment in which the object is located. For example, the object 'A' may be an object frequently used by the first user, while it may be an object rarely used by the second user. The object 'B' may be an object frequently used in the first place, while it may be an object rarely used in the second place.

본 개시의 일 실시예에 따르면, 객체의 속성 정보가 객체가 위치하는 높이(Height)인 경우, 제1 레이어에는 1m 이하에 해당하는 객체가 포함되고, 제2 레이어에는 1m 이상 2m 이하에 해당하는 객체가 포함되며, 제3 레이어에는 2m를 초과하는 객체가 포함될 수 있다.According to an embodiment of the present disclosure, when the attribute information of an object is the height at which the object is located, the first layer includes objects corresponding to 1 m or less, and the second layer includes objects corresponding to 1 m or more and 2 m or less. Objects are included, and the third layer may include objects exceeding 2m.

본 개시의 일 실시예에 따르면, 실시간 레이어에 포함되는 복수의 레이어들의 분류 기준은 사용자에 의해 정의될 수 있다. 예를 들어, 사용자는 분류 기준에 대해 복수의 종류의 객체의 속성 정보를 조합하여 설정해둠으로써, 태스크의 특성을 반영한 공간 맵을 생성할 수 있다. 예를 들어, 로봇 청소기의 경우, 일반적으로 50cm 높이보다 아래에서 이동하기 때문에 1m 보다 높은 곳에 위치하는 객체들, 예를 들어, 전등이나 벽에 걸린 액자 등은 고려할 필요가 없다. 따라서, 사용자는 각 레이어를 구분하는 분류 기준을 직접 설정하여, 제1 레이어는 ML 1이고 1m 이하에 위치하는 객체가 포함되고, 제2 레이어는 ML 2 또는 ML 3이고 1m 이하에 위치하는 객체가 포함되며, 제3 레이어는 ML 4이고 1m 이하에 위치하는 객체가 포함되도록 할 수 있다.According to an embodiment of the present disclosure, classification criteria for a plurality of layers included in a real-time layer may be defined by the user. For example, a user can create a space map that reflects the characteristics of a task by combining and setting attribute information of multiple types of objects for classification criteria. For example, in the case of a robot vacuum cleaner, it generally moves below a height of 50 cm, so there is no need to consider objects located higher than 1 m, such as lamps or picture frames on the wall. Therefore, the user directly sets the classification criteria to distinguish each layer, so that the first layer is ML 1 and includes objects located below 1 m, and the second layer is ML 2 or ML 3 and includes objects located below 1 m. Included, the third layer is ML 4, and objects located below 1m can be included.

도 3a, 도 3b, 도 3c, 도 3d는 공간 맵을 구성하는 레이어를 활용하는 방식을 설명하기 위한 도면이다.FIGS. 3A, 3B, 3C, and 3D are diagrams for explaining a method of utilizing the layers that make up a spatial map.

전자 장치(100)와 IoT 기기들의 종류나 태스크의 특성에 따라, 각 장치에서 이용되는 공간 맵이 서로 다를 수 있다. 전자 장치(100)는 전자 장치(100)에 저장된 기존의 공간 맵을 그대로 활용할 수도 있지만, 태스크를 수행할 공간에 변화가 생긴 경우, 해당 변화를 반영하기 위해 공간 맵을 업데이트할 수 있다. 전자 장치(100)는 공간에 생긴 변화를 이미 반영하고 있는 공간 맵을 적어도 하나의 외부 장치로부터 수신하여, 기존의 공간 맵을 업데이트 할 수 있다. 전자 장치(100)는 기존의 공간 맵을 기초로, 새로운 공간 맵을 생성할 수 있다. Depending on the type of electronic device 100 and IoT devices or the characteristics of the task, the spatial maps used in each device may be different. The electronic device 100 may utilize the existing spatial map stored in the electronic device 100 as is, but if there is a change in the space in which the task is to be performed, the spatial map may be updated to reflect the change. The electronic device 100 may update the existing spatial map by receiving a spatial map that already reflects changes in space from at least one external device. The electronic device 100 may generate a new space map based on an existing space map.

도 3a를 보면, 전자 장치(100)는 저장되어 있던 기존의 공간 맵(이하, 제1 공간 맵)을 불러올 수 있다. 제1 공간 맵은 베이스 레이어, 제1 레이어, 제2 레이어, 및 제3 레이어로 구성되어 있다. 이하, 설명의 편의상, 제1 레이어 내지 제3 레이어가 도 2b의 임의의 분류 기준에 따라 객체를 포함하는 것을 전제로 설명한다. 제1 공간 맵이 불과 몇분 전에 생성되었거나 제1 공간 맵이 이용된 후로 공간 내에 변화가 없는 경우, 전자 장치(100)는 제1 공간 맵을 그대로 활용하여, 새로운 공간 맵(이하, 제2 공간 맵)을 획득하고, 새로운 태스크를 수행하는데 제2 공간 맵을 이용할 수 있다.Referring to FIG. 3A, the electronic device 100 can load an existing space map (hereinafter referred to as a first space map) that has been stored. The first spatial map consists of a base layer, a first layer, a second layer, and a third layer. Hereinafter, for convenience of explanation, the description will be made on the assumption that the first to third layers include objects according to the arbitrary classification criteria of FIG. 2B. If the first space map was created just a few minutes ago or there is no change in the space since the first space map was used, the electronic device 100 uses the first space map as is and creates a new space map (hereinafter referred to as the second space map). ), and the second spatial map can be used to perform a new task.

도 3b를 보면, 전자 장치(100)는 저장되어 있던 제1 공간 맵을 불러올 수 있다. 전자 장치(100)가 태스크를 수행함에 있어서, 자주 이동하는 ML 4의 객체 정보는 필요하지 않거나, 1주일 이상 이동이 없었던 객체 정보만 이용하는 경우, 제1 공간 맵을 구성하는 레이어들 중에 베이스 레이어, 제1 레이어, 및 제2 레이어를 선별하거나 제1 공간 맵에서 제3 레이어를 제거하여, 제2 공간 맵을 획득할 수 있다.Referring to FIG. 3B, the electronic device 100 can load the stored first space map. When the electronic device 100 performs a task, when object information of ML 4 that moves frequently is not needed or only object information that has not moved for more than a week is used, a base layer among the layers constituting the first spatial map, The second spatial map can be obtained by selecting the first layer and the second layer or removing the third layer from the first spatial map.

도 3c를 보면, 전자 장치(100)는 저장되어 있던 제1 공간 맵을 불러올 수 있다. 전자 장치(100)가 새로운 태스크를 수행함에 있어서, ML 1의 객체 정보만 필요하거나, 1개월 이상 이동이 없었던 객체 정보만 이용하는 경우, 제1 공간 맵을 구성하는 레이어들 중에 베이스 레이어 및 제1 레이어를 선별하거나 제1 공간 맵에서 제2 레이어와 제3 레이어를 제거하여, 제2 공간 맵을 획득할 수 있다.Referring to FIG. 3C, the electronic device 100 can load the stored first space map. When the electronic device 100 performs a new task, only object information of ML 1 is needed or only object information that has not moved for more than one month is used, the base layer and the first layer among the layers constituting the first spatial map The second spatial map can be obtained by selecting or removing the second layer and third layer from the first spatial map.

도 3d를 보면, 전자 장치(100)는 저장되어 있던 제1 공간 맵을 불러올 수 있다. 전자 장치(100)가 새로운 태스크를 수행함에 있어서, 이동이 가능한 ML 2, ML 3, 및 ML 4에 해당하는 객체들의 최신 정보를 반영할 필요가 경우, 제1 공간 맵을 구성하는 레이어들 중에 베이스 레이어 및 제1 레이어를 선별하거나 제1 공간 맵에서 제2 레이어와 제3 레이어를 제거하여, 제2 공간 맵을 획득할 수 있다. 이후, 전자 장치(100)는 외부 장치로부터 수신된 공간 맵에서 제2 레이어와 제3 레이어를 추출하여, 제2 공간 맵에 반영하여, 제3 공간 맵을 획득할 수 있다. 또는, 전자 장치(100)에 구비된 적어도 하나의 센서를 이용하여, ML 2, ML 3, 및 ML 4에 해당하는 객체들을 검출하여, 제2 공간 맵에 반영하여, 제3 공간 맵을 획득할 수 있다.Referring to FIG. 3D, the electronic device 100 can load the stored first space map. When the electronic device 100 performs a new task, when it is necessary to reflect the latest information on objects corresponding to ML 2, ML 3, and ML 4 that can be moved, the base among the layers constituting the first spatial map A second spatial map can be obtained by selecting the layer and the first layer or removing the second layer and the third layer from the first spatial map. Thereafter, the electronic device 100 may extract the second layer and the third layer from the spatial map received from the external device and reflect them in the second spatial map to obtain a third spatial map. Alternatively, using at least one sensor provided in the electronic device 100, objects corresponding to ML 2, ML 3, and ML 4 are detected and reflected in the second space map to obtain a third space map. You can.

도 4는 본 개시의 일 실시예에 따른 공간 맵을 획득하는 방법을 설명하기 위한 흐름도이다.Figure 4 is a flowchart illustrating a method of obtaining a spatial map according to an embodiment of the present disclosure.

전자 장치(100)는 제1 공간 맵을 획득할 수 있다.(S410) 제1 공간 맵은 객체의 속성 정보에 기초한 복수의 레이어들로 구성될 수 있다. 제1 공간 맵은 전자 장치(100)에서 생성되었거나, 전자 장치(100)의 외부 장치로부터 수신된 것일 수 있다. The electronic device 100 may acquire a first space map (S410). The first space map may be composed of a plurality of layers based on attribute information of an object. The first spatial map may be generated in the electronic device 100 or may be received from an external device of the electronic device 100.

전자 장치(100)는 제1 공간 맵에 대한 업데이트가 필요한지 판단할 수 있다.(S420) 예를 들어, 전자 장치(100)는 태스크의 특성에 따라 제1 공간 맵의 업데이트가 필요한 지 판단할 수 있다. 태스크는 전자 장치(100) 고유의 용도 또는 전자 장치(100)에서 실행할 수 있는 기능을 통해 전자 장치(100)가 수행하도록 설정된 작업을 의미한다. 태스크의 수행과 관련된 설정 정보는 사용자에 의해 전자 장치(100)에 직접 입력되거나 모바일 장치나 전용 리모컨 등과 같은 단말을 통해 전자 장치(100)로 전송될 수 있다. 예를 들어, 전자 장치(100)가 로봇 청소기인 경우, 로봇 청소기의 태스크는 댁내 청소 또는 사용자가 설정한 영역에 대한 청소이거나 예약 기능에 따른 예약 청소, 저소음 모드 청소 등일 수 있다. 전자 장치(100)는 태스크의 수행에 이용되는 정보가 부족한 경우, 제1 공간 맵에 대한 업데이트가 필요한 것으로 판단할 수 있다. 전자 장치(100)는 태스크가 수행될 공간 내의 객체 정보에 대한 최신 정보가 필요한 경우, 업데이트가 필요한 것으로 판단할 수 있다. 또는, 전자 장치(100)는 제1 공간 맵을 획득한 시점으로부터의 경과 시간이나 설정된 업데이트 주기에 따라 제1 공간 맵에 대한 업데이트가 필요한지 판단할 수 있다. 제1 공간 맵에 대한 업데이트가 필요 없는 경우, 전자 장치(100)는 제1 공간 맵을 태스크를 수행하는데 이용되는 제2 공간 맵으로써 활용할 수 있다.The electronic device 100 may determine whether an update to the first spatial map is necessary. (S420) For example, the electronic device 100 may determine whether an update of the first spatial map is necessary depending on the characteristics of the task. there is. A task refers to a task that the electronic device 100 is set to perform through a purpose unique to the electronic device 100 or a function that can be executed on the electronic device 100. Setting information related to task performance may be directly input into the electronic device 100 by the user or transmitted to the electronic device 100 through a terminal such as a mobile device or a dedicated remote control. For example, if the electronic device 100 is a robot cleaner, the task of the robot cleaner may be cleaning the home or an area set by the user, scheduled cleaning according to a reservation function, low-noise mode cleaning, etc. When information used to perform a task is insufficient, the electronic device 100 may determine that an update to the first space map is necessary. If the electronic device 100 needs the latest information about object information in a space where a task will be performed, it may determine that an update is necessary. Alternatively, the electronic device 100 may determine whether an update to the first space map is necessary according to the elapsed time from when the first space map was acquired or a set update cycle. When there is no need to update the first space map, the electronic device 100 may utilize the first space map as a second space map used to perform a task.

제1 공간 맵에 대한 업데이트가 필요한 경우, 전자 장치(100)는 객체 정보를 획득할 수 있다.(S430) 전자 장치(100)는 적어도 하나의 센서를 이용하여, 공간 스캔 정보 또는 객체 정보를 직접 수집할 수 있다. 전자 장치(100)는 외부 장치로부터 공간 맵의 일부 또는 전부를 수신하거나, 공간 스캔 정보 또는 객체 정보를 수신할 수 있다. When an update to the first spatial map is required, the electronic device 100 may acquire object information. (S430) The electronic device 100 uses at least one sensor to directly obtain spatial scan information or object information. It can be collected. The electronic device 100 may receive part or all of a spatial map, spatial scan information, or object information from an external device.

전자 장치(100)는 획득된 공간 스캔 정보 또는 객체 정보를 이용하여, 제1 공간 맵에 공간 스캔 정보 또는 객체 정보를 업데이트할 수 있다.(S440) 예를 들어, 전자 장치(100)는 이동이 잦은 객체에 대해서는 최신 위치 정보가 반영되도록 해당 객체 정보 또는 해당 객체가 위치하던 곳의 공간 스캔 정보를 새로 획득하여, 제1 공간 맵에 업데이트할 수 있다. The electronic device 100 may update the spatial scan information or object information in the first spatial map using the acquired spatial scan information or object information (S440). For example, the electronic device 100 may move. For frequent objects, the object information or spatial scan information of the location where the object was located can be newly acquired and updated in the first space map so that the latest location information is reflected.

전자 장치(100)는 제2 공간 맵을 획득할 수 있다.(S450) 전자 장치(100)는 제1 공간 맵을 그대로 활용하거나, 일부 객체 정보나 일부 레이어가 수정된 형태의 제1 공간 맵을 활용하거나, 제1 공간 맵을 업데이트 함으로써, 제2 공간 맵을 획득할 수 있다. The electronic device 100 may acquire a second spatial map. (S450) The electronic device 100 uses the first spatial map as is or creates a first spatial map in which some object information or some layers have been modified. The second spatial map can be obtained by utilizing or updating the first spatial map.

한편, 태스크를 수행하기 위해 이용되는 제2 공간 맵은 전자 장치(100)의 기능이나 태스크의 특성에 따라, 적절한 형태의 맵으로 변형되거나 생성되어 이용될 수 있다. 예를 들어, 전자 장치(100)가 로봇 청소기인 경우, 공간 맵에 기초한 네비게이션 맵을 생성하여, 네비게이션 맵이 제공하는 이동 경로를 따라 청소를 수행할할 수 있다.Meanwhile, the second space map used to perform the task may be transformed or created into an appropriate map depending on the function of the electronic device 100 or the characteristics of the task. For example, if the electronic device 100 is a robot vacuum cleaner, it can generate a navigation map based on a spatial map and perform cleaning along a movement path provided by the navigation map.

도 5는 본 개시의 일 실시예에 따른 공간 정보를 이용하여 전자 장치(100)를 제어하는 방법을 설명하기 위한 흐름도이다.FIG. 5 is a flowchart illustrating a method of controlling the electronic device 100 using spatial information according to an embodiment of the present disclosure.

전자 장치(100)는 적어도 하나의 객체를 포함하는 공간에 대한 공간 정보와 전자 장치(100)가 수행하도록 설정된 태스크에 기초하여, 태스크에 대응되는 공간에 위치한 객체 중 태스크에 방해가 되는 객체 를 선정할 수 있다.(S510) 공간 정보는 적어도 하나의 객체를 포함하는 공간에 대한 공간 맵일 수 있다. 전자 장치(100)가 수행하도록 설정된 태스크는 전자 장치(100)의 용도나 전자 장치(100)에서 실행할 수 있는 기능을 통해 처리하고자 하는 작업을 사용자가 전자 장치(100)에 입력하거나 설정해 둠으로써 결정될 수 있다. 전자 장치(100)의 사용자는 전자 장치(100)에 태스크에 관련된 설정을 직접 입력하거나, 사용자 단말을 통해 전자 장치(100)에 태스크에 관련된 제어 명령을 전송할 수 있다. 예를 들어, 전자 장치(100)가 로봇 청소기인 경우, 로봇 청소기가 수행하도록 설정된 태스크는 태스크가 수행될 위치로써 사용자가 지정한 공간이나 태스크를 수행할 시각, 또는 작동 모드에 따른 청소일 수 있다. 예를 들어, 전자 장치(100)의 사용자는 특정 구역에 대한 청소나 예약 기능에 따른 예약 청소, 또는 작동 모드에 따른 저소음 모드 청소를 로봇 청소기가 수행하도록 설정할 수 있다. 이하, 도 6을 참조하여 설명한다.The electronic device 100 selects an object that interferes with the task among objects located in the space corresponding to the task, based on spatial information about a space containing at least one object and a task that the electronic device 100 is set to perform. (S510) Spatial information may be a spatial map of a space including at least one object. The task that the electronic device 100 is set to perform may be determined by the user entering or setting in the electronic device 100 the purpose of the electronic device 100 or the task to be processed through functions executable in the electronic device 100. You can. The user of the electronic device 100 may directly input task-related settings into the electronic device 100 or transmit a task-related control command to the electronic device 100 through a user terminal. For example, if the electronic device 100 is a robot cleaner, the task that the robot cleaner is set to perform may be cleaning according to a space designated by the user as the location where the task is to be performed, a time to perform the task, or an operation mode. For example, the user of the electronic device 100 can set the robot cleaner to perform cleaning in a specific area, scheduled cleaning according to a reservation function, or low-noise mode cleaning according to the operation mode. Hereinafter, it will be described with reference to FIG. 6.

도 6은 본 개시의 일 실시예에 따른 태스크에 대응되는 공간에 위치한 객체 중 태스크에 방해가 되는 객체를 선정하는 단계를 설명하기 위한 상세 흐름도이다.FIG. 6 is a detailed flowchart illustrating the step of selecting an object that interferes with a task among objects located in a space corresponding to a task according to an embodiment of the present disclosure.

전자 장치(100)는 적어도 하나의 객체를 포함하는 공간에 대한 공간 정보로써 해당 공간의 공간 맵을 획득할 수 있다.(S610) 전자 장치(100)는 전자 장치(100)에 저장된 공간 맵과 전자 장치(100)와 통신이 가능한 외부 장치로부터 수신된 공간 맵 중 적어도 하나에 기초하여, 공간 맵을 획득할 수 있다. 예를 들어, 전자 장치(100)는 앞서 설명한 도 4의 공간 맵을 획득하는 방법에 따라 공간 맵을 획득할 수 있다. The electronic device 100 may acquire a spatial map of the space as spatial information about a space including at least one object. (S610) The electronic device 100 may use the spatial map stored in the electronic device 100 and A spatial map may be obtained based on at least one of spatial maps received from an external device capable of communicating with the device 100. For example, the electronic device 100 may acquire a spatial map according to the method for obtaining a spatial map of FIG. 4 described above.

전자 장치(100)는 공간 맵을 이용하여 전자 장치(100)가 수행하도록 설정된 태스크의 처리에 대한 예측을 분석할 수 있다.(S620) 전자 장치(100)는 전자 장치(100)가 수행하도록 설정된 태스크를 확인하고, 태스크가 수행될 위치에 대응되는 공간 맵을 획득할 수 있다. 전자 장치(100)는 공간 맵에서 태스크를 처리하는 다양한 케이스들을 예측 및 분석할 수 있다. 전자 장치(100)는 태스크를 수행하기 위한 전자 장치(100)의 가상 이동 경로에서 적어도 하나의 분기점 및 적어도 하나의 객체의 위치에 기초하여 서로 구분되는 복수의 케이스들에 대해 태스크의 처리에 대한 예측 결과들을 비교하여 분석할 수 있다.The electronic device 100 may use the spatial map to analyze a prediction of processing of a task that the electronic device 100 is set to perform. (S620) The electronic device 100 may analyze a prediction of the processing of a task that the electronic device 100 is set to perform. You can check the task and obtain a spatial map corresponding to the location where the task will be performed. The electronic device 100 can predict and analyze various cases of processing tasks in the spatial map. The electronic device 100 predicts task processing for a plurality of distinct cases based on the location of at least one branch point and at least one object in the virtual movement path of the electronic device 100 for performing the task. The results can be compared and analyzed.

본 개시의 일 실시예에 따르면, 전자 장치(100)는 각 분기점에서의 방향 전환이나 각 개체의 위치 이동 여부를 고려하는 태스크 처리 모델을 생성할 수 있다. 예를 들어, 태스크 처리 모델은 전자 장치(100)의 위치를 입력으로 하고, 태스크 처리 모델의 각 레이어는 가상 이동 경로 상의 분기점 또는 객체의 위치에 대응될 수 있으며, 각 레이어에 포함된 각 노드는 해당 위치에서의 방향 전환이나 객체의 이동 여부에 따른 가상 이동 경로 상의 전자 장치(100)의 위치일 수 있다. 태스크 처리 모델은 태스크 처리 모델을 구성하는 각 레이어에 포함된 각 노드에서 다음 노드로 이동 시에, 가상 이동 경로 상의 위치가 중복되지 않는 방향일수록 높은 가중치가 적용되도록 설계될 수 있다. 태스크 처리 모델은 태스크 처리 모델을 구성하는 모든 레이어 각각에 포함된 적어도 하나의 노드를 거쳐, 마지막 레이어에 도달하면, 태스크의 처리가 완료된 것으로 판단할 수 있다. 태스크 처리 모델의 각 노드에 대응되는 위치에 기초하여, 태스크의 처리에 이용된 가상 이동 경로가 추적될 수 있다. 추적된 가상 이동 경로 별로, 태스크를 수행하는데 소요되는 시간, 태스크를 수행하는데 필요한 배터리 량, 태스크의 완료도 등을 분석할 수 있다.According to an embodiment of the present disclosure, the electronic device 100 may create a task processing model that considers whether the direction changes at each junction or the location of each object moves. For example, the task processing model uses the location of the electronic device 100 as input, each layer of the task processing model may correspond to a branch point or the location of an object on the virtual movement path, and each node included in each layer This may be the location of the electronic device 100 on a virtual movement path depending on whether the direction changes or the object moves at the corresponding location. The task processing model may be designed so that when moving from each node included in each layer constituting the task processing model to the next node, a higher weight is applied to the direction in which the positions on the virtual movement path do not overlap. The task processing model passes through at least one node included in each of all layers constituting the task processing model, and when it reaches the last layer, it can be determined that processing of the task is complete. Based on the location corresponding to each node of the task processing model, the virtual movement path used to process the task can be tracked. For each tracked virtual movement path, the time required to perform the task, the amount of battery required to perform the task, and the degree of completion of the task can be analyzed.

본 개시의 일 실시예에 따르면, 전자 장치(100)는 각 분기점에서의 방향 전환이나 각 개체의 위치 이동 여부 등을 고려하여, 태스크를 처리하기 위한 다양한 시나리오를 생성할 수 있다. 전자 장치(100)는 각 시나리오 별로, 획득된 공간 맵에서의 태스크에 대한 시뮬레이션을 실행하여 분석할 수 있다. 전자 장치(100)는 각 시나리오 별로, 태스크를 수행하는데 소요되는 시간, 태스크를 수행하는데 필요한 배터리 량, 태스크의 완료도 등을 분석할 수 있다.According to an embodiment of the present disclosure, the electronic device 100 may generate various scenarios for processing a task by considering a change in direction at each junction or whether the location of each object moves. The electronic device 100 may run and analyze a simulation of a task in the acquired spatial map for each scenario. The electronic device 100 may analyze the time required to perform a task, the amount of battery required to perform the task, the degree of completion of the task, etc., for each scenario.

예를 들어, 전자 장치(100)가 로봇 청소기인 경우, 로봇 청소기는 태스크 처리 모델을 이용하여 추적된 가상 이동 경로 별로 또는 시뮬레이션을 실행한 각 시나리오 별로, 청소에 소요된 시간, 청소를 수행하는데 필요한 배터리 량, 청소의 완료도 등을 비교할 수 있다. For example, if the electronic device 100 is a robot vacuum cleaner, the robot vacuum cleaner determines the time required for cleaning and the time required to perform cleaning for each virtual movement path tracked using a task processing model or for each scenario in which the simulation is executed. You can compare battery capacity, cleaning completion, etc.

전자 장치(100)는 태스크의 처리에 대한 예측을 분석한 분석 결과에 기초하여, 태스크에 방해가 되는 적어도 하나의 객체를 결정할 수 있다.(S630) 전자 장치(100)는 태스크의 처리에 소요되는 시간, 소요되는 배터리 량, 태스크의 완료도 중 적어도 하나에 기준에 따라, 베스트 케이스를 선정할 수 있다. 예를 들어, 태스크의 처리에 소요되는 시간이나 배터리 량이 가장 적은 경우나 태스크의 완료도가 가장 높은 경우, 또는 각 기준에 대해 가중치를 부여한 가중 평균이 가장 높은 경우가 베스트 케이스로 선정될 수 있다. 전자 장치(100)는 베스트 케이스에 대응되는 가상 이동 경로를 역추적하여, 가상 이동 경로 상의 객체의 위치 이동이 있었는지 확인할 수 있다. 이때, 위치 이동이 있었던 적어도 하나의 객체를 태스크에 방해가 되는 객체로 결정할 수 있다.The electronic device 100 may determine at least one object that interferes with the task based on the analysis result of predicting the processing of the task. (S630) The electronic device 100 determines the number of objects required to process the task. The best case can be selected based on at least one of the following criteria: time, battery capacity, and task completion. For example, the case where the time required to process a task or the battery capacity is the lowest, the degree of task completion is highest, or the case where the weighted average given weights for each criterion is the highest may be selected as the best case. The electronic device 100 can backtrack the virtual movement path corresponding to the best case and check whether there has been a positional movement of the object on the virtual movement path. At this time, at least one object whose position has moved may be determined to be an object that interferes with the task.

예를 들어, 전자 장치(100)가 로봇 청소기인 경우, 청소를 완료하는데 소요되는 시간이나 소요되는 배터리 량, 전체 면적 중 청소가 완료된 면적 등의 적어도 하나에 기준에 따라, 로봇 청소기가 청소를 수행하는 베스트 케이스를 선정할 수 있다. 로봇 청소기는 베스트 케이스에 대응되는 가상 이동 경로를 역추적하여, 가상 이동 경로 상의 객체의 위치 이동이 있었는지 확인하고, 위치 이동이 있음으로서, 베스트 케이스 선정에 기여한 적어도 하나의 객체를 태스크에 방해가 되는 객체로 결정할 수 있다.For example, if the electronic device 100 is a robot vacuum cleaner, the robot cleaner performs cleaning according to at least one criterion such as the time required to complete cleaning, the amount of battery required, or the area where cleaning was completed among the total area. The best case can be selected. The robot vacuum cleaner backtracks the virtual movement path corresponding to the best case, checks whether there has been a positional movement of the object on the virtual movement path, and, as a result of the positional movement, at least one object that contributed to the selection of the best case interferes with the task. It can be determined as an object.

다시 도 5를 참조하면, 전자 장치(100)는 선정된 객체의 속성에 따른 객체 이동 가이드 정보를 전자 장치(100)의 사용자에게 제공할 수 있다.(S520) 이하, 도 7 내지 도 13을 참조하여 설명한다.Referring again to FIG. 5, the electronic device 100 may provide object movement guide information according to the properties of the selected object to the user of the electronic device 100 (S520). Refer to FIGS. 7 to 13 below. This explains.

도 7은 본 개시의 일 실시예에 따른 태스크에 방해가 되는 객체로 선정된 객체의 속성 정보에 따른 객체 이동 가이드 정보를 제공하는 단계를 설명하기 위한 상세 흐름도이다.FIG. 7 is a detailed flowchart illustrating the step of providing object movement guide information according to attribute information of an object selected as an object interfering with a task according to an embodiment of the present disclosure.

전자 장치(100)는 태스크가 수행될 공간에서 이동이 요구되는 객체로 선정된 객체의 속성 정보를 확인할 수 있다.(S710) 예를 들어, 전자 장치(100)는 선정된 객체의 종류나 선정된 객체가 속한 레이어 정보, 및 선정된 객체의 레이블 중 적어도 하나에 기초하여, 객체의 속성 정보를 확인할 수 있다. 전자 장치(100)는 선정된 객체의 이동성 레벨, 위치 이동 주기, 높이, 사이즈 등 적어도 하나의 속성 정보를 확인할 수 있다.The electronic device 100 may check attribute information of an object selected as an object requiring movement in the space where the task will be performed. (S710) For example, the electronic device 100 may check the type of the selected object or the selected object. The attribute information of the object can be confirmed based on at least one of information on the layer to which the object belongs and the label of the selected object. The electronic device 100 may check at least one attribute information, such as mobility level, position movement cycle, height, and size, of the selected object.

전자 장치(100)는 선정된 모든 객체에 대하여, 확인된 객체의 속성 정보에 대응되는 이동 리퀘스트 프로세스를 실행할 수 있다. 이동 리퀘스트 프로세스는 객체의 속성 정보에 대응되는 이동 리퀘스트 알고리즘 실행 결과를 사용자에게 제공하고, 사용자로부터의 응답을 확인하는 절차들을 포함할 수 있다.The electronic device 100 may execute a move request process corresponding to attribute information of the identified objects for all selected objects. The move request process may include procedures for providing the user with a move request algorithm execution result corresponding to the attribute information of the object and confirming a response from the user.

도 7에 도시된 바와 같이, 확인된 객체의 속성 정보가 객체의 이동성 레벨인 경우를 예로 들어 설명하면, 전자 장치(100)는 태스크에 방해가 되는 객체로 선정된 객체의 이동성 레벨을 확인할 수 있다.(S720) 설명의 편의상, 객체의 속성 정보가 객체의 이동성 레벨인 것을 전제로 하나, 이에 한정되는 것은 아니며, 객체의 위치 이동 주기, 높이, 사이즈 등 다른 타입의 속성 정보일 수 있다. 또한, 확인된 속성 정보의 분류도 도 7에 도시된 바와 같이 세 가지 케이스로 한정되는 것은 아니며, 각 속성 정보에 따라 적절한 수의 분류가 있을 수 있다.As shown in FIG. 7, if the attribute information of the confirmed object is the object's mobility level as an example, the electronic device 100 may check the mobility level of the object selected as an object interfering with the task. .(S720) For convenience of explanation, it is assumed that the object's attribute information is the object's mobility level, but it is not limited to this and may be other types of attribute information such as the object's position movement cycle, height, size, etc. Additionally, the classification of the confirmed attribute information is not limited to the three cases as shown in FIG. 7, and there may be an appropriate number of classifications depending on each attribute information.

선정된 객체의 이동성 레벨이 4인 경우, 제1 이동 리퀘스트 프로세스를 실행할 수 있다.(S730) 이하, 도 8을 참조하여 설명한다.If the mobility level of the selected object is 4, the first movement request process can be executed (S730). This will be described below with reference to FIG. 8.

도 8은 본 개시의 일 실시예에 따른 제1 이동 리퀘스트 프로세스를 설명하기 위한 도면이다. FIG. 8 is a diagram for explaining a first move request process according to an embodiment of the present disclosure.

전자 장치(100)는 태스크의 처리에 대한 예측을 분석한 분석 결과 및 객체 이동 가이드 정보를 사용자에게 제공할 수 있다.(S810) 예를 들어, 전자 장치(100)는 태스크의 처리에 대한 예측 결과들 중 태스크에 방해가 되는 객체를 이동 시킨 케이스와 이동시키지 않은 케이스 간의 차이를 분석한 분석 결과 및 태스크에 방해가 되는 객체의 이동을 요구하는 객체 이동 가이드 정보를 사용자 단말에 전송할 수 있다. 전자 장치(100)가 로봇 청소기인 경우, 선정된 객체의 이동을 반영 시, 얼마나 청소 시간이 단축되는지 또는 얼마나 청소 가능한 구역이 증가되는지 등의 차이를 분석한 분석 결과를 사용자에게 제공할 수 있다. 전자 장치(100)는 선정된 객체를 이동시킬 것을 사용자에게 요청할 수 있고, 이동시키기에 적절한 위치에 대한 정보를 사용자에게 제공할 수도 있다.The electronic device 100 may provide the user with analysis results and object movement guide information obtained by analyzing predictions about task processing (S810). For example, the electronic device 100 provides prediction results about task processing. Among these, the analysis result of analyzing the difference between the case in which an object interfering with the task is moved and the case in which the object is not moved, as well as object movement guide information requesting movement of the object interfering with the task, can be transmitted to the user terminal. If the electronic device 100 is a robot cleaner, analysis results that analyze differences such as how much cleaning time is shortened or how much the area that can be cleaned is increased when reflecting the movement of the selected object can be provided to the user. The electronic device 100 may request the user to move the selected object and may provide the user with information about an appropriate location for movement.

전자 장치(100)는 태스크의 처리에 대한 예측을 분석한 분석 결과 및 객체 이동 가이드 정보를 제공한 후 사용자의 응답을 수신할 수 있다.(S820) 전자 장치(100)가 사용자로부터 응답을 확인함으로써, 제1 이동 리퀘스트 프로세스가 종료될 수 있다. 전자 장치(100)는 사용자 단말로부터 객체의 이동에 관한 응답을 수신하거나, 사용자 단말로 가상 시뮬레이션 분석 결과를 제공하고, 객체의 이동을 요청한 후 소정의 시간이 경과하면, 객체의 이동에 관한 응답을 수신한 것으로 처리할 수 있다.The electronic device 100 may receive the user's response after providing analysis results of predictions for task processing and object movement guide information. (S820) The electronic device 100 confirms the response from the user. , the first move request process may be terminated. The electronic device 100 receives a response regarding the movement of the object from the user terminal, provides a virtual simulation analysis result to the user terminal, and provides a response regarding the movement of the object when a predetermined time has elapsed after requesting the movement of the object. It can be processed as received.

도 9는 본 개시의 일 실시예에 따른 객체 이동 가이드 정보를 사용자에게 제공하는 예를 설명하기 위한 도면이다.Figure 9 is a diagram for explaining an example of providing object movement guide information to a user according to an embodiment of the present disclosure.

전자 장치(100)는 태스크의 처리에 대한 예측을 분석한 분석 결과 및 객체 이동 가이드 정보를 사용자의 사용자 단말(400)로 전송할 수 있다. 예를 들어, 전자 장치(100)는 태스크의 처리에 대한 예측 결과들 중 태스크에 방해가 되는 객체를 이동 시킨 케이스와 이동시키지 않은 케이스 간의 차이를 분석한 분석 결과 및 태스크에 방해가 되는 객체의 이동을 요구하는 객체 이동 가이드 정보를 사용자 단말(400)에 전송할 수 있다.The electronic device 100 may transmit analysis results of predictions for task processing and object movement guide information to the user's user terminal 400 . For example, the electronic device 100 analyzes the difference between cases in which an object that interferes with the task is moved and a case in which the object that interferes with the task is not moved among the prediction results for processing the task and the movement of the object that interferes with the task. Object movement guide information requesting may be transmitted to the user terminal 400.

도 9를 참조하면, 전자 장치(100)가 로봇 청소기이고, 태스크의 처리에 대한 예측을 분석한 분석 결과, 거실 바닥에 있는 가방이 태스크에 방해가 되는 객체로 선정된 경우를 나타내고 있다.Referring to FIG. 9 , the electronic device 100 is a robot vacuum cleaner, and as a result of analyzing predictions for task processing, a bag on the living room floor is selected as an object that interferes with the task.

도 9에 도시된 바와 같이, 로봇 청소기는 태스크에 방해가 되는 객체로 선정된 가방의 이동을 반영 시, 얼마나 청소 시간이 단축되는지 차이를 분석한 분석 결과와 함께 거실 바닥에 있는 가방을 이동시킬 것을 사용자에게 요청하는 메시지를 사용자 단말(400)에 전송 할 수 있다. 사용자 단말(400)로 전송된 메시지는 가방을 이동시키기에 적절한 위치에 대한 정보를 더 포함할 수 있다.As shown in Figure 9, the robot vacuum cleaner moves the bag on the living room floor along with the analysis results of the difference in how much cleaning time is reduced when reflecting the movement of the bag selected as an object that interferes with the task. A message requesting the user can be transmitted to the user terminal 400. The message transmitted to the user terminal 400 may further include information about an appropriate location to move the bag.

로봇 청소기는 태스크의 처리에 대한 예측을 분석한 분석 결과 및 객체 이동 가이드 정보를 사용자 단말(400)로 전송한 후 사용자의 응답을 수신할 수 있다. 로봇 청소기는 사용자 단말(400)로부터 가방의 이동 요청을 확인하였다는 응답을 수신하거나, 가방의 이동을 요청한 후 소정의 시간이 경과하면 사용자로부터 응답을 수신한 것으로 처리하여, 가방이 이동된 것으로 판단할 수 있다.The robot cleaner may transmit analysis results of predictions for task processing and object movement guide information to the user terminal 400 and then receive a user's response. The robot vacuum cleaner receives a response from the user terminal 400 indicating that the request to move the bag has been confirmed, or when a predetermined time has elapsed after requesting to move the bag, it processes the response as having received it from the user and determines that the bag has been moved. can do.

도 10은 본 개시의 일 실시예에 따른 객체 이동 가이드 정보를 사용자에게 제공하는 다른 예를 설명하기 위한 도면이다.FIG. 10 is a diagram illustrating another example of providing object movement guide information to a user according to an embodiment of the present disclosure.

앞서 도 9의 실시예와 달리, 전자 장치(100)는 태스크의 처리에 대한 예측을 분석한 분석 결과 및 객체 이동 가이드 정보를 음성의 형태로 출력할 수 있다. 예를 들어, 전자 장치(100)는 태스크의 처리에 대한 예측 결과들 중 태스크에 방해가 되는 객체를 이동 시킨 케이스와 이동시키지 않은 케이스 간의 차이를 분석한 분석 결과 및 태스크에 방해가 되는 객체의 이동을 요구하는 객체 이동 가이드 정보를 사용자에게 음성으로써 전달할 수 있다.Unlike the previous embodiment of FIG. 9, the electronic device 100 may output analysis results of predictions for task processing and object movement guide information in the form of voice. For example, the electronic device 100 analyzes the difference between cases in which an object that interferes with the task is moved and a case in which the object that interferes with the task is not moved among the prediction results for processing the task and the movement of the object that interferes with the task. The requested object movement guide information can be delivered to the user through voice.

앞서 도 9에서 설명한 상황에서, 도 10에 도시된 바와 같이, 로봇 청소기는 태스크에 방해가 되는 객체로 선정된 가방의 이동을 반영 시, 얼마나 청소 시간이 단축되는지 차이를 분석한 분석 결과와 함께 거실 바닥에 있는 가방을 이동시킬 것을 사용자에게 음성의 형태로 전달할 수 있다. 로봇 청소기는 가방을 이동시키기에 적절한 위치에 대한 정보를 더 음성으로 전달할 수 있다.In the situation previously described in FIG. 9, as shown in FIG. 10, the robot cleaner is shown in the living room along with the analysis results of the difference in how much the cleaning time is reduced when reflecting the movement of the bag selected as an object that interferes with the task. It is possible to convey to the user in the form of a voice how to move the bag on the floor. The robot vacuum cleaner can further convey information about the appropriate location to move the bag through voice.

로봇 청소기는 태스크의 처리에 대한 예측을 분석한 분석 결과 및 객체 이동 가이드 정보를 음성의 형태로 출력한 후 사용자의 응답을 수신할 수 있다. 로봇 청소기는 사용자로부터 가방의 이동 요청을 확인하였다는 음성을 수신하거나, 가방의 이동을 요청한 후 소정의 시간이 경과하면 사용자로부터 응답을 수신한 것으로 처리하여, 가방이 이동된 것으로 판단할 수 있다.The robot vacuum cleaner can output analysis results of predictions for task processing and object movement guide information in the form of voice and then receive a user's response. When the robot vacuum cleaner receives a voice from the user indicating that the request to move the bag has been confirmed, or when a predetermined time has elapsed after requesting to move the bag, the robot vacuum cleaner may process it as having received a response from the user and determine that the bag has been moved.

다시 도 7을 참조하면, 선정된 객체의 이동성 레벨이 2 또는 3인 경우, 제2 이동 리퀘스트 프로세스를 실행할 수 있다.(S740) 이하, 도 11을 참조하여 설명한다.Referring again to FIG. 7, if the mobility level of the selected object is 2 or 3, the second movement request process can be executed (S740). This will be described below with reference to FIG. 11.

도 11은 본 개시의 일 실시예에 따른 제2 이동 리퀘스트 프로세스를 설명하기 위한 도면이다. FIG. 11 is a diagram for explaining a second move request process according to an embodiment of the present disclosure.

제2 이동 리퀘스트 프로세스가 시작되면, 전자 장치(100)는 공간 맵을 이용하여 선정된 객체가 위치한 지역의 3차원 공간 맵을 생성할 수 있다.(S1110) 전자 장치(100)는 3차원 공간 맵을 생성하면서, 태스크에 방해가 되는 객체로 선정된 객체의 사이즈를 반영하여 선정된 객체를 이동시킬 수 있는 영역과 전자 장치(100)가 이동할 수 있는 공간을 확보할 수 있다..When the second movement request process starts, the electronic device 100 may generate a 3D spatial map of the area where the selected object is located using the spatial map (S1110). The electronic device 100 may generate the 3D spatial map. While creating, it is possible to secure an area where the selected object can be moved and a space where the electronic device 100 can move by reflecting the size of the object selected as an object interfering with the task.

전자 장치(100)는 생성된 3차원 공간 맵에서 태스크에 방해가 되는 객체로 선정된 객체를 이동시킬 후보 위치들을 선정할 수 있다.(S1120) 예를 들어, 후보 위치는 선정된 객체의 현재 위치와 가깝고, 사용자의 주동선과 겹쳐지 않는 위치일 수록, 우선 순위가 높은 것으로 결정될 수 있다. The electronic device 100 may select candidate locations to move an object selected as an object that interferes with the task in the generated 3D space map (S1120). For example, the candidate location is the current location of the selected object. The closer the location is to and does not overlap with the user's main movement line, the higher the priority may be determined.

도 12는 본 개시의 일 실시예에 따른 선정된 객체를 이동시킬 후보 위치들을 선정하는 과정을 설명하기 위한 도면이다.Figure 12 is a diagram for explaining a process of selecting candidate locations to move the selected object according to an embodiment of the present disclosure.

도 12를 참조하면, 전자 장치(100)가 로봇 청소기인 경우, 로봇 청소기가 위치한 장소에 대응되는 3차원 공간 맵을 생성하고, 태스크에 방해가 되는 객체로 선정된 테이블을 이동시킬 후보 위치들을 선정하는 과정을 나타내고 있다. 로봇 청소기는 3차원 공간 맵을 생성 시, 로봇 청소기가 들어갈 공간과 테이블의 사이즈에 기초하여 테이블이 이동 가능한 영역을 확인할 수 있다. 로봇 청소기는 청소를 수행하기 위하여, 로봇 청소기가 반드시 통과해야 하는 공간을 미리 확보해두고, 테이블이 이동 가능한 영역들을 확인할 수 있다. 로봇 청소기는 테이블이 이동 가능한 영역들에서 로봇 청소기가 드나드는 통로가 되는 곳은 제외하고, 테이블의 후보 위치를 선정할 수 있다. 테이블의 후보 위치는 소정의 공식에 따라, 테이블의 현재 위치에서 가까울수록 높은 스코어가 부여될 수 있다. 도 12에 도시된 바와 같이, 로봇 청소기는 테이블을 이동시킬 후보 위치들로 세 곳을 선정하였고, 각각 '0.9', '0.4', '0.3'의 스코어가 부여된 것을 알 수 있다. 후보 위치의 개수는 사전에 미리 설정될 수 있으며, 후보 위치가 되기 위한 최소한의 스코어에 대한 기준은 조정될 수 있다.Referring to FIG. 12, when the electronic device 100 is a robot vacuum cleaner, a three-dimensional space map corresponding to the location of the robot cleaner is generated, and candidate locations for moving a table selected as an object interfering with the task are selected. It shows the process. When the robot cleaner creates a 3D space map, it can check the area where the table can move based on the space where the robot cleaner will fit and the size of the table. In order to perform cleaning, the robot cleaner secures in advance the space that the robot cleaner must pass through and can check areas where the table can move. The robot vacuum cleaner can select a candidate location for the table in areas where the table can move, excluding places that are passageways for the robot cleaner to enter and exit. According to a predetermined formula, the candidate position of the table may be given a higher score as it is closer to the current position of the table. As shown in Figure 12, the robot cleaner selected three candidate positions for moving the table, and it can be seen that scores of '0.9', '0.4', and '0.3' were assigned, respectively. The number of candidate locations can be set in advance, and the criteria for the minimum score to become a candidate location can be adjusted.

다시 도 11을 참조하면, 전자 장치(100)는 3차원 공간 맵과 선정된 객체의 영상 합성을 통해, 각 후보 위치 별로 선정된 객체 이동 시의 영상을 획득할 수 있다.(S1130) 전자 장치(100)는 3차원 공간 맵에서 후보 위치에 대응되는 공간에 태스크에 방해가 되는 객체로 선정된 객체가 이동한 경우의 모습을 나타내는 영상을 영상 합성 기술을 이용하여 생성할 수 있다.Referring again to FIG. 11, the electronic device 100 can acquire an image when the selected object moves for each candidate location through compositing the 3D space map and the image of the selected object. (S1130) The electronic device ( 100) can use image synthesis technology to generate an image showing how an object selected as an object interfering with a task moves to a space corresponding to a candidate location in a 3D space map.

전자 장치(100)는 영상 평가 모델에 객체 이동시의 영상을 입력하여, 영상 평가 모델을 통한 영상 평가 결과를 획득할 수 있다.(S1140) 영상 평가 모델은 전자 장치(100)가 위치한 장소의 용도나 사용자의 설정에 따라 소정의 평가를 수행하는 모델일 수 있다. 일 실시예에 따르면, 영상 평가 모델은 객체 이동 시의 모습을 합성한 영상을 입력으로 하여, 인테리어 미적 가치를 점수화한 결과 값을 출력으로 하는 모델일 수 있으나, 이에 제한되는 것은 아니다. 일 실시예에 따르면, 영상 평가 모델은 객체 이동 시의 모습을 합성한 영상을 입력으로 하여, 해당 공간의 안전도를 점수화한 결과 값을 출력으로 하는 모델일 수 있다.The electronic device 100 can obtain an image evaluation result through the image evaluation model by inputting an image when an object moves into the image evaluation model. (S1140) The image evaluation model can be used to determine the purpose of the location where the electronic device 100 is located or It may be a model that performs a predetermined evaluation according to the user's settings. According to one embodiment, the image evaluation model may be a model that inputs a composite image of the appearance of an object when moving and outputs a result of scoring the interior aesthetic value, but is not limited to this. According to one embodiment, the image evaluation model may be a model that inputs a composite image of the appearance of an object when moving and outputs a result of scoring the safety level of the space.

전자 장치(100)는 영상 평가 결과에 따른 객체 이동 가이드 정보를 제공할 수 있다.(S1150) 예를 들어, 전자 장치(100)는 태스크에 방해가 되는 객체로 선정된 객체를 후보 위치로 이동시켰을 경우, 어느 정도의 인테리어 미적 가치를 가지는지 또는 얼마나 안전한지 등의 영상 평가 결과에 따른 추천 위치를 사용자에게 제공할 수 있다. 전자 장치(100)는 영상 평가 결과에 기초하여, 후보 위치들 중 평가 점수가 높은 후보 위치를 추천 위치로 결정할 수 있다. 또는, 전자 장치(100)는 선정된 객체를 이동시키기에 평가 점수가 높은 소정의 개수의 후보 위치들을 사용자에게 추천 위치들로 제공할 수도 있다.The electronic device 100 may provide object movement guide information according to the image evaluation results. (S1150) For example, the electronic device 100 may move an object selected as an object that interferes with the task to a candidate location. In this case, a recommended location can be provided to the user based on the video evaluation results, such as how much interior aesthetic value it has or how safe it is. Based on the image evaluation result, the electronic device 100 may determine a candidate location with a high evaluation score among candidate locations as a recommended location. Alternatively, the electronic device 100 may provide a predetermined number of candidate locations with high evaluation scores for moving the selected object as recommended locations to the user.

도 13은 본 개시의 일 실시예에 따른 영상 평가 결과에 따른 객체 이동 가이드 정보를 사용자에게 제공하는 예를 설명하기 위한 도면이다.FIG. 13 is a diagram illustrating an example of providing object movement guide information to a user according to an image evaluation result according to an embodiment of the present disclosure.

도 13을 참조하면, 전자 장치(100)가 로봇 청소기인 경우, 로봇 청소기는 태스크에 방해가 되는 객체로 선정된 테이블을 제1 후보 위치, 제2 후보 위치, 및 제3 후보 위치로 각각 이동 시킬 시의 모습을 나타내는 영상을 획득할 수 있다. 로봇 청소기는 3차원 공간 맵을 나타내는 영상과 태스크에 방해가 되는 객체로 선정된 테이블의 영상을 합성하여, 각 후보 위치에 테이블이 위치한 영상을 생성할 수 있다.Referring to FIG. 13, when the electronic device 100 is a robot cleaner, the robot cleaner moves the table selected as an object interfering with the task to the first candidate location, the second candidate location, and the third candidate location, respectively. You can obtain a video showing the appearance of the poem. The robot vacuum cleaner can generate an image where the table is located at each candidate location by combining an image representing a 3D space map and an image of a table selected as an object that interferes with the task.

로봇 청소기는 영상 평가 모델에 영상 합성을 통해 획득한 후보 위치 별 영상을 입력하여, 영상 평가 모델을 통한 영상 평가 결과를 획득할 수 있다. 로봇 청소기는 영상 평가 결과에 따른 객체 이동 가이드 정보를 제공할 수 있다. 도 13에 도시된 바와 같이, 로봇 청소기는 영상 평가 결과에 따른 추천 위치를 사용자 단말(400)에 전송할 수 있다. 로봇 청소기는 후보 위치 별 영상들 중 추천 위치에 대응되는 영상을 사용자 단말(400)에 함께 전송하고, 해당 영상에 현재 위치로부터 추천 위치까지의 이동 방향 및 거리를 나타낼 수 있다.The robot vacuum cleaner can obtain image evaluation results through the image evaluation model by inputting images for each candidate location obtained through image synthesis into the image evaluation model. The robot vacuum cleaner can provide object movement guide information according to the image evaluation results. As shown in FIG. 13, the robot cleaner may transmit a recommended location according to the image evaluation result to the user terminal 400. The robot cleaner may transmit an image corresponding to a recommended location among images for each candidate location to the user terminal 400, and indicate the direction and distance of movement from the current location to the recommended location in the image.

다시 도 11을 참조하면, 전자 장치(100)는 영상 평가 결과에 따른 객체 이동 가이드 정보를 제공한 후 사용자의 응답을 수신할 수 있다.(S1160) 전자 장치(100)가 사용자로부터 응답을 확인함으로써, 제2 이동 리퀘스트 프로세스가 종료될 수 있다. 전자 장치(100)는 사용자 단말(400)로부터 객체의 이동에 관한 응답을 수신하거나, 사용자 단말(400)로 영상 평가 결과에 따른 객체 이동 가이드 정보를 제공하고, 객체의 이동을 요청한 후 소정의 시간이 경과하면, 객체의 이동에 관한 응답을 수신한 것으로 처리할 수 있다.Referring again to FIG. 11, the electronic device 100 may receive the user's response after providing object movement guide information according to the image evaluation result. (S1160) The electronic device 100 confirms the response from the user. , the second move request process may be terminated. The electronic device 100 receives a response regarding the movement of the object from the user terminal 400, provides object movement guide information according to the image evaluation result to the user terminal 400, and waits a predetermined time after requesting movement of the object. Once this has elapsed, it can be processed as having received a response regarding the movement of the object.

다시 도 7을 참조하면, 객체의 이동성 레벨이 1인 경우, 객체의 이동이 불가하므로, 소정의 이동 리퀘스트 프로세스 실행 없이도, 해당 객체에 대응되는 이동 리퀘스트 프로세스는 실행이 된 것으로 처리될 수 있다. Referring again to FIG. 7, when the object's mobility level is 1, the object cannot be moved, so the move request process corresponding to the object can be processed as being executed even without executing a predetermined move request process.

전자 장치(100)는 선정된 모든 객체에 대해, 이동 리퀘스트 프로세스가 실행된 것인지를 확인할 수 있다.(S750) 전자 장치(100)는 선정된 모든 객체에 대해, 객체의 속성 정보를 확인하고, 이동 리퀘스트 프로세스가 실행될 때까지 해당 동작을 반복할 수 있다.The electronic device 100 can check whether the movement request process has been executed for all selected objects. (S750) The electronic device 100 checks the attribute information of the objects for all selected objects, and determines whether the movement request process has been executed. The operation can be repeated until the request process is executed.

한편, 전자 장치(100)는 태스크에 방해가 되는 객체로 선정된 객체가 위치한 지역의 3차원 공간 맵을 생성하여, 태스크에 방해가 되는 객체로 선정된 객체를 전자 장치(100)가 이동시킬 수 있는 영역과 전자 장치(100)가 이동할 수 있는 공간을 확인할 수 있다. 전자 장치(100)는 생성된 3차원 공간 맵에서, 태스크에 방해가 되는 객체로 선정된 객체를 이동시킬 적어도 하나의 후보 위치를 선정할 수 있다. 전자 장치(100)는 태스크에 방해가 되는 객체로 선정된 객체를 후보 위치 중 어느 하나로 이동시킬 수 있다. 예를 들어, 사용자가 사전에 전자 장치(100)에 객체 이동 가이드 정보 제공을 받지 않겠다고 설정해두었거나, 전자 장치(100)에 의해 충분히 이동이 가능한 객체의 경우, 전자 장치(100)는 태스크에 방해가 되는 객체로 선정된 객체를 후보 위치로 이동시킬 수 있다. 이와 같이 이동하는 경우, 전자 장치(100)는 객체를 이동시킨 위치를 태스크를 수행하는데 이용되는 이동 경로의 시작점으로 하여, 태스크를 수행하는데 이용되는 이동 경로를 획득하거나, 객체를 이동시킨 위치에서 태스크에 방해가 되는 객체를 다시 선정하는 절차부터 다시 수행할 수도 있다.Meanwhile, the electronic device 100 creates a three-dimensional spatial map of the area where the object selected as an object interfering with the task is located, and the electronic device 100 can move the object selected as an object interfering with the task. The area in which the electronic device 100 is located and the space in which the electronic device 100 can move can be confirmed. The electronic device 100 may select at least one candidate location from the generated 3D space map to move an object that is selected as an object that interferes with the task. The electronic device 100 may move an object selected as an object interfering with a task to one of the candidate locations. For example, if the user has previously set the electronic device 100 not to receive object movement guide information, or if the object is sufficiently movable by the electronic device 100, the electronic device 100 may interfere with the task. The object selected as the object can be moved to the candidate location. When moving in this way, the electronic device 100 uses the location where the object was moved as the starting point of the movement path used to perform the task, obtains the movement path used to perform the task, or executes the task at the location where the object was moved. You can also perform the procedure again by reselecting the object that is interfering with the process.

다시 도 5를 참조하면, 전자 장치(100)는 객체 이동 가이드 정보에 대응하는 사용자의 응답에 기초하여 태스크를 수행하는데 이용되는 이동 경로를 획득할 수 있다.(S530) 이하, 도 14를 참조하여 설명한다.Referring again to FIG. 5, the electronic device 100 may obtain a movement path used to perform a task based on the user's response corresponding to the object movement guide information (S530). Hereinafter, referring to FIG. 14. Explain.

도 14는 본 개시의 일 실시예에 따른 태스크를 수행하는데 이용되는 이동 경로를 결정하는 단계를 설명하기 위한 상세 흐름도이다.FIG. 14 is a detailed flowchart illustrating the step of determining a movement path used to perform a task according to an embodiment of the present disclosure.

전자 장치(100)는 객체 이동 가이드 정보에 대응하는 사용자의 응답에 기초하여, 선정된 객체 중 이동된 객체를 확인할 수 있다.(S1410) 전자 장치(100)는 실제 이동된 객체뿐만 아니라 사용자로부터 객체의 이동을 확인받은 경우, 선정된 객체가 이동된 것으로 처리할 수 있다. 전자 장치(100)는 사용자로부터 선정된 객체의 이동을 거부하는 응답을 받았거나, 사용자 단말에 선정된 객체의 이동을 요청한 후 사용자의 응답없이 소정의 시간이 경과된 경우, 선정된 객체가 이동되지 않은 것으로 처리할 수 있다.The electronic device 100 can confirm the moved object among the selected objects based on the user's response corresponding to the object movement guide information. (S1410) The electronic device 100 can check not only the actually moved object but also the object from the user. If the movement of is confirmed, the selected object can be processed as having been moved. When the electronic device 100 receives a response from the user refusing to move the selected object, or when a predetermined time elapses without a response from the user after requesting the user terminal to move the selected object, the selected object is not moved. It can be treated as not.

전자 장치(100)는 태스크에 대응되는 공간에서 이동된 객체를 반영한 이동 경로를 결정할 수 있다.(S1420) 예를 들어, 전자 장치(100)는 네비게이션 맵을 생성할 수 있다. 네비게이션 맵은 전자 장치(100)가 태스크를 수행하는데 이용되는 이동 경로를 제공할 수 있다.The electronic device 100 may determine a movement path that reflects the object moved in the space corresponding to the task (S1420). For example, the electronic device 100 may generate a navigation map. The navigation map may provide a movement route used by the electronic device 100 to perform a task.

다시 도 5를 참조하면, 전자 장치(100)는 이동 경로에 따라 전자 장치(100)를 구동할 수 있다.(S540) 전자 장치(100)는 네비게이션 맵이 제공하는 이동 경로를 따라 이동하면서, 태스크를 수행할 수 있다.Referring again to FIG. 5, the electronic device 100 may drive the electronic device 100 according to the movement path. (S540) The electronic device 100 moves along the movement path provided by the navigation map and performs the task. can be performed.

도 15 및 도 16은 본 개시의 일 실시예에 따른 공간 정보를 이용하는 전자 장치(100)의 구성을 나타낸 블록도이다.15 and 16 are block diagrams showing the configuration of an electronic device 100 that uses spatial information according to an embodiment of the present disclosure.

도 15를 참조하면, 일 실시예에 따른 전자 장치(100)는, 메모리(110), 프로세서(120), 센싱부(130)를 포함할 수 있으나, 이에 한정되는 것은 아니며, 범용적인 구성이 더 추가될 수 있다. 예를 들어, 도 16에 도시된 바와 같이, 전자 장치(100)는, 메모리(110), 프로세서(120), 센싱부(130)외에 입출력부(140), 통신부(150), 구동부(160)를 더 포함할 수 있다. 이하, 도 15 및 도 16을 참조하여, 각 구성에 대해 상세히 설명한다.Referring to FIG. 15, the electronic device 100 according to an embodiment may include a memory 110, a processor 120, and a sensing unit 130, but is not limited thereto and has a more general-purpose configuration. can be added For example, as shown in FIG. 16, the electronic device 100 includes, in addition to a memory 110, a processor 120, and a sensing unit 130, an input/output unit 140, a communication unit 150, and a driver 160. It may further include. Hereinafter, with reference to FIGS. 15 and 16, each configuration will be described in detail.

일 실시예에 따른 메모리(110)는, 프로세서(120)의 처리 및 제어를 위한 프로그램을 저장할 수 있고, 전자 장치(100)로 입력되거나 전자 장치(100)로부터 출력되는 데이터(예컨대, 공간 정보, 객체 정보, 공간 맵, 이동 경로 등)를 저장할 수 있다. 메모리(110)는 프로세서(120)가 판독할 수 있는 명령어들, 데이터 구조, 및 프로그램 코드(program code)가 저장될 수 있다. 개시된 실시예들에서, 프로세서(120)가 수행하는 동작들은 메모리(110)에 저장된 프로그램의 명령어들 또는 코드들을 실행함으로써 구현될 수 있다.The memory 110 according to one embodiment may store a program for processing and control of the processor 120, and may store data (e.g., spatial information, Object information, spatial maps, movement paths, etc.) can be stored. The memory 110 may store instructions, data structures, and program code that the processor 120 can read. In the disclosed embodiments, operations performed by the processor 120 may be implemented by executing instructions or codes of a program stored in the memory 110.

일 실시예에 따른 메모리(110)는 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등)를 포함할 수 있으며, 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나를 포함하는 비 휘발성 메모리 및 램(RAM, Random Access Memory) 또는 SRAM(Static Random Access Memory)과 같은 휘발성 메모리를 포함할 수 있다.The memory 110 according to one embodiment may be a flash memory type, a hard disk type, a multimedia card micro type, or a card type memory (for example, SD or XD). memory, etc.), and may include at least one of ROM (Read-Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory), PROM (Programmable Read-Only Memory), magnetic memory, magnetic disk, and optical disk. It may include non-volatile memory, such as RAM (Random Access Memory) or SRAM (Static Random Access Memory).

일 실시예에 따른 메모리(110)는 공간 정보를 이용하는 전자 장치(100)가 태스크를 수행할 수 있도록 제어하는 하나 이상의 인스트럭션 및/또는 프로그램을 저장할 수 있다. 예를 들어, 메모리(110)에는 공간 정보 관리 모듈, 태스크 처리 모듈, 구동 모듈 등이 저장될 수 있다.The memory 110 according to an embodiment may store one or more instructions and/or programs that control the electronic device 100 using spatial information to perform a task. For example, the memory 110 may store a spatial information management module, a task processing module, a driving module, etc.

일 실시예에 따른 프로세서(120)는 메모리(110)에 저장된 명령어들이나 프로그램화된 소프트웨어 모듈을 실행함으로써, 전자 장치(100)가 태스크를 수행할 수 있도록 동작이나 기능을 제어할 수 있다. 프로세서(120)는 산술, 로직 및 입출력 연산과 시그널 프로세싱을 수행하는 하드웨어 구성 요소로 구성될 수 있다. 프로세서(120)는 메모리(110)에 저장된 하나 이상의 인스트럭션(instructions)을 실행함으로써, 전자 장치(100)가 공간 정보를 이용하여 태스크를 수행하는 전반적인 동작들을 제어할 수 있다. 프로세서(120)는 메모리(110)에 저장된 프로그램들을 실행함으로써, 센싱부(130), 입출력부(140), 통신부(150), 구동부(160)를 제어할 수 있다. The processor 120 according to one embodiment may control operations or functions of the electronic device 100 to perform tasks by executing instructions or programmed software modules stored in the memory 110. The processor 120 may be comprised of hardware components that perform arithmetic, logic, input/output operations, and signal processing. The processor 120 may execute one or more instructions stored in the memory 110 to control overall operations in which the electronic device 100 performs a task using spatial information. The processor 120 can control the sensing unit 130, the input/output unit 140, the communication unit 150, and the driving unit 160 by executing programs stored in the memory 110.

일 실시예에 따른 프로세서(120)는 예를 들어, 중앙 처리 장치(Central Processing Unit), 마이크로 프로세서(microprocessor), 그래픽 처리 장치(Graphic Processing Unit), ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), 애플리케이션 프로세서(Application Processor), 신경망 처리 장치(Neural Processing Unit) 또는 인공지능 모델의 처리에 특화된 하드웨어 구조로 설계된 인공지능 전용 프로세서 중 적어도 하나로 구성될 수 있으나, 이에 제한되는 것은 아니다. 프로세서(120)를 구성하는 각 프로세서는 소정의 기능을 수행하기 위한 전용 프로세서일 수 있다.The processor 120 according to one embodiment includes, for example, a Central Processing Unit, a microprocessor, a Graphics Processing Unit, Application Specific Integrated Circuits (ASICs), and Digital Signals (DSPs). Processors), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), Application Processors, Neural Processing Units, or hardware specialized for processing artificial intelligence models. It may consist of at least one of the designed artificial intelligence processors, but is not limited to this. Each processor constituting the processor 120 may be a dedicated processor for performing a certain function.

일 실시예에 따른 인공 지능(AI; artificial intelligence) 프로세서는, 인공지능(AI) 모델을 이용하여, 전자 장치(100)가 수행하도록 설정된 태스크의 처리를 위해, 연산 및 제어를 수행할 수 있다. AI 프로세서는, 인공 지능(AI)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 전자 장치(100)에 탑재될 수도 있다.An artificial intelligence (AI) processor according to one embodiment may use an artificial intelligence (AI) model to perform computation and control to process a task that the electronic device 100 is set to perform. The AI processor may be manufactured in the form of a dedicated hardware chip for artificial intelligence (AI), or may be manufactured as part of a general-purpose processor (eg, CPU or application processor) or graphics-specific processor (eg, GPU) and used in the electronic device 100. It may be mounted on .

일 실시예에 따른 센싱부(130)는, 전자 장치(100) 주변 환경에 관한 정보를 감지하도록 구성되는 다수의 센서들을 포함할 수 있다. 예를 들어, 센싱부(130)는, 이미지 센서(131), 라이다(LiDAR, Light Detection And Ranging) 센서(132), 적외선 센서(133), 초음파 센서(134), ToF(Time of Flight) 센서(135), 자이로 센서(136) 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.The sensing unit 130 according to one embodiment may include a plurality of sensors configured to detect information about the environment surrounding the electronic device 100. For example, the sensing unit 130 includes an image sensor 131, a LiDAR (Light Detection And Ranging) sensor 132, an infrared sensor 133, an ultrasonic sensor 134, and a Time of Flight (ToF) sensor. It may include a sensor 135, a gyro sensor 136, etc., but is not limited thereto.

일 실시예에 따른 이미지 센서(131)는 스테레오 카메라, 모노 카메라, 와이드 앵글 카메라, 어라운드 뷰 카메라 또는 3D 비전 센서 등을 포함할 수 있다.The image sensor 131 according to one embodiment may include a stereo camera, a mono camera, a wide angle camera, an around view camera, or a 3D vision sensor.

라이다 센서(132)는 레이저를 목표물에 비춰 사물과의 거리 및 다양한 물성을 감지할 수 있다. 라이다 센서(132)는 주변 사물, 지형지물 등을 감지하고 이를 3D 영상으로 모델링하는데 이용될 수 있다.The LiDAR sensor 132 can detect the distance to the object and various physical properties by shining a laser on the target. The LiDAR sensor 132 can be used to detect surrounding objects, geographical features, etc. and model them into 3D images.

적외선 센서(133)는 적외선을 복사해 빛이 차단됨으로써 변화를 검지하는 능동식 적외선 센서와 발광기를 가지지 않고 외계로부터 받는 적외선의 변화만을 감지하는 수동식 적외선 센서 중 어느 하나가 될 수 있다. 예를 들어, 적외선 근접 센서는 전자 장치(100)의 바퀴 주변에 설치되어, 바닥으로 적외선을 조사한 후 수신함으로써, 추락 방지 센서로 사용될 수 있다.The infrared sensor 133 can be either an active infrared sensor that radiates infrared rays and detects changes by blocking the light, or a passive infrared sensor that does not have a light emitter and only detects changes in infrared rays received from the outside world. For example, an infrared proximity sensor may be installed around the wheels of the electronic device 100 and used as a fall prevention sensor by emitting infrared rays to the floor and then receiving them.

초음파 센서(134)는 초음파를 이용하여 물체까지의 거리를 측정할 수 있으며, 물체의 근접성에 대한 정보를 전달하는 초음파 펄스를 방출 및 검출할 수 있다. 초음파 센서(134)는 근접한 물체의 감지 및 투명한 물체의 감지에 이용될 수 있다.The ultrasonic sensor 134 can measure the distance to an object using ultrasonic waves, and can emit and detect ultrasonic pulses that convey information about the proximity of the object. The ultrasonic sensor 134 can be used to detect nearby objects and transparent objects.

ToF 센서(135)는 물체로 발사한 빛이 튕겨져 돌아오는 거리를 시간으로 계산하여, 사물의 입체감과 움직임, 공간 정보를 획득할 수 있다. ToF 센서(135)는 복잡한 공간이나 어두운 곳, 그리고 눈앞의 장애물까지 수준 높은 사물 인지가 가능하도록 하여, 전자 장치(100)가 장애물을 피해가도록 할 수 있다.The ToF sensor 135 calculates the distance at which light emitted from an object bounces and returns in terms of time, and can obtain the three-dimensional effect, movement, and spatial information of the object. The ToF sensor 135 enables high-level object recognition in complex spaces, dark places, and even obstacles in front of the eyes, allowing the electronic device 100 to avoid obstacles.

자이로 센서(136)는 각속도를 검출할 수 있다. 자이로 센서(136)는 전자 장치(100)의 위치 측정과 방향 설정에 이용될 수 있다.Gyro sensor 136 can detect angular velocity. The gyro sensor 136 can be used to measure the position and set the direction of the electronic device 100.

일 실시예에 의하면, 센싱부(130)는 적어도 하나의 센서를 이용하여, 적어도 하나의 객체를 포함하는 공간에 대한 공간 정보를 생성하는데 이용될 수 있다. 예를 들어, 전자 장치(100)는 이미지 센서(131), 라이다 센서(123), 적외선 센서(133), 초음파 센서(134), ToF 센서(135), 및 자이로 센서(136) 중 동종 또는 이종의 복수의 센서를 이용하여, 공간 스캔 정보 또는 객체 정보를 획득함으로써, 적어도 하나의 객체를 포함하는 공간에 대한 공간 정보를 획득할 수 있다.According to one embodiment, the sensing unit 130 may be used to generate spatial information about a space including at least one object using at least one sensor. For example, the electronic device 100 may include the same type or By obtaining spatial scan information or object information using a plurality of heterogeneous sensors, spatial information about a space including at least one object can be obtained.

도 16에 도시된 바와 같이, 전자 장치(140)는 입출력부(140), 통신부(150), 구동부(160)를 더 포함할 수 있으며, 도 16에 도시되지 않았지만 전원부와 같은 구성을 더 포함할 수 있다.As shown in FIG. 16, the electronic device 140 may further include an input/output unit 140, a communication unit 150, and a driver 160. Although not shown in FIG. 16, the electronic device 140 may further include components such as a power unit. You can.

입출력부(140)는 입력부(141)와 출력부(142)을 포함할 수 있다. 입출력부(140)는 입력부(141)와 출력부(142)가 분리된 형태이거나, 터치스크린과 같이 통합된 하나의 형태일 수 있다. 입출력부(140)는 사용자로부터 입력 정보를 수신할 수 있고, 사용자에게 출력 정보를 제공할 수 있다.The input/output unit 140 may include an input unit 141 and an output unit 142. The input/output unit 140 may be in a form where the input unit 141 and the output unit 142 are separated, or may be in an integrated form, such as a touch screen. The input/output unit 140 may receive input information from a user and provide output information to the user.

입력부(141)는, 사용자가 전자 장치(100)를 제어하기 위한 데이터를 입력하는 수단을 의미할 수 있다. 예를 들어, 입력부(141)는 키 패드(key pad), 터치 패널(접촉식 정전 용량 방식, 압력식 저항막 방식, 적외선 감지 방식, 표면 초음파 전도 방식, 적분식 장력 측정 방식, 피에조 효과 방식 등) 등이 될 수 있다. 뿐만 아니라, 입력부(141)는 조그 휠, 조그 스위치 등이 있을 수 있으나 이에 한정되는 것은 아니다.The input unit 141 may refer to a means through which a user inputs data to control the electronic device 100. For example, the input unit 141 may include a key pad, a touch panel (contact capacitance type, pressure resistance type, infrared detection type, surface ultrasonic conduction type, integral tension measurement type, piezo effect type, etc. ), etc. In addition, the input unit 141 may include a jog wheel, a jog switch, etc., but is not limited thereto.

출력부(142)는, 오디오 신호 또는 비디오 신호 또는 진동 신호를 출력할 수 있으며, 출력부(142)는 디스플레이부, 음향 출력부, 및 진동 모터를 포함할 수 있다. The output unit 142 may output an audio signal, a video signal, or a vibration signal, and the output unit 142 may include a display unit, a sound output unit, and a vibration motor.

디스플레이부는 전자 장치(100)에서 처리되는 정보를 표시할 수 있다. 예를 들어, 디스플레이부는 사용자의 조작을 입력받기 위한 사용자 인터페이스를 디스플레이할 수 있다. 디스플레이부와 터치패드가 레이어 구조를 이루어 터치 스크린으로 구성되는 경우, 디스플레이부는 출력 장치 이외에 입력 장치로도 사용될 수 있다. 디스플레이부는 액정 디스플레이(liquid crystal display), 박막 트랜지스터 액정 디스플레이(thin film transistor-liquid crystal display), 유기 발광 다이오드(organic light-emitting diode), 플렉시블 디스플레이(flexible display), 3차원 디스플레이(3D display) 중에서 적어도 하나를 포함할 수 있다. 전자 장치(100)의 구현 형태에 따라 전자 장치(100)는 디스플레이부를 2개 이상 포함할 수 있다.The display unit may display information processed by the electronic device 100. For example, the display unit may display a user interface for receiving user input. When the display unit and the touch pad form a layered structure to form a touch screen, the display unit can be used as an input device in addition to an output device. The display unit includes liquid crystal display, thin film transistor-liquid crystal display, organic light-emitting diode, flexible display, and 3D display. It can contain at least one. Depending on the implementation form of the electronic device 100, the electronic device 100 may include two or more display units.

음향 출력부는 메모리(110)에 저장된 오디오 데이터를 출력할 수 있다. 음향 출력부는 전자 장치(100)에서 수행되는 기능과 관련된 음향 신호를 출력할 수 있다. 음향 출력부에는 스피커(speaker), 버저(Buzzer) 등이 포함될 수 있다.The audio output unit may output audio data stored in the memory 110. The sound output unit may output sound signals related to functions performed in the electronic device 100. The sound output unit may include a speaker, buzzer, etc.

진동 모터는 진동 신호를 출력할 수 있다. 예를 들어, 진동 모터는 오디오 데이터 또는 비디오 데이터의 출력에 대응하는 진동 신호를 출력할 수 있다. 진동 모터는 터치스크린에 터치가 입력되는 경우 진동 신호를 출력할 수 있다.The vibration motor can output a vibration signal. For example, the vibration motor may output a vibration signal corresponding to the output of audio data or video data. The vibration motor can output a vibration signal when a touch is input to the touch screen.

통신부(150)는, 전자 장치(100)가 외부 장치 예컨대, 클라우드 서버(200), IoT 기기들(300-1, ?? , 300-3), 사용자 단말(400)돠 통신을 가능하게 하는 하나 이상의 구성요소를 포함할 수 있다. 예를 들어, 통신부(150)는, 근거리 통신부(short-range wireless communication unit)(151), 이동 통신부(152) 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. The communication unit 150 is one that enables the electronic device 100 to communicate with external devices such as the cloud server 200, IoT devices 300-1, ??, 300-3, and the user terminal 400. It may include the above components. For example, the communication unit 150 may include a short-range wireless communication unit 151, a mobile communication unit 152, etc., but is not limited thereto.

근거리 통신부(short-range wireless communication unit)(151)는, 블루투스 통신부, BLE(Bluetooth Low Energy) 통신부, 근거리 무선 통신부(Near Field Communication unit), WLAN(와이파이) 통신부, 지그비(Zigbee) 통신부, Ant+ 통신부, WFD(Wi-Fi Direct) 통신부, UWB(ultra wideband) 통신부, 적외선(IrDA, infrared Data Association) 통신부, 마이크로 웨이브(uWave) 통신부 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. The short-range wireless communication unit 151 includes a Bluetooth communication unit, a Bluetooth Low Energy (BLE) communication unit, a Near Field Communication unit, a WLAN (Wi-Fi) communication unit, a Zigbee communication unit, and an Ant+ communication unit. , WFD (Wi-Fi Direct) communication unit, UWB (ultra wideband) communication unit, infrared (IrDA (infrared Data Association) communication unit), microwave (uWave) communication unit, etc., but is not limited thereto.

이동 통신부(152)는, 이동 통신망 상에서 기지국, 외부의 단말, 서버 중 적어도 하나와 무선 신호를 송수신한다. 여기에서, 무선 신호는, 음성 호 신호, 화상 통화 호 신호 또는 문자/멀티미디어 메시지 송수신에 따른 다양한 형태의 데이터를 포함할 수 있다.The mobile communication unit 152 transmits and receives wireless signals with at least one of a base station, an external terminal, and a server on a mobile communication network. Here, the wireless signal may include various types of data according to voice call signals, video call signals, or text/multimedia message transmission and reception.

구동부(160)는 전자 장치(100)의 구동(주행) 및 전자 장치(100) 내부의 장치들의 동작에 이용되는 구성들을 포함할 수 있다. 전자 장치(100)가 로봇 청소기인 경우, 구동부(160)는 흡입부, 주행부 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.The driving unit 160 may include components used for driving (driving) the electronic device 100 and operating devices within the electronic device 100. When the electronic device 100 is a robot cleaner, the driving unit 160 may include a suction unit, a traveling unit, etc., but is not limited thereto.

흡입부는, 공기를 흡입하면서 바닥의 먼지를 집진하는 기능을 하는데, 회전브러쉬 또는 빗자루, 회전브러쉬 모터, 공기흡입구, 필터, 집진실, 공기배출구 등을 포함할 수 있으나, 이에 한정되는 것은 아니다. 흡입부는, 부가적으로 구석 먼지를 쓸어낼 수 있는 솔이 회전되는 구조로 장착될 수도 있다.The suction unit functions to collect dust from the floor while sucking in air, and may include, but is not limited to, a rotating brush or broom, a rotating brush motor, an air intake port, a filter, a dust collection chamber, and an air outlet. The suction unit may additionally be equipped with a rotating brush structure that can sweep away dust from corners.

주행부는 전자 장치(100)에 설치된 바퀴를 각각 회전 구동시키는 모터 및 바퀴에서 발생되는 동력을 전달할 수 있도록 설치된 타이밍 벨트 등이 포함될 수 있으나, 이에 한정되는 것은 아니다. The driving unit may include, but is not limited to, a motor that rotates each wheel installed in the electronic device 100 and a timing belt installed to transmit power generated from the wheels.

본 개시의 일 실시예에 따르면, 프로세서(120)는 메모리(110)에 저장된 하나 이상의 인스트럭션을 실행함으로써, 센싱부(130)를 통해 획득된 적어도 하나의 객체를 포함하는 공간에 대한 공간 정보와 전자 장치(100)가 수행하도록 설정된 태스크에 기초하여, 태스크에 대응되는 공간에 위치한 객체 중 태스크에 방해가 되는 객체를 선정할 수 있다. According to an embodiment of the present disclosure, the processor 120 executes one or more instructions stored in the memory 110, thereby generating spatial information and electronic information about a space including at least one object obtained through the sensing unit 130. Based on the task that the device 100 is set to perform, an object that interferes with the task may be selected from among objects located in a space corresponding to the task.

프로세서(120)는 메모리(110)에 저장된 하나 이상의 인스트럭션을 실행함으로써, 공간 정보로써 공간 맵을 획득할 수 있다. 프로세서(120)는 메모리(110)에 저장된 하나 이상의 인스트럭션을 실행함으로써, 전자 장치(100)에 저장된 제1 공간 맵과 전자 장치(100)와 통신이 가능한 외부 장치로부터 수신된 제2 공간 맵 중 적어도 하나에 기초하여, 공간 맵을 획득할 수 있다. 공간 맵은 객체의 속성 정보에 기초한 복수의 레이어들을 포함할 수 있다.The processor 120 may obtain a spatial map as spatial information by executing one or more instructions stored in the memory 110. The processor 120 executes one or more instructions stored in the memory 110, thereby generating at least one of the first spatial map stored in the electronic device 100 and the second spatial map received from an external device capable of communicating with the electronic device 100. Based on one, a spatial map can be obtained. The spatial map may include a plurality of layers based on attribute information of objects.

프로세서(120)는 메모리(110)에 저장된 하나 이상의 인스트럭션을 실행함으로써, 획득된 공간 맵을 이용하여 태스크의 처리에 대한 예측 결과를 분석할 수 있다. 프로세서(120)는 메모리(110)에 저장된 하나 이상의 인스트럭션을 실행함으로써, 태스크를 수행하기 위한 전자 장치(100)의 가상 이동 경로 상의 적어도 하나의 분기점 및 적어도 하나의 객체의 위치에 기초하여 구분되는 복수의 이동 경로들에 따른 태스크의 처리에 대한 예측 결과들을 비교하여 분석할 수 있다. 프로세서(120)는 분석 결과에 기초하여, 태스크에 방해가 되는 적어도 하나의 객체를 결정할 수 있다.The processor 120 may analyze a prediction result for processing a task using the spatial map obtained by executing one or more instructions stored in the memory 110. The processor 120 executes one or more instructions stored in the memory 110, thereby generating a plurality of commands divided based on the location of at least one branch and at least one object on the virtual movement path of the electronic device 100 for performing the task. The predicted results for task processing according to the movement paths can be compared and analyzed. The processor 120 may determine at least one object that interferes with the task based on the analysis result.

본 개시의 일 실시예에 따르면, 프로세서(120)는 메모리(110)에 저장된 하나 이상의 인스트럭션을 실행함으로써, 태스크에 방해가 되는 객체로 선정된 객체의 속성 정보에 따른 객체 이동 가이드 정보를 전자 장치(100)의 사용자에게 제공할 수 있다. 프로세서(120)는 태스크에 방해가 되는 객체로 선정된 객체의 속성 정보를 확인하고, 확인된 객체의 속성 정보에 대응되는 이동 리퀘스트 프로세스를 실행하여, 객체 이동 가이드 정보를 사용자에게 제공할 수 있다.According to an embodiment of the present disclosure, the processor 120 executes one or more instructions stored in the memory 110 to provide object movement guide information according to the attribute information of the object selected as an object interfering with the task to the electronic device ( It can be provided to 100) users. The processor 120 may check attribute information of an object selected as an object interfering with a task, execute a movement request process corresponding to the attribute information of the confirmed object, and provide object movement guide information to the user.

일 실시예에 따르면, 프로세서(120)는 메모리(110)에 저장된 하나 이상의 인스트럭션을 실행함으로써, 태스크의 처리에 대한 예측을 분석한 분석 결과 및 객체 이동 가이드 정보를 통신부(150)를 통해서 사용자의 사용자 단말(400)로 전송할 수 있다. 일 실시예에 따르면, 프로세서(120)는 메모리(110)에 저장된 하나 이상의 인스트럭션을 실행함으로써, 태스크에 방해가 되는 객체로 선정된 객체가 위치한 지역의 3차원 공간 맵에서 선정된 객체를 이동시킬 후보 위치들을 선정할 수 있다. 프로세서(120)는 각 후보 위치 별로 태스크에 방해가 되는 객체로 선정된 객체 이동 시의 영상을 획득하고, 영상 평가 모델에 획득된 영상을 입력하여, 영상 평가 모델을 통해 영상을 평가할 수 있다. 프로세서(120)는 영상 평가 결과에 따른 객체 이동 가이드 정보를 통신부(150)를 통해 사용자의 사용자 단말(400)로 전송할 수 있다.According to one embodiment, the processor 120 executes one or more instructions stored in the memory 110, thereby providing analysis results of predictions for task processing and object movement guide information to the user through the communication unit 150. It can be transmitted to the terminal 400. According to one embodiment, the processor 120 executes one or more instructions stored in the memory 110, thereby selecting a candidate for moving the selected object in the three-dimensional space map of the area where the object that is selected as an obstacle to the task is located. Locations can be selected. The processor 120 may obtain an image of the movement of an object selected as an object interfering with the task for each candidate location, input the acquired image into an image evaluation model, and evaluate the image through the image evaluation model. The processor 120 may transmit object movement guide information according to the image evaluation result to the user's user terminal 400 through the communication unit 150.

본 개시의 일 실시예에 따르면, 프로세서(120)는 메모리(110)에 저장된 하나 이상의 인스트럭션을 실행함으로써, 객체 이동 가이드 정보에 대응하는 사용자의 응답에 기초하여, 태스크를 수행하는데 이용되는 이동 경로를 결정할 수 있다. 일 실시예에 따르면, 프로세서(120)는 사용자의 응답에 기초하여, 태스크에 방해가 되는 객체로 선정된 객체 중 이동된 객체를 확인하고, 태스크에 대응되는 공간에서 이동된 객체를 반영한 이동 경로를 획득할 수 있다.According to one embodiment of the present disclosure, the processor 120 executes one or more instructions stored in the memory 110 to determine the movement path used to perform the task based on the user's response corresponding to the object movement guide information. You can decide. According to one embodiment, based on the user's response, the processor 120 identifies the moved object among the objects selected as objects interfering with the task, and creates a movement path reflecting the moved object in the space corresponding to the task. It can be obtained.

본 개시의 일 실시예에 따르면, 프로세서(120)는 메모리(110)에 저장된 하나 이상의 인스트럭션을 실행함으로써, 결정된 이동 경로에 따라 전자 장치(100)를 구동할 수 있다. 전자 장치(100)가 이동 경로에 따라 주행하는 중에 예상치 못한 객체 또는 이동되었을 것으로 판단한 객체가 감지되는 경우, 프로세서(120)는 이와 같은 객체를 우회한 후 다시 이동 경로에 따라 전자 장치(100)를 구동하거나, 사용자에게 해당 객체의 존재를 알릴 수 있다.According to an embodiment of the present disclosure, the processor 120 may drive the electronic device 100 according to the determined movement path by executing one or more instructions stored in the memory 110. If an unexpected object or an object judged to have been moved is detected while the electronic device 100 is driving along the movement path, the processor 120 bypasses such an object and then moves the electronic device 100 again along the movement path. You can run it or notify the user of the existence of the object.

한편, 본 개시의 실시예들은 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스 될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독 가능 매체는 컴퓨터 저장 매체 및 통신 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독 가능 명령어, 데이터 구조, 또는 프로그램 모듈과 같은 변조된 데이터 신호의 기타 데이터를 포함할 수 있다.Meanwhile, embodiments of the present disclosure may also be implemented in the form of a recording medium containing instructions executable by a computer, such as program modules executed by a computer. Computer-readable media can be any available media that can be accessed by a computer and includes both volatile and non-volatile media, removable and non-removable media. Additionally, computer-readable media may include computer storage media and communication media. Computer storage media includes both volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules, or other data. Communication media typically may include computer-readable instructions, data structures, or other data, such as modulated data signals, or program modules.

또한, 컴퓨터에 의해 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적 저장매체'는 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다. 예로, '비일시적 저장매체'는 데이터가 임시적으로 저장되는 버퍼를 포함할 수 있다.Additionally, computer-readable storage media may be provided in the form of non-transitory storage media. Here, 'non-transitory storage medium' only means that it is a tangible device and does not contain signals (e.g. electromagnetic waves). This term refers to cases where data is semi-permanently stored in a storage medium and temporary storage media. It does not distinguish between cases where it is stored as . For example, a 'non-transitory storage medium' may include a buffer where data is temporarily stored.

일 실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어를 통해 또는 두개의 사용자 장치들(예: 스마트폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품(예: 다운로더블 앱(downloadable app))의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.According to one embodiment, methods according to various embodiments disclosed in this document may be provided and included in a computer program product. Computer program products are commodities and can be traded between sellers and buyers. A computer program product may be distributed in the form of a machine-readable storage medium (e.g. compact disc read only memory (CD-ROM)) or through an application store or between two user devices (e.g. smartphones). It may be distributed in person or online (e.g., downloaded or uploaded). In the case of online distribution, at least a portion of the computer program product (e.g., a downloadable app) is stored on a machine-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or a relay server. It can be temporarily stored or created temporarily.

본 개시의 일 실시예에 따르면, 공간 정보를 이용하여 전자 장치(100)를 제어하는 방법이 제공된다. 공간 정보를 이용하여 전자 장치(100)를 제어하는 방법은 적어도 하나의 객체를 포함하는 공간에 대한 공간 정보와 전자 장치(100)가 수행하도록 설정된 태스크에 기초하여, 태스크에 대응되는 공간에 위치한 객체 중 태스크에 방해가 되는 객체를 선정하는 단계(S510)를 포함한다. 또한, 공간 정보를 이용하여 전자 장치(100)를 제어하는 방법은 선정된 객체의 속성 정보에 따른 객체 이동 가이드 정보를 전자 장치(100)의 사용자에게 제공하는 단계(S520)를 포함한다. 또한, 공간 정보를 이용하여 전자 장치(100)를 제어하는 방법은 객체 이동 가이드 정보에 대응하는 사용자의 응답에 기초하여 태스크를 수행하는데 이용되는 이동 경로를 결정하는 단계(S530)를 포함한다. 또한, 공간 정보를 이용하여 전자 장치(100)를 제어하는 방법은 결정된 이동 경로에 따라 전자 장치(100)를 구동하는 단계(S540)를 포함한다.According to an embodiment of the present disclosure, a method of controlling an electronic device 100 using spatial information is provided. A method of controlling the electronic device 100 using spatial information is based on spatial information about a space containing at least one object and a task that the electronic device 100 is set to perform, and an object located in the space corresponding to the task. It includes a step (S510) of selecting an object that interferes with the task. Additionally, the method of controlling the electronic device 100 using spatial information includes providing object movement guide information according to attribute information of the selected object to the user of the electronic device 100 (S520). Additionally, the method of controlling the electronic device 100 using spatial information includes determining a movement path used to perform a task based on a user's response corresponding to object movement guide information (S530). Additionally, the method of controlling the electronic device 100 using spatial information includes driving the electronic device 100 according to the determined movement path (S540).

또한, 본 개시의 일 실시예에 따르면, 태스크에 방해가 되는 객체를 선정하는 단계(S510)는 공간 정보로써 공간 맵을 획득하는 단계(S610)를 포함한다. 또한, 태스크에 방해가 되는 객체를 선정하는 단계(S510)는 획득된 공간 맵을 이용하여 태스크의 처리에 대한 예측을 분석하는 단계(S620)를 포함한다. 또한, 태스크에 방해가 되는 객체를 선정하는 단계(S510)는 분석 결과에 기초하여, 태스크에 방해가 되는 적어도 하나의 객체를 결정하는 단계(S630)를 포함한다.Additionally, according to an embodiment of the present disclosure, the step of selecting an object that interferes with the task (S510) includes the step of acquiring a spatial map as spatial information (S610). Additionally, the step of selecting an object that interferes with the task (S510) includes the step of analyzing a prediction about processing of the task using the obtained spatial map (S620). Additionally, the step of selecting an object that interferes with the task (S510) includes a step of determining at least one object that interferes with the task based on the analysis result (S630).

또한, 공간 맵을 획득하는 단계(S610)는 전자 장치(100)에 저장된 제1 공간 맵과 전자 장치(100)와 통신이 가능한 외부 장치로부터 수신된 제2 공간 맵 중 적어도 하나에 기초하여, 공간 맵을 획득한다.In addition, the step of acquiring a spatial map (S610) is based on at least one of the first spatial map stored in the electronic device 100 and the second spatial map received from an external device capable of communicating with the electronic device 100, Obtain the map.

또한, 예측을 분석하는 단계(S620)는 태스크를 수행하기 위한 전자 장치(100)의 가상 이동 경로 상의 적어도 하나의 분기점 및 적어도 하나의 객체의 위치에 기초하여 구분되는 복수의 이동 경로들에 따른 태스크의 처리에 대한 예측 결과들을 비교하여 분석한다.In addition, the step of analyzing the prediction (S620) is a task according to a plurality of movement paths divided based on the location of at least one branch and at least one object on the virtual movement path of the electronic device 100 for performing the task. Compare and analyze the predicted results for processing.

또한, 본 개시의 일 실시예에 따르면, 객체 이동 가이드 정보를 전자 장치(100)의 사용자에게 제공하는 단계(S520)는 선정된 객체의 속성 정보를 확인하는 단계(S710)를 포함한다. 또한, 객체 이동 가이드 정보를 전자 장치(100)의 사용자에게 제공하는 단계(S520)는 확인된 객체의 속성 정보에 대응되는 이동 리퀘스트 프로세스를 실행하여, 객체 이동 가이드 정보를 사용자에게 제공하는 단계(S720, S730, S740, S750);를 포함한다.Additionally, according to an embodiment of the present disclosure, the step of providing object movement guide information to the user of the electronic device 100 (S520) includes the step of checking attribute information of the selected object (S710). In addition, the step of providing object movement guide information to the user of the electronic device 100 (S520) includes executing a movement request process corresponding to the attribute information of the identified object and providing object movement guide information to the user (S720). , S730, S740, S750);

또한, 사용자에게 제공하는 단계(S730)는 태스크의 처리에 대한 예측을 분석한 분석 결과 및 객체 이동 가이드 정보를 사용자의 사용자 단말로 전송하는 단계(S810)를 포함한다.In addition, the step of providing to the user (S730) includes the step of transmitting the analysis result of analyzing the prediction of the processing of the task and the object movement guide information to the user's user terminal (S810).

또한, 사용에게 제공하는 단계(S740)는 선정된 객체가 위치한 지역의 3차원 공간 맵에서 선정된 객체를 이동시킬 후보 위치들을 선정하는 단계(S1110, S1120)를 포함한다. 또한, 사용에게 제공하는 단계(S740)는 각 후보 위치 별로 선정된 객체 이동 시의 영상을 획득하는 단계(S1130)를 포함한다. 또한, 사용에게 제공하는 단계(S740)는 영상 평가 모델에 획득된 영상을 입력하여, 영상 평가 모델을 통해 영상을 평가하는 단계(S1140)를 포함한다. 또한, 사용에게 제공하는 단계(S740)는 영상 평가 결과에 따른 객체 이동 가이드 정보를 사용자의 사용자 단말로 전송하는 단계(S1150)를 포함한다.In addition, the step of providing to use (S740) includes the step of selecting candidate positions to move the selected object in the 3D spatial map of the area where the selected object is located (S1110, S1120). In addition, the step of providing to the user (S740) includes the step of acquiring an image when the object selected for each candidate location moves (S1130). Additionally, the step of providing for use (S740) includes inputting the acquired image into an image evaluation model and evaluating the image through the image evaluation model (S1140). Additionally, the step of providing to the user (S740) includes the step of transmitting object movement guide information according to the image evaluation results to the user's user terminal (S1150).

또한, 본 개시의 일 실시예에 따르면, 이동 경로를 결정하는 단계(S530)는 사용자의 응답에 기초하여, 선정된 객체 중 이동된 객체를 확인하는 단계(S1410)를 포함한다. 또한, 이동 경로를 결정하는 단계(S530)는 태스크에 대응되는 공간에서 이동된 객체를 반영한 이동 경로를 획득하는 단계(S1420)를 포함한다.Additionally, according to an embodiment of the present disclosure, the step of determining the movement path (S530) includes the step of confirming the moved object among the selected objects based on the user's response (S1410). Additionally, the step of determining the movement path (S530) includes the step of obtaining a movement path that reflects the object moved in the space corresponding to the task (S1420).

또한, 본 개시의 일 실시예에 따르면, 전자 장치(100)는 로봇 청소기이다.Additionally, according to an embodiment of the present disclosure, the electronic device 100 is a robot cleaner.

본 개시의 일 실시예에 따르면, 전술한 방법을 실행시키기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체를 제공할 수 있다.According to one embodiment of the present disclosure, a computer-readable recording medium on which a program for executing the above-described method is recorded can be provided.

본 개시의 일 실시예에 따르면, 공간 정보를 이용하는 전자 장치(100)가 제공된다. 공간 정보를 이용하는 전자 장치(100)는 메모리(110), 메모리(110)에 저장된 하나 이상의 인스트럭션을 실행하는 프로세서(120), 및 센싱부(130)를 포함한다. 프로세서(120)는 하나 이상의 인스트럭션을 실행함으로써, 센싱부(130)를 통해 획득된 적어도 하나의 객체를 포함하는 공간에 대한 공간 정보와 전자 장치(100)가 수행하도록 설정된 태스크에 기초하여, 태스크에 대응되는 공간에 위치한 객체 중 태스크에 방해가 되는 객체를 선정한다. 또한, 프로세서(120)는 하나 이상의 인스트럭션을 실행함으로써, 선정된 객체의 속성 정보에 따른 객체 이동 가이드 정보를 전자 장치(100)의 사용자에게 제공한다. 또한, 프로세서(120)는 하나 이상의 인스트럭션을 실행함으로써, 객체 이동 가이드 정보에 대응하는 사용자의 응답에 기초하여, 태스크를 수행하는데 이용되는 이동 경로를 결정한다. 또한, 프로세서(120)는 하나 이상의 인스트럭션을 실행함으로써, 결정된 이동 경로에 따라 전자 장치(100)를 구동한다.According to an embodiment of the present disclosure, an electronic device 100 that uses spatial information is provided. The electronic device 100 that uses spatial information includes a memory 110, a processor 120 that executes one or more instructions stored in the memory 110, and a sensing unit 130. The processor 120 executes one or more instructions, based on spatial information about a space containing at least one object obtained through the sensing unit 130 and a task that the electronic device 100 is set to perform. Among the objects located in the corresponding space, select the object that interferes with the task. Additionally, the processor 120 provides object movement guide information according to attribute information of the selected object to the user of the electronic device 100 by executing one or more instructions. Additionally, the processor 120 determines a movement path used to perform a task based on the user's response corresponding to the object movement guide information by executing one or more instructions. Additionally, the processor 120 drives the electronic device 100 according to the determined movement path by executing one or more instructions.

또한, 본 개시의 일 실시예에 따르면, 프로세서(120)는 하나 이상의 인스트럭션을 실행함으로써, 공간 정보로써 공간 맵을 획득한다. 또한, 프로세서(120)는 하나 이상의 인스트럭션을 실행함으로써, 획득된 공간 맵을 이용하여 태스크의 처리에 대한 예측을 분석한다. 또한, 프로세서(120)는 하나 이상의 인스트럭션을 실행함으로써, 분석 결과에 기초하여, 태스크에 방해가 되는 적어도 하나의 객체를 결정한다.Additionally, according to an embodiment of the present disclosure, the processor 120 obtains a spatial map as spatial information by executing one or more instructions. Additionally, the processor 120 analyzes a prediction for processing of a task using the spatial map obtained by executing one or more instructions. Additionally, the processor 120 determines at least one object that interferes with the task based on the analysis result by executing one or more instructions.

또한, 프로세서(120)는 하나 이상의 인스트럭션을 실행함으로써, 전자 장치(100)에 저장된 제1 공간 맵과 전자 장치(100)와 통신이 가능한 외부 장치로부터 수신된 제2 공간 맵 중 적어도 하나에 기초하여, 공간 맵을 획득한다.Additionally, the processor 120 executes one or more instructions based on at least one of a first spatial map stored in the electronic device 100 and a second spatial map received from an external device capable of communicating with the electronic device 100. , obtain the spatial map.

또한, 프로세서(120)는 하나 이상의 인스트럭션을 실행함으로써, 태스크를 수행하기 위한 전자 장치(100)의 가상 이동 경로 상의 적어도 하나의 분기점 및 적어도 하나의 객체의 위치에 기초하여 구분되는 복수의 이동 경로들에 따른 태스크의 처리에 대한 예측 결과들을 비교하여 분석한다.Additionally, the processor 120 executes one or more instructions, thereby creating a plurality of movement paths divided based on the location of at least one branch and at least one object on the virtual movement path of the electronic device 100 for performing the task. Compare and analyze the predicted results for processing tasks according to .

또한, 공간 맵은 객체의 속성 정보에 기초한 복수의 레이어들을 포함한다. Additionally, the spatial map includes a plurality of layers based on attribute information of objects.

또한, 본 개시의 일 실시예에 따르면, 프로세서(120)는 하나 이상의 인스트럭션을 실행함으로써, 선정된 객체의 속성 정보를 확인한다. 또한, 프로세서(120)는 하나 이상의 인스트럭션을 실행함으로써, 확인된 객체의 속성 정보에 대응되는 이동 리퀘스트 프로세스를 실행하여, 객체 이동 가이드 정보를 사용자에게 제공한다.Additionally, according to an embodiment of the present disclosure, the processor 120 verifies attribute information of the selected object by executing one or more instructions. Additionally, the processor 120 executes a movement request process corresponding to attribute information of the identified object by executing one or more instructions, and provides object movement guide information to the user.

또한, 공간 정보를 이용하는 전자 장치(100)는 통신부(150)를 더 포함한다. 또한, 프로세서(120)는 하나 이상의 인스트럭션을 실행함으로써, 태스크의 처리에 대한 예측을 분석한 분석 결과 및 객체 이동 가이드 정보를 통신부(150)를 통해서 사용자의 사용자 단말(400)로 전송한다.Additionally, the electronic device 100 that uses spatial information further includes a communication unit 150. Additionally, the processor 120 executes one or more instructions and transmits analysis results of predictions for task processing and object movement guide information to the user's user terminal 400 through the communication unit 150.

또한, 공간 정보를 이용하는 전자 장치(100)는 통신부(150)를 더 포함한다. 또한, 프로세서(120)는 하나 이상의 인스트럭션을 실행함으로써, 선정된 객체가 위치한 지역의 3차원 공간 맵에서 선정된 객체를 이동시킬 후보 위치들을 선정한다. 또한, 프로세서(120)는 하나 이상의 인스트럭션을 실행함으로써, 각 후보 위치 별로 선정된 객체 이동 시의 영상을 획득한다. 또한, 프로세서(120)는 하나 이상의 인스트럭션을 실행함으로써, 영상 평가 모델에 획득된 영상을 입력하여, 영상 평가 모델을 통해 영상을 평가한다. 또한, 프로세서(120)는 하나 이상의 인스트럭션을 실행함으로써, 영상 평가 결과에 따른 객체 이동 가이드 정보를 통신부(150)를 통해 사용자의 사용자 단말(400)로 전송한다.Additionally, the electronic device 100 that uses spatial information further includes a communication unit 150. Additionally, the processor 120 executes one or more instructions to select candidate locations to move the selected object in the 3D spatial map of the area where the selected object is located. Additionally, the processor 120 executes one or more instructions to obtain an image when an object selected for each candidate location moves. Additionally, the processor 120 inputs the acquired image into an image evaluation model by executing one or more instructions, and evaluates the image through the image evaluation model. Additionally, the processor 120 transmits object movement guide information according to the image evaluation results to the user's user terminal 400 through the communication unit 150 by executing one or more instructions.

또한, 본 개시의 일 실시예에 따르면, 프로세서(120)는 하나 이상의 인스트럭션을 실행함으로써, 사용자의 응답에 기초하여, 선정된 객체 중 이동된 객체를 확인한다. 또한, 프로세서(120)는 하나 이상의 인스트럭션을 실행함으로써, 태스크에 대응되는 공간에서 이동된 객체를 반영한 이동 경로를 획득한다.Additionally, according to an embodiment of the present disclosure, the processor 120 executes one or more instructions to confirm the moved object among the selected objects based on the user's response. Additionally, the processor 120 executes one or more instructions to obtain a movement path reflecting the moved object in the space corresponding to the task.

또한, 본 개시의 일 실시예에 따르면, 전자 장치(100)는 로봇 청소기이다.Additionally, according to an embodiment of the present disclosure, the electronic device 100 is a robot cleaner.

전술한 본 개시의 설명은 예시를 위한 것이며, 본 개시가 속하는 기술분야의 통상의 지식을 가진 자는 본 개시의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The foregoing description of the present disclosure is for illustrative purposes, and a person skilled in the art to which the present disclosure pertains will understand that the present disclosure can be easily modified into another specific form without changing its technical idea or essential features. will be. Therefore, the embodiments described above should be understood in all respects as illustrative and not restrictive. For example, each component described as single may be implemented in a distributed manner, and similarly, components described as distributed may also be implemented in a combined form.

본 개시의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 개시의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present disclosure is indicated by the claims described below rather than the detailed description above, and all changes or modified forms derived from the meaning and scope of the claims and their equivalent concepts should be construed as being included in the scope of the present disclosure. do.

Claims (20)

적어도 하나의 객체를 포함하는 공간에 대한 공간 정보와 상기 전자 장치(100)가 수행하도록 설정된 태스크에 기초하여, 상기 태스크에 대응되는 공간에 위치한 객체 중 상기 태스크에 방해가 되는 객체를 선정하는 단계(S510);
상기 선정된 객체의 속성 정보에 따른 객체 이동 가이드 정보를 상기 전자 장치(100)의 사용자에게 제공하는 단계(S520);
상기 객체 이동 가이드 정보에 대응하는 상기 사용자의 응답에 기초하여 상기 태스크를 수행하는데 이용되는 이동 경로를 결정하는 단계(S530); 및
상기 결정된 이동 경로에 따라 상기 전자 장치(100)를 구동하는 단계(S540);
를 포함하는, 공간 정보를 이용하여 전자 장치(100)를 제어하는 방법.
Based on spatial information about a space including at least one object and a task that the electronic device 100 is set to perform, selecting an object that interferes with the task among objects located in a space corresponding to the task ( S510);
Providing object movement guide information according to attribute information of the selected object to the user of the electronic device 100 (S520);
determining a movement path used to perform the task based on the user's response corresponding to the object movement guide information (S530); and
Driving the electronic device 100 according to the determined movement path (S540);
A method of controlling the electronic device 100 using spatial information, including.
제1 항에 있어서,
상기 태스크에 방해가 되는 객체를 선정하는 단계(S510)는,
상기 공간 정보로써 공간 맵을 획득하는 단계(S610);
상기 획득된 공간 맵을 이용하여 상기 태스크의 처리에 대한 예측을 분석하는 단계(S620); 및
상기 분석 결과에 기초하여, 상기 태스크에 방해가 되는 적어도 하나의 객체를 결정하는 단계(S630);
를 포함하는, 방법.
According to claim 1,
The step of selecting an object that interferes with the task (S510) is,
Obtaining a spatial map using the spatial information (S610);
Analyzing a prediction for processing of the task using the obtained spatial map (S620); and
Based on the analysis result, determining at least one object that interferes with the task (S630);
Method, including.
제1 항 또는 제2 항에 있어서,
상기 공간 맵을 획득하는 단계(S610)는,
상기 전자 장치(100)에 저장된 제1 공간 맵과 상기 전자 장치(100)와 통신이 가능한 외부 장치로부터 수신된 제2 공간 맵 중 적어도 하나에 기초하여, 상기 공간 맵을 획득하는, 방법.
According to claim 1 or 2,
The step of acquiring the spatial map (S610) is,
A method of acquiring the spatial map based on at least one of a first spatial map stored in the electronic device 100 and a second spatial map received from an external device capable of communicating with the electronic device 100.
제1 항 내지 제3 항 중 어느 한 항에 있어서,
상기 예측을 분석하는 단계(S620)는,
상기 태스크를 수행하기 위한 전자 장치(100)의 가상 이동 경로 상의 적어도 하나의 분기점 및 적어도 하나의 객체의 위치에 기초하여 구분되는 복수의 이동 경로들에 따른 상기 태스크의 처리에 대한 예측 결과들을 비교하여 분석하는, 방법.
According to any one of claims 1 to 3,
The step of analyzing the prediction (S620) is,
Comparing prediction results for processing of the task according to a plurality of movement paths divided based on the location of at least one branch and at least one object on the virtual movement path of the electronic device 100 for performing the task How to analyze.
제1 항 내지 제4 항 중 어느 한 항에 있어서,
상기 제공하는 단계(S520)는,
상기 선정된 객체의 속성 정보를 확인하는 단계(S710); 및
상기 확인된 객체의 속성 정보에 대응되는 이동 리퀘스트 프로세스를 실행하여, 상기 객체 이동 가이드 정보를 상기 사용자에게 제공하는 단계(S720, S730, S740, S750);를 포함하는, 방법.
According to any one of claims 1 to 4,
The providing step (S520) is,
Confirming attribute information of the selected object (S710); and
A method comprising: executing a movement request process corresponding to the attribute information of the identified object and providing the object movement guide information to the user (S720, S730, S740, S750).
제1 항 내지 제5 항 중 어느 한 항에 있어서,
상기 사용자에게 제공하는 단계(S730)는,
상기 태스크의 처리에 대한 예측을 분석한 분석 결과 및 상기 객체 이동 가이드 정보를 상기 사용자의 사용자 단말로 전송하는 단계(S810)를 포함하는, 방법.
According to any one of claims 1 to 5,
The step of providing to the user (S730) is,
Method comprising transmitting the analysis result of the prediction of processing of the task and the object movement guide information to the user's user terminal (S810).
제1 항 내지 제6 항 중 어느 한 항에 있어서,
상기 사용에게 제공하는 단계(S740)는,
상기 선정된 객체가 위치한 지역의 3차원 공간 맵에서 상기 선정된 객체를 이동시킬 후보 위치들을 선정하는 단계(S1110, S1120);
각 후보 위치 별로 상기 선정된 객체 이동 시의 영상을 획득하는 단계(S1130);
영상 평가 모델에 상기 획득된 영상을 입력하여, 상기 영상 평가 모델을 통해 영상을 평가하는 단계(S1140); 및
상기 영상 평가 결과에 따른 상기 객체 이동 가이드 정보를 상기 사용자의 사용자 단말로 전송하는 단계(S1150);
를 포함하는, 방법.
The method according to any one of claims 1 to 6,
The step of providing to the user (S740) is,
Selecting candidate locations to move the selected object in a three-dimensional space map of the area where the selected object is located (S1110, S1120);
Obtaining an image when the selected object moves for each candidate location (S1130);
Inputting the acquired image into an image evaluation model and evaluating the image through the image evaluation model (S1140); and
Transmitting the object movement guide information according to the image evaluation results to the user's user terminal (S1150);
Method, including.
제1 항 내지 제7 항 중 어느 한 항에 있어서,
상기 이동 경로를 결정하는 단계(S530)는,
상기 사용자의 응답에 기초하여, 상기 선정된 객체 중 이동된 객체를 확인하는 단계(S1410); 및
상기 태스크에 대응되는 공간에서 상기 이동된 객체를 반영한 상기 이동 경로를 획득하는 단계(S1420);
를 포함하는, 방법.
The method according to any one of claims 1 to 7,
The step of determining the movement path (S530) is,
Based on the user's response, confirming the moved object among the selected objects (S1410); and
Obtaining the movement path reflecting the moved object in a space corresponding to the task (S1420);
Method, including.
제1 항 내지 제8 항 중 어느 한 항에 있어서,
상기 전자 장치(100)는 로봇 청소기인, 방법.
The method according to any one of claims 1 to 8,
The method of claim 1, wherein the electronic device 100 is a robot vacuum cleaner.
제1 항 내지 제9 항 중 어느 한 항의 방법을 실행시키기 위한 프로그램이 기록된 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium on which a program for executing the method of any one of claims 1 to 9 is recorded. 하나 이상의 인스트럭션을 저장하는 메모리(110);
상기 메모리(110)에 저장된 상기 하나 이상의 인스트럭션을 실행하는 프로세서(120); 및
센싱부(130)를 포함하고,
상기 프로세서(120)는 상기 하나 이상의 인스트럭션을 실행함으로써,
상기 센싱부(130)를 통해 획득된 적어도 하나의 객체를 포함하는 공간에 대한 공간 정보와 전자 장치(100)가 수행하도록 설정된 태스크에 기초하여, 상기 태스크에 대응되는 공간에 위치한 객체 중 상기 태스크에 방해가 되는 객체를 선정하고, 상기 선정된 객체의 속성 정보에 따른 객체 이동 가이드 정보를 상기 전자 장치(100)의 사용자에게 제공하고, 상기 객체 이동 가이드 정보에 대응하는 상기 사용자의 응답에 기초하여, 상기 태스크를 수행하는데 이용되는 이동 경로를 결정하고, 상기 결정된 이동 경로에 따라 상기 전자 장치(100)를 구동하는, 공간 정보를 이용하는 전자 장치(100).
a memory 110 that stores one or more instructions;
a processor 120 that executes the one or more instructions stored in the memory 110; and
Includes a sensing unit 130,
The processor 120 executes the one or more instructions,
Based on spatial information about a space containing at least one object acquired through the sensing unit 130 and a task that the electronic device 100 is set to perform, select the task from among objects located in the space corresponding to the task. Selecting an object that is in the way, providing object movement guide information according to attribute information of the selected object to the user of the electronic device 100, and based on the user's response corresponding to the object movement guide information, An electronic device (100) using spatial information that determines a movement path used to perform the task and drives the electronic device (100) according to the determined movement path.
제11 항에 있어서,
상기 프로세서(120)는 상기 하나 이상의 인스트럭션을 실행함으로써,
상기 공간 정보로써 공간 맵을 획득하고, 상기 획득된 공간 맵을 이용하여 상기 태스크의 처리에 대한 예측을 분석하고, 상기 분석 결과에 기초하여, 상기 태스크에 방해가 되는 적어도 하나의 객체를 결정하는, 전자 장치(100).
According to claim 11,
The processor 120 executes the one or more instructions,
Obtaining a spatial map using the spatial information, analyzing a prediction for processing of the task using the obtained spatial map, and determining at least one object that interferes with the task based on the analysis result, Electronic device (100).
제11 항 또는 제12 항에 있어서,
상기 프로세서(120)는 상기 하나 이상의 인스트럭션을 실행함으로써,
상기 전자 장치(100)에 저장된 제1 공간 맵과 상기 전자 장치(100)와 통신이 가능한 외부 장치로부터 수신된 제2 공간 맵 중 적어도 하나에 기초하여, 상기 공간 맵을 획득하는, 전자 장치(100).
The method of claim 11 or 12,
The processor 120 executes the one or more instructions,
An electronic device 100 that acquires the spatial map based on at least one of a first spatial map stored in the electronic device 100 and a second spatial map received from an external device capable of communicating with the electronic device 100. ).
제11 항 내지 제13 항 중 어느 한 항에 있어서,
상기 프로세서(120)는 상기 하나 이상의 인스트럭션을 실행함으로써,
상기 태스크를 수행하기 위한 전자 장치(100)의 가상 이동 경로 상의 적어도 하나의 분기점 및 적어도 하나의 객체의 위치에 기초하여 구분되는 복수의 이동 경로들에 따른 상기 태스크의 처리에 대한 예측 결과들을 비교하여 분석하는, 전자 장치(100).
The method according to any one of claims 11 to 13,
The processor 120 executes the one or more instructions,
Comparing prediction results for processing of the task according to a plurality of movement paths divided based on the location of at least one branch and at least one object on the virtual movement path of the electronic device 100 for performing the task Analyzing, electronic device 100.
제11 항 내지 제14 항 중 어느 한 항에 있어서,
상기 공간 맵은 객체의 속성 정보에 기초한 복수의 레이어들을 포함하는, 전자 장치(100).
The method according to any one of claims 11 to 14,
The spatial map includes a plurality of layers based on attribute information of objects.
제11 항 내지 제15 항 중 어느 한 항에 있어서,
상기 프로세서(120)는 상기 하나 이상의 인스트럭션을 실행함으로써,
상기 선정된 객체의 속성 정보를 확인하고, 상기 확인된 객체의 속성 정보에 대응되는 이동 리퀘스트 프로세스를 실행하여, 상기 객체 이동 가이드 정보를 상기 사용자에게 제공하는, 전자 장치(100).
The method according to any one of claims 11 to 15,
The processor 120 executes the one or more instructions,
The electronic device 100 checks attribute information of the selected object, executes a movement request process corresponding to the attribute information of the confirmed object, and provides object movement guide information to the user.
제11 항 내지 제16 항 중 어느 한 항에 있어서,
통신부(150)를 더 포함하고,
상기 프로세서(120)는 상기 하나 이상의 인스트럭션을 실행함으로써,
상기 태스크의 처리에 대한 예측을 분석한 분석 결과 및 상기 객체 이동 가이드 정보를 상기 통신부(150)를 통해서 상기 사용자의 사용자 단말(400)로 전송하는, 전자 장치(100).
The method according to any one of claims 11 to 16,
Further comprising a communication unit 150,
The processor 120 executes the one or more instructions,
An electronic device (100) that transmits analysis results of predictions for processing of the task and the object movement guide information to the user's user terminal (400) through the communication unit (150).
제11 항 내지 제17 항 중 어느 한 항에 있어서,
통신부(150)를 더 포함하고,
상기 프로세서(120)는 상기 하나 이상의 인스트럭션을 실행함으로써,
상기 선정된 객체가 위치한 지역의 3차원 공간 맵에서 상기 선정된 객체를 이동시킬 후보 위치들을 선정하고, 각 후보 위치 별로 상기 선정된 객체 이동 시의 영상을 획득하고, 영상 평가 모델에 상기 획득된 영상을 입력하여, 상기 영상 평가 모델을 통해 영상을 평가하고, 상기 영상 평가 결과에 따른 상기 객체 이동 가이드 정보를 상기 통신부(150)를 통해 상기 사용자의 사용자 단말(400)로 전송하는, 전자 장치(100).
The method according to any one of claims 11 to 17,
Further comprising a communication unit 150,
The processor 120 executes the one or more instructions,
Select candidate locations to move the selected object from a 3D space map of the area where the selected object is located, obtain an image when the selected object moves for each candidate location, and input the obtained image into an image evaluation model. An electronic device 100 that inputs, evaluates an image through the image evaluation model, and transmits the object movement guide information according to the image evaluation result to the user's user terminal 400 through the communication unit 150. ).
제11 항 내지 제18 항 중 어느 한 항에 있어서,
상기 프로세서(120)는 상기 하나 이상의 인스트럭션을 실행함으로써,
상기 사용자의 응답에 기초하여, 상기 선정된 객체 중 이동된 객체를 확인하고, 상기 태스크에 대응되는 공간에서 상기 이동된 객체를 반영한 상기 이동 경로를 획득하는, 전자 장치(100).
The method according to any one of claims 11 to 18,
The processor 120 executes the one or more instructions,
Based on the user's response, the electronic device 100 identifies a moved object among the selected objects and acquires the movement path reflecting the moved object in a space corresponding to the task.
제11 항 내지 제19 항 중 어느 한 항에 있어서,
상기 전자 장치(100)는 로봇 청소기인, 전자 장치(100).
The method according to any one of claims 11 to 19,
The electronic device 100 is a robot vacuum cleaner.
KR1020220148977A 2022-10-07 2022-11-09 Method for controlling electronic device using spatial information and electronic device using spatial information KR20240049072A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/KR2023/010655 WO2024075949A1 (en) 2022-10-07 2023-07-24 Method for controlling electronic device by using spatial information and electronic device using spatial information
US18/364,901 US20240119604A1 (en) 2022-10-07 2023-08-03 Method of controlling electronic device by using spatial information and electronic device using spatial information

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20220129054 2022-10-07
KR1020220129054 2022-10-07

Publications (1)

Publication Number Publication Date
KR20240049072A true KR20240049072A (en) 2024-04-16

Family

ID=90882574

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220148977A KR20240049072A (en) 2022-10-07 2022-11-09 Method for controlling electronic device using spatial information and electronic device using spatial information

Country Status (1)

Country Link
KR (1) KR20240049072A (en)

Similar Documents

Publication Publication Date Title
US11961285B2 (en) System for spot cleaning by a mobile robot
EP3508937B1 (en) Mobile cleaning robot artificial intelligence for situational awareness
US20230280743A1 (en) Mobile Robot Cleaning System
EP3508938B1 (en) Mobile cleaning robot teaming and persistent mapping
US11132000B2 (en) Robot with automatic styles
KR102255273B1 (en) Apparatus and method for generating map data of cleaning space
KR102577785B1 (en) Cleaning robot and Method of performing task thereof
US20200097012A1 (en) Cleaning robot and method for performing task thereof
US11471016B2 (en) Method and apparatus for executing cleaning operation
US20210121035A1 (en) Robot cleaner and method of operating the same
KR20190093529A (en) Artificial intelligence for guiding arrangement location of air cleaning device and operating method thereof
US11654554B2 (en) Artificial intelligence cleaning robot and method thereof
US20210259498A1 (en) Plurality of autonomous cleaner and controlling method for the same
KR20230134109A (en) Cleaning robot and Method of performing task thereof
KR20240049072A (en) Method for controlling electronic device using spatial information and electronic device using spatial information
US20240119604A1 (en) Method of controlling electronic device by using spatial information and electronic device using spatial information
KR20230033980A (en) Delivery robot and control method of the delivery robot
US20240135686A1 (en) Method and electronic device for training neural network model by augmenting image representing object captured by multiple cameras
KR20240057297A (en) Method and electronic device for training nueral network model
US20240176362A1 (en) Robot cleaner and location identification method thereof