Electronic apparatus for object recognition and control method thereof

An electronic apparatus is disclosed. The electronic apparatus includes a sensor, a camera, a memory, a camera and a processor. The memory stores a plurality of artificial intelligence models trained to identify objects and stores information on a map. The first processor provides, to the second processor, area information on an area in which the electronic apparatus is determined, based on sensing data obtained from the sensor, to be located, from among a plurality of areas included in the map. The second processor loads at least one artificial intelligence model of the plurality of artificial intelligence models to the volatile memory based on the area information and identifies an object by inputting the image obtained through the camera to the loaded artificial intelligence model.

CROSS-REFERENCE TO RELATED APPLICATION(S)

This application is based on and claims priority under 35 U.S.C. § 119 to Korean patent application number 10-2019-0065519, filed on Jun. 3, 2019, Korean patent application number 10-2019-0099904, filed on Aug. 14, 2019, and Korean patent application number 10-2019-0122580, filed on Oct. 2, 2019, in the Korean Intellectual Property Office, the disclosure of which is incorporated by reference herein in its entirety.

BACKGROUND

The disclosure relates to an electronic apparatus for object recognition. More specifically, the disclosure relates an electronic apparatus configured to perform object recognition using an artificial intelligence model corresponding to a location of the electronic apparatus.

2. Description of Related Art

Recently, with artificial intelligence models being used in object recognition technology, object recognition capability of electronic apparatuses has greatly improved.

However, as more developed forms of artificial intelligence models are used to more accurately recognize far more objects, the amount of processing performed has proportionately increased and electronic apparatuses require a very large memory capacity or memory speed.

Accordingly, there have been limitations in overcoming the object recognition capability of user devices, specifically with respect to memory, processing capability and communication capability, by simply improving only the functions of the artificial intelligence model itself.

SUMMARY

The disclosure provides an electronic apparatus configured to perform object recognition using an artificial intelligence model corresponding to a location of the electronic apparatus, and a method of operating the same.

In accordance with an aspect of the disclosure, an electronic apparatus includes: a sensor; a camera; a storage for storing a plurality of artificial intelligence models trained to identify objects and for storing information on a map; a first processor configured to control the electronic apparatus; and a second processor configured to recognize an object, wherein the first processor is configured to determine, based on sensing data obtained from the sensor, an area in which the electronic apparatus is located from among a plurality of areas included in the map, and provide area information on the determined area to the second processor, and wherein the second processor includes a volatile memory and is configured to: load an artificial intelligence model, from among the plurality of artificial intelligence models stored in the storage, to the volatile memory based on the area information provided by the first processor, and input an image obtained through the camera to the loaded artificial intelligence model to identify an object.

In accordance with another aspect of the disclosure, an electronic apparatus includes: a camera; a sensor; a storage for storing a plurality of artificial intelligence models trained to identify objects and for storing information on a map; and a processor configured to control the electronic apparatus, wherein the processor includes a volatile memory, and wherein the processor is configured to: determine, based on sensing data obtained from the sensor, an area in which the electronic apparatus is located from among a plurality of areas included in the map, based on the determined area, load an artificial intelligence model from among the plurality of artificial intelligence models stored in the storage, and input an image obtained through the camera to the loaded artificial intelligence model to identify an object.

In accordance with another aspect of the disclosure, a control method of an electronic apparatus using an object recognition model includes: identifying a plurality of areas included in a map based on information on the map stored in a storage of the electronic apparatus; determining an area in which the electronic apparatus is located from among the plurality of areas based on sensing data obtained from a sensor; loading, to a volatile memory, an artificial intelligence model, from among a plurality of artificial intelligence models stored in the storage, based on the determined area; and identifying an object by inputting an image obtained through a camera to the loaded artificial intelligence model.

In accordance with another aspect of the disclosure, an electronic apparatus includes: a storage; and at least one processor including a volatile memory and configured to: determine an area in which the electronic apparatus is located from among a plurality of areas included in a map, based on the determined area, load an artificial intelligence model, from among the plurality of artificial intelligence models stored in the storage, corresponding to the determined area, and input an image obtained through the camera to the loaded artificial intelligence model to identify an object.

DETAILED DESCRIPTION

The disclosure relates to an electronic apparatus performing highly efficient object recognition by selectively using only circumstance-appropriate artificial intelligence models.

More specifically, the disclosure provides an electronic apparatus capable of recognizing objects of various types, while being able to recognize objects relatively quickly compared to its limited processing capabilities.

Before describing embodiments below, the description method of the disclosure and drawings are described.

First, the terms used in the disclosure are general terms identified in consideration of the functions of the various embodiments of the disclosure. However, these terms may vary depending on intention, legal or technical interpretation, emergence of new technologies, and the like of those skilled in the related art. In addition, there may be some arbitrary terms selected by an applicant. The terms may be interpreted based on the meanings as defined herein, and may be construed based on the overall content of the disclosure and the technological common sense of those skilled in the related art in case no specific definition of the term is described.

In addition, like reference numerals or characters disclosed in each of the drawings attached herein indicate a component or element performing substantially the same functions. For convenience of descriptions and understandings, like reference numerals or characters may be used to describe different embodiments. That is, even if an element with a like reference numeral is illustrated in all of a plurality of drawings, the plurality of drawings may not necessarily refer to only one embodiment.

In addition, the terms including ordinal numbers such as “first” and “second” may be used to differentiate between elements in the disclosure. These ordinal numbers are used merely to distinguish same or similar elements from one another, and should not be understood as limiting the meaning of the terms as a result of using these ordinal numbers. For example, the elements associated with the ordinal numbers should not be limited in order or order of use by the numbers. If necessary, each ordinal number may be used interchangeably.

A singular expression in the disclosure includes a plural expression, unless otherwise specified clearly in context. It is to be understood that the terms such as “comprise” or “consist of” are used herein to designate a presence of a characteristic, a number, a step, an operation, an element, a component, or a combination thereof, and not to preclude a presence or a possibility of adding one or more of other characteristics, numbers, steps, operations, elements, components or a combination thereof.

In the description, terms such as “module,” “unit,” and “part” may be used to refer to an element performing at least one function or operation, and these elements may be implemented as hardware or software, or a combination of hardware and software. Further, except for when each of a plurality of “modules,” “units,” “parts,” and the like needs to be implemented in an individual hardware, the components may be integrated in at least one module or chip and be implemented in at least one processor

In addition, in an embodiment, when any part is indicated as connected to another part, this includes not only a direct connection, but also an indirect connection through another medium. Further, when a particular part includes a particular element, an another element may be further included rather than precluding the other element, unless otherwise specified.

FIG. 1is a diagram illustrating an example of an electronic apparatus identifying an object using different artificial intelligence models for each area (e.g., living room and kitchen) according to an embodiment.

FIG. 1illustrates an object recognition process of an electronic apparatus10implemented as a robot cleaner according to an embodiment.FIG. 1illustrates a situation where a plurality of artificial intelligence models for recognizing various objects such as a television (TV), a sofa, a bed, a closet, clothes, foreign substance, a chair, a sink, and an air conditioner is stored in a non-volatile memory or a storage of an electronic apparatus10.

Referring toFIG. 1, the electronic apparatus10, which is a robot cleaner, may move around areas1-1,1-2, and1-3on a map1photographing images of various objects, and may input the photographed images to a plurality of artificial intelligence models to recognize objects within an image.

In this case, a capacity or processing rate of a volatile memory of the electronic apparatus10may be insufficient for the electronic apparatus10to load the plurality of artificial intelligence models stored in the non-volatile memory such as a storage and to perform object recognition.

Accordingly, the electronic device10may determine an area in which the electronic apparatus10is located from the areas on the map1, and load, to a volatile memory, only the artificial intelligence model corresponding to the area in which the electronic apparatus10is located from among the stored plurality of artificial intelligence models to recognize the object in the image of the photographed object.

To this end, each of the plurality of artificial intelligence models stored for different areas may be pre-stored in the electronic apparatus10.

For example, referring to table (2) inFIG. 1, a living room model2-1may recognize an air conditioner, a TV, and the like, which are normally located in the living room. On the other hand, the living room model2-1may not recognize a refrigerator, a bed, and the like not normally located in the living room.

In addition, referring to table (2), a bedroom model2-2may not recognize a refrigerator while recognizing an air conditioner, a TV, a bed, and the like.

Accordingly, if the electronic apparatus10is located in the living room1-1, the electronic apparatus10may selectively load, to the volatile memory of a processor, only the living room model2-1, from among the stored plurality of artificial intelligence models, to recognize the air conditioner, the TV, and the like, and use the loaded living room model2-1to perform recognition on the object in the image photographed from the living room1-1.

On the other hand, if the electronic apparatus10is located in a bed room1-2, the electronic apparatus10may selectively load, to the volatile memory of a processor, only the bed room model2-2, from among the stored plurality of artificial intelligence models, to recognize the air conditioner, the TV, the bed, and the like, and use the loaded bed room model2-2to perform recognition on the object in the image photographed from the bed room1-2.

Configurations and operations of an electronic apparatus10,100according to various embodiments are described in greater detail below.

FIG. 2is a block diagram illustrating a configuration of an electronic apparatus100according to an embodiment.

Referring toFIG. 2, the electronic apparatus100may include a sensor110, a camera120, a storage130, a first processor140-1, and a second processor140-2. The electronic apparatus100may be a moving robot provided with moving mechanisms or means or an auxiliary device capable of connecting and detaching to a moving device. The electronic apparatus100may be implemented as a wearable device of various types. In addition, the electronic apparatus100may be implemented as various terminal apparatuses such as a smartphone, a tablet personal computer (PC), a notebook PC, etc.

The sensor110, as a configuration for determining the location of the electronic apparatus100, may be implemented as a light detection and ranging (LiDAR) sensor, an ultrasonic sensor and the like, but is not limited thereto.

The camera120is a configuration for obtaining or capturing one or more images on the surroundings of the electronic apparatus100. The camera120may be implemented as a red/green/blue (RGB) camera, a three dimensional (3D) camera, and the like.

The storage130is a configuration for variably storing various information related to the functions of the electronic apparatus100. The storage130may be implemented as a non-volatile memory such as a hard disk, a solid state drive (SSD), and a flash memory (e.g., NOR-type flash memory or NAND-type flash memory).

The storage130may be stored with information131on the map. The map may refer to data indicating a physical terrain of a place in which the electronic apparatus100is operated. While the map may be stored in image form on the storage130, it is understood that one or more other embodiments are not limited thereto.

The information on the map, or the map itself, may include terrain information of the place the electronic apparatus100is operated. Area information of each of the plurality of areas included in the map, additional information related to the map, and the like may also be included.

The terrain information may include information on a structure (e.g., shape and/or size) of the place, information of the structure (e.g., shape and/or size) of each of the plurality of areas included in the space, information on a location within the place of each of the plurality of areas, and the like.

The area information may refer to information for identifying each of the plurality of areas. The area information may consist of or include identification names indicating each of the plurality of areas, identification numbers, and the like. In addition, the area information may include information on use of each of the plurality of areas, and each of the plurality of areas according to area information may be defined as, for example, living room, bath room, bedroom, and the like.

The additional information may include information on use of place (e.g., home, work, gym, etc.), location, name, user, and the like, and data on images obtained through the camera120at each of the plurality of areas.

The storage130may store one or more artificial intelligence models132. Specifically, a plurality of artificial intelligence models132trained to identify objects may be stored in the storage130according to an embodiment. For example, artificial intelligence models trained to identify objects included in the input image may be stored in plural.

The identifying an object may be understood as obtaining information on an object, such as name and type of the object. In this case, information on the objects may be information on the identified object output by the plurality of artificial intelligence models that identified the related object.

The first processor140-1may be connected with the sensor110and the storage130to control the electronic apparatus100. Further, the first processor140-1may be connected to the second processor140-2as a main processor to control the second processor140-2.

The second processor140-2may be connected to the camera120, the storage130, and the first processor140-1to perform a function for object recognition.

Referring toFIG. 2, the first processor140-1may determine an area in which the electronic apparatus100is located from among the plurality of areas included in the map (operation S110). Specifically, the first processor140-1may use information on the map divided by the plurality of areas to identify the plurality of areas included in the map, and use sensing data obtained through the sensor110to determine the area in which the electronic apparatus100is located from among the plurality of areas on the map.

The first processor140-1may transfer area information on the determined area to the second processor140-2connected to the first processor140-1(operation S120). The first processor140-1may transfer the area information to the second processor140-2in the form of an electrical signal or data.

The second processor140-2may, based on area information transferred from the first processor140-1, load at least one artificial intelligence model of the plurality of artificial intelligence models132(i.e., model1, model2. . . ) stored in the storage130to the volatile memory145. Specifically, the second processor140-2may load the artificial intelligence model corresponding to the determined area from among the plurality of artificial intelligence models132.

In this case, the second processor140-2may use the plurality of artificial intelligence models132stored in the storage130and a logical mapping information between the plurality of areas to identify and load the artificial intelligence model mapped to the determined area.

The logical mapping information may be information for mapping one or more artificial intelligence models in or to each of the plurality of areas. The logical mapping information may include information on a parameter for outputting information indicating at least one of the plurality of artificial intelligence models132from information indicating each of the plurality of areas. The logical mapping information may include information on addresses of artificial intelligence models corresponding to each area stored in the storage130.

The logical mapping information may be pre-set by the user, and/or may be generated and stored by the first processor140-1that obtained the artificial intelligence model corresponding to (mapping) each of the plurality of areas according to, for example, the embodiments ofFIGS. 7A to 7C, which are described below. In addition, based on the updated results of the artificial intelligence model corresponding to each of the plurality of areas according to, for example, the embodiments ofFIGS. 8A to 8CandFIGS. 9A to 9Cdescribed below, the logical mapping information may also be updated.

The first processor140-1may use the logical mapping information on the determined area to identify the artificial intelligence model corresponding to the determined area. The second processor140-2may load the corresponding artificial intelligence model when (or based on) information on the identified artificial intelligence model is transferred to the second processor140-2.

The second processor140-2may input the image obtained through the camera120to the loaded artificial intelligence model to identify the object (operation S140). In this case, the second processor140-2may use the output of the loaded model to identify the object included in the image obtained through the camera120.

Accordingly, because the second processor140-2may load only the artificial intelligence model corresponding to the determined area from among the plurality of artificial intelligence models132stored in the storage130for use in object recognition, a relatively accurate and fast object recognition may be performed within the processing capabilities of the second processor140-2.

In this regard, if the area in which the electronic apparatus100is located is changed, the second processor140-2may remove the artificial intelligence model loaded in the volatile memory145prior to changing location from the volatile memory145, while loading a different artificial intelligence model corresponding to the changed area to perform object recognition. That is, the second processor140-2may at the very least load only the artificial intelligence model, from among the plurality of artificial intelligence models132, required for each area in which the electronic apparatus100is located and use the artificial intelligence model.

The first processor140-1and the second processor140-2may be implemented as one processor or a plurality of processors to perform operations.

Specifically, referring toFIG. 2, the processor141including the first processor140-1and the second processor140-2may determine the area in which the electronic apparatus100is located from among the plurality of areas on the map, load at least one model of the plurality of artificial intelligence models132based on area information, and use the loaded model to identify the object in the image obtained through the camera120.

FIGS. 3A and 3Bare diagrams illustrating an example of an electronic apparatus100identifying an area where the electronic apparatus100is located from among a plurality of areas.

The first processor140-1may use information on the map stored in the storage130and sensing data to determine the area in which the electronic apparatus100is located.

As a specific example, if the sensor110is a LiDAR sensor, the first processor140-1may compare sensing data received from the sensor110and information on the map stored in the storage130to determine the area in which the electronic apparatus100is located.

The sensing data may include information on the structure of the surroundings of the electronic apparatus100. Information on the surrounding structure may include information on the structured object or the shape and/or size of things present in the surroundings.

In this case, the first processor140-1may compare information on the structure (i.e., shape and/or size) of the surroundings of the electronic apparatus100included in the sensing data with information on the structure (i.e., shape and/or size) of each of the plurality of areas on the map included in the information on the map to determine the area in which the electronic apparatus100is located from among the plurality of areas on the map.

Referring toFIG. 3A, the electronic apparatus100implemented as a robot cleaner may use sensing data received from the sensor110implemented as a LiDAR sensor to identify the surrounding structure301based on the distance from the surrounding structured object or the distance from each point (or each of a plurality of points) in the object. Further, the electronic apparatus100may identify a point coincident with the identified surrounding structure301on the map300to determine the location of the electronic apparatus100on the map300. The electronic apparatus100may use the determined location and the location of each of the plurality of areas300-10,300-20,300-30, and300-40on the map300to determine if the electronic apparatus100is located in the kitchen300-30from among the plurality of areas300-10,300-20,300-30, and300-40.

The first processor140-1may also use data on the surrounding image obtained through the camera120to determine which area of the plurality of areas the electronic apparatus100is located.

For example, if the information on the map includes data on a three dimensional (3D) image of each of the plurality of areas, the first processor140-1may use the result of comparing the image of each of the plurality of areas included in the information on the map with the 3D image obtained through the camera120implemented as a 3D camera to determine the area in which the electronic apparatus100is located.

Referring toFIG. 3B, the electronic apparatus100implemented as a robot cleaner may compare the image302obtained through the camera120with the interior images of the plurality of areas300-10,300-20,300-30, and300-40stored in the storage130to determine if the electronic apparatus100is located in the bedroom300-20.

Alternatively, the first processor140-1may also identify one or more objects in the image obtained through the camera120from the area in which the electronic apparatus100is located to determine the area in which the electronic apparatus100is located.

As a specific example, the first processor140-1may input the image photographed through the camera120from the area in which the electronic apparatus100is located to at least one of the stored plurality of artificial intelligence models132to identify the object in the image. If the identified object is a sofa and a TV, the first processor140-1may use pre-set information of one or more objects per area to identify that the sofa and the TV correspond to the “living room.”

In addition, the first processor140-1may use the sensor110, which includes an inertia sensor, an acceleration sensor, and the like, to determine the point at which the electronic apparatus100is located on the map300, as well as determine the area including the determined point from among the plurality of areas on the map as the area in which the electronic apparatus100is located.

The process of the first processor140-1determining the area in which the electronic apparatus100is located is not limited to the above-described embodiments, and may be performed by various other methods.

FIG. 4is a diagram of a table illustrating an example of a plurality of artificial intelligence models stored in a storage130of an electronic apparatus100.

Referring toFIG. 4, in the storage130, one or more trained artificial intelligence models, such as an air conditioner model401trained to identify an air conditioner and a refrigerator model402trained to identify a refrigerator, may be stored to respectively identify a corresponding object.

In the storage130, one or more artificial intelligence models trained to identify a plurality of objects may be stored. Referring toFIG. 4, the bedroom model410of the plurality of artificial intelligence models stored in the storage130may be a model (or models) capable of identifying objects such as an air conditioner, a TV, a bed, a chair, a cup, and a glass bottle. Referring toFIG. 4, the kitchen model430of the plurality of artificial intelligence models stored in the storage130may be may be a model (or models) capable of identifying objects such as an air conditioner, a refrigerator, a chair, a cup, a glass bottle, and a plate.

When the first processor140-1determines that the electronic apparatus100is located in the bedroom, the second processor140-2may load the bedroom model410to the volatile memory145. On the other hand, if the first processor140-1determines that the electronic apparatus100is located in the kitchen, the second processor140-2may load the kitchen model430to the volatile memory145.

AlthoughFIG. 4illustrates the artificial intelligence models401,402. . . trained to identify objects related to “home” and artificial intelligence models410,420,430,440. . . stored to correspond to each of the plurality of areas in the “home,” an artificial intelligence model for identifying one or more objects included in various places (i.e., libraries, museums, squares, playing fields, etc.) other than the home and a plurality of artificial intelligence models stored to correspond to each of the plurality of areas included in the place other than the home may be stored in the storage130.

The artificial intelligence model stored in the storage130may consist of or include a plurality of neural network layers. Each layer may include a plurality of weighted values, and a calculation of the layer is performed through the calculation results of the previous layer and the calculation of the plurality of weighted values. Examples of the neural network may include a convolutional neural network (CNN), a deep neural network (DNN), a recurrent neural network (RNN), a restricted Boltzmann machine (RBM), a deep belief network (DBN), a bidirectional recurrent deep neural network (BRDNN), and a deep Q-network. Further, the neural network in the disclosure is not limited to the above-described examples, unless otherwise specified.

The artificial intelligence model may consist of or include an ontology-based data structure in which various concepts, conditions, relationships or agreed knowledge is represented in a computer processable form.

The artificial intelligence model stored in the storage130may be trained through the electronic apparatus100or a separate server/system through various learning algorithms. The learning algorithm may be a method that trains a predetermined target device (e.g., robot) so that the predetermined target device is able to determine or predict on its own using multiple training data. Examples of the learning algorithm may include supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning. It is understood that the learning algorithm in the disclosure is not limited to the above-described examples, unless otherwise specified.

The form/type of the artificial intelligence model is not limited to the above-described examples.

Each of the plurality of artificial intelligence models stored in the storage130may include a convolutional layer and a fully-connected layer trained to identify at least one object based on characteristic information extracted through the convolutional layer.

In this case, the convolution layer may be a common layer in the plurality of artificial intelligence models132stored in the storage130, and the fully-connected layer may be a layer individually provided to each of the plurality of artificial intelligence models132.

Each of the fully-connected layers consisting of or including the plurality of artificial intelligence models may be a layer trained to identify at least one object from characteristic information output from the convolutional layer. In this case, each of the fully-connected layers may also output probability values of at least one object being included in the related image for each object.

As a specific example of the electronic apparatus100using an artificial intelligence model including a convolutional layer and a fully-connected layer to perform object recognition, the second processor140-2may input an image obtained through the camera120to the convolution layer. When characteristic information output through the convolution layer is then input to the fully-connected layer, the second processor140-2may use data output through the fully-connected layer to obtain the probability of a predetermined object being included in the image.

The first processor140-1and the second processor140-2may, based the obtained probability being greater than a threshold value when comparing the obtained probability with the threshold value, identify that the predetermined object is included in the input image.

FIG. 5is a diagram illustrating a specific example of selectively loading an artificial intelligence model corresponding to an identified area from among a plurality of artificial intelligence models consisting of or including a convolutional layer and a fully-connected layer.

InFIG. 5, the plurality of artificial intelligence models as illustrated and described throughFIG. 4being stored in the storage130may be assumed. Referring toFIG. 4, the plurality of artificial intelligence models stored in the storage130may include a bedroom model410, a living room model420, a kitchen model430, and the like.

Referring toFIG. 5, the plurality of artificial intelligence models500stored in the storage130may consist of or include the convolutional layer501extracting characteristic information when (or based on) data on an image is input and the fully-connected layer502trained to identify one or more objects when the extracted characteristic information is input.

Referring toFIG. 5, the fully-connected layer502may be divided into a plurality of mutually independent fully-connected layers510,520,530. . . . The mutually independent fully-connected layers510,520,530. . . may be layers trained to identify one or more objects different from one another when (or based on) extracted characteristic information is input.

The bedroom model410ofFIG. 4may include the convolutional layer501and the fully-connected layer510ofFIG. 5, the living room model420ofFIG. 4may consist of the convolutional layer501and the fully-connected layer520ofFIG. 5, and the kitchen model430ofFIG. 4may consist of the convolutional layer501and the fully-connected layer530ofFIG. 5.

That is, the plurality of artificial intelligence models410,420,430. . . ofFIG. 4may commonly use the convolutional layer501while being divided from one another through the fully-connected layers510,520,530. . . trained to identify objects different from one another.

The second processor140-2may load the convolutional layer and the fully-connected layer of the artificial intelligence model corresponding to the determined area to the volatile memory145.

For example, based on determining that the electronic apparatus100is located in the “bedroom,” the second processor140-2may load the convolutional layer501and the fully-connected layer510to the volatile memory145to use the bedroom model410.

The plurality of artificial intelligence models500including a first model corresponding to a first area of a plurality of areas and a second model corresponding to a second area of a plurality of areas may be assumed.

The second processor140-2may, based on the electronic apparatus100being located at the first area, load the convolutional layer and the fully-connected layer corresponding to the first model to the volatile memory145, and based on the electronic apparatus100being located at the second area, load the convolutional layer and the fully-connected layer corresponding to the second model to the volatile memory145.

For example, based on determining that the electronic apparatus100is located in the “bedroom,” the second processor140-2may load the convolutional layer501and the fully-connected layer510. If the location of the electronic apparatus100is determined as having changed to the “living room,” the second processor140-2may maintain the convolutional layer501in a loaded state and load a new fully-connected layer520after removing the fully-connected layer510from the volatile memory145.

The information of the map stored in the storage130may be generated/updated by the first processor140-1.

FIGS. 6A to 6Dare diagrams illustrating various examples of an electronic apparatus100generating information on a map.

The first processor140-1may obtain information on the structure of the place the electronic apparatus100is located based on sensing data received from the sensor110.

Referring toFIG. 6, the first processor140-1may control a moving means or mechanism of the electronic apparatus100for the electronic apparatus100to move within the related place. While the electronic apparatus100is in movement, the first processor140-1may then use sensing data received through the sensor110, which is a LiDAR sensor, to obtain information on the structure(s) of the related place.

In this case, the first processor140-1may use sensing data received through the sensor110, which may be a LiDAR sensor, to identify the distance(s) from the surrounding structured object(s) of the electronic apparatus100and the distance from the points in the object(s), and obtain information on the surrounding structure (i.e., shape and/or size) based on the identified distance.

In addition, the first processor140-1may obtain data on the image photographed through the camera120, which may be implemented as a 3D camera, while the electronic apparatus100is in movement. The first processor140-1may then obtain information on the structure (i.e., shape and/or size) of the related place using the obtained image.

Referring toFIG. 6A, the first processor140-1may use information on the obtained structure to obtain image data relating to a first dimensional map600, which appears as if a part or whole of the related place is viewed from a specific direction.

The first processor140-1may, based on information on the obtained structure, divide the place in which the electronic apparatus100is located to a plurality of areas.

In this case, the first processor140-1may use various algorithms to divide the plurality of areas of the map. For example, the first processor140-1may identify a point where there is a dividing line or a protrusion (or a threshold) on a floor, a point where a movable width becomes narrow, a point where there is a wall, a point where a wall ends, a point where there is a door, and the like through sensing data obtained through the sensor110, which may a LiDAR sensor, and/or images obtained through the camera120. The first processor140-1may divide each area on the map by using the identified points as demarcations between areas.

InFIG. 6B, the first processor140-1may determine the location of the electronic apparatus100on the first dimensional map600through the image (e.g., 3D image) obtained through the sensing data obtained through a LiDAR sensor included in the sensor110and/or the camera120.

The first processor140-1may then use sensing data obtained through the LiDAR sensor to identify the “point where a wall ends.” In addition, the first processor140-1may control the second processor140-2to input the image650(e.g., RGB image) obtained through the camera120to at least one of the plurality of artificial intelligence models stored in the storage130to identify “point where a wall ends”651, “door”652, and the like included in the image650.

The first processor140-1may use the above-described points651and652and the structure of the wall to divide/define one independent area600-20including the point where the electronic apparatus100is currently located, on the first dimensional map600. The first processor140-1may then use other various algorithms in addition thereto to respectively divide the remaining areas600-10,600-30and600-40, on the first dimensional map600.

It is understood, however, that dividing the place in which the electronic apparatus100is located to a plurality of areas is not limited only to the above-described embodiments, and various other methods and/or devices may be implemented in one or more other embodiments.

The first processor140-1may generate information on the map including information on the structures of each of the divided plurality of areas and store (or control to store) the information on the generated map in the storage130.

The first processor140-1may generate/store information on a map including an interior image of each divided area and information on the characteristics of each divided area. The characteristics of each divided area may relate to a purpose, a size, and the like of each area.

The first processor140-1may add, to the information on the map, an interior image of each of the plurality of areas obtained through the camera120while the electronic apparatus100is positioned at each of the divided plurality of areas.

For example, the first processor140may obtain multi-angled images obtained through the camera120each time the electronic apparatus100is located at each of the various points on the plurality of areas, and may store the obtained multi-angled images as information on the map.

The second processor140-2may input the image obtained through the camera120while the electronic apparatus100is located at each of the divided plurality of areas to at least one of the plurality of artificial intelligence models stored in the storage130to identify the object located at each of the plurality of areas. The first processor140-1may then obtain information on the objects identified as located at each of the plurality of areas as information on objects present at each of the plurality of areas and store the obtained information in the storage130.

The information on objects present at each of the plurality of areas may be information related to at least one output of the plurality of artificial intelligence models. That is, the information on the objects may include the result (i.e., name, size, type, etc., of the identified object) of the at least one artificial intelligence model, of the plurality of artificial intelligence models132stored in the storage130, identifying an object by receiving input of the images obtained from the plurality of areas, and outputting information on the identified object. The information on the objects may also include information on an identity of a person if the object is a person.

As information on objects may be pre-stored for each of the plurality of areas, the information on the objects present at each of the plurality of areas may be stored/matched to match the information output by the plurality of artificial intelligence models to identify at least one object. The information on the objects present at each of the plurality of areas may be classified and managed by categories such as name and type (i.e., home appliance, furniture, gym equipment, etc.) for searching/processing convenience of each of the artificial intelligence models.

The first processor140-1may use information on the objects present at each of the plurality of areas to identify the purpose of each of the plurality of areas.

Referring toFIG. 6C, the first processor140-1may control the second processor140-2to input, to the one or more artificial intelligence models stored in the storage130, one or more images, obtained through the camera120, of an area600-10while the electronic apparatus100is located in the related area600-10.

Accordingly, the first processor140-1and the second processor140-2may identify that a TV661and a sofa662are located in the area600-10. The first processor140-1may then use the object information for each pre-stored area so that the one or more objects correspond to each of the one or more areas such as “living room,” “kitchen,” and “bedroom” to identify the area corresponding to a TV661and a sofa662as the “living room.” The first processor140-1may then identify that the purpose or identity of the area600-10is the “living room.”

The first processor140-1may then use objects identified in each of the remaining areas600-20,600-30and600-40to identify that the purpose or identity of the remaining areas600-20,600-30and600-40are the “bedroom,” the “kitchen,” and the “bathroom,” respectively.

The first processor140-1may divide each area or obtain information on each area according to a user input received from the electronic apparatus100.

For example, when an image corresponding to the first dimensional map generated through sensing data of the sensor110, which is a LiDAR sensor, is displayed on a display of the electronic apparatus100, the first processor140-1may divide the image corresponding to the first dimensional map to a plurality of areas according to a touch input of a user for at least some zones included in the image of the displayed first dimensional image.

In addition, when the image corresponding to the first dimensional map divided into the plurality of areas is displayed on the display of the electronic apparatus100, the first processor140-1may identify the purpose or identity of the at least one area of the plurality of areas divided according to the touch input of the user selecting at least one of the divided plurality of areas and the touch input of the user selecting/inputting the purpose of the selected area.

The user input for dividing each area or defining the information (e.g., purpose) on each area may not only be directly received in the electronic apparatus100, but also indirectly received through an external apparatus such as a smartphone and a PC. In this case, the information on user input received through the external apparatus may be received by the electronic apparatus100from the external apparatus.

For example,FIG. 6Dis a diagram illustrating an electronic apparatus100identifying the purpose of the plurality of areas on the first dimensional map according to a user input received through the external apparatus200.

Referring toFIG. 6D, the electronic apparatus100, which is a robot cleaner, may transmit information on the first dimensional map600divided into a plurality of areas to the external apparatus200after performing the processes as inFIGS. 6A and 6B.

Referring toFIG. 6D, the external apparatus200may display the first dimensional map600received in a first zone201on a screen.

As shown inFIG. 6D, when (or based on) the touch of the user670on the some zones671of the area600-10of the plurality of areas600-10,600-20,600-30and600-40divided on the first dimensional map600is input, the external apparatus200may identify the area600-10as having been selected. In this case, the external apparatus200may visually indicate that the related area600-10has been selected by adjusting the color of the zone included in the selected area600-10.

The external apparatus200may then display a graphical user interface (GUI) for receiving input of the purpose of the selected area600-10to a second zone202on the screen.

Referring toFIG. 6D, the GUI on the second zone202may include a plurality of menu items681that the user may select for the purpose of the area600-10. In addition, the GUI on the second zone202may also include an item682for the user to directly input the purpose of the area600-10. When the touch of the user on the related item682is input, a keyboard for the user to input a text may be displayed on the screen of the external apparatus200.

The external apparatus200may then transmit information on the selected area600-10and information on the purpose selected/input by the GUI to the electronic apparatus100.

The electronic apparatus100may then identify the purpose of the selected area600-10among the plurality of areas divided on the first dimensional map600through the received information.

The configuration of the screen, the form (i.e., touch) of receiving user input, and the like illustrated and described throughFIG. 6Dare merely an example, and various technical methods that are generally known may be applicable in addition thereto. Further, althoughFIG. 6Dillustrates receiving a user input when the first dimensional map600has already been divided into a plurality of areas, receiving a user input to divide the first dimensional map600to a plurality of areas through the external apparatus may also be possible in various embodiments.

The electronic apparatus may newly define/obtain the plurality of artificial intelligence models corresponding to each of the plurality of areas divided through the process ofFIG. 6Band/orFIG. 6C. To this end, the electronic apparatus may use the artificial intelligence model trained to identify the plurality of objects that is pre-stored in the storage.

Specifically, when an artificial intelligence model trained to identify a plurality of objects is stored in the storage130, the second processor140-2may input an image obtained through the camera120while the electronic apparatus100is located at each of the plurality of areas to the artificial intelligence model to identify objects present at each of the plurality of areas. Although, the process may be performed separate from the process ofFIG. 6Cwhere an object is identified in the place the electronic apparatus is located, the process may also be performed together with the process ofFIG. 6C.

Further, the second processor140-2may transfer (or provide) information on the identified object to the first processor140-1. In this case, the first processor140-1may, based on information on the identified object transferred from the second processor140-2, obtain the artificial intelligence model corresponding to each of the plurality of areas from the stored artificial intelligence models.

FIGS. 7A to 7Care diagrams illustrating an example of an electronic apparatus100obtaining an artificial intelligence model corresponding to each of a plurality of areas using an object identified in each of the plurality of areas.

FIG. 7Ais a diagram of a table briefly illustrating information on the objects identified at each of the plurality of areas being stored in the storage130as information on objects present at each of the plurality of areas.

Referring toFIG. 7A, an air conditioner11, a TV13, a bed21, a chair23and the like are present in the bedroom51, and an air conditioner11, a TV13, a sofa22, and the like are present in the living room52.

FIG. 7Bis a diagram illustrating a data structure of an artificial intelligence model700stored in the storage130prior to obtaining the plurality of artificial intelligence models corresponding to each of the plurality of areas.

Referring toFIG. 7B, the artificial intelligence model700may be composed as a fully-connected layer702for identifying a plurality of objects using a convolutional layer701and characteristic information extracted from the convolutional layer701.

FIG. 7Bis a diagram illustrating a node711outputting the probability of an air conditioner being included in the input image, a node712outputting the probability of a refrigerator being included in the input image, a node713outputting the probability of a TV being included in the input image, a node721outputting the probability of a bed being included in the input image, a node722outputting the probability of a sofa being included in the input image, and a node723outputting the probability of a chair being included in the input image. Additionally, node731, node732, and node733are nodes respectively related to a cup, a glass bottle, and a plate.

The first processor140-1may, based on information on the objects present at a first area from information on objects present at each of the plurality of areas stored in the storage130, identify that a first object is present at the first area.

In this case, the first processor140-1may identify a part of the fully-connected layer trained to identify the first object of the fully-connected layer of the artificial intelligence model stored in the storage130.

The first processor140-1may then obtain (define) a first model including a part of the identified fully-connected layer and the convolutional layer of the artificial intelligence model stored in the storage130and store the first model in the storage130. In this case, the first processor140-1may generate logical mapping information connecting (matching) the first model with the first area and store the generated information in the storage130.

The first processor140-1may, based on information on an object present in a second area from information on objects present at each of the plurality of areas stored in the storage130, identify that a second object is present at the second area.

The first processor140-1, in this case, may identify a different part of the fully-connected layer trained to identify the second object from the fully-connected layer of the artificial intelligence model stored in the storage130.

The first processor140-1may then obtain (define) a second model including a different part of the identified fully-connected layer and the convolutional layer of the artificial intelligence model stored in the storage130and store the second model in the storage130. In this case, the first processor140-1may generate logical mapping information connecting (matching) the second model with the second area and store the generated information in the storage130.

For example, the first processor140-1may use information inFIG. 7Ato identify that an air conditioner11, a TV13, a bed21, a chair23, and the like are present in the “bedroom”51.

The first processor140-1may define a new fully-connected layer751′ including the nodes711,713,721and723related to the air conditioner11, the TV13, the bed21, and the chair23and the part used in an inference process to generate an output of the corresponding nodes711,713,721and723from the fully-connected layer702illustrated inFIG. 7B.

Although the fully-connected layer751′ may be related to the inference process for generating output of the node712related to the refrigerator of the fully-connected layer702, the fully-connected layer751′ may not include parts unrelated to the inference process for generating output of nodes711and713related to the air conditioner11and the TV13.

Further, referring toFIG. 7C, the first processor140-1may obtain a new bedroom model751including the convolutional layer701and the fully-connected layer751′.

For example, the first processor140-1may use information ofFIG. 7Ato identify that an air conditioner11, a TV,13, a sofa22, and the like are present in the “living room”52.

The first processor1140-1may define/obtain a new fully-connected layer752′ including the nodes711,713and722related to the air conditioner11, the TV13, the sofa22and the part used in the inference process to generate an output of the corresponding nodes711,713, and722from the fully-connected layer702illustrated inFIG. 7B.

Although the fully-connected layer752′ may be related to the inference process for generating output of the node721related to the bed21of the fully-connected layer702, the fully-connected layer752′ may not include parts unrelated to the inference process for generating output of the node722related to the sofa22.

Referring toFIG. 7C, the first processor140-1may obtain a living room model752including the convolutional layer701and the fully-connected layer752′.

The first processor140-1may then store the obtained artificial intelligence model in the storage130among artificial intelligence models corresponding to each area.

The first processor140-1may store the logical mapping information that maps the fully-connected layer751′ included in the bedroom model751of the fully-connected layer702with the bedroom51in the storage130. In addition, the first processor140-1may store the logical mapping information that maps the fully-connected layer752′ included in the living room model752of the fully-connected layer702with the living room52in the storage130.

If, for example, the electronic apparatus100is determined as being located in the bedroom51, the second processor140-2may then load only the bedroom model751of the artificial intelligence models700stored in the storage130to the volatile memory145according to the control of the first processor140-1. Specifically, the second processor140-2may load the fully-connected layer751′ that is mapped with the logical mapping information related to the bedroom51together with the convolutional layer701.

Alternatively, if, for example, the electronic apparatus100is determined as being located in the living room52, the second processor140-2may load only the living room model752of the artificial intelligence models700stored in the storage130to the volatile memory145according to the control of the first processor140-1. Specifically, the second processor140-2may load the fully-connected layer752′ that is mapped with the logical mapping information related to the living room52together with the convolutional layer701.

In addition to the process ofFIG. 6Cof identifying an object present in the place in which the electronic apparatus100is located while generating information on the map, the first processor140-1may perform scanning identifying objects present at each of the plurality of areas. In this case, the first processor140-1may control a moving means or mechanism (e.g., wheels) of the electronic apparatus100to move around on the plurality of areas while controlling the second processor140-2to identify objects present at each of the plurality of areas from the image obtained through the camera120at each of the plurality of areas.

The first processor140-1may either perform scanning according to received user command, or may perform the above-described scanning according to a pre-set interval regardless of user command.

In addition, the first processor140-1may only perform the above-described scanning when there is no user in the place including the plurality of areas. In this case, the first processor140-1may identify that there is no user at the corresponding place through the received user input. In addition, the first processor140-1may control the second processor140-2to recognize whether a user is present through an image obtained through the camera120at the plurality of areas, and identify that no user is present at the corresponding place based on the output of the artificial intelligence model loaded by the second processor140-2. In this case, the artificial intelligence model may be an artificial intelligence model trained to identify whether a user is included in the input image.

The electronic apparatus100may update the artificial intelligence model corresponding to each of the plurality of areas according to the scanning results on the plurality of areas.

Specifically, the second processor140-2may input the image obtained through the camera120while the electronic apparatus100is located at one area of the plurality of areas to at least one of the plurality of artificial intelligence models loaded in the volatile memory145to identify the object present in the corresponding area, and may transfer information on the identified object to the first processor. In this case, the plurality of artificial intelligence models may not be loaded simultaneously in the volatile memory145, but may be loaded sequentially by one or two models at a time.

The first processor140-1may then update the artificial intelligence model corresponding to the related area based on information of the identified object transferred from the second processor140-2.

For example, when information on the objects present at each of the plurality of areas is stored, the first processor140-1may, based on information on the objects present at each of the plurality of areas stored in the storage130, determine at least one object present at the one area of the plurality of areas, and based on information on the identified object from the corresponding area transferred from the second processor140-2, determine the unidentified object in the corresponding area from the determined objects.

The first processor140-1may then remove the trained part to identify the unidentified object from the artificial intelligence models corresponding to the related area of the plurality of artificial intelligence models to update the artificial intelligence model corresponding to the related area.

FIGS. 8A to 8Care diagrams illustrating an example of an electronic apparatus100updating an artificial intelligence model corresponding to a related area in case an object present in one area of a plurality of areas is identified as not being present at the related area any longer.

FIGS. 8A to 8Cillustrate an example of information on objects present at each of the plurality of areas being stored in the storage130as inFIG. 7A. The information on the objects present at each of the plurality of areas stored in the storage130may be pre-set information or may be information on the objects identified at each of the plurality of areas through the process ofFIG. 6C. In addition,FIGS. 8A to 8Cillustrate an example of the plurality of artificial intelligence models corresponding to each of the plurality of areas being composed as inFIG. 7Cand stored in the storage130.

Referring toFIG. 8A, the first processor140-1of the electronic apparatus100implemented as a robot cleaner may control a moving means or mechanism (device) of the electronic apparatus100so that the electronic apparatus100may move around a plurality of areas800-10,800-20,800-30and800-40on the place indicated by a map800.

Further, while the electronic apparatus100is located at each of the plurality of areas800-10,800-20,800-30and800-40, the second processor140-2may load at least one of the plurality of artificial intelligence models stored in the storage130, and input an image obtained through the camera120to the loaded artificial intelligence model to identify the object located at each of the plurality of areas.

To this end, the first processor140-1may control the movement of the electronic apparatus100to pass all of the plurality of areas800-10,800-20,800-30and800-40at least one or more times.

Referring toFIG. 8the electronic apparatus100may identify an “air conditioner”11and a “TV”13in the “living room”800-10. However, referring toFIG. 8A, because the “sofa”22that previously was present in the “living room”800-10is no longer present in the “living room”800-10, the electronic apparatus100may no longer be able to identify the “sofa”22in the “living room”800-10.

When the “sofa”22is no longer identified in the “living room”800-10, for example, when the “sofa”22is not identified in the “living room”800-10for a threshold time (e.g., threshold time may be variously preset to two days, one week, etc.), the first processor140-1may update information on the objects present in the “living room”52from the information on the objects present at each of the plurality of areas stored in the storage130.

Accordingly, referring toFIG. 8B, information on the objects present in the “living room”52stored in the storage130may be updated so as to not include the “sofa”22anymore.

In this case, referring toFIG. 8C, the first processor140-1may obtain an artificial intelligence model852with the part trained to identify the “sofa”22of the fully-connected layer702removed or obtained from the artificial intelligence model752corresponding to “living room”52.

The part trained to identify the “sofa”22may refer to the part used in the inference process to generate an output of the node722on the “sofa”22of the fully-connected layer702. However, although the part may be used in the inference process to generate an output of the node722, the first processor140-1may not remove the related part if the part is also used in the inference process to generate an output of nodes related to an “air conditioner”11and a “TV”13.

The first processor140-1may then update (or remove) an artificial intelligence model852that is obtained from the artificial intelligence model752corresponding to the “living room”52to store in the storage130.

When (or based on) information on objects present at each of the plurality of areas is stored in the storage130, the first processor140-1may, based on information on the objects present at each of the plurality of areas stored in the storage130, determine at least one object present at one area of the plurality of areas. Further, based on information on the identified object from the related area transferred from the second processor140-2, the first processor140-1may determine the object not included among the determined at least one object of the identified objects from the related area.

In this case, the first processor140-1may add a fully-connected layer trained to identify the object not included among the determined at least one object to the artificial intelligence model corresponding to the related area from among the plurality of artificial intelligence models to update the artificial intelligence model corresponding to the related area.

FIGS. 9A to 9Care diagrams illustrating an example of updating an artificial intelligence model corresponding to a related area in case a new object is identified as being added to one area of a plurality of areas.

The embodiment ofFIGS. 9A to 9Cdescribe a situation of information on the objects present in the “living room”52as in the right side table ofFIG. 8Bbeing stored in the storage130. In addition, an artificial intelligence model corresponding to the “living room”52being stored as a living room model852ofFIG. 8Cmay be assumed.

Referring toFIG. 9A, the electronic apparatus100may identify the “air conditioner”11and the “TV”13in the “living room”800-10. In addition, referring toFIG. 9A, because the “chair”23that was not present in the previous “living room”800-10is now present in the “living room”800-10, the electronic apparatus100may also identify the “chair”23in the “living room”800-10.

When the “chair”23that was not present in the previous “living room”800-10is newly identified, the first processor140-1may update information on the objects present in the “living room”52from the information on objects present at each of the plurality of areas stored in the storage130.

Accordingly, referring toFIG. 9B, the information on the objects present in the “living room”52stored in the storage130may be updated to include the “chair”23in addition to the “air conditioner”11and the “TV”12.

In this case, referring toFIG. 9C, the first processor140-1may add the trained part (e.g., including the node723) to identify the “chair”23of the fully-connected layer702to the artificial intelligence model852corresponding to the “living room”52to obtain an artificial intelligence model952. The part trained to identify the “char”23may refer to the part used in the inference process to generate an output of the node723related to the “chair”23of the fully-connected layer702.

Although all of nodes of the “bed”21, the “chair”23, and the “sofa”22are illustrated as comprised in the one independent fully-connected layer inFIG. 7B, the node for identifying the “chair” may be included in a separate independent fully-connected layer according to another embodiment. In this case, the part trained to identify the “chair”23may be an independent fully-connected layer including the node to identify the “chair”23.

Further, the first processor140-1may update the artificial intelligence model corresponding to the “living room”52to an obtained artificial intelligence model952and store the same in the storage130.

When the artificial intelligence or electronic apparatus100is located at one area of the plurality of areas, if (or based on) an object of the related area is not identified even when the second processor140-2loads the artificial intelligence model corresponding to the related area to the volatile memory145, the second processor140-2may sequentially load a different artificial intelligence model of the plurality of artificial intelligence models to identify the related object.

If (or based on) the related object is identified through a different artificial intelligence model, the first processor140-1may use the information on the identified object to change the information on the objects present at the related area from information on objects present at each of the plurality of areas. In addition, the first processor140-1may use information on the changed object to update the artificial intelligence model corresponding to the related area. As a specific example, the fully-connected layer trained to recognize the identified object may be added to the artificial intelligence model corresponding to the related area.

The information on the objects present at each of the plurality of areas may be generated and updated by user input received by the electronic apparatus100and/or data received by the electronic apparatus100from the external apparatus and stored in the storage130. In this case, the first processor140-1may also use the generated/updated “information on objects present at each of the plurality of areas” to update the artificial intelligence model corresponding to each of the plurality of areas.

The obtaining and/or updating of the artificial intelligence models corresponding to each of the plurality of areas may be performed based on changes in information on only “fixed type objects” (and not non-fixed type objects) present at each of the plurality of areas, according to one or more embodiments.

The fixed type object may refer to objects with nearly no movement in an actual life of a person such as, for example, a bed, a sofa, a TV, and the like, while a non-fixed type object may refer to objects with frequent movement in an actual life of a person such as, for example, a cup, a plate, a ball, a toy, and the like.

The second processor140-2may, even if the electronic apparatus100is positioned at any area of the plurality of areas, always load the artificial intelligence model trained to identify the non-fixed type object to the volatile memory145. In this case, the plurality of artificial intelligence models stored in the storage130corresponding to each of the plurality of areas may be artificial intelligence models trained to identify the fixed type objects.

FIG. 10is a block diagram illustrating a detailed configuration of an electronic apparatus100including a first processor140-1and a second processor140-2according to an embodiment.

Referring toFIG. 10, the electronic apparatus100may further include at least one of a first memory150-1, a second memory150-2, a communicator including circuitry160, a user inputter170(or user input device), an outputter180(or output device), and a driving controller190in addition to the sensor110, the camera120, the storage130, the first processor140-1, and the second processor140-2.

The sensor110may be implemented as a light detection and ranging (LiDAR) sensor, an ultrasonic sensor, and the like. When the sensor110is implemented as a LiDAR sensor, the sensing data generated according to the sensed result of the sensor110may include information on the structured objects present in the surroundings and/or the distance between at least a part of things (or objects) and the electronic apparatus100. Information on the above-described distance may form or be the basis of information on structure (i.e., shape and/or size) of structured objects/things present in the surroundings of the electronic apparatus100.

The camera120may be implemented as a RGB camera, a 3D camera, and the like. The 3D camera may be implemented as a time of flight (TOF) camera including a TOF sensor and an infrared (IR) light. The 3D camera may include an IR stereo sensor. The camera120may include sensors such as a charge-coupled device (CCD) and a complementary metal-oxide semiconductor (CMOS), but is not limited thereto. If the camera120includes a CCD, the CCD may be implemented as a red/green/blue (RGB) CCD, an IR CCD, and the like.

The information on the map stored in the storage130may include information on the purpose of each of the plurality of areas. The purpose of each of the plurality of areas may relate to the “living room,” the “bedroom,” the “kitchen,” the “bathroom,” and the like if the map including the plurality of areas relates to, for example, a map of the “home.”

In the storage130, information on objects present in each of the plurality of areas on the map may be stored in addition to the plurality of artificial intelligence models and information on the map.

Information on the objects present at each of the plurality of areas may include the name, type and/or the like of the object present at each of the plurality of areas. The information on the objects may include information on the identity of a person if the object is a person. The information on the objects present at each of the plurality of areas may be stored/managed to match information output by the plurality of artificial intelligence models to identify at least one object from the images obtained through the camera120in the plurality of areas.

The information on the objects present at each of the plurality of areas may be pre-stored or obtained by the electronic apparatus100performing object recognition at each of the plurality of areas.

The first processor140-1may consist of or include one or a plurality of processors. The one or plurality of processors may be a generic processor such as a central processing unit (CPU) and an application processor (AP), and a graphics dedicated processor such as a graphics processing unit (GPU) and a vision processing unit (VPU), and the like.

The first processor140-1may control various configurations included in the electronic apparatus100by executing at least one instruction stored in the first memory150-1or the storage130connected to the first processor140-1.

To this end, information or instruction to control the various configurations included in the electronic apparatus100may be stored in the first memory150-1.

The first memory150-1may include a read-only memory (ROM), a random access memory (RAM), e.g., dynamic RAM (DRAM), synchronous DRAM (SDRAM), and double data rate SDRAM (DDR SDRAM)) and the like, and may be implemented together with the first processor140-1on one chip1001.

The second processor140-2may also be implemented as one or more processors. The second processor140-2may be implemented as an artificial intelligence dedicated processor such as a neural processing unit (NPU), and may include a volatile memory145for loading at least one artificial intelligence model. The volatile memory145may be implemented as one or more status RAM (SRAM).

The second memory150-2may be stored with information or instructions for controlling the function performed by the second processor140-2for object recognition. The second memory150-2may also include a ROM, a RAM (e.g., DRAM, SDRAM, DDR SDRAM) and the like, and may be implemented together with the second processor140-2on one chip1002.

The communicator including circuitry160is a configuration for the electronic apparatus100to send and receive signals/data by performing communication with at least one external apparatus.

The communicator including circuitry160may include a wireless communication module, a wired communication module, and the like.

The wireless communication module may include at least one of a Wi-Fi communication module, a Bluetooth module, an infrared data association (IrDA) communication module, a 3rdgeneration (3G) mobile communication module, a 4th generation (4G) mobile communication module, and a 4G long term evolution (LTE) communication module to receive content from an external server or external apparatus.

The wired communication module may be implemented as wired ports such as, for example, a thunderbolt port, a USB port, and the like.

The first processor140-1may use data received externally through the communicator including circuitry160to generate/update information on the map.

The first processor140-1and/or the second processor140-2may use data received externally through the communicator including circuitry160to generate/update the artificial intelligence model corresponding to each of the plurality of areas.

The first processor140-1may, based on receiving a control signal through the communicator including circuitry160, control the second processor140-2to start/end recognition of an object located in at least one area of the plurality of areas. At this time, the control signal may have been received from a remote control for controlling the electronic apparatus100or a smartphone stored with remote control applications on the electronic apparatus100.

The at least part of the plurality of artificial intelligence models stored in the storage13may be artificial intelligence models included in the data received from the external apparatus such as a server apparatus to the electronic apparatus100through the communicator including circuitry160.

When the second processor140-2is not able to recognize the object included in the image obtained through the camera120despite using all of the plurality of artificial intelligence models stored in the storage130, the first processor140-1may transmit data on the obtained image to the server apparatus through the communicator including circuitry160.

At this time, the data on the results of recognizing the object included in the obtained image may be received by the electronic apparatus100from the server apparatus through the communicator including circuitry160.

Further, the first processor140-1may receive data of the artificial intelligence model trained to identify recognized objects from the external apparatus through the communicator including circuitry160, and may store the received artificial intelligence model in the storage130.

When data indicating the location of the electronic apparatus100is received from the external apparatus through the communicator including circuitry160, the first processor140-1may use the received data to determine in which area the electronic apparatus100is located.

Based on a user input received through the user inputter170, the first processor140-1may update information on the map and/or at least a part of the information on the objects present in at least one of the plurality of areas. In addition, the processor140-1may use data received according to user input to generate information on the map.

Based on the user input received through the user inputter170, the first processor140-1may control the moving means or mechanism of the electronic apparatus100to move around at least one area of the plurality of areas, and may control the second processor140-2to start/end object recognition.

When a user input indicating the location of the electronic apparatus100is received through the user inputter170, the first processor140-1may use the received user input to determine in which area the electronic apparatus100is located.

The user inputter170may include one or more of a button, a keyboard, a mouse, and the like. In addition, the user inputter170may include a touch panel implemented together with a display or a separate touch panel.

The user inputter170may include a microphone to receive a voice input of a user command or information, and may be implemented together with the camera120to recognize a user command or information in motion or gesture form.

The outputter180may be a configuration for the electronic apparatus100to provide the obtained information to the user.

For example, the outputter180may include a display, a speaker, an audio terminal, and the like to visually/audibly provide the user with object recognition results.

The driving controller190, as a configuration to control the moving means or mechanism of the electronic apparatus100, may include an actuator for providing power to the moving means or mechanism of the electronic apparatus100. The first processor140-1may control the moving means or mechanism of the electronic apparatus100through the driving controller190to move the electronic apparatus100.

The electronic apparatus100may further include various configurations not illustrated inFIG. 10in addition thereto.

The above-described embodiments have been described based on the plurality of artificial intelligence models being stored in the storage130, but it is understood that one or more other embodiments are not limited thereto. For example, according to one or more other embodiments, the plurality of artificial intelligence models may be stored in an external server apparatus and object recognition for each area may be possible through the electronic apparatus100.

In addition, the electronic apparatus may perform object recognition for each area through communication with an external terminal apparatus implemented as a smartphone, tablet PC, and the like.

FIG. 11is a diagram illustrating various embodiments of an electronic apparatus100performing object recognition based on communication with external apparatuses including a server apparatus300and an external terminal apparatus200-1and200-2.

Referring toFIG. 11, the electronic apparatus100, which is a robot cleaner in the present example, may perform communication with external apparatuses200-1and200-2such as a smartphone and a server apparatus300. In this case, the electronic apparatus100may also perform communication with external apparatuses200-1,200-2and300through a relay apparatus400configured with routers and the like.

The electronic apparatus100may perform recognition of objects present at a plurality of areas based on the external apparatus200-1, which is a smartphone, or a control signal received from the external apparatus200-2. In addition, the electronic apparatus100may transmit information on the recognized object to the external apparatus200-1and/or the external apparatus200-2.

FIG. 11illustrates each of the plurality of artificial intelligence models trained to recognize at least one object being stored in a server apparatus300and not (or not necessarily) the storage130of the electronic apparatus100.

In this case, information on the plurality of artificial intelligence models (i.e., information on objects recognizable by each of the plurality of artificial intelligence models) stored in the server apparatus300may be received by the electronic apparatus100from the server apparatus300through the communicator including circuitry160.

The processor140-1may then select the artificial intelligence model corresponding to the area determined as where the electronic apparatus100is located from the plurality of artificial intelligence models stored in the server apparatus300.

The first processor140-1may then control the communicator including circuitry160to transmit information on the selected artificial intelligence model to the server apparatus300.

When data on the selected artificial intelligence model is received from the server apparatus300through the communicator including circuitry160, the first processor140-1may control the second processor140-2to load the selected artificial intelligence model (data) to the volatile memory145. The second processor140-2may then perform object recognition by inputting the image obtained through the camera120to the loaded artificial intelligence model.

In this case, the first processor140-1may store the data on the received artificial intelligence model to the storage130.

According to another embodiment, the electronic apparatus100may include one processor.

FIGS. 12A and 12Bare block diagrams illustrating a configuration of an electronic apparatus100including a processor140′.

Referring toFIG. 12A, the electronic apparatus100may include a processor140′ controlling the electronic apparatus100and connected to a sensor110′, a camera140′ and a storage130′. Additionally, the electronic apparatus100may include the sensor110′, the camera140′ and the storage130′.

The processor140′ may be implemented as a generic processor such as a CPU and an AP, a graphics dedicated processor such as a GPU and a vision processing unit (VPU), an artificial intelligence dedicated processor such as an NPU, or the like, and may include a volatile memory for loading at least one artificial intelligence model.

The processor140′ may perform operations performed by the first processor140-1or the second processor140-2as in the various embodiments described above.

Specifically, the processor140′ may identify a plurality of areas included in the map based on information on the map stored in a storage130′, determine an area in which the electronic apparatus100is located from the plurality of areas based on sensing data received from the sensor110′, and load the artificial intelligence model corresponding to the determined area from the plurality of artificial intelligence models stored in the storage130to the volatile memory. The processor140′ may input the image obtained through the camera120′ to the loaded artificial intelligence model to identify the object.

Referring toFIG. 12B, the electronic apparatus100including the processor140′ may further include a memory150′, a communicator160′ including circuitry, a user inputter170′, an outputter180′, a driving controller190′, and the like connected to the processor140′ as inFIG. 10.

The memory150′ is a configuration for storing an operating system (OS) for controlling the overall operations of elements of the electronic apparatus100and data related to the elements of the electronic apparatus100. The memory150′ may include at least one instruction related to the one or more elements of the electronic apparatus100.

The memory150′ may include a ROM, a RAM (e.g., DRAM, SDRAM, and DDR SDRAM) and the like, and may be implemented to connect with the processor140′ in one chip1201.

FIGS. 13 to 15describe a control method of an electronic apparatus100according to one or more embodiments.

FIG. 13is a flowchart illustrating a control method of an electronic apparatus100using an object recognition model according to an embodiment of the disclosure.

Referring toFIG. 13, the control method may identify a plurality of areas included in the map based on information on the map stored in the storage of the electronic apparatus100(operation S1310). The information on the map may include at least one of information on the structure of the place, information on the structure of each of the plurality of areas included in the map, information on the location on the map of each of the plurality of areas, information on the purpose of each of the plurality of areas, and the like.

Then, the area in which the electronic apparatus100is located from among the plurality of areas may be determined based on the sensing data received from the sensor (operation S1320).

In this case, the area in which the electronic apparatus100is located may be determined using information on the map stored in the storage and sensing data received through the sensor. As a specific example, if the sensor is a LiDAR sensor, the sensing data received from the sensor and the information on the map stored in the storage may be compared and the area in which the electronic apparatus100is located may be determined.

At this time, information on the structure (i.e., shape and/or size) of the surroundings of the electronic apparatus100included in the sensing data may be compared with information on the structure (i.e., shape and/or size) of each of the plurality of areas on the map included in the information on the map, and the area in which the electronic apparatus100is located from the plurality of areas on the map may be determined.

By using data on the surrounding image obtained through the camera, it may be possible to determine in which area of the plurality of areas the electronic apparatus100is located. For example, if information on the map includes data on the 3D image of the plurality of areas, the area in which the electronic apparatus100is located may be determined using the results of comparing images of each of the plurality of areas included in the information on the map with the 3D image obtained through the camera, implemented as a 3D camera.

In addition, the area in which the electronic apparatus100is located may be determined by identifying one or more objects from the image obtained through the camera in areas the electronic apparatus is located.

As a specific example, the object in the image may be identified by inputting the image photographed through the camera in the area in which the electronic apparatus100is located to at least one of the stored plurality of artificial intelligence models. If the identified object is a bed, one or more objects per area may use pre-stored information to identify that the bed corresponds with the “bedroom.” Further, the area in which the electronic apparatus100is located may be determined as the “bedroom.” The area in which the electronic apparatus100is located may then be determined as the “bedroom.”

In addition, a point where the electronic apparatus100is located may be determined on the map using an inertia sensor, an acceleration sensor, and the like, and the area including the determined point, from among the plurality of areas on the map, may be determined as an area in which the electronic apparatus100is located.

The process of determining an area in which the electronic apparatus100is located is not limited to the above-described embodiments, and other various methods may be applicable.

The control method may include loading the artificial intelligence model corresponding to the determined area from the plurality of artificial intelligence models stored in the storage to the volatile memory (operation S1330).

Each of the plurality of artificial intelligence models may include a convolutional layer and a fully-connected layer trained to identify an object based on characteristic information extracted from the convolutional layer. The convolutional layer, at this time, may be a common layer of the plurality of artificial intelligence models, and the fully-connected layer may be a layer provided individually to each of the plurality of artificial intelligence models.

If (or based on) the electronic apparatus100is located at a first area, the convolutional layer and the fully-connected layer corresponding to a first model from among the plurality of artificial intelligence models may be loaded to the volatile memory. If (or based on) the electronic apparatus100is located at a second area, the convolutional layer and the fully-connected layer corresponding to a second model from among the plurality of artificial intelligence models may be loaded to the volatile memory.

The first model may correspond to the first area of the plurality of areas, and the second model may correspond to the second area of the plurality of areas. In this case, the logical mapping information that maps the first model in the first area and the logical mapping information that maps the second model in the second area may be stored in the storage, and the control method may use the logical mapping information stored in the storage to load the artificial intelligence model corresponding to each area.

The image obtained through the camera may then be input to the loaded artificial intelligence model to identify the object (operation S1340). Specifically, because information on the objects output by the loaded artificial intelligence model may be obtained, the information on the objects may be varied according to the artificial intelligence model properties such as name, type, and the like of the object.

The control method may generate information on the map of the place in which the electronic apparatus100is located to store in the storage. In addition, the control method may newly obtain/define the artificial intelligence model corresponding to each of the plurality of areas included in the map.

FIG. 14is a flowchart illustrating an embodiment of a control method of an electronic apparatus100according to an embodiment generating information on a map, and identifying objects present in each of a plurality of areas to obtain an artificial intelligence model corresponding to each of the plurality of areas.

Referring toFIG. 14, the control method may obtain information on the structure of the place in which the electronic apparatus100is located based on sensing data received from the sensor (operation S1410).

In an example, information on the structure (i.e., shape and/or size) of the place in which the electronic apparatus is located may be obtained using sensing data received from the sensor, implemented as a LiDAR sensor.

Then, based on information on the obtained structure, the place in which the electronic apparatus100is located may be divided into a plurality of areas (operation S1420).

In this case, the plurality of areas may be divided on the map using a first algorithm. For example, a point where there is a dividing line or a protrusion (or threshold) on a floor, a point where a movable width becomes narrow, a point where there is a wall, a point where a wall ends, a point where there is be a door, and the like may be identified through sensing data obtained through the sensor, which may be a LiDAR sensor, and/or an image obtained through a camera. Further, using the identified points as demarcations between areas, each area on the map may be divided. However, other methods may be applied in addition thereto.

Then, information on the map including information on the structure of each of the divided plurality of areas may be generated, and the information on the generated map may be stored in the storage (operation S1430).

The control method may, when artificial intelligence models trained to identify a plurality of objects are stored in the storage of the electronic apparatus100, input the image obtained through the camera while the electronic apparatus100is located in each of the plurality of areas to the stored artificial intelligence model and identify the object present at each of the plurality of areas (operation S1440).

The stored artificial intelligence model may include the convolutional layer and the fully-connected layer trained to identify a plurality of objects based on characteristic information extracted from the convolutional layer.

Then, a first object may be identified in the first area of the plurality of areas, and a second object may be identified in the second area of the plurality of areas.

Then, the artificial intelligence model corresponding to each of the plurality of areas may be obtained from the stored artificial intelligence model based on information on the identified object (operation S1450).

Specifically, when (or based on) a first object of a plurality of objects is identified as present in the first area based on information on the objects present at the first area of the plurality of areas, the first model including the part trained to identify the first object from the convolutional layer of the stored artificial intelligence model and the fully-connected layer of the stored artificial intelligence model may be obtained.

In addition, when the second object of the plurality of objects is identified as present in the second area based on information on the objects present in the second area of the plurality of areas, the second model including other parts trained to identify the second object from the convolutional layer of the stored artificial intelligence model and the fully-connected layer of the stored artificial intelligence model may be obtained.

The control method may identify the object present at each of the plurality of areas according to a pre-set interval, user input, or the like, and use the information on the identified object to update the artificial intelligence model corresponding to each of the plurality of areas.

Specifically, the image obtained through the camera while the electronic apparatus100is located at one area of the plurality of areas may be input to the plurality of artificial intelligence models loaded in the volatile memory and the object present at the related area may be identified. In this case, at least one of the plurality of artificial intelligence models in the volatile memory may be sequentially loaded, and the image obtained from the related area may be input to the loaded artificial intelligence model. Based on information on the identified object, the artificial intelligence model corresponding to the related area may be updated.

For example, when information on objects present at each of the plurality of areas are stored in the storage of the electronic apparatus, the control method may determine at least one object present at one area of the plurality of areas based on information on objects present at each of the plurality of areas stored in the storage.

In this case, based on information on the objects identified in the related area, the object not identified in the related area from the determined objects may be determined. In the artificial intelligence model corresponding to the related area from among the plurality of artificial intelligence models, the part trained to identify the object determined previously as not identified may be removed.

In another example, when information on objects present at each of the plurality of areas is stored in the storage of the electronic apparatus100, the control method may determine at least one object present in one area of the plurality of areas based on information on the objects present at each of the plurality of areas stored in the storage.

In this case, based on information on objects identified in the related area, objects not included among the determined at least one object of the identified objects in the related area may be determined. At this time, the fully-connected layer trained to identify the object not included in the at least one determined object may be added to the artificial intelligence model corresponding to the related area from among the plurality of artificial intelligence models.

FIG. 15is a diagram of an algorithm illustrating an example of a control method of an electronic apparatus100according to an embodiment updating an artificial intelligence model corresponding to each of a plurality of areas according to results identifying an object present in each of the plurality of areas.

Referring toFIG. 15, the control method may input an image obtained through the camera in one area of the plurality of areas to at least one of the plurality of artificial intelligence models to identify the object (operation S1510).

Then, information on the pre-stored object of the related area may be compared with information on the identified object (operation S1520).

If information on the identified object matches with information on the pre-stored object (operation S1530-Y), the artificial intelligence model stored to correspond to the related area may not be updated.

If information on the identified object does not match with information on the pre-stored object (operation S1530-N), and if information on a newly added object is included in addition to the information on the identified object with the information on the pre-stored object (operation S1540-Y), the artificial intelligence model corresponding to the related area may be updated so that the artificial intelligence model stored to correspond to the related area may also identify the added object (operation S1550).

For example, while the identified object in the related area may be a TV and a sofa, if the pre-stored object on the related area is a TV, the artificial intelligence model corresponding to the related area may update the related artificial intelligence model to identify the sofa in addition to the TV. In this case, a separate fully-connected layer trained to identify the sofa may be added to the fully-connected layer including the related artificial intelligence model.

Even if information on the identified object does not match with the information on the pre-stored object (operation S1530-N), and there is an object not included in the information on the identified objects from the information on the pre-stored objects (operation S1540-N), updating the artificial intelligence model corresponding to the related area may be required or performed. That is, because the object present at a previously related area is no longer present at the related area, the part trained to identify the object no longer present in the related area may be removed (operation S1560).

For example, while the identified object in the related area may be a TV and a sofa, if the pre-stored object on the related area is a TV, a sofa, and a chair, the part trained to identify the chair in the artificial intelligence model corresponding to the related area may be removed. Specifically, the part used in the inference process to generate an output of the node indicating the possibility of the chair being present may be removed from the fully-connected layer of the related artificial intelligence model. However, even if the part is related to the inference process for generating output of the node indicating the possibility of the chair being present, the part may not be removed if the part relates to the inference process for generating output of nodes indicating the possibility of the TV or the sofa being present.

The control method of the electronic apparatus100described with reference toFIGS. 13 to 15above may be implemented through the electronic apparatus100illustrated and described above with reference toFIGS. 2 and 11, and the electronic apparatus100illustrated and described above with reference toFIGS. 12A and 12B.

The control method of the electronic apparatus100described with reference toFIGS. 13 to 15above may be implemented through an electronic apparatus100and a system including the one or more external apparatuses.

The electronic apparatus100and the control method of the electronic apparatus100as described above may not only use all artificial intelligence models for recognizing objects of various types, but also has the effect of accurately recognizing objects at a fast rate.

Specifically, because the electronic apparatus100and the control method according to one or more embodiments selectively loads only artificial intelligence models appropriate to the area in which the electronic apparatus is located to use in object recognition, the electronic apparatus100and the control method according to an embodiment is advantageous in that objects of many types may be recognized within a very short period of time by processing only a relatively small amount.

The electronic apparatus100and control method according to one or more embodiments is also advantageous in that the artificial intelligence model for each area may be updated according to circumstance to quickly maintain or further improve the object recognition rate.

The electronic apparatus100according to one or more embodiments may not only be able to perform recognition of objects of a broad-ranging type using only the self-stored artificial intelligence models regardless of communication with the server, but also is advantageous in that object recognition a relatively fast rate may be possible despite the limited processing capacity.

The various embodiments described above may be implemented in a recordable medium which is readable by computer or a device similar to computer using software, hardware, or the combination of software and hardware.

By hardware implementation, the embodiments described in the disclosure may be implemented using, for example, and without limitation, at least one of application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), processors, controllers, micro-controllers, microprocessors, and electrical units for performing other functions.

In some cases, embodiments described herein may be implemented by the processor itself. According to a software implementation, embodiments such as the procedures and functions described herein may be implemented with separate software modules. Each of the above-described software modules may perform one or more of the functions and operations described herein.

The computer instructions for performing the processing operations in the electronic apparatus100according to the various embodiments described above may be stored in a non-transitory computer-readable medium. The computer instructions stored in this non-transitory computer-readable medium cause the above-described specific device to perform the processing operations in the electronic apparatus100according to the above-described various embodiments when executed by the processor of the specific device.

The non-transitory computer readable medium may refer, for example, to a medium that stores data semi-permanently, rather than storing data for a very short time, such as a register, a cache, and a memory, and is readable by an apparatus. Specific examples of the non-transitory computer readable medium may include a compact disc (CD), a digital versatile disc (DVD), a hard disc, a Blu-ray disc, a universal serial bus (USB), a memory card, a read only memory (ROM), and the like.

While embodiments have been illustrated and described above, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the true spirit and full scope of the disclosure.