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 PDFInfo
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/10—Office automation; Time management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations 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
본 발명은 인공지능 기반 표면 인식 방법을 통한 스마트 기기 시스템의 제어 방법, 장치 및 프로그램에 관한 것이다. 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.
본 발명이 해결하고자 하는 과제는 인공지능 기반 표면 인식 방법을 통한 스마트 기기 시스템의 제어 방법, 장치 및 프로그램을 제공하는 것이다.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
본 발명의 실시예에 따른 서버(100)는 단일 서버로 구성될 수 있을 뿐만 아니라 필요에 따라, 복수의 서버로 구성될 수 있으며, 클라우드 서버를 포함하는 개념일 수 있다.The
전자 장치(200)는, 표면 정보를 획득하기 위한 충격 데이터를 생성할 수 있다. 다만, 이는 전자 장치(200)의 일 기능을 나타낼 뿐, 사용자에게 다양한 서비스를 제공할 수 있음은 물론이다.The
일 실시예로, 전자 장치(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
또 다른 실시 예로, 전자 장치(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
전자 장치(200)는 충격을 발생시킬 수 있는 구성을 필수 구성요소로 하나, 그외 다양한 기능을 실행하기 위한 구성을 포함할 수 있음은 물론이다. 예컨대, 전자 장치(200)는 AI 스피커 내부에 충격 발생부를 포함하도록 구성될 수 있다. 또는 전자 장치는 충격 발생부만을 포함하며, 스마트폰 등에 결합 가능한 액세서리의 형태일 수 있다.Although the
도 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
메모리(110)는 서버(100) 의 동작에 필요한 각종 프로그램 및 데이터를 저장할 수 있다. 메모리(110)는 비휘발성 메모리(110), 휘발성 메모리(110), 플래시메모리(110)(flash-memory), 하드디스크 드라이브(HDD) 또는 솔리드 스테이트 드라이브(SSD) 등으로 구현될 수 있다.The
통신부(120)는 외부 장치와 통신을 수행할 수 있다. 특히, 통신부(120)는 와이파이 칩, 블루투스 칩, 무선 통신 칩, NFC칩, 저전력 블루투스 침(BLE 칩) 등과 같은 다양한 통신 칩을 포함할 수 있다. 이때, 와이파이 칩, 블루투스 칩, NFC 칩은 각각 LAN 방식, WiFi 방식, 블루투스 방식, NFC 방식으로 통신을 수행한다. 와이파이 칩이나 블루투스칩을 이용하는 경우에는 SSID 및 세션 키 등과 같은 각종 연결 정보를 먼저 송수신 하여, 이를 이용하여 통신 연결한 후 각종 정보들을 송수신할 수 있다. 무선 통신칩은 IEEE, 지그비, 3G(3rd Generation), 3GPP(3rd Generation Partnership Project), LTE(Long Term Evolution) 등과 같은 다양한 통신 규격에 따라 통신을 수행하는 칩을 의미한다. The
프로세서(130)는 메모리(110)에 저장된 각종 프로그램을 이용하여 서버(100)의 전반적인 동작을 제어할 수 있다. 프로세서(130)는 RAM, ROM, 그래픽 처리부, 메인 CPU, 제1 내지 n 인터페이스 및 버스로 구성될 수 있다. 이때, RAM, ROM, 그래픽 처리부, 메인 CPU, 제1 내지 n 인터페이스 등은 버스를 통해 서로 연결될 수 있다. The
RAM은 O/S 및 어플리케이션 프로그램을 저장한다. 구체적으로, 서버(100)가 부팅되면 O/S가 RAM에 저장되고, 사용자가 선택한 각종 어플리케이션 데이터가 RAM에 저장될 수 있다. RAM stores O/S and application programs. Specifically, when the
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
그래픽 처리부는 연산부(미도시) 및 렌더링부(미도시)를 이용하여 아이템, 이미지, 텍스트 등과 같은 다양한 객체를 포함하는 화면을 생성한다. 여기서, 연산부는 입력부로부터 수신된 제어 명령을 이용하여 화면의 레이아웃에 따라 각 객체들이 표시될 좌표값, 형태, 크기, 컬러 등과 같은 속성값을 연산하는 구성일 수 있다. 그리고, 렌더링부는 연산부에서 연산한 속성값에 기초하여 객체를 포함하는 다양한 레이아웃의 화면을 생성하는 구성이 일 수 있다. 이러한 렌더링부에서 생성된 화면은 디스플레이의 디스플레이 영역 내에 표시될 수 있다. 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
제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
한편, 본 발명에 따른 인공지능 모델은 교사 지도학습(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
적어도 하나의 센서(210)는 충격 발생부(250)에 의해 발생한 충격을 감지하기 위한 구성이다. 일 실시예로, 적어도 하나의 센서(210)는 IMU(Inertial Measurement Unit) 센서를 포함할 수 있다. 구체적으로, 적어도 하나의 센서(210)는 자이로스코프, 가속도 센서, 지자계 센서 중 적어도 하나의 센서를 포함할 수 있다.At least one
또 다른 실시예로, 적어도 하나의 센서(210)는 음향 데이터(또는 오디오 데이터)를 수신하기 위한 마이크를 포함할 수 있다. 마이크는 충격에 의해 발생된 오디오 신호를 수신할 수 있다.In another embodiment, the at least one
입력부(220)는, 사용자 명령을 입력받기 위한 구성이다. 이때, 입력부(230)는 버튼, 키보드, 마우스, 터치 패널 등 다양한 종류의 사용자 명령을 수신하기 위한 구성일 수 있다.The
출력부(230)는, 음성 이미지 등 다양한 형태의 데이터를 출력하기 위한 구성이다. 본 발명에 따른 출력부(230)는, 스피커 및 디스플레이 중 적어도 하나를 포함할 수 있다.The
메모리(240)는, 전자 장치(200)의 동작에 필요한 각종 프로그램 및 데이터를 저장할 수 있으며, 상술한 메모리(110)의 구성을 포함할 수 있다.The
충격발생부(250)는, 충격을 발생시키기 위한 구성이다. 구체적으로, 충격발생부(250)는 도 3에 도시된 바와 같이 하우징(251) 및 충격 모듈(252)를 포함할 수 있다. 충격 모듈(252)는 상하 운동을 위한 액추에이터(예를 들어, 솔레노이드를 이용한 액추에이터)로 구현될 수 있다.The
프로세서(260)는, 전자 장치(200)를 제어하기 위한 구성으로, 상술한 프로세서(130)의 구성을 포함할 수 있다.The
한편, 본 발명의 다양한 실시예에 따라, 전자 장치(200)는 기 설정된 조건을 만족하는 경우, 충격 발생부(250)가 동작하도록 제어 신호를 전송할 수 있다. 예를 들어, 전자 장치(200)는, 전자 장치(200)의 이동을 감지하고, 이동이 중단된 경우 충격 발생부(250)가 동작하도록 제어 신호를 전송할 수 있다. Meanwhile, according to various embodiments of the present disclosure, when a preset condition is satisfied, the
또는, 전자 장치(200)는 전자 장치(200)가 물체 위에 놓여진 때 충격 발생부(250)가 동작하도록 제어 신호를 전송할 수 있다. 예컨대 전자 장치(200)는 기 설정된 값 이상의 충격을 감지한 경우, 다른 장소로 이동이 완료된 것으로 판단하고, 충격 발생부(250)가 동작하도록 제어 신호를 전송할 수 있다.Alternatively, the
도 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
이때, 내부 충격에 의해 발생하는 내부 충격 데이터와 외부 충격에 의해 발생하는 외부 충격 데이터는 상이한 데이터일 수 있다. 예컨대 내부 충격에 의해 발생하는 내부 충격 데이터의 기계적 임펄스 응답 및 외부 충격에 의해 발생하는 외부 충격 데이터의 기계적 임펄스 응답은 상이할 수 있다. 또는 내부 충격에 의해 발생하는 음향 데이터 및 외부 충격에 의해 발생하는 음향 데이터는 상이할 수 있다.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
이하에서는 도 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
일 실시예로, 서버(100)는 전자 장치(200)로부터 표면의 학습과 관련된 관성 데이터 및 음향 데이터 중 적어도 하나를 포함하는 충격 데이터를 획득할 수 있다. 이때, 관성 데이터는 가속도에 대한 데이터 또는 각속도에 대한 데이터를 포함할 수 있다. As an embodiment, the
다만, 본 발명의 일 실시예에 따라, 서버(100)는 상술한 다양한 충격 데이터 중 일부의 데이터만을 사용할 수 있음은 물론이다. 즉, 충격 데이터는 가속도 데이터, 각속도 데이터, 음향 신호 중 적어도 하나의 데이터를 포함할 수 있다.However, according to an embodiment of the present invention, of course, the
나아가, 서버(100)는 획득한 충격 데이터 및 획득한 충격 데이터에 대응되는 표면 정보를 클래스 정보로 획득할 수 있다. Furthermore, the
즉, 서버(100)는 충격 데이터 및 충격 데이터에 대응되는 표면 정보 데이터를 매칭하여 인공지능 모델을 학습시키기 위한 학습 데이터로 획득할 수 있다. That is, the
나아가, 서버(100)는 표면 정보 데이터에 대응되는 위치 정보를 추가로 획득하고, 이를 클래스 정보로 획득할 수 있음은 물론이다.Furthermore, of course, the
S120에서, 서버(100)는, 학습 데이터를 바탕으로 인공지능 모델을 학습시킬 수 있다.In S120, the
일 실시예로, 서버(100)는 학습 데이터를 바탕으로 표면의 특성을 기계학습 파라미터 형태로 모델링하고 저장할 수 있다.As an embodiment, the
S130에서, 서버(100)는, 전자 장치(200)로부터 전자 장치(200)의 위치 획득을 위한 입력 데이터를 수신할 수 있다.In S130 , the
일 실시예로, 입력 데이터는 상술한 다양한 충격 데이터일 수 있다. 즉, 입력 데이터는 내부 충격 데이터 또는 외부 충격 데이터일 수 있다. 또는, 입력 데이터는 충격에 대한 관성 데이터 또는 음향 데이터일 수 있다.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
S150에서, 서버(100)는, 획득된 전자 장치(200)의 표면 정보 및 위치 정보 중 적어도 하나를 바탕으로 전자 장치(200)가 제공할 서비스를 결정할 수 있다.In S150 , the
S160에서, 서버(100)는, 전자 장치(200)로 결정된 서비스에 대한 정보를 전송할 수 있다.In S160 , the
도 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
S220에서, 전자 장치(200)에 포함된 적어도 하나의 센서(210)가, 발생된 충격을 감지할 수 있다.In S220 , at least one
S230에서, 전자 장치(200)가, 감지된 충격 데이터를 서버(100)로 전송할 수 있다.In S230 , the
도 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
즉, 서버(100)는 충격 데이터, 물체 정보, 물체가 위치한 공간 정보를 하나의 학습데이터 세트로 장할 수 있다.That is, the
이때, 물체 정보는 해당 물체에 대한 바코드 정보 또는 시리얼 넘버에 대한 정보일 수 있다. 물체 정보가 해당 물체에 대한 바코드 정보 또는 시리얼 넘버에 대한 정보인 경우, 서버(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
또 다른 실시예로, 물체 정보는 전자 장치(200)의 사용자에 의해 입력된 물체에 대한 정보일 수 있다. 예를 들어, 서버(100)가 충격 데이터를 수신하면, 전자 장치(200)로 해당 충격 데이터에 대응되는 물체가 무엇인지 문의하는 질의 메시지를 전송할 수 있다. 전자 장치(200)는 사용자로부터 물체에 대한 정보(예를 들어 테이블, 쇼파 등과 같은 물체의 이름)를 수신할 수 있다. 상술한 방법을 통해. 서버(100)는 전자 장치(200)의 사용자의 사용 환경에 적합한 데이터를 학습 데이터로 획득하여 개인화된 서비스 제공이 가능하다.As another embodiment, the object information may be information about an object input by the user of the
S320에서, 서버(100)는, 충격 데이터, 충격 데이터에 대응되는 물체 정보 및 물체가 위치한 공간 정보 중 적어도 두개를 매칭하여 학습 데이터로 저장할 수 있다.In S320 , the
일 실시예로, 상술한 바와 같이 물체 정보가 해당 물체에 대한 바코드 정보 또는 시리얼 넘버에 대한 정보인 경우, 서버(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
또 다른 실시예로, 상술한 바와 같이, 물체 정보가 전자 장치(200)의 사용자에 의해 입력된 물체에 대한 정보인 경우, 서버(100)는 충격 데이터, 물체 정보 및 물체의 위치 정보를 모두 매칭하여 학습 데이터로 저장할 수 있다. 즉, 본 실시예에서의 학습 데이터는 전자 장치(200)의 사용자 개인에 대한 데이터이므로, 물체의 위치 정보를 학습 데이터에 포함시키는 것이 바람직하다.As another embodiment, as described above, when the object information is information about an object input by the user of the
도 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
S420에서, 서버(100)는, 외부 충격에 의해 발생된 제2 충격 데이터를 학습 데이터로 획득하면, 제2 충격 데이터를 제2 인공지능 모델에 입력하여 제2 인공지능 모델을 학습시킬 수 있다.In S420, the
즉, 서버(100)는 내부 충격에 대한 제1 충격 데이터 및 외부 충격에 대한 제2 충격 데이터를 서로 독립된 인공지능 모델에 각각 입력하여 각각의 인공지능 모델을 학습시킬 수 있다.That is, the
이는 동일한 물체 위에 있는 전자 장치(200)에 의해 발생한 충격 데이터라고 하더라도, 서버(100)는 제1 충격 데이터와 제2 충격 데이터의 특성이 다르므로, 서로 다른 인공지능 모델에 제1 충격 데이터 및 제2 충격 데이터를 각각 입력하여 제1 인공지능 모델 및 제2 인공지능 모델을 학습시킬 수 있다.Even if this is the impact data generated by the
도 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
S520에서, 전자 장치(200)에 포함된 센서가, 발생된 내부 충격 및 발생된 외부 충격 중 적어도 하나를 감지할 수 있다.In S520 , a sensor included in the
S530에서, 전자 장치(200)가, 감지된 내부 충격에 대한 제3 충격 데이터 및 감지된 제4 충격 데이터 중 적어도 하나의 충격 데이터를 서버(100)로 전송할 수 있다. In S530 , the
상술한 도 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
일 실시예로, 제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
일 실시예로, 제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
일 실시예로, 제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
다만, 제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
구체적으로, 서버(100)는 제1 인공지능 모델에 의해 출력된 제1 출력값의 제1 신뢰도값과 제2 인공지능 모델에 의해 출력된 제2 출력값의 제2 신뢰도 값을 비교하고, 신뢰도 값이 높은 출력값에 대응되는 물체 정보를 물체에 대한 정보로 획득할 수 있다.Specifically, the
이때, 신뢰도 값이란, 인공지능 모델에 의해 출력된 출력값(예: 표면 정보에 대한 데이터)에 대응되는 벡터 공간 상의 좌표와, 출력값으로부터 획득된 물체 정보의 표면 정보에 대한 데이터에 대응되는 벡터 공간 상의 좌표와의 벡터 거리를 바탕으로 획득될 수 있다. 일 실시예로, 거리가 멀수록 신뢰도 값이 작아지고, 거리가 가까울수록 신뢰도 값이 커질 수 있다.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
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
즉, 전자 장치(200)가 놓여진 물체의 종류에 따라 외부 충격을 이용하여 표면정보를 획득하는 것이 내부 충격을 이용하여 표면 정보를 획득하는 것보다 더 높은 정확도를 가지거나, 그 반대의 경우가 존재할 수 있다.That is, depending on the type of object on which the
예를 들어, 전자 장치(200)가 충격 흡수가 잘되는 쇼파 또는 침대 위에 놓여져 있는 경우, 외부 충격에 의한 충격 데이터의 값은 매우 작을 수 있다. 따라서, 서버(100)는 외부 충격에 의한 제4 충격 데이터가 기 설정된 값 이하인 경우, 제2 인공지능 모델에 의해 출력된 출력값을 무시하고, 제1 인공지능 모델에 의해 출력된 출력 값을 바탕으로 물체에 대한 정보를 획득할 수 있다.For example, when the
반대로, 서버(100)는 내부 충격에 의한 제3 충격 데이터가 기 설정된 값 이하인 경우, 제1 인공지능 모델에 의해 출력된 출력값을 무시하고, 제2 인공지능 모델에 의해 출력된 출력 값을 바탕으로 물체에 대한 정보를 획득할 수 있다. 또는, 서버(100)는 내부 충격에 의한 제3 충격 데이터의 값과 외부 충격에 의한 제4 충격 데이터의 값과의 차이가 기 설정된 값 이하인 경우, 제1 인공지능 모델에 의해 출력된 출력값을 무시하고, 제2 인공지능 모델에 의해 출력된 출력 값을 바탕으로 물체에 대한 정보를 획득할 수 있다.Conversely, the
한편, 본 발명의 다양한 실시예에 의해 획득된 전자 장치(200)의 위치 정보를 바탕으로, 서버(100)는 전자 장치가 수행할 서비스를 결정하고, 전자 장치(200)를 제어할 수 있다.Meanwhile, based on the location information of the
일 실시예로, 서버(100)가 획득한 물체의 정보가 테이블 정보이고, 테이블에 대응되는 위치 정보가 주방인 경우, 서버(100)는 전자 장치(200)가 음식과 관련된 정보를 제공하도록 제어할 수 있다.In an embodiment, when the object information obtained by the
또 다른 실시예로, 서버(100)가 획득한 물체의 정보가 책상 정보이고, 책상에 대응되는 위치 정보가 독서실인 경우, 서버(100)는 전자 장치(200)의 음량 또는 조명 밝기를 조절하도록 제어 신호를 전송할 수 있다.In another embodiment, when the information on the object obtained by the
한편, 본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 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.
상기 충격 데이터는,
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.
상기 인공지능 모델을 학습시키는 단계는,
상기 서버가, 내부 충격에 의해 발생된 제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.
상기 입력 데이터를 수신하는 단계는,
상기 전자 장치에 포함된 충격발생부가, 내부 충격 및 외부 충격 중 적어도 하나의 충격을 발생시키는 단계;
상기 전자 장치에 포함된 센서가, 상기 발생된 내부 충격 및 상기 발생된 외부 충격 중 적어도 하나를 감지하는 단계; 및
상기 전자 장치가, 상기 감지된 내부 충격에 대한 제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.
상기 전자 장치의 위치 정보를 획득하는 단계는,
상기 서버가, 상기 제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.
상기 전자 장치의 위치 정보를 획득하는 단계는,
상기 제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;
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)
| 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)
| 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 |
-
2019
- 2019-12-09 KR KR1020190162696A patent/KR102415820B1/en active Active
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 |