[go: up one dir, main page]

KR102415820B1 - Control method, device and program of smart device system using artificial intelligence based surface recognition method - Google Patents

Control method, device and program of smart device system using artificial intelligence based surface recognition method Download PDF

Info

Publication number
KR102415820B1
KR102415820B1 KR1020190162696A KR20190162696A KR102415820B1 KR 102415820 B1 KR102415820 B1 KR 102415820B1 KR 1020190162696 A KR1020190162696 A KR 1020190162696A KR 20190162696 A KR20190162696 A KR 20190162696A KR 102415820 B1 KR102415820 B1 KR 102415820B1
Authority
KR
South Korea
Prior art keywords
data
electronic device
shock
server
information
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020190162696A
Other languages
Korean (ko)
Other versions
KR20210072408A (en
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 KR1020190162696A priority Critical patent/KR102415820B1/en
Publication of KR20210072408A publication Critical patent/KR20210072408A/en
Application granted granted Critical
Publication of KR102415820B1 publication Critical patent/KR102415820B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Theoretical Computer Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • General Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Development Economics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Educational Administration (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Game Theory and Decision Science (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

스마트 기기 시스템의 제어 방법이 제공된다. 상기 스마트 기기 시스템의 제어 방법은, 상기 서버가, 표면 정보를 바탕으로 상기 전자 장치의 위치를 획득하기 위한 학습 데이터를 수집하는 단계; 상기 서버가, 상기 학습 데이터를 바탕으로 인공지능 모델을 학습시키는 단계; 상기 서버가, 상기 전자 장치로부터 전자 장치의 위치 획득을 위한 입력 데이터를 수신하는 단계; 상기 서버가, 상기 입력 데이터를 상기 인공지능 모델에 입력하여 상기 전자 장치의 표면 정보 및 위치 정보 중 적어도 하나를 획득하는 단계; 상기 서버가, 상기 획득된 상기 전자 장치의 표면 정보 및 위치 정보 중 적어도 하나를 바탕으로 상기 전자 장치가 제공할 서비스를 결정하는 단계; 및 상기 서버가, 상기 전자 장치로 상기 결정된 서비스에 대한 정보를 전송하는 단계; 를 포함한다.A method for controlling a smart device system is provided. The method for controlling the smart device system may include: collecting, by the server, learning data for acquiring a location of the electronic device based on surface information; learning, by the server, an artificial intelligence model based on the learning data; receiving, by the server, input data for obtaining a location of the electronic device from the electronic device; obtaining, by the server, at least one of surface information and location information of the electronic device by inputting the input data into the artificial intelligence model; determining, by the server, a service to be provided by the electronic device based on at least one of the acquired surface information and location information of the electronic device; and transmitting, by the server, information on the determined service to the electronic device. includes

Description

인공지능 기반 표면 인식 방법을 통한 스마트 기기 시스템의 제어 방법, 장치 및 프로그램{CONTROL METHOD, DEVICE AND PROGRAM OF SMART DEVICE SYSTEM USING ARTIFICIAL INTELLIGENCE BASED SURFACE RECOGNITION METHOD}CONTROL METHOD, DEVICE AND PROGRAM OF SMART DEVICE SYSTEM USING ARTIFICIAL INTELLIGENCE BASED SURFACE RECOGNITION METHOD

본 발명은 인공지능 기반 표면 인식 방법을 통한 스마트 기기 시스템의 제어 방법, 장치 및 프로그램에 관한 것이다. The present invention relates to a method, apparatus and program for controlling a smart device system through an artificial intelligence-based surface recognition method.

스마트 기기의 발전과 함께, 사용자에게 다양한 편의를 제공하기 위한 기술이 개발되고 있다. 특히 인공지능 스피커, 스마트 폰 등의 스마트 기기의 위치를 바탕으로, 해당 위치와 관련이 높은 서비스를 제공하여 사용자 경험을 증대시키기 위한 다양한 방법들이 제시되고 있다.With the development of smart devices, technologies for providing various conveniences to users are being developed. In particular, based on the location of smart devices such as artificial intelligence speakers and smart phones, various methods have been proposed to provide services highly related to the location to increase user experience.

이러한 서비스를 제공하기 위하여는 스마트 기기의 위치를 파악하는 것이 중요하다. 위치 파악을 위한 다양한 방법이 제시되고 있으나, 카메라를 이용한 위치 파악 방법은 조명 조건에 따른 영향을 크게 받거나, 사생활 침해의 이슈가 발생할 가능성이 존재한다. In order to provide these services, it is important to know the location of the smart device. Although various methods for determining a location have been proposed, the method for determining a location using a camera may be greatly affected by lighting conditions or may cause an issue of privacy.

이에, 스마트 기기의 위치를 파악하기 위한 기술 개발의 필요성이 증대되고 있다.Accordingly, the need for technology development for locating the location of the smart device is increasing.

공개특허공보 제 10-2005-0074897호, 2005.07.19Laid-Open Patent Publication No. 10-2005-0074897, 2005.07.19

본 발명이 해결하고자 하는 과제는 인공지능 기반 표면 인식 방법을 통한 스마트 기기 시스템의 제어 방법, 장치 및 프로그램을 제공하는 것이다.An object to be solved by the present invention is to provide a method, apparatus and program for controlling a smart device system through an artificial intelligence-based surface recognition method.

본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The problems to be solved by the present invention are not limited to the problems mentioned above, and other problems not mentioned will be clearly understood by those skilled in the art from the following description.

상술한 과제를 해결하기 위한 본 발명의 일 면에 따른 서버 및 전자 장치를 포함하는 스마트 기기 시스템의 제어 방법은, 상기 서버가, 표면 정보를 바탕으로 상기 전자 장치의 위치를 획득하기 위한 학습 데이터를 수집하는 단계; 상기 서버가, 상기 학습 데이터를 바탕으로 인공지능 모델을 학습시키는 단계; 상기 서버가, 상기 전자 장치로부터 전자 장치의 위치 획득을 위한 입력 데이터를 수신하는 단계; 상기 서버가, 상기 입력 데이터를 상기 인공지능 모델에 입력하여 상기 전자 장치의 표면 정보 및 위치 정보 중 적어도 하나를 획득하는 단계; 상기 서버가, 상기 획득된 상기 전자 장치의 표면 정보 및 위치 정보 중 적어도 하나를 바탕으로 상기 전자 장치가 제공할 서비스를 결정하는 단계; 및 상기 서버가, 상기 전자 장치로 상기 결정된 서비스에 대한 정보를 전송하는 단계; 를 포함한다.In a method for controlling a smart device system including a server and an electronic device according to an aspect of the present invention for solving the above-described problems, the server receives learning data for acquiring the location of the electronic device based on surface information collecting; learning, by the server, an artificial intelligence model based on the learning data; receiving, by the server, input data for obtaining a location of the electronic device from the electronic device; obtaining, by the server, at least one of surface information and location information of the electronic device by inputting the input data into the artificial intelligence model; determining, by the server, a service to be provided by the electronic device based on at least one of the acquired surface information and location information of the electronic device; and transmitting, by the server, information on the determined service to the electronic device. includes

이때, 상기 학습 데이터를 수집하는 단계는, 상기 전자 장치에 포함된 충격발생부가, 내부 충격 및 외부 충격 중 적어도 하나의 충격을 발생시키는 단계; 상기 전자 장치에 포함된 센서가, 상기 발생된 충격을 감지하는 단계; 및 상기 전자 장치가, 상기 감지된 충격 데이터를 상기 서버로 전송하는 단계; 를 포함할 수 있다.In this case, the collecting of the learning data may include: generating, by the shock generating unit included in the electronic device, at least one of an internal shock and an external shock; detecting, by a sensor included in the electronic device, the generated shock; and transmitting, by the electronic device, the sensed impact data to the server. may include

이때, 상기 학습 데이터를 수집하는 단계는, 상기 서버가, 상기 충격 데이터, 상기 충격 데이터에 대응되는 물체 정보 및 상기 물체가 위치한 공간 정보를 획득하는 단계; 및 상기 서버가, 상기 충격 데이터, 상기 충격 데이터에 대응되는 물체 정보 및 상기 물체가 위치한 공간 정보 중 적어도 두개를 매칭하여 상기 학습 데이터로 저장하는 단계; 를 포함할 수 있다.In this case, the collecting of the learning data may include: obtaining, by the server, the impact data, object information corresponding to the impact data, and spatial information in which the object is located; and storing, by the server, as the learning data by matching at least two of the impact data, object information corresponding to the impact data, and spatial information in which the object is located. may include

이때, 상기 충격 데이터는, IMU 센서에 의해 획득된 관성 데이터 및 마이크에 의해 획득된 오디오 데이터 중 적어도 하나의 데이터를 포함할 수 있다.In this case, the impact data may include at least one of inertial data acquired by the IMU sensor and audio data acquired by a microphone.

이때, 상기 인공지능 모델을 학습시키는 단계는, 상기 서버가, 내부 충격에 의해 발생된 제1 충격 데이터를 상기 학습 데이터로 획득하면, 상기 제1 충격 데이터를 제1 인공지능 모델에 입력하여 상기 제1 인공지능 모델을 학습시키는 단계; 및 상기 서버가, 외부 충격에 의해 발생된 제2 충격 데이터를 상기 학습 데이터로 획득하면, 상기 제2 충격 데이터를 제2 인공지능 모델에 입력하여 상기 제2 인공지능 모델을 학습시키는 단계; 를 포함할 수 있다.At this time, in the step of learning the artificial intelligence model, when the server acquires the first shock data generated by the internal shock as the learning data, the first shock data is input to the first artificial intelligence model to 1 training the artificial intelligence model; and when the server acquires the second shock data generated by the external shock as the learning data, inputting the second shock data into a second artificial intelligence model to learn the second artificial intelligence model; may include.

이때, 상기 입력 데이터를 수신하는 단계는, 상기 전자 장치에 포함된 충격발생부가, 내부 충격 및 외부 충격 중 적어도 하나의 충격을 발생시키는 단계; 상기 전자 장치에 포함된 센서가, 상기 발생된 내부 충격 및 상기 발생된 외부 충격 중 적어도 하나를 감지하는 단계; 및 상기 전자 장치가, 상기 감지된 내부 충격에 대한 제3 충격 데이터 및 상기 감지된 제4 충격 데이터 중 적어도 하나의 충격 데이터를 상기 서버로 전송하는 단계; 를 포함할 수 있다.In this case, the receiving of the input data may include: generating, by the shock generating unit included in the electronic device, at least one of an internal shock and an external shock; detecting, by a sensor included in the electronic device, at least one of the generated internal shock and the generated external shock; and transmitting, by the electronic device, shock data of at least one of a third shock data for the sensed internal shock and the sensed fourth shock data to the server. may include

이때, 상기 전자 장치의 표면 정보 및 위치 정보 중 적어도 하나를 획득하는 단계는, 상기 서버가, 상기 제3 충격 데이터를 상기 제1 인공지능 모델에 입력하여 제1 출력값으로 획득하는 단계; 상기 서버가, 상기 제4 충격 데이터를 상기 제2 인공지능 모델에 입력하여 제2 출력값으로 획득하는 단계; 및 상기 서버가, 상기 제1 출력값 및 상기 제2 출력값을 바탕으로 상기 전자 장치의 표면 정보 및 위치 정보 중 적어도 하나를 획득하는 단계; 를 포함할 수 있다.In this case, the step of obtaining at least one of the surface information and the location information of the electronic device may include: obtaining, by the server, the third impact data into the first artificial intelligence model as a first output value; obtaining, by the server, the fourth impact data as a second output value by inputting the fourth impact data into the second artificial intelligence model; and obtaining, by the server, at least one of surface information and location information of the electronic device based on the first output value and the second output value; may include

이때, 상기 전자 장치의 표면 정보 및 위치 정보 중 적어도 하나를 획득하는 단계는, 상기 제3 충격 데이터가 기 설정된 값 이하인 경우, 상기 제4 충격 데이터를 상기 제2 인공지능 모델에 입력하여 상기 전자 장치의 표면 정보 및 위치 정보 중 적어도 하나를 획득하는 단계; 및 상기 제4 충격 데이터가 기 설정된 값 이하인 경우, 상기 제3 충격 데이터를 상기 제1 인공지능 모델에 입력하여 상기 전자 장치의 표면 정보 및 위치 정보 중 적어도 하나를 획득하는 단계;를 포함할 수 있다.In this case, the obtaining of at least one of the surface information and the location information of the electronic device may include inputting the fourth impact data into the second artificial intelligence model when the third impact data is less than or equal to a preset value to the electronic device obtaining at least one of surface information and location information of and obtaining at least one of surface information and location information of the electronic device by inputting the third impact data into the first artificial intelligence model when the fourth impact data is equal to or less than a preset value. .

본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Other specific details of the invention are included in the detailed description and drawings.

상술한 본 발명의 다양한 실시예에 따라, 전자 장치는 내부 충격 또는 외부 충격을 이용하여 전자 장치가 위치한 장소의 표면 정보를 획득하고, 획득된 표면 정보를 바탕으로 위치 정보를 획득하여 사용자에게 다양한 서비스를 제공할 수 있다.According to the above-described various embodiments of the present invention, the electronic device obtains surface information of a place where the electronic device is located by using an internal shock or an external shock, and obtains location information based on the acquired surface information to provide various services to the user can provide

본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.Effects of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the following description.

도 1은 본 발명의 일 실시예에 따른 시스템도이다.
도 2a 및 도 2b는 본 발명의 일 실시예에 따른 서버 및 전자 장치의 구성도이다.
도 3은 본 발명의 일 실시예에 따른 전자 장치를 도시한 도면이다.
도 4a 및 도 4b는 본 발명의 일 실시예에 따른 전자 장치의 동작을 설명하기 위한 예시도이다.
도 5는 본 발명의 일 실시예에 따른 시스템의 동작을 설명하기 위한 흐름도이다.
도 6은 본 발명의 일 실시예에 따른 전자 장치가 발생시키는 충격 데이터를 설명하기 위한 흐름도이다.
도 7은 본 발명의 일 실시예에 따른 학습데이터 획득 방법을 설명하기 위한 흐름도이다.
도 8은 본 발명의 일 실시예에 따른 인공지능모델 학습 방법을 설명하기 위한 흐름도이다.
도 9는 본 발명의 일 실시예에 따른 인공지능 모델을 이용한 출력값 획득 방법을 설명하기 위한 흐름도이다.
도 10은 본 발명의 일 실시예에 따른 표면 정보를 획득하는 방법을 설명하기 위한 흐름도이다.
도 11은 본 발명의 일 실시예에 따른 내부 충격 및 외부 충격의 종류에 따라 표면 정보를 획득하는 방법을 설명하기 위한 흐름도이다.
1 is a system diagram according to an embodiment of the present invention.
2A and 2B are block diagrams of a server and an electronic device according to an embodiment of the present invention.
3 is a diagram illustrating an electronic device according to an embodiment of the present invention.
4A and 4B are exemplary views for explaining an operation of an electronic device according to an embodiment of the present invention.
5 is a flowchart illustrating an operation of a system according to an embodiment of the present invention.
6 is a flowchart illustrating impact data generated by an electronic device according to an embodiment of the present invention.
7 is a flowchart illustrating a method of acquiring learning data according to an embodiment of the present invention.
8 is a flowchart illustrating a method for learning an artificial intelligence model according to an embodiment of the present invention.
9 is a flowchart illustrating a method of obtaining an output value using an artificial intelligence model according to an embodiment of the present invention.
10 is a flowchart illustrating a method of acquiring surface information according to an embodiment of the present invention.
11 is a flowchart illustrating a method of acquiring surface information according to types of internal impact and external impact according to an embodiment of the present invention.

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

본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.The terminology used herein is for the purpose of describing the embodiments and is not intended to limit the present invention. In this specification, the singular also includes the plural unless specifically stated otherwise in the phrase. As used herein, “comprises” and/or “comprising” does not exclude the presence or addition of one or more other components in addition to the stated components. Like reference numerals refer to like elements throughout, and "and/or" includes each and every combination of one or more of the recited elements. Although "first", "second", etc. are used to describe various elements, these elements are not limited by these terms, of course. These terms are only used to distinguish one component from another. Accordingly, it goes without saying that the first component mentioned below may be the second component within the spirit of the present invention.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless otherwise defined, all terms (including technical and scientific terms) used herein will have the meaning commonly understood by those of ordinary skill in the art to which this invention belongs. In addition, terms defined in a commonly used dictionary are not to be interpreted ideally or excessively unless specifically defined explicitly.

명세서에서 사용되는 "부" 또는 “모듈”이라는 용어는 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, "부" 또는 “모듈”은 어떤 역할들을 수행한다. 그렇지만 "부" 또는 “모듈”은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. "부" 또는 “모듈”은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 "부" 또는 “모듈”은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 "부" 또는 “모듈”들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 "부" 또는 “모듈”들로 결합되거나 추가적인 구성요소들과 "부" 또는 “모듈”들로 더 분리될 수 있다.As used herein, the term “unit” or “module” refers to a hardware component such as software, FPGA, or ASIC, and “unit” or “module” performs certain roles. However, “part” or “module” is not meant to be limited to software or hardware. A “unit” or “module” may be configured to reside on an addressable storage medium or to reproduce one or more processors. Thus, as an example, “part” or “module” refers to components such as software components, object-oriented software components, class components and task components, processes, functions, properties, Includes procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables. Components and functionality provided within “parts” or “modules” may be combined into a smaller number of components and “parts” or “modules” or as additional components and “parts” or “modules”. can be further separated.

공간적으로 상대적인 용어인 "아래(below)", "아래(beneath)", "하부(lower)", "위(above)", "상부(upper)" 등은 도면에 도시되어 있는 바와 같이 하나의 구성요소와 다른 구성요소들과의 상관관계를 용이하게 기술하기 위해 사용될 수 있다. 공간적으로 상대적인 용어는 도면에 도시되어 있는 방향에 더하여 사용시 또는 동작시 구성요소들의 서로 다른 방향을 포함하는 용어로 이해되어야 한다. 예를 들어, 도면에 도시되어 있는 구성요소를 뒤집을 경우, 다른 구성요소의 "아래(below)"또는 "아래(beneath)"로 기술된 구성요소는 다른 구성요소의 "위(above)"에 놓여질 수 있다. 따라서, 예시적인 용어인 "아래"는 아래와 위의 방향을 모두 포함할 수 있다. 구성요소는 다른 방향으로도 배향될 수 있으며, 이에 따라 공간적으로 상대적인 용어들은 배향에 따라 해석될 수 있다.Spatially relative terms "below", "beneath", "lower", "above", "upper", etc. It can be used to easily describe the correlation between a component and other components. Spatially relative terms should be understood as terms including different directions of components during use or operation in addition to the directions shown in the drawings. For example, when a component shown in the drawing is turned over, a component described as “beneath” or “beneath” of another component may be placed “above” of the other component. can Accordingly, the exemplary term “below” may include both directions below and above. Components may also be oriented in other orientations, and thus spatially relative terms may be interpreted according to orientation.

본 명세서에서, 컴퓨터는 적어도 하나의 프로세서를 포함하는 모든 종류의 하드웨어 장치를 의미하는 것이고, 실시 예에 따라 해당 하드웨어 장치에서 동작하는 소프트웨어적 구성도 포괄하는 의미로서 이해될 수 있다. 예를 들어, 컴퓨터는 스마트폰, 태블릿 PC, 데스크톱, 노트북 및 각 장치에서 구동되는 사용자 클라이언트 및 애플리케이션을 모두 포함하는 의미로서 이해될 수 있으며, 또한 이에 제한되는 것은 아니다.In this specification, a computer means all types of hardware devices including at least one processor, and may be understood as encompassing software configurations operating in the corresponding hardware device according to embodiments. For example, a computer may be understood to include, but is not limited to, smart phones, tablet PCs, desktops, notebooks, and user clients and applications running on each device.

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

본 명세서에서 설명되는 각 단계들은 컴퓨터에 의하여 수행되는 것으로 설명되나, 각 단계의 주체는 이에 제한되는 것은 아니며, 실시 예에 따라 각 단계들의 적어도 일부가 서로 다른 장치에서 수행될 수도 있다.Each step described in this specification is described as being performed by a computer, but the subject of each step is not limited thereto, and at least a portion of each step may be performed in different devices according to embodiments.

도 1은 본 발명의 일 실시예에 따른 시스템도이다.1 is a system diagram according to an embodiment of the present invention.

도 1에 도시된 바와 같이, 스마트 기기 제어 시스템은 서버(100) 및 전자 장치(200)를 포함할 수 있다.1 , the smart device control system may include a server 100 and an electronic device 200 .

본 발명의 실시예에 따른 서버(100)는 단일 서버로 구성될 수 있을 뿐만 아니라 필요에 따라, 복수의 서버로 구성될 수 있으며, 클라우드 서버를 포함하는 개념일 수 있다.The server 100 according to an embodiment of the present invention may be configured not only as a single server, but also as a plurality of servers, if necessary, and may be a concept including a cloud server.

전자 장치(200)는, 표면 정보를 획득하기 위한 충격 데이터를 생성할 수 있다. 다만, 이는 전자 장치(200)의 일 기능을 나타낼 뿐, 사용자에게 다양한 서비스를 제공할 수 있음은 물론이다.The electronic device 200 may generate impact data for obtaining surface information. However, it goes without saying that this only represents one function of the electronic device 200 and that various services may be provided to the user.

일 실시예로, 전자 장치(200)는 스마트폰(smartphone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 영상 전화기, 전자책 리더기(e-book reader), 데스크탑 PC (desktop PC), 랩탑 PC(laptop PC), 넷북 컴퓨터(netbook computer), 워크스테이션(workstation), 서버, PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 카메라, 또는 웨어러블 장치(wearable device), 인공지능 스피커(AI speaker) 중 적어도 하나를 포함할 수 있다. In an embodiment, the electronic device 200 includes a smartphone, a tablet personal computer, a mobile phone, a video phone, an e-book reader, and a desktop PC. ), laptop PC, netbook computer, workstation, server, personal digital assistant (PDA), portable multimedia player (PMP), MP3 player, mobile medical device, camera, or wearable device (wearable device) and may include at least one of an artificial intelligence speaker (AI speaker).

또 다른 실시 예로, 전자 장치(200)는 가전 제품(home appliance)일 수 있다. 가전 제품은, 예를 들면, 텔레비전, DVD 플레이어(Digital Video Disk player), 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스(set-top box), 홈 오토매이션 컨트롤 패널(home automation control panel), 보안 컨트롤 패널(security control panel), TV 박스(예: 삼성 HomeSync™, 애플TV™, 또는 구글 TV™), 게임 콘솔(예: Xbox™, PlayStation™), 전자 사전, 전자 키, 캠코더, 또는 전자 액자 중 적어도 하나를 포함할 수 있다.As another embodiment, the electronic device 200 may be a home appliance. Home appliances are, for example, televisions, DVD players (Digital Video Disk players), audio systems, refrigerators, air conditioners, vacuum cleaners, ovens, microwaves, washing machines, air purifiers, set-top boxes, and home automation. Control panel (home automation control panel), security control panel (security control panel), TV box (eg Samsung HomeSync™, Apple TV™, or Google TV™), game console (eg Xbox™, PlayStation™), electronics It may include at least one of a dictionary, an electronic key, a camcorder, and an electronic picture frame.

전자 장치(200)는 충격을 발생시킬 수 있는 구성을 필수 구성요소로 하나, 그외 다양한 기능을 실행하기 위한 구성을 포함할 수 있음은 물론이다. 예컨대, 전자 장치(200)는 AI 스피커 내부에 충격 발생부를 포함하도록 구성될 수 있다. 또는 전자 장치는 충격 발생부만을 포함하며, 스마트폰 등에 결합 가능한 액세서리의 형태일 수 있다.Although the electronic device 200 has a configuration capable of generating an impact as an essential component, it goes without saying that it may include a configuration for executing various other functions. For example, the electronic device 200 may be configured to include a shock generating unit inside the AI speaker. Alternatively, the electronic device may include only a shock generating unit and may be in the form of an accessory that can be coupled to a smart phone or the like.

도 2a 및 도 2b는 본 발명의 일 실시예에 따른 서버 및 전자 장치의 구성도이다.2A and 2B are block diagrams of a server and an electronic device according to an embodiment of the present invention.

도 2a에 도시된 바와 같이, 서버(100)는 메모리(110), 통신부(120) 및 프로세서(130)를 포함할 수 있다.As shown in FIG. 2A , the server 100 may include a memory 110 , a communication unit 120 , and a processor 130 .

메모리(110)는 서버(100) 의 동작에 필요한 각종 프로그램 및 데이터를 저장할 수 있다. 메모리(110)는 비휘발성 메모리(110), 휘발성 메모리(110), 플래시메모리(110)(flash-memory), 하드디스크 드라이브(HDD) 또는 솔리드 스테이트 드라이브(SSD) 등으로 구현될 수 있다.The memory 110 may store various programs and data necessary for the operation of the server 100 . The memory 110 may be implemented as a non-volatile memory 110 , a volatile memory 110 , a flash-memory 110 , a hard disk drive (HDD), or a solid state drive (SSD).

통신부(120)는 외부 장치와 통신을 수행할 수 있다. 특히, 통신부(120)는 와이파이 칩, 블루투스 칩, 무선 통신 칩, NFC칩, 저전력 블루투스 침(BLE 칩) 등과 같은 다양한 통신 칩을 포함할 수 있다. 이때, 와이파이 칩, 블루투스 칩, NFC 칩은 각각 LAN 방식, WiFi 방식, 블루투스 방식, NFC 방식으로 통신을 수행한다. 와이파이 칩이나 블루투스칩을 이용하는 경우에는 SSID 및 세션 키 등과 같은 각종 연결 정보를 먼저 송수신 하여, 이를 이용하여 통신 연결한 후 각종 정보들을 송수신할 수 있다. 무선 통신칩은 IEEE, 지그비, 3G(3rd Generation), 3GPP(3rd Generation Partnership Project), LTE(Long Term Evolution) 등과 같은 다양한 통신 규격에 따라 통신을 수행하는 칩을 의미한다. The communication unit 120 may communicate with an external device. In particular, the communication unit 120 may include various communication chips such as a Wi-Fi chip, a Bluetooth chip, a wireless communication chip, an NFC chip, and a Bluetooth low power chip (BLE chip). At this time, the Wi-Fi chip, the Bluetooth chip, and the NFC chip perform communication in a LAN method, a WiFi method, a Bluetooth method, and an NFC method, respectively. In the case of using a Wi-Fi chip or a Bluetooth chip, various types of connection information such as an SSID and a session key are first transmitted and received, and then various types of information can be transmitted and received after a communication connection using this. The wireless communication chip refers to a chip that performs communication according to various communication standards, such as IEEE, ZigBee, 3rd Generation (3G), 3rd Generation Partnership Project (3GPP), and Long Term Evolution (LTE).

프로세서(130)는 메모리(110)에 저장된 각종 프로그램을 이용하여 서버(100)의 전반적인 동작을 제어할 수 있다. 프로세서(130)는 RAM, ROM, 그래픽 처리부, 메인 CPU, 제1 내지 n 인터페이스 및 버스로 구성될 수 있다. 이때, RAM, ROM, 그래픽 처리부, 메인 CPU, 제1 내지 n 인터페이스 등은 버스를 통해 서로 연결될 수 있다. The processor 130 may control the overall operation of the server 100 using various programs stored in the memory 110 . The processor 130 may include a RAM, a ROM, a graphic processing unit, a main CPU, first to n interfaces, and a bus. In this case, the RAM, ROM, graphic processing unit, main CPU, first to n interfaces, etc. may be connected to each other through a bus.

RAM은 O/S 및 어플리케이션 프로그램을 저장한다. 구체적으로, 서버(100)가 부팅되면 O/S가 RAM에 저장되고, 사용자가 선택한 각종 어플리케이션 데이터가 RAM에 저장될 수 있다. RAM stores O/S and application programs. Specifically, when the server 100 is booted, O/S may be stored in the RAM, and various application data selected by the user may be stored in the RAM.

ROM에는 시스템 부팅을 위한 명령어 세트 등이 저장된다. 턴 온 명령이 입력되어 전원이 공급되면, 메인 CPU는 ROM에 저장된 명령어에 따라 메모리(110)에 저장된 O/S를 RAM에 복사하고, O/S를 실행시켜 시스템을 부팅시킨다. 부팅이 완료되면, 메인 CPU는 메모리(110)에 저장된 각종 어플리케이션 프로그램을 RAM에 복사하고, RAM에 복사된 어플리케이션 프로그램을 실행시켜 각종 동작을 수행한다. The ROM stores an instruction set for booting the system, and the like. When a turn-on command is input and power is supplied, the main CPU copies the O/S stored in the memory 110 to the RAM according to the command stored in the ROM, and executes the O/S to boot the system. Upon completion of booting, the main CPU copies various application programs stored in the memory 110 to the RAM, and executes the application programs copied to the RAM to perform various operations.

그래픽 처리부는 연산부(미도시) 및 렌더링부(미도시)를 이용하여 아이템, 이미지, 텍스트 등과 같은 다양한 객체를 포함하는 화면을 생성한다. 여기서, 연산부는 입력부로부터 수신된 제어 명령을 이용하여 화면의 레이아웃에 따라 각 객체들이 표시될 좌표값, 형태, 크기, 컬러 등과 같은 속성값을 연산하는 구성일 수 있다. 그리고, 렌더링부는 연산부에서 연산한 속성값에 기초하여 객체를 포함하는 다양한 레이아웃의 화면을 생성하는 구성이 일 수 있다. 이러한 렌더링부에서 생성된 화면은 디스플레이의 디스플레이 영역 내에 표시될 수 있다. The graphic processing unit generates a screen including various objects such as items, images, and texts by using a calculation unit (not shown) and a rendering unit (not shown). Here, the calculation unit may be configured to calculate attribute values such as coordinate values, shape, size, color, etc. of each object to be displayed according to the layout of the screen by using the control command received from the input unit. In addition, the rendering unit may be configured to generate screens of various layouts including objects based on the attribute values calculated by the operation unit. The screen generated by the rendering unit may be displayed in the display area of the display.

메인 CPU는 메모리(110)에 액세스하여, 메모리(110)에 저장된 OS를 이용하여 부팅을 수행한다. 그리고, 메인 CPU는 메모리(110)에 저장된 각종 프로그램, 컨텐츠, 데이터 등을 이용하여 다양한 동작을 수행한다.The main CPU accesses the memory 110 and performs booting using the OS stored in the memory 110 . In addition, the main CPU performs various operations using various programs, contents, data, etc. stored in the memory 110 .

제1 내지 n 인터페이스는 상술한 각종 구성요소들과 연결된다. 제1 내지 n 인터페이스 중 하나는 네트워크를 통해 외부 장치와 연결되는 네트워크 인터페이스가 될 수도 있다.The first to n interfaces are connected to the various components described above. One of the first to n interfaces may be a network interface connected to an external device through a network.

한편, 나아가, 프로세서(130)는 인공지능 모델을 제어할 수 있다. 이 경우, 프로세서(130)는 인공지능 모델을 제어하기 위한 그래픽 전용 프로세서(예: GPU)를 포함할 수 있음은 물론이다.Meanwhile, further, the processor 130 may control the artificial intelligence model. In this case, of course, the processor 130 may include a graphics-only processor (eg, GPU) for controlling the artificial intelligence model.

한편, 본 발명에 따른 인공지능 모델은 교사 지도학습(supervised learning) 또는 비교사 지도학습(unsupervised learning)기반의 모델일 수 있다. 나아가, 본 발명에 따른 인공지능 모델은 SVM(support vector machine), Decision tree, neural network 등 및 이들이 응용된 방법론을 포함할 수 있다.Meanwhile, the artificial intelligence model according to the present invention may be a model based on supervised learning or unsupervised learning by a teacher. Furthermore, the artificial intelligence model according to the present invention may include a support vector machine (SVM), a decision tree, a neural network, and the like, and methodologies to which these are applied.

일 실시예로, 본 발명에 따른 인공지능 모델은 학습데이터를 입력하여 학습된 합성곱 신경망(Convolutional deep Neural Networks, CNN) 기반의 인공지능 모델일 수 있다. 다만, 이에 한정되는 것은 아니며, 다양한 인공지능 모델이 본 발명에 적용될 수 있음은 물론이다. 예컨대, DNN(Deep Neural Network), RNN(Recurrent Neural Network), BRDNN(Bidirectional Recurrent Deep Neural Network)과 같은 모델이 인공지능 모델로서 사용될 수 있으나, 이에 한정되지 않는다.In one embodiment, the artificial intelligence model according to the present invention may be an artificial intelligence model based on a convolutional deep neural network (CNN) learned by inputting learning data. However, the present invention is not limited thereto, and it goes without saying that various artificial intelligence models may be applied to the present invention. For example, a model such as a Deep Neural Network (DNN), a Recurrent Neural Network (RNN), or a Bidirectional Recurrent Deep Neural Network (BRDNN) may be used as the AI model, but is not limited thereto.

이때, 합성곱 신경망(Convolutional deep Neural Networks, CNN)은 최소한의 전처리(preprocess)를 사용하도록 설계된 다계층 퍼셉트론(multilayer perceptrons)의 한 종류이다. 합성곱 신경망은 하나 또는 여러개의 합성곱 계층(convolutional layer)과 그 위에 올려진 일반적인 인공신경망 계층들로 이루어져 있으며, 가중치와 통합 계층(pooling layer)들을 추가로 활용한다. 이러한 구조 덕분에 합성곱 신경망은 2차원 구조의 입력 데이터를 충분히 활용할 수 있다. 또한, 합성곱 신경망은 표준 역전달을 통해 훈련될 수 있다. 합성곱 신경망은 다른 피드포워드 인공신경망 기법들보다 쉽게 훈련되는 편이고 적은 수의 매개변수를 사용한다는 이점이 있다. In this case, convolutional deep neural networks (CNNs) are a type of multilayer perceptrons designed to use minimal preprocessing. A convolutional neural network consists of one or several convolutional layers and general artificial neural network layers on top of it, and additionally utilizes weights and pooling layers. Thanks to this structure, the convolutional neural network can fully utilize the input data of the two-dimensional structure. In addition, convolutional neural networks can be trained via standard backpropagation. Convolutional neural networks are easier to train than other feed-forward neural network techniques and have the advantage of using fewer parameters.

또한, 심층 신경망(Deep Neural Networks, DNN)은 입력 계층(input layer)과 출력 계층(output layer) 사이에 복수개의 은닉 계층(hidden layer)들로 이뤄진 인공신경망(Artificial Neural Network, ANN)이다.In addition, deep neural networks (DNNs) are artificial neural networks (ANNs) composed of a plurality of hidden layers between an input layer and an output layer.

이때, 심층 신경망의 구조는 퍼셉트론(perceptron)으로 구성될 수 있다. 퍼셉트론은 여러 개의 입력 값(input)과 하나의 프로세서(prosessor), 하나의 출력 값으로 구성된다. 프로세서는 여러 개의 입력 값에 각각 가중치를 곱한 후, 가중치가 곱해진 입력 값들을 모두 합한다. 그 다음 프로세서는 합해진 값을 활성화함수에 대입하여 하나의 출력 값을 출력한다. 만약 활성화함수의 출력 값으로 특정한 값이 나오기를 원하는 경우, 각 입력 값에 곱해지는 가중치를 수정하고, 수정된 가중치를 이용하여 출력 값을 다시 계산할 수 있다. 이때, 각각의 퍼셉트론은 서로 다른 활성화함수를 사용할 수 있다. 또한 각각의 퍼셉트론은 이전 계층에서 전달된 출력들을 입력으로 받아들인 다음, 활성화 함수를 이용해서 출력을 구한다. 구해진 출력은 다음 계층의 입력으로 전달된다. 상술한 바와 같은 과정을 거치면 최종적으로 몇 개의 출력 값을 얻을 수 있다. In this case, the structure of the deep neural network may be composed of a perceptron. A perceptron consists of several inputs, one processor, and one output value. The processor multiplies each input value by a weight, and then sums the input values multiplied by the weight. Then, the processor outputs one output value by substituting the summed value into the activation function. If a specific value is desired as the output value of the activation function, the weight multiplied by each input value may be corrected, and the output value may be recalculated using the modified weight. In this case, each perceptron may use a different activation function. In addition, each perceptron receives the outputs from the previous layer as input, and then uses the activation function to obtain the output. The obtained output is transferred to the input of the next layer. Through the process as described above, some output values can be finally obtained.

순환 신경망(Reccurent Neural Network, RNN)은 인공신경망을 구성하는 유닛 사이의 연결이 Directed cycle을 구성하는 신경망을 말한다. 순환 신경망은 앞먹임 신경망과 달리, 임의의 입력을 처리하기 위해 신경망 내부의 메모리를 활용할 수 있다.A recursive neural network (RNN) refers to a neural network in which connections between units constituting an artificial neural network constitute a directed cycle. Unlike forward neural networks, recurrent neural networks can utilize the memory inside the neural network to process arbitrary inputs.

심층 신뢰 신경망(Deep Belief Networks, DBN)이란 기계학습에서 사용되는 그래프 생성 모형(generative graphical model)으로, 딥 러닝에서는 잠재변수(latent variable)의 다중계층으로 이루어진 심층 신경망을 의미한다. 계층 간에는 연결이 있지만 계층 내의 유닛 간에는 연결이 없다는 특징이 있다. Deep Belief Networks (DBN) is a generative graphical model used in machine learning, and in deep learning, it means a deep neural network composed of multiple layers of latent variables. There is a connection between layers, but there is no connection between units within a layer.

심층 신뢰 신경망은 생성 모형이라는 특성상 선행학습에 사용될 수 있고, 선행학습을 통해 초기 가중치를 학습한 후 역전파 혹은 다른 판별 알고리즘을 통해 가중치의 미조정을 할 수 있다. 이러한 특성은 훈련용 데이터가 적을 때 굉장히 유용한데, 이는 훈련용 데이터가 적을수록 가중치의 초기값이 결과적인 모델에 끼치는 영향이 세지기 때문이다. 선행학습된 가중치 초기값은 임의로 설정된 가중치 초기값에 비해 최적의 가중치에 가깝게 되고 이는 미조정 단계의 성능과 속도향상을 가능케 한다. The deep trust neural network can be used for prior learning due to the nature of the generative model, and after learning the initial weights through prior learning, the weights can be fine-tuned through backpropagation or other discrimination algorithms. This characteristic is very useful when the training data is small, because the smaller the training data, the stronger the effect of the initial value of the weight on the resulting model. The pre-learned initial weight value is closer to the optimal weight compared to the arbitrarily set initial weight value, which enables performance and speed improvement in the fine-tuning stage.

상술한 인공지능 및 그 학습방법에 관한 내용은 예시를 위하여 서술된 것이며, 이하에서 설명되는 실시 예들에서 이용되는 인공지능 및 그 학습방법은 제한되지 않는다. 예를 들어, 당 업계의 통상의 기술자가 동일한 과제해결을 위하여 적용할 수 있는 모든 종류의 인공지능 기술 및 그 학습방법이 개시된 실시 예에 따른 시스템을 구현하는 데 활용될 수 있다.The above-described artificial intelligence and its learning method have been described for illustrative purposes, and the artificial intelligence and its learning method used in the embodiments described below are not limited. For example, all kinds of artificial intelligence technology and a learning method thereof that a person skilled in the art can apply to solve the same problem may be utilized to implement the system according to the disclosed embodiment.

한편, 도 2b에 도시된 바와 같이, 전자 장치(200)는 적어도 하나의 센서(210), 입력부(220), 출력부(230), 메모리(240), 충격 발생부(250) 및 프로세서를 포함할 수 있다.Meanwhile, as shown in FIG. 2B , the electronic device 200 includes at least one sensor 210 , an input unit 220 , an output unit 230 , a memory 240 , a shock generator 250 , and a processor. can do.

적어도 하나의 센서(210)는 충격 발생부(250)에 의해 발생한 충격을 감지하기 위한 구성이다. 일 실시예로, 적어도 하나의 센서(210)는 IMU(Inertial Measurement Unit) 센서를 포함할 수 있다. 구체적으로, 적어도 하나의 센서(210)는 자이로스코프, 가속도 센서, 지자계 센서 중 적어도 하나의 센서를 포함할 수 있다.At least one sensor 210 is configured to detect an impact generated by the impact generating unit 250 . In an embodiment, the at least one sensor 210 may include an Inertial Measurement Unit (IMU) sensor. Specifically, the at least one sensor 210 may include at least one sensor among a gyroscope, an acceleration sensor, and a geomagnetic sensor.

또 다른 실시예로, 적어도 하나의 센서(210)는 음향 데이터(또는 오디오 데이터)를 수신하기 위한 마이크를 포함할 수 있다. 마이크는 충격에 의해 발생된 오디오 신호를 수신할 수 있다.In another embodiment, the at least one sensor 210 may include a microphone for receiving sound data (or audio data). The microphone may receive an audio signal generated by the impact.

입력부(220)는, 사용자 명령을 입력받기 위한 구성이다. 이때, 입력부(230)는 버튼, 키보드, 마우스, 터치 패널 등 다양한 종류의 사용자 명령을 수신하기 위한 구성일 수 있다.The input unit 220 is configured to receive a user command. In this case, the input unit 230 may be configured to receive various types of user commands, such as a button, a keyboard, a mouse, and a touch panel.

출력부(230)는, 음성 이미지 등 다양한 형태의 데이터를 출력하기 위한 구성이다. 본 발명에 따른 출력부(230)는, 스피커 및 디스플레이 중 적어도 하나를 포함할 수 있다.The output unit 230 is configured to output various types of data, such as an audio image. The output unit 230 according to the present invention may include at least one of a speaker and a display.

메모리(240)는, 전자 장치(200)의 동작에 필요한 각종 프로그램 및 데이터를 저장할 수 있으며, 상술한 메모리(110)의 구성을 포함할 수 있다.The memory 240 may store various programs and data necessary for the operation of the electronic device 200 , and may include the above-described configuration of the memory 110 .

충격발생부(250)는, 충격을 발생시키기 위한 구성이다. 구체적으로, 충격발생부(250)는 도 3에 도시된 바와 같이 하우징(251) 및 충격 모듈(252)를 포함할 수 있다. 충격 모듈(252)는 상하 운동을 위한 액추에이터(예를 들어, 솔레노이드를 이용한 액추에이터)로 구현될 수 있다.The impact generating unit 250 is configured to generate an impact. Specifically, the impact generating unit 250 may include a housing 251 and an impact module 252 as shown in FIG. 3 . The impact module 252 may be implemented as an actuator for vertical movement (eg, an actuator using a solenoid).

프로세서(260)는, 전자 장치(200)를 제어하기 위한 구성으로, 상술한 프로세서(130)의 구성을 포함할 수 있다.The processor 260 is a configuration for controlling the electronic device 200 and may include the configuration of the processor 130 described above.

한편, 본 발명의 다양한 실시예에 따라, 전자 장치(200)는 기 설정된 조건을 만족하는 경우, 충격 발생부(250)가 동작하도록 제어 신호를 전송할 수 있다. 예를 들어, 전자 장치(200)는, 전자 장치(200)의 이동을 감지하고, 이동이 중단된 경우 충격 발생부(250)가 동작하도록 제어 신호를 전송할 수 있다. Meanwhile, according to various embodiments of the present disclosure, when a preset condition is satisfied, the electronic device 200 may transmit a control signal to operate the shock generating unit 250 . For example, the electronic device 200 may detect the movement of the electronic device 200 and transmit a control signal to operate the shock generator 250 when the movement is stopped.

또는, 전자 장치(200)는 전자 장치(200)가 물체 위에 놓여진 때 충격 발생부(250)가 동작하도록 제어 신호를 전송할 수 있다. 예컨대 전자 장치(200)는 기 설정된 값 이상의 충격을 감지한 경우, 다른 장소로 이동이 완료된 것으로 판단하고, 충격 발생부(250)가 동작하도록 제어 신호를 전송할 수 있다.Alternatively, the electronic device 200 may transmit a control signal to operate the shock generating unit 250 when the electronic device 200 is placed on an object. For example, when detecting an impact greater than or equal to a preset value, the electronic device 200 may determine that movement to another location has been completed, and transmit a control signal to operate the impact generator 250 .

도 4a 및 도 4b는 본 발명의 일 실시예에 따른 전자 장치의 동작을 설명하기 위한 예시도이다.4A and 4B are exemplary views for explaining an operation of an electronic device according to an embodiment of the present invention.

구체적으로, 상술한 바와 같이, 충격 모듈(252)는 상하로 움직일 수 있으며, 충격 모듈(252)이 상부 방향으로 이동하는 경우, 전자 장치(200)의 내부에 충격을 가할 수 있으며, 충격 모듈(252)이 하부 방향으로 이동하는 경우, 전자 장치(200)가 접촉하고 있는 외부 물체의 표면에 충격을 가할 수 있다.Specifically, as described above, the shock module 252 may move up and down, and when the shock module 252 moves in the upward direction, an impact may be applied to the inside of the electronic device 200, and the shock module 252 ( When the 252 ) moves in the downward direction, the electronic device 200 may apply an impact to the surface of the external object in contact with it.

이때, 내부 충격에 의해 발생하는 내부 충격 데이터와 외부 충격에 의해 발생하는 외부 충격 데이터는 상이한 데이터일 수 있다. 예컨대 내부 충격에 의해 발생하는 내부 충격 데이터의 기계적 임펄스 응답 및 외부 충격에 의해 발생하는 외부 충격 데이터의 기계적 임펄스 응답은 상이할 수 있다. 또는 내부 충격에 의해 발생하는 음향 데이터 및 외부 충격에 의해 발생하는 음향 데이터는 상이할 수 있다.In this case, the internal shock data generated by the internal shock and the external shock data generated by the external shock may be different data. For example, the mechanical impulse response of the internal shock data generated by the internal shock and the mechanical impulse response of the external shock data generated by the external shock may be different. Alternatively, the acoustic data generated by the internal impact and the acoustic data generated by the external impact may be different.

따라서, 서버(100)는 내부 충격 데이터와 외부 충격 데이터를 구별하고, 각각의 특성에 따라 전자 장치(200)와 접촉한 표면 정보를 획득할 수 있다. 다만, 서버(100)는 내부 충격 데이터와 외부 충격 데이터를 모두 사용할 수 있을 뿐만 아니라, 내부 충격 데이터와 외부 충격 데이터 중 적어도 하나의 데이터를 사용하여 표면 정보를 획득할 수 있음은 물론이다.Accordingly, the server 100 may distinguish the internal impact data from the external impact data, and may acquire information on the surface in contact with the electronic device 200 according to each characteristic. However, of course, the server 100 may not only use both internal shock data and external shock data, but also obtain surface information using at least one of internal shock data and external shock data.

이하에서는 도 5 내지 도 11을 이용하여 본 발명에 따른 다양한 실시예를 구체적으로 설명한다.Hereinafter, various embodiments according to the present invention will be described in detail with reference to FIGS. 5 to 11 .

도 5는 본 발명의 일 실시예에 따른 시스템의 동작을 설명하기 위한 흐름도이다.5 is a flowchart illustrating an operation of a system according to an embodiment of the present invention.

S110에서, 서버(100)는, 표면 정보를 바탕으로 전자 장치(200)의 위치를 획득하기 위한 학습 데이터를 수집할 수 있다.In S110 , the server 100 may collect learning data for acquiring the location of the electronic device 200 based on the surface information.

일 실시예로, 서버(100)는 전자 장치(200)로부터 표면의 학습과 관련된 관성 데이터 및 음향 데이터 중 적어도 하나를 포함하는 충격 데이터를 획득할 수 있다. 이때, 관성 데이터는 가속도에 대한 데이터 또는 각속도에 대한 데이터를 포함할 수 있다. As an embodiment, the server 100 may obtain impact data including at least one of inertial data and acoustic data related to surface learning from the electronic device 200 . In this case, the inertia data may include data about acceleration or data about angular velocity.

다만, 본 발명의 일 실시예에 따라, 서버(100)는 상술한 다양한 충격 데이터 중 일부의 데이터만을 사용할 수 있음은 물론이다. 즉, 충격 데이터는 가속도 데이터, 각속도 데이터, 음향 신호 중 적어도 하나의 데이터를 포함할 수 있다.However, according to an embodiment of the present invention, of course, the server 100 may use only some data of the various impact data described above. That is, the impact data may include at least one of acceleration data, angular velocity data, and an acoustic signal.

나아가, 서버(100)는 획득한 충격 데이터 및 획득한 충격 데이터에 대응되는 표면 정보를 클래스 정보로 획득할 수 있다. Furthermore, the server 100 may acquire the acquired impact data and surface information corresponding to the acquired impact data as class information.

즉, 서버(100)는 충격 데이터 및 충격 데이터에 대응되는 표면 정보 데이터를 매칭하여 인공지능 모델을 학습시키기 위한 학습 데이터로 획득할 수 있다. That is, the server 100 may acquire the impact data and the surface information data corresponding to the impact data as learning data for learning the artificial intelligence model by matching it.

나아가, 서버(100)는 표면 정보 데이터에 대응되는 위치 정보를 추가로 획득하고, 이를 클래스 정보로 획득할 수 있음은 물론이다.Furthermore, of course, the server 100 may additionally acquire location information corresponding to the surface information data, and obtain it as class information.

S120에서, 서버(100)는, 학습 데이터를 바탕으로 인공지능 모델을 학습시킬 수 있다.In S120, the server 100 may train an artificial intelligence model based on the learning data.

일 실시예로, 서버(100)는 학습 데이터를 바탕으로 표면의 특성을 기계학습 파라미터 형태로 모델링하고 저장할 수 있다.As an embodiment, the server 100 may model and store the surface characteristics in the form of machine learning parameters based on the learning data.

S130에서, 서버(100)는, 전자 장치(200)로부터 전자 장치(200)의 위치 획득을 위한 입력 데이터를 수신할 수 있다.In S130 , the server 100 may receive input data for obtaining a location of the electronic device 200 from the electronic device 200 .

일 실시예로, 입력 데이터는 상술한 다양한 충격 데이터일 수 있다. 즉, 입력 데이터는 내부 충격 데이터 또는 외부 충격 데이터일 수 있다. 또는, 입력 데이터는 충격에 대한 관성 데이터 또는 음향 데이터일 수 있다.In one embodiment, the input data may be the various impact data described above. That is, the input data may be internal shock data or external shock data. Alternatively, the input data may be inertial data or acoustic data for impact.

S140에서, 서버(100)는, 입력 데이터를 인공지능 모델에 입력하여 전자 장치(200)의 표면 정보 및 위치 정보 중 적어도 하나를 획득할 수 있다.In S140 , the server 100 may obtain at least one of surface information and location information of the electronic device 200 by inputting the input data into the artificial intelligence model.

S150에서, 서버(100)는, 획득된 전자 장치(200)의 표면 정보 및 위치 정보 중 적어도 하나를 바탕으로 전자 장치(200)가 제공할 서비스를 결정할 수 있다.In S150 , the server 100 may determine a service to be provided by the electronic device 200 based on at least one of the acquired surface information and location information of the electronic device 200 .

S160에서, 서버(100)는, 전자 장치(200)로 결정된 서비스에 대한 정보를 전송할 수 있다.In S160 , the server 100 may transmit information on the determined service to the electronic device 200 .

도 6은 본 발명의 일 실시예에 따른 전자 장치가 발생시키는 충격 데이터를 설명하기 위한 흐름도이다. 6 is a flowchart illustrating impact data generated by an electronic device according to an embodiment of the present invention.

S210에서, 전자 장치(200)에 포함된 충격발생부가, 내부 충격 및 외부 충격 중 적어도 하나의 충격을 발생시킬 수 있다.In S210 , the shock generating unit included in the electronic device 200 may generate at least one of an internal shock and an external shock.

S220에서, 전자 장치(200)에 포함된 적어도 하나의 센서(210)가, 발생된 충격을 감지할 수 있다.In S220 , at least one sensor 210 included in the electronic device 200 may detect the generated shock.

S230에서, 전자 장치(200)가, 감지된 충격 데이터를 서버(100)로 전송할 수 있다.In S230 , the electronic device 200 may transmit the sensed shock data to the server 100 .

도 7은 본 발명의 일 실시예에 따른 학습데이터 획득 방법을 설명하기 위한 흐름도이다.7 is a flowchart illustrating a method of acquiring learning data according to an embodiment of the present invention.

S310에서, 서버(100)는, 충격 데이터, 충격 데이터에 대응되는 물체 정보 및 물체가 위치한 공간 정보를 획득할 수 있다.In S310, the server 100 may acquire impact data, object information corresponding to the impact data, and spatial information in which the object is located.

즉, 서버(100)는 충격 데이터, 물체 정보, 물체가 위치한 공간 정보를 하나의 학습데이터 세트로 장할 수 있다.That is, the server 100 may store impact data, object information, and spatial information where the object is located as one learning data set.

이때, 물체 정보는 해당 물체에 대한 바코드 정보 또는 시리얼 넘버에 대한 정보일 수 있다. 물체 정보가 해당 물체에 대한 바코드 정보 또는 시리얼 넘버에 대한 정보인 경우, 서버(100)는 전자 장치(200)외의 또 다른 전자 장치로부터 동일한 물체에 대한 충격 데이터를 수신하여 학습 데이터로 설정할 수 있다. 상술한 방법을 통해, 서버(100)는 복수의 전자 장치로부터 학습 데이터를 수집할 수 있으므로, 정확도 높은 기계학습을 수행할 수 있게 된다.In this case, the object information may be barcode information on the object or information on a serial number. When the object information is barcode information or serial number information for the object, the server 100 may receive impact data on the same object from another electronic device other than the electronic device 200 and set it as learning data. Through the above-described method, since the server 100 can collect learning data from a plurality of electronic devices, it is possible to perform machine learning with high accuracy.

또 다른 실시예로, 물체 정보는 전자 장치(200)의 사용자에 의해 입력된 물체에 대한 정보일 수 있다. 예를 들어, 서버(100)가 충격 데이터를 수신하면, 전자 장치(200)로 해당 충격 데이터에 대응되는 물체가 무엇인지 문의하는 질의 메시지를 전송할 수 있다. 전자 장치(200)는 사용자로부터 물체에 대한 정보(예를 들어 테이블, 쇼파 등과 같은 물체의 이름)를 수신할 수 있다. 상술한 방법을 통해. 서버(100)는 전자 장치(200)의 사용자의 사용 환경에 적합한 데이터를 학습 데이터로 획득하여 개인화된 서비스 제공이 가능하다.As another embodiment, the object information may be information about an object input by the user of the electronic device 200 . For example, when the server 100 receives the impact data, it may transmit a query message inquiring about an object corresponding to the corresponding impact data to the electronic device 200 . The electronic device 200 may receive information about an object (eg, a name of an object such as a table or sofa) from the user. through the method described above. The server 100 may provide a personalized service by acquiring data suitable for a user's use environment of the electronic device 200 as learning data.

S320에서, 서버(100)는, 충격 데이터, 충격 데이터에 대응되는 물체 정보 및 물체가 위치한 공간 정보 중 적어도 두개를 매칭하여 학습 데이터로 저장할 수 있다.In S320 , the server 100 may match at least two of the impact data, object information corresponding to the impact data, and spatial information in which the object is located, and store it as learning data.

일 실시예로, 상술한 바와 같이 물체 정보가 해당 물체에 대한 바코드 정보 또는 시리얼 넘버에 대한 정보인 경우, 서버(100)는 충격 데이터 및 물체 정보를 매칭하여 학습 데이터로 저장할 수 있다. 즉, 물체 정보가 해당 물체에 대한 바코드 정보 또는 시리얼 넘버인 경우, 동일한 물체라고 하더라도 사용자에 따라 물체를 다른 위치에 배치할 수 있으므로, 학습 데이터에 물체의 위치 정보가 포함되는 것이 바람직하지 않을 수 있다. 이 경우, 서버(100)는 충격 데이터 및 물체 정보를 매칭하여 제1 학습 데이터를 획득하고, 전자 장치(200)의 사용자에 대한 정보 및 물체의 위치 정보를 매칭하여 제2 학습 데이터로 획득할 수 있다. In one embodiment, as described above, when the object information is barcode information or serial number information for a corresponding object, the server 100 may match the impact data and the object information and store it as learning data. That is, if the object information is barcode information or serial number for the object, even if it is the same object, the object may be placed in a different location depending on the user, so it may not be desirable to include the location information of the object in the learning data. . In this case, the server 100 obtains the first learning data by matching the impact data and the object information, and obtains the second learning data by matching the information about the user of the electronic device 200 and the position information of the object. have.

또 다른 실시예로, 상술한 바와 같이, 물체 정보가 전자 장치(200)의 사용자에 의해 입력된 물체에 대한 정보인 경우, 서버(100)는 충격 데이터, 물체 정보 및 물체의 위치 정보를 모두 매칭하여 학습 데이터로 저장할 수 있다. 즉, 본 실시예에서의 학습 데이터는 전자 장치(200)의 사용자 개인에 대한 데이터이므로, 물체의 위치 정보를 학습 데이터에 포함시키는 것이 바람직하다.As another embodiment, as described above, when the object information is information about an object input by the user of the electronic device 200 , the server 100 matches all of the impact data, the object information, and the location information of the object. can be saved as training data. That is, since the learning data in the present embodiment is data about an individual user of the electronic device 200, it is preferable to include the location information of the object in the learning data.

도 8은 본 발명의 일 실시예에 따른 인공지능모델 학습 방법을 설명하기 위한 흐름도이다.8 is a flowchart illustrating a method for learning an artificial intelligence model according to an embodiment of the present invention.

S410에서, 서버(100)는, 내부 충격에 의해 발생된 제1 충격 데이터를 학습 데이터로 획득하면, 제1 충격 데이터를 제1 인공지능 모델에 입력하여 제1 인공지능 모델을 학습시킬 수 있다.In S410, the server 100 may learn the first artificial intelligence model by inputting the first shock data to the first artificial intelligence model when acquiring the first shock data generated by the internal shock as learning data.

S420에서, 서버(100)는, 외부 충격에 의해 발생된 제2 충격 데이터를 학습 데이터로 획득하면, 제2 충격 데이터를 제2 인공지능 모델에 입력하여 제2 인공지능 모델을 학습시킬 수 있다.In S420, the server 100 may learn the second artificial intelligence model by inputting the second shock data to the second artificial intelligence model when acquiring the second shock data generated by the external shock as the learning data.

즉, 서버(100)는 내부 충격에 대한 제1 충격 데이터 및 외부 충격에 대한 제2 충격 데이터를 서로 독립된 인공지능 모델에 각각 입력하여 각각의 인공지능 모델을 학습시킬 수 있다.That is, the server 100 may learn the respective artificial intelligence models by inputting the first shock data for the internal shock and the second shock data for the external shock to the independent artificial intelligence models, respectively.

이는 동일한 물체 위에 있는 전자 장치(200)에 의해 발생한 충격 데이터라고 하더라도, 서버(100)는 제1 충격 데이터와 제2 충격 데이터의 특성이 다르므로, 서로 다른 인공지능 모델에 제1 충격 데이터 및 제2 충격 데이터를 각각 입력하여 제1 인공지능 모델 및 제2 인공지능 모델을 학습시킬 수 있다.Even if this is the impact data generated by the electronic device 200 on the same object, the server 100 has different characteristics of the first impact data and the second impact data, so the first impact data and the second impact data are applied to different artificial intelligence models. The first artificial intelligence model and the second artificial intelligence model can be trained by inputting the two impact data, respectively.

도 9는 본 발명의 일 실시예에 따른 인공지능 모델을 이용한 출력값 획득 방법을 설명하기 위한 흐름도이다.9 is a flowchart illustrating a method of obtaining an output value using an artificial intelligence model according to an embodiment of the present invention.

S510에서, 전자 장치(200)에 포함된 충격 발생부(250)가, 내부 충격 및 외부 충격 중 적어도 하나의 충격을 발생시킬 수 있다.In S510 , the shock generating unit 250 included in the electronic device 200 may generate at least one of an internal shock and an external shock.

S520에서, 전자 장치(200)에 포함된 센서가, 발생된 내부 충격 및 발생된 외부 충격 중 적어도 하나를 감지할 수 있다.In S520 , a sensor included in the electronic device 200 may detect at least one of a generated internal shock and a generated external shock.

S530에서, 전자 장치(200)가, 감지된 내부 충격에 대한 제3 충격 데이터 및 감지된 제4 충격 데이터 중 적어도 하나의 충격 데이터를 서버(100)로 전송할 수 있다. In S530 , the electronic device 200 may transmit shock data of at least one of the third shock data for the sensed internal shock and the sensed fourth shock data to the server 100 .

상술한 도 9의 실시예는, 학습 데이터를 획득을 위해 제1 충격 데이터 및 제2 충격 데이터를 획득하는 방법과 동일할 수 있다.The above-described embodiment of FIG. 9 may be the same as the method of obtaining the first impact data and the second impact data to obtain the learning data.

도 10은 본 발명의 일 실시예에 따른 표면 정보를 획득하는 방법을 설명하기 위한 흐름도이다.10 is a flowchart illustrating a method of acquiring surface information according to an embodiment of the present invention.

S610에서, 서버(100)는, 제3 충격 데이터를 제1 인공지능 모델에 입력하여 제1 출력값으로 획득할 수 있다.In S610, the server 100 may input the third impact data into the first artificial intelligence model and obtain it as a first output value.

일 실시예로, 제1 출력값은 물체의 표면 정보 또는 물체의 표면 정보를 바탕으로 획득된 물체에 대한 정보일 수 있다. 또 다른 실시예로, 제1 출력값은 물체의 표면 정보를 바탕으로 획득된 물체의 위치 정보일 수 있다.As an embodiment, the first output value may be information on the surface of the object or information on the object obtained based on the surface information of the object. As another embodiment, the first output value may be position information of the object obtained based on information on the surface of the object.

S620에서, 서버(100)는, 제4 충격 데이터를 제2 인공지능 모델에 입력하여 제2 출력값으로 획득할 수 있다.In S620, the server 100 may input the fourth impact data to the second artificial intelligence model and obtain it as a second output value.

일 실시예로, 제2 출력값은 물체의 표면 정보 또는 물체의 표면 정보를 바탕으로 획득된 물체에 대한 정보일 수 있다. 또 다른 실시예로, 제2 출력값은 물체의 표면 정보를 바탕으로 획득된 물체의 위치 정보일 수 있다.As an embodiment, the second output value may be surface information of the object or information about the object obtained based on the surface information of the object. As another embodiment, the second output value may be position information of the object obtained based on information on the surface of the object.

S630에서, 서버(100)는, 제1 출력값 및 제2 출력값을 바탕으로 전자 장치(200)의 표면 정보 및 위치 정보 중 적어도 하나를 획득할 수 있다.In S630 , the server 100 may acquire at least one of surface information and location information of the electronic device 200 based on the first output value and the second output value.

일 실시예로, 제1 출력값에 대응되는 물체 정보와 제2 출력값에 대응되는 물체 정보가 동일한 경우, 서버(100)는 동일한 물체 정보를 물체에 대한 정보로 획득할 수 있다.As an embodiment, when the object information corresponding to the first output value and the object information corresponding to the second output value are the same, the server 100 may obtain the same object information as information about the object.

다만, 제1 출력값에 대응되는 물체 정보와 제2 출력값에 대응되는 물체 정보가 상이한 경우, 서버(100)는 제1 출력값에 대응되는 물체 정보와 제2 출력값에 대응되는 물체 정보 중 어느 하나를 물체에 대한 정보로 획득할 수 있다.However, when the object information corresponding to the first output value and the object information corresponding to the second output value are different from each other, the server 100 selects any one of the object information corresponding to the first output value and the object information corresponding to the second output value. information about can be obtained.

구체적으로, 서버(100)는 제1 인공지능 모델에 의해 출력된 제1 출력값의 제1 신뢰도값과 제2 인공지능 모델에 의해 출력된 제2 출력값의 제2 신뢰도 값을 비교하고, 신뢰도 값이 높은 출력값에 대응되는 물체 정보를 물체에 대한 정보로 획득할 수 있다.Specifically, the server 100 compares the first reliability value of the first output value output by the first artificial intelligence model with the second reliability value of the second output value output by the second artificial intelligence model, and the reliability value is Object information corresponding to a high output value may be acquired as information about the object.

이때, 신뢰도 값이란, 인공지능 모델에 의해 출력된 출력값(예: 표면 정보에 대한 데이터)에 대응되는 벡터 공간 상의 좌표와, 출력값으로부터 획득된 물체 정보의 표면 정보에 대한 데이터에 대응되는 벡터 공간 상의 좌표와의 벡터 거리를 바탕으로 획득될 수 있다. 일 실시예로, 거리가 멀수록 신뢰도 값이 작아지고, 거리가 가까울수록 신뢰도 값이 커질 수 있다.In this case, the reliability value refers to coordinates on a vector space corresponding to an output value (eg, data on surface information) output by the artificial intelligence model, and on a vector space corresponding to data on surface information of object information obtained from the output value. It can be obtained based on the vector distance from the coordinates. As an embodiment, as the distance increases, the reliability value may decrease, and as the distance increases, the reliability value may increase.

도 11은 본 발명의 일 실시예에 따른 내부 충격 및 외부 충격의 종류에 따라 표면 정보를 획득하는 방법을 설명하기 위한 흐름도이다.11 is a flowchart illustrating a method of acquiring surface information according to types of internal impact and external impact according to an embodiment of the present invention.

S710에서, 제3 충격 데이터가 기 설정된 값 이하인 경우, 제4 충격 데이터를 제2 인공지능 모델에 입력하여 전자 장치(200)의 표면 정보 및 위치 정보 중 적어도 하나를 획득할 수 있다.In S710 , when the third impact data is equal to or less than a preset value, at least one of surface information and location information of the electronic device 200 may be obtained by inputting the fourth impact data into the second artificial intelligence model.

S720에서, 제4 충격 데이터가 기 설정된 값 이하인 경우, 제3 충격 데이터를 제1 인공지능 모델에 입력하여 전자 장치(200)의 표면 정보 및 위치 정보 중 적어도 하나를 획득할 수 있다.In S720 , when the fourth impact data is equal to or less than a preset value, at least one of surface information and location information of the electronic device 200 may be obtained by inputting the third impact data into the first artificial intelligence model.

즉, 전자 장치(200)가 놓여진 물체의 종류에 따라 외부 충격을 이용하여 표면정보를 획득하는 것이 내부 충격을 이용하여 표면 정보를 획득하는 것보다 더 높은 정확도를 가지거나, 그 반대의 경우가 존재할 수 있다.That is, depending on the type of object on which the electronic device 200 is placed, obtaining surface information using an external impact has higher accuracy than obtaining surface information using an internal impact, or vice versa. can

예를 들어, 전자 장치(200)가 충격 흡수가 잘되는 쇼파 또는 침대 위에 놓여져 있는 경우, 외부 충격에 의한 충격 데이터의 값은 매우 작을 수 있다. 따라서, 서버(100)는 외부 충격에 의한 제4 충격 데이터가 기 설정된 값 이하인 경우, 제2 인공지능 모델에 의해 출력된 출력값을 무시하고, 제1 인공지능 모델에 의해 출력된 출력 값을 바탕으로 물체에 대한 정보를 획득할 수 있다.For example, when the electronic device 200 is placed on a sofa or bed that absorbs shock well, the value of impact data due to an external impact may be very small. Therefore, the server 100 ignores the output value output by the second artificial intelligence model when the fourth shock data due to the external shock is less than or equal to the preset value, and based on the output value output by the first artificial intelligence model Information about the object can be obtained.

반대로, 서버(100)는 내부 충격에 의한 제3 충격 데이터가 기 설정된 값 이하인 경우, 제1 인공지능 모델에 의해 출력된 출력값을 무시하고, 제2 인공지능 모델에 의해 출력된 출력 값을 바탕으로 물체에 대한 정보를 획득할 수 있다. 또는, 서버(100)는 내부 충격에 의한 제3 충격 데이터의 값과 외부 충격에 의한 제4 충격 데이터의 값과의 차이가 기 설정된 값 이하인 경우, 제1 인공지능 모델에 의해 출력된 출력값을 무시하고, 제2 인공지능 모델에 의해 출력된 출력 값을 바탕으로 물체에 대한 정보를 획득할 수 있다.Conversely, the server 100 ignores the output value output by the first artificial intelligence model when the third shock data due to the internal shock is less than or equal to the preset value, and based on the output value output by the second artificial intelligence model Information about the object can be obtained. Alternatively, the server 100 ignores the output value output by the first artificial intelligence model when the difference between the value of the third shock data due to the internal shock and the value of the fourth shock data due to the external shock is less than or equal to a preset value And, based on the output value output by the second artificial intelligence model, it is possible to obtain information about the object.

한편, 본 발명의 다양한 실시예에 의해 획득된 전자 장치(200)의 위치 정보를 바탕으로, 서버(100)는 전자 장치가 수행할 서비스를 결정하고, 전자 장치(200)를 제어할 수 있다.Meanwhile, based on the location information of the electronic device 200 obtained according to various embodiments of the present disclosure, the server 100 may determine a service to be performed by the electronic device and control the electronic device 200 .

일 실시예로, 서버(100)가 획득한 물체의 정보가 테이블 정보이고, 테이블에 대응되는 위치 정보가 주방인 경우, 서버(100)는 전자 장치(200)가 음식과 관련된 정보를 제공하도록 제어할 수 있다.In an embodiment, when the object information obtained by the server 100 is table information and the location information corresponding to the table is a kitchen, the server 100 controls the electronic device 200 to provide food-related information. can do.

또 다른 실시예로, 서버(100)가 획득한 물체의 정보가 책상 정보이고, 책상에 대응되는 위치 정보가 독서실인 경우, 서버(100)는 전자 장치(200)의 음량 또는 조명 밝기를 조절하도록 제어 신호를 전송할 수 있다.In another embodiment, when the information on the object obtained by the server 100 is desk information and the location information corresponding to the desk is a reading room, the server 100 controls the volume or lighting brightness of the electronic device 200 to adjust the A control signal can be transmitted.

한편, 본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.On the other hand, the steps of the method or algorithm described in relation to the embodiment of the present invention may be implemented as hardware directly, implemented as a software module executed by hardware, or a combination thereof. A software module may contain random access memory (RAM), read only memory (ROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), flash memory, hard disk, removable disk, CD-ROM, or It may reside in any type of computer-readable recording medium well known in the art to which the present invention pertains.

본 발명의 구성 요소들은 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 애플리케이션)으로 구현되어 매체에 저장될 수 있다. 본 발명의 구성 요소들은 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있으며, 이와 유사하게, 실시 예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다.The components of the present invention may be implemented as a program (or application) to be executed in combination with a computer, which is hardware, and stored in a medium. Components of the present invention may be implemented as software programming or software components, and similarly, embodiments may include various algorithms implemented as data structures, processes, routines, or combinations of other programming constructs, including C, C++ , Java, assembler, etc. may be implemented in a programming or scripting language. Functional aspects may be implemented in an algorithm running on one or more processors.

이상, 첨부된 도면을 참조로 하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다. In the above, embodiments of the present invention have been described with reference to the accompanying drawings, but those of ordinary skill in the art to which the present invention pertains can realize that the present invention can be embodied in other specific forms without changing the technical spirit or essential features thereof. you will be able to understand Therefore, it should be understood that the embodiments described above are illustrative in all respects and not restrictive.

100 : 서버
200 : 전자장치
100 : server
200: electronic device

Claims (11)

서버 및 전자 장치를 포함하는 스마트 기기 시스템의 제어 방법에 있어서,
상기 서버가, 상기 전자 장치로부터 수신한 충격 데이터를 바탕으로 상기 전자 장치의 위치를 획득하기 위한 학습 데이터를 수집하는 단계;
상기 서버가, 상기 학습 데이터를 바탕으로 인공지능 모델을 학습시키는 단계;
상기 서버가, 상기 전자 장치로부터 전자 장치의 위치 획득을 위한 입력 데이터를 수신하는 단계;
상기 서버가, 상기 입력 데이터를 상기 인공지능 모델에 입력하여 상기 전자 장치의 위치 정보를 획득하는 단계;
상기 서버가, 상기 획득된 상기 전자 장치의 위치 정보를 바탕으로 상기 전자 장치가 제공할, 상기 전자 장치의 위치 정보에 매칭된 서비스를 결정하는 단계; 및
상기 서버가, 상기 전자 장치로 상기 결정된 서비스에 대한 정보를 전송하는 단계; 를 포함하고,
상기 학습 데이터를 수집하는 단계는,
상기 전자 장치에 포함된 충격발생부가, 내부 충격 및 외부 충격 중 적어도 하나의 충격을 발생시키는 단계;
상기 전자 장치에 포함된 센서가, 상기 발생된 충격을 감지하는 단계;
상기 전자 장치가, 상기 충격에 대응하는 기계적 임펄스 응답 또는 음향 데이터인 상기 감지된 충격 데이터를 상기 서버로 전송하는 단계;
상기 서버가, 상기 충격 데이터, 상기 충격 데이터에 대응되는 물체 정보 및 상기 물체가 위치한 공간 정보를 획득하는 단계; 및
상기 서버가, 상기 충격 데이터, 상기 충격 데이터에 대응되는 물체 정보 및 상기 물체가 위치한 공간 정보 중 적어도 두개를 매칭하여 상기 학습 데이터로 저장하는 단계; 를 포함하며,
상기 충격 데이터, 상기 충격 데이터에 대응되는 물체 정보 및 상기 물체가 위치한 공간 정보를 획득하는 단계는,
내부 충격 데이터와 외부 충격 데이터를 구별하고,
상기 물체 정보는, 물체에 대한 바코드 정보 또는 시리얼 넘버에 대한 정보 또는 상기 전자 장치의 사용자에 의해 입력된 물체에 대한 정보인 것을 특징으로 하는 제어 방법.
A method for controlling a smart device system including a server and an electronic device, the method comprising:
collecting, by the server, learning data for acquiring a location of the electronic device based on the impact data received from the electronic device;
learning, by the server, an artificial intelligence model based on the learning data;
receiving, by the server, input data for obtaining a location of the electronic device from the electronic device;
obtaining, by the server, the location information of the electronic device by inputting the input data into the artificial intelligence model;
determining, by the server, a service matching the location information of the electronic device to be provided by the electronic device based on the obtained location information of the electronic device; and
transmitting, by the server, information on the determined service to the electronic device; including,
The step of collecting the learning data is,
generating, by the shock generating unit included in the electronic device, at least one of an internal shock and an external shock;
detecting, by a sensor included in the electronic device, the generated shock;
transmitting, by the electronic device, the sensed shock data, which is a mechanical impulse response or acoustic data corresponding to the shock, to the server;
obtaining, by the server, the impact data, object information corresponding to the impact data, and spatial information in which the object is located; and
storing, by the server, as the learning data by matching at least two of the impact data, object information corresponding to the impact data, and spatial information in which the object is located; includes,
Acquiring the impact data, object information corresponding to the impact data, and spatial information in which the object is located includes:
Distinguish between internal shock data and external shock data;
The control method, characterized in that the object information is barcode information or serial number information on the object, or information on the object input by a user of the electronic device.
삭제delete 삭제delete 제1항에 있어서,
상기 충격 데이터는,
IMU 센서에 의해 획득된 관성 데이터 및 마이크에 의해 획득된 오디오 데이터 중 적어도 하나의 데이터를 포함하는 것을 특징으로 하는 제어 방법.
According to claim 1,
The impact data is
A control method comprising at least one of inertial data acquired by an IMU sensor and audio data acquired by a microphone.
제4항에 있어서,
상기 인공지능 모델을 학습시키는 단계는,
상기 서버가, 내부 충격에 의해 발생된 제1 충격 데이터를 상기 학습 데이터로 획득하면, 상기 제1 충격 데이터를 제1 인공지능 모델에 입력하여 상기 제1 인공지능 모델을 학습시키는 단계; 및
상기 서버가, 외부 충격에 의해 발생된 제2 충격 데이터를 상기 학습 데이터로 획득하면, 상기 제2 충격 데이터를 제2 인공지능 모델에 입력하여 상기 제2 인공지능 모델을 학습시키는 단계; 를 포함하는 것을 특징으로 하는 제어 방법.
5. The method of claim 4,
The step of learning the artificial intelligence model is,
when the server acquires the first shock data generated by the internal shock as the learning data, inputting the first shock data into a first artificial intelligence model to learn the first artificial intelligence model; and
when the server acquires the second shock data generated by the external shock as the learning data, inputting the second shock data into a second artificial intelligence model to learn the second artificial intelligence model; Control method comprising a.
제5항에 있어서,
상기 입력 데이터를 수신하는 단계는,
상기 전자 장치에 포함된 충격발생부가, 내부 충격 및 외부 충격 중 적어도 하나의 충격을 발생시키는 단계;
상기 전자 장치에 포함된 센서가, 상기 발생된 내부 충격 및 상기 발생된 외부 충격 중 적어도 하나를 감지하는 단계; 및
상기 전자 장치가, 상기 감지된 내부 충격에 대한 제3 충격 데이터 및 상기 감지된 제4 충격 데이터 중 적어도 하나의 충격 데이터를 상기 서버로 전송하는 단계; 를 포함하는 제어 방법.
6. The method of claim 5,
Receiving the input data comprises:
generating, by the shock generating unit included in the electronic device, at least one of an internal shock and an external shock;
detecting, by a sensor included in the electronic device, at least one of the generated internal shock and the generated external shock; and
transmitting, by the electronic device, shock data of at least one of a third shock data for the sensed internal shock and the sensed fourth shock data to the server; A control method comprising a.
제6항에 있어서,
상기 전자 장치의 위치 정보를 획득하는 단계는,
상기 서버가, 상기 제3 충격 데이터를 상기 제1 인공지능 모델에 입력하여 제1 출력값으로 획득하는 단계;
상기 서버가, 상기 제4 충격 데이터를 상기 제2 인공지능 모델에 입력하여 제2 출력값으로 획득하는 단계; 및
상기 서버가, 상기 제1 출력값 및 상기 제2 출력값을 바탕으로 상기 전자 장치의 위치 정보를 획득하는 단계; 를 포함하는 제어 방법.
7. The method of claim 6,
Acquiring the location information of the electronic device includes:
obtaining, by the server, the third impact data as a first output value by inputting the third impact data into the first artificial intelligence model;
obtaining, by the server, the fourth impact data as a second output value by inputting the fourth impact data into the second artificial intelligence model; and
obtaining, by the server, location information of the electronic device based on the first output value and the second output value; A control method comprising a.
제6항에 있어서,
상기 전자 장치의 위치 정보를 획득하는 단계는,
상기 제3 충격 데이터가 기 설정된 값 이하인 경우, 상기 제4 충격 데이터를 상기 제2 인공지능 모델에 입력하여 상기 전자 장치의 위치 정보를 획득하는 단계; 및
상기 제4 충격 데이터가 기 설정된 값 이하인 경우, 상기 제3 충격 데이터를 상기 제1 인공지능 모델에 입력하여 상기 전자 장치의 위치 정보를 획득하는 단계;를 포함하는 제어 방법.
7. The method of claim 6,
Acquiring the location information of the electronic device includes:
when the third impact data is less than or equal to a preset value, inputting the fourth impact data into the second artificial intelligence model to obtain location information of the electronic device; and
When the fourth impact data is less than or equal to a preset value, inputting the third impact data into the first artificial intelligence model to obtain location information of the electronic device;
삭제delete 삭제delete 삭제delete
KR1020190162696A 2019-12-09 2019-12-09 Control method, device and program of smart device system using artificial intelligence based surface recognition method Active KR102415820B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190162696A KR102415820B1 (en) 2019-12-09 2019-12-09 Control method, device and program of smart device system using artificial intelligence based surface recognition method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190162696A KR102415820B1 (en) 2019-12-09 2019-12-09 Control method, device and program of smart device system using artificial intelligence based surface recognition method

Publications (2)

Publication Number Publication Date
KR20210072408A KR20210072408A (en) 2021-06-17
KR102415820B1 true KR102415820B1 (en) 2022-06-30

Family

ID=76603713

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190162696A Active KR102415820B1 (en) 2019-12-09 2019-12-09 Control method, device and program of smart device system using artificial intelligence based surface recognition method

Country Status (1)

Country Link
KR (1) KR102415820B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113792484B (en) * 2021-09-07 2024-02-27 珠海格力电器股份有限公司 Cargo impact attitude model construction method and platform
US20240220684A1 (en) * 2022-12-22 2024-07-04 Samsung Electronics Co., Ltd Apparatus and method for performing collision analysis

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2841022B1 (en) 2002-06-12 2004-08-27 Centre Nat Rech Scient METHOD FOR LOCATING AN IMPACT ON A SURFACE AND DEVICE FOR IMPLEMENTING SAID METHOD
KR101790892B1 (en) * 2016-05-17 2017-10-26 주식회사 씨케이머티리얼즈랩 A method of transforming a sound signal to a tactual signal and haptic device of using thereof
KR102449905B1 (en) * 2018-05-11 2022-10-04 삼성전자주식회사 Electronic device and method for controlling the electronic device thereof

Also Published As

Publication number Publication date
KR20210072408A (en) 2021-06-17

Similar Documents

Publication Publication Date Title
JP7101315B2 (en) Systems and methods for converting image data into natural language descriptions
US10786895B2 (en) Operation method for activation of home robot device and home robot device supporting the same
US12395372B2 (en) Facilitating portable, reusable, and sharable internet of things (IoT)-based services and resources
CN111354434B (en) Electronic device and method for providing information thereof
RU2644142C2 (en) Context user interface
US11383166B2 (en) Interaction method of application scene, mobile terminal, and storage medium
US11938400B2 (en) Object control method and apparatus, storage medium, and electronic apparatus
KR102616850B1 (en) An external device capable of being combined with an electronic device, and a display method thereof.
CN111163906B (en) Mobile electronic device and method of operation thereof
JP2020518929A (en) Feedback on emotion-based experiences
KR102415820B1 (en) Control method, device and program of smart device system using artificial intelligence based surface recognition method
CN114365504B (en) Electronic device and control method thereof
KR20200125514A (en) Game controller with touchpad input
US20240220073A1 (en) Method and apparatus for guiding operating body for air operation
JP2024532703A (en) Augmented Reality (AR) Pen/Hand Tracking
KR20230026228A (en) Electronic device for providing choreography learning information and method of operating the same
WO2024263359A2 (en) Gesture to button sequence as macro
WO2024233237A2 (en) Real world image detection to story generation to image generation
CN118871878A (en) Gesture-based remote control of electronic devices
KR102510051B1 (en) Control method of electronic device to determine motion matching using by reference position for each time and joint
KR102415774B1 (en) Control method of server for performing selective arrangement of multiple images
KR102612586B1 (en) Control method of electronic device removing abnormal image frame and restoring according to joint recognition in video
US12397235B2 (en) Button sequence mapping based on game state
US11503361B1 (en) Using signing for input to search fields
US20250010199A1 (en) Timed input/action release

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20191209

PA0201 Request for examination
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20210405

Patent event code: PE09021S01D

AMND Amendment
PG1501 Laying open of application
E601 Decision to refuse application
PE0601 Decision on rejection of patent

Patent event date: 20211022

Comment text: Decision to Refuse Application

Patent event code: PE06012S01D

Patent event date: 20210405

Comment text: Notification of reason for refusal

Patent event code: PE06011S01I

X091 Application refused [patent]
AMND Amendment
PX0901 Re-examination

Patent event code: PX09011S01I

Patent event date: 20211022

Comment text: Decision to Refuse Application

Patent event code: PX09012R01I

Patent event date: 20210503

Comment text: Amendment to Specification, etc.

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20211203

Patent event code: PE09021S01D

AMND Amendment
PX0701 Decision of registration after re-examination

Patent event date: 20220623

Comment text: Decision to Grant Registration

Patent event code: PX07013S01D

Patent event date: 20220225

Comment text: Amendment to Specification, etc.

Patent event code: PX07012R01I

Patent event date: 20211118

Comment text: Amendment to Specification, etc.

Patent event code: PX07012R01I

Patent event date: 20211022

Comment text: Decision to Refuse Application

Patent event code: PX07011S01I

Patent event date: 20210503

Comment text: Amendment to Specification, etc.

Patent event code: PX07012R01I

X701 Decision to grant (after re-examination)
GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20220628

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20220628

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20250324

Start annual number: 4

End annual number: 4