WO2022215771A1 - 냉장고 - Google Patents
냉장고 Download PDFInfo
- Publication number
- WO2022215771A1 WO2022215771A1 PCT/KR2021/004328 KR2021004328W WO2022215771A1 WO 2022215771 A1 WO2022215771 A1 WO 2022215771A1 KR 2021004328 W KR2021004328 W KR 2021004328W WO 2022215771 A1 WO2022215771 A1 WO 2022215771A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- food
- refrigerator
- item
- items
- processor
- Prior art date
Links
- 235000013305 food Nutrition 0.000 claims abstract description 391
- 238000000034 method Methods 0.000 claims description 67
- 239000013598 vector Substances 0.000 claims description 32
- 230000008569 process Effects 0.000 description 44
- 238000013528 artificial neural network Methods 0.000 description 24
- 238000012549 training Methods 0.000 description 18
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 16
- 238000010801 machine learning Methods 0.000 description 15
- 238000007789 sealing Methods 0.000 description 15
- 238000001514 detection method Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 13
- 238000013473 artificial intelligence Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 10
- 238000007726 management method Methods 0.000 description 9
- 238000012545 processing Methods 0.000 description 8
- 238000013135 deep learning Methods 0.000 description 7
- 210000002569 neuron Anatomy 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 7
- 230000001133 acceleration Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 6
- 230000008014 freezing Effects 0.000 description 6
- 238000007710 freezing Methods 0.000 description 6
- 229910052500 inorganic mineral Inorganic materials 0.000 description 6
- 239000011707 mineral Substances 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 4
- 238000012217 deletion Methods 0.000 description 4
- 230000037430 deletion Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000002372 labelling Methods 0.000 description 4
- 238000003058 natural language processing Methods 0.000 description 4
- 230000005236 sound signal Effects 0.000 description 4
- 230000005672 electromagnetic field Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 210000000225 synapse Anatomy 0.000 description 3
- CDBYLPFSWZWCQE-UHFFFAOYSA-L Sodium Carbonate Chemical compound [Na+].[Na+].[O-]C([O-])=O CDBYLPFSWZWCQE-UHFFFAOYSA-L 0.000 description 2
- 230000004308 accommodation Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 2
- 235000019987 cider Nutrition 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000011017 operating method Methods 0.000 description 2
- 230000002787 reinforcement Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000005355 Hall effect Effects 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- 235000013361 beverage Nutrition 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 239000013013 elastic material Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000001678 irradiating effect Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 239000008267 milk Substances 0.000 description 1
- 210000004080 milk Anatomy 0.000 description 1
- 235000013336 milk Nutrition 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 239000004033 plastic Substances 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000005057 refrigeration Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000000946 synaptic effect Effects 0.000 description 1
- 235000013311 vegetables Nutrition 0.000 description 1
- 238000005406 washing Methods 0.000 description 1
Images
Classifications
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F25—REFRIGERATION OR COOLING; COMBINED HEATING AND REFRIGERATION SYSTEMS; HEAT PUMP SYSTEMS; MANUFACTURE OR STORAGE OF ICE; LIQUEFACTION SOLIDIFICATION OF GASES
- F25D—REFRIGERATORS; COLD ROOMS; ICE-BOXES; COOLING OR FREEZING APPARATUS NOT OTHERWISE PROVIDED FOR
- F25D29/00—Arrangement or mounting of control or safety devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
- G06T7/74—Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/90—Arrangement of cameras or camera modules, e.g. multiple cameras in TV studios or sports stadiums
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/68—Food, e.g. fruit or vegetables
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
- H04N7/188—Capturing isolated or intermittent images triggered by the occurrence of a predetermined event, e.g. an object reaching a predetermined position
Definitions
- the present invention relates to a refrigerator, and more particularly, to being able to photograph the inside of the refrigerator and recognize food based on the photographed image.
- a refrigerator is a device that supplies cold air generated by a refrigeration cycle to a refrigerating chamber and a freezing chamber to maintain the freshness of various foods for a long period of time.
- a refrigerator is configured to include a body having a refrigerating compartment and a freezing compartment for storing food, and a door rotatably coupled to one side of the main body to open and close the refrigerating compartment and the freezing compartment.
- the refrigerating compartment is divided into a plurality of spaces by shelves, etc. so that storage and storage can be efficiently performed according to the type of storage.
- a storage room for storing vegetables and fruits is provided.
- a display unit is provided on a door of the refrigerator to provide information about the refrigerator and control the refrigerator.
- the door of a refrigerating chamber is provided with two doors, and the storage space is widened.
- a camera is provided on the ceiling of the refrigerator to provide information on the storage state of the refrigerator.
- An object of the present disclosure is to provide a refrigerator in which the name of food can be modified to suit a user's preference.
- An object of the present disclosure is to provide a refrigerator capable of recognizing the name of any one food as a previously modified name even when a plurality of identical foods are received.
- the refrigerator captures an internal image of a storage room through one or more cameras, acquires one or more food identification items from the photographed internal image, and stores the acquired one or more food identification items in a local DB
- one or more product names of the acquired one or more food identification items may be recognized as the product names of the food identification items stored in the local DB.
- the refrigerator when there is a plurality of identical food identification items stored in the local DB among a plurality of food identification items obtained from the photographed internal image, the refrigerator corresponds to the plurality of food identification items.
- the product name of any one of the plurality of identical food items may be recognized as the product name stored in the local DB.
- the user may perform proactive food management by modifying the name of the food to suit his/her preference.
- food management according to the user's preference may be performed by recognizing the name of one food desired by the user differently.
- FIG 1 shows an AI device according to an embodiment of the present disclosure.
- FIG 2 illustrates an AI server according to an embodiment of the present disclosure.
- FIG 3 shows an AI system according to an embodiment of the present disclosure.
- FIG 4 shows an AI device according to another embodiment of the present disclosure.
- FIG. 5 is a perspective view of a refrigerator according to an embodiment of the present disclosure
- FIG. 6 is a perspective view showing an open state of the refrigerator compartment door of the refrigerator according to an embodiment of the present disclosure
- FIG. 7 is an embodiment of the present disclosure It is a perspective view showing a state in which an outer door of the refrigerator compartment doors of the refrigerator according to the invention is opened.
- FIG. 8 is a perspective view illustrating a configuration of an inner door of a refrigerator compartment door of a refrigerator according to an embodiment of the present disclosure
- FIG. 9 is a front view of the refrigerator in a state in which the refrigerator compartment door is closed according to an embodiment of the present disclosure.
- FIG. 10 is a front view of a refrigerator showing a state in which the outer door is opened and the inner door is closed according to an embodiment of the present disclosure
- FIG. 11 is a flowchart illustrating an operating method of a refrigerator according to an embodiment of the present disclosure.
- FIG. 12 is a view for explaining an example in which the outer door photographs the inner door at a preset angle, according to an embodiment of the present disclosure.
- 13 to 14 are views for explaining the arrangement of a camera provided in an outer door according to various embodiments of the present disclosure.
- 15A and 15B are views illustrating an arrangement position of a camera attached to a door die of an outer door according to an embodiment of the present disclosure
- FIG. 16A is a cross-sectional view of the outer door 14 cut in the A1-A2 direction in the drawing of FIG. 15A
- FIG. 16B is a longitudinal cross-sectional view of the outer door 14 cut in the B1-B2 direction in the drawing of FIG. 15A.
- 17 is a view for explaining a photographing direction of a camera when the outer door is opened by 90 and when the outer door is opened by a preset angle according to an embodiment of the present disclosure
- 18 and 19 are diagrams for explaining a learning process of an object detection model according to an embodiment of the present disclosure.
- FIG. 20 shows a learning process of an object identification model according to an embodiment of the present disclosure.
- 21 is a flowchart illustrating a method of operating a refrigerator according to another embodiment of the present disclosure.
- 22 is a view for explaining a food item name editing screen according to an embodiment of the present disclosure.
- 23 is a view for explaining a process for editing a product name of a food image item, according to an embodiment of the present disclosure.
- 24 is a view for explaining a process of storing identification information and product name of food in a local DB when the product name of the food selected by the user is edited, according to an embodiment of the present disclosure.
- 25 is a flowchart illustrating a method of operating a refrigerator according to another embodiment of the present disclosure.
- 26 is a view for explaining the handling of the same foodstuff after the item name of the food is corrected by the user according to an embodiment of the present disclosure.
- 27 is a view for explaining a process of revising a food item name a plurality of times by a user, according to an embodiment of the present disclosure.
- 28 is a view for explaining a process of setting the same product name to different foods, according to an embodiment of the present disclosure.
- 29 and 30 are diagrams for explaining a scenario related to deletion of an item name of food, according to an embodiment of the present disclosure.
- 31 is a view for explaining a process of setting a reference value used to classify food items registered in the local DB when two or more identical food items stored in the local DB are extracted, according to an embodiment of the present disclosure; .
- 32 and 33 are views for explaining a process of processing each food item name when a plurality of foods identical to the food item name edited by the user are received, according to an embodiment of the present disclosure.
- Machine learning refers to a field that defines various problems dealt with in the field of artificial intelligence and studies methodologies to solve them. do.
- Machine learning is also defined as an algorithm that improves the performance of a certain task through continuous experience.
- An artificial neural network is a model used in machine learning, and may refer to an overall model having problem-solving ability, which is composed of artificial neurons (nodes) that form a network by combining synapses.
- An artificial neural network may be defined by a connection pattern between neurons of different layers, a learning process that updates model parameters, and an activation function that generates an output value.
- the artificial neural network may include an input layer, an output layer, and optionally one or more hidden layers. Each layer includes one or more neurons, and the artificial neural network may include neurons and synapses connecting neurons. In the artificial neural network, each neuron may output a function value of an activation function for input signals, weights, and biases input through synapses.
- Model parameters refer to parameters determined through learning, and include the weight of synaptic connections and the bias of neurons.
- the hyperparameter refers to a parameter to be set before learning in a machine learning algorithm, and includes a learning rate, the number of iterations, a mini-batch size, an initialization function, and the like.
- the purpose of learning the artificial neural network can be seen as determining the model parameters that minimize the loss function.
- the loss function may be used as an index for determining optimal model parameters in the learning process of the artificial neural network.
- Machine learning can be classified into supervised learning, unsupervised learning, and reinforcement learning according to a learning method.
- Supervised learning refers to a method of training an artificial neural network in a state in which a label for training data is given. can mean Unsupervised learning may refer to a method of training an artificial neural network in a state where no labels are given for training data. Reinforcement learning can refer to a learning method in which an agent defined in an environment learns to select an action or sequence of actions that maximizes the cumulative reward in each state.
- machine learning implemented as a deep neural network (DNN) including a plurality of hidden layers is also called deep learning (deep learning), and deep learning is a part of machine learning.
- DNN deep neural network
- deep learning deep learning
- machine learning is used in a sense including deep learning.
- FIG 1 shows an AI device 100 according to an embodiment of the present disclosure.
- AI device 100 is TV, projector, mobile phone, smartphone, desktop computer, notebook computer, digital broadcasting terminal, PDA (personal digital assistants), PMP (portable multimedia player), navigation, tablet PC, wearable device, set-top box (STB) ), a DMB receiver, a radio, a washing machine, a refrigerator, a desktop computer, a digital signage, a robot, a vehicle, etc., may be implemented as a fixed device or a movable device.
- the terminal 100 includes a communication unit 110 , an input unit 120 , a learning processor 130 , a sensing unit 140 , an output unit 150 , a memory 170 and a processor 180 , and the like. may include
- the communication unit 110 may transmit/receive data to and from external devices such as other AI devices 100a to 100e or the AI server 200 using wired/wireless communication technology.
- the communication unit 110 may transmit and receive sensor information, a user input, a learning model, a control signal, and the like with external devices.
- the communication technology used by the communication unit 110 includes Global System for Mobile communication (GSM), Code Division Multi Access (CDMA), Long Term Evolution (LTE), 5G, Wireless LAN (WLAN), and Wireless-Fidelity (Wi-Fi). ), Bluetooth, RFID (Radio Frequency Identification), Infrared Data Association (IrDA), ZigBee, NFC (Near Field Communication), and the like.
- GSM Global System for Mobile communication
- CDMA Code Division Multi Access
- LTE Long Term Evolution
- 5G Fifth Generation
- Wi-Fi Wireless-Fidelity
- Bluetooth Bluetooth
- RFID Radio Frequency Identification
- IrDA Infrared Data Association
- ZigBee ZigBee
- NFC Near Field Communication
- the input unit 120 may acquire various types of data.
- the input unit 120 may include a camera for inputting an image signal, a microphone for receiving an audio signal, a user input unit for receiving information from a user, and the like.
- a signal obtained from the camera or the microphone may be referred to as sensing data or sensor information.
- the input unit 120 may acquire training data for model training, input data to be used when acquiring an output using the training model, and the like.
- the input unit 120 may acquire unprocessed input data, and in this case, the processor 180 or the learning processor 130 may extract an input feature by preprocessing the input data.
- the learning processor 130 may train a model composed of an artificial neural network by using the training data.
- the learned artificial neural network may be referred to as a learning model.
- the learning model may be used to infer a result value with respect to new input data other than the training data, and the inferred value may be used as a basis for a decision to perform a certain operation.
- the learning processor 130 may perform AI processing together with the learning processor 240 of the AI server 200 .
- the learning processor 130 may include a memory integrated or implemented in the AI device 100 .
- the learning processor 130 may be implemented using the memory 170 , an external memory directly coupled to the AI device 100 , or a memory maintained in an external device.
- the sensing unit 140 may acquire at least one of internal information of the AI device 100 , information on the surrounding environment of the AI device 100 , and user information by using various sensors.
- sensors included in the sensing unit 140 include a proximity sensor, an illuminance sensor, an acceleration sensor, a magnetic sensor, a gyro sensor, an inertial sensor, an RGB sensor, an IR sensor, a fingerprint recognition sensor, an ultrasonic sensor, an optical sensor, a microphone, and a lidar. , radar, etc.
- the output unit 150 may generate an output related to sight, hearing, or touch.
- the output unit 150 may include a display unit that outputs visual information, a speaker that outputs auditory information, and a haptic module that outputs tactile information.
- the memory 170 may store data supporting various functions of the AI device 100 .
- the memory 170 may store input data obtained from the input unit 120 , learning data, a learning model, a learning history, and the like.
- the processor 180 may determine at least one executable operation of the AI device 100 based on information determined or generated using a data analysis algorithm or a machine learning algorithm. In addition, the processor 180 may control the components of the AI device 100 to perform the determined operation.
- the processor 180 may request, search, receive, or utilize the data of the learning processor 130 or the memory 170, and may perform a predicted operation or an operation determined to be desirable among the at least one executable operation. It is possible to control the components of the AI device 100 to execute.
- the processor 180 may generate a control signal for controlling the corresponding external device and transmit the generated control signal to the corresponding external device.
- the processor 180 may obtain intention information with respect to a user input, and determine a user's requirement based on the obtained intention information.
- the processor 180 uses at least one of a speech to text (STT) engine for converting a voice input into a character string or a natural language processing (NLP) engine for obtaining intention information of a natural language. Intention information corresponding to the input may be obtained.
- STT speech to text
- NLP natural language processing
- At least one of the STT engine and the NLP engine may be configured as an artificial neural network, at least a part of which is learned according to a machine learning algorithm. And, at least one of the STT engine or the NLP engine is learned by the learning processor 130 , or learned by the learning processor 240 of the AI server 200 , or learned by distributed processing thereof. it could be
- the processor 180 collects history information including user feedback on the operation contents or operation of the AI device 100 and stores it in the memory 170 or the learning processor 130, or the AI server 200 It can be transmitted to an external device.
- the collected historical information may be used to update the learning model.
- the processor 180 may control at least some of the components of the AI device 100 in order to drive an application program stored in the memory 170 . Furthermore, in order to drive the application program, the processor 180 may operate two or more of the components included in the AI device 100 in combination with each other.
- FIG 2 shows an AI server 200 according to an embodiment of the present disclosure.
- the AI server 200 may refer to a device that trains an artificial neural network using a machine learning algorithm or uses a learned artificial neural network.
- the AI server 200 may be configured with a plurality of servers to perform distributed processing, and may be defined as a 5G network.
- the AI server 200 may be included as a part of the AI device 100 to perform at least a part of AI processing together.
- the AI server 200 may include a communication unit 210 , a memory 230 , a learning processor 240 , and a processor 260 .
- the communication unit 210 may transmit/receive data to and from an external device such as the AI device 100 .
- the memory 230 may include a model storage unit 231 .
- the model storage unit 231 may store a model (or artificial neural network, 231a) being trained or learned through the learning processor 240 .
- the learning processor 240 may train the artificial neural network 231a using the training data.
- the learning model may be used while being mounted on the AI server 200 of the artificial neural network, or may be used while being mounted on an external device such as the AI device 100 .
- the learning model may be implemented in hardware, software, or a combination of hardware and software.
- one or more instructions constituting the learning model may be stored in the memory 230 .
- the processor 260 may infer a result value with respect to new input data using the learning model, and may generate a response or a control command based on the inferred result value.
- FIG 3 shows an AI system 1 according to an embodiment of the present disclosure.
- the AI system 1 includes at least one of an AI server 200 , a robot 100a , an autonomous vehicle 100b , an XR device 100c , a smart phone 100d , or a home appliance 100e . It is connected to the cloud network 10 .
- the robot 100a to which the AI technology is applied, the autonomous driving vehicle 100b, the XR device 100c, the smartphone 100d, or the home appliance 100e may be referred to as AI devices 100a to 100e.
- the cloud network 10 may constitute a part of the cloud computing infrastructure or may refer to a network existing in the cloud computing infrastructure.
- the cloud network 10 may be configured using a 3G network, a 4G or Long Term Evolution (LTE) network, or a 5G network.
- LTE Long Term Evolution
- each of the devices 100a to 100e and 200 constituting the AI system 1 may be connected to each other through the cloud network 10 .
- each of the devices 100a to 100e and 200 may communicate with each other through the base station, but may also directly communicate with each other without passing through the base station.
- the AI server 200 may include a server performing AI processing and a server performing an operation on big data.
- the AI server 200 includes at least one of the AI devices constituting the AI system 1, such as a robot 100a, an autonomous vehicle 100b, an XR device 100c, a smartphone 100d, or a home appliance 100e, and It is connected through the cloud network 10 and may help at least a part of AI processing of the connected AI devices 100a to 100e.
- the AI devices constituting the AI system such as a robot 100a, an autonomous vehicle 100b, an XR device 100c, a smartphone 100d, or a home appliance 100e.
- the AI server 200 may train the artificial neural network according to a machine learning algorithm on behalf of the AI devices 100a to 100e, and directly store the learning model or transmit it to the AI devices 100a to 100e.
- the AI server 200 receives input data from the AI devices 100a to 100e, infers a result value with respect to the received input data using a learning model, and provides a response or control command based on the inferred result value. It can be generated and transmitted to the AI devices 100a to 100e.
- the AI devices 100a to 100e may infer a result value with respect to input data using a direct learning model, and generate a response or a control command based on the inferred result value.
- the AI devices 100a to 100e to which the above-described technology is applied will be described.
- the AI devices 100a to 100e shown in FIG. 3 can be viewed as specific examples of the AI device 100 shown in FIG. 1 .
- FIG 4 shows an AI device 100 according to an embodiment of the present disclosure.
- the input unit 120 includes a camera 121 for inputting an image signal, a microphone 122 for receiving an audio signal, and a user input unit for receiving information from a user. 123) may be included.
- the voice data or image data collected by the input unit 120 may be analyzed and processed as a user's control command.
- the input unit 120 is for inputting image information (or signal), audio information (or signal), data, or information input from a user.
- the AI device 100 may include one or more Cameras 121 may be provided.
- the camera 121 processes an image frame such as a still image or a moving image obtained by an image sensor in a video call mode or a shooting mode.
- the processed image frame may be displayed on the display unit 151 or stored in the memory 170 .
- the microphone 122 processes an external sound signal as electrical voice data.
- the processed voice data may be utilized in various ways according to a function (or a running application program) being performed by the AI device 100 . Meanwhile, various noise removal algorithms for removing noise generated in the process of receiving an external sound signal may be applied to the microphone 122 .
- the user input unit 123 is for receiving information from the user, and when information is input through the user input unit 123 , the processor 180 may control the operation of the AI device 100 to correspond to the input information. .
- the user input unit 123 includes a mechanical input means (or a mechanical key, for example, a button located on the front/rear or side of the terminal 100, a dome switch, a jog wheel, a jog switch, etc.) and It may include a touch input means.
- the touch input means consists of a virtual key, a soft key, or a visual key displayed on the touch screen through software processing, or a part other than the touch screen. It may be made of a touch key (touch key) disposed on the.
- the output unit 150 includes at least one of a display unit (Display Unit, 151), a sound output unit (Sound Output Unit, 152), a haptic module (Haptic Module, 153), and an optical output unit (154). can do.
- the display unit 151 displays (outputs) information processed by the AI device 100 .
- the display unit 151 may display execution screen information of an application program driven by the AI device 100 , or UI (User Interface) and GUI (Graphic User Interface) information according to the execution screen information.
- UI User Interface
- GUI Graphic User Interface
- the display unit 151 may implement a touch screen by forming a layer structure with the touch sensor or being formed integrally with the touch sensor.
- a touch screen may function as the user input unit 123 providing an input interface between the AI device 100 and the user, and may provide an output interface between the terminal 100 and the user.
- the sound output unit 152 may output audio data received from the communication unit 110 or stored in the memory 170 in a call signal reception, a call mode or a recording mode, a voice recognition mode, a broadcast reception mode, and the like.
- the sound output unit 152 may include at least one of a receiver, a speaker, and a buzzer.
- the haptic module 153 generates various tactile effects that the user can feel.
- a representative example of the tactile effect generated by the haptic module 153 may be vibration.
- the light output unit 154 outputs a signal for notifying the occurrence of an event by using the light of the light source of the AI device 100 .
- Examples of the event generated by the AI device 100 may be message reception, call signal reception, missed call, alarm, schedule notification, email reception, information reception through an application, and the like.
- the refrigerator to be described below may be a home appliance having artificial intelligence. That is, the artificial intelligence device 100 may be a refrigerator.
- the refrigerator may include all of the components of the artificial intelligence device 100 illustrated in FIG. 4 .
- the refrigerator can be named as an artificial intelligence refrigerator.
- FIG. 5 is a perspective view of a refrigerator according to an embodiment of the present disclosure
- FIG. 6 is a perspective view showing an open state of the refrigerator compartment door of the refrigerator according to an embodiment of the present disclosure
- FIG. 7 is an embodiment of the present disclosure It is a perspective view showing a state in which an outer door of the refrigerator compartment doors of the refrigerator according to the invention is opened.
- the refrigerator 10 includes a cabinet 11 having a plurality of storage rooms therein, and a door provided on the front of the cabinet 11 to selectively open and close any one of the plurality of storage rooms. They may include 12 and 15 .
- the plurality of storage compartments may include a refrigerating compartment 18 and a freezing compartment 19 .
- the doors 12 and 15 may include a refrigerating compartment door 12 rotatably provided in front of the refrigerating compartment 180 and a freezing compartment door 15 rotatably provided in front of the freezing compartment 19 .
- Cold air generated by the evaporator may be supplied to the refrigerating compartment 18 to cool the inside of the refrigerating compartment 180 .
- the evaporator may be provided behind the rear wall of the refrigerating compartment.
- the refrigerator compartment door 12 is provided as a pair and may be rotatably connected to the front left edge and right edge of the cabinet 11 , respectively.
- the refrigerator compartment door 12 may include an inner door 13 that is in close contact with the front of the cabinet 11 and an outer door 14 that is rotatably connected to the inner door 13 from the front of the inner door 13 . .
- Each of the outer door 14 and the inner door 13 may be referred to as a first door and a second door.
- the rear edge of the inner door 13 may be in close contact with the front surface of the cabinet 11 , and in the closed state of the outer door 14 , the rear edge may be in close contact with the front of the inner door 13 .
- the housing 101 may be mounted on the rear surface of the inner door 13 .
- a first hinge 114 may be provided on the upper side of the cabinet 11 so that the refrigerating compartment door 12 is rotatable with respect to the cabinet 11 .
- One side of the first hinge 114 may be connected to the upper surface of the cabinet 11 , and the other side may be connected to the inner door 13 .
- the inner door 13 and the outer door 13 may be rotated together around the first hinge 114 .
- the inner door 13 may include a second hinge (not shown) that enables the outer door 14 to rotate with respect to the inner door 13 .
- the outer door 14 independently rotates around the second hinge, and the front portion of the inner door 13 may be opened by the rotation of the outer door 14 .
- the outer door 14 protrudes to a predetermined height from the outer case 141 , the door liner 142 mounted on the rear surface of the outer case 141 , and the door liner 142 , along the outer edge of the door liner 142 . It may include a door dike 143 that wraps around.
- An outer basket 145 capable of accommodating food may be installed on the rear surface of the outer door 14 .
- the outer basket 145 may be detachably coupled to the door die 143 .
- the outer basket 145 may be provided in plurality, and may be disposed to be spaced apart by a set distance in the vertical direction.
- a sealing member 144 may be provided on the door liner 142 .
- the sealing member 144 may be disposed along the edge of the rear portion of the outer case 141 to prevent leakage of cold air from the space between the inner door 13 and the outer door 14 .
- the door die 143 may fix the outer basket 145 .
- FIG. 8 is a perspective view illustrating a configuration of an inner door of a refrigerator compartment door of a refrigerator according to an embodiment of the present disclosure
- the housing 101 may be coupled to the rear of the inner door 13 .
- the basket 102 may be installed in the storage space of the housing 101 .
- a plurality of baskets 102 may be provided to accommodate food.
- FIG. 9 is a front view of the refrigerator in a state in which the refrigerator compartment door is closed according to an embodiment of the present disclosure.
- FIG. 9 shows a state in which both the inner door 13 and the outer door 14 are closed.
- a transparent display 14 - 1 may be provided on the front surface of the outer door 14 of the refrigerator 10 . The user can view the foods stored in the refrigerating compartment through the transparent display 14 - 1 .
- the transparent display 14 - 1 may display information about food stored in the refrigerator 10 .
- FIG. 10 is a front view of a refrigerator showing a state in which the outer door is opened and the inner door is closed according to an embodiment of the present disclosure
- One or more cameras may be provided in the outer door 14 .
- One or more cameras may photograph the inside of the refrigerating compartment when the outer door 14 is closed.
- one or more cameras may photograph the food provided in the inner door 13 .
- FIG. 11 is a flowchart illustrating an operating method of a refrigerator according to an embodiment of the present disclosure.
- the refrigerator 10 may include all of the components of FIG. 4 .
- 11 may be a view for explaining an operation method of the refrigerator 10 for managing food stored in the inner door 13 of the refrigerator 10 .
- the processor 180 of the refrigerator 10 detects that the outer door 14 is opened ( S1101 ).
- the processor 180 may detect whether the outer door 14 is opened or closed by using a sensor provided in the sensing unit 140 .
- the sensing unit 140 may include one or more of an optical sensor, an instrument sensor, an electromagnet sensor, and an acceleration sensor.
- the processor 180 may detect an opening/closing operation of the outer door 14 or an opening angle of the outer door 14 based on the detection signal detected by the sensing unit 140 .
- the sensing unit 140 may be included in the hinge 114 or disposed adjacent to the hinge 114 .
- the optical sensor is a sensor that detects the presence or absence of light, the intensity of light, and the like, and may be a proximity sensor that detects whether an object to be detected is in proximity.
- the processor 180 may determine whether the outer door 14 is opened or closed or an opening angle using the presence or absence of light detected by the optical sensor or the intensity of light.
- the instrument sensor is a sensor that detects whether an external contact is made, and may be a switch sensor.
- the processor 180 may detect whether the outer door 14 is opened or closed or an opening angle by using a detection signal indicating whether a contact is detected by the appliance sensor.
- the electromagnet sensor is a sensor that detects the magnitude and direction of an electromagnetic field, and may be a Hall sensor using a Hall effect.
- the processor 180 may detect whether the outer door 14 is opened or closed or an opening angle by using a change in the magnitude of the electromagnetic field or a change in the direction of the electromagnetic field detected by the electromagnet sensor.
- the acceleration sensor may be a sensor that measures the magnitude of the acceleration in each of the x-axis, y-axis, and z-axis.
- the processor 180 may measure whether the outer door 14 is opened or closed or an opening angle by using the magnitudes of the acceleration measured in three axes.
- the processor 180 of the refrigerator 10 determines whether the opening angle of the outer door 14 is equal to or greater than a preset angle (S1103).
- the processor 180 may measure the opening angle of the outer door 14 by using any one of an optical sensor, an instrument sensor, an electromagnet sensor, and an acceleration sensor.
- the opening angle of the outer door 14 may indicate an open angle based on a state in which the outer door 14 is completely closed.
- the preset angle may be an angle set to optimally obtain an image of the food stored in the inner door 13 .
- the preset angle may be 60 degrees, but this is only an example. That is, instead of a specific angle, it may be set as an angle range.
- the processor 180 of the refrigerator 10 After determining that the opening angle of the outer door 14 is equal to or greater than a preset angle, the processor 180 of the refrigerator 10 detects the closing of the outer door 14 ( S1105 ).
- the processor 180 of the refrigerator 10 determines whether the opening angle of the outer door 14 reaches a preset angle (S1107).
- the processor 180 may determine whether the opening angle of the outer door 14 is the same as a preset angle.
- the processor 180 of the refrigerator 10 photographs the inside of the refrigerator through one or more cameras provided in the outer door 14 ( S1109).
- the processor 180 may transmit a capture command to one or more cameras provided in the outer door 14 .
- One or more cameras may photograph the interior of the refrigerator 10 according to a capture command.
- one or more cameras may photograph foods stored in the inner door 13 .
- One or more cameras may be provided on the side of the outer door 14 .
- One or more cameras may be provided near the edge of the outer door 14 .
- FIG. 12 is a view for explaining an example in which the outer door photographs the inner door at a preset angle, according to an embodiment of the present disclosure.
- the refrigerator 10 may detect that the outer door 14 is closed after the outer door 14 is opened by a preset angle or more.
- the refrigerator 10 may transmit a capture command to the camera 121 .
- the camera 121 may photograph the front when the capture command is received.
- the photographing direction 1201 of the camera 121 may be the front side of the inner door 13 .
- the camera 121 may photograph the front of the inner door 13 .
- the user may open the outer door 14 to store food in the inner door 13 or take out food from the inner door 13 .
- a camera is provided only on the ceiling wall of the refrigerator 10 , so it is difficult to properly grasp information about the food provided in the inner door 13 .
- an image of the inner door 13 may be photographed at an optimal photographing angle.
- the photographed image may be used to manage the food storage state of the inner door 13 .
- 13 to 14 are views for explaining the arrangement of a camera provided in an outer door according to various embodiments of the present disclosure.
- FIG. 13 is an embodiment in which one camera is provided in the outer door
- FIG. 14 is an embodiment in which two cameras are provided in the outer door.
- the outer door 14 may include an outer case 141 , a door liner 142 , a sealing member 144 , and a door die 143 .
- the door case 141 may be a metal plate constituting the front surface of the outer door 14 .
- the door liner 142 may be formed of a material such as plastic inside the door case 141 .
- the sealing member 144 may be made of an elastic material such as rubber.
- the sealing member 144 may seal the cold air inside the refrigerating compartment from leaking to the outside when the outer door 14 is closed.
- the sealing member 144 may be disposed on the rear surface of the door liner 142 .
- the sealing member 144 may include an inner sealing member 144a and an outer sealing member 144b.
- the inner sealing member 144a may be disposed proximate to the first hinge 114
- the outer sealing member 144b may be disposed further than the first hinge 114 as compared to the inner sealing member 144a .
- a pair of connecting gaskets connecting the two may be further provided between the inner sealing member 144a and the outer sealing member 144b.
- the door die 143 may fix a basket provided in the outer door 14 .
- FIG. 13 shows an example in which one camera 121 is disposed on the door die 143 of the outer door 14 .
- the camera 121 may be located on the door die 143 adjacent to the outer sealing member 144b.
- the door die 143 may have an accommodation groove for providing the camera 121 , and the camera 121 may be provided in the accommodation groove.
- FIG. 14 an example in which two cameras are disposed on the door die 143 of the outer door 14 is shown.
- the door die 143 may include a first camera 121a and a second camera 121b.
- the first camera 121a and the second camera 121b may be disposed at a predetermined distance.
- the distance between the first camera 121a and the second camera 121b may be 338 mm, but this is only an example.
- the first image photographed by the first camera 121a may be used to analyze the storage state of food provided on the upper shelf of the inner door 13
- the second image photographed by the second camera 121b is the inner It can be used to analyze the storage state of food provided on the lower shelf of the door 13 .
- Each of the camera 121 shown in FIG. 13 and the cameras 121a and 121b shown in FIG. 14 may have a high frame rate resistant to blur.
- the frame rate of each camera may be 60 fps.
- Each camera may be a wide-angle camera, and the angle of view of the camera may be 135 degrees.
- 15A and 15B are views illustrating an arrangement position of a camera attached to a door die of an outer door according to an embodiment of the present disclosure
- FIG. 15A is an example in which two cameras 121a and 121b are provided on the door die 143 .
- the outer door 14 may include a door liner 142 and a door dike 143 protruding from the door liner 142 to a predetermined height and surrounded along the outer edge of the door liner 142 .
- the door die 143 may include a first part 143a, a second part 143b, and a third part 143c.
- the door die 143 may be a frame having a rectangular shape.
- the first part 143a and the second part 143b may face each other.
- the length of the first part 143a and the length of the second part 143b may be longer than the length of the third part 143c.
- the third part 143c may connect the first part 143a and the second part 143b to each other.
- a fourth part may also connect the first part 143a and the second part 143b to each other.
- the first part 143a may be closer to the first hinge 114 than the second part 143b.
- the first camera 121a and the second camera 121b may be embedded in the second part 143b of the door die 143 .
- the second part 143b may be provided with a built-in groove.
- the second part 143b of the door die 143 may include a first surface 1501 , a second surface 1503 , and a third surface 1505 .
- the second part 143b may protrude by a predetermined height k7 with respect to the door liner 142 .
- the first surface 1501 and the second surface 1503 may be disposed to face each other.
- the third surface 1505 may connect the first surface 1501 and the second surface 1503 .
- the first side 1501 faces the right side of the outer door 14, and the second side 1503 is out
- the first camera 121a may be provided on the first surface 1501 of the second part 143b.
- the first surface 1051 may face the front of the inner door 13 .
- the second camera (not shown) may be provided below the first camera 121a.
- the second camera may also be provided on the first surface 1501 of the second part 143b.
- the camera may be provided on the first surface 1501 of the second part 143b.
- FIG. 16A is a cross-sectional view of the outer door 14 cut in the A1-A2 direction in the drawing of FIG. 15A
- FIG. 16B is a longitudinal cross-sectional view of the outer door 14 cut in the B1-B2 direction in the drawing of FIG. 15A.
- a first camera 121a may be provided in the second part 143b of the door die 143 provided along the outer edge of the door liner 142 .
- An LED module 1601 and an LED cover 1603 for irradiating light may be further provided in the second part 143b.
- a part of the first camera 121a may protrude from the second part 143b of the door die 143 by a predetermined distance d1.
- a photographing angle indicating an angle between the photographing direction of the first camera 121a and the second part 143b of the door die 143 may be an angle obtained by subtracting a preset opening angle from 90 degrees.
- 16A and 16B may also be applied to cross-sectional views taken based on a case in which one camera is provided on the door die 143 and cross-sectional views taken with respect to the second camera 121b.
- 17 is a view for explaining a photographing direction of a camera when the outer door is opened by 90 and when the outer door is opened by a preset angle according to an embodiment of the present disclosure
- the angle which is a photographing angle, may be an angle obtained by subtracting a preset opening angle (a) from 90 degrees.
- the camera 121 may be tilted by 90-a with respect to the outer door 14 , precisely the second part 143b of the door die 143 , to be disposed.
- the photographing direction 1703 of the camera 121 may face the front of the inner door 13 . Accordingly, the food in the inner door 13 can be accurately photographed without blur.
- the tilting angle of the camera 121 may be 30 degrees.
- FIG. 17 it is assumed that one camera is provided in the door die 143 , but the embodiment of FIG. 17 may be applied to each camera even when two cameras are provided in the door die 143 .
- FIG. 11 will be described.
- the processor 180 of the refrigerator 10 acquires the food storage state of the inner door 13 based on images captured by one or more cameras (S1111).
- the processor 180 may recognize a plurality of foods included in the photographed image by using the image recognition model.
- the processor 180 may acquire a food storage state based on information on a plurality of recognized foods.
- the food storage state may include information on the type, location, and number of each of the plurality of foods provided in the inner door 13 .
- the image recognition model may be an artificial neural network-based model trained through a deep learning algorithm or a machine learning algorithm.
- the image recognition model may include an object detection model and an object identification model.
- the object detection model may be a model for detecting one or more objects from image data, and the object identification model may be a model for identifying what the one or more detected objects are.
- the object detection model may be an artificial neural network-based model trained by a deep learning algorithm or a machine learning algorithm.
- the object detection model may be a model learned by the learning processor 130 of the artificial intelligence device 100 and stored in the memory 170 .
- the object detection model may be a model learned by the learning processor 240 of the AI server 200 and transmitted from the AI server 200 to the artificial intelligence device 100 .
- the object may be food.
- 18 and 19 are diagrams for explaining a learning process of an object detection model according to an embodiment of the present disclosure.
- the object detection model 1810 obtains an object boundary box set including a plurality of objects from each training image data using a training image data set 1800 including a plurality of image data.
- the object bounding box set may be a set of bounding boxes including an object.
- the object detection model 1800 may detect a plurality of objects from image data by using a You Only Look Once (YOLO) algorithm.
- YOLO You Only Look Once
- the You Only Look Once (YOLO) algorithm may consist of a plurality of CNNs.
- the You Only Look Once (YOLO) algorithm may include a grid segmentation process, a prediction process, a reliability calculation process, and an object selection process.
- the grid division process may be a process of dividing the image data 1900 into a plurality of grids. Each of the plurality of grids may have the same size.
- the prediction process may be a process of predicting the number of bounding boxes designated in a predefined shape with a grid center as a center for each grid.
- a bounding box designated as a predefined shape may be generated from data by a K-means algorithm, and may contain prior information about the size and shape of an object.
- Each bounding box may be designed to detect objects of different sizes and shapes.
- Each bounding box may indicate the shape or boundary of an object.
- the reliability calculation process may be a process of calculating the reliability of the bounding box according to whether an object is included in each of the bounding boxes obtained in the prediction process or whether there is only a background alone.
- the object determination process may be a process of determining that an object exists in a bounding box having a reliability greater than or equal to a preset value according to a reliability calculation process.
- a plurality of bounding boxes 1901 to 1905 included in the image data 1900 may be extracted through the object determination process.
- FIG. 5 will be described.
- the processor 180 may obtain identification information of each object from a plurality of bounding boxes extracted through the object detection model 1800 .
- the processor 180 may identify an object existing in the bounding box from image data corresponding to each bounding box by using the object identification model.
- the object identification model may be an artificial neural network-based model trained using a deep learning algorithm or a machine learning algorithm.
- the object identification model may be a model learned through supervised learning.
- the object identification model may be a model for inferring identification information of an object from image data.
- the object identification information may be information identifying the object, such as the name of the object and the identifier of the object.
- the object identification model may be a model that outputs identification information of an object using, as input data, a training data set including image data for training and labeling data labeled on the image data for training.
- FIG. 20 shows a learning process of an object identification model according to an embodiment of the present disclosure.
- the object identification model 2000 may infer object identification information by using a training data set including image data for training and labeling data labeled therewith.
- the labeling data is correct answer data and may be object identification information.
- the object identification model 2000 may be trained to minimize a cost function corresponding to the difference between the labeling data and the object identification information.
- the cost function of the object identification model 2000 may be expressed as a square average of a difference between a label for object identification information corresponding to each image data and object identification information inferred from each image data.
- an object identification result is output as a target feature vector, and the object identification model 2000 loses a loss corresponding to the difference between the output target feature vector and the labeled object identification information. It can be learned to minimize the function.
- the object identification model 2000 may be learned by the learning processor 130 of the refrigerator 10 or the learning processor 240 of the AI server 200 and mounted in the refrigerator 10 .
- the object identification model 2000 may determine first object identification information from the first image data corresponding to the first bounding box 1901 illustrated in FIG. 19 .
- the first object identification information may be a beverage (or cola).
- the object identification model 2000 may determine second object identification information from the second image data corresponding to the second bounding box 1902 .
- the second object identification information may be milk.
- the object identification model 2000 from the image data, what kind of food the object is can be identified.
- FIG. 11 will be described.
- the processor 180 may acquire a food storage state by using the acquired object identification information.
- the food storage state may include one or more of the type, location, and number of each of the plurality of foods provided in the inner door 13 .
- the position of the food may be obtained through the position of the object bounding box sensed through the object detection model 1800 .
- the processor 180 of the refrigerator 10 outputs food management information based on the obtained food storage state of the inner door 13 ( S1113 ).
- the food management information may include one or more of stock change information of food, purchase linkage information according to the stock of food, and recipe information.
- the stock change information may be information indicating that the stock of the food provided in the inner door 13 is changed.
- the purchase linkage information may indicate site information for purchasing a specific food according to the stock status of the food.
- the recipe information may be information indicating a recipe of a dish that can be cooked by using the food provided in the inner door 13 .
- the processor 180 may output food management information through the transparent display 14 - 1 provided in the outer door 14 .
- the processor 180 may display the food management information on the transparent display 14-1 when the outer door 14 is completely closed.
- 21 is a flowchart illustrating a method of operating a refrigerator according to another embodiment of the present disclosure.
- FIG. 21 is a view for explaining a process of editing the item name of a food by a user and storing the item name.
- the processor 180 of the refrigerator 10 acquires an internal image of the refrigerator 10 through the camera 121 (S2101).
- the camera 121 provided in the outer door 14 may capture an image of the interior of the refrigerator 10 .
- FIG. 11 may be used as an embodiment in which the processor 180 captures an image inside the refrigerator 10 .
- the arrangement of one or more cameras may also be used with previously described embodiments.
- the processor 180 of the refrigerator 10 corresponds to each of the plurality of foods included in the internal image through the transparent display 14-1 provided on the front of the outer door 14 based on the acquired internal image.
- a food item name editing screen including a plurality of food image items is displayed (S2103).
- the processor 180 may display the food item name editing screen on the transparent display 14 - 1 .
- the processor 180 may identify a plurality of foods included in the internal image by using the acquired internal image.
- the processor 180 may obtain, from the internal image, object identification information corresponding to each of a plurality of foods included in the internal image, according to the embodiments of FIGS. 18 to 20 .
- the object identification information may be a name of food.
- the food item name editing screen may include a plurality of food image items corresponding to each of the plurality of foods.
- Each of the plurality of food image items may represent an image representing the recognized food.
- the food item name editing screen will be described with reference to FIG. 22 .
- 22 is a view for explaining a food item name editing screen according to an embodiment of the present disclosure.
- the refrigerator 10 may display the food item name editing screen 2210 on the transparent display 14-1 provided in the outer door 14. have.
- the food item name editing screen 2210 may include a plurality of food image items 2211 to 2217 corresponding to each of the plurality of foods recognized from the photographed internal image 2210 .
- Each of the plurality of food image items 2211 to 2217 may be an image cropped from the internal image 2210 .
- the food item name editing screen 2210 may be displayed on the user's terminal capable of communicating with the refrigerator 10 .
- the terminal may be any one of a smartphone and a TV.
- the processor 180 receives an input for receiving a product name of a food image item selected from among a plurality of food image items (S2105).
- the processor 180 may receive an input for selecting any one of a plurality of food image items 2211 to 2217 included in the food item name editing screen 2210 .
- the processor 180 may display an editing window for editing the item name of the food image item.
- the processor 180 may receive the product name of the food image item through the editing window.
- 23 is a view for explaining a process for editing a product name of a food image item, according to an embodiment of the present disclosure.
- an editing window 2221 for editing the product name may be displayed on the food product name editing screen 2210 .
- the editing window 2221 may include text requesting input of the product name of the selected food image item 2213 .
- the processor 180 may receive the product name ⁇ drink> through the editing window 2221 .
- the user may change the food image item 2213 to a desired item through the editing window 2221 .
- the item name of the food image item 2213 is ⁇ soda>
- the item name of the food image item 2213 may be changed from ⁇ soda> to ⁇ drink> according to the user's editing.
- the processor 180 matches the received item name to the food image item selected according to the received input and stores it in the local DB of the refrigerator 10 ( S2107 ).
- the local DB may be a DB included in the memory 170 of the refrigerator 10 .
- the local DB may include information about the food item name received through the food item name editing screen 2210 .
- the local DB may match and store the edited product name of the food with the identification information for identifying the food.
- the local DB may be created by each of a plurality of users. That is, the memory 170 may include a plurality of local DBs corresponding to each of a plurality of users.
- the DB may be hardware or may refer to a storage area of the memory 170 .
- 24 is a view for explaining a process of storing identification information and product name of food in a local DB when the product name of the food selected by the user is edited, according to an embodiment of the present disclosure.
- FIG. 24 a plurality of food features 2401 to 2407 corresponding to each of a plurality of recognized food image items 2211 to 2217 are shown.
- Each of the plurality of food features 2401 - 2407 may represent a feature vector that identifies each of the plurality of food image items.
- the processor 180 may obtain a feature vector of each of the plurality of foods.
- the processor 180 may obtain a feature of each food image item by using the object identification model 2000 illustrated in FIG. 19 .
- the object identification model 2000 may extract a feature vector from image data of each of a plurality of food image items.
- the object identification model 2000 may compare a pre-stored feature vector with the extracted feature vector, and output object identification information corresponding to the extracted feature vector.
- the processor 180 matches the feature vector 2403 corresponding to the selected food image item 2213 among the plurality of food image items 2211 to 2217 with the input item name 2221 to be stored in the local DB 2410.
- the local DB 2410 may store a feature vector and a product name input by a user matching the feature vector. That is, the local DB 2410 may store information on food edited by a user.
- the processor 180 may store the position where the food is placed in correspondence with the input product name.
- the local DB 2410 may store the feature vector of the food, the location where the food is placed, and the edited item name of the food in correspondence when the food item name is edited.
- the processor 180 may extract a position where the food item 2213 is placed from the captured internal image 2200 .
- the position where the food item 2213 is placed may include coordinate information where the food is located.
- the local DB 2410 may be included in the memory 170 of the refrigerator 10 . However, it is not necessary to be limited thereto, and may be included in the memory 230 of the AI server 200 .
- the refrigerator 10 may transmit a feature vector and a product name matching it to the AI server 200 , and the AI server 200 may store information received from the refrigerator.
- 25 is a flowchart illustrating a method of operating a refrigerator according to another embodiment of the present disclosure.
- FIG. 25 is an embodiment for explaining a process of recognizing food in the refrigerator 10 using the product name edited by the user.
- the processor 180 acquires an internal image of the refrigerator 10 through the camera 121 ( S2501 ).
- the camera 121 provided in the outer door 14 may capture an image of the interior of the refrigerator 10 .
- FIG. 11 may be used as an embodiment at which the processor 180 captures an image of the interior of the refrigerator 10 .
- the processor 180 acquires one or more food identification items by using the acquired internal image (S2503).
- the food identification item may be an item for identifying food in the refrigerator 10 .
- the food identification item may be a feature vector of food.
- the processor 180 may extract a plurality of feature vectors corresponding to each of a plurality of foods from the internal image.
- the processor 180 may extract a feature vector of each food using the embodiments of FIGS. 18 and 19 .
- the processor 180 determines whether the obtained food identification item is stored in the local DB (S2505).
- the processor 180 may determine whether each feature vector is stored in a local DB.
- the memory 170 of the refrigerator 10 may include a global DB and a local DB.
- the global DB may be a DB that is basically built-in when the refrigerator 10 is shipped, and the local DB may be a DB created by editing a product name by a user.
- the global DB may be a DB received from the AI server 200 .
- the global DB may match and store a plurality of default food identification items and a plurality of default product names corresponding to each of the plurality of default food identification items.
- Each of the plurality of default food identification items may be a feature vector representing a food image.
- the processor 180 may first determine whether the feature vector extracted from the captured internal image is stored in the local DB. This is to give priority to the item name edited by the user rather than the generally set item name when recognizing the item name of the food.
- the processor 180 may recognize the food corresponding to the feature vector as a product name stored in the local DB.
- the processor 180 determines whether the number of food items corresponding to the food identification item is two or more ( S2507 ).
- the processor 180 may determine whether two or more identical food items exist.
- the processor 180 may determine whether a food identification item is stored in the local DB and a plurality of corresponding food identification items exist.
- the processor 180 recognizes the corresponding food item as a product name registered in the local DB (S2510).
- the processor 180 may read the product name corresponding to the corresponding food identification item from the local DB, and recognize the read product name as the product name of the corresponding food.
- the processor 180 may reflect the wearing of the food in the food management information by using the recognized product name.
- the food management information may include information on the number, expiration date, and location of the food stored in the refrigerator 10 .
- the processor 180 obtains the registration position at the time of registration of the corresponding food item and each of the two or more identical food item positions ( S2509 ).
- the processor 180 may store the location where the food item is placed in the local DB together when storing the edited item name of the food item.
- the location may be called a registered location.
- the processor 180 may read the registration location of the corresponding food item from the local DB.
- the processor 180 may acquire the position of each food item from the internal image in step S2503.
- the photographing direction of the internal image and the size of the photographed internal image may be constant.
- the processor 180 may extract coordinate information in which each food item is located.
- the processor 180 may extract one or more coordinates corresponding to the shape of each food item.
- the processor 180 obtains each overlapping degree based on the registered location and each location of two or more identical food items, and determines whether the obtained overlapping degree is equal to or greater than a threshold value (S2511).
- the processor 180 may compare the registered location with the respective locations of two or more identical food items, and determine the same food that is closest to the registered location among the two or more identical foods.
- the processor 180 may recognize the determined item name of the same food as the item name stored in the local DB.
- the processor 180 compares the registered position stored in the local DB with the position of each of the two or more food items to obtain each overlapping degree.
- the processor 180 may compare each overlapping degree with a threshold value to determine whether the overlapping degree is greater than the threshold value.
- the threshold value may represent a standard value for classifying any one food item among a plurality of identical food items as a food item registered in the local DB.
- the processor 180 When there is a food item having an overlapping degree equal to or greater than the threshold value, the processor 180 recognizes the item name of the food item having the overlapping degree equal to or greater than the threshold value as the item name registered in the local DB (S2510).
- the processor 180 may determine the item names of the one or more food items as the item names registered in the local DB.
- the processor 180 registers the food item located closest to the registration location among the two or more identical food items in the local DB. It is recognized as a product name (S2513).
- the processor 180 may calculate a distance between the center point of the registration location and the center point of each of two or more identical food items when there is no food item having an overlapping degree equal to or greater than the threshold value.
- the processor 180 may obtain a food item corresponding to the closest distance among distances between the center point of the registration location and the center point of each of two or more identical food items according to the calculation result.
- the processor 180 may determine the product name of the acquired food item as the product name stored in the local DB.
- the processor 180 determines whether the food identification item is stored in the global DB (S2515).
- the global DB may store a plurality of food identification items and a plurality of product names corresponding to each of the plurality of food identification items.
- the global DB may store food identification items and product names that are not edited by the user.
- the processor 180 recognizes the food item corresponding to the food identification item as a product name registered in the global DB (S2517).
- the processor 180 displays a food registration screen for registering the product name of the food (S2519).
- the food registration screen may be a screen for newly registering the product name of the food item.
- the food registration screen is a previously unstored food item and the item name of the food item. It may be a screen for
- the item name of the food may be edited according to the user's preference. Accordingly, the product name of the food is stored according to the user, and food management according to the user's preference can be performed.
- the user edits the product name of the food inside the refrigerator 10, and later, when the same food is put in, the process of recognizing the product name of the corresponding food as the product name corrected by the user explain
- 26 is a view for explaining the handling of the same foodstuff after the item name of the food is corrected by the user according to an embodiment of the present disclosure.
- the food 2610 in the refrigerator 10 is recognized as a product name of ⁇ mineral water>.
- the refrigerator 10 may store the registered location of the food 2610 together with the modified product name in the local DB.
- the refrigerator 10 recognizes the product name of the food 2620 in a position similar to the registered position as ⁇ carbonated water> when editing the product name of the food 2610 . and the product names of the foods 26230 and 2640 located at different locations from the registered locations may be recognized as ⁇ mineral water>, which is an existing product name.
- the refrigerator 10 may determine the food 2620 located in the same compartment as the food 2610 whose product name has been modified as a position similar to the registered position.
- the refrigerator 10 may determine the foods 2630 and 2640 that are not located in the same compartment as the food 2610 for which the product name has been modified as a location different from the registered location.
- the refrigerator 10 may calculate an overlapping degree based on a registered position of the food 2610 and a position between the same foods 2620 , 2630 , and 2640 .
- the refrigerator 10 may recognize a food having a calculated overlapping degree equal to or greater than a threshold value among the same foods 2620 , 2630 , and 2640 as ⁇ carbonated water>, which is a modified product name of the food 2610 .
- the refrigerator 10 sets the product name of each of the same foods 2620, 2630, and 2640 regardless of the registration location of the modified food 2610 ⁇ carbonated water>, which is the modified product name of the food 2610. can be recognized as
- the refrigerator 10 may recognize the received food according to the recognition of the product name of the food, and acquire the food storage state based on the identified result.
- the refrigerator 10 may display the food storage state on the transparent display 14 - 1 .
- the refrigerator 10 may display the food storage state on the transparent display 14-1 after the outer door is completely closed.
- 27 is a view for explaining a process of revising a food item name a plurality of times by a user, according to an embodiment of the present disclosure.
- the user first edited the product name of the food 2610 to ⁇ carbonated water> according to the processes S2101 to S2107 of FIG. 21 .
- the refrigerator 10 recognizes the product name of the corresponding product 2610 as ⁇ carbonated water>. Thereafter, the user secondarily modifies the product name of the product 2610 to ⁇ cider>.
- the refrigerator 10 may store the product name corrected to ⁇ cider> and the product identification item of the corresponding product 2610 in the local DB.
- the user may modify and manage the item name of the food that has been modified once to suit his/her preference several times.
- 28 is a view for explaining a process of setting the same product name to different foods, according to an embodiment of the present disclosure.
- the first food 2810 is recognized as ⁇ drink 1>
- the second food 2830 is recognized as ⁇ drink 2>.
- a global DB can be used.
- the item name of the first food 2810 is changed from ⁇ drink 1> to ⁇ drink 3>, and the item name of the second food 2820 is modified from ⁇ drink 2> to ⁇ drink 3>.
- the product name of the first food 2810 is may be recognized as ⁇ drink 3>
- the product name of the second food 2820 may be recognized as ⁇ drink 3>.
- the user may modify the same type of foods to the same product name, and manage the foods according to their preferences.
- 29 and 30 are diagrams for explaining a scenario related to deletion of an item name of food, according to an embodiment of the present disclosure.
- FIG. 29 is a scenario related to the deletion of the product name of food registered in the global DB
- FIG. 30 is a scenario related to the deletion of the product name of the food registered in the local DB.
- the product name of the food 2610 stored in the global DB is ⁇ mineral water>.
- a notification 2900 indicating that the product name of the food cannot be deleted is displayed on the transparent display 14-1. can be displayed
- FIG. 30 a case in which the product name of the food 2610 is edited from ⁇ mineral water> to ⁇ carbonated water> by a user's correction input is illustrated.
- the refrigerator 10 may delete the item name of ⁇ carbonated water>.
- the refrigerator 10 may change the product name of the food 2610 to ⁇ mineral water> stored in the global DB.
- the refrigerator 10 may recognize the item name of the corresponding food as the item name stored in the global DB.
- 31 is a view for explaining a process of setting a reference value used to classify food items registered in the local DB when two or more identical food items stored in the local DB are extracted, according to an embodiment of the present disclosure; .
- the processor 180 may arrange positions corresponding to each of the ten foods in a two-dimensional space.
- Each of the ten positions may be represented by a vector.
- the processor 180 may calculate the maximum distance D_max, which is the longest distance between the two locations 3110 and 3130 among the ten locations.
- D_max may represent the distance between the two food images at the farthest distance from each other obtained from the internal image.
- the processor 180 may calculate an intermediate distance D_centroid between the positions 3130 furthest from the positions 3150 corresponding to the intermediate vectors located in the center of the 2D space.
- the processor 180 may set the reference value a between the calculated maximum distance D_max and the intermediate distance D_centroid.
- the reference value (a) may be used as a threshold value when it is determined whether the overlap between the registered position of the food and the position of the received food is greater than or equal to the threshold when editing the product name.
- 32 and 33 are views for explaining a process of processing each food item name when a plurality of foods identical to the food item name edited by the user are received, according to an embodiment of the present disclosure.
- FIG. 32 is a view for explaining an example of recognizing all the product names of the plurality of foods as the edited product names when a plurality of foods identical to the foods whose product names have been edited by the user are received.
- 33 is a view for explaining an example of recognizing only the item name of any one of the plurality of foods as the edited product name when a plurality of foods identical to the foods with the product name edited by the user are received.
- the product name of the third food whose product name is not modified by the user is A
- the product name of the fourth food whose product name is not modified by the user is F
- the product name is not modified by the user. 5 Assume that the product name is Q.
- the product names of foods 3, 4 and 5 are stored only in the global DB.
- FIGS. 32 and 33 it is assumed that three first food, two second food, one third food, one fourth food, and one fifth food are received in the refrigerator 10 .
- FIG. 32 will be described.
- the refrigerator 10 may recognize the item names of the three first food items as modified K, and recognize the item names of the two second food items as modified M.
- the refrigerator 10 calculates a distance between the first feature vector stored in the local DB and the feature vector of the first food, and when the calculated distance is less than a preset distance, the refrigerator 10 corresponds to the first feature vector stored in the local DB. It can be recognized by the product name K.
- the refrigerator 10 calculates a distance between the second feature vector stored in the local DB and the feature vector of the second food, and when the calculated distance is less than a preset distance, the refrigerator 10 converts the second food to the second feature vector stored in the local DB. It can be recognized by the product name M corresponding to
- the refrigerator 10 may recognize the item name of the same food as the modified item name using the local DB.
- the refrigerator 10 may recognize the item names of the third, fourth, and fifth foods as item names stored in the global DB using the global DB.
- FIG. 33 will be described.
- the refrigerator 10 may recognize the item name of any one of the three first foods received as modified K, and may recognize the item name of any one of the two second foods received as the modified M.
- the refrigerator 10 may recognize only one product name among the same foods as the modified product name using the local DB.
- the refrigerator 10 recognizes the item name of the food that is closest to the registration position of the registered food as K, which is the modified item name, when the user edits the item name among the three identical first foods. 1
- the product name of foods can be recognized as X, which is the product name before modification.
- the refrigerator 10 recognizes the item name of the food that is closest to the registration position of the registered food as the modified item name M when the user edits the item name among the two identical second foods,
- the product name of the remaining second food may be recognized as Y, which is the product name before modification.
- the refrigerator 10 may recognize the item names of the third, fourth, and fifth foods as item names stored in the global DB using the global DB.
- the method of recognizing the product name of FIG. 32 and the method of recognizing the product name of FIG. 33 may be differently set on the menu according to a user's setting.
- the present disclosure described above can be implemented as computer-readable code on a medium in which a program is recorded.
- the computer-readable medium includes all types of recording devices in which data readable by a computer system is stored. Examples of computer-readable media include Hard Disk Drive (HDD), Solid State Disk (SSD), Silicon Disk Drive (SDD), ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, etc. There is this.
- the computer may include the processor 180 of the artificial intelligence device.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing (AREA)
- Combustion & Propulsion (AREA)
- Mechanical Engineering (AREA)
- Thermal Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Chemical & Material Sciences (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Cold Air Circulating Systems And Constructional Details In Refrigerators (AREA)
Abstract
본 개시의 일 실시 예에 따른 냉장고는 저장실, 아웃터 도어, 상기 아웃터 도어에 구비된 하나 이상의 카메라, 복수의 디폴트 식품 식별 항목들과 복수의 디폴트 식품 식별 항목들 각각에 상응하는 복수의 디폴트 품명들을 저장하는 글로벌 DB 및 편집된 품명과 상기 편집된 품명에 대응하는 식품 식별 항목을 저장하는 로컬 DB를 포함하는 메모리 및 상기 하나 이상의 카메라를 통해, 상기 저장실의 내부 영상을 촬영하고, 촬영된 내부 영상으로부터 하나 이상의 식품 식별 항목을 획득하고, 획득된 하나 이상의 식품 식별 항목이 상기 로컬 DB에 저장되어 있는 경우, 획득된 하나 이상의 식품 식별 항목의 하나 이상의 품명을 상기 로컬 DB에 저장되어 있는 식품 식별 항목의 품명으로 인식하는 프로세서를 포함할 수 있다.
Description
본 발명은 냉장고에 관한 것으로, 보다 상세하게는, 냉장고 내부를 촬영하고, 촬영된 이미지에 기반하여, 식품을 인식할 수 있는 것에 관한 것이다.
냉장고는 냉동 사이클에 의해 생성된 냉기를 냉장실 및 냉동실로 공급하여 각종 식품의 신선도를 장기간 유지할 수 있도록 하는 장치이다.
일반적으로 냉장고는 식품의 보관을 위한 냉장실 및 냉동실을 가지는 본체, 본체의 일측에 회전 가능하도록 결합되어 상기 냉장실 및 냉동실을 개폐하는 도어를 포함하여 구성된다.
냉장실은 저장물의 종류에 따라 수납 및 저장을 효율적으로 수행할 수 있도록 선반 등에 의하여 복수의 공간으로 구획되어 있으며, 냉장실의 상부 영역에는 육류 및 생선 등을 저장하기 위한 저장실이 마련되어 있고, 냉장실의 하부 영역에는 야채 및 과일 등을 저장하기 위한 저장실이 마련된다.
한편, 최근에는 생활 환경의 향상으로 고급화된 냉장고에 대한 수요가 점차 증가함에 따라 냉장고에 관한 정보의 제공 및 냉장고 제어를 위해 디스플레이부가 냉장고의 도어 등에 마련된다.
또한, 최근에는, 냉장실의 도어가 2개의 도어로 구비되어, 수납 공간을 넓히고 있다.
사용자가 현재 냉장고의 저장물을 파악하기 위해서는 직접 냉장고 도어를 열고 내부를 살펴보아야 하는 불편이 있다.
이를 위해, 종래에는 냉장고의 천장에 카메라를 구비하여, 냉장고의 수납 상태에 대한 정보를 제공하였다.
그러나, 냉장실의 도어가 2개의 도어로 구비된 경우, 천장에 구비된 카메라만으로는 내측에 있는 도어의 식품 수납 상태를 제대로 파악할 수 없는 문제가 있다.
본 개시는 사용자의 기호에 맞게, 식품의 명칭을 수정할 수 있는 냉장고의 제공을 목적으로 한다.
본 개시는, 복수의 동일 식품들이 입고된 경우라도, 어느 하나의 식품의 명칭을 기 수정된 명칭으로 인식할 수 있는 냉장고의 제공을 목적으로 한다.
본 개시의 일 실시 예에 따른 냉장고는 하나 이상의 카메라를 통해, 저장실의 내부 영상을 촬영하고, 촬영된 내부 영상으로부터 하나 이상의 식품 식별 항목을 획득하고, 획득된 하나 이상의 식품 식별 항목이 로컬 DB에 저장되어 있는 경우, 획득된 하나 이상의 식품 식별 항목의 하나 이상의 품명을 상기 로컬 DB에 저장되어 있는 식품 식별 항목의 품명으로 인식할 수 있다.
본 개시의 실시 예에 따른 냉장고는 상기 촬영된 내부 영상으로부터 획득된 복수의 식품 식별 항목들 중 상기 로컬 DB에 저장된 동일한 식품 식별 항목이 복수 개 존재하는 경우, 복수의 동한 식품 식별 항목들에 상응하는 복수의 동일 식품 항목들 중 어느 하나의 동일 식품 항목의 품명을 상기 로컬 DB에 저장된 품명으로 인식할 수 있다.
본 개시의 실시 예에 따르면, 사용자는 자신의 기호에 맞게, 식품의 명칭을 수정함에 따라, 주도적인 식품 관리를 수행할 수 있다.
본 개시의 실시 예에 따르면, 복수의 동일 식품들이 입고되더라도, 사용자가 원하는 식품 하나의 품명을 다르게 인식하여, 사용자의 선호에 맞는 식품 관리가 수행될 수 있다.
도 1은 본 개시의 일 실시 예에 따른 AI 장치를 나타낸다.
도 2는 본 개시의 일 실시 예에 따른 AI 서버를 나타낸다.
도 3은 본 개시의 일 실시 예에 따른 AI 시스템을 나타낸다.
도 4는 본 개시의 또 다른 실시 예에 따른 AI 장치를 나타낸다.
도 5는 본 개시의 일 실시 예에 따른 냉장고의 사시도이고, 도 6은 본 개시의 일 실시 예에 따른 냉장고의 냉장실 도어가 개방된 모습을 보여주는 사시도이고, 도 7은 본 개시의 일 실시 예에 따른 냉장고의 냉장실 도어 중, 아우터 도어가 개방된 모습을 보여주는 사시도이다.
도 8은 본 개시의 일 실시 예에 따른 냉장고의 냉장실 도어 중, 인너 도어의 구성을 보여주는 사시도이다.
도 9는 본 개시의 실시 예에 따른 냉장실 도어가 닫힌 상태에서 보여주는 냉장고의 정면도이다.
도 10은 본 개시의 실시 예에 따른 아웃터 도어가 개방되고, 인너 도어는 닫혀 있는 상태를 보여주는 냉장고의 정면도이다.
도 11은 본 개시의 실시 예에 따른 냉장고의 동작 방법을 설명하기 위한 흐름도이다.
도 12는 본 개시의 실시 예에 따라, 아웃터 도어가 기 설정된 각도에서 인너 도어를 촬영하는 예를 설명하는 도면이다.
도 13 내지 도 14는 본 개시의 다양한 실시 예에 따른 아웃터 도어에 구비된 카메라의 배치를 설명하는 도면이다.
도 15a 및 도 15b는 본 개시의 일 실시 예에 따라 아웃터 도어의 도어 다이크에 부착된 카메라의 배치 위치를 설명하는 도면이다.
도 16a는 도 15a의 도면에서, 아웃터 도어(14)를 A1-A2 방향으로 자른 횡단면도이고, 도 16b는 도 15a의 도면에서, 아웃터 도어(14)를 B1-B2 방향으로 자른 종단면도이다.
도 17은 본 개시의 실시 예에 따라 아웃터 도어가 90만큼 개방된 경우와, 아웃터 도어가 기 설정된 각도만큼 개방된 경우, 카메라의 촬영 방향을 설명하는 도면이다.
도 18 및 도 19는 본 개시의 실시 예에 따른 객체 감지 모델의 학습 과정을 설명하는 도면이다.
도 20은 본 개시의 일 실시 예에 따른 객체 식별 모델의 학습 과정을 보여준다.
도 21은 본 개시의 또 다른 실시 예에 따른 냉장고의 동작 방법을 설명하기 위한 흐름도이다.
도 22는 본 개시의 일 실시 예에 따른 식품 품명 편집 화면을 설명하는 도면이다.
도 23은 본 개시의 일 실시 예에 따라, 식품 이미지 항목의 품명을 편집하기 위한, 과정을 설명하는 도면이다.
도 24는 본 개시의 일 실시 예에 따라, 사용자가 선택한 식품의 품명이 편집된 경우, 식품의 식별 정보와 품명을 로컬 DB에 저장하는 과정을 설명하는 도면이다.
도 25는 본 개시의 또 다른 실시 예에 따른 냉장고의 동작 방법을 설명하기 위한 흐름도이다.
도 26은 본 개시의 실시 예에 따라, 사용자에 의해, 식품의 품명이 수정된 후, 동일한 식품들이 입고된 경우의 취급에 대해 설명하는 도면이다.
도 27은 본 개시의 실시 예에 따라, 사용자에 의해, 식품의 품명을 복수 회 수정하는 과정을 설명하는 도면이다.
도 28은 본 개시의 실시 예에 따라, 서로 다른 식품에 동일한 품명을 설정하는 과정을 설명하는 도면이다.
도 29 및 도 30은 본 개시의 실시 예에 따라, 식품의 품명의 삭제와 관련된 시나리오를 설명하는 도면들이다.
도 31은 본 개시의 일 실시 예에 따라, 로컬 DB에 저장된 2개 이상의 동일한 식품 항목이 추출된 경우, 로컬 DB에 등록된 식품 항목으로 분류하는데 사용되는 기준 값을 설정하는 과정을 설명하는 도면이다.
도 32 및 도 33은 본 개시의 실시 예에 따라, 사용자에 의해 품명이 편집된 식품과 동일한 복수의 식품들이 입고된 경우, 각 식품의 품명의 처리 과정을 설명하는 도면이다.
인공 지능은 인공적인 지능 또는 이를 만들 수 있는 방법론을 연구하는 분야를 의미하며, 머신 러닝(기계 학습, Machine Learning)은 인공 지능 분야에서 다루는 다양한 문제를 정의하고 그것을 해결하는 방법론을 연구하는 분야를 의미한다. 머신 러닝은 어떠한 작업에 대하여 꾸준한 경험을 통해 그 작업에 대한 성능을 높이는 알고리즘으로 정의하기도 한다.
인공 신경망(ANN: Artificial Neural Network)은 머신 러닝에서 사용되는 모델로써, 시냅스의 결합으로 네트워크를 형성한 인공 뉴런(노드)들로 구성되는, 문제 해결 능력을 가지는 모델 전반을 의미할 수 있다. 인공 신경망은 다른 레이어의 뉴런들 사이의 연결 패턴, 모델 파라미터를 갱신하는 학습 과정, 출력값을 생성하는 활성화 함수(Activation Function)에 의해 정의될 수 있다.
인공 신경망은 입력층(Input Layer), 출력층(Output Layer), 그리고 선택적으로 하나 이상의 은닉층(Hidden Layer)를 포함할 수 있다. 각 층은 하나 이상의 뉴런을 포함하고, 인공 신경망은 뉴런과 뉴런을 연결하는 시냅스를 포함할 수 있다. 인공 신경망에서 각 뉴런은 시냅스를 통해 입력되는 입력 신호들, 가중치, 편향에 대한 활성 함수의 함숫값을 출력할 수 있다.
모델 파라미터는 학습을 통해 결정되는 파라미터를 의미하며, 시냅스 연결의 가중치와 뉴런의 편향 등이 포함된다. 그리고, 하이퍼파라미터는 머신 러닝 알고리즘에서 학습 전에 설정되어야 하는 파라미터를 의미하며, 학습률(Learning Rate), 반복 횟수, 미니 배치 크기, 초기화 함수 등이 포함된다.
인공 신경망의 학습의 목적은 손실 함수를 최소화하는 모델 파라미터를 결정하는 것으로 볼 수 있다. 손실 함수는 인공 신경망의 학습 과정에서 최적의 모델 파라미터를 결정하기 위한 지표로 이용될 수 있다.
머신 러닝은 학습 방식에 따라 지도 학습(Supervised Learning), 비지도 학습(Unsupervised Learning), 강화 학습(Reinforcement Learning)으로 분류할 수 있다.
지도 학습은 학습 데이터에 대한 레이블(label)이 주어진 상태에서 인공 신경망을 학습시키는 방법을 의미하며, 레이블이란 학습 데이터가 인공 신경망에 입력되는 경우 인공 신경망이 추론해 내야 하는 정답(또는 결과 값)을 의미할 수 있다. 비지도 학습은 학습 데이터에 대한 레이블이 주어지지 않는 상태에서 인공 신경망을 학습시키는 방법을 의미할 수 있다. 강화 학습은 어떤 환경 안에서 정의된 에이전트가 각 상태에서 누적 보상을 최대화하는 행동 혹은 행동 순서를 선택하도록 학습시키는 학습 방법을 의미할 수 있다.
인공 신경망 중에서 복수의 은닉층을 포함하는 심층 신경망(DNN: Deep Neural Network)으로 구현되는 머신 러닝을 딥 러닝(심층 학습, Deep Learning)이라 부르기도 하며, 딥 러닝은 머신 러닝의 일부이다. 이하에서, 머신 러닝은 딥 러닝을 포함하는 의미로 사용된다.
도 1은 본 개시의 일 실시 예에 따른 AI 장치(100)를 나타낸다.
AI 장치(100)는 TV, 프로젝터, 휴대폰, 스마트폰, 데스크탑 컴퓨터, 노트북, 디지털방송용 단말기, PDA(personal digital assistants), PMP(portable multimedia player), 네비게이션, 태블릿 PC, 웨어러블 장치, 셋톱박스(STB), DMB 수신기, 라디오, 세탁기, 냉장고, 데스크탑 컴퓨터, 디지털 사이니지, 로봇, 차량 등과 같은, 고정형 기기 또는 이동 가능한 기기 등으로 구현될 수 있다.
도 1을 참조하면, 단말기(100)는 통신부(110), 입력부(120), 러닝 프로세서(130), 센싱부(140), 출력부(150), 메모리(170) 및 프로세서(180) 등을 포함할 수 있다.
통신부(110)는 유무선 통신 기술을 이용하여 다른 AI 장치(100a 내지 100e)나 AI 서버(200) 등의 외부 장치들과 데이터를 송수신할 수 있다. 예컨대, 통신부(110)는 외부 장치들과 센서 정보, 사용자 입력, 학습 모델, 제어 신호 등을 송수신할 수 있다.
이때, 통신부(110)가 이용하는 통신 기술에는 GSM(Global System for Mobile communication), CDMA(Code Division Multi Access), LTE(Long Term Evolution), 5G, WLAN(Wireless LAN), Wi-Fi(Wireless-Fidelity), 블루투스(Bluetooth쪠), RFID(Radio Frequency Identification), 적외선 통신(Infrared Data Association; IrDA), ZigBee, NFC(Near Field Communication) 등이 있다.
입력부(120)는 다양한 종류의 데이터를 획득할 수 있다.
이때, 입력부(120)는 영상 신호 입력을 위한 카메라, 오디오 신호를 수신하기 위한 마이크로폰, 사용자로부터 정보를 입력 받기 위한 사용자 입력부 등을 포함할 수 있다. 여기서, 카메라나 마이크로폰을 센서로 취급하여, 카메라나 마이크로폰으로부터 획득한 신호를 센싱 데이터 또는 센서 정보라고 할 수도 있다.
입력부(120)는 모델 학습을 위한 학습 데이터 및 학습 모델을 이용하여 출력을 획득할 때 사용될 입력 데이터 등을 획득할 수 있다. 입력부(120)는 가공되지 않은 입력 데이터를 획득할 수도 있으며, 이 경우 프로세서(180) 또는 러닝 프로세서(130)는 입력 데이터에 대하여 전처리로써 입력 특징점(input feature)을 추출할 수 있다.
러닝 프로세서(130)는 학습 데이터를 이용하여 인공 신경망으로 구성된 모델을 학습시킬 수 있다. 여기서, 학습된 인공 신경망을 학습 모델이라 칭할 수 있다. 학습 모델은 학습 데이터가 아닌 새로운 입력 데이터에 대하여 결과 값을 추론해 내는데 사용될 수 있고, 추론된 값은 어떠한 동작을 수행하기 위한 판단의 기초로 이용될 수 있다.
이때, 러닝 프로세서(130)는 AI 서버(200)의 러닝 프로세서(240)과 함께 AI 프로세싱을 수행할 수 있다.
이때, 러닝 프로세서(130)는 AI 장치(100)에 통합되거나 구현된 메모리를 포함할 수 있다. 또는, 러닝 프로세서(130)는 메모리(170), AI 장치(100)에 직접 결합된 외부 메모리 또는 외부 장치에서 유지되는 메모리를 사용하여 구현될 수도 있다.
센싱부(140)는 다양한 센서들을 이용하여 AI 장치(100) 내부 정보, AI 장치(100)의 주변 환경 정보 및 사용자 정보 중 적어도 하나를 획득할 수 있다.
이때, 센싱부(140)에 포함되는 센서에는 근접 센서, 조도 센서, 가속도 센서, 자기 센서, 자이로 센서, 관성 센서, RGB 센서, IR 센서, 지문 인식 센서, 초음파 센서, 광 센서, 마이크로폰, 라이다, 레이더 등이 있다.
출력부(150)는 시각, 청각 또는 촉각 등과 관련된 출력을 발생시킬 수 있다.
이때, 출력부(150)에는 시각 정보를 출력하는 디스플레이부, 청각 정보를 출력하는 스피커, 촉각 정보를 출력하는 햅틱 모듈 등이 포함될 수 있다.
메모리(170)는 AI 장치(100)의 다양한 기능을 지원하는 데이터를 저장할 수 있다. 예컨대, 메모리(170)는 입력부(120)에서 획득한 입력 데이터, 학습 데이터, 학습 모델, 학습 히스토리 등을 저장할 수 있다.
프로세서(180)는 데이터 분석 알고리즘 또는 머신 러닝 알고리즘을 사용하여 결정되거나 생성된 정보에 기초하여, AI 장치(100)의 적어도 하나의 실행 가능한 동작을 결정할 수 있다. 그리고, 프로세서(180)는 AI 장치(100)의 구성 요소들을 제어하여 결정된 동작을 수행할 수 있다.
이를 위해, 프로세서(180)는 러닝 프로세서(130) 또는 메모리(170)의 데이터를 요청, 검색, 수신 또는 활용할 수 있고, 상기 적어도 하나의 실행 가능한 동작 중 예측되는 동작이나, 바람직한 것으로 판단되는 동작을 실행하도록 AI 장치(100)의 구성 요소들을 제어할 수 있다.
이때, 프로세서(180)는 결정된 동작을 수행하기 위하여 외부 장치의 연계가 필요한 경우, 해당 외부 장치를 제어하기 위한 제어 신호를 생성하고, 생성한 제어 신호를 해당 외부 장치에 전송할 수 있다.
프로세서(180)는 사용자 입력에 대하여 의도 정보를 획득하고, 획득한 의도 정보에 기초하여 사용자의 요구 사항을 결정할 수 있다.
이때, 프로세서(180)는 음성 입력을 문자열로 변환하기 위한 STT(Speech To Text) 엔진 또는 자연어의 의도 정보를 획득하기 위한 자연어 처리(NLP: Natural Language Processing) 엔진 중에서 적어도 하나 이상을 이용하여, 사용자 입력에 상응하는 의도 정보를 획득할 수 있다.
이때, STT 엔진 또는 NLP 엔진 중에서 적어도 하나 이상은 적어도 일부가 머신 러닝 알고리즘에 따라 학습된 인공 신경망으로 구성될 수 있다. 그리고, STT 엔진 또는 NLP 엔진 중에서 적어도 하나 이상은 러닝 프로세서(130)에 의해 학습된 것이나, AI 서버(200)의 러닝 프로세서(240)에 의해 학습된 것이거나, 또는 이들의 분산 처리에 의해 학습된 것일 수 있다.
프로세서(180)는 AI 장치(100)의 동작 내용이나 동작에 대한 사용자의 피드백 등을 포함하는 이력 정보를 수집하여 메모리(170) 또는 러닝 프로세서(130)에 저장하거나, AI 서버(200) 등의 외부 장치에 전송할 수 있다. 수집된 이력 정보는 학습 모델을 갱신하는데 이용될 수 있다.
프로세서(180)는 메모리(170)에 저장된 응용 프로그램을 구동하기 위하여, AI 장치(100)의 구성 요소들 중 적어도 일부를 제어할 수 있다. 나아가, 프로세서(180)는 상기 응용 프로그램의 구동을 위하여, AI 장치(100)에 포함된 구성 요소들 중 둘 이상을 서로 조합하여 동작시킬 수 있다.
도 2는 본 개시의 일 실시 예에 따른 AI 서버(200)를 나타낸다.
도 2를 참조하면, AI 서버(200)는 머신 러닝 알고리즘을 이용하여 인공 신경망을 학습시키거나 학습된 인공 신경망을 이용하는 장치를 의미할 수 있다. 여기서, AI 서버(200)는 복수의 서버들로 구성되어 분산 처리를 수행할 수도 있고, 5G 네트워크로 정의될 수 있다. 이때, AI 서버(200)는 AI 장치(100)의 일부의 구성으로 포함되어, AI 프로세싱 중 적어도 일부를 함께 수행할 수도 있다.
AI 서버(200)는 통신부(210), 메모리(230), 러닝 프로세서(240) 및 프로세서(260) 등을 포함할 수 있다.
통신부(210)는 AI 장치(100) 등의 외부 장치와 데이터를 송수신할 수 있다.
메모리(230)는 모델 저장부(231)를 포함할 수 있다. 모델 저장부(231)는 러닝 프로세서(240)을 통하여 학습 중인 또는 학습된 모델(또는 인공 신경망, 231a)을 저장할 수 있다.
러닝 프로세서(240)는 학습 데이터를 이용하여 인공 신경망(231a)을 학습시킬 수 있다. 학습 모델은 인공 신경망의 AI 서버(200)에 탑재된 상태에서 이용되거나, AI 장치(100) 등의 외부 장치에 탑재되어 이용될 수도 있다.
학습 모델은 하드웨어, 소프트웨어 또는 하드웨어와 소프트웨어의 조합으로 구현될 수 있다. 학습 모델의 일부 또는 전부가 소프트웨어로 구현되는 경우 학습 모델을 구성하는 하나 이상의 명령어(instruction)는 메모리(230)에 저장될 수 있다.
프로세서(260)는 학습 모델을 이용하여 새로운 입력 데이터에 대하여 결과 값을 추론하고, 추론한 결과 값에 기초한 응답이나 제어 명령을 생성할 수 있다.
도 3은 본 개시의 일 실시 예에 따른 AI 시스템(1)을 나타낸다.
도 3을 참조하면, AI 시스템(1)은 AI 서버(200), 로봇(100a), 자율 주행 차량(100b), XR 장치(100c), 스마트폰(100d) 또는 가전(100e) 중에서 적어도 하나 이상이 클라우드 네트워크(10)와 연결된다. 여기서, AI 기술이 적용된 로봇(100a), 자율 주행 차량(100b), XR 장치(100c), 스마트폰(100d) 또는 가전(100e) 등을 AI 장치(100a 내지 100e)라 칭할 수 있다.
클라우드 네트워크(10)는 클라우드 컴퓨팅 인프라의 일부를 구성하거나 클라우드 컴퓨팅 인프라 안에 존재하는 네트워크를 의미할 수 있다. 여기서, 클라우드 네트워크(10)는 3G 네트워크, 4G 또는 LTE(Long Term Evolution) 네트워크 또는 5G 네트워크 등을 이용하여 구성될 수 있다.
즉, AI 시스템(1)을 구성하는 각 장치들(100a 내지 100e, 200)은 클라우드 네트워크(10)를 통해 서로 연결될 수 있다. 특히, 각 장치들(100a 내지 100e, 200)은 기지국을 통해서 서로 통신할 수도 있지만, 기지국을 통하지 않고 직접 서로 통신할 수도 있다.
AI 서버(200)는 AI 프로세싱을 수행하는 서버와 빅 데이터에 대한 연산을 수행하는 서버를 포함할 수 있다.
AI 서버(200)는 AI 시스템(1)을 구성하는 AI 장치들인 로봇(100a), 자율 주행 차량(100b), XR 장치(100c), 스마트폰(100d) 또는 가전(100e) 중에서 적어도 하나 이상과 클라우드 네트워크(10)을 통하여 연결되고, 연결된 AI 장치들(100a 내지 100e)의 AI 프로세싱을 적어도 일부를 도울 수 있다.
이때, AI 서버(200)는 AI 장치(100a 내지 100e)를 대신하여 머신 러닝 알고리즘에 따라 인공 신경망을 학습시킬 수 있고, 학습 모델을 직접 저장하거나 AI 장치(100a 내지 100e)에 전송할 수 있다.
이때, AI 서버(200)는 AI 장치(100a 내지 100e)로부터 입력 데이터를 수신하고, 학습 모델을 이용하여 수신한 입력 데이터에 대하여 결과 값을 추론하고, 추론한 결과 값에 기초한 응답이나 제어 명령을 생성하여 AI 장치(100a 내지 100e)로 전송할 수 있다.
또는, AI 장치(100a 내지 100e)는 직접 학습 모델을 이용하여 입력 데이터에 대하여 결과 값을 추론하고, 추론한 결과 값에 기초한 응답이나 제어 명령을 생성할 수도 있다.
이하에서는, 상술한 기술이 적용되는 AI 장치(100a 내지 100e)의 다양한 실시 예들을 설명한다. 여기서, 도 3에 도시된 AI 장치(100a 내지 100e)는 도 1에 도시된 AI 장치(100)의 구체적인 실시 예로 볼 수 있다.
도 4는 본 개시의 일 실시 예에 따른 AI 장치(100)를 나타낸다.
도 1과 중복되는 설명은 생략한다.
도 4를 참조하면, 입력부(120)는 영상 신호 입력을 위한 카메라(Camera, 121), 오디오 신호를 수신하기 위한 마이크로폰(Microphone, 122), 사용자로부터 정보를 입력 받기 위한 사용자 입력부(User Input Unit, 123)를 포함할 수 있다.
입력부(120)에서 수집한 음성 데이터나 이미지 데이터는 분석되어 사용자의 제어 명령으로 처리될 수 있다.
입력부(120)는 영상 정보(또는 신호), 오디오 정보(또는 신호), 데이터, 또는 사용자로부터 입력되는 정보의 입력을 위한 것으로서, 영상 정보의 입력을 위하여, AI 장치(100)는 하나 또는 복수의 카메라(121)들을 구비할 수 있다.
카메라(121)는 화상 통화모드 또는 촬영 모드에서 이미지 센서에 의해 얻어지는 정지영상 또는 동영상 등의 화상 프레임을 처리한다. 처리된 화상 프레임은 디스플레이부(Display Unit, 151)에 표시되거나 메모리(170)에 저장될 수 있다.
마이크로폰(122)은 외부의 음향 신호를 전기적인 음성 데이터로 처리한다. 처리된 음성 데이터는 AI 장치(100)에서 수행 중인 기능(또는 실행 중인 응용 프로그램)에 따라 다양하게 활용될 수 있다. 한편, 마이크로폰(122)에는 외부의 음향 신호를 입력 받는 과정에서 발생되는 잡음(noise)을 제거하기 위한 다양한 잡음 제거 알고리즘이 적용될 수 있다.
사용자 입력부(123)는 사용자로부터 정보를 입력 받기 위한 것으로서, 사용자 입력부(123)를 통해 정보가 입력되면, 프로세서(180)는 입력된 정보에 대응되도록 AI 장치(100)의 동작을 제어할 수 있다.
사용자 입력부(123)는 기계식 (mechanical) 입력수단(또는, 메커니컬 키, 예컨대, 단말기(100)의 전/후면 또는 측면에 위치하는 버튼, 돔 스위치 (dome switch), 조그 휠, 조그 스위치 등) 및 터치식 입력수단을 포함할 수 있다. 일 예로서, 터치식 입력수단은, 소프트웨어적인 처리를 통해 터치스크린에 표시되는 가상 키(virtual key), 소프트 키(soft key) 또는 비주얼 키(visual key)로 이루어지거나, 상기 터치스크린 이외의 부분에 배치되는 터치 키(touch key)로 이루어질 수 있다.
출력부(150)는 디스플레이부(Display Unit, 151), 음향 출력부(Sound Output Unit, 152), 햅틱 모듈(Haptic Module, 153), 광 출력부(Optical Output Unit, 154) 중 적어도 하나를 포함할 수 있다.
디스플레이부(151)는 AI 장치(100)에서 처리되는 정보를 표시(출력)한다. 예컨대, 디스플레이부(151)는 AI 장치(100)에서 구동되는 응용 프로그램의 실행화면 정보, 또는 이러한 실행화면 정보에 따른 UI(User Interface), GUI(Graphic User Interface) 정보를 표시할 수 있다.
디스플레이부(151)는 터치 센서와 상호 레이어 구조를 이루거나 일체형으로 형성됨으로써, 터치 스크린을 구현할 수 있다. 이러한 터치 스크린은, AI 장치(100)와 사용자 사이의 입력 인터페이스를 제공하는 사용자 입력부(123)로써 기능함과 동시에, 단말기(100)와 사용자 사이의 출력 인터페이스를 제공할 수 있다.
음향 출력부(152)는 호신호 수신, 통화모드 또는 녹음 모드, 음성인식 모드, 방송수신 모드 등에서 통신부(110)로부터 수신되거나 메모리(170)에 저장된 오디오 데이터를 출력할 수 있다.
음향 출력부(152)는 리시버(receiver), 스피커(speaker), 버저(buzzer) 중 적어도 하나 이상을 포함할 수 있다.
햅틱 모듈(haptic module)(153)은 사용자가 느낄 수 있는 다양한 촉각 효과를 발생시킨다. 햅틱 모듈(153)이 발생시키는 촉각 효과의 대표적인 예로는 진동이 될 수 있다.
광출력부(154)는 AI 장치(100)의 광원의 빛을 이용하여 이벤트 발생을 알리기 위한 신호를 출력한다. AI 장치(100)에서 발생 되는 이벤트의 예로는 메시지 수신, 호 신호 수신, 부재중 전화, 알람, 일정 알림, 이메일 수신, 애플리케이션을 통한 정보 수신 등이 될 수 있다.
이하에서 설명하는 냉장고는 인공 지능을 갖는 가전 기기일 수 있다. 즉, 인공 지능 장치(100)는 냉장고일 수 있다.
냉장고는 도 4에 도시된 인공 지능 장치(100)의 구성 요소들을 모두 포함할 수 있다.
냉장고는 인공 지능 냉장고로 명명될 수 있다.
도 5는 본 개시의 일 실시 예에 따른 냉장고의 사시도이고, 도 6은 본 개시의 일 실시 예에 따른 냉장고의 냉장실 도어가 개방된 모습을 보여주는 사시도이고, 도 7은 본 개시의 일 실시 예에 따른 냉장고의 냉장실 도어 중, 아우터 도어가 개방된 모습을 보여주는 사시도이다.
도 5 내지 도 7을 참조하면, 냉장고(10)는 내부에 복수의 저장실들이 구비되는 캐비닛(11), 캐비닛(11)의 전면에 구비되어, 복수의 저장실들 중 어느 하나를 선택적으로 개폐하는 도어들(12, 15)을 포함할 수 있다.
복수의 저장실들은 냉장실(18) 및 냉동실(19)을 포함할 수 있다.
도어들(12, 15)은 냉장실(180)의 전방에 회동 가능하게 구비되는 냉장실 도어(12) 및 냉동실(19)의 전방에 회동 가능하게 구비되는 냉동실 도어(15)를 포함할 수 있다.
냉장실(18)에는 증발기에서 생성된 냉기가 공급되어, 냉장실(180)의 내부가 냉각될 수 있다. 증발기는 냉장실의 후벽 후측에 구비될 수 있다.
냉장실 도어(12)는 한 쌍으로 구비되어, 캐비닛(11)의 전면 좌측 가장자리와 우측 가장자리 각각에 회동 가능하게 연결될 수 있다.
냉장실 도어(12)는 캐비닛(11)의 전면에 밀착되는 인너 도어(13) 및 인너 도어(13)의 전면에서 인너 도어(13)에 회동 가능하게 연결되는 아웃터 도어(14)를 포함할 수 있다.
아웃터 도어(14) 및 인너 도어(13) 각각은 제1 도어, 제2 도어로 명명될 수 있다.
인너 도어(13)는 닫힌 상태에서, 배면 가장자리가 캐비닛(11)의 전면에 밀착되며, 아웃터 도어(14)는 닫힌 상태에서, 배면 가장자리가 인너 도어(13)의 전면에 밀착될 수 있다. 인너 도어(13)의 배면에는 하우징(101)이 장착될 수 있다.
캐비닛(11)의 상측에는 냉장실 도어(12)가 캐비닛(11)에 대해 회동 가능하도록 제1 힌지(114)가 구비될 수 있다.
제1 힌지(114)의 일측은 캐비닛(11)의 상면에 연결되고, 타측은 인너 도어(13)에 연결될 수 있다. 인너 도어(13) 및 아웃터 도어(13)는 제1 힌지(114)를 중심으로, 함께 회동될 수 있다.
인너 도어(13)는 아웃터 도어(14)가 인너 도어(13)에 대해 회동 가능하도록 하는 제2 힌지(미도시)를 구비할 수 있다. 아웃터 도어(14)는 단독으로, 제2 힌지를 중심으로 회동하며, 아웃터 도어(14)의 회동에 의해, 인너 도어(13)의 전면부가 개방될 수 있다.
아웃터 도어(14)는 아웃터 케이스(141), 아웃터 케이스(141)의 배면에 장착되는 도어 라이너(142) 및 도어 라이너(142)에서 소정 높이로 돌출되고, 도어 라이너(142)의 외측 가장자리를 따라 둘러지는 도어 다이크(door dike, 143)를 포함할 수 있다.
아웃터 도어(14)의 배면에는 식품을 수납할 수 있는 아웃터 바스켓(145)이 설치될 수 있다. 아웃터 바스켓(145)은 도어 다이크(143)에 분리 가능하게 결합될 수 있다. 아웃터 바스켓(145)은 복수 개로 구비될 수 있고, 상하 방향으로 설정 거리만큼 이격되어 배치될 수 있다.
도어 라이너(142)에는 실링 부재(144)가 구비될 수 있다. 실링 부재(144)는 아웃터 케이스(141)의 배면부 가장 자리를 따라 배치되어, 인너 도어(13)와 아웃터 도어(14) 사이 공간에서의 냉기 누출을 방지할 수 있다.
도어 다이크(143)는 아웃터 바스켓(145)을 고정시킬 수 있다.
도 8은 본 개시의 일 실시 예에 따른 냉장고의 냉장실 도어 중, 인너 도어의 구성을 보여주는 사시도이다.
인너 도어(13)의 후방에는 하우징(101)이 결합될 수 있다. 하우징(101)의 수납 공간에는 바스켓(102)이 설치될 수 있다.
바스켓(102)은 복수개로 구비되어, 식품을 수납할 수 있다.
도 9는 본 개시의 실시 예에 따른 냉장실 도어가 닫힌 상태에서 보여주는 냉장고의 정면도이다.
즉, 도 9는 인너 도어(13) 및 아웃터 도어(14)가 모두 닫힌 상태를 나타낸다.
냉장고(10)의 아웃터 도어(14)의 전면에는 투명 디스플레이(14-1)가 구비될 수 있다. 사용자는 투명 디스플레이(14-1)를 통해 냉장실에 저장된 식품들을 볼 수 있다.
후술하겠지만, 투명 디스플레이(14-1)는 냉장고(10)에 저장된 식품에 대한 정보를 표시할 수 있다.
도 10은 본 개시의 실시 예에 따른 아웃터 도어가 개방되고, 인너 도어는 닫혀 있는 상태를 보여주는 냉장고의 정면도이다.
도 10을 참조하면, 냉장실 도어를 구성하는 아웃터 도어(14)만이 개방되고, 인너 도어(13)는 닫혀 있는 상태를 보여준다.
아웃터 도어(14)에는 하나 이상의 카메라가 구비될 수 있다. 하나 이상의 카메라는 아웃터 도어(14)가 닫힐 시, 냉장실의 내부를 촬영할 수 있다.
특히, 하나 이상의 카메라는 인너 도어(13)에 구비된 식품들을 촬영할 수 있다.
도 11은 본 개시의 실시 예에 따른 냉장고의 동작 방법을 설명하기 위한 흐름도이다.
도 11에서, 냉장고(10)는 도 4의 구성 요소들을 모두 포함할 수 있다.
도 11은 냉장고(10)의 인너 도어(13)에 수납된 식품의 관리를 위한 냉장고(10)의 동작 방법을 설명하는 도면일 수 있다.
도 11을 참조하면,
냉장고(10)의 프로세서(180)는 아웃터 도어(14)가 개방됨을 감지한다(S1101).
프로세서(180)는 센싱부(140)에 구비된 센서를 이용하여, 아웃터 도어(14)의 개폐 여부를 감지할 수 있다.
예를 들어, 센싱부(140)는 광학 센서, 기구 센서, 전자석 센서, 가속도 센서 중 하나 이상을 포함할 수 있다.
프로세서(180)는 센싱부(140)가 감지된 감지 신호에 기반하여, 아웃터 도어(14)의 개폐 동작 또는 아웃터 도어(14)의 개방 각도를 감지할 수 있다.
센싱부(140)는 힌지(114)에 포함되거나, 힌지(114)와 인접한 위치에 배치될 수 있다.
광학 센서는 빛의 유무, 빛의 세기 등을 감지하는 센서로, 감지 대상이 되는 물체의 근접 여부를 감지하는 근접 센서일 수 있다. 프로세서(180)는 광학 센서가 감지한 빛의 유무 또는 빛의 세기를 이용하여, 아웃터 도어(14)의 개폐 여부 또는 개방 각도를 판단할 수 있다.
기구 센서는 외부로부터의 접촉 여부를 감지하는 센서로, 스위치 센서일 수 있다. 프로세서(180)는 기구 센서가 감지한 접촉 여부를 나타내는 감지 신호를 이용하여, 아웃터 도어(14)의 개폐 여부 또는 개방 각도를 검출할 수 있다.
전자석 센서는 전자기장의 크기와 방향을 감지하는 센서로, 홀 효과를 이용한 홀 센서일 수 있다. 프로세서(180)는 전자석 센서가 감지한 전자기장의 크기 변화 또는 전자기장의 방향 변화를 이용하여, 아웃터 도어(14)의 개폐 여부 또는 개방 각도를 검출할 수 있다.
가속도 센서는 x축, y축, z축 각각의 가속도의 크기를 측정하는 센서일 수 있다. 프로세서(180)는 3축에서 측정된 가속도의 크기들을 이용하여, 아웃터 도어(14)의 개폐 여부 또는 개방 각도를 측정할 수 있다.
냉장고(10)의 프로세서(180)는 아웃터 도어(14)의 개방 각도가 기 설정된 각도 이상인지를 판단한다(S1103).
프로세서(180)는 광학 센서, 기구 센서, 전자석 센서, 가속도 센서 중 어느 하나를 이용하여, 아웃터 도어(14)의 개방 각도를 측정할 수 있다.
아웃터 도어(14)의 개방 각도는 아웃터 도어(14)가 완전히 닫힌 상태를 기준으로, 열려 있는 각도를 나타낼 수 있다.
기 설정된 각도는 인너 도어(13)에 수납된 식품들에 대한 이미지를 최적으로 획득하기 위해 설정된 각도일 수 있다.
기 설정된 각도는 60도일 수 있으나, 이는 예시에 불과하다. 즉, 특정 각도 대신, 각도 범위로 설정될 수 있다.
냉장고(10)의 프로세서(180)는 아웃터 도어(14)의 개방 각도가 기 설정된 각도 이상인 것으로 판단한 후, 아웃터 도어(14)의 닫힘을 감지한다(S1105).
냉장고(10)의 프로세서(180)는 아웃터 도어(14)의 개방 각도가 기 설정된 각도에 도달했는지를 판단한다(S1107).
프로세서(180)는 아웃터 도어(14)가 닫혀지면서, 아웃터 도어(14)의 개방 각도가 기 설정된 각도와 동일한지를 판단할 수 있다.
냉장고(10)의 프로세서(180)는 아웃터 도어(14)가 닫혀지면서, 개방 각도가 기 설정된 각도에 도달한 경우, 아웃터 도어(14)에 구비된 하나 이상의 카메라를 통해, 냉장고 내부를 촬영한다(S1109).
프로세서(180)는 아웃터 도어(14)의 개방 각도가 기 설정된 각도와 동일한 경우, 아웃터 도어(14)에 구비된 하나 이상의 카메라에 캡쳐 명령을 전송할 수 있다.
하나 이상의 카메라는 캡쳐 명령에 따라, 냉장고(10)의 내부를 촬영할 수 있다.
특히, 하나 이상의 카메라는 인너 도어(13)에 수납된 식품들을 촬영할 수 있다.
하나 이상의 카메라는 아웃터 도어(14)의 측면에 구비될 수 있다. 하나 이상의 카메라는 아웃터 도어(14)의 엣지 근방에 구비될 수 있다.
이하에서는, 아웃터 도어(14)가 개방 후, 닫힘 시, 하나 이상의 카메라를 통해 냉장고 내부를 촬영하는 과정 및 하나 이상의 카메라의 배치에 대해 설명한다.
도 12는 본 개시의 실시 예에 따라, 아웃터 도어가 기 설정된 각도에서 인너 도어를 촬영하는 예를 설명하는 도면이다.
냉장고(10)는 아웃터 도어(14)가 기 설정된 각도 이상 개방된 후, 아웃터 도어(14)가 닫혀짐을 감지할 수 있다.
냉장고(10)는 아웃터 도어(14)가 닫혀지면서, 아웃터 도어(14)의 개방 각도가 기 설정된 각도에 도달한 경우, 카메라(121)에 캡쳐 명령을 전송할 수 있다. 카메라(121)는 캡쳐 명령을 수신한 시점에, 전방을 촬영할 수 있다.
아웃터 도어(14)가 기 설정된 각도만큼 개방된 경우, 카메라(121)의 촬영 방향(1201)은 인너 도어(13)의 전면일 수 있다.
즉, 카메라(121)는 아웃터 도어(14)가 기 설정된 각도에 도달할 시, 인너 도어(13)의 전면을 촬영할 수 있다.
사용자는 아웃터 도어(14)를 열어, 인너 도어(13)에 식품을 수납하거나, 인너 도어(13)로부터 식품을 빼낼 수 있다.
종래에는 냉장고(10)의 천장 벽면에만 카메라가 구비되어 있어, 인너 도어(13)에 구비된 식품에 대한 정보는 제대로 파악하기 어려웠다.
본 개시의 실시 예에 따르면, 사용자가 아웃터 도어(14)를 개방하고, 닫을 시, 최적의 촬영 각도로, 인너 도어(13)의 이미지를 촬영할 수 있다. 촬영된 이미지는 인너 도어(13)의 식품 수납 상태를 관리하는데 사용될 수 있다.
도 13 내지 도 14는 본 개시의 다양한 실시 예에 따른 아웃터 도어에 구비된 카메라의 배치를 설명하는 도면이다.
도 13은 아웃터 도어에 1개의 카메라가 구비된 경우의 실시 예이고, 도 14는 아웃터 도어에 2개의 카메라가 구비된 경우의 실시 예이다.
도 13 내지 도 14를 참조하면, 아웃터 도어(14)는 아웃터 케이스(141), 도어 라이너(142), 실링 부재(144), 도어 다이크(143)를 포함할 수 있다.
도어 케이스(141)는 아웃터 도어(14)의 전면을 구성하는 쇠판일 수 있다.
도어 라이너(142)는 도어 케이스(141)의 내측에 플라스틱과 같은 재질로 형성될 수 있다.
실링 부재(144)는 고무와 같은 탄성 재질로 구성될 수 있다.
실링 부재(144)는 아웃터 도어(14)의 폐쇄시, 냉장실의 내부 냉기가 외부로 누설되지 못하게 밀폐시킬 수 있다.
실링 부재(144)는 도어 라이너(142)의 배면에 배치될 수 있다.
실링 부재(144)는 내측 실링 부재(144a) 및 외측 실링 부재(144b)를 포함할 수 있다. 내측 실링 부재(144a)는 제1 힌지(114)에 근접하게 배치될 수 있고, 외측 실링 부재(144b)는 내측 실링 부재(144a)에 비해, 제1 힌지(114)보다 더 멀리 배치될 수 있다.
내측 실링 부재(144a) 및 외측 실링 부재(144b) 사이에는 둘을 잇는 한쌍의 연결 가스켓이 더 구비될 수 있다.
도어 다이크(143)는 아웃터 도어(14)에 구비된 바스켓을 고정시킬 수 있다.
도 13은 한 개의 카메라(121)가 아웃터 도어(14)의 도어 다이크(143)에 배치된 예를 도시하고 있다.
도 13을 참조하면, 카메라(121)는 외측 실링 부재(144b)에 인접한 도어 다이크(143)에 위치할 수 있다.
도어 다이크(143)에는 카메라(121)를 구비하기 위한 수용 홈이 형성되어 있을 수 있고, 수용 홈 내에 카메라(121)가 구비될 수 있다.
도 14를 참조하면, 아웃터 도어(14)의 도어 다이크(143)에 2개의 카메라가 배치된 예를 도시하고 있다.
도어 다이크(143)에는 제1 카메라(121a) 및 제2 카메라(121b)가 구비될 수 있다.
제1 카메라(121a) 및 제2 카메라(121b)는 일정한 거리를 두고 배치될 수 있다. 제1 카메라(121a) 및 제2 카메라(121b) 간 거리는 338mm일 수 있으나, 이는 예시에 불과하다.
제1 카메라(121a)가 촬영한 제1 이미지는 인너 도어(13)의 상측 선반에 구비된 식품의 수납 상태를 분석하기 위해 사용될 수 있고, 제2 카메라(121b)가 촬영한 제2 이미지는 인너 도어(13)의 하측 선반에 구비된 식품의 수납 상태를 분석하기 위해 사용될 수 있다.
도 13에 도시된 카메라(121), 도 14에 도시된 카메라들(121a, 121b) 각각은 블러에 강인한 고 프레임 레이트를 가질 수 있다. 예를 들어, 각 카메라의 프레임 레이트는 60fps일 수 있다.
각 카메라는 광각 카메라일 수 있고, 카메라의 화각은 135도일 수 있다.
이하에서는, 아웃터 도어 및 아웃터 도어에 구비된 카메라의 배치 구조를 상세히 설명한다.
도 15a 및 도 15b는 본 개시의 일 실시 예에 따라 아웃터 도어의 도어 다이크에 부착된 카메라의 배치 위치를 설명하는 도면이다.
특히, 도 15a는 도어 다이크(143)에 2개의 카메라(121a, 121b)가 구비된 예이다.
도 15a를 참조하면, 아웃터 도어(14)는 도어 라이너(142) 및 도어 라이너(142)에서 소정 높이로 돌출되고, 도어 라이너(142)의 외측 가장자리를 따라 둘러지는 도어 다이크(143)를 포함할 수 있다.
도어 다이크(143)는 제1 파트(143a), 제2 파트(143b), 제3 파트(143c)를 포함할 수 있다. 도어 다이크(143)는 사각 형상을 갖는 프레임일 수 있다.
제1 파트(143a) 및 제2 파트(143b)는 서로 마주볼 수 있다. 제1 파트(143a)의 길이 및 제2 파트(143b)의 길이는 제3 파트(143c)의 길이보다 길 수 있다.
제3 파트(143c)는 제1 파트(143a) 및 제2 파트(143b)를 서로 연결할 수 있다.
제4 파트(미도시) 또한, 제1 파트(143a) 및 제2 파트(143b)를 서로 연결할 수 있다.
제1 파트(143a)는 제2 파트(143b)에 비해 제1 힌지(114)에 보다 더 가까울 수 있다.
제1 카메라(121a) 및 제2 카메라(121b)는 도어 다이크(143)의 제2 파트(143b)에 내장될 수 있다. 제1 카메라(121a) 및 제2 카메라(121b)가 도어 다이크(143)의 제2 파트(143b)에 내장되기 위해, 제2 파트(143b)는 내장 홈이 구비될 수도 있다.
도 15b를 참조하면, 제1 카메라(121a)의 배치 위치에 대해 도시되어 있다. 도어 다이크(143)의 제2 파트(143b)는 제1면(1501), 제2 면(1503) 및 제3 면(1505)을 포함할 수 있다. 제2 파트(143b)는 도어 라이너(142)를 기준으로 소정 높이(k7)만큼 돌출될 수 있다.
제1면(1501) 및 제2 면(1503)은 서로 마주보도록 배치될 수 있다. 제3 면(1505)은 제1 면(1501) 및 제2 면(1503)을 연결할 수 있다.
제1 면(1501)은 아웃터 도어(14)의 우측을 향하고, 제2 면(1503)은 아웃
제1 카메라(121a)는 제2 파트(143b)의 제1 면(1501)에 구비될 수 있다.
아웃터 도어(14)가 완전히 닫힌 상태에서, 제1 면(1051)은 인너 도어(13)의 전면을 바라볼 수 있다.
제2 카메라(미도시)는 제1 카메라(121a) 보다 하측에 구비될 수 있다. 제2 카메라 또한, 제2 파트(143b)의 제1 면(1501)에 구비될 수 있다.
카메라가 한 개 구비된 경우에도, 카메라는 제2 파트(143b)의 제1 면(1501)에 구비될 수 있다.
카메라의 배치에 대해 보다 상세히 설명한다.
도 16a는 도 15a의 도면에서, 아웃터 도어(14)를 A1-A2 방향으로 자른 횡단면도이고, 도 16b는 도 15a의 도면에서, 아웃터 도어(14)를 B1-B2 방향으로 자른 종단면도이다.
도 16a 및 도 16b를 참조하면, 도어 라이너(142)의 외측 가장자리를 따라 구비된 도어 다이크(143)의 제2 파트(143b)에는 제1 카메라(121a)가 구비될 수 있다.
제2 파트(143b) 내에는 광을 조사하는 LED 모듈(1601) 및 LED 커버(1603)가 더 구비될 수 있다.
제1 카메라(121a)의 일부는 도어 다이크(143)의 제2 파트(143b)로부터 일정 거리(d1)만큼 돌출될 수 있다.
제1 카메라(121a)의 촬영 방향과 도어 다이크(143)의 제2 파트(143b)가 이루는 각도를 나타내는 촬영 각도는 90도에서, 기 설정된 개방 각도를 뺀 각도일 수 있다.
이에 대해서는 후술한다.
도 16a 및 도 16b는 도어 다이크(143)에 하나의 카메라가 구비된 경우를 기준으로 자른 단면도들 및 제2 카메라(121b)를 기준으로 자른 단면도들에도 적용될 수 있다.
도 17은 본 개시의 실시 예에 따라 아웃터 도어가 90만큼 개방된 경우와, 아웃터 도어가 기 설정된 각도만큼 개방된 경우, 카메라의 촬영 방향을 설명하는 도면이다.
도 17을 참조하면, 아웃터 도어(14)가 닫힌 상태의 인너 도어(13)를 기준으로, 90도만큼 개방되어 있는 경우, 카메라(121)의 촬영 방향(1701)과 아웃터 도어(14)가 이루는 각도인 촬영 각도는 90도에서, 기 설정된 개방 각도(a)를 뺀 각도일 수 있다.
즉, 카메라(121)는 아웃터 도어(14), 정확하게는 도어 다이크(143)의 제2 파트(143b)를 기준으로, 90-a만큼 틸팅되어 배치될 수 있다.
이는, 아웃터 도어(14)가 기 설정된 개방 각도(a)에 도달할 경우, 인너 도어(13)의 전면을 정확하게 촬영하기 위함이다.
즉, 아웃터 도어(14)가 기 설정된 개방 각도(a)만큼 개방된 경우, 카메라(121)의 촬영 방향(1703)은 인너 도어(13)의 전면을 향할 수 있다. 이에 따라, 인너 도어(13)에 있는 식품들이 블러 없이, 정확히 촬영될 수 있다.
기 설정된 개방 각도가 60도인 경우, 카메라(121)의 틸팅 각도는 30도일 수 있다.
도 17에서는 하나의 카메라가 도어 다이크(143)에 구비된 경우를 가정하여 설명하였으나, 도 17의 실시 예는 2개의 카메라가 도어 다이크(143)에 구비된 경우에도 각 카메라에 적용될 수 있다.
다시, 도 11을 설명한다.
냉장고(10)의 프로세서(180)는 하나 이상의 카메라를 통해 촬영된 이미지에 기반하여, 이너 도어(13)의 식품 수납 상태를 획득한다(S1111).
프로세서(180)는 영상 인식 모델을 이용하여, 촬영된 이미지에 포함된 복수의 식품들을 인식할 수 있다.
프로세서(180)는 인식된 복수의 식품들에 대한 정보에 기반하여, 식품 수납 상태를 획득할 수 있다. 식품 수납 상태는 인너 도어(13)에 구비된 복수의 식품들 각각의 종류, 위치, 개수에 대한 정보를 포함할 수 있다.
영상 인식 모델은 딥 러닝 알고리즘 또는 머신 러닝 알고리즘을 통해 학습된 인공 신경망 기반의 모델일 수 있다.
영상 인식 모델은 객체 감지 모델 및 객체 식별 모델을 포함할 수 있다.
객체 감지 모델은 이미지 데이터로부터 하나 이상의 객체를 감지하는 모델이고, 객체 식별 모델은 감지된 하나 이상의 객체가 무엇인지를 식별하는 모델일 수 있다.
객체 감지 모델은 딥 러닝 알고리즘 또는 머신 러닝 알고리즘에 의해 학습된 인공 신경망 기반의 모델일 수 있다.
객체 감지 모델은 인공 지능 장치(100)의 러닝 프로세서(130)에 의해 학습되어, 메모리(170)에 저장된 모델일 수 있다.
또 다른 예로, 객체 감지 모델은 AI 서버(200)의 러닝 프로세서(240)에 의해 학습되어, AI 서버(200)로부터 인공 지능 장치(100)에 전송된 모델일 수 있다.
객체 감지 모델을 이용하여, 영상으로부터, 복수의 객체들을 감지하는 예를 이하의 도면들을 참조하여, 설명한다.
객체는 식품일 수 있다.
도 18 및 도 19는 본 개시의 실시 예에 따른 객체 감지 모델의 학습 과정을 설명하는 도면이다.
도 18을 참조하면, 객체 감지 모델(1810)은 복수의 영상 데이터들을 포함하는 학습용 영상 데이터 세트(1800)를 이용하여, 각 학습용 영상 데이터로부터, 복수의 객체들을 포함하는 객체 경계 박스 세트를 획득할 수 있다.
객체 경계 박스 세트는 객체를 포함하는 경계 박스들의 집합일 수 있다.
객체 감지 모델(1800)은 YOLO(You Only Look Once) 알고리즘을 이용하여, 영상 데이터로부터, 복수의 객체들을 감지할 수 있다.
YOLO(You Only Look Once) 알고리즘은 복수의 CNN들로 구성될 수 있다.
YOLO(You Only Look Once) 알고리즘에 대해서는, 후술한다.
YOLO(You Only Look Once) 알고리즘은 그리드 분할 과정, 예측 과정, 신뢰도 계산 과정, 객체 선정 과정을 포함할 수 있다.
그리드 분할 과정은 이미지 데이터(1900)를 복수의 그리드들로 나누는 과정일 수 있다. 복수의 그리드들 각각의 크기는 동일할 수 있다.
예측 과정은 각 그리드에 대해 그리드 중앙을 중심으로, 미리 정의된 형태(predefined shape)로 지정된 경계 박스의 개수를 예측하는 과정일 수 있다.
미리 정의된 형태(predefined shape)로 지정된 경계 박스는 K-평균 알고리즘에 의한 데이터로부터 생성될 수 있고, 객체의 크기 및 형태에 대한 사전 정보를 담고 있을 수 있다.
각 경계 박스는 각기 다른 크기 및 형태의 객체를 감지하도록 설계될 수 있다.
각 경계 박스는 객체의 형태 또는 경계를 나타낼 수도 있다.
신뢰도 계산 과정은 예측 과정에서, 얻어진 경계 박스들 각각에 객체가 포함되어 있는지, 배경만 단독으로 있는지 여부에 따라, 경계 박스의 신뢰도를 계산하는 과정일 수 있다.
객체 판단 과정은 신뢰도 계산 과정에 따라 기 설정된 값 이상의 신뢰도를 갖는 경계 박스에 객체가 존재하는 것으로 판단하는 과정일 수 있다.
객체 판단 과정을 통해 이미지 데이터(1900)에 포함된 복수의 경계 박스들(1901 내지 1905)이 추출될 수 있다.
다시, 도 5를 설명한다.
프로세서(180)는 객체 감지 모델(1800)을 통해 추출된 복수의 경계 박스들로부터, 각 객체의 식별 정보를 획득할 수 있다.
프로세서(180)는 객체 식별 모델을 이용하여, 각 경계 박스에 해당하는 이미지 데이터로부터, 경계 박스 내에 존재하는 객체를 식별할 수 있다.
객체 식별 모델은 딥 러닝 알고리즘 또는 머신 러닝 알고리즘을 이용하여, 학습된 인공 신경망 기반의 모델일 수 있다.
객체 식별 모델은 지도 학습을 통해 학습된 모델일 수 있다.
객체 식별 모델은 이미지 데이터로부터, 객체의 식별 정보를 추론하는 모델일 수 있다. 객체의 식별 정보는 객체의 명칭, 객체의 식별자 등 객체를 식별하는 정보일 수 있다.
객체 식별 모델은 학습용 이미지 데이터 및 학습용 이미지 데이터에 레이블된 레이블링 데이터를 포함하는 트레이닝 데이터 세트를 입력 데이터로 하여, 객체의 식별 정보를 출력하는 모델일 수 있다.
도 20은 본 개시의 일 실시 예에 따른 객체 식별 모델의 학습 과정을 보여준다.
도 20을 참조하면, 객체 식별 모델(2000)은 학습용 이미지 데이터 및 이에 레이블된 레이블링 데이터를 포함하는 트레이닝 데이터 세트를 이용하여, 객체 식별 정보를 추론할 수 있다.
레이블링 데이터는 정답 데이터로, 객체 식별 정보일 수 있다.
객체 식별 모델(2000)은 레이블링 데이터와 객체 식별 정보 간의 차이에 상응하는 비용 함수를 최소화하도록 학습될 수 있다.
객체 식별 모델(2000)의 비용 함수는 각 이미지 데이터에 상응하는 객체 식별 정보에 대한 라벨과, 각 이미지 데이터로부터 추론된 객체 식별 정보 간의 차이의 제곱 평균으로 표현될 수 있다.
학습용 이미지 데이터에서 입력 특징 벡터가 추출되어, 입력되면, 객체의 식별 결과가 대상 특징 벡터로서 출력되고, 객체 식별 모델(2000)은 출력된 대상 특징 벡터와 라벨링된 객체 식별 정보의 차이에 상응하는 손실 함수를 최소화하도록 학습되는 것일 수 있다.
객체 식별 모델(2000)은 냉장고(10)의 러닝 프로세서(130) 또는 AI 서버(200)의 러닝 프로세서(240)에 의해 학습되어, 냉장고(10)에 탑재될 수 있다.
객체 식별 모델(2000)은 도 19에 도시된, 제1 경계 박스(1901)에 해당되는 제1 이미지 데이터로부터, 제1 객체 식별 정보를 결정할 수 있다. 예를 들어, 제1 객체 식별 정보는 음료수(또는 콜라)일 수 있다.
객체 식별 모델(2000)은 제2 경계 박스(1902)에 해당되는 제2 이미지 데이터로부터, 제2 객체 식별 정보를 결정할 수 있다. 예를 들어, 제2 객체 식별 정보는 우유일 수 있다.
이와 같이, 객체 식별 모델(2000)을 통해, 이미지 데이터로부터, 객체가 어떤 식품인지가 식별될 수 있다.
다시, 도 11을 설명한다.
프로세서(180)는 획득된 객체 식별 정보를 이용하여, 식품 수납 상태를 획득할 수 있다. 식품 수납 상태는 인너 도어(13)에 구비된 복수의 식품들 각각의 종류, 위치, 개수 중 하나 이상을 포함할 수 있다.
식품의 위치는 객체 감지 모델(1800)을 통해 감지된 객체 경계 박스의 위치를 통해 획득될 수 있다.
냉장고(10)의 프로세서(180)는 획득된 이너 도어(13)의 식품 수납 상태에 기반하여, 식품 관리 정보를 출력한다(S1113).
식품 관리 정보는 식품의 재고 변경 정보, 식품의 재고에 따른 구매 연동 정보, 레시피 정보 중 하나 이상을 포함할 수 있다.
재고 변경 정보는 인너 도어(13)에 구비된 식품의 재고가 변경되었음을 나타내는 정보일 수 있다.
구매 연동 정보는 식품의 재고 상태에 따라 특정 식품을 구매할 수 있는 사이트 정보를 나타낼 수 있다.
레시피 정보는 인너 도어(13)에 구비된 식품을 이용하여, 조리될 수 있는 요리의 레시피를 나타내는 정보일 수 있다.
프로세서(180)는 아웃터 도어(14)에 구비된 투명 디스플레이(14-1)를 통해 식품 관리 정보를 출력할 수 있다.
프로세서(180)는 아웃터 도어(14)가 완전히 닫히는 시점에 식품 관리 정보를 투명 디스플레이(14-1) 상에 표시할 수 있다.
도 21은 본 개시의 또 다른 실시 예에 따른 냉장고의 동작 방법을 설명하기 위한 흐름도이다.
특히, 도 21은 사용자에 의해 식품의 품명을 편집하고, 품명을 저장하는 과정을 설명하는 도면이다.
냉장고(10)의 프로세서(180)는 카메라(121)를 통해 냉장고(10)의 내부 영상을 획득한다(S2101).
도 13과 같이, 아웃터 도어(14)에 구비된 카메라(121)는 냉장고(10)의 내부 영상을 촬영할 수 있다.
프로세서(180)가 냉장고(10)의 내부 영상을 촬영하는 실시 예는 도 11의 실시 예가 사용될 수 있다.
하나 이상의 카메라의 배치 또한, 이전에 기재된 실시 예들이 사용될 수 있다.
냉장고(10)의 프로세서(180)는 획득된 내부 영상에 기초하여, 아웃터 도어(14)의 전면에 구비된 투명 디스플레이(14-1)를 통해, 내부 영상에 포함된 복수의 식품들 각각에 상응하는 복수의 식품 이미지 항목들을 포함하는 식품 품명 편집 화면을 표시한다(S2103).
프로세서(180)는 아웃터 도어(14)가 완전히 닫힌 경우, 식품 품명 편집 화면을 투명 디스플레이(14-1) 상에 표시할 수 있다.
프로세서(180)는 획득된 내부 영상을 이용하여, 내부 영상에 포함된 복수의 식품들을 식별할 수 있다.
프로세서(180)는 도 18 내지 도 20의 실시 예에 따라, 내부 영상으로부터, 내부 영상에 포함된 복수의 식품들 각각에 상응하는 객체 식별 정보를 획득할 수 있다.
객체 식별 정보는 식품의 명칭일 수 있다.
식품 품명 편집 화면은 복수의 식품들 각각에 상응하는 복수의 식품 이미지 항목들을 포함할 수 있다. 복수의 식품 이미지 항목들 각각은 인식된 식품을 나타내는 이미지를 나타낼 수 있다.
식품 품명 편집 화면에 대해서는, 도 22를 참조하여 설명한다.
도 22는 본 개시의 일 실시 예에 따른 식품 품명 편집 화면을 설명하는 도면이다.
도 22를 참조하면, 아웃터 도어(14)가 완전히 닫힌 경우, 냉장고(10)는 아웃터 도어(14)에 구비된 투명 디스플레이(14-1) 상에, 식품 품명 편집 화면(2210)을 표시할 수 있다.
식품 품명 편집 화면(2210)은 촬영된 내부 영상(2210)으로부터 인식된 복수의 식품들 각각에 상응하는 복수의 식품 이미지 항목들(2211 내지 2217)을 포함할 수 있다.
복수의 식품 이미지 항목들(2211 내지 2217) 각각은 내부 영상(2210)으로부터 크롭된 이미지일 수 있다.
또 다른 예로, 식품 품명 편집 화면(2210)은 냉장고(10)와 통신 가능한 사용자의 단말기 상에 표시될 수 있다. 단말기는 스마트폰, TV 중 어느 하나일 수 있다.
다시, 도 21을 설명한다.
프로세서(180)는 복수의 식품 이미지 항목들을 중 선택된 식품 이미지 항목의 품명을 수신하기 위한 입력을 수신한다(S2105).
프로세서(180)는 식품 품명 편집 화면(2210)에 포함된 복수의 식품 이미지 항목들(2211 내지 2217) 중 어느 하나의 항목을 선택하는 입력을 수신할 수 있다.
프로세서(180)는 식품 이미지 항목이 선택됨에 따라, 식품 이미지 항목의 품명을 편집하기 위한 편집 창을 표시할 수 있다.
프로세서(180)는 편집 창을 통해, 식품 이미지 항목의 품명을 수신할 수 있다.
이에 대해서는, 도 23을 참조하여 설명한다.
도 23은 본 개시의 일 실시 예에 따라, 식품 이미지 항목의 품명을 편집하기 위한, 과정을 설명하는 도면이다.
도 23을 참조하면, 식품 품명 편집 화면(2210)에 포함된 복수의 식품 이미지 항목들(2211 내지 2217) 중 어느 하나의 항목(2213)이 선택된 경우, 프로세서(180)는 선택된 식품 이미지 항목(2213)의 품명을 편집하기 위한 편집 창(2221)을 식품 품명 편집 화면(2210) 상에 표시할 수 있다.
편집 창(2221)은 선택된 식품 이미지 항목(2213)의 품명의 입력을 요구하는 텍스트를 포함할 수 있다.
프로세서(180)는 편집 창(2221)을 통해 <drink>라는 품명을 수신할 수 있다.
즉, 사용자는 편집 창(2221)을 통해 식품 이미지 항목(2213)을 자신이 원하는 항목으로 변경할 수 있다. 식품 이미지 항목(2213)의 품명이, <soda>이었던 경우, 식품 이미지 항목(2213)의 품명은 사용자의 편집에 따라, <soda>에서, <drink>로 변경될 수 있다.
다시, 도 21을 설명한다.
프로세서(180)는 수신된 입력에 따라 선택된 식품 이미지 항목에 수신된 품명을 매칭하여, 냉장고(10)의 로컬 DB에 저장한다(S2107).
일 실시 예에서, 로컬 DB는 냉장고(10)의 메모리(170)에 포함된 DB일 수 있다. 로컬 DB는 식품 품명 편집 화면(2210)을 통해 품명이 수신된 식품에 대한 정보를 포함할 수 있다.
로컬 DB는 식품을 식별하는 식별 정보 및 식품의 편집된 품명을 매칭시켜 저장하고 있을 수 있다.
로컬 DB는 복수의 사용자들 각각에 의해 생성될 수 있다. 즉, 메모리(170)는 복수의 사용자들 각각에 상응하는 복수의 로컬 DB들을 구비할 수 있다. 여기서, DB는 하드웨어일 수도 있고, 메모리(170)의 저장 영역을 지칭할 수도 있다.
도 24는 본 개시의 일 실시 예에 따라, 사용자가 선택한 식품의 품명이 편집된 경우, 식품의 식별 정보와 품명을 로컬 DB에 저장하는 과정을 설명하는 도면이다.
도 24를 참조하면, 인식된 복수의 식품 이미지 항목들(2211 내지 2217) 각각에 상응하는 복수의 식품 피처들(2401 내지 2407)이 도시되어 있다.
복수의 식품 피처들(2401 내지 2407) 각각은 복수의 식품 이미지 항목들 각각을 식별하는 피처 벡터를 나타낼 수 있다.
프로세서(180)는 내부 영상(2200)으로부터 식품을 인식하는 과정에서, 복수의 식품들 각각의 피처 벡터를 획득할 수 있다.
프로세서(180)는 도 19에 도시된 객체 식별 모델(2000)을 이용하여, 각 식품 이미지 항목의 피처를 획득할 수 있다.
객체 식별 모델(2000)는 복수 식품 이미지 항목들 각각의 이미지 데이터로부터, 피처 벡터를 추출할 수 있다.
객체 식별 모델(2000)은 기 저장된 피처 벡터와 추출된 피처 벡터를 비교하여, 추출된 피처 벡터에 상응하는 객체 식별 정보를 출력할 수 있다.
프로세서(180)는 복수의 식품 이미지 항목들(2211 내지 2217) 중 선택된 식품 이미지 항목(2213)에 상응하는 피처 벡터(2403)와 입력된 품명(2221)을 매칭하여, 로컬 DB(2410)에 저장할 수 있다.
로컬 DB(2410)는 피처 벡터 및 피처 벡터에 매칭된 사용자에 의해 입력된 품명을 저장하고 있을 수 있다. 즉, 로컬 DB(2410)는 사용자에 의해 편집된 식품에 대한 정보가 저장될 수 있다.
한편, 프로세서(180)는 해당 식품 이미지 항목의 식품의 품명 입력 시, 식품이 놓여져 있는 위치를 입력된 품명에 대응시켜 저장할 수 있다.
즉, 로컬 DB(2410)는 식품의 피처 벡터, 식품의 품명 편집 시, 식품이 놓여진 위치, 식품의 편집된 품명을 대응시켜 저장하고 있을 수 있다.
프로세서(180)는 촬영된 내부 영상(2200)으로부터, 식품 항목(2213)이 놓여진 위치를 추출할 수 있다. 식품 항목(2213)이 놓여진 위치는 식품이 위치한 좌표 정보를 포함할 수 있다.
로컬 DB(2410)는 냉장고(10)의 메모리(170)에 포함될 수도 있다. 그러나, 이에 한정될 필요는 없고, AI 서버(200)의 메모리(230)에 포함될 수도 있다.
냉장고(10)는 피처 벡터 및 이에 매칭되는 품명을 AI 서버(200)에 전송할 수 있고, AI 서버(200)는 냉장고로부터 수신된 정보를 저장할 수 있다.
도 25는 본 개시의 또 다른 실시 예에 따른 냉장고의 동작 방법을 설명하기 위한 흐름도이다.
특히, 도 25는, 사용자에 의해 편집된 품명을 이용하여, 냉장고(10)의 내부에 있는 식품을 인식하는 과정을 설명하기 위한 실시 예이다.
도 25를 참조하면,
프로세서(180)는 카메라(121)를 통해 냉장고(10)의 내부 영상을 획득한다(S2501).
도 13과 같이, 아웃터 도어(14)에 구비된 카메라(121)는 냉장고(10)의 내부 영상을 촬영할 수 있다.
프로세서(180)가 냉장고(10)의 내부 영상을 촬영하는 시점의 실시 예는 도 11의 실시 예가 사용될 수 있다.
프로세서(180)는 획득된 내부 영상을 이용하여, 하나 이상의 식품 식별 항목들을 획득한다(S2503).
일 실시 예에서, 식품 식별 항목은 냉장고(10)의 내부에 있는 식품을 식별하기 위한 항목일 수 있다. 식품 식별 항목은 식품의 피처 벡터일 수 있다.
프로세서(180)는 내부 영상으로부터, 복수의 식품들 각각에 상응하는 복수의 피처 벡터들을 추출할 수 있다.
프로세서(180)는 도 18 및 도 19의 실시 예를 이용하여, 각 식품의 피처 벡터를 추출할 수 있다.
프로세서(180)는 획득된 식품 식별 항목이 로컬 DB에 저장되어 있는지를 판단한다(S2505).
프로세서(180)는 복수의 피처 벡터들이 추출된 경우, 각 피처 벡터가 로컬 DB에 저장되어 있는지를 판단할 수 있다.
냉장고(10)의 메모리(170)는 글로벌 DB 및 로컬 DB를 포함할 수 있다.
글로벌 DB는 냉장고(10)의 출하 시, 기본적으로 내장된 DB이고, 로컬 DB는 사용자의 품명 편집에 의해 생성된 DB 일 수 있다.
글로벌 DB는 AI 서버(200)로부터 수신된 DB일 수 있다.
글로벌 DB는 복수의 디폴트 식품 식별 항목들 및 복수의 디폴트 식품 식별 항목들 각각에 상응하는 복수의 디폴트 품명들이 매칭되어 저장될 수 있다.
복수의 디폴트 식품 식별 항목들 각각은 식품 이미지를 나타내는 피처 벡터일 수 있다.
프로세서(180)는 우선적으로, 촬영된 내부 영상으로부터 추출된 피처 벡터가 로컬 DB에 저장되어 있는지를 판단할 수 있다. 이는 식품의 품명을 인식 시, 일반적으로 정해진 품명보다, 사용자에 의해 편집된 품명을 우선적으로 고려하기 위함이다.
프로세서(180)는 내부 영상에서 추출된 피처 벡터가 로컬 DB에 저장되어 있는 경우, 해당 피처 벡터에 상응하는 식품을 로컬 DB에 저장된 품명으로 인식할 수 있다.
프로세서(180)는 획득된 식품 식별 항목이 로컬 DB에 저장된 경우, 식품 식별 항목에 상응하는 식품 항목의 개수가 2개 이상인지를 판단한다(S2507).
프로세서(180)는 내부 영상에 복수의 식품 항목들이 포함된 경우, 동일한 식품 항목이 2개 이상 존재하는지를 판단할 수 있다.
프로세서(180)는 식품 식별 항목이 로컬 DB에 저장되어 있고, 해당 식품 식별 항목이 복수 개가 존재하는지를 판단할 수 있다.
프로세서(180)는 식품 항목의 개수가 하나인 경우, 해당 식품 항목을 로컬 DB에 등록된 품명으로 인식한다(S2510).
프로세서(180)는 인식된 식품 식별 항목이 하나인 경우, 해당 식품 식별 항목에 상응하는 품명을 로컬 DB로부터 독출하고, 독출된 품명을 해당 식품의 품명으로 인식할 수 있다.
프로세서(180)는 인식된 품명을 이용하여, 식품 관리 정보에 식품의 입고를 반영할 수 있다. 식품 관리 정보는 냉장고(10)에 저장되어 있는, 식품들의 개수, 유통 기한, 위치에 대한 정보를 포함할 수 있다.
프로세서(180)는 해당 식품 항목의 개수가 2개 이상인 경우, 해당 식품 항목의 등록 시의 등록 위치와 2개 이상의 동일한 식품 항목의 위치들 각각을 획득한다(S2509).
일 실시 예에서, 프로세서(180)는 식품 항목의 편집된 품명의 저장 시, 식품 항목이 놓여진 위치를 함께 로컬 DB에 저장할 수 있다. 해당 위치는 등록 위치로 명명될 수 있다.
프로세서(180)는 로컬 DB로부터 해당 식품 항목의 등록 위치를 독출할 수 있다.
프로세서(180)는 단계 S2503에서, 내부 영상으로부터, 각 식품 항목의 위치를 획득할 수 있다. 내부 영상의 촬영 방향 및 촬영된 내부 영상의 크기는 일정할 수 있다.
프로세서(180)는 내부 영상이 사각형의 형상을 갖는 경우, 각 식품 항목이 위치한 좌표 정보를 추출할 수 있다.
프로세서(180)는 각 식품 항목의 형상에 대응하는 하나 이상의 좌표를 추출할 수 있다.
프로세서(180)는 등록 위치와 2개 이상의 동일한 식품 항목의 각 위치에 기반하여, 겹침 정도를 각각 획득하고, 획득된 겹침 정도가 임계 값 이상인지를 각각 판단한다(S2511).
일 실시 예에서, 프로세서(180)는 등록 위치와 2개 이상의 동일 식품 항목들 각각의 위치를 비교하고, 2개의 이상의 동일 식품들 중 등록 위치와 가장 가까이 위치한 동일 식품을 결정할 수 있다. 프로세서(180)는 결정된 동일 식품의 품명을 로컬 DB에 저장된 품명으로 인식할 수 있다.
이를 위해, 먼저, 프로세서(180)는 로컬 DB에 저장된 등록 위치와 2개 이상의 식품 항목들 각각의 위치를 비교하여, 겹침 정도를 각각 획득할 수 있다.
프로세서(180)는 각 겹침 정도를 임계 값과 비교하여, 겹침 정도가 임계 값 보다 큰지를 판단할 수 있다. 임계 값은 복수의 동일한 식품 항목들 중 어느 하나의 식품 항목을 로컬 DB에 등록된 식품 항목으로 분류하는데 기준이 되는 값을 나타낼 수 있다.
임계 값을 설정하는 방법에 대해서는, 후술한다.
프로세서(180)는 겹침 정도가 임계 값 이상인 식품 항목이 존재하는 경우, 겹침 정도가 임계 값 이상인 식품 항목의 품명을 로컬 DB에 등록된 품명으로 인식한다(S2510).
프로세서(180)는 겹침 정도가 임계 값 이상인 식품 항목이 하나 이상 존재하는 경우, 하나 이상의 식품 항목의 품명을 로컬 DB에 등록된 품명으로 결정할 수 있다.
만약, 2개 이상의 식품 항목 각각에 대해 겹침 정도가 임계 값 이상인 항목이 존재하지 않는 경우, 프로세서(180)는 2개 이상의 동일한 식품 항목들 중 등록 위치와 가장 가까이 위치한 식품 항목을 로컬 DB에 등록된 품명으로 인식한다(S2513).
프로세서(180)는 겹침 정도가 임계 값 이상인 식품 항목이 존재하지 않는 경우, 등록 위치의 중심점과 2개 이상의 동일한 식품 항목들 각각의 중심점 간의 거리를 계산할 수 있다.
프로세서(180)는 계산 결과에 따라, 등록 위치의 중심점과 2개 이상의 동일한 식품 항목들 각각의 중심점 간의 거리들 중 가장 가까운 거리에 해당하는 식품 항목을 획득할 수 있다. 프로세서(180)는 획득된 식품 항목의 품명을 로컬 DB에 저장된 품명으로 결정할 수 있다.
한편, 프로세서(180)는 단계 S2505에서, 획득된 식품 식별 항목이 로컬 DB에 저장되어 있지 않은 경우, 식품 식별 항목이 글로벌 DB에 저장되어 있는지를 판단한다(S2515).
글로벌 DB는 복수의 식품 식별 항목들 및 복수의 식품 식별 항목들 각각에 상응하는 복수의 품명들을 저장하고 있을 수 있다.
일 실시 예에서, 글로벌 DB는 사용자에 의해 품명이 편집되지 않은, 식품 식별 항목 및 품명을 저장하고 있을 수 있다.
프로세서(180)는 식품 식별 항목이 글로벌 DB에 저장되어 있는 경우, 식품 식별 항목에 대응하는 식품 항목을 글로벌 DB에 등록된 품명으로 인식한다(S2517).
만약, 식품 식별 항목이 글로벌 DB에 저장되어 있지 않은 경우, 프로세서(180)는 식품의 품명을 등록하기 위한 식품 등록 화면을 표시한다(S2519).
일 실시 예에서, 식품 등록 화면은 식품 항목의 품명을 새롭게 등록하기 위한 화면일 수 있다.
도 23의 식품 품명 편집 화면(2210)이 기존에 저장된 식품 항목의 품명을 변경하기 위한 화면이라면, 단계 S2519에서의, 식품 등록 화면은 기존에 저장되지 않은 식품 항목 및 식품 항목의 품명을 새롭게 저장하기 위한 화면일 수 있다.
이와 같이, 본 개시의 실시 예에 따르면, 사용자의 기호에 맞게 식품의 품명을 편집할 수 있다. 이에 따라, 사용자에 맞게 식품의 품명이 저장되어, 사용자의 선호에 맞는 식품 관리가 수행될 수 있다.
이하의 실시 예에서는, 사용자의 편집에 의해, 냉장고(10)의 내부에 있는 식품의 품명을 수정하고, 추후, 동일한 식품의 입고 시, 해당 식품의 품명을 사용자에 의해 수정된 품명으로 인식하는 과정을 설명한다.
도 26은 본 개시의 실시 예에 따라, 사용자에 의해, 식품의 품명이 수정된 후, 동일한 식품들이 입고된 경우의 취급에 대해 설명하는 도면이다.
먼저, 냉장고(10)의 내부에 식품(2610)은 <생수>라는 품명으로 인식된 상태이다.
사용자는 도 21의 S2101 내지 S2107의 과정에 따라, 식품(2610)의 품명을 <탄산수>로 편집하였다.
그 후, 식품(2610)과 동일한 식품들(2620, 2630, 2640)이 냉장고(10) 내 입고되었음을 가정한다.
냉장고(10)는 식품(2610)의 품명이 <탄산수>로 수정될 시, 식품(2610)의 등록 위치를 수정된 품명과 함께, 로컬 DB에 저장할 수 있다.
냉장고(10)는 복수의 식품들(2620, 2630, 2640)이 입고된 경우, 식품(2610)의 품명 편집 시, 등록된 위치와 유사한 위치에 있는 식품(2620)의 품명을 <탄산수>로 인식하고, 등록된 위치와 상이한 위치에 있는 식품들(26230, 2640)의 품명을 기존의 품명인 <생수>로 인식할 수 있다.
냉장고(10)는 품명이 수정된 식품(2610)과 동일한 칸에 위치한 식품(2620)을 등록 위치와 유사한 위치로 결정할 수 있다.
냉장고(10)는 품명이 수정된 식품(2610)과 동일한 칸에 위치하지 않은 식품들(2630, 2640)을 등록 위치와 상이한 위치로 결정할 수 있다.
또 다른 실시 예에서, 냉장고(10)는 식품(2610)의 등록 위치와 동일한 식품들(2620, 2630, 2640) 간의 위치에 기초하여, 겹침 정도를 계산할 수 있다.
냉장고(10)는 동일한 식품들(2620, 2630, 2640) 중 계산된 겹침 정도가 임계 값 이상인, 식품을 식품(2610)의 수정된 품명인 <탄산수>로 인식할 수 있다.
또 다른 실시 예에서, 냉장고(10)는 수정된 식품(2610)의 등록 위치와 관계없이, 동일한 식품들(2620, 2630, 2640) 각각의 품명을 식품(2610)의 수정된 품명인 <탄산수>로 인식할 수 있다.
동일한 식품들(2620, 2630, 2640) 각각의 품명을 식품(2610)의 수정된 품명으로 인식할지, 식품(2610)의 등록 위치를 고려하여, 계산된 겹침 정도가 임계 값 이상인, 식품만을 수정된 품명으로 인식할지 여부는, 사용자의 설정에 따라 달라질 수 있다. 메뉴 상에는, 이러한 설정 기능을 수행할 수 있는 메뉴 항목이 포함될 수 있다.
한편, 냉장고(10)는 식품의 품명 인식에 따라, 입고된 식품을 파악하고, 파악된 결과에 기초하여, 식품 수납 상태를 획득할 수 있다. 냉장고(10)는 식품 수납 상태를 투명 디스플레이(14-1) 상에 표시할 수 있다.
냉장고(10)는 아웃터 도어가 완전히 닫힌 후, 식품 수납 상태를 투명 디스플레이(14-1) 상에 표시할 수 있다.
도 27은 본 개시의 실시 예에 따라, 사용자에 의해, 식품의 품명을 복수 회 수정하는 과정을 설명하는 도면이다.
도 27을 참조하면, 사용자는 도 21의 S2101 내지 S2107의 과정에 따라, 1차적으로, 식품(2610)의 품명을 <탄산수>로 편집하였다.
그 후, 동일 상품(2610)이 입고된 경우, 냉장고(10)는 해당 상품(2610)의 품명을 <탄산수>로 인식한다. 그 후, 사용자는 상품(2610)의 품명을 2차적으로 <사이다>로 수정한다.
냉장고(10)는 <사이다>로 수정된 품명과 해당 상품(2610)의 상품 식별 항목을 로컬 DB에 저장할 수 있다.
이와 같이, 본 개시의 실시 예에 따르면, 사용자는 한 번 수정한 식품의 품명을 선호에 맞게 여러 번 수정하여, 관리할 수 있다.
도 28은 본 개시의 실시 예에 따라, 서로 다른 식품에 동일한 품명을 설정하는 과정을 설명하는 도면이다.
도 28을 참조하면, 제1 식품(2810)은 <drink 1>으로, 제2 식품(2830)은 <drink 2>로 인식된 상태이다. 최초, 식품의 인식 과정에서는, 글로벌 DB가 사용될 수 있다.
그 후, 사용자에 의해, 제1 식품(2810)의 품명은 <drink 1>에서, <drink 3>으로, 제2 식품(2820)의 품명은 <drink 2>에서, <drink 3>으로 수정됨을 가정한다.
냉장고(10)는 제1 식품(2810) 및 제2 식품(2820)이 출고된 후, 제1 식품(2810) 및 제2 식품(2820)이 재 입고된 경우, 제1 식품(2810)의 품명을 <drink 3>으로 인식하고, 제2 식품(2820)의 품명을 <drink 3>으로 인식할 수 있다.
이와 같이, 사용자는 동일한 종류의 식품들을 동일한 품명으로 수정하여, 기호에 맞게, 식품들을 관리할 수 있다.
도 29 및 도 30은 본 개시의 실시 예에 따라, 식품의 품명의 삭제와 관련된 시나리오를 설명하는 도면들이다.
특히, 도 29는, 글로벌 DB에 등록된 식품의 품명의 삭제와 관련된 시나리오이고, 도 30은 로컬 DB에 등록된 식품의 품명의 삭제와 관련된 시나리오이다.
도 29를 참조하면, 글로벌 DB에 저장된 식품(2610)의 품명은 <생수>이다.
냉장고(10)는 식품(2610)의 품명인 <생수>를 삭제하는 사용자 입력을 수신한 경우, 식품의 품명의 삭제가 불가능함을 나타내는 알림을(2900)을 투명 디스플레이(14-1) 상에 표시할 수 있다.
즉, 글로벌 DB에 저장된 품명은 삭제가 불가능하다.
도 30을 참조하면, 식품(2610)의 품명이 <생수>에서, 사용자의 수정 입력에 의해, <탄산수>로 편집된 경우를 도시하고 있다. 냉장고(10)는 <탄산수>의 품명의 삭제를 위한 사용자 입력을 수신한 경우, <탄산수>의 품명을 삭제할 수 있다. 동시에, 냉장고(10)는 식품(2610)의 품명을 글로벌 DB에 저장된 <생수>로 변경할 수 있다.
즉, 냉장고(10)는 사용자 입력에 의해 수정된 식품의 품명이 삭제된 경우, 해당 식품의 품명을 글로벌 DB에 저장된 품명으로 인식할 수 있다.
도 31은 본 개시의 일 실시 예에 따라, 로컬 DB에 저장된 2개 이상의 동일한 식품 항목이 추출된 경우, 로컬 DB에 등록된 식품 항목으로 분류하는데 사용되는 기준 값을 설정하는 과정을 설명하는 도면이다.
도 31을 참조하면, 촬영된 영상으로부터, 10개의 동일한 식품들이 검출되었음을 가정한다.
먼저, 프로세서(180)는 10개의 식품들 각각에 상응하는 위치들을 2차원 공간에 배치할 수 있다.
10개의 위치들 각각은 벡터로 표현될 수 있다.
프로세서(180)는 10개의 위치들 중, 2개의 위치들(3110, 3130)의 거리가 가장 먼 거리인 최대 거리(D_max)를 계산할 수 있다. D_max는 내부 영상으로부터 얻어진 서로 가장 먼 거리에 있는 2개의 식품 이미지 간 거리를 나타낼 수 있다.
그 후, 프로세서(180)는 2차원 공간의 중심에 위치한 중간 벡터에 해당하는 위치(3150)에서 가장 먼 거리에 있는 위치(3130) 간의 중간 거리(D_centroid)를 계산할 수 있다.
프로세서(180)는 계산된 최대 거리(D_max)와 중간 거리(D_centroid) 사이에서, 기준 값(a)을 설정할 수 있다.
기준 값(a)은 품명 편집 시의, 식품의 등록 위치와 입고된 식품의 위치 간의 겹침 정도가 임계 값 이상인지 여부를 판단할 시, 임계 값으로 사용될 수 있다.
도 32 및 도 33은 본 개시의 실시 예에 따라, 사용자에 의해 품명이 편집된 식품과 동일한 복수의 식품들이 입고된 경우, 각 식품의 품명의 처리 과정을 설명하는 도면이다.
특히, 도 32는 사용자에 의해 품명이 편집된 식품과 동일한 복수의 식품들이 입고된 경우, 복수의 식품들의 품명을 모두, 편집된 품명으로 인식하는 예를 설명하는 도면이다.
도 33은 사용자에 의해 품명이 편집된 식품과 동일한 복수의 식품들이 입고된 경우, 복수의 식품들 중 어느 하나의 식품의 품명만을 편집된 품명으로 인식하는 예를 설명하는 도면이다.
도 32 및 도 33에서, 글로벌 DB에 저장된 제1 식품의 품명은 X이고, 사용자에 의해 수정되어, 로컬 DB에 저장된 제1 식품의 품명은 K임을 가정한다.
또한, 글로벌 DB에 저장된 제2 식품의 품명은 Y이고, 사용자에 의해 수정되어, 로컬 DB에 저장된 제2 식품의 품명은 M임을 가정한다.
또한, 도 32 및 도 33에서, 사용자에 의해 품명이 수정되지 않은 제3 식품의 품명은 A, 사용자에 의해 품명이 수정되지 않은 제4 식품의 품명은 F, 사용자에 의해 품명이 수정되지 않은 제5 식품의 품명은 Q임을 가정한다.
제3,4,5 식품의 품명은 글로벌 DB에만 저장되어 있다.
또한, 도 32 및 도 33에서, 냉장고(10)에는 3개의 제1 식품과 2개의 제2 식품과 1개의 제3 식품과, 1개의 제4 식품, 1개의 제5 식품이 입고되었음을 가정한다.
먼저, 도 32를 설명한다.
냉장고(10)는 입고된 3개의 제1 식품의 품명을 수정된 K로 인식하고, 입고된 2개의 제2 식품의 품명을 수정된 M으로 인식할 수 있다.
냉장고(10)는 로컬 DB에 저장된 제1 피처 벡터와 제1 식품의 피처 벡터 간의 거리를 계산하고, 계산된 거리가 기 설정된 거리 미만인 경우, 제1 식품을 로컬 DB에 저장된 제1 피처 벡터에 상응하는 품명 K로 인식할 수 있다.
마찬가지로, 냉장고(10)는 로컬 DB에 저장된 제2 피처 벡터와 제2 식품의 피처 벡터 간의 거리를 계산하고, 계산된 거리가 기 설정된 거리 미만인 경우, 제2 식품을 로컬 DB에 저장된 제2 피처 벡터에 상응하는 품명 M으로 인식할 수 있다.
즉, 냉장고(10)는 로컬 DB를 이용하여, 동일한 식품의 품명을 수정된 품명으로 인식할 수 있다.
또한, 냉장고(10)는 글로벌 DB를 이용하여, 제3,4,5 식품의 품명을 글로벌 DB에 저장된 품명으로 인식할 수 있다.
다음으로, 도 33을 설명한다.
냉장고(10)는 입고된 3개의 제1 식품들 중 어느 하나의 품명을 수정된 K로 인식하고, 입고된 2개의 제2 식품들 중 어느 하나의 품명을 수정된 M으로 인식할 수 있다.
즉, 냉장고(10)는 로컬 DB를 이용하여, 동일한 식품들 중 어느 하나의 품명만을 수정된 품명으로 인식할 수 있다.
냉장고(10)는 3개의 동일한 제1 식품들 중, 사용자에 의해, 품명의 편집 시, 등록된 식품의 등록 위치와 가장 가까운 위치에 있는 식품의 품명을 수정된 품명인 K로 인식하고, 나머지 제1 식품들의 품명을 수정 전 품명인 X로 인식할 수 있다.
마찬가지로, 냉장고(10)는 2개의 동일한 제2 식품들 중, 사용자에 의해, 품명의 편집 시, 등록된 식품의 등록 위치와 가장 가까운 위치에 있는 식품의 품명을 수정된 품명인 M으로 인식하고, 나머지 제2 식품의 품명을 수정 전 품명인 Y로 인식할 수 있다.
또한, 냉장고(10)는 글로벌 DB를 이용하여, 제3,4,5 식품의 품명을 글로벌 DB에 저장된 품명으로 인식할 수 있다.
도 32의 품명 인식 방법과 도 33의 품명 인식 방법은 메뉴 상에서, 사용자의 설정에 따라 달리 설정될 수 있다.
전술한 본 개시는, 프로그램이 기록된 매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 매체는, 컴퓨터 시스템에 의하여 읽혀 질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 매체의 예로는, HDD(Hard Disk Drive), SSD(Solid State Disk), SDD(Silicon Disk Drive), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. 또한, 상기 컴퓨터는 인공 지능 기기의 프로세서(180)를 포함할 수도 있다.
Claims (15)
- 냉장고에 있어서,저장실;아웃터 도어;상기 아웃터 도어에 구비된 하나 이상의 카메라;복수의 디폴트 식품 식별 항목들과 복수의 디폴트 식품 식별 항목들 각각에 상응하는 복수의 디폴트 품명들을 저장하는 글로벌 DB 및 편집된 품명과 상기 편집된 품명에 대응하는 식품 식별 항목을 저장하는 로컬 DB를 포함하는 메모리; 및상기 하나 이상의 카메라를 통해, 상기 저장실의 내부 영상을 촬영하고, 촬영된 내부 영상으로부터 하나 이상의 식품 식별 항목을 획득하고, 획득된 하나 이상의 식품 식별 항목이 상기 로컬 DB에 저장되어 있는 경우, 획득된 하나 이상의 식품 식별 항목의 하나 이상의 품명을 상기 로컬 DB에 저장되어 있는 식품 식별 항목의 품명으로 인식하는 프로세서를 포함하는냉장고.
- 제1항에 있어서,상기 프로세서는,상기 촬영된 내부 영상으로부터 획득된 복수의 식품 식별 항목들 중 상기 로컬 DB에 저장된 동일한 식품 식별 항목이 복수 개 존재하는 경우, 복수의 동한 식품 식별 항목들에 상응하는 복수의 동일 식품 항목들 중 어느 하나의 동일 식품 항목의 품명을 상기 로컬 DB에 저장된 품명으로 인식하는냉장고.
- 제2항에 있어서,상기 프로세서는상기 복수의 동일 식품 항목들 중, 식품 항목의 품명 편집 시, 상기 식품 항목이 놓여진 위치를 나타내는 등록 위치와 가장 가까운 거리에 있는 식품 항목의 품명을 상기 로컬 DB에 저장된 품명으로 인식하는냉장고.
- 제3항에 있어서,상기 프로세서는상기 복수의 동일 식품 항목들 각각의 위치들을 획득하고, 식품 항목의 품명 편집 시, 상기 식품 항목이 놓여진 위치를 나타내는 등록 위치와 획득된 위치들 각각을 비교하여, 각 겹침 정도가 임계 값 이상인지를 판단하고,상기 각 겹침 정도가 상기 임계 값 미만인 경우, 상기 복수의 동일 식품 항목들 중 상기 등록 위치와 가장 가까운 거리에 있는 식품 항목의 품명을 상기 로컬 DB에 저장된 품명으로 인식하고,상기 각 겹침 정도가 상기 임계 값 이상인 경우, 해당 식품 항목의 품명을 상기 로컬 DB에 저장된 품명으로 인식하는냉장고.
- 제2항에 있어서,상기 프로세서는,상기 복수의 동일 식품 항목들 각각의 품명을 상기 로컬 DB에 저장된 품명으로 인식하는냉장고.
- 제1항에 있어서,상기 획득된 하나 이상의 식품 식별 항목이 상기 로컬 DB에 저장되어 있지 않은 경우, 상기 획득된 하나 이상의 식품 식별 항목이 상기 글로벌 DB에 저장되어 있는지 판단하는냉장고.
- 제6항에 있어서,상기 프로세서는상기 획득된 하나 이상의 식품 식별 항목이 상기 글로벌 DB에 저장된 복수의 디폴트 식품 식별 항목들에 매칭된 경우, 해당 식품 식별 항목의 품명을 매칭된 디폴트 식품 식별 항목의 품명으로 인식하는냉장고.
- 제6항에 있어서,상기 아웃터 도어에 배치된 투명 디스플레이를 더 포함하고,상기 획득된 하나 이상의 식품 식별 항목이 상기 글로벌 DB에 저장되어 있지 않은 경우, 식품 항목의 등록을 위한, 식품 등록 화면을 상기 투명 디스플레이 상에 표시하는냉장고.
- 제1항에 있어서,상기 아웃터 도어에 배치된 투명 디스플레이를 더 포함하고,상기 프로세서는상기 촬영된 내부 영상을 통해 인식된 복수의 식품 항목들을 포함하는 식품 품명 편집 화면을 상기 투명 디스플레이 상에 표시하고,상기 복수의 식품 항목들 중 선택된 식품 항목의 품명을 편집하기 위한 입력을 수신하고, 수신된 입력에 따라 편집된 품명을 선택된 식품 항목에 상응하는 식품 식별 항목에 매칭시켜, 상기 로컬 DB에 저장하는냉장고.
- 제1항에 있어서,각 디폴트 식품 식별 항목 및 상기 식품 식별 항목은 피처 벡터인냉장고.
- 제1항에 있어서,상기 아웃터 도어의 개폐 또는 개방 각도를 감지하는 센서를 더 포함하고,상기 프로세서는상기 아웃터 도어의 닫힘을 감지한 경우, 상기 아웃터 도어의 개방 각도가 기 설정된 각도인지를 판단하고, 상기 아웃터 도어의 개방 각도가 상기 기 설정된 각도인 경우, 상기 하나 이상의 카메라를 통해, 상기 저장실의 내부를 촬영하는냉장고.
- 제11항에 있어서,상기 아웃터 도어는아웃터 케이스,상기 아웃터 케이스의 배면에 장착되는 도어 라이너,상기 도어 라이너에 배치되고, 상기 아웃터 케이스의 배면에 식품을 수납할 수 있는 아웃터 바스켓을 고정시키는 도어 다이크를 포함하고,상기 하나 이상의 카메라는 상기 도어 다이크에 배치된냉장고.
- 제1항에 있어서,상기 아웃터 도어에 배치된 투명 디스플레이를 더 포함하고,상기 프로세서는상기 인식된 품명에 기반하여, 식품의 투입 또는 인출을 나타내는 식품 수납 상태를 획득하고,상기 식품 수납 상태를 투명 디스플레이 상에 표시하는냉장고.
- 제13항에 있어서,상기 프로세서는상기 아웃터 도어가 완전히 닫힌 후, 상기 식품 수납 상태를 상기 투명 디스플레이 상에 표시하는냉장고.
- 냉장고의 동작 방법에 있어서,상기 냉장고는저장실;아웃터 도어;상기 아웃터 도어에 구비된 하나 이상의 카메라;복수의 디폴트 식품 식별 항목들과 복수의 디폴트 식품 식별 항목들 각각에 상응하는 복수의 디폴트 품명들을 저장하는 글로벌 DB 및 편집된 품명과 상기 편집된 품명에 대응하는 식품 식별 항목을 저장하는 로컬 DB를 포함하는 메모리를 포함하고,상기 동작 방법은상기 하나 이상의 카메라를 통해, 상기 저장실의 내부 영상을 촬영하는 단계;촬영된 내부 영상으로부터 하나 이상의 식품 식별 항목을 획득하는 단계; 및획득된 하나 이상의 식품 식별 항목이 상기 로컬 DB에 저장되어 있는 경우, 획득된 하나 이상의 식품 식별 항목의 하나 이상의 품명을 상기 로컬 DB에 저장되어 있는 식품 식별 항목의 품명으로 인식하는 단계를 포함하는냉장고의 동작 방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/KR2021/004328 WO2022215771A1 (ko) | 2021-04-07 | 2021-04-07 | 냉장고 |
US17/352,124 US11525627B2 (en) | 2021-04-07 | 2021-06-18 | Refrigerator |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/KR2021/004328 WO2022215771A1 (ko) | 2021-04-07 | 2021-04-07 | 냉장고 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022215771A1 true WO2022215771A1 (ko) | 2022-10-13 |
Family
ID=83510086
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2021/004328 WO2022215771A1 (ko) | 2021-04-07 | 2021-04-07 | 냉장고 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11525627B2 (ko) |
WO (1) | WO2022215771A1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230308611A1 (en) * | 2022-03-28 | 2023-09-28 | Haier Us Appliance Solutions, Inc. | Multi-camera vision system in a refrigerator appliance |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108932512A (zh) * | 2017-05-22 | 2018-12-04 | 九阳股份有限公司 | 一种冰箱食材录入方法 |
KR20190090290A (ko) * | 2018-01-24 | 2019-08-01 | 엘지전자 주식회사 | 인공지능을 이용하여 제품을 식별하고 구분된 이미지를 출력하는 냉장고 및 방법 |
KR20190108049A (ko) * | 2018-03-13 | 2019-09-23 | 삼성전자주식회사 | 냉장고, 그 제어 방법 및 시스템 |
JP2019168134A (ja) * | 2018-03-22 | 2019-10-03 | 三菱電機株式会社 | 冷蔵庫システム |
KR20200106479A (ko) * | 2020-09-04 | 2020-09-14 | 엘지전자 주식회사 | 냉장고 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9538880B2 (en) * | 2012-05-09 | 2017-01-10 | Convotherm Elektrogeraete Gmbh | Optical quality control system |
US9412086B2 (en) * | 2013-03-07 | 2016-08-09 | Bradd A. Morse | Apparatus and method for customized product data management |
US11761701B2 (en) * | 2016-01-25 | 2023-09-19 | Sun Kyong Lee | Refrigerator inventory device |
KR101830660B1 (ko) * | 2016-01-29 | 2018-02-21 | 엘지전자 주식회사 | 냉장고와 통신하는 센서 및 상기 센서를 포함하는 냉장고 제어 시스템 |
US11844458B2 (en) * | 2020-10-13 | 2023-12-19 | June Life, Llc | Method and system for automatic cook program determination |
-
2021
- 2021-04-07 WO PCT/KR2021/004328 patent/WO2022215771A1/ko active Application Filing
- 2021-06-18 US US17/352,124 patent/US11525627B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108932512A (zh) * | 2017-05-22 | 2018-12-04 | 九阳股份有限公司 | 一种冰箱食材录入方法 |
KR20190090290A (ko) * | 2018-01-24 | 2019-08-01 | 엘지전자 주식회사 | 인공지능을 이용하여 제품을 식별하고 구분된 이미지를 출력하는 냉장고 및 방법 |
KR20190108049A (ko) * | 2018-03-13 | 2019-09-23 | 삼성전자주식회사 | 냉장고, 그 제어 방법 및 시스템 |
JP2019168134A (ja) * | 2018-03-22 | 2019-10-03 | 三菱電機株式会社 | 冷蔵庫システム |
KR20200106479A (ko) * | 2020-09-04 | 2020-09-14 | 엘지전자 주식회사 | 냉장고 |
Also Published As
Publication number | Publication date |
---|---|
US20220325945A1 (en) | 2022-10-13 |
US11525627B2 (en) | 2022-12-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021125453A1 (ko) | 인공 지능 냉장고 | |
WO2021137345A1 (ko) | 인공 지능 냉장고 및 그의 동작 방법 | |
WO2016208984A1 (ko) | 복수의 디바이스에 대한 원격제어를 수행할 수 있는 이동 단말기 | |
WO2021010509A1 (ko) | 인공지능 조리 기기 | |
WO2020138624A1 (en) | Apparatus for noise canceling and method for the same | |
WO2018088794A2 (ko) | 디바이스가 이미지를 보정하는 방법 및 그 디바이스 | |
WO2021006366A1 (ko) | 디스플레이 패널의 색상을 조정하는 인공 지능 장치 및 그 방법 | |
WO2020091210A1 (en) | System and method of integrating databases based on knowledge graph | |
WO2020204221A1 (ko) | 공기 조화기 | |
WO2017105130A1 (ko) | 통신 장치 및 이를 구비하는 전자기기 | |
WO2015142002A1 (en) | Method and device for sharing functions of smart key | |
WO2019168383A1 (en) | Electronic device | |
WO2016017970A1 (en) | Method and device for encrypting or decrypting content | |
EP3161398A1 (en) | Refrigerator and controlling method thereof | |
WO2019151845A2 (ko) | 에어컨 | |
WO2021029457A1 (ko) | 사용자에게 정보를 제공하는 인공 지능 서버 및 그 방법 | |
WO2019225961A1 (en) | Electronic device for outputting response to speech input by using application and operation method thereof | |
WO2016111556A1 (en) | Method of wirelessly connecting devices, and device thereof | |
WO2019135621A1 (ko) | 영상 재생 장치 및 그의 제어 방법 | |
WO2016036015A1 (en) | Refrigerator and controlling method thereof | |
WO2020096235A2 (ko) | 식품 관리 시스템, 서버 장치 및 냉장고 | |
WO2016204496A1 (en) | System and method of providing information of peripheral device | |
WO2020209693A1 (ko) | 인공지능 모델을 갱신하는 전자 장치, 서버 및 그 동작 방법 | |
WO2022215771A1 (ko) | 냉장고 | |
WO2019177343A1 (ko) | 냉장고, 그 제어 방법 및 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21936116 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 21936116 Country of ref document: EP Kind code of ref document: A1 |