KR20190108049A - 냉장고, 그 제어 방법 및 시스템 - Google Patents

냉장고, 그 제어 방법 및 시스템 Download PDF

Info

Publication number
KR20190108049A
KR20190108049A KR1020190023124A KR20190023124A KR20190108049A KR 20190108049 A KR20190108049 A KR 20190108049A KR 1020190023124 A KR1020190023124 A KR 1020190023124A KR 20190023124 A KR20190023124 A KR 20190023124A KR 20190108049 A KR20190108049 A KR 20190108049A
Authority
KR
South Korea
Prior art keywords
food
image
user
refrigerator
touch
Prior art date
Application number
KR1020190023124A
Other languages
English (en)
Other versions
KR102217024B1 (ko
Inventor
강병익
한성주
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to EP19766651.4A priority Critical patent/EP3745304A4/en
Priority to CN201980025477.6A priority patent/CN111971684A/zh
Priority to US16/979,586 priority patent/US11425338B2/en
Priority to PCT/KR2019/002851 priority patent/WO2019177343A1/ko
Publication of KR20190108049A publication Critical patent/KR20190108049A/ko
Application granted granted Critical
Publication of KR102217024B1 publication Critical patent/KR102217024B1/ko

Links

Images

Classifications

    • G06K9/3258
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F25REFRIGERATION OR COOLING; COMBINED HEATING AND REFRIGERATION SYSTEMS; HEAT PUMP SYSTEMS; MANUFACTURE OR STORAGE OF ICE; LIQUEFACTION SOLIDIFICATION OF GASES
    • F25DREFRIGERATORS; COLD ROOMS; ICE-BOXES; COOLING OR FREEZING APPARATUS NOT OTHERWISE PROVIDED FOR
    • F25D29/00Arrangement or mounting of control or safety devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06K9/00402
    • G06K9/4652
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/68Food, e.g. fruit or vegetables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/191Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
    • G06V30/19173Classification techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
    • H04N7/183Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast for receiving images from a single remote source
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F25REFRIGERATION OR COOLING; COMBINED HEATING AND REFRIGERATION SYSTEMS; HEAT PUMP SYSTEMS; MANUFACTURE OR STORAGE OF ICE; LIQUEFACTION SOLIDIFICATION OF GASES
    • F25DREFRIGERATORS; COLD ROOMS; ICE-BOXES; COOLING OR FREEZING APPARATUS NOT OTHERWISE PROVIDED FOR
    • F25D2500/00Problems to be solved
    • F25D2500/06Stock management
    • G06K2209/01
    • G06K2209/17
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition

Abstract

냉장고는 저장실; 상기 저장실에 마련된 카메라; 사용자의 터치 입력을 수신하는 터치 감지 디스플레이; 외부 장치와 통신하는 통신부; 상기 저장실 내부를 촬영하도록 상기 카메라를 제어하고, 상기 저장실 내부의 영상을 상기 터치 감지 디스플레이에 표시하고, 상기 영상을 상기 외부 장치로 전송하도록 상기 통신부를 제어하고, 상기 사용자의 터치 입력에 응답하여 상기 통신부를 통하여 상기 외부 장치로부터 상기 영상으로부터 식별된 식별 정보를 수신하고, 상기 식별 정보를 상기 터치 감지 디스플레이에 표시하는 제어부를 포함할 수 있다. 상기 식별 정보는 상기 영상으로부터 식별된 식품의 식별 정보와 상기 식별된 식품의 상기 영상에서의 위치 정보를 포함할 수 있다. 또한, 상기 제어부는 상기 사용자의 터치 입력의 위치 정보와 상기 식별된 식품의 상기 영상에서의 위치 정보에 기초하여 상기 사용자의 터치 입력에 대응하는 식품을 판단하고, 상기 사용자의 터치 입력에 대응하는 식품의 정보를 상기 터치 감지 디스플레이에 표시할 수 있다.

Description

냉장고, 그 제어 방법 및 시스템{REFRIGERATOR, CONTROLLING METHOD THEREOF AND SYSTEM}
개시된 발명은 냉장고, 그 제어 방법 및 시스템에 관한 것으로, 더욱 상세하게는 냉장고에 저장된 식품을 식별할 수 있는 냉장고, 그 제어 방법 및 시스템에 관한 발명이다.
냉장고는 식품, 음료 등과 같이 저장물을 부패하지 않고 장기간 보관하기 위한 장치로서, 통상 저장물을 냉장 저장하는 냉장실과 저장물을 냉동 저장하는 냉동실이 마련된다.
냉장고는 냉매의 압축 - 응축 - 팽창 - 증발을 포함하는 냉각 사이클을 반복 수행하여 저장실의 온도를 설정된 목표 온도로 유지시킨다. 다시 말해, 냉장고는 각 저장실(냉장실 및/또는 냉동실)의 목표 온도에 기초하여 각 저장실에 대응되어 마련된 증발기에 의해 냉각된 공기를 각 저장실 내로 공급하여 저장실의 온도가 목표 온도로 유지되도록 한다.
최근 냉장고는 저장실의 온도 및 냉장고의 동작 모드를 표시하기 위한 디스플레이를 포함하기도 한다. 이러한 디스플레이는 사용자에게 그래픽 유저 인터페이스를 제공하고, 그래픽 유저 인터페이스와 터치 패널을 이용하여 사용자가 냉장고와 관련된 정보 및/또는 식품과 관련된 정보를 쉽게 획득할 수 있도록 하며, 또한 사용자가 직관적으로 제어 명령을 입력할 수 있도록 한다.
특히 냉장고는 디스플레이를 통하여 입력된 사용자 입력에 응답하여 저장실에 저장된 식품의 정보를 디스플레이를 통하여 표시하고, 각각의 식품의 정보를 관리할 수 있다.
이때 저장실에 저장된 식품의 정보는 사용자가 직접 입력하는 것이 일반적이었다. 그로 인하여, 냉장고로 식품을 보관하거나 냉장고로부터 식품을 꺼낼 때마다 사용자는 저장실에 저장된 식품의 정보를 변경하여야 하는 불편이 있었다.
개시된 발명의 일 측면은 냉장고에 저장된 식품을 자동으로 식별할 수 있는 냉장고, 그 제어 방법 및 시스템을 제공하고자 한다.
개시된 발명의 일 측면은 기계 학습을 이용하여 냉장고에 저장된 식품을 식별할 수 있는 냉장고, 그 제어 방법 및 시스템을 제공하고자 한다.
개시된 발명의 일 측면은 기계 학습을 이용하여 식별된 식품에 기초하여 사용자에게 다양한 서비스를 제공할 수 있는 냉장고, 그 제어 방법 및 시스템을 제공하고자 한다.
개시된 발병의 일 측면에 의한 냉장고는 저장실; 상기 저장실에 마련된 카메라; 사용자의 터치 입력을 수신하는 터치 감지 디스플레이; 외부 장치와 통신하는 통신부; 상기 저장실 내부를 촬영하도록 상기 카메라를 제어하고, 상기 저장실 내부의 영상을 상기 터치 감지 디스플레이에 표시하고, 상기 영상을 상기 외부 장치로 전송하도록 상기 통신부를 제어하고, 상기 사용자의 터치 입력에 응답하여 상기 통신부를 통하여 상기 외부 장치로부터 상기 영상으로부터 식별된 식별 정보를 수신하고, 상기 식별 정보를 상기 터치 감지 디스플레이에 표시하는 제어부를 포함할 수 있다. 상기 식별 정보는 상기 영상으로부터 식별된 식품의 식별 정보와 상기 식별된 식품의 상기 영상에서의 위치 정보를 포함할 수 있다. 또한, 상기 제어부는 상기 사용자의 터치 입력의 위치 정보와 상기 식별된 식품의 상기 영상에서의 위치 정보에 기초하여 상기 사용자의 터치 입력에 대응하는 식품을 판단하고, 상기 사용자의 터치 입력에 대응하는 식품의 정보를 상기 터치 감지 디스플레이에 표시할 수 있다.
상기 식별된 식품의 상기 영상에서의 위치 정보는 상기 영상에서 임의로 선택된 복수의 샘플 영상들의 위치를 포함할 수 있다. 또한, 상기 영상으로부터 식별된 식품의 식별 정보는 상기 복수의 샘플 영상들로부터 식별된 식품의 식별 정보를 포함할 수 있다.
상기 제어부는 상기 복수의 샘플 영상들 중에 상기 사용자의 터치 입력으로부터 거리가 최소인 샘플 영상을 선택할 수 있다.
상기 제어부는 상기 선택된 샘플 영상으로부터 식별된 식품의 식별 정보를 상기 터치 감지 디스플레이에 표시할 수 있다.
상기 제어부는 상기 터치 감지 디스플레이에 상기 선택된 샘플 영상과 상기 선택된 샘플 영상으로부터 식별된 식품의 명칭과 상기 선택된 샘플 영상으로부터 식별된 식품의 보관 기간을 표시할 수 있다.
상기 선택된 샘플 영상으로부터 식별된 식품의 식별 정보는 적어도 2개의 식품의 명칭을 포함할 수 있다. 또한, 상기 제어부는 상기 적어도 2개의 식별 정보를 상기 터치 감지 디스플레이에 표시할 수 있다.
상기 제어부는 상기 적어도 2개의 식별 정보 중에 상기 사용자에 의하여 선택된 어느 하나의 식별 정보를 상기 터치 감지 디스플레이에 표시할 수 있다.
상기 제어부는 상기 터치 감지 디스플레이를 통하여 상기 사용자로부터 상기 영상으로부터 식별된 식별 정보의 수정을 수신하고, 상기 영상으로부터 식별된 식별 정보의 수정을 상기 외부 장치로 전송할 수 있다.
개시된 발병의 일 측면에 의한, 저장실과 상기 저장실에 마련된 카메라를 포함하는, 냉장고의 제어 방법은 상기 저장실 내부를 촬영하고; 상기 저장실 내부의 영상을 터치 감지 디스플레이에 표시하고; 상기 영상을 외부 장치로 전송하고; 상기 터치 감지 디스플레이에의 사용자의 터치 입력에 응답하여 상기 외부 장치로부터 상기 영상으로부터 식별된 식별 정보를 수신하고; 상기 식별 정보를 상기 터치 감지 디스플레이에 표시하는 것을 포함할 수 있다. 상기 식별 정보는 상기 영상으로부터 식별된 식품의 식별 정보와 상기 식별된 식품의 상기 영상에서의 위치 정보를 포함할 수 있다. 또한, 상기 식별 정보를 상기 터치 감지 디스플레이에 표시하는 것은 상기 사용자의 터치 입력의 위치 정보와 상기 식별된 식품의 상기 영상에서의 위치 정보에 기초하여 상기 사용자의 터치 입력에 대응하는 식품을 판단하고; 상기 사용자의 터치 입력에 대응하는 식품의 정보를 상기 터치 감지 디스플레이에 표시하는 것을 포함할 수 있다.
상기 식별된 식품의 상기 영상에서의 위치 정보는 상기 영상에서 임의로 선택된 복수의 샘플 영상들의 위치를 포함할 수 있다. 또한, 상기 영상으로부터 식별된 식품의 식별 정보는 상기 복수의 샘플 영상들로부터 식별된 식품의 식별 정보를 포함할 수 있다.
상기 사용자의 터치 입력에 대응하는 식품을 판단하는 것은, 상기 복수의 샘플 영상들 중에 상기 사용자의 터치 입력으로부터 거리가 최소인 샘플 영상을 선택하는 것을 포함할 수 있다.
상기 식별 정보를 상기 터치 감지 디스플레이에 표시하는 것은, 상기 선택된 샘플 영상으로부터 식별된 식품의 식별 정보를 상기 터치 감지 디스플레이에 표시하는 것을 포함할 수 있다.
상기 냉장고의 제어 방법은 상기 터치 감지 디스플레이에 상기 선택된 샘플 영상과 상기 선택된 샘플 영상으로부터 식별된 식품의 명칭과 상기 선택된 샘플 영상으로부터 식별된 식품의 보관 기간을 표시하는 것을 더 포함할 수 있다.
상기 선택된 샘플 영상으로부터 식별된 식품의 식별 정보는 적어도 2개의 식품의 명칭을 포함할 수 있다. 상기 식별 정보를 상기 터치 감지 디스플레이에 표시하는 것은 상기 적어도 2개의 식별 정보를 상기 터치 감지 디스플레이에 표시하는 것을 포함할 수 있다.
상기 식별 정보를 상기 터치 감지 디스플레이에 표시하는 것은 상기 적어도 2개의 식별 정보 중에 상기 사용자에 의하여 선택된 어느 하나의 식별 정보를 상기 터치 감지 디스플레이에 표시하는 것을 더 포함할 수 있다.
개시된 발병의 일 측면에 의한 시스템은 냉장고; 및 서버 장치를 포함할 수 있다. 상기 냉장고는 저장실 내부를 촬영하고, 상기 저장실 내부의 영상을 터치 감지 디스플레이에 표시하고, 상기 영상을 상기 서버 장치로 전송하고, 상기 터치 감지 디스플레이에 대한 사용자의 터치 입력에 응답하여 상기 서버 장치로부터 상기 영상으로부터 식별된 식별 정보를 수신하고, 상기 식별 정보를 상기 터치 감지 디스플레이에 표시할 수 있다. 또한, 상기 서버 장치는 상기 냉장고로부터 상기 저장실 내부의 영상을 수신하고, 상기 영상에서 임의로 복수의 샘플 영상들을 선택하고, 상기 복수의 샘플 영상들 각각으로부터 식품을 식별하고, 상기 복수의 샘플 영상 각각의 위치 정보와 상기 복수의 샘플 영상 각각으로부터 식별된 식품의 식별 정보를 상기 냉장고로 전송할 수 있다.
상기 냉장고는 상기 사용자의 터치 입력의 위치 정보와 상기 복수의 샘플 영상 각각의 위치 정보에 기초하여 상기 사용자의 터치 입력에 대응하는 식품을 판단할 수 있다.
상기 냉장고는 상기 복수의 샘플 영상들 중에 상기 사용자의 터치 입력으로부터 거리가 최소인 샘플 영상을 선택할 수 있다.
상기 냉장고는 상기 선택된 샘플 영상으로부터 식별된 식품의 식별 정보를 상기 터치 감지 디스플레이에 표시할 수 있다.
상기 냉장고는 상기 터치 감지 디스플레이에 상기 선택된 샘플 영상과 상기 선택된 샘플 영상으로부터 식별된 식품의 명칭과 상기 선택된 샘플 영상으로부터 식별된 식품의 보관 기간을 표시할 수 있다.
개시된 발병의 일 측면에 의한 식품 관리 시스템은 서버 장치; 및 저장실을 포함하고, 상기 저장실의 영상을 상기 서버 장치로 전송하는 냉장고를 포함할 수 있다. 상기 서버 장치는, 통신부; 및 상기 통신부를 통하여 상기 냉장고로부터 수신된 영상으로부터 식품을 식별하고 상기 통신부를 통하여 상기 냉장고로 상기 식별된 식품과 관련된 정보를 전송하는 처리부를 포함할 수 있다. 상기 처리부는 서로 다른 영상으로부터 서로 다른 프로세스를 이용하여 식품을 식별할 수 있다.
상기 처리부는 상기 수신된 영상과 기준 영상 사이의 차이에 기초하여 식품 영역을 식별하고, 상기 식품 영역의 영상으로부터 식품을 식별할 수 있다.
상기 처리부는 상기 수신된 영상으로부터 문자가 추출되면 상기 문자를 식별함으로써 식품을 식별할 수 있다.
상기 처리부는 상기 수신된 영상의 색상의 변화에 따라 상기 수신된 영상을 복수의 영역으로 분할하고, 상기 복수의 영역으로부터 식품을 식별할 수 있다.
상기 처리부는 사전에 기계 학습된 식별 엔진을 포함하고, 상기 식품 식품 엔진을 이용하여 상기 수신된 영상으로부터 식품을 식별할 수 있다.
상기 냉장고는 상기 식별된 식품과 관련된 정보를 표시하고, 사용자로부터 상기 식별된 식품과 관련된 정보에 대한 수정 입력을 수신할 수 있다.
상기 처리부는 상기 사용자의 수정 입력을 수신하고, 상기 사용자의 수정 입력을 이용하여 상기 식별 엔진을 다시 기계 학습할 수 있다.
상기 냉장고는 제1 시점에 상기 저장실의 제1 영상과 제2 시점에 상기 저장실의 제2 영상 사이의 차이로부터 변경 영역을 식별하고, 상기 변경 영역의 식품을 식별하기 위하여 상기 변경 영역을 상기 서버 장치로 전송할 수 있다.
개시된 발병의 일 측면에 의한 식품 관리 방법은 저장실의 내부를 촬영함으로써 상기 저장실의 영상을 획득하고; 사전에 기계 학습된 식별 엔진을 이용하여 상기 저장실의 영상으로부터 식품을 식별하고; 상기 식별된 식품과 관련된 정보를 표시하는 것을 포함할 수 있다. 상기 식품을 식별하는 것은 서로 다른 영상으로부터 서로 다른 프로세스를 이용하여 식품을 식별하는 것을 포함할 수 있다.
상기 식품을 식별하는 것은, 상기 영상과 기준 영상 사이의 차이에 기초하여 식품 영역을 식별하고; 상기 식품 영역의 영상으로부터 식품을 식별하는 것을 포함할 수 있다.
상기 식품을 식별하는 것은, 상기 영상으로부터 문자가 추출되면 상기 문자를 식별함으로써 식품을 식별하는 것을 포함할 수 있다.
상기 식품을 식별하는 것은, 상기 영상의 색상의 변화에 따라 상기 저장실의 영상을 복수의 영역으로 분할하고; 상기 복수의 영역으로부터 식품을 식별할 수 있다.
상기 식품 관리 방법은 사용자로부터 상기 식별된 식품과 관련된 정보에 대한 수정 입력을 수신하는 것을 더 포함할 수 있다.
상기 식품 관리 방법은 상기 사용자의 수정 입력을 이용하여 상기 식별 엔진을 다시 기계 학습하는 것을 더 포함할 수 있다.
상기 식품 관리 방법은 제1 시점에 상기 저장실의 제1 영상과 제2 시점에 상기 저장실의 제2 영상 사이의 차이로부터 변경 영역을 식별하고; 상기 변경 영역의 식품을 식별하는 것을 더 포함할 수 있다.
개시된 발병의 일 측면에 의한 냉장고는 디스플레이; 저장실; 상기 저장실에 마련되는 카메라; 및 상기 저장실을 촬영하도록 상기 카메라를 제어하고, 상기 저장실의 영상으로부터 상기 저장실에 저장된 식품을 식별하고, 상기 식별된 식품과 관련된 정보를 상기 디스플레이 장치에 표시하는 제어부를 포함할 수 있다. 상기 제어부는 서로 다른 영상으로부터 서로 다른 프로세스를 이용하여 식품을 식별할 수 있다.
상기 제어부는 사전에 기계 학습된 식별 엔진을 포함하고, 상기 식품 식품 엔진을 이용하여 상기 저장실의 영상으로부터 식품을 식별할 수 있다.
상기 제어부는 상기 저장실의 영상과 기준 영상 사이의 차이에 기초하여 식품 영역을 식별하고, 상기 식품 영역의 영상으로부터 식품을 식별할 수 있다.
상기 제어부는 상기 저장실의 영상으로부터 문자가 추출되면 상기 문자를 식별함으로써 식품을 식별할 수 있다.
상기 제어부는 상기 저장실의 영상의 색상의 변화에 따라 상기 저장실의 영상을 복수의 영역으로 분할하고, 상기 복수의 영역으로부터 식품을 식별할 수 있다.
개시된 발명의 일 측면에 따르면, 냉장고에 저장된 식품을 자동으로 식별할 수 있는 냉장고, 그 제어 방법 및 시스템을 제공할 수 있다.
개시된 발명의 일 측면에 따르면, 기계 학습을 이용하여 냉장고에 저장된 식품을 식별할 수 있는 냉장고, 그 제어 방법 및 시스템을 제공할 수 있다.
개시된 발명의 일 측면에 따르면, 기계 학습을 이용하여 식별된 식품에 기초하여 사용자에게 다양한 서비스를 제공할 수 있는 냉장고, 그 제어 방법 및 시스템을 제공할 수 있다.
도 1은 일 실시예에 의한 식품 관리 시스템을 도시한다.
도 2은 일 실시예에 의한 냉장고의 외관을 도시한다.
도 3는 일 실시예에 의한 냉장고의 전면을 도시한다.
도 4은 일 실시예에 의한 냉장고의 구성을 도시한다.
도 5는 일 실시예에 의한 냉장고에 포함된 터치 스크린 디스플레이를 도시한다.
도 6은 일 실시예에 의한 서버 장치의 구성을 도시한다.
도 7은 일 실시예에 의한 서버 장치에 포함된 객체 식별 엔진의 구성을 도시한다.
도 8은 일 실시예에 의한 서버 장치에 저장된 데이터를 도시한다.
도 9은 일 실시예에 의한 서버 장치에 포함된 객체 식별을 위한 학습 엔진의 일 예를 도시한다.
도 10은 일 실시예에 의한 서버 장치의 객체 식별을 위한 기계 학습의 일 예를 도시한다.
도 11는 일 실시예에 의한 서버 장치의 객체 식별 엔진의 구성을 도시한다.
도 12, 도 13 및 도 14는 일 실시예에 의한 서버 장치에 포함된 객체 식별 엔진이 객체를 식별하는 일 예를 도시한다.
도 15는 일 실시예에 의한 서버 장치의 객체 식별 엔진의 다른 일 예를 도시한다.
도 16 및 17은 일 실시예에 의한 서버 장치에 포함된 객체 식별 엔진이 객체를 식별하는 다른 일 예를 도시한다.
도 18은 일 실시예에 의한 식품 관리 시스템의 식품 식별 방법의 일 예를 도시한다.
도 19은 도 18에 도시된 식품 식별 방법에 의하여 촬영된 저장실 내부 영상을 도시한다.
도 20는 도 18에 도시된 식품 식별 방법에 의하여 식품 영역을 식별하는 일 예를 도시한다.
도 21은 도 18에 도시된 식품 식별 방법에 의하여 식품 관련 정보를 표시하는 일 예를 도시한다.
도 22는 도 18에 도시된 식품 식별 방법에 의하여 식품 관련 정보를 표시하는 다른 일 예를 도시한다.
도 23은 일 실시예에 의한 식품 관리 시스템의 식품 식별 방법의 다른 일 예를 도시한다.
도 24는 도 23에 도시된 식품 식별 방법에 의하여 사용자의 터치 입력을 수신하는 일 예를 도시한다.
도 25는 도 23에 도시된 식품 식별 방법에 의하여 샘플 영상을 추출하는 일 예를 도시한다.
도 26은 도 23에 도시된 식품 식별 방법에 의하여 식품 관련 정보를 표시하는 일 예를 도시한다.
도 27은 도 23에 도시된 식품 식별 방법에 의하여 식품 관련 정보를 표시하는 다른 일 예를 도시한다.
도 28는 일 실시예에 의한 식품 관리 시스템의 식품 식별 방법의 다른 일 예를 도시한다.
도 29은 도 28에 도시된 식품 식별 방법에 의하여 추가 식품 영역을 식별하는 일 예를 도시한다.
도 30는 도 28에 도시된 식품 식별 방법에 의하여 추가 식품 관련 정보를 표시하는 일 예를 도시한다.
도 31은 일 실시예에 의한 식품 관리 시스템의 식품 식별 방법의 다른 일 예를 도시한다.
도 32 및 도 33은 도 31에 도시된 식품 식별 방법에 의하여 식품 관련 정보를 수정하는 일 예를 도시한다.
도 34은 일 실시예에 의한 냉장고가 식품을 식별하는 방법을 도시한다.
도 35는 일 실시예에 의한 식품 관리 시스템이 식품들 각각을 개별 식별하는 식별 방법의 다른 일 예를 도시한다.
도 36은 도 35에 도시된 식품 식별 방법에 의하여 수동으로 식품 관련 정보를 입력하는 일 예를 도시한다.
도 37는 일 실시예에 의한 식품 관리 시스템이 식품들을 일괄 식별하는 식별 방법의 다른 일 예를 도시한다.
도 38는 도 37에 도시된 식품 식별 방법에 의하여 식품 관련 정보를 수정하는 일 예를 도시한다.
도 39은 도 37에 도시된 식품 식별 방법에 의하여 식품 관련 정보를 수정하는 다른 일 예를 도시한다.
도 40은 일 실시예에 의한 식품 관리 시스템의 식품 관리 방법의 일 예를 도시한다.
도 41은 도 40에 도시된 식품 관리 방법에 의하여 식품을 구매하는 일 예를 도시한다.
도 42은 일 실시예에 의한 식품 관리 시스템의 식품 관리 방법의 다른 일 예를 도시한다.
도 43은 일 실시예에 의한 식품 관리 시스템의 레시피 제공 방법의 일 예를 도시한다.
도 44 및 도 45은 도 43에 도시된 레시피 제공 방법에 의하여 레시피를 제공하는 일 예를 도시한다.
도 46은 도 43에 도시된 레시피 제공 방법에 의하여 레시피를 제공하는 다른 일 예를 도시한다.
도 47은 일 실시예에 의한 식품 관리 시스템의 레시피 제공 방법의 일 예를 도시한다.
도 48 및 도 49는 도 47에 도시된 레시피 제공 방법에 의하여 레시피를 제공하는 일 예를 도시한다.
명세서 전체에 걸쳐 동일 참조 부호는 동일 구성요소를 지칭한다. 본 명세서가 실시예들의 모든 요소들을 설명하는 것은 아니며, 본 발명이 속하는 기술분야에서 일반적인 내용 또는 실시예들 간에 중복되는 내용은 생략한다. 명세서에서 사용되는 '부, 모듈, 부재, 블록'이라는 용어는 소프트웨어 또는 하드웨어로 구현될 수 있으며, 실시예들에 따라 복수의 '부, 모듈, 부재, 블록'이 하나의 구성요소로 구현되거나, 하나의 '부, 모듈, 부재, 블록'이 복수의 구성요소들을 포함하는 것도 가능하다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우뿐 아니라, 간접적으로 연결되어 있는 경우를 포함하고, 간접적인 연결은 무선 통신망을 통해 연결되는 것을 포함한다.
또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
명세서 전체에서, 어떤 부재가 다른 부재 "상에" 위치하고 있다고 할 때, 이는 어떤 부재가 다른 부재에 접해 있는 경우뿐 아니라 두 부재 사이에 또 다른 부재가 존재하는 경우도 포함한다.
제 1, 제 2 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위해 사용되는 것으로, 구성요소가 전술된 용어들에 의해 제한되는 것은 아니다.
단수의 표현은 문맥상 명백하게 예외가 있지 않는 한, 복수의 표현을 포함한다.
각 단계들에 있어 식별부호는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 실시될 수 있다.
이하 첨부된 도면들을 참고하여 본 발명의 작용 원리 및 실시예들에 대해 설명한다.
도 1은 일 실시예에 의한 식품 관리 시스템을 도시한다.
도 1에 도시된 바와 같이, 식품 관리 시스템(1)은 식품을 저장하는 냉장고(refrigerator) (100)와, 냉장고(100)에 저장된 식품을 식별(또는 인식)하는 서버 장치(computing apparatus) (200)와, 식별(또는 인식)된 식픔과 관련된 정보를 사용자에게 제공하는 사용자 장치(user equipment) (300)를 포함한다.
식품 관리 시스템(1)에 포함된 냉장고(100)와 서버 장치(200)와 사용자 장치(300)는 통신망(NET)을 통하여 연결될 수 있다. 이때, 통신망(NET)은 유선 통신망과 무선 통신망을 모두 포함할 수 있다. 유선 통신망은 케이블망이나 전화망 등의 통신망을 포함하며, 무선 통신망은 전파를 통하여 신호를 송수신하는 통신망을 포함할 수 있다. 유선 통신망과 무선 통신망은 서로 연결될 수 있다. 예를 들어, 유선 통신망은 인터넷 등의 광역 네트워크(WAN)를 포함할 수 있으며, 무선 통신망은 광역 네트워크(WAN)에 연결된 액세스 포인트(AP)를 포함할 수 있다.
냉장고(100)는 식품을 냉장 저장하거나 냉동 저장할 수 있다. 예를 들어, 냉장고(100)는 식품을 수용하는 저장실과 저장실을 냉각시키는 냉각 장치를 구비할 수 있다. 냉장고(100)는 저장실에 저장된 식품이 변질되는 것을 방지하기 위하여 냉각 장치를 이용하여 저장실에 냉각된 공기를 공급할 수 있다.
냉장고(100)는 사용자의 요구에 응답하여 저장실에 저장된 식픔과 관련된 정보를 사용자에게 제공할 수 있다. 예를 들어, 냉장고(100)는 식품이 저장된 저장실을 촬영하고, 저장실 내부의 영상을 획득할 수 있다. 저장실에 저장된 식품과 관련된 정보를 획득하기 위하여 냉장고(100)는 촬영된 저장실 내부의 영상을 통신망(NET)을 통하여 서버 장치(200)로 전송할 수 있다. 또한, 냉장고(100)는 서버 장치(200)로부터 저장실에 저장된 식픔과 관련된 정보(식품 관련 정보)를 수신하고, 수신된 식품 관련 정보를 표시하거나 사용자 장치(300)로 전송할 수 있다.
서버 장치(200)는 다른 장치로부터 통신망(NET)을 통하여 데이터를 처리하고, 처리된 데이터를 저장하거나 다른 장치로 전송할 수 있다. 예를 들어, 서버 장치(200)는 다른 장치와 통신할 수 있는 통신 유닛과, 데이터를 처리할 수 있는 처리 유닛과, 처리된 데이터를 저장할 수 있는 저장 매체를 포함할 수 있다. 이러한 서버 장치(200)는 서버(server), 클라이언트(client), 워크스테이션(workstation), 퍼스널 컴퓨터(personal computer), 클라우드(cloud), 데이터 드라이브(data drive), 데이터 스테이션(data station) 등 다양하게 호칭될 수 있다.
서버 장치(200)는 객체를 식별할 수 있는 객체 인식(Object Recognition)을 포함할 수 있다. 예를 들어, 서버 장치(200)는 기계 학습(machine learning)을 이용하여 영상에 포함된 객체를 식별할 수 있는 객체 인식을 포함할 수 있다.
서버 장치(200)는 냉장고(100)로부터 저장실 내부의 영상을 통신망(NET)을 통하여 수신하고, 저장실 내부의 영상에 포함된 식품(즉 저장실에 저장된 식품)을 식별할 수 있다. 또한, 서버 장치(200)는 식별된 식품과 관련된 정보를 저장하거나, 식별된 식품과 관련된 정보를 냉장고(100) 및/또는 사용자 장치(300)로 전송할 수 있다. 여기서, 식별된 식품과 관련된 정보는 식별된 식품의 영상, 식별된 식품의 명칭, 식별된 식품의 카테고리, 식별된 식품의 저장 기한 등을 포함할 수 있다.
사용자 장치(300)는 다른 장치로부터 통신망(NET)을 통하여 데이터를 처리하고, 처리된 데이터를 사용자에게 표시할 수 있다. 특히, 사용자 장치(300)는 사용자에 의하여 휴대되거나, 사용자의 가정 또는 사무실 등에 배치될 수 있으며, 사용자는 쉽게 사용자 장치(300)에 접근할 수 있다. 이러한 사용자 장치(300)는 워크스테이션(workstation), 퍼스널 컴퓨터(personal computer), 단말기(terminal), 휴대폰(portable telephone), 스마트 폰(smart phone), 휴대 장치(handheld device), 착용 장치(wearable device) 등 다양하게 호칭될 수 있다.
사용자 장치(300)는 냉장고(100) 및/또는 서버 장치(200)로부터 냉장고(100)에 저장된 식품과 관련된 정보를 수신하고, 냉장고(100)에 저장된 식품과 관련된 정보를 표시할 수 있다. 예를 들어, 사용자 장치(300)는 냉장고(100)에 저장된 식품의 명칭, 영상, 카테고리, 저장 기한 등을 표시할 수 있다.
이상에서 설명된 바와 같이 식품 관리 시스템(1)은 냉장고(100)의 저장실을 촬영하여 저장실 내부의 영상을 획득하고, 저장실 내부의 영상에 포함된 식품을 식별할 수 있다. 다시 말해, 식품 관리 시스템(1)은 저장실 내부의 영상을 이용하여 저장실에 저장된 식품을 식별할 수 있다. 또한, 식품 관리 시스템(1)은 식별 결과에 기초하여 저장실에 저장된 식품과 관련된 정보를 사용자에게 제공할 수 있다.
그 결과, 사용자가 냉장고(100)에 저장된 식품과 관련된 정보를 입력하지 아니하여도, 냉장고(100)는 서버 장치(200)를 이용하여 식품을 식별할 수 있으며 저장된 식품과 관련된 정보를 획득할 수 있다.
이하에서는, 식품 관리 시스템(1)에 포함된 냉장고(100)의 구성 및 동작이 설명된다.
도 2은 일 실시예에 의한 냉장고의 외관을 도시한다. 도 3는 일 실시예에 의한 냉장고의 전면을 도시한다. 도 4은 일 실시예에 의한 냉장고의 구성을 도시한다. 도 5는 일 실시예에 의한 냉장고에 포함된 터치 스크린 디스플레이를 도시한다.
도 2, 도 3, 도 4 및 도 5를 참조하면, 냉장고(100)는 전면(前面)이 개방된 본체(101)와, 본체(101) 내부에 형성되며 식품이 냉장 및/또는 냉동 보관되는 저장실(110)과, 본체(101)의 개방된 전면을 개폐하는 도어(120)를 포함할 수 있다.
본체(101)는 냉장고(100)의 외관을 형성할 수 있다. 본체(101)는 저장실(110)을 형성하는 내상(102)과, 내상(102)의 외측에 결합되어 외관을 형성하는 외상(103)을 포함할 수 있다. 본체(101)의 내상(102)과 외상(103) 사이에는 저장실(110)의 냉기 유출을 방지할 수 있는 단열재(미도시)가 충진될 수 있다.
저장실(110)은 수평 격벽(110a)과 수직 격벽(110b)에 의해 복수 개로 구획될 수 있다. 예를 들어, 도 2에 도시된 바와 같이 저장실(110)은 상부 저장실(111)과, 하부 제1 저장실(112)과, 하부 제2 저장실(113)로 구획될 수 있다.
저장실(110)에는 식품을 올려 놓을 수 있는 선반(110c)이 마련될 수 있다. 저장실(110) 내부의 저장 공간은 선반(110c)에 의하여 구획될 수 있다. 예를 들어, 상부 저장실(111)은 제1 저장 공간(111a)과 제2 저장 공간(111b)과 제3 저장 공간(111c)으로 구획될 수 있다.
저장실(110)은 도어(120)에 의하여 개폐될 수 있다. 예를 들어, 도 2에 도시된 바와 같이 상부 저장실(111)은 상부 제1 도어(121a)와 상부 제2 도어(121b)에 의하여 개폐될 수 있고, 하부 제1 저장실(112)은 하부 제1 도어(122)에 의하여 개폐될 수 있으며, 하부 제2 저장실(113)은 하부 제2 도어(123)에 의하여 개폐될 수 있다.
도어(120)를 용이하게 개폐할 수 있도록 도어(120)에는 핸들(120a)이 마련될 수 있다. 핸들(121)은 상부 제1 도어(121a)와 상부 제2 도어(121b)의 사이와 하부 제1 도어(122)와 하부 제2 도어(123)의 사이를 따라 상하방향으로 길게 형성될 수 있다. 그로 인하여, 도어(120)가 폐쇄된 경우, 핸들(120a)은 일체로 마련될 것과 같이 보여질 수 있다.
또한, 냉장고(1)는 도 4에 도시된 바와 같이 터치 스크린 디스플레이(touch screen display) (130), 온도 감지부(temperature sensor) (140), 카메라(camera) (150), 냉각부(cooler) (160), 통신부(communicator) (170), 저장부(storage) (180) 및 제어부(controller) (190)를 포함할 수 있다.
터치 스크린 디스플레이(130)는 영상을 표시하는 디스플레이 패널(131)과, 터치 입력을 수신하는 터치 패널(132)을 포함할 수 있다.
디스플레이 패널(131)은 도 5에 도시된 바와 같이 제어부(190)로부터 수신된 영상 데이터를 사용자가 볼 수 있는 광학적 신호로 변환할 수 있다.
디스플레이 패널(131)은 액정 디스플레이(Liquid Crystal Display, LCD) 패널, 발광 다이오드(Light Emitting Diode, LED) 패널, 유기 발광 다이오드(Organic Light Emitting Diode, OLED) 패널, 마이크로 발광 다이오드(micro Light Emitting Diode, uLED) 패널, 플라즈마 디스플레이 패널(Plasma Display Panel, PDP) 등을 채용할 수 있다. 다만, 디스플레이 패널(131)은 이에 한정되지 않으며, 디스플레이 패널(131)은 영상 데이터에 대응하는 광학적 영상을 시각적으로 표시할 수 있는 다양한 디스플레이를 채용할 수 있다.
터치 패널(132)은 도 5에 도시된 바와 같이 사용자의 터치 입력을 수신하고, 수신된 터치 입력에 대응하는 전기적 신호를 제어부(190)로 출력할 수 있다.
예를 들어, 터치 패널(132)은 전기적 저항값의 변화 또는 정전용량의 변화로부터 터치 패널(132)에 대한 사용자의 터치를 감지하고, 사용자의 터치 지점의 좌표에 대응하는 전기적 신호를 제어부(190)로 출력할 수 있다. 제어부(190)는 터치 패널(132)로부터 수신된 전기적 신호에 기초하여 사용자의 터치 지점의 좌표를 식별할 수 있다. 또한, 제어부(190)는 사용자의 터치 지점의 좌표에 기초하여 사용자 입력을 식별할 수 있다.
터치 패널(132)은 디스플레이 패널(131)의 전면에 위치할 수 있다. 다시 말해, 터치 패널(132)은 영상이 표시되는 면 위에 마련될 수 있다. 그로 인하여, 터치 패널(132)은 디스플레이 패널(131)에 표시되는 영상이 왜곡되지 않도록 투명한 재질로 형성될 수 있다.
이러한 터치 패널(132)은 저항막 방식 터치 패널 또는 정전용량 방식 터치 패널을 채용할 수 있다. 다만, 터치 패널(132)은 이에 한정되지 않으며, 터치 패널(132)은 사용자의 터치 또는 접근을 감지하고, 감지된 터치 지점의 좌표 또는 접근 지점의 좌표에 대응하는 전기적 신호를 출력할 수 있는 다양한 터치 패널을 채용할 수 있다.
이처럼, 터치 스크린 디스플레이(130)는 사용자로부터 터치 입력을 수신하여 제어부(190)로 전달하고, 사용자의 터치 입력에 응답한 제어부(190)의 영상을 표시할 수 있다. 다시 말해, 터치 스크린 디스플레이(130)는 사용자와 상호 작용할 수 있다.
터치 스크린 디스플레이(130)은 사용자의 편의를 위해 도어(120)에 설치될 수 있다. 예를 들어, 도 3에 도시된 바와 같이 터치 스크린 디스플레이(130)는 상부 제2 도어(121b)에 설치될 수 있다. 이하에서는 상부 제2 도어(121b)에 설치된 터치 스크린 디스플레이(130)가 설명되나, 터치 스크린 디스플레이(130)의 설치 위치가 상부 제2 도어(121b)에 한정되는 것은 아니다. 예를 들어, 터치 스크린 디스플레이(130)는 상부 제1 도어(121a), 하부 제1 도어(122), 하부 제2 도어(123) 및 본체(10)의 외상(103) 등 사용자가 볼 수 있는 위치라면 어디든지 설치될 수 있다.
또한, 터치 스크린 디스플레이(130)은 사용자가 일정 범위 이내로 접근할 때 자동으로 활성화되는 웨이크 업(wake up) 기능을 구비할 수 있다. 예를 들어, 사용자가 일정 범위 이내로 접근하면 터치 스크린 디스플레이(130)가 활성화될 수 있다. 다시 말해, 터치 스크린 디스플레이(130)는 온(on)상태가 될 수 있다. 또한, 사용자가 일정 범위 이내에서 벗어난 이후 일정 시간이 경과하면 터치 스크린 디스플레이(130)가 비활성화될 수 있다. 다시 말해, 터치 스크린 디스플레이(130)는 오프(off)상태가 될 수 있다.
온도 감지부(140)는 저장실(110)의 내부에 마련되어, 저장실(110) 내부의 온도를 감지하는 내부 온도 센서들(inner temperature sensors) (141)을 포함할 수 있다.
내부 온도 센서들(141)은 복수의 저장실들(111, 112, 112) 각각에 설치되어 수의 저장실(111, 112, 113) 각각의 온도를 감지하고, 감지된 온도에 대응하는 전기적 신호를 제어부(190)로 출력할 수 있다. 내부 온도 센서들(141) 각각은 온도에 따라 전기적 저항이 변화하는 서미스터(thermistor)를 포함할 수 있다.
카메라(150)는 저장실(110) 내부에 설치되어 저장실(110)의 내부 영상을 획득할 수 있다. 예를 들어, 도 2에 도시된 바와 같이 카메라(150)는 도어(120)의 내측에 설치될 수 있으며, 도어(120)의 내측으로부터 저장실(110) 내부를 향하여 촬영할 수 있다. 따라서, 카메라(150)는 사용자의 시선 방향과 대략 동일한 방향으로 저장실(110) 내부를 촬영할 수 있다.
카메라(150)는 영상을 촬영하여 전기적 신호로 변환하는 이미저(imager) (151)를 포함할 수 있다. 이미저(151)는 광학 신호를 전기적 신호로 변환하는 복수의 광 다이오드들을 포함할 수 있으며, 복수의 광 다이오드들은 2차원으로 배치될 수 있다. 이미저(151)는 예를 들어 CCD (Charge-Coupled Device) 영상 센서 또는 CMOS (Complementary metal oxide semiconductor) 영상 센서를 포함할 수 있다.
카메라(150)는 선반(110c)에 의하여 구획된 저장실(110)의 내부를 촬영하기 위하여 복수의 이미저들(151a, 151b, 151c)을 포함할 수 있다. 예를 들어, 카메라(150)는 상부 저장실(111)의 제1 저장 공간(111a)을 촬영하는 제1 이미저(151a)와, 제2 저장 공간(111b)을 촬영하는 제2 이미저(151b)와, 제3 저장 공간(111c)을 촬영하는 제3 이미저(151c)를 포함할 수 있다.
특히, 저장실(110)에 식품에 저장된 경우, 카메라(150)에 의하여 촬영된 저장실(110)의 내부 영상은 저장실(110)에 저장된 식품의 영상을 포함할 수 있다.
카메라(150)는 촬영된 영상을 제어부(190)로 전달할 수 있다. 구체적으로, 카메라(150)는 식품의 영상이 포함된 저장실(110)의 내부 영상을 제어부(190)로 전달할 수 있다.
냉각부(160)는 저장실(110)에 냉기를 공급할 수 있다. 구체적으로, 냉각부(160)는 냉매의 증발을 이용하여 저장실(110)의 온도를 사용자에 의하여 지정된 범위 이내로 유지시킬 수 있다.
냉각부(160)는 기체 상태의 냉매를 압축하는 압축기(161)와, 압축된 기체 상태의 냉매를 액체 상태로 상태 변환시키는 응축기(162)와, 액체 상태의 냉매를 감압하는 팽창기(163)와, 감압된 액체 상태의 냉매를 기체 상태로 상태 변환시키는 증발기(164)를 포함할 수 있다.
냉각부(160)는 액체 상태의 냉매가 기체 상태로 상태 변환하면서 주위 공기의 열 에너지를 흡수하는 현상을 이용하여 저장실(110)의 공기를 냉각시킬 수 있다.
다만, 냉각부(160)가 압축기(161), 응축기(162), 팽창기(163) 및 증발기(164)를 포함하는 것에 한정되는 것은 아니다.
예를 들어, 냉각부(160)는 펠티어 효과(Peltier effect)를 이용한 펠티어 소자를 포함할 수도 있다. 펠티어 효과란 서로 다른 종류의 금속이 접하는 접촉면에 전류를 흐르게 하면 어느 하나의 금속에서는 발열 현상이 발생하고, 다른 하나의 금속에서는 흡열 현상이 발생하는 것을 의미한다. 냉각부(160)는 펠티어 소자를 이용하여 저장실(110)의 공기를 냉각할 수 있다.
다른 예로, 냉각부(160)는 자기 열효과(magneto-caloric effect)를 이용한 자기 냉각 장치를 포함할 수 있다. 자기 열효과란 특정한 물질(자기 열량 물질)이 자화되면 열을 방출하고, 특정한 물질(자기 열량 물질)이 탈자화되면 열을 흡수하는 것을 의미한다. 냉각부(160)는 자기 냉각 장치를 이용하여 저장실(110)의 공기를 냉각할 수 있다.
통신부(170)는 서버 장치(200) 및/또는 사용자 장치(300)와 데이터를 주고받을 수 있다. 예를 들어, 통신부(170)는 카메라(150)에 의하여 촬영된 저장실 내부 영상을 서버 장치(200)로 전송할 수 있으며, 저장실 내부 영상에 포함된 식품과 관련된 정보를 서버 장치(200)로부터 수신할 수 있다.
통신부(170)는 서버 장치(200) 및/또는 사용자 장치(300)과 유선으로 데이터를 주고받는 유선 통신 모듈(172)과, 서버 장치(200) 및/또는 사용자 장치(300)과 무선으로 데이터를 주고받는 무선 통신 모듈(171)을 포함할 수 있다.
유선 통신 모듈(172)은 유선 통신망에 접속하고 유선 통신망을 통하여 서버 장치(200) 및/또는 사용자 장치(300)와 통신할 수 있다. 예를 들어, 유선 통신 모듈(172)은 이더넷(Ethernet, IEEE 802.3 기술 표준)을 통하여 유선 통신망에 접속하고, 유선 통신망을 통하여 서버 장치(200) 및/또는 사용자 장치(300)로부터 데이터를 수신할 수 있다.
무선 통신 모듈(171)은 기지국(base station) 또는 액세스 포인트(AP)와 무선으로 통신할 수 있으며, 기지국 또는 액세스 포인트를 통하여 유선 통신망에 접속할 수 있다. 무선 통신 모듈(171)은 또한 기지국 또는 액세스 포인트를 거쳐 유선 통신망에 접속된 서버 장치(200) 및/또는 사용자 장치(300)과 통신할 수 있다. 예를 들어, 무선 통신 모듈(171)은 와이파이(WiFi™, IEEE 802.11 기술 표준)을 이용하여 액세스 포인트(AP)와 무선으로 통신하거나, CDMA, WCDMA, GSM, LET(Long Term Evolution), 와이브로 등을 이용하여 기지국과 통신할 수 있다. 무선 통신 모듈(171)은 또한 기지국 또는 액세스 포인트를 거쳐 서버 장치(200) 및/또는 사용자 장치(300)로부터 데이터를 수신할 수 있다.
뿐만 아니라, 무선 통신 모듈(171)은 서버 장치(200) 및/또는 사용자 장치(300)과 직접 통신할 수 있다. 예를 들어, 무선 통신 모듈(171)은 와이파이, 블루투스 (Bluetooth™, IEEE 802.15.1 기술 표준), 지그비(ZigBee™, IEEE 802.15.4 기술 표준) 등을 이용하여 서버 장치(200) 및/또는 사용자 장치(300)으로부터 무선으로 데이터를 수신할 수 있다.
이처럼, 통신부(170)는 서버 장치(200) 및/또는 사용자 장치(300)과 데이터를 주고 받을 수 있으며, 서버 장치(200) 및/또는 사용자 장치(300)로부터 수신된 데이터를 제어부(190)로 출력할 수 있다.
저장부(180)는 프로그램 및/또는 데이터를 저장하는 저장 매체(181)와, 프로그램 및/또는 데이터가 저장된 외부 저장 매체와 접속될 수 있는 접속 단자(182)를 포함할 수 있다. 프로그램은 특정한 기능을 수행하기 위하여 조합된 복수의 명령어들을 포함하며, 데이터는 프로그램에 포함된 복수의 명령어들에 의하여 처리 및/또는 가공될 수 있다. 또한, 프로그램 및/또는 데이터는 냉장고(100)의 동작과 직접적으로 관련된 시스템 프로그램 및/또는 시스템 데이터와, 사용자에게 편의 및 재미를 제공하는 어플리케이션 프로그램 및/또는 어플리케이션 데이터를 포함할 수 있다.
저장 매체(181)는 파일의 형태로 프로그램 및/또는 데이터를 저장할 수 있다. 예를 들어, 저장 매체(181)는 "*.exe" 또는 "*.jpg" 또는 "*.mpg" 등의 파일 형태로 프로그램 및/또는 데이터를 저장할 수 있다.
저장 매체(181)는 컨텐츠 데이터를 전기적으로 또는 자기적으로 또는 광학적으로 저장할 수 있다. 예를 들어, 저장 매체(181)는 반도체 소자 드라이브(solid stat driver, SSD) 또는 하드 디스크 드라이브(hard disc drive, HDD) 또는 광 디스크 드라이브(optical disc drive, ODD) 등을 포함할 수 있다.
저장 매체(181)는 제어부(190)의 로딩 명령에 응답하여 프로그램 및/또는 데이터를 제어부(190)로 출력할 수 있다.
접속 단자(182)는 프로그램 및/또는 데이터를 저장하는 외부 저장 매체와 연결될 수 있다. 예를 들어, 접속 단자(182)는 범용 직렬 버스(Universal Serial Bus, USB) 단자를 포함할 수 있으며, 외부 USB 저장 매체와 연결될 수 있다.
외부 저장 매체는 냉장고(100)의 저장 매체(181)와 마찬가지로 파일의 형태로 프로그램 및/또는 데이터를 저장할 수 있으며, 프로그램 및/또는 데이터를 전기적으로 또는 자기적으로 또는 광학적으로 저장할 수 있다. 또한, 외부 저장 매체는 제어부(190)의 로딩 명령에 응답하여 접속 단자(182)를 통하여 프로그램 및/또는 데이터를 제어부(190)로 출력할 수 있다.
이처럼, 저장부(180)는 프로그램 및/또는 데이터를 저장하고, 저장된 프로그램 및/또는 데이터를 제어부(190)로 출력할 수 있다. 다시 말해, 저장부(180)는 제어부(190)가 아래에서 설명되는 동작을 수행하기 위하여 실행되는 프로그램 및/또는 데이터를 저장할 수 있다.
제어부(190)는 저장부(180)에 저장된 프로그램 및/또는 데이터를 로딩하여 기억하는 메모리(192)와, 메모리(192)에 기억된 프로그램 및/또는 데이터에 따라 터치 스크린 디스플레이(130)의 사용자 입력 데이터 및 통신부(170)의 통신 데이터를 처리하는 프로세서(191)를 포함한다. 제어부(190)는 메모리(192)와 프로세서(191) 등의 하드웨어 뿐만 아니라, 메모리(192)에 기억되고 프로세서(191)에서 처리되는 프로그램 및/또는 데이터 등의 소프트웨어를 더 포함할 수 있다.
메모리(192)는 냉장고(100)에 포함된 구성들을 제어하기 위한 프로그램 및/또는 데이터를 기억하고, 냉장고(100)에 포함된 구성들을 제어하기 중에 발생하는 임시 데이터를 기억할 수 있다.
예를 들어, 메모리(192)는 온도 감지부(140)의 감지 결과에 기초하여 냉각부(160)의 동작을 제어하기 위한 프로그램 및/또는 데이터를 기억할 수 있으며, 온도 감지부(140)의 감지 결과를 임시로 기억할 수 있다. 메모리(192)는 터치 스크린 디스플레이(130)의 동작을 제어하기 위한 프로그램 및/또는 데이터를 기억할 수 있으며, 터치 스크린 디스플레이(130)에 표시된 영상과 터치 스크린 디스플레이(130)를 통하여 입력된 터치 입력(사용자 입력)을 임시로 기억할 수 있다. 메모리(192)는 도어(120)의 개폐에 기초하여 카메라(150)의 촬영 동작을 제어하기 위한 프로그램 및/또는 데이터를 기억할 수 있으며, 카메라(150)에 의하여 촬영된 영상을 임시로 기억할 수 있다. 메모리(192)는 통신부(170)의 통신 동작을 제어하기 위한 프로그램 및/또는 데이터를 기억할 수 있으며, 통신부(170)에 의하여 송수신되는 통신 데이터를 임시로 기억할 수 있다. 또한, 메모리(192)는 냉장고(100)가 아래에서 설명되는 동작을 수행하기 위한 프로그램 및/또는 데이터를 기억할 수 있다.
메모리(192)는 데이터를 장기간 저장하기 위한 롬(Read Only Memory), 플래시 메모리(flash memory) 등의 비휘발성 메모리와, 데이터를 일시적으로 기억하기 위한 S-램(Static Random Access Memory, S-RAM), D-램(Dynamic Random Access Memory) 등의 휘발성 메모리를 포함할 수 있다.
프로세서(191)는 메모리(192)에 기억/저장된 프로그램 및/또는 데이터에 따라 터치 스크린 디스플레이(130)의 터치 입력 및/또는 통신부(170)의 통신 데이터를 처리하고, 카메라(150), 터치 스크린 디스플레이(130)의 동작 및/또는 통신부(170)의 동작을 제어하기 위한 제어 신호를 생성할 수 있다.
예를 들어, 프로세서(191)는 온도 감지부(140)로부터 저장실(110)의 온도 정보를 수신하고, 저장실(110)의 온도 정보에 기초하여 냉각부(160)의 동작을 제어하기 위한 냉각 제어 신호를 생성할 수 있다. 프로세서(191)는 터치 스크린 디스플레이(130)로부터 사용자의 터치 입력을 수신하고, 사용자의 터치 입력에 응답하여 터치 스크린 디스플레이(130)에 영상을 표시하기 위한 표시 제어 신호 및 영상 데이터를 터치 스크린 디스플레이(130)에 전달할 수 있다. 프로세서(191)는 개방된 도어(120)가 폐쇄된 즉시 카메라(150)가 저장실(110)의 내부를 촬영하도록 촬영 제어 신호를 생성하고, 카메라(150)로부터 저장실(110)의 내부 영상을 수신할 수 있다. 프로세서(191)는 카메라(150)로부터 저장실(110)의 내부 영상의 수신에 응답하여 저장실(110)의 내부 영상을 서버 장치(200)로 전송하도록 통신부(170)를 제어하기 위한 통신 제어 신호를 생성할 수 있다. 프로세서(191)는 통신부(170)를 통하여 서버 장치(200)로부터 저장실(110)에 저장된 식품과 관련된 정보를 수신하는 것에 응답하여 식품 관련 정보를 터치 스크린 디스플레이(130)에 표시하기 위한 표시 제어 신호를 생성할 수 있다. 또한, 프로세서(191)는 냉장고(100)가 아래에서 설명되는 동작을 수행하기 위한 제어 신호를 생성할 수 있다.
프로세서(191)는 논리 연산 및 산술 연산 등을 수행하는 코어(core)와, 연산된 데이터를 기억하는 레지스터(register) 등을 포함할 수 있다.
이처럼 제어부(190)는 온도 감지부(140)를 통한 저장실(110)의 온도, 터치 스크린 디스플레이(130)를 통한 사용자의 터치 입력 및/또는 통신부(170)를 통한 통신 데이터에 기초하여 냉각부(160), 터치 스크린 디스플레이(130) 및 통신부(170)를 제어할 수 있다.
이상에서 설명된 바와 같이 제어부(190)는 냉장고(100)에 포함된 구성들을 모두 제어하는 프로세서 및 메모리를 포함할 수 있을 뿐만 아니라, 제어부(190)는 복수의 프로세서들과 복수의 메모리들을 포함할 수 있다. 예를 들어, 제어부(190)는 온도 감지부(140)/냉각부(160)의 동작을 제어하는 프로세서 및 메모리와 터치 스크린 디스플레이(130)의 동작을 제어하는 프로세서 및 메모리와 통신부(170)의 동작을 제어하는 프로세서와 메모리를 별도로 구비할 수 있다.
이하에서는, 식품 관리 시스템(1)에 포함된 서버 장치(200)의 구성 및 동작이 설명된다.
도 6은 일 실시예에 의한 서버 장치의 구성을 도시한다. 도 7은 일 실시예에 의한 서버 장치에 포함된 객체 식별 엔진의 구성을 도시한다. 도 8은 일 실시예에 의한 서버 장치에 저장된 데이터를 도시한다. 도 9은 일 실시예에 의한 서버 장치에 포함된 객체 식별을 위한 학습 엔진의 일 예를 도시한다. 도 10은 일 실시예에 의한 서버 장치의 객체 식별을 위한 기계 학습의 일 예를 도시한다.
도 6, 도 7, 도 8, 도 9 및 도 10을 참조하면, 서버 장치(200)는 입출력부(210)와, 통신부(220)와, 저장부(230)와, 처리부(240)를 포함할 수 있다.
입출력부(210)는 사용자 및/또는 관리자로부터 서버 장치(200)에 대한 제어 명령을 수신하는 입력 장치와, 서버 장치(200)의 동작 정보를 표시하는 표시 장치를 포함할 수 있다.
예를 들어, 입출력부(210)는 사용자 및/또는 관리자의 입력을 위한 각종 버튼이나 스위치, 페달(pedal), 키보드, 마우스, 트랙볼(track-ball), 각종 레버(lever), 핸들(handle)이나 스틱(stick) 등과 같은 하드웨어적인 입력 장치(211) 또는 사용자 및/또는 관리자의 입력을 위한 터치 패드(touch pad) 등과 같은 GUI(Graphical User interface), 즉 소프트웨어인 입력 장치(211)를 포함할 수도 있다. 또한, 입출력부(210)는 서버 장치(200)의 동작을 표시하기 위한 디스플레이(212)을 포함할 수 있다.
특히, 입출력부(210)는 서버 장치(200)와 분리되어 마련된 단말기를 포함할 수 있다. 예를 들어, 입출력부(210)는 키보드, 모니터 등을 포함하는 고정형 단말기 또는 키보드, 터치 패드, 디스플레이, 터치 스크린 디스플레이 등을 포함하는 휴대형 단말기를 포함할 수 있다.
통신부(220)는 냉장고(100) 및/또는 사용자 장치(300)와 데이터를 주고받을 수 있다. 예를 들어, 통신부(220)는 냉장고(100)로부터 저장실 내부 영상을 수신할 수 있으며, 저장실 내부 영상에 포함된 식품과 관련된 정보를 냉장고(100) 및/또는 사용자 장치(300)로 전송할 수 있다.
통신부(220)는 냉장고(100) 및/또는 사용자 장치(300)과 유선으로 데이터를 주고받는 유선 통신 모듈(221)과, 냉장고(100) 및/또는 사용자 장치(300)과 무선으로 데이터를 주고받는 무선 통신 모듈(222)을 포함할 수 있다. 유선 통신 모듈(221)과 무선 통신 모듈(222)의 구성 및 동작은 냉장고(100)의 그것과 동일할 수 있다.
이처럼, 통신부(220)는 냉장고(100) 및/또는 사용자 장치(300)과 데이터를 주고 받을 수 있으며, 냉장고(100) 및/또는 사용자 장치(300)로부터 수신된 데이터를 처리부(240)로 출력할 수 있다.
저장부(230)는 냉장고(100) 및/또는 사용자 장치(300)의 요청을 처리하기 위한 프로그램 및/또는 데이터를 저장할 수 있다.
예를 들어, 저장부(230)는 영상으로부터 객체를 식별하기 위한 객체 식별 엔진(231)과, 객체 식별 엔진(231)을 트레이닝하기 위한 트레이닝 데이터(232)와, 객체 식별 엔진(231)을 사용자의 수정에 따라 객체 식별 엔진(231)을 다시 트레이닝하기 위한 사용자 수정 데이터(233)를 포함할 수 있다.
객체 식별 엔진(231)은 지도에 의한 학습 또는 지도 없는 학습을 이용하여 영상으로부터 객체를 식별할 수 있다. 예를 들어, 사전의 트레이닝 또는 사후의 트레이닝에 의하여 객체 식별 엔진(231)은 영상의 포함된 식품을 식별하고, 식별된 식품의 명칭 등 식품 관련 정보를 출력할 수 있다.
객체 식별 엔진(231)은 관리자의 지도에 의하여 학습하는 지도 학습(supervised learning), 관리자의 지도 없이 학습하는 비지도 학습(unsupervised learning), 관리자의 지도 없이 보상에 의하여 학습하는 강화 학습(reinforcement learning) 등을 포함할 수 있다. 이해를 돕기 위하여 이하에서는 객체 식별 엔진(231)은 지도 학습을 포함하는 것을 가정한다.
객체 식별 엔진(231)은 영상을 통한 객체 식별을 위한 다양한 학습 알고리즘을 포함할 수 있다. 예를 들어, 객체 식별 엔진(231)은 뉴럴 네트워크(Neural Network) 알고리즘, 서포트 벡터 머신(Support Vector Machine, SVM) 알고리즘, 에이다부스트(AdaBoost) 알고리즘, 랜덤포레스트(random forest) 알고리즘 등을 포함할 수 있다.
객체 식별 엔진(231)은 트레이닝 데이터(232)에 의하여 사전에 트레이닝될 수 있다. 또한, 객체 식별 엔진(231)은 사용자 수정 데이터(233)에 의하여 사후에 재-트레이닝될 수 있다.
트레이닝 데이터(232)는 영상과, 영상에 대응되는 객체의 명칭을 포함할 수 있다. 예를 들어, 트레이닝 데이터(232)는 "사과의 영상"이 담긴 파일과, 이에 대응되는 "사과"라는 식품 명칭을 포함할 수 있다.
또한, 사용자 수정 데이터(233)는 객체의 영상과, 냉장고(100)의 사용자에 의하여 수정된 객체의 명칭을 포함할 수 있다. 예를 들어, 사용자 수정 데이터(233)는 "사과의 영상"이 담긴 파일과, 사용자에 의하여 수정된 "사과"라는 식품 명칭을 포함할 수 있다.
예를 들어, 도 7 및 도 8에 도시된 바와 같이, 저장부(230)는 식품 데이터 베이스(232a)와, 사용자 입력 데이터 베이스(233a)을 포함할 수 있다.
식품 데이터 베이스(232a)는 객체 식별 엔진(231)을 트레이닝하기 위한 트레이닝 데이터(232)를 포함할 수 있다. 식품 데이터 베이스(232a)의 트레이닝 데이터(232)는 설계자에 의하여 사전에 저장될 수 있으며, 초기에 객체 식별 엔진(231)은 식품 데이터 베이스(232a)의 트레이닝 데이터(232)에 의하여 트레이닝될 수 있다.
식품 데이터 베이스(232a)의 트레이닝 데이터(232)는 식품의 명칭과, 해당 식품의 이미지들을 포함할 수 있다. 예를 들어, 도 8의 (a)에 도시된 바와 같이 식품 데이터 베이스(232a)는 파인애플과, 파인애플을 나타내는 적어도 하나의 이미지(pineapple_1.jpg, pineapple_2.jpg)를 포함할 수 있으며, 포도와 포도를 나타내는 적어도 하나의 이미지(Grape_1.jpg, Grapge_2.jpg)를 포함할 수 있으며, 사과와 사과를 나타내는 적어도 하나의 이미지(Apple_1)를 포함할 수 있다.
사용자 입력 데이터 베이스(233a)는 사용자에 의하여 입력 또는 수정된 사용자 수정 데이터(233)을 포함할 수 있다. 사용자에 의하여 사용자 수정 데이터(233)가 입력되면, 객체 식별 엔진(231)은 사용자 수정 데이터(233)에 의하여 재트레이닝될 수 있다.
사용자 입력 데이터 베이스(233a)의 사용자 수정 데이터(233)는 사용자에 의하여 입력된 식품의 명칭과, 사용자에 의한 수정된 식품의 명칭에 대응하는 이미지들을 포함할 수 있다. 예를 들어, 도 8의 (b)에 도시된 바와 같이 사용자 입력 데이터 베이스(233a)는 사용자에 의하여 입력된 사과와, 수정된 사과에 대응하는 이미지(Apple_2.jpg)를 포함할 수 있다.
사용자 입력 데이터 베이스(233a)의 사용자 수정 데이터(233)를 이용하여 객체 식별 엔진(231)을 재트레이닝하기 위하여 저장부(230)는 객체 식별 엔진(231)은 트레이닝 데이터 생성부(231a)와, 객체 식별 엔진 학습부(231b)와, 객체 식별 엔진 생성부(231c)를 더 포함할 수 있다.
트레이닝 데이터 생성부(231a)는 기존의 트레이닝 데이터(232)와 사용자에 의하여 입력된 사용자 수정 데이터(233)를 이용하여 객체 식별 엔진(231)을 재트레이닝하기 위한 트레이닝 데이터를 생성할 수 있다. 예를 들어, 트레이닝 데이터 생성부(231a)는 트레이닝 데이터(232)와 사용자 수정 데이터(233)를 혼합할 수 있으며, 트레이닝 데이터(232)와 사용자 수정 데이터(233) 사이의 비율을 조절할 수 있다.
객체 식별 엔진 학습부(231b)는 트레이닝 데이터 생성부(231a)에 의하여 새롭게 생성된 트레이닝 데이터를 이용하여 객체 식별 엔진(231)을 트레이닝할 수 있다. 아래에서 설명하는 바와 같이, 객체 식별 엔진 학습부(231b)는 트레이닝 데이터 중에 식품 이미지를 객체 식별 엔진(231)에 입력하고, 식품 이미지에 대응하는 식품 명칭과 객체 식별 엔진(231)로부터 출력된 식품 명칭을 비교하고, 비교 결과에 따라 객체 식별 엔진(231)에 포함된 계수들을 조정할 수 있다.
객체 식별 엔진 생성부(231c)는 객체 식별 엔진 학습부(231b)에 의하여 트레이닝된 객체 식별 엔진(231)을 생성할 수 있다.
이처럼, 저장부(230)는 프로그램 및/또는 데이터를 저장하고, 저장된 프로그램 및/또는 데이터를 처리부(240)로 출력할 수 있다. 다시 말해, 저장부(230)는 처리부(240)가 아래에서 설명되는 동작을 수행하기 위하여 실행되는 프로그램 및/또는 데이터를 저장할 수 있다. 예를 들어, 저장부(230)는 객체 식별을 위한 객체 식별 엔진(231)학습 엔진을 트레이닝하기 위한 트레이닝 데이터(232) 및 사용자 수정 데이터(233)를 저장할 수 있다.
처리부(240)는 저장부(230)에 저장된 프로그램 및/또는 데이터를 로딩하여 기억하는 메모리(242)와, 메모리(242)에 기억된 프로그램 및/또는 데이터에 따라 냉장고(100) 및/또는 사용자 장치(300)로부터 수신된 데이터를 처리하는 프로세서(241)를 포함할 수 있다. 처리부(240)는 메모리(242)와 프로세서(241) 등의 하드웨어 뿐만 아니라, 메모리(242)에 기억되고 프로세서(241)에서 처리되는 프로그램 및/또는 데이터 등의 소프트웨어를 더 포함할 수 있다.
메모리(242)는 냉장고(100) 및/또는 사용자 장치(300)로부터 수신된 데이터를 처리하기 위한 프로그램 및/또는 데이터를 기억하고, 냉장고(100) 및/또는 사용자 장치(300)로부터 수신된 데이터를 처리하는 중에 발생하는 임시 데이터를 기억할 수 있다.
예를 들어, 메모리(242)는 트레이닝되지 아니한 객체 식별 엔진(231)을 기억할 수 있으며, 저장부(230)에 저장된 트레이닝 데이터(232)를 이용하여 트레이닝되지 아니한 객체 식별 엔진(231)을 트레이닝하기 위한 프로그램 및/또는 데이터를 기억할 수 있다. 메모리(242)는 트레이닝된 객체 식별 엔진(231)을 기억할 수 있으며, 트레이닝된 객체 식별 엔진(231)을 이용하여 영상 데이터로부터 영상의 객체를 식별하기 위한 프로그램 및/또는 데이터를 기억할 수 있다. 또한, 메모리(242)는 서버 장치(200)가 아래에서 설명되는 동작을 수행하기 위한 프로그램 및/또는 데이터를 기억할 수 있다.
메모리(242)는 데이터를 장기간 저장하기 위한 롬, 플래시 메모리 등의 비휘발성 메모리와, 데이터를 일시적으로 기억하기 위한 S-램, D-램 등의 휘발성 메모리를 포함할 수 있다.
프로세서(241)는 메모리(242)에 기억/저장된 프로그램 및/또는 데이터에 따라 냉장고(100) 및/또는 사용자 장치(300)로부터 수신된 데이터를 처리하고, 처리된 결과를 냉장고(100) 및/또는 사용자 장치(300)로 전송하기 위한 제어 신호를 생성할 수 있다.
예를 들어, 프로세서(241)는 메모리(242)에 저장된 트레이닝되지 않은 객체 식별 엔진(231)을 트레이닝할 수 있다. 구체적으로, 프로세서(241)는 트레이닝되지 않은 객체 식별 엔진(231)에 트레이닝 데이터(232)를 입력하고, 객체 식별 엔진(231)의 출력과 트레이닝 데이터(232)를 비교하여 객체 식별 엔진(231)을 갱신(트레이닝)할 수 있다.
또한, 프로세서(241)는 메모리(242)에 저장된 트레이닝된 객체 식별 엔진(231)을 이용하여 영상으로부터 객체를 식별할 수 있다. 구체적으로, 프로세서(241)는 트레이닝된 객체 식별 엔진(231)에 냉장고(100)로부터 전송된 저장실 내부 영상을 입력하고, 객체 식별 엔진(231)의 출력에 기초하여 저장실 내부 영상을 포함된 식품들을 식별할 수 있다. 다시 말해, 프로세서(241)는 트레이닝된 객체 식별 엔진(231)을 이용하여 냉장고(100)의 저장실(110)에 저장된 식품들을 식별하고, 식별된 식품들에 관한 정보를 출력할 수 있다. 또한, 프로세서(241)는 서버 장치(200)가 아래에서 설명되는 동작을 수행하기 위한 제어 신호를 생성할 수 있다.
프로세서(241)는 논리 연산 및 산술 연산 등을 수행하는 코어(core)와, 연산된 데이터를 기억하는 레지스터(register) 등을 포함할 수 있다.
이처럼, 처리부(240)는 트레이닝되지 않는 객체 식별 엔진(231)을 트레이닝할 수 있으며, 트레이닝된 객체 식별 엔진(231)을 이용하여 입력 영상으로부터 객체를 식별할 수 있다.
예를 들어, 객체 식별 엔진(231)은 도 9에 도시된 바와 같이 뉴럴 네트워크를 포함할 수 있다. 객체 식별 엔진(231)은 영상 데이터가 입력되는 입력 레이어(input)와, 식별된 객체에 관한 정보가 출력되는 출력 레이어(output)와, 입력 레이어(input)와 출력 레이어(output) 사이의 히든 레이어(hidden)를 포함할 수 있다.
입력 레이어(input)는 복수의 입력 노드들(i1, i2)을 포함하며, 복수 입력 노드(i1, i2) 각각에 영상 데이터가 입력될 수 있다. 예를 들어, 영상에 포함된 복수의 픽셀들의 휘도 값 및/또는 색상 값이 복수의 입력 노드들(i1, i2) 각각에 입력될 수 있다.
히든 레이어(hidden)는 복수의 히든 노드(h1, h2)를 포함하며, 복수의 히든 노드(h1, h2) 각각에는 가중치(w1, w2, w3, w4)가 적용된 복수의 입력 노드(i1, i2)의 출력 값의 합이 입력될 수 있다. 예를 들어, 처리부(240)는 제1 가중치(w1)가 적용된 제1 입력 노드(i1)의 출력 값과 제2 가중치(w2)가 적용된 제2 입력 노드(i2)의 출력 값의 합을 제1 히든 노드(h1)에 입력할 수 있다. 또한, 처리부(240)는 제3 가중치(w3)가 적용된 제1 입력 노드(i1)의 출력 값과 제4 가중치(w4)가 적용된 제2 입력 노드(i2)의 출력 값의 합을 제2 히든 노드(h2)에 입력할 수 있다.
처리부(240)는 히든 레이어(hidden)에 입력된 입력 값에 스텝 함수(step function) 또는 시그모이드 함수(sigmoid function)을 적용할 수 있다. 예를 들어, 처리부(240)는 제1 히든 노드(h1)의 입력 값을 시그모이드 함수에 입력하고, 시그모이드 함수의 출력 값을 출력 레이어(output)으로 출력할 수 있다. 또한, 처리부(240)는 제2 히든 노드(h2)의 입력 값을 시그모이드 함수에 입력하고, 시그모이드 함수의 출력 값에 가중치(w5, w6, w7, w8)를 적용하여 출력 레이어(output)으로 출력할 수 있다.
출력 레이어(output)는 복수의 출력 노드들(o1, o2)을 포함하며, 복수의 출력 노드(o1, o2) 각각에는 가중치(w5, w6, w7, w8)가 적용된 복수의 히든 노드(h1, h2)의 출력 값이 합이 입력될 수 있다. 예를 들어, 처리부(240)는 제5 가중치(w5)가 적용된 제1 히든 노드(h1)의 출력 값과 제6 가중치(w6)가 적용된 제2 히든 노드(h2)의 출력 값의 합을 제1 출력 노드(o1)에 입력할 수 있다. 또한, 처리부(240)는 제7 가중치(w7)가 적용된 제1 히든 노드(h1)의 출력 값과 제8 가중치(w8)가 적용된 제2 히든 노드(h2)의 출력 값의 합을 제2 출력 노드(o2)에 입력할 수 있다.
처리부(240)는 출력 레이어(output)에 입력된 입력 값에 스텝 함수 또는 시그모이드 함수를 적용할 수 있다. 예를 들어, 처리부(240)는 제1 출력 노드(o1)의 입력 값을 시그모이드 함수에 입력하고, 시그모이드 함수의 출력 값을 출력할 수 있다. 또한, 처리부(240)는 제2 출력 노드(o2)의 입력 값을 시그모이드 함수에 입력하고, 시그모이드 함수의 출력 값을 출력할 수 있다.
출력 레이어(output)에 포함된 복수의 출력 노드들(o1, o2) 각각에는 객체들이 할당되며, 복수의 출력 노드들(o1, o2)의 출력 값은 영상 이 복수의 출력 노드들(o1, o2)에 할당된 객체일 확률을 나타낼 수 있다. 처리부(240)는 복수의 출력 노드들(o1, o2)의 출력에 기초하여 영상에 포함된 객체를 식별할 수 있다.
뉴럴 네트워크 알고리즘에 의하면, 레이어들(input, hidden, output) 사이의 가중치(w1~w8)의 값에 따라 객체 식별 엔진(231)의 출력이 달라질 수 있다. 따라서, 처리부(240)는 객체를 정확하게 식별하기 위한 적절한 가중치(w1~w8)를 설정할 수 있으며, 트레이닝 데이터(232)를 이용하여 객체 식별 엔진(231)의 적절한 가중치(w1~w8)를 설정할 수 있다. 이처럼, 트레이닝 데이터(232)를 이용하여 객체 식별 엔진(231)을 트레이닝하는 것을 "학습"이라 한다.
서버 장치(200)는 도 10의 (a)에 도시된 바와 같이 트레이닝되지 않은 객체 식별 엔진(231)을 트레이닝할 수 있다.
서버 장치(200)는 트레이닝 데이터(232)를 획득한다(1010).
처리부(240)는 저장부(230)에 저장된 트레이닝 데이터(232)를 로딩할 수 있다. 트레이닝 데이터(232)는 복수의 영상들과, 복수의 영상들에 각각 대응되는 객체의 명칭을 포함할 수 있다.
또한, 서버 장치(200)는 광역 네트워크(WAN)에 연결된 다른 장치로부터 트레이닝 데이터(232)를 획득할 수 있다.
서버 장치(200)는 트레이닝 데이터(232)를 객체 식별 엔진(231)에 입력한다(1020).
처리부(240)는 트레이닝 데이터(232)의 영상을 구성하는 복수의 픽셀들의 휘도 값 및/또는 RGB 값(적색 서브 픽셀의 데이터, 녹색 서브 픽셀의 데이터 및 청색 서브 픽셀의 데이터)을 객체 식별 엔진(231)에 입력할 수 있다. 예를 들어, 처리부(240)는 뉴럴 네트워크의 입력 레이어(input)의 입력 노드들(i1, i2)에 트레이닝 데이터(232)의 영상을 구성하는 복수의 픽셀들의 RGB 값을 입력할 수 있다.
서버 장치(200)는 트레이닝 데이터(232)와 객체 식별 엔진(231)의 출력을 비교한다(1030).
처리부(240)는 객체 식별 엔진(231)을 이용하여 트레이닝 데이터(232)의 영상에 대한 객체 식별을 수행한다. 예를 들어, 처리부(240)는 뉴럴 네트워크의 입력 레이어(input)의 입력 노드들(i1, i2)의 출력에 가중치(w1-w4)를 적용하여 히든 레이어(hidden)의 히든 노드들(h1, h2)에 입력할 수 있다. 처리부(240)는 히든 노드들(h1, h2)의 입력을 시그모이드 함수에 입력하고, 시그모이드 함수의 출력에 가중치(w5-w8)를 적용하여 출력 레이어(ouput)의 출력 노드들(o1, o2)에 입력할 수 있다. 이후, 처리부(240)는 출력 노드들(o1, o2)의 입력을 시그모이드 함수에 입력하고, 시그모이드 함수의 출력을 출력할 수 있다.
처리부(240)는 객체 식별 엔진(231)의 출력에 기초하여 트레이닝 데이터(232)의 영상에 포함된 객체를 식별할 수 있다. 예를 들어, 뉴럴 네트워크의 복수의 출력 노드들(o1, o2) 각각은 영상에 포함된 객체가 복수의 출력 노드들(o1, o2) 각각에 할당된 객체들과 일치할 확률을 출력할 수 있으며, 처리부(240)는 뉴럴 네트워크로부터 출력되는 확률에 기초하여 트레이닝 데이터(232)의 영상에 포함된 객체를 식별할 수 있다.
또한, 처리부(240)는 객체 식별 엔진(231)의 출력에 의하여 식별된 객체와 트레이닝 데이터(232)에 의한 객체를 비교할 수 있다.
서버 장치(200)는 객체 식별 엔진(231)의 출력과 트레이닝 데이터(232)에 기초하여 객체 식별 엔진(231)을 갱신한다(1040).
처리부(240)는 객체 식별 엔진(231)의 출력에 의하여 식별된 객체와 트레이닝 데이터(232)에 의한 객체가 동일한지를 판단할 수 있다.
객체 식별 엔진(231)의 출력에 의하여 식별된 객체와 트레이닝 데이터(232)에 의한 객체가 동일하지 아니하면, 처리부(240)는 적절한 방법으로 객체 식별 엔진(231)을 갱신한다. 예를 들어, 트레이닝 데이터(232)에 의한 객체에 대한 뉴럴 네트워크로부터 출력된 확률이 기준 값보다 작으면, 처리부(240)는 뉴럴 네트워크를 구성하는 가중치(w1-w8)를 변경할 수 있다.
이후, 서버 장치(200)는 트레이닝 데이터(232)의 획득, 트레이닝 데이터(232)의 입력, 객체 식별 엔진(231)의 출력 평가 및 객체 식별 엔진(231)의 갱신을 반복할 수 있다. 이러한 트레이닝 동작에 의하여, 객체 식별 엔진(231)은 트레이닝 데이터(232)의 영상에 포함된 객체를 식별할 수 있도록 학습된다. 예를 들어, 트레이닝 동작에 의하여 트레이닝 데이터(232)의 영상에 포함된 객체를 식별할 수 있도록 뉴럴 네트워크의 가중치(w1-w8)가 설정된다.
또한, 서버 장치(200)는 도 10의 (b)에 도시된 바와 같이 트레이닝 된 객체 식별 엔진(231)을 이용하여 영상의 객체를 식별할 수 있다.
서버 장치(200)는 영상을 수신한다(1060).
처리부(240)는 통신부(220)를 통하여 외부 장치로부터 식별하고자 하는 객체를 포함하는 영상을 수신할 수 있다. 예를 들어, 처리부(240)는 통신부(220)를 통하여 냉장고(100)로부터 저장실(110)의 내부 영상을 수신할 수 있다.
서버 장치(200)는 수신 영상을 객체 식별 엔진(231)에 입력한다(1070).
처리부(240)는 영상을 구성하는 복수의 픽셀들의 휘도 값 및/또는 RGB 값(적색 서브 픽셀의 데이터, 녹색 서브 픽셀의 데이터 및 청색 서브 픽셀의 데이터)을 객체 식별 엔진(231)에 입력할 수 있다. 동작 1070은 동작 1020와 동일할 수 있다.
서버 장치(200)는 객체 식별을 수행한다(1080).
처리부(240)는 객체 식별 엔진(231)을 이용하여 수신 영상에 대한 객체 식별을 수생하고, 객체 식별 엔진(231)의 출력에 기초하여 트레이닝 데이터(232)의 영상에 포함된 객체를 식별할 수 있다. 동작 1080은 동작 1030과 동일할 수 있다.
서버 장치(200)는 객체 식별 결과를 출력한다(1090).
처리부(240)는 수신 영상의 객체에 관한 정보를 다른 장치로 전송하도록 통신부(220)를 제어할 수 있다. 예를 들어, 처리부(240)는 저장실(110)의 내부 영상으로부터 식별된 식품과 관련된 정보를 통신부(220)를 통하여 냉장고(100)로 전송할 수 있다.
서버 장치(200)는 냉장고(100)의 저장실(110)에 저장된 식품을 식별하기 위하여 특별한 방법을 이용하여 식품을 식별할 수 있다.
도 11는 일 실시예에 의한 서버 장치의 객체 식별 엔진의 구성을 도시한다. 도 12, 도 13 및 도 14는 일 실시예에 의한 서버 장치에 포함된 객체 식별 엔진이 식품을 식별하는 일 예를 도시한다.
도 11에 도시된 바와 같이 서버 장치(200)는 영역 검출 엔진(251)과 영역 분류 엔진(252)와 식별 엔진(253)을 포함할 수 있다. 영역 검출 엔진(251)과 영역 분류 엔진(252)와 식별 엔진(253)은 각각 하드웨어 또는 소프트웨어로 구현될 수 있다. 예를 들어, 영역 검출 엔진(251)과 영역 분류 엔진(252)와 식별 엔진(253)는 하드웨어로써 프로세서(241)의 일부이거나, 소프트웨어로써 저장부(230)에 저장된 프로그램의 일부일 수 있다.
영역 검출 엔진(251)은 냉장고(100)의 저장실(110) 내부를 촬영한 저장실 내부 영상(500)을 획득하고, 저장실 내부 영상(500)에서 식품들(501, 502, 503, 504)이 위치하는 식품 영역들(510, 520, 530)을 식별할 수 있다.
영역 검출 엔진(251)은 다양한 방법으로 식품이 위치하는 식품 영역들(510, 520, 530)을 식별할 수 있다.
예를 들어, 영역 검출 엔진(251)은 빈 저장실(110)의 내부 영상과 식품이 놓여진 저장실(110)의 내부 영상 사이의 차이에 기초하여 식품 영역들(510, 520, 530)과 배경 영역을 분리할 수 있다. 영역 검출 엔진(251)는 냉장고(100)로부터 저장실 내부 영상과 기준 영상(빈 저장실 내부 영상)을 함께 수신할 수 있으며, 영역 검출 엔진(251)은 저장실 내부 영상과 기준 영상의 차이로부터 식품이 위치하는 식품 영역들(510, 520, 530)과 저장실(110)의 배경이 되는 배경 영역을 분리할 수 있다.
다른 예로, 영역 검출 엔진(251)은 저장실 내부 영상으로부터 윤곽선을 추출하고(edge detection), 영상의 윤곽선에 기초하여 식품이 위치하는 식품 영역들(510, 520, 530)과 배경 영역을 분리할 수 있다.
다른 예로, 영역 검출 엔진(251)은 저장실 내부 영상으로부터 색상의 변화에 관한 정보를 추출하고, 저장실 내부 영상 내에서 색상이 급격하게 변화하는 경계선에 기초하여 식품이 위치하는 식품 영역들(510, 520, 530)과 배경 영역을 분리할 수 있다.
또한, 영역 검출 엔진(251)은 식품의 식별률을 향상시키기 위하여 식품 영역들(510, 520, 530)으로부터 선반(110c)의 영상 및/또는 식품의 반사 영상 등을 제거할 수 있다.
예를 들어, 영역 검출 엔진(251)은 도 12의 (a)에 도시된 바와 같은 저장실 내부 영상(500)을 획득할 수 있으며, 저장실 내부 영상(500)으로부터 도 12의 (b)에 도시된 바와 같이 식품들(501, 502, 503, 504)이 위치하는 식품 영역들(510, 520, 530)을 식별할 수 있다. 영역 검출 엔진(251)은 제1 식품 A (501)가 위치하는 제1 식품 영역(510)과, 제2 식품 B (502)가 위치하는 제2 식품 영역(520)과, 제3 식품 C (503)와 제4 식품 D (504)가 함께 위치하는 제3 식품 영역(530)을 식별할 수 있다.
영역 분류 엔진(252)는 영역 검출 엔진(251)에 의하여 식별된 식품 영역들(510, 520, 530)을 분류할 수 있다. 예를 들어, 영역 분류 엔진(252)는 식품 영역들(510, 520, 530) 각각으로부터 식품을 식별하기 위한 난이도(어려운 정도)에 따라 식품 영역들(510, 520, 530)을 분류할 수 있다.
영역 분류 엔진(252)은 식품 영역(510, 520, 530) 내에서 문자가 감지되는 문자 식별 영역과, 식품 영역(510, 520, 530) 내에서 단일의 식품이 감지되는 영상 식별 영역과, 식품 영역(510, 520, 530) 내에서 복수의 식품들이 감지되는 영상 분할 영역으로 분류할 수 있다.
영역 분류 엔진(252)는 문자 추출 알고리즘을 이용하여 식품 영역(510, 520, 530)으로부터 문자가 추출되면 문자 식별 영역으로 분류할 수 있다. 예를 들어, 통조림, 햄 등의 가공 식품은 식품을 식별할 수 있는 고유의 형상을 가지지 아니하며, 식품의 외관에 식품을 식별하기 위한 문자가 마련된다. 문자 식별 영역의 식품은 문자 식별에 의하여 식별될 수 있다.
영역 분류 엔진(252)는 문자 추출 알고리즘을 이용하여 문자가 추출되지 아니하면 식품 영역(510, 520, 530)에 대하여 에지 추출 및/또는 색상의 변화 추출 등을 이용하여 식품 영역(510, 520, 530)에 단일의 식품이 위치하는지 또는 복수의 식품들이 중첩되어 위치하는지를 판단할 수 있다.
특히, 식품 영역(510, 520, 530) 내에서 색상이 급격하게 변화하는 경계선이 발견되는 경우, 영역 분류 엔진(252)는 식품 영역(510, 520, 530) 내에 복수의 식품들이 서로 중첩되어 위치하는 영상 분할 영역으로 분류할 수 있다. 또한, 식품 영역(510, 520, 530) 내에서 색상이 급격하게 변화하는 경계선이 발견되지 아니한 경우, 영역 분류 엔진(252)는 식품 영역(510, 520, 530) 내에 단일의 식품이 위치하는 영상 인시 영역으로 분류할 수 있다.
예를 들어, 영역 분류 엔진(252)는 도 12의 (b)에 도시된 제1 식품 영역(510)으로부터 문자 추출 알고리즘을 이용하여 문자 "A"를 추출할 수 있다. 따라서, 영역 분류 엔진(252)는 제1 식품 영역(510)을 문자 식별 영역으로 분류할 수 있다.
또한, 영역 분류 엔진(252)는 도 12의 (b)에 도시된 제2 식품 영역(520)으로부터 문자를 추출할 수 없으며 제2 식품 영역(520) 내에서 색상이 급격하게 변화하는 경계선을 발견할 수 없다. 따라서, 영역 분류 엔진(252)는 제2 식품 영역(520)을 영상 식별 영역으로 분류할 수 있다.
또한, 영역 분류 엔진(252)는 도 12의 (b)에 도시된 제3 식품 영역(530) 내에서 색상이 급격하게 변환하는 경계선을 발견할 수 있다. 따라서, 영역 분류 엔진(252)는 제3 식품 영역(530)을 영상 분할 영역으로 분류할 수 있다.
식별 엔진(253)은 영역 분류 엔진(252)에 의하여 분류된 식품 영역들(510, 520, 530)에 대하여 서로 다른 식품 식별 방법(또는 식별 엔진)을 이용하여 식품 영역들(510, 520, 530)의 식품을 식별할 수 있다. 구체적으로, 식별 엔진(253)은 식품 영역들(510, 520, 530)에 대하여 문자 식별 엔진(253a), 영상 식별 엔진(253b) 및 영상 분할 엔진(253c) 중 적어도 하나를 이용하여 식품 영역들(510, 520, 530)의 식품을 식별할 수 있다.
예를 들어, 식별 엔진(253)은 문자 식별 엔진(253a)을 이용하여 제1 식품 영역(510)으로부터 도 12의 (c)에 도시된 바와 같이 문자 "A"를 식별할 수 있으며, 문자 "A"에 기초하여 제1 식품 영역(510)의 식품 A (501)을 식별할 수 있다.
또한, 식별 엔진(253)은 영상 식별 엔진(253b)을 이용하여 제2 식품 영역(520)으로부터 도 12의 (c)에 도시된 바와 같이 식품 B (502)를 식별할 수 있다. 구체적으로, 영상 식별 엔진(253b)은 제2 식품 영역(520)의 영상 그 자체로부터 식품 B (502)를 식별할 수 있다.
또한, 식별 엔진(253)은 영역 분할 엔진(253c)을 이용하여 서로 중첩된 식품의 영상을 분할할 수 있다. 예를 들어, 영역 분할 엔진(253c)은 영상 분할 영역을 복수의 식품이 구별되는 색공간으로 변환한 이후 적절한 임계값을 기준으로 복수의 분할된 식품 영역으로 분할 수 있다. 또한, 영역 분할 엔진(253c)은 영상 분할 영역 유사한 색상을 가지는 영역을 그룹화하여 복수의 분할된 식품 영역으로 분할할 수 있다.
영상 분할의 결과, 도 12의 (b)에 도시된 제3 식품 영역(530)은 도 12의 (c)에 도시된 바와 같이 제1 분할된 식품 영역(531)과 제2 분할된 식품 영역(532)으로 분할될 수 있다. 또한, 식별 엔진(253)은 영상 식별 엔진(253c)을 이용하여 제1 분할된 식품 영역(531)과 제2 분할된 식품 영역(532) 각각에 대하여 식품 식별을 수행할 수 있다. 식별 엔진(253)은 제1 분할된 식품 영역(531)으로부터 식품 C (503)를 식별할 수 있으며, 제2 분할된 식품 영역(532)으로부터 식품 D (504)를 식별할 수 있다.
이상에서 설명된 바와 같이, 영역 검출 엔진(251)은 빈 저장실(110)의 영상과 수신 영상을 비교하여, 식품들이 위치하는 식품 영역들(510, 520, 530)을 식별할 수 있다. 영역 분류 엔진(252)는 식품 영역들(510, 520, 530)의 문자 포함 여부 및/또는 색상 경계 포함 여부에 기초하여 식품 영역들(510, 520, 530)을 분류할 수 있다.
식별 엔진(253)은 서로 다른 그룹으로 분류된 식품 영역들(510, 520, 530)에 대하여 서로 다른 식별 알고리즘을 이용하여 식품을 식별할 수 있다. 예를 들어, 식별 엔진(253)은 문자를 포함하는 식품 영역에 대하여 문자 식별 엔진(253a)을 이용하여 식품 영역의 식품을 식별하고, 색상 경계를 포함하는 식품 영역에 대하여 영역 분할 엔진(253c)을 이용하여 식품 영역을 분할할 수 있다. 또한, 식별 엔진(253)은 영상 식별 엔진(253b)을 이용하여 영상으로부터 식품을 식별할 수 있다.
또한, 도 13에 도시된 바와 같이 서버 장치(200)는 저장실 내부 영상(400)으로부터 식품들(410, 402, 403, 404)에 관한 정보를 포함하는 저장실 내부 영상(400)을 출력할 수 있다.
영역 검출 엔진(251)은 저장실 내부 영상(400)을 획득할 수 있으며, 저장실 내부 영역(400)으로부터 제1 식품(401)가 위치하는 제1 식품 영역(410)과, 제2 식품(402)가 위치하는 제2 식품 영역(420)과, 제3 식품(403)와 제4 식품(404)가 함께 위치하는 제3 식품 영역(430)을 식별할 수 있다.
영역 분류 엔진(252)는 문자가 추출되는 제1 식품 영역(410)을 문자 식별 영역으로 분류할 수 있으며, 문자가 추출되지 않는 제2 식품 영역(420)을 영상 식별 영역으로 분류할 수 있으며, 영상이 급격하게 변화하는 경계선을 포함하는 제3 식품 영역(430)을 영상 분할 영역으로 분류할 수 있다.
식별 엔진(253)의 문자 식별 엔진(253a)은 문자 식별을 이용하여 제1 식품 영역(410)의 제1 식품(401)을 식별할 수 있으며, 식별 엔진(253)의 영상 식별 엔진(253b)은 영상 식별을 이용하여 제2 식품 영역(420)의 제2 식품(402)을 식별할 수 있다. 식별 엔진(253)의 영역 분할 엔진(253c)은 제3 식품 영역(430)을 제3 식품(403)의 영상과 제4 식품(404)의 영상을 분할할 수 있으며, 문자 식별 엔진(253a) 및/또는 영상 식별 엔진(253b)은 제3 식품(403)의 영상과 제4 식품(404)의 영상으로부터 각각 제3 식품(403)과 제4 식품(404)를 식별할 수 있다.
식별 엔진(253)은 제1 식품 영역(410)에 제1 식품(401)을 태그할 수 있으며, 제2 식품 영역(420)에 제2 식품(402)을 태그할 수 있으며, 제3 식품 영역(430)에 제3 식품(403) 및 제4 식품(404)를 태그할 수 있다. 또한, 식별 엔진(253)은 제1 식품(401)이 태그된 제1 식품 영역(410)과 제2 식품(402)가 태그된 제2 식품 영역(420)과 제3 식품(403) 및 제4 식품(404)이 태그된 제3 식품 영역(430)을 포함하는 저장실 내부 영상(400)을 출력할 수 있다.
또한, 도 14에 도시된 바와 같이 서버 장치(200)는 사전에 식품들(401, 402, 403, 404)이 식별된 저장실 내부 영상(400)을 이용하여 새로운 저장실 내부 영상(450)에 추가된 식품(461)을 식별할 수 있다.
영역 검출 엔진(251)은 새로운 저장실 내부 영상(450)을 획득할 수 있으며, 기존 저장실 내부 영역(400)과 새로운 저장실 내부 영상(450) 사이의 차이를 기초로 제5 식품(461)이 위치하는 제4 식품 영역(460)을 식별할 수 있다.
영역 분류 엔진(252)은 제4 식품 영역(460)을 문자 식별 영역, 영상 식별 영역 및 영상 분할 영역 중 어느 하나로 분류할 수 있다.
식별 엔진(253)은 제4 식품 영역(460)의 분류(문자 식별 영역인지, 영상 식별 영역인지, 영상 분할 영역인지)에 따라 제4 식품 영역(460)의 제5 식품(461)을 식별할 수 있다.
식별 엔진(253)은 제4 식품 영역(460)에 제5 식품(461)을 태그할 수 있다. 또한, 식품 식별 엔지(253)은 기존 저장실 내부 영상(400)에 제5 식품(461)이 태그된 제4 식품 영역(460)을 조합하여, 제5 식품(461)이 추가로 태그된 새로운 저장실 내부 영상(450)을 출력할 수 있다.
도 15는 일 실시예에 의한 서버 장치의 객체 식별 엔진의 다른 일 예를 도시한다. 도 16 및 17은 일 실시예에 의한 서버 장치에 포함된 객체 식별 엔진이 객체를 식별하는 다른 일 예를 도시한다.
도 15에 도시된 바와 같이, 서버 장치(200)는 영상 샘플링 엔진(261)과 영상 식별 엔진(262)을 포함할 수 있다. 영상 샘플링 엔진(261)과 영상 식별 엔진(262)은 각각 하드웨어 또는 소프트웨어로 구현될 수 있다. 예를 들어, 영상 샘플링 엔진(261)과 영상 식별 엔진(262)은 하드웨어로써 프로세서(241)의 일부이거나, 소프트웨어로써 저장부(230)에 저장된 프로그램의 일부일 수 있다.
영상 샘플링 엔진(261)은 냉장고(100)의 저장실(110) 내부를 촬영한 저장실 내부 영상(500)을 획득하고, 저장실 내부 영상(500)에서 복수의 샘플 영상들(541 내지 546)을 추출할 수 있다.
영상 샘플링 엔진(261)은 다양한 방법으로 샘플 영상들(541 내지 546)을 추출할 수 있다.
영상 샘플링 엔진(261)은 임의의 위치(x축 좌표, y축 좌표)에서 임의의 크기(가로 길이, 세로 길이)를 가지는 샘플 영상들(541 내지 546)을 추출할 수 있다. 영상 샘플링 엔진(261)은 랜덤 함수를 포함할 수 있으며, 랜덤 함수를 이용하여 샘플 영상의 x축 좌표(x), y축 좌표(y), 가로 길이(h) 및 세로 길이(v)를 선택할 수 있다. 영상 샘플링 엔진(261)은 선택된 좌표(x, y)와 크기(h, v)를 가지는 영상을 저장실 내부 영상(500)으로부터 추출할 수 있다.
예를 들어, 도 16에 도시된 바와 같이, 영상 샘플링 엔진(261)은 임의의 제1 좌표(x1, y1)와 임의의 제1 크기(h1, v1)을 선택할 수 있으며, 제1 좌표(x1, y1)과 제1 크기(h1, v1)을 가지는 제1 샘플 영상(541)을 저장실 내부 영상(500)으로부터 추출할 수 있다. 또한, 영상 샘플링 엔진(261)은 제2 좌표(x2, y2)와 제2 크기(h2, v2)을 가지는 제2 샘플 영상(542), 제3 좌표(x3, y3)와 제3 크기(h3, v3)을 가지는 제3 샘플 영상(543), 제4 좌표(x4, y4)와 제4 크기(h4, v4)을 가지는 제4 샘플 영상(542), ... 및 제n 좌표와 제n 크기를 가지는 제n 샘플 영상을 추출할 수 있다. 샘플 영상들의 개수는 제한되지 아니한다.
또한, 영상 샘플링 엔진(261)은 미리 정해진 위치에서 미리 정해진 크기를 가지는 복수의 샘플 영상들을 추출할 수 있다. 예를 들어, 영상 샘플링 엔진(261)은 저장실 내부 영상(500)을 미리 정해진 크기로 구획할 수 있으며, 저장실 내부 영상(500)으로부터 구획된 샘플 영상들을 획득할 수 있다. 다른 예로, 영상 샘플링 엔진(261)은 저장실 내부 영상(500)으로부터 미리 정해진 크기를 가지는 샘플 영상들을 미리 정해진 간격으로 획득할 수 있다.
또한, 영상 샘플링 엔진(261)은 임의의 위치에서 미리 정해진 크기를 가지는 복수의 샘플 영상들을 추출할 수 있다.
영상 식별 엔진(262)은 영상 샘플링 엔진(261)에 의하여 추출된 복수의 샘플 영상들(541 내지 546)에 기초하여 저장실 내부 영상(500)에 포함된 식품들을 식별할 수 있다.
복수의 샘플 영상들(541 내지 546) 각각은 영상 식별 엔진(262)에 제공되며, 영상 식별 엔진(262)은.복수의 샘플 영상들(541 내지 546) 각각에 포함된 식품들을 식별할 수 있다. 영상 식별 엔진(262)은 예를 들어 뉴럴 네트워크를 포함할 수 있다. 뉴럴 네트워크의 복수의 입력 노드들(i1, i2) 각각에 샘플 영상에 포함된 복수의 픽셀들의 휘도 값 및/또는 색상 값이 입력되고, 복수의 출력 노드들(o1, o2)은 샘플 영상에 포함된 식품이 미리 정해진 복수의 식품들 중에 어느 식품에 해당하는지를 나타내는 수치(예를 들어, 확률)을 출력할 수 있다.
영상 식별 엔진(262)은 뉴럴 네트워크로부터 출력된 수치에 기초하여 제1 식별 결과와 제2 식별 결과를 출력할 수 있다. 예를 들어, 영상 식별 엔진(262)은 뉴럴 네트워크로부터 출력된 수치가 가장 큰 식품을 제1 식별 결과로 선택하고, 뉴럴 네트워크로부터 출력된 수치가 2번째로 큰 식품을 제2 식별 결과로 선택할 수 있다.
영상 식별 엔진(262)은 샘플 영상을 나타내는 좌표 및 크기와, 샘플 영상의 제1 식별 결과와, 샘플 영상의 제2 식별 결과를 포함하는 식별 데이터를 출력할 수 있다. 예를 들어, 도 17에 도시된 바와 같이 식별 데이터는 제1 샘플 영상(541)의 좌표(x1, y1)와 크기(h1, v1)와 제1 식별 결과와 제2 식별 결과, 제2 샘플 영상(542)의 좌표(x2, y2)와 크기(h2, v2)와 제1 식별 결과와 제2 식별 결과, 제3 샘플 영상(543)의 좌표(x3, y3)와 크기(h3, v3)와 제1 식별 결과와 제2 식별 결과, ... 및 제n 샘플 영상의 좌표와 크기와 제1 식별 결과와 제2 식별 결과를 포함할 수 있다.
이하에서는 냉장고(100)와 서버 장치(200)와 사용자 장치(300)를 포함하는 식품 관리 시스템(1)의 동작이 설명된다.
도 18은 일 실시예에 의한 식품 관리 시스템의 식품 식별 방법의 일 예를 도시한다. 도 19은 도 18에 도시된 식품 식별 방법에 의하여 촬영된 저장실 내부 영상을 도시한다. 도 20는 도 18에 도시된 식품 식별 방법에 의하여 식품 영역을 식별하는 일 예를 도시한다. 도 21은 도 18에 도시된 식품 식별 방법에 의하여 식품 관련 정보를 표시하는 일 예를 도시한다. 도 22는 도 18에 도시된 식품 식별 방법에 의하여 식품 관련 정보를 표시하는 다른 일 예를 도시한다.
도 18, 도 19, 도 20, 도 21 및 도 22와 함께, 식품 관리 시스템(1)의 식품 식별 방법(1100)이 설명된다.
냉장고(100)는 저장실(110)의 내부 영상을 획득한다(1110).
냉장고(100)는 카메라(150)를 통하여 저장실(110)의 내부를 촬영하고, 저장실(110)의 내부 영상을 획득할 수 있다.
제어부(190)는 개방된 도어(120)의 폐쇄가 감지되면 저장실(110)의 내부를 촬영하도록 카메라(150)를 제어할 수 있다. 카메라(150)는 선반(110c)에 의하여 구획된 복수의 공간을 촬영할 수 있다. 예를 들어, 카메라(150)의 제1 이미저(151)는 상부 저장실(111)의 제1 저장 공간(111a)을 촬영하고, 제2 이미저(151)는 제2 저장 공간(111b)을 촬영하고, 제3 이미저(151)는 제3 저장 공간(111c)을 촬영할 수 있다. 제어부(190)는 카메라(150)로부터 저장실(110)의 내부 영상을 획득할 수 있다.
다른 예로, 제어부(190)는 터치 스크린 디스플레이(130)를 통한 사용자 입력에 응답하여 저장실(110)의 내부를 촬영하도록 카메라(150)를 제어할 수 있으며, 카메라(150)로부터 저장실(110)의 내부 영상을 획득할 수 있다.
또한, 제어부(190)는 도 19에 도시된 바와 같이 카메라(150)에 의하여 촬영된 저장실(110)의 내부 영상을 터치 스크린 디스플레이(130)에 표시할 수 있다. 예를 들어, 제어부(190)는 제1 저장 공간(111a)의 내부 영상(610)과, 제2 저장 공간(111b)의 내부 영상(620)과, 제3 저장 공간(111c)의 내부 영상(630)을 각각 터치 스크린 디스플레이(130)에 표시할 수 있다.
냉장고(100)는 저장실(110)의 내부 영상을 서버 장치(200)로 전송하며, 서버 장치(200)는 냉장고(100)로부터 저장실(110)의 내부 영상을 수신한다(1120).
냉장고(100)는 통신망(NET)을 통하여 저장실(110)의 내부 영상을 서버 장치(200)로 전송할 수 있다. 제어부(190)는 저장실(110)의 내부 영상을 서버 장치(200)로 전송하도록 통신부(170)를 제어할 수 있다.
서버 장치(200)는 통신망(NET)을 통하여 냉장고(100)로부터 저장실(110)의 내부 영상을 수신할 수 있다. 처리부(240)는 통신부(220)를 통하여 저장실(110)의 내부 영상을 획득할 수 있다.
서버 장치(200)는 저장실(110)의 내부 영상에 포함된 식품을 식별한다(1130).
서버 장치(200)는 트레이닝된 객체 식별 엔진(231)을 이용하여 저장실(110)의 내부 영상에 포함된 식품을 식별할 수 있다.
처리부(240)는 저장실 내부 영상(620)에서 식품들이 위치하는 식품 영역들(621, 622, 623)을 식별할 수 있다. 예를 들어, 처리부(240)는 도 20에 도시된 바와 같이 빈 저장실(110)의 내부 영상(602)과 식품이 놓여진 저장실(110)의 내부 영상(620) 사이의 차이에 기초하여 식품 영역들(621, 622, 623)과 배경 영역을 분리할 수 있다. 처리부(240)는 파인애플이 위치하는 제1 식품 영역(621)과, 통조림이 위치하는 제2 식품 영역(622)과, 포도와 사과가 중첩되어 위치하는 제3 식품 영역(623)을 식별할 수 있다.
처리부(240)는 식품 영역들(621, 622, 623)을 분류할 수 있다. 예를 들어, 처리부(240)는 식품 영역들(621, 622, 623)을 식품 영역 내에서 문자가 감지되는 문자 식별 영역과, 식품 영역 내에서 단일의 식품이 감지되는 영상 식별 영역과, 식품 영역 내에서 복수의 식품들이 감지되는 영상 분할 영역으로 분류할 수 있다.
처리부(240)는 파인애플이 위치하는 제1 식품 영역(621)을 영상 식별 영역으로 분류할 수 있으며, 통조림이 위치하는 제2 식품 영역(622)을 문자 식별 영역으로 분류할 수 있으며, 포도와 사과가 중첩되어 위치하는 제3 식품 영역(623)을 영상 분할 영역으로 분류할 수 있다.
처리부(240)는 제1 식품 영역(621)에 대하여 영상 식별 알고리즘을 이용하여 파인애플을 식별할 수 있으며, 제2 식품 영역(622)에 대하여 문자 식별 알고리즘을 이용하여 통조림을 식별할 수 있다. 또한, 처리부(240)는 제3 식품 영역(623)으로부터 포도의 영상과 사과의 영상을 분리하고, 포도의 영상과 사과의 영상 각각에 대하여 영상 식별 알고리즘을 이용하여 포도와 사과를 식별할 수 있다.
예를 들어, 처리부(240)는 뉴럴 네트워크를 이용한 객체 식별 엔진(231)을 포함할 수 있다. 처리부(240)는 뉴럴 네트워크의 복수의 입력 노드들(i1, i2) 각각에 영상에 포함된 복수의 픽셀들의 휘도 값 및/또는 색상 값을 입력할 수 있다. 처리부(240)는 복수의 입력 노드들(i1, i2)의 값에 가중치(w1-w4)에 적용하여 복수의 히든 노드들(h1, h2)에 출력할 수 있다. 처리부(240)는 복수의 히든 노드들(h1, h2)에 입력된 값을 시그모이드 함수에 입력하고, 시그모이드 함수의 출력 값에 가중치(w5-w8)를 적용하여 복수의 출력 노드들(o1, o2)에 출력할 수 있다. 처리부(240)는 복수의 출력 노드들(o1, o2)에 입력된 값을 시그모이드 함수에 입력하고, 시그모이드 함수의 출력 값이 뉴럴 네트워크의 출력이 된다. 이때, 복수의 출력 노드들(o1, o2) 각각에는 식품들이 할당되며, 복수의 출력 노드들(o1, o2)의 출력 값은 영상이 복수의 출력 노드들(o1, o2)에 할당된 객체일 확률을 나타낼 수 있다. 처리부(240)는 복수의 출력 노드들(o1, o2)의 출력에 기초하여 식품을 식별할 수 있다.
처리부(240)는 각각의 식품 영역들(621, 622, 623)로부터 식별된 식품과 관련된 정보(식품 관련 정보)를 수집할 수 있다. 예를 들어, 식품 관련 정보는 식품의 영상(예를 들어, 저장실 내부 영상에서 식품 영상의 위치), 식품의 명칭, 카테고리 및 냉장(또는 냉동) 저장 기한 등을 포함할 수 있다.
또한, 처리부(240)는 각각의 식품 영역들(621, 622, 623)로부터 식별된 식품과 관련된 정보를 통합할 수 있다.
서버 장치(200)는 식품 관련 정보를 냉장고(100)로 전송하고, 냉장고(100)는 서버 장치(200)로부터 식품 관련 정보를 수신한다(1140).
서버 장치(200)는 통신망(NET)을 통하여 식품 관련 정보를 냉장고(100)로 전송할 수 있다. 처리부(240)는 식품 관련 정보를 냉장고(100)로 전송하도록 통신부(220)를 제어할 수 있다.
냉장고(100)는 통신망(NET)을 통하여 서버 장치(200)로부터 식품 관련 정보를 수신할 수 있다. 제어부(190)는 통신부(170)를 통하여 식품 관련 정보를 획득할 수 있다.
냉장고(100)는 서버 장치(200)로부터 수신한 식품 관련 정보를 표시한다(1150).
제어부(190)는 서버 장치(200)로부터 수신된 식품 관련 정보를 터치 스크린 디스플레이(130)에 표시할 수 있다.
예를 들어, 제어부(190)는 저장실(110)의 내부 영상(610, 620, 630) 상에 식품 관련 정보(621a, 622a, 623a, 623b)를 추가로 표시할 수 있다. 도 21에 도시된 바와 같이, 제어부(190)는 저장실(110)의 내부 영상(610, 620, 630) 상에 파인애플에 관한 정보(621a)와, 통조림에 관한 정보(622a)와, 포도에 관한 정보(623a)와, 사과에 관한 정보(623b)를 표시할 수 있다. 예를 들어, 제어부(190)는 저장실(110)의 내부 영상(610, 620, 630) 상에 파인애플의 명칭, 통조림의 명칭, 포도의 명칭, 사과의 명칭을 표시할 수 있다.
다른 예로, 제어부(190)는 저장실(110)에 저장된 식품 정보의 리스트(640)를 표시할 수 있다. 도 22에 도시된 바와 같이 제어부(190)는 파인애플에 관한 정보(641)와, 통조림에 관한 정보(642)와, 포도에 관한 정보(643)와, 사과에 관한 정보(644)를 표시할 수 있다. 제어부(190)는 식품의 영상(예를 들어, 저장실 내부 영상에서 분리된 식품 영역의 영상), 식품의 명칭, 카테고리 및 냉장(또는 냉동) 저장 기한 등을 터치 스크린 디스플레이(130)에 표시할 수 있다. 예를 들어, 도 22에 도시된 바와 같이 제어부(190)는 저장실(110)의 내부 영상에 포함된 파인애플의 영상(641a)과 파인애플의 명칭(641b)과 파인애플의 저장 기한(641c)을 표시할 수 있다.
서버 장치(200)는 식품 관련 정보를 사용자 장치(300)로 전송하고, 사용자 장치(300)는 서버 장치(200)로부터 식품 관련 정보를 수신한다(1160).
사용자 장치(300)는 서버 장치(200)로부터 수신한 식품 관련 정보를 표시한다(1170).
이상에서 설명된 바와 같이, 서버 장치(200)는 냉장고(100)로부터 저장된 식품의 영상을 수신하고, 객체 식별 엔진(231)을 이용하여 냉장고(100)에 저장된 식품을 식별할 수 있다. 또한, 냉장고(100)는 서버 장치(200)로부터 수신된 식품 관련 정보를 표시할 수 있다. 다시 말해, 냉장고(100)는 사용자의 입력 없이 저장실(110)에 저장된 식품과 관련된 정보를 표시할 수 있다.
도 23은 일 실시예에 의한 식품 관리 시스템의 식품 식별 방법의 다른 일 예를 도시한다. 도 24는 도 23에 도시된 식품 식별 방법에 의하여 사용자의 터치 입력을 수신하는 일 예를 도시한다. 도 25는 도 23에 도시된 식품 식별 방법에 의하여 샘플 영상을 추출하는 일 예를 도시한다. 도 26은 도 23에 도시된 식품 식별 방법에 의하여 식품 관련 정보를 표시하는 일 예를 도시한다. 도 27은 도 23에 도시된 식품 식별 방법에 의하여 식품 관련 정보를 표시하는 다른 일 예를 도시한다.
도 23, 도 24, 도 25, 도 26 및 도 27와 함께, 식품 관리 시스템(1)의 식품 식별 방법(2100)이 설명된다.
냉장고(100)는 저장실(110)의 내부 영상을 획득한다(2110).
냉장고(100)는 카메라(150)를 통하여 저장실(110)의 내부를 촬영하고, 저장실(110)의 내부 영상을 획득할 수 있다.
동작 2110은 도 18에 도시된 동작 1110과 동일할 수 있다.
냉장고(100)는 저장실(110)의 내부 영상을 서버 장치(200)로 전송하며, 서버 장치(200)는 냉장고(100)로부터 저장실(110)의 내부 영상을 수신한다(2120).
동작 2120은 도 18에 도시된 동작 1120과 동일할 수 있다.
서버 장치(200)는 저장실(110)의 내부 영상을 저장한다(2130).
처리부(240)는 냉장고(100)로부터 수신된 저장실(110)의 내부 영상을 저장부(230)에 저장할 수 있다. 예를 들어, 처리부(240)는 미리 정해진 개수의 내부 영상을 저장할 수 있다. 처리부(240)는 저장실(110)의 내부 영상을 냉장고(100)로부터 수신된 순서에 따라 정렬하고, 새로운 내부 영상이 수신되는 것에 응답하여 가장 오래 전에 수신된 내부 영상을 삭제할 수 있다.
이후, 냉장고(100)는 사용자로부터 사용자의 터치 입력을 수신한다(2140).
냉장고(100)는 카메라(150)에 의하여 촬영된 저장실(110)의 내부 영상을 터치 스크린 디스플레이(130)에 표시할 수 있다.
제어부(190)는 제1 저장 공간(111a)의 내부 영상(610)과, 제2 저장 공간(111b)의 내부 영상(620)과, 제3 저장 공간(111c)의 내부 영상(630)을 표시하도록 터치 스크린 디스플레이(130)를 제어할 수 있다.
사용자는 저장실(110)의 내부 영상이 표시된 터치 스크린 디스플레이(130)를 터치할 수 있다. 예를 들어, 사용자는, 새롭게 수납한 식품의 보관 기한을 설정하기 위하여, 식품의 영상에 대응하는 위치에서 터치 스크린 디스플레이(130)를 터치할 수 있다. 예를 들어, 사용자는 도 24에 도시된 바와 같이 제2 저장 공간(111b)의 내부 영상(620)의 파인애플 영상의 내부 또는 파인애플 영상의 주변을 터치할 수 있다.
터치 스크린 디스플레이(130)는 사용자의 터치 입력의 터치 좌표를 감지하고, 터치 좌표를 제어부(190)에 제공할 수 있다. 제어부(190)는 터치 스크린 디스플레이(130)로부터 터치 입력의 터치 좌표를 수신할 수 있다.
사용자의 터치 입력을 수신한 냉장고(100)는 서버 장치(200)로 식품 식별 요청을 전송하며, 서버 장치(200)는 냉장고(100)로부터 식품 식별 요청을 수신한다(2150).
냉장고(100)는 통신망(NET)을 통하여 식품 식별 요청을 서버 장치(200)로 전송할 수 있다. 제어부(190)는, 사용자의 터치 입력을 수신한 것에 응답하여, 서버 장치(200)로 식품 식별 요청을 전송하도록 통신부(170)를 제어할 수 있다.
서버 장치(200)는 통신망(NET)을 통하여 냉장고(100)로부터 식품 식별 요청을 수신할 수 있다. 처리부(240)는 통신부(220)를 통하여 식품 식별 요청을 수신할 수 있다.
서버 장치(200)는 저장실(110)의 내부 영상에 포함된 식품을 식별한다(1130).
서버 장치(200)는 트레이닝된 객체 식별 엔진(231)을 이용하여 저장실(110)의 내부 영상에 포함된 식품을 식별할 수 있다.
처리부(240)는 저장실 내부 영상(620)에서 복수의 샘플 영상들(651 내지 657)을 추출할 수 있다. 예를 들어, 처리부(240)는 임의의 위치(x축 좌표, y축 좌표)에서 임의의 크기(가로 길이, 세로 길이)를 가지는 샘플 영상들(651 내지 657)을 추출할 수 있다. 처리부(240)는 랜덤 함수를 이용하여 샘플 영상의 x축 좌표(x), y축 좌표(y), 가로 길이(h) 및 세로 길이(v)를 선택하고, 선택된 좌표(x, y)와 크기(h, v)를 가지는 영상을 저장실 내부 영상(620)으로부터 추출할 수 있다. 도 25에 도시된 바와 같이, 처리부(240)는 저장실 내부 영상(620)으로부터 제1 샘플 영상(651)과 제2 샘플 영상(652)과 제3 샘플 영상(653)과 ... 제n 샘플 영상을 추출할 수 있다. 샘플 영상들의 개수는 제한되지 아니한다.
처리부(240)는 트레이닝된 객체 식별 엔진(231)을 이용하여 복수의 샘플 영상들(651 내지 657)에 기초하여 저장실 내부 영상(620)에 포함된 식품들을 식별할 수 있다. 처리부(240)는 뉴럴 네트워크를 이용한 영상 식별 알고리즘을 이용하여 복수의 샘플 영상들(651 내지 657) 각각에 포함된 식품들을 식별할 수 있다.
예를 들어, 뉴럴 네트워크를 이용한 영상 식별 알고리즘은 샘플 영상에 포함된 식품이 미리 정해진 복수의 식품들 중에 어느 식품에 해당하는지를 나타내는 수치(예를 들어, 확률)을 출력할 수 있다. 처리부(240)는 뉴럴 네트워크로부터 출력된 수치가 가장 큰 식품을 제1 후보 식품으로 선택하고, 뉴럴 네트워크로부터 출력된 수치가 2번째로 큰 식품을 제2 후보 식품으로 선택할 수 있다.
예를 들어, 처리부(240)는 제2 샘플 영상(652)의 제1 후보 식품으로써 파인 애플을 출력하고, 제2 샘플 영상(652)의 제2 후보 식품으로써 당근을 출력할 수 있다. 또한, 처리부(240)는 제7 샘플 영상(657)의 제1 후보 식품으로써 사과를 출력하고, 제7 샘플 영상(657)의 제2 후보 식품으로써 양파를 출력할 수 있다.
처리부(240)는 복수의 샘플 영상들(651 내지 657)을 나타내는 좌표 및 크기와, 복수의 샘플 영상들(651 내지 657)의 제1 후보 식품과, 복수의 샘플 영상들(651 내지 657)의 제2 후보 식품들을 포함하는 식별 데이터를 출력할 수 있다.
서버 장치(200)는 식별 데이터를 냉장고(100)로 전송하고, 냉장고(100)는 서버 장치(200)로부터 식별 데이터를 수신한다(2170).
서버 장치(200)는 통신망(NET)을 통하여 식별 데이터를 냉장고(100)로 전송할 수 있다. 처리부(240)는 식별 데이터를 냉장고(100)로 전송하도록 통신부(220)를 제어할 수 있다.
냉장고(100)는 통신망(NET)을 통하여 서버 장치(200)로부터 식별 데이터를 수신할 수 있다. 제어부(190)는 통신부(170)를 통하여 식별 데이터를 수신할 수 있다.
냉장고(100)는 사용자의 터치 좌표에 기초하여 샘플 영상을 선택한다(2180).
냉장고(100)는 사용자가 터치 스크린 디스플레이(130)를 터치한 터치 좌표와 복수의 샘플 영상들(651 내지 657)의 중심 좌표를 비교하고, 사용자의 터치 좌표와 가장 근접한 중심 좌표를 가지는 샘플 영상을 선택할 수 있다.
제어부(190)는 앞서 동작 2140에서 터치 스크린 디스플레이(130)로부터 사용자의 터치 입력의 터치 좌표를 획득할 수 있다.
또한, 제어부(190)는 앞서 동작 2170에서 복수의 샘플 영상들(651 내지 657)을 나타내는 좌표 및 크기와, 복수의 샘플 영상들(651 내지 657)의 제1 후보 식품과, 복수의 샘플 영상들(651 내지 657)의 제2 후보 식품들을 포함하는 식별 데이터를 수신할 수 있다. 제어부(190)는 샘플 영상들(651 내지 657)의 좌표 및 크기로부터 샘플 영상들(651 내지 657)의 중심의 좌표를 판단할 수 있다. 예를 들어, 제어부(190)은 샘플 영상들(651 냐자 657)의 크기(h, v)의 절반과 좌표(x, y)의 합으로부터 샘플 영상들(651 내지 657)의 중심의 좌표(x+h/2, y+v/2)를 판단할 수 있다.
제어부(190)는 사용자의 터치 입력과 복수의 샘플 영상들(651 내지 657) 각각의 중심 사이의 거리를 판단할 수 있다. 예를 들어, 제어부(190)는 터치 입력의 좌표와 샘플 영상의 중심 좌표 사이의 차이의 제곱의 합으로부터 사용자의 터치 입력과 샘플 영상의 중심 사이의 거리를 판단할 수 있다.
제어부(190)는 복수의 샘플 영상들(651 내지 657)의 중심과 사용자의 터치 입력 사이의 거리가 최소가 되는 샘플 영상을 식별할 수 있다.
예를 들어, 도 24와 도 25에 도시된 바와 같이, 제어부(190)는 복수의 샘플 영상들(651 내지 657) 중에서 제2 샘플 영상(652)의 중심과 사용자의 터치 입력(P1) 사이의 거리가 최소인 것을 판단할 수 있다. 제어부(190)는 사용자의 터치 입력(P1)에 대응하는 영상으로 제2 샘플 영상(652)를 선택할 수 있다.
냉장고(100)는 사용자가 선택된 식품의 식별 결과를 표시한다(2190).
앞서 동작 2180에서 냉장고(100)는 그 중심이 사용자의 터치 입력으로부터 거리가 최소인 샘플 영상을 판단할 수 있다. 예를 들어, 냉장고(100)는 사용자의 터치 입력(P1)에 대응하는 영상으로 제2 샘플 영상(652)를 선택할 수 있다.
제어부(190)는 그 중심이 사용자의 터치 입력으로부터 거리가 최소인 샘플 영상이 사용자가 터치한 위치의 식품을 나타내는 영상인 것으로 판단할 수 있다. 또한, 제어부(190)는 그 중심이 사용자의 터치 입력으로부터 거리가 최소인 샘플 영상에 기초하여 식별된 제1 후보 식품 또는 제2 후보 식품이 사용자가 선택한 식품인 것으로 판단할 수 있다.
제어부(190)는 사용자의 터치 입력의 주변에 사용자가 선택한 식품의 식별 결과를 표시할 수 있다.
예를 들어, 도 26에 도시된 바와 같이 제어부(190)는 저장실 내부 영상(600) 상에 사용자의 터치 입력의 주변에 식품의 식별 정보(624)를 표시할 수 있다. 식품의 식별 정보(624)는 식품의 명칭을 표기하기 위한 명칭 영역(624a)과, 제1 후보 식품(624a)의 명칭(파인애플)과, 제2 후보 식품(624c)의 명칭(당근)을 포함할 수 있다. 사용자는 제1 후보 식품(624a)의 명칭(파인애플)과 제2 후보 식품(624c)의 명칭(당근) 중에 어느 하나를 선택할 수 있다. 사용자에 의하여 선택된 식품의 명칭은 명칭 영역(624a)에 표시될 수 있다. 예를 들어, 도 26에 도시된 바와 같이, 파인애플이 선택되면, 제어부(190)는 명칭 영역(624a)에 "파인애플"을 표시할 수 있다.
제어부(190)는 사용자에 의하여 선택된 식품의 명칭에 기초하여 해당 식품에 관한 정보를 수집할 수 있다. 예를 들어, 제어부(190)는 사용자에 의하여 선택된 식품의 카테고리, 식품의 보관 기한 등을 수집할 수 있다. 예를 들어, 제어부(190)는 파인애플의 식품 카테고리, 보관 기한 등을 수집할 수 있다.
제어부(190)는 사용자에 의하여 선택된 식품을 나타내는 샘플 영상과 명칭과 카테고리와 보관 기한 등을 일체로 저장할 수 있다.
제어부(190)는 터치 스크린 디스플레이(130)에 사용자에 의하여 선택된 식품의 리스트(670)를 표시할 수 있다. 예를 들어, 도 27에 도시된 바와 같이, 제어부(190)는 터치 스크린 디스플레이(130)에 파인애플에 관한 정보(671)를 표시할 수 있다.
제어부(190)는 터치 스크린 디스플레이(130)에 사용자의 터치 입력과 가장 근접한 샘플 영상(671a)과, 제2 샘플 영상(625)로부터 식별된 식품의 명칭(671b)과, 제2 샘플 영상(625)로부터 식별된 식품의 보관 기한(671c)을 표시할 수 있다. 예를 들어, 도 27에 도시된 바와 같이 제어부(190)는 터치 스크린 디스플레이(130)에 제2 샘플 영상(652)와 "파인애플"과 파인애플의 보관 기한을 표시할 수 있다.
이상에서 설명된 바와 같이, 서버 장치(200)는 냉장고(100)로부터 저장된 식품의 영상을 수신하고, 객체 식별 엔진(231)을 이용하여 냉장고(100)에 저장된 식품을 식별할 수 있다. 또한, 냉장고(100)는 서버 장치(200)로부터 수신된 식품 관련 정보를 표시할 수 있다. 다시 말해, 냉장고(100)는 사용자의 입력 없이 저장실(110)에 저장된 식품과 관련된 정보를 표시할 수 있다.
도 28는 일 실시예에 의한 식품 관리 시스템의 식품 식별 방법의 다른 일 예를 도시한다. 도 29은 도 28에 도시된 식품 식별 방법에 의하여 추가 식품 영역을 식별하는 일 예를 도시한다. 도 30는 도 28에 도시된 식품 식별 방법에 의하여 추가 식품 관련 정보를 표시하는 일 예를 도시한다.
도 28, 도 29 및 도 30과 함께, 식품 관리 시스템(1)의 식품 식별 방법(1200)이 설명된다.
냉장고(100)는 제1 시점에 저장실(110)에 저장된 식품과 관련된 정보를 표시한다(1210).
냉장고(100)는 제1 시점에 저장실(110)에 저장된 식품과 관련된 정보를 획득하고, 이를 표시할 수 있다.
냉장고(100)는 제1 시점에 저장실(110)의 내부를 촬영하고, 제1 시점에 촬영된 저장실(110)의 내부 영상을 획득할 수 있다. 또한, 냉장고(100)는 제1 시점에 촬영된 저장실(110)의 내부 영상을 서버 장치(200)로 전송할 수 있다. 예를 들어, 냉장고(100)는 도 29의 (a)에 도시된 바와 같이 제1 시점에 촬영된 제1 내부 영상(710)을 획득하고, 제1 내부 영상(710)을 서버 장치(200)로 전송할 수 있다.
서버 장치(200)는 객체 식별 엔진(231)을 이용하여 제1 시점에 촬영된 저장실(110)의 내부 영상으로부터 식품을 식별하고, 식별된 식품과 관련된 정보를 냉장고(100)로 전송할 수 있다. 예를 들어, 서버 장치(200)는 제1 내부 영상(710)으로부터 파인애플, 통조림, 포도 및 사과를 식별하고, 파인애플, 통조림, 포도 및 사과에 관한 정보를 냉장고(100)로 전송할 수 있다.
냉장고(100)는 서버 장치(200)로부터 제1 시점에 저장실(110)에 저장된 식품과 관련된 정보를 수신하고, 수신된 식품 관련 정보를 표시할 수 있다.
냉장고(100)는 제2 시점에 저장실(110)의 내부 영상을 획득한다(1220).
제어부(190)는 제2 시점에 저장실(110)의 내부를 촬영하도록 카메라(150)를 제어할 수 있으며, 카메라(150)는 선반(110c)에 의하여 구획된 복수의 공간을 촬영할 수 있다. 제어부(190)는 카메라(150)로부터 제2 시점에 촬영된 저장실(110)의 내부 영상을 획득할 수 있다. 예를 들어, 냉장고(100)는 도 29의 (b)에 도시된 바와 같이 제2 시점에 촬영된 저장실(110)의 제2 내부 영상(720)을 획득할 수 있다.
냉장고(100)는 추가 식품 영역(721)을 식별한다(1230).
제어부(190)는 제1 시점에 촬영된 저장실(110)의 내부 영상과 제2 시점에 촬영된 저장실(110)의 내부 영상 사이의 차이로부터 추가 식품 영역(721)을 식별할 수 있다. 예를 들어, 제어부(190)는 제1 시점에 촬영된 제1 내부 영상(710)과 제2 시점에 촬영된 제2 내부 영상(720) 사이의 차이로부터 추가 식품 영역(721)을 식별할 수 있다.
냉장고(100)는 추가 식품 영역(721)의 영상을 서버 장치(200)로 전송하며, 서버 장치(200)는 냉장고(100)로부터 추가 식품 영역(721)의 영상을 수신한다(1240).
동작 1240는 동작 1120과 동일할 수 있다.
서버 장치(200)는 추가 식품 영역(721)의 영상에 포함된 식품을 식별한다(1250).
서버 장치(200)는 트레이닝된 객체 식별 엔진(231)을 이용하여 추가 식품 영역(721)의 영상에 포함된 식품을 식별할 수 있다.
동작 1250은 동작 1130과 동일할 수 있다.
처리부(240)는 추가 식품 영역(721)으로부터 식별된 식품과 관련된 정보를 수집할 수 있다. 예를 들어, 식품의 관한 정보는 식품의 영상, 식품의 명칭, 카테고리 및 냉장(또는 냉동) 저장 기한 등을 포함할 수 있다.
서버 장치(200)는 추가 식품 관련 정보를 냉장고(100)로 전송하고, 냉장고(100)는 서버 장치(200)로부터 추가 식품 관련 정보를 수신한다(1260).
동작 1260는 동작 1140과 동일할 수 있다.
냉장고(100)는 제2 시점에 저장실(110)에 저장된 식품과 관련된 정보를 표시한다(1270).
제어부(190)는 제1 시점에 저장실(110)에 저장된 식품과 관련된 정보에 서버 장치(200)에 추가 식품 관련 정보를 추가할 수 있으며, 그 결과 제2 시점에 저장실(110)에 저장된 식품과 관련된 정보를 획득할 수 있다.
제어부(190)는 제2 시점에 저장실(110)에 저장된 식품과 관련된 정보를 터치 스크린 디스플레이(130)에 표시할 수 있다. 예를 들어, 도 30에 도시된 바와 같이 제어부(190)는 파인애플에 관한 정보(730)와, 통조림에 관한 정보(740)와, 포도에 관한 정보(750)와, 사과에 관한 정보(760)와 함께, 추가 식품 영역(721)으로부터 식별된 포도에 관한 정보(770)를 추가로 표시할 수 있다.
또한, 제어부(190)는 서로 다른 시기에 저장된 동일한 식품을 식별할 수 있다. 예를 들어, 제어부(190)는 제1 시점에 저장된 파인애플과 제2 시점에 새롭게 저장된 파인애플을 식별할 수 있다.
이상에서 설명된 바와 같이, 냉장고(100)는 기존에 촬영된 저장실(110)의 내부 영상과 새롭게 촬영된 저장실(110)의 내부 영상 사이의 차이를 이용하여 기존의 식품 관련 정보에 새롭게 추가된 식품 관련 정보를 추가할 수 있다. 그 결과, 냉장고(100)는 서로 다른 시기에 저장된 동일한 식품을 식별할 수 있다.
도 31은 일 실시예에 의한 식품 관리 시스템의 식품 식별 방법의 다른 일 예를 도시한다. 도 32 및 도 33은 도 31에 도시된 식품 식별 방법에 의하여 식품 관련 정보를 수정하는 일 예를 도시한다.
도 31, 도 32 및 도 33과 함께, 식품 관리 시스템(1)의 식품 식별 방법(1300)이 설명된다.
냉장고(100)에 저장실(110)에 저장된 식품과 관련된 정보를 표시한다(1310).
냉장고(100)는 저장실(110)의 내부를 촬영하고, 저장실(110)의 내부 영상을 획득할 수 있다. 또한, 냉장고(100)는 촬영된 저장실(110)의 내부 영상을 서버 장치(200)로 전송할 수 있다.
서버 장치(200)는 객체 식별 엔진(231)을 이용하여 저장실(110)의 내부 영상으로부터 식품을 식별하고, 식별된 식품과 관련된 정보를 냉장고(100)로 전송할 수 있다.
냉장고(100)는 서버 장치(200)로부터 저장실(110)에 저장된 식품과 관련된 정보를 수신하고, 수신된 식품 관련 정보를 표시할 수 있다.
냉장고(100)는 사용자의 식품 관련 정보 수정을 수신한다(1320).
사용자는 냉장고(100)의 터치 스크린 디스플레이(130)에 표시된 식품 관련 정보를 확인하고, 식품 관련 정보를 수정할 수 있다.
예를 들어, 도 32에 도시된 바와 같이 제어부(190)는 식별된 식품과 관련된 정보를 표시하는 정보 표시 윈도우(810)를 표시할 수 있다. 또한, 정보 표시 윈도우(810)는 식별된 식품과 관련된 정보를 확인하기 위한 확인 버튼(811)과 식품과 관련된 정보를 수정하기 위한 취소 버튼(812)을 더 포함할 수 있다.
정보 확인 스크린(810)에는 식품에 관한 잘못된 정보("사과"를 "양파"로 잘못 식별)가 표시될 수 있다. 사용자는 취소 버튼(812)을 터치(누름)하고, 식품에 관한 잘못된 정보를 수정할 수 있다. 취소 버튼(812)의 터치에 응답하여, 냉장고(100)는 도 33에 도시된 바와 같이 수정될 식품 관련 정보(820)를 표시하고 새로운 식품 관련 정보를 입력하기 위한 키보드(830)를 표시할 수 있다. 사용자는 키보드(830)를 이용하여 식품의 명칭을 "양파"에서 "사과"로 수정할 수 있다.
냉장고(100)는 사용자에 의하여 수정된 식품 관련 정보를 표시한다(1330).
제어부(190)는 사용자에 의하여 수정된 식품 관련 정보를 터치 스크린 디스플레이(130)에 표시할 수 있다.
냉장고(100)는 사용자에 의하여 수정된 식품 관련 정보를 서버 장치(200)로 전송하고, 서버 장치(200)는 사용자에 의하여 수정된 식품 관련 정보를 수신한다(1340).
냉장고(100)는 통신망(NET)을 통하여 사용자에 의하여 수정된 식품을 나타내는 영상과 사용자에 의하여 수정된 식품 관련 정보를 서버 장치(200)로 전송할 수 있다. 제어부(190)는 식품의 영상과 수정된 식품 관련 정보를 서버 장치(200)로 전송하도록 통신부(170)를 제어할 수 있다.
서버 장치(200)는 통신망(NET)을 통하여 냉장고(100)로부터 식품의 영상과 수정된 식품 관련 정보를 수신할 수 있다. 처리부(240)는 통신부(220)를 통하여 식품의 영상과 수정된 식품 관련 정보를 획득할 수 있다.
서버 장치(200)는 객체 식별 엔진(231)을 다시 트레이닝한다(1350).
처리부(240)는 통신부(220)를 통하여 수신된 식품의 영상과 수정된 식품 관련 정보를 저장부(230)에 저장할 수 있다. 식품의 영상과 수정된 식품 관련 정보는 사용자 수정 데이터(233)일 수 있다.
처리부(240)는 사용자 수정 데이터(233)를 이용하여 객체 식별 엔진(231)을 다시 트레이닝할 수 있다. 예를 들어, 처리부(240)는 사용자에 의하여 수정된 식품의 영상을 객체 식별 엔진(231)에 입력하고, 객체 식별 엔진(231)의 출력과 사용자에 의하여 수정된 식품 관련 정보를 비교할 수 있다. 또한, 처리부(240)는 비교 결과에 기초하여 객체 식별 엔진(231)을 갱신할 수 있다.
처리부(240)는 다양한 시점에 객체 식별 엔진(231)을 다시 트레이닝할 수 있다.
예를 들어, 처리부(240)는 미리 정해진 주기마다 사용자 수정 데이터(233)를 이용하여 객체 식별 엔진(231)을 다시 트레이닝할 수 있다.
다른 예로, 처리부(240)는 사용자 수정 데이터(233)의 양(개수)가 기준량(기준 개수)을 초과하면 사용자 수정 데이터(233)를 이용하여 객체 식별 엔진(231)을 다시 트레이닝할 수 있다.
다른 예로, 처리부(240)는 트레이닝 데이터(232)에 대한 사용자 수정 데이터(233)의 비율이 기준값을 초과하면 사용자 수정 데이터(233)를 이용하여 객체 식별 엔진(231)을 다시 트레이닝할 수 있다.
처리부(240)는 다양한 데이터를 이용하여 객체 식별 엔진(231)을 다시 트레이닝할 수 있다.
예를 들어, 처리부(240)는 트레이닝 데이터(232)와 사용자 수정 데이터(233)이 혼합된 데이터를 이용하여 객체 식별 엔진(231)을 다시 트레이닝할 수 있다. 또한, 트레이닝 데이터(232)와 사용자 수정 데이터(233)의 비율은 미리 정해지거나 관리자 또는 사용자에 의하여 설정될 수 있다.
다른 예로, 처리부(240)는 오직 사용자 수정 데이터(233)만을 이용하여 객체 식별 엔진(231)을 다시 트레이닝할 수 있다.
이상에서 설명된 바와 같이, 사용자는 서버 장치(200)에 의하여 식별된 식품과 관련된 정보를 수정할 수 있으며, 서버 장치(200)는 사용자에 의하여 수정된 식품 관련 정보를 이용하여 객체 식별 엔진(231)을 다시 트레이닝할 수 있다.
이상에서는 냉장고(100)와 별도로 마련된 서버 장치(200)가 식품 영상으로부터 식품을 식별하는 것이 설명되었다.
그러나, 서버 장치(200)는 냉장고(100)에 별도로 마련되는 것에 한정되는 것은 아니다. 예를 들어, 서버 장치(200)는 냉장고(100)와 일체로 제공될 수 있다.
냉장고(100)는 식품 영상으로부터 식품을 식별할 수 있다. 예를 들어, 냉장고(100)는 앞서 설명된 도 11에 도시된 영역 검출 엔진(251)과 영역 분류 엔진(252)와 식별 엔진(253)을 포함할 수 있다.
도 34은 일 실시예에 의한 냉장고가 식품을 식별하는 방법을 도시한다.
도 34과 함께, 냉장고(100)의 식품 식별 방법(1400)이 설명된다.
냉장고(100)는 저장실(110)의 내부 영상을 획득한다(1410).
냉장고(100)는 카메라(150)를 통하여 저장실(110)의 내부를 촬영하고, 저장실(110)의 내부 영상을 획득할 수 있다.
동작 1410은 동작 1110과 동일할 수 있다.
냉장고(100)는 저장실(110)의 내부 영상으로부터 식품 영역들을 검출한다(1420).
제어부(190)는 저장실 내부 영상에서 식품들이 위치하는 식품 영역들을 식별할 수 있다. 예를 들어, 제어부(190)는 빈 저장실(110)의 내부 영상과 식품이 놓여진 저장실(110)의 내부 영상 사이의 차이에 기초하여 식품 영역들과 배경 영역을 분리할 수 있다.
냉장고(100)는 식별된 식품 영역들을 분류한다(1430).
제어부(190)는 식품 영역들을 식품 식별 방법 또는 식품 식별 난이도에 따라 분류할 수 있다. 예를 들어, 제어부(190)는 식품 영역들을 문자가 감지되는 문자 식별 영역과, 단일의 식품이 감지되는 영상 식별 영역과, 복수의 식품들이 감지되는 영상 분할 영역으로 분류할 수 있다.
냉장고(100)는 식품 영역의 식품을 식별한다(1440).
제어부(190)는 분류된 식품 영역의 식품을 다양한 방법으로 식별한다.
예를 들어, 제어부(190)는 문자 식별 영역에 대하여 문자 식별 알고리즘을 이용하여 식품을 식별할 수 있으며, 영상 식별 영역에 대하여 영상 식별 알고리즘을 이용하여 식품을 식별할 수 있다. 또한, 제어부(190)는 영상 분할 영역에 포함된 식품 영상들을 분리하고, 분리된 식품 영상들에 대하여 문자 식별 알고리즘 또는 영상 식별 알고리즘을 이용하여 식품을 식별할 수 있다.
예를 들어, 제어부(190)는 뉴럴 네트워크를 이용한 객체 인식 엔진을 포함할 수 있다. 제어부(190)는 뉴럴 네트워크의 복수의 입력 노드들(i1, i2) 각각에 영상에 포함된 복수의 픽셀들의 휘도 값 및/또는 색상 값을 입력할 수 있다. 제어부(190)는 복수의 입력 노드들(i1, i2)의 값에 가중치(w1-w4)에 적용하여 복수의 히든 노드들(h1, h2)에 출력할 수 있다. 제어부(190)는 복수의 히든 노드들(h1, h2)에 입력된 값을 시그모이드 함수에 입력하고, 시그모이드 함수의 출력 값에 가중치(w5-w8)를 적용하여 복수의 출력 노드들(o1, o2)에 출력할 수 있다. 처리부(240)는 복수의 출력 노드들(o1, o2)에 입력된 값을 시그모이드 함수에 입력하고, 시그모이드 함수의 출력 값이 뉴럴 네트워크의 출력이 된다. 이때, 복수의 출력 노드들(o1, o2) 각각에는 식품들이 할당되며, 복수의 출력 노드들(o1, o2)의 출력 값은 영상 이 복수의 출력 노드들(o1, o2)에 할당된 객체일 확률을 나타낼 수 있다. 제어부(190)는 복수의 출력 노드들(o1, o2)의 출력에 기초하여 식품을 식별할 수 있다.
냉장고(100)는 식별된 식품과 관련된 정보를 표시한다(1450).
제어부(190)는 식별된 식품과 관련된 정보를 터치 스크린 디스플레이(130)에 표시할 수 있다. 예를 들어, 제어부(190)는 식품의 영상(예를 들어, 저장실 내부 영상에서 분리된 식품 영역의 영상), 식품의 명칭, 카테고리 및 냉장(또는 냉동) 저장 기한 등을 터치 스크린 디스플레이(130)에 표시할 수 있다. 냉장(또는 냉동) 저장 기한은 사용자가 안전하게 식품을 섭취할 수 있는 기한을 나타낸다.
이상에서 설명된 바와 같이, 냉장고(100)는 스스로 저장실(110)에 저장된 식품을 식별할 수 있으며, 저장실(110)에 저장된 식품과 관련된 정보를 표시할 수 있다. 다시 말해, 냉장고(100)는 사용자의 입력 없이 저장실(110)에 저장된 식품과 관련된 정보를 표시할 수 있다.
도 35는 일 실시예에 의한 식품 관리 시스템이 식품들 각각을 개별 식별하는 식별 방법의 다른 일 예를 도시한다. 도 36은 도 35에 도시된 식품 식별 방법에 의하여 수동으로 식품 관련 정보를 입력하는 일 예를 도시한다.
도 35 및 도 36과 함께, 식품 관리 시스템(1)의 식품 식별 방법(1500)이 설명된다.
냉장고(100)는 저장실(110)의 내부 영상을 표시한다(1510).
냉장고(100)는 카메라(150)를 통하여 저장실(110)의 내부를 촬영하고, 저장실(110)의 내부 영상을 획득할 수 있다. 또한, 냉장고(100)는 카메라(150)를 통하여 촬영한 저장실(110)의 내부 영상을 포함하는 터치 스크린 디스플레이(130)에 표시할 수 있다.
동작 1510은 동작 1110과 동일할 수 있다.
냉장고(100)는 사용자로부터 등록할 식품 영역에 대한 선택을 수신한다(1520).
터치 스크린 디스플레이(130)에 저장실(110)의 내부 영상이 표시되면 사용자는 터치 스크린 디스플레이(130)를 통하여 식품 영역을 선택할 수 있다. 예를 들어, 사용자는 저장실(110)의 내부 영상에 대응되는 터치 스크린 디스플레이(130)를 터치함으로써 식품 영역(840)을 선택할 수 있다.
제어부(190)는 사용자에 의하여 선택된 식품 영역(840)을 다른 영역과 식별되도록 표시할 수 있다. 예를 들어, 도 36에 도시된 바와 같이 식품 영역(840) 이외의 영역을 어둡게 표시할 수 있다. 또한, 제어부(190)는 터치 스크린 디스플레이(130)에 식품 영역(840)에 포함된 식품을 등록하기 위한 식품 추가 버튼(850)을 표시할 수 있다.
사용자의 식품 추가 버튼(850)의 터치에 응답하여, 냉장고(100)는 사용자에 의하여 선택된 식품 영역(840)에 포함된 식품을 등록할 수 있다.
이후, 냉장고(100)는 식품 식별의 신뢰도가 기준값보다 큰지를 판단한다(1530).
식품 식별의 신뢰도는 냉장고(100) 또는 서버 장치(200)에 의한 식품 식별 동작의 신뢰도를 나타낼 수 있다. 신뢰도는 예를 들어 전체 식품 식별 동작의 횟수에 대한 식별된 식품이 사용자의 수정 없이 등록된 횟수의 비율을 나타낼 수 있다. 다시 말해, 신뢰도는 냉장고(100) 또는 서버 장치(200)가 식품 식별을 성공한 비율을 나타낼 수 있다.
기준값은 냉장고(100) 또는 서버 장치(200)의 식품 식별 신뢰도를 평가하기 위한 기준으로써, 설계자에 의하여 사전에 설정되거나 관리자 또는 사용자에 의하여 사후에 설정될 수 있다.
냉장고(100)는 이전의 식품 식별 동작의 결과 및 사용자의 식품 관련 정보 수정에 기초하여 식품 식별의 신뢰도를 산출하고, 식품 식별의 신뢰도와 기준값을 비교할 수 있다.
식품 식별의 신뢰도가 기준값보다 크면(1530의 예), 냉장고(100)는 선택된 식품 영역(840)의 식품을 자동으로 등록한다(1540).
냉장고(100)는 식품 영역(840)의 식품을 식별하고, 식별된 식품을 자동으로 등록할 수 있다.
예를 들어, 냉장고(100)는 사용자에 의하여 선택된 식품 영역(840)의 영상을 서버 장치(200)로 전송하고, 서버 장치(200)는 객체 식별 엔진(231)을 이용하여 식품 영역(840)의 영상으로부터 식품을 식별할 수 있다. 냉장고(100)는 서버 장치(200)로부터 식품의 정보를 수신하고, 수신된 식품의 정보를 등록할 수 있다.
다른 예로, 냉장고(100)는 객체 식별 엔진(231)을 이용하여 식품 영역(840)의 영상으로부터 직접 식품을 식별할 수 있다. 또한, 냉장고(100)는 식별된 식품의 정보를 등록할 수 있다.
식품 식별의 신뢰도가 기준값보다 작거나 같으면(1530의 아니오), 냉장고(100)는 선택된 식품 영역(840)의 식품을 수동으로 등록한다(1550).
냉장고(100)는 사용자로부터 식품 영역(840)의 식품 관련 정보를 입력받을 수 있다.
예를 들어, 냉장고(100)는 식품 영역(840)의 식품 관련 정보를 수신하기 위하여 식품 영역(840)의 영상을 표시하고, 식품 관련 정보를 입력하기 위한 키보드를 표시할 수 있다. 사용자는 키보드를 이용하여 식품의 명칭 등의 식품 관련 정보를 입력할 수 있다. 또한, 냉장고(100)는 입력된 식품의 정보를 등록할 수 있다.
식품이 자동으로 또는 수동으로 등록된 이후, 냉장고(100)는 식품 관련 정보를 표시한다(1560).
제어부(190)는 등록된 식품 관련 정보를 터치 스크린 디스플레이(130)에 표시할 수 있다. 식품 관련 정보는 식품의 영상(예를 들어, 저장실 내부 영상에서 식품 영상의 위치), 식품의 명칭, 카테고리 및 냉장(또는 냉동) 저장 기한 등을 포함할 수 있다.
이상에서 설명된 바와 같이, 냉장고(100)는 사용자에 의하여 선택된 식품 영역에 포함된 식품을 선택적으로 등록할 수 있다. 또한, 냉장고(100)는 식품 식별에 관한 신뢰도에 따라 자동으로(객체 식별 엔진을 이용하여) 또는 수동으로(사용자의 입력에 따라) 식품을 식별하고, 식별된 식품을 등록할 수 있다.
도 37는 일 실시예에 의한 식품 관리 시스템이 식품들을 일괄 식별하는 식별 방법의 다른 일 예를 도시한다. 도 38는 도 37에 도시된 식품 식별 방법에 의하여 식품 관련 정보를 수정하는 일 예를 도시한다. 도 39은 도 37에 도시된 식품 식별 방법에 의하여 식품 관련 정보를 수정하는 다른 일 예를 도시한다.
도 37, 도 38 및 도 39과 함께, 식품 관리 시스템(1)의 식품 식별 방법(1600)이 설명된다.
냉장고(100)는 저장실(110)의 내부 영상을 표시한다(1610).
냉장고(100)는 카메라(150)를 통하여 저장실(110)의 내부를 촬영하고, 저장실(110)의 내부 영상을 획득할 수 있다. 또한, 냉장고(100)는 카메라(150)를 통하여 촬영한 저장실(110)의 내부 영상을 포함하는 터치 스크린 디스플레이(130)에 표시할 수 있다.
동작 1610은 동작 1110과 동일할 수 있다.
냉장고(100)는 사용장로부터 식품을 일괄 등록하기 위한 입력을 수신한다(1620).
터치 스크린 디스플레이(130)에 저장실(110)의 내부 영상이 표시되면 사용자는 식품을 일괄 등록하기 위한 입력을 입력할 수 있다.
식품의 일괄 등록하기 위한 입력에 응답하여, 냉장고(100)는 저장실(110)의 내부 영상에 포함된 식품을 식별할 수 있다.
예를 들어, 냉장고(100)는 사용자에 의하여 선택된 식품 영역의 영상을 서버 장치(200)로 전송하고, 서버 장치(200)는 객체 식별 엔진(231)을 이용하여 식품 영역의 영상으로부터 식품을 식별할 수 있다.
다른 예로, 냉장고(100)는 객체 식별 엔진(231)을 이용하여 식품 영역의 영상으로부터 직접 식품을 식별할 수 있다.
냉장고(100)는 식별된 식품과 관련된 정보를 표시한다(1630).
제어부(190)는 식별된 식품 관련 정보를 터치 스크린 디스플레이(130)에 표시할 수 있다. 식품 관련 정보는 식품의 영상(예를 들어, 저장실 내부 영상에서 식품 영상의 위치), 식품의 명칭, 카테고리 및 냉장(또는 냉동) 저장 기한 등을 포함할 수 있다.
냉장고(100)는 사용자의 식품 관련 정보 수정을 수신한다(1640).
사용자는 냉장고(100)의 터치 스크린 디스플레이(130)에 표시된 식품 관련 정보를 확인하고, 식품 관련 정보를 수정할 수 있다.
예를 들어, 도 38에 도시된 바와 같이 냉장고(100)는 파인애플에 관한 정보와, 통조림에 관한 정보와, 포도에 관한 정보와, 사과에 관한 정보를 포함하는 리스트를 표시할 수 있다. 냉장고(100)는 "사과"에 관한 잘못된 정보("사과"를 "양파"로 잘못 식별)를 표시할 수 있다. 사용자는 "사과"에 관한 잘못된 정보를 수정할 수 있다. 예를 들어, 사용자는 터치 스크린 디스플레이(130)에 표시된 수정 버튼(860)을 터치할 수 있다. 수정 버튼(860)의 터치에 응답하여, 냉장고(100)는 식품 정보 입력 스크린을 표시할 수 있다. 식품 정보 입력 스크린은 수정될 식품의 영상과 식품 관련 정보를 입력하기 위한 키보드를 포함할 수 있다. 사용자는 키보드를 이용하여 식품의 명칭을 "양파"에서 "사과"로 수정할 수 있다.
다른 예로, 도 39에 도시된 바와 같이 냉장고(100)는 저장실(110)의 내부 영상 상에 파인애플에 관한 정보와, 통조림에 관한 정보와, 포도에 관한 정보와, 사과에 관한 정보를 중첩하여 표시할 수 있다. 사용자는 터치 스크린 디스플레이(130)에 표시된 수정 버튼(861)을 터치할 수 있다. 수정 버튼(861)의 터치에 응답하여, 냉장고(100)는 식품 정보 입력 스크린을 표시할 수 있다. 식품 정보 입력 스크린은 수정될 식품의 영상과 식품 관련 정보를 입력하기 위한 키보드를 포함할 수 있다. 사용자는 키보드를 이용하여 식품의 명칭을 "양파"에서 "사과"로 수정할 수 있다.
냉장고(100)는 사용자에 의하여 수정된 식품 관련 정보를 표시한다(1650).
제어부(190)는 사용자에 의하여 수정된 식품 관련 정보를 터치 스크린 디스플레이(130)에 표시할 수 있다.
이상에서 설명된 바와 같이, 냉장고(100)는 저장실(110)에 저장된 식품들을 일괄적으로 등록할 수 있다. 또한, 냉장고(100)는 사용자의 입력에 따라 식품 관련 정보를 수정할 수 있다.
도 40은 일 실시예에 의한 식품 관리 시스템의 식품 관리 방법의 일 예를 도시한다. 도 41은 도 40에 도시된 식품 관리 방법에 의하여 식품을 구매하는 일 예를 도시한다.
도 40 및 도 41와 함께, 식품 관리 시스템(1)의 식품 관리 방법(1700)이 설명된다.
냉장고(100)는 저장실(110)에 저장된 식품과 관련된 정보를 저장한다(1710).
냉장고(100)는 저장실(110)의 내부를 촬영하고, 촬영된 저장실(110)의 내부 영상을 서버 장치(200)로 전송할 수 있다. 서버 장치(200)는 객체 식별 엔진(231)을 이용하여 저장실(110)의 내부 영상으로부터 식품을 식별하고, 식별된 식품과 관련된 정보를 냉장고(100)로 전송할 수 있다. 냉장고(100)는 서버 장치(200)로부터 저장실(110)에 저장된 식품과 관련된 정보를 수신하고, 수신된 식품 관련 정보를 저장할 수 있다. 예를 들어, 식품 관련 정보는 식품의 영상(예를 들어, 저장실 내부 영상에서 식품 영상의 위치), 식품의 명칭, 카테고리 및 냉장(또는 냉동) 저장 기한 등을 포함할 수 있다.
또한, 냉장고(100)는 저장실(110)의 내부를 촬영하고, 촬영된 저장실(110)의 내부 영상으로부터 식품을 식별할 수 있다. 냉장고(100)는 식별된 식품과 관련된 정보를 저장할 수 있다.
냉장고(100)는 식품의 잔여 저장 기한이 기준 기한보다 짧은지를 판단한다(1720).
제어부(190)는 식품 관련 정보로부터 식품의 냉장(또는 냉동) 저장 기한과 식품이 저장된 날짜와 현재의 날짜로부터 잔여 저장 기한을 산출하고, 잔여 저장 기한과 기준 기한을 비교할 수 있다. 기준 기한은 식품의 냉장(또는 냉동) 저장 기한의 만료를 경고하고 식품의 섭취를 추천하기 위한 기한으로, 설계자에 의하여 사전에 설정되거나 사용자에 의하여 사후에 조정될 수 있다.
식품의 잔여 저장 기한이 기준 기한보다 짧으면(1720의 예), 냉장고(100)는 잔여 저장 기한이 기준 기한보다 짧은 식품을 구매할지 판단한다(1730).
제어부(190)는 사용자 입력에 따라 식품을 구매할지 판단할 수 있다.
예를 들어, 도 41에 도시된 바와 같이 제어부(190)는 잔여 저장 기한이 기준 기한보다 짧은 식품을 구매하기 위한 식품 구매 윈도우(870)를 표시할 수 있다. 식품 구매 윈도우(870)는 잔여 저장 기한이 기준 기한보다 짧은 식품과 관련된 정보를 표시하며, 식품을 구매하기 위한 확인 버튼(871)과 식품 구매를 취소하기 위한 취소 버튼(872)을 포함할 수 있다.
식품을 구매하는 것으로 판단되면(1730의 예), 냉장고(100)는 온라인 쇼핑 서버에 식품 구매를 요청한다(1740).
잔여 저장 기한이 기준 기한보다 짧은 식품의 구매를 허용하는 사용자 입력이 수신되면, 제어부(190)는 통신망(NET)을 통하여 온라인 쇼핑 서버에 접속할 수 있다. 또한, 제어부(190)는 온라인 쇼핑 서버에 식품 구매를 요청하고, 사용자에 의하여 사전에 설정된 결재 수단을 이용하여 식품 대금을 지불할 수 있다.
식품의 잔여 저장 기한이 기준 기한보다 짧지 아니하거나(1720의 아니오) 식품을 구매하지 않는 것으로 판단되거나(1730의 아니오) 식품의 구매 이후 냉장고(100)는 식품 관련 정보를 표시한다(1750).
제어부(190)는 식품 관련 정보를 터치 스크린 디스플레이(130)에 표시할 수 있다. 예를 들어, 식품을 구매한 경우 제어부(190)는 구매한 식품과 관련된 정보를 함께 표시할 수 있다.
이상에서 설명된 바와 같이, 냉장고(100)는 식품 관련 정보를 기초로 식품의 구매에 관한 정보를 사용자에게 제공하고, 사용자 입력에 따라 저장 기한의 만료가 임박한 식품을 구매할 수 있다.
도 42은 일 실시예에 의한 식품 관리 시스템의 식품 관리 방법의 다른 일 예를 도시한다.
도 42와 함께, 식품 관리 시스템(1)의 식품 관리 방법(1800)이 설명된다.
냉장고(100)는 저장실(110)에 저장된 식품과 관련된 정보를 저장한다(1810).
동작 1810은 동작 1710과 동일할 수 있다.
냉장고(100)는 사용자 선호 식품을 식별한다(1820).
제어부(190)는 새로운 식품이 저장실(110)에 저장되면 저장된 식품과 관련된 정보를 저장하고, 저장실(110)에 저장된 식품이 인출되면 인출된 식품과 관련된 정보를 수집할 수 있다. 제어부(190)는 저장된 식품과 관련된 정보 및 인출된 식품과 관련된 정보에 기초하여 동일한(또는 유사한) 식품을 구매하는 구매 패턴 및 식품을 소비하는 소비 패턴을 분석할 수 있다. 또한, 제어부(190)는 식품의 구매 패턴 및 소비 패턴을 기초로 사용자의 선호 식품을 식별할 수 있다.
냉장고(100)는 사용자 선호 식품의 판매 정보를 획득한다(1830).
제어부(190)는 통신망(NET)을 통하여 온라인 쇼핑 서버에 사용자 선호 식품의 판매 정보를 요청할 수 있으며, 온라인 쇼핑 서버로부터 사용자 선호 식품의 판매 정보를 수신할 수 있다. 예를 들어, 판매 정보는 사용자 선호 식품의 가격 정보, 할인 정보 및 재고 정보 등을 포함할 수 있다.
냉장고(100)는 사용자 선호 식품을 구매할지 판단한다(1840).
제어부(190)는 사용자 입력에 따라 식품을 구매할지 판단할 수 있다. 예를 들어, 제어부(190)는 사용자 선호 식품의 판매 정보를 터치 스크린 디스플레이(130)에 표시하고, 터치 스크린 디스플레이(130)을 통하여 사용자 선호 식품의 구매에 관한 사용자 입력을 수신할 수 있다.
식품을 구매하는 것으로 판단되면(1840의 예), 냉장고(100)는 온라인 쇼핑 서버에 식품 구매를 요청한다(1850).
동작 1850은 동작 1740과 동일할 수 있다.
사용자 선호 식품을 구매하지 않는 것으로 판단되거나(1850의 아니오) 식품의 구매 이후 냉장고(100)는 식품 관련 정보를 표시한다(1860).
제어부(190)는 식품 관련 정보를 터치 스크린 디스플레이(130)에 표시할 수 있다. 예를 들어, 식품을 구매한 경우 제어부(190)는 구매한 식품과 관련된 정보를 함께 표시할 수 있다.
이상에서 설명된 바와 같이, 냉장고(100)는 식품의 저장 및 인출 기록을 기초로 식품의 구매에 관한 정보를 사용자에게 제공하고, 사용자 입력에 따라 사용자의 선호 식품을 구매할 수 있다.
도 43은 일 실시예에 의한 식품 관리 시스템의 레시피 제공 방법의 일 예를 도시한다. 도 44 및 도 45은 도 43에 도시된 레시피 제공 방법에 의하여 레시피를 제공하는 일 예를 도시한다. 도 46은 도 43에 도시된 레시피 제공 방법에 의하여 레시피를 제공하는 다른 일 예를 도시한다.
도 43, 도 44, 도 45 및 도 46과 함께, 식품 관리 시스템(1)의 레시피 제공 방법(1900)이 설명된다.
냉장고(100)에 저장실(110)에 저장된 식품과 관련된 정보를 표시한다(1910).
동작 1910은 동작 1310과 동일할 수 있다.
냉장고(100)는 사용자로부터 레시피 요청을 수신한다(1920).
사용자는 터치 스크린 디스플레이(130)에 표시된 식품 관련 정보 중에 적어도 일부를 선택하고, 선택된 정보와 관련된 식품을 포함하는 레시피를 요청할 수 있다.
예를 들어, 제어부(190)는 도 44에 도시된 바와 같이 식품 관련 정보와 함께 식품 관련 정보를 선택할 수 있는 체크 박스(910)를 표시할 수 있다. 또한, 제어부(190)는 도 45에 도시된 바와 같이 레시피를 요청할 수 있는 레시피 요청 윈도우(920)를 표시할 수 있으며, 레시피 요청 윈도우(920)는 요청 버튼(921)과 취소 버튼(922)를 포함할 수 있다. 사용자가 식품 관련 정보의 체크 박스(910)를 체크하고 요청 버튼(921)을 터치하면, 냉장고(100)는 체크된 식품을 포함하는 레시피 요청을 수신할 수 있다.
다른 예로, 제어부(190)는 저장실(110)의 내부 영상을 터치 스크린 디스플레이(130) 상에 표시할 수 있으며, 터치 스크린 디스플레이(130)를 통하여 사용자로부터 레시피 요청을 수신할 수 있다. 도 46에 도시된 바와 같이 사용자가 식품 영상(911)을 길게 터치하면 제어부(190)는 레시피 요청 팝업(912)을 표시할 수 있다. 사용자가 레시피 요청 팝업(912)을 터치하면 제어부(190)는 식품 영상(911)의 식품을 포함하는 레시피 요청을 수신할 수 있다.
냉장고(100)는 서버 장치(200)에 사용자에 의하여 선택된 식품 관련 정보와 레시피 요청을 전송하고, 서버 장치(200)는 냉장고(100)로부터 식품 관련 정보와 레시피 요청을 수신한다(1930).
서버 장치(200)는 사용자에 의하여 선택된 식품을 포함하는 레시피를 검색한다(1940).
처리부(240)는 저장부(230)에 저장된 레시피를 검색하거나 통신망(NET)을 통하여 다른 서버들에 레시피를 요청할 수 있으며, 사용자에 의하여 선택된 식품을 포함하는 레시피를 획득할 수 있다.
서버 장치(200)는 레시피에 관한 정보를 냉장고(100)로 전송하고, 냉장고(100)는 서버 장치(200)로부터 레시피에 관한 정보를 수신한다(1950).
냉장고(100)는 서버 장치(200)로부터 수신된 레시피를 표시한다(1960).
제어부(190)는 사용자에 의하여 선택된 식품을 포함하는 레시피를 터치 스크린 디스플레이(130)에 표시할 수 있다.
이상에서 설명된 바와 같이, 냉장고(100)는 사용자에 의하여 선택된 식품을 포함하는 레시피를 제공할 수 있다.
도 47은 일 실시예에 의한 식품 관리 시스템의 레시피 제공 방법의 일 예를 도시한다. 도 48 및 도 49는 도 47에 도시된 레시피 제공 방법에 의하여 레시피를 제공하는 일 예를 도시한다.
도 47, 도 48 및 도 49와 함께, 식품 관리 시스템(1)의 레시피 제공 방법(2000)이 설명된다.
냉장고(100)는 요리 영상(930)을 획득한다(2010).
냉장고(100)는 사용자로부터 또는 자체적으로 요리 영상(930)을 획득할 수 있다.
예를 들어, 제어부(190)는 사용자 입력에 응답하여 통신부(170)를 통하여 통신망(NET)에 접속하고, 통신망(NET)에 연결된 다른 장치로부터 요리 영상(930)을 수신할 수 있다. 또한, 제어부(190)는 카메라(150)를 이용하여 저장실(110) 내부를 촬영하고, 저장실(110)에 저장된 요리의 요리 영상(930)을 획득할 수 있다.
냉장고(100)는 사용자로부터 레시피 요청을 수신한다(2020).
사용자는 요리 영상(930)에 포함된 요리를 조리하기 위한 레시피를 요청할 수 있다.
예를 들어, 제어부(190)는 도 48에 도시된 바와 같이 요리 영상(930)와, 레시피를 요청할 수 있는 레시피 요청 윈도우(940)를 표시할 수 있다. 또한, 레시피 요청 윈도우(940)는 요청 버튼(941)과 취소 버튼(942)를 포함할 수 있다. 사용자가 요청 버튼(941)을 터치하면, 냉장고(100)는 요리 영상(930)의 레시피 요청을 수신할 수 있다.
냉장고(100)는 서버 장치(200)에 요리 영상(930)과 레시피 요청을 전송하고, 서버 장치(200)는 냉장고(100)로부터 요리 영상(930)와 레시피 요청을 수신한다(2030).
서버 장치(200)는 요리 영상(930)으로부터 요리를 식별한다(2040).
처리부(240)는 트레이닝된 객체 식별 엔진(231)을 이용하여 요리 영상(930)에 포함된 요리를 식별할 수 있다.
예를 들어, 처리부(240)는 뉴럴 네트워크를 이용한 객체 식별 엔진(231)을 포함할 수 있다. 처리부(240)는 뉴럴 네트워크에 요리 영상(930)에 포함된 복수의 픽셀들의 휘도 값 및/또는 색상 값을 입력할 수 있다. 또한, 처리부(240)는 뉴럴 네트워크의 출력에 기초하여 요리 영상(930)의 요리를 식별할 수 있다.
서버 장치(200)는 식별된 요리에 대한 레시피를 검색한다(2050).
처리부(240)는 저장부(230)에 저장된 레시피를 검색하거나 통신망(NET)을 통하여 다른 서버들에 레시피를 요청할 수 있으며, 식별된 요리의 레시피를 획득할 수 있다.
서버 장치(200)는 레시피에 관한 정보를 냉장고(100)로 전송하고, 냉장고(100)는 서버 장치(200)로부터 레시피에 관한 정보를 수신한다(2060).
냉장고(100)는 서버 장치(200)로부터 수신된 레시피를 표시한다(2070).
제어부(190)는 사용자에 의하여 선택된 식품을 포함하는 레시피를 터치 스크린 디스플레이(130)에 표시할 수 있다.
냉장고(100)는 부족한 식품을 표시한다(2080).
제어부(190)는 저장실(110)에 저장된 식품의 목록과 서버 장치(200)로부터 수신된 레시피에 포함된 재료의 목록을 비교하고, 레시피의 재료 중에 저장실(110)에 저장되지 아니한 식품을 식별할 수 있다.
제어부(190)는 레시피의 재료 중에 부족한 식품을 터치 스크린 디스플레이(130)에 표시할 수 있다. 예를 들어, 제어부(190)는 파스타의 레시피 중에 부족한 식품을 표시할 수 있다. 제어부(190)는 도 49에 도시된 바와 같이 감자와 관련된 정보(950), 파스타 면과 관련된 정보(960), 양파와 관련된 정보(970) 및 토마토 페이스트와 관련된 정보(980)를 터치 스크린 디스플레이(130)에 표시할 수 있다.
또한, 제어부(190)는 부족한 식품을 구매하기 위한 구매 버튼(990)을 터치 스크린 디스플레이(130)에 더 표시할 수 있다. 사용자에 의하여 구매 버튼(990)이 터치되면 제어부(190)는 온라인 쇼핑 서버에 식품 구매를 요청하고, 사용자에 의하여 사전에 설정된 결재 수단을 이용하여 식품 대금을 지불할 수 있다.
이상에서 설명된 바와 같이 서버 장치(200)는 냉장고(100)로부터 수신된 요리 영상(930)으로부터 요리를 식별하고, 요리의 레시피를 검색할 수 있다. 또한, 냉장고(100)는 서버 장치(200)로부터 요리의 레시피를 수신하고, 레시피에 포함된 재료 중에 부족한 식품을 구매할 수 있다.
이상에서 설명된 바와 같이, 디스플레이 장치(100)는 로컬 디밍을 수행하기 위하여 전기 광학 층(231)의 국부적인 산란율을 제어할 수 있다.
한편, 개시된 실시예들은 컴퓨터에 의해 실행 가능한 명령어를 저장하는 기록매체의 형태로 구현될 수 있다. 명령어는 프로그램 코드의 형태로 저장될 수 있으며, 프로세서에 의해 실행되었을 때, 프로그램 모듈을 생성하여 개시된 실시예들의 동작을 수행할 수 있다. 기록매체는 컴퓨터로 읽을 수 있는 기록매체로 구현될 수 있다.
컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터에 의하여 해독될 수 있는 명령어가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래쉬 메모리, 광 데이터 저장장치 등이 있을 수 있다.
이상에서와 같이 첨부된 도면을 참조하여 개시된 실시예들을 설명하였다. 게시된 실시예가 속하는 기술분야에서 통상의 지식을 가진 자는 게시된 실시예의 기술적 사상이나 필수적인 특징을 변경하지 않고도, 개시된 실시예들과 다른 형태로 실시될 수 있음을 이해할 것이다. 개시된 실시예들은 예시적인 것이며, 한정적으로 해석되어서는 안 된다.
1: 식품 관리 시스템 100: 냉장고
110: 저장실 120: 도어
130: 터치 스크린 디스플레이 140: 온도 감지부
150: 카메라 160: 냉각부
170: 통신부 180: 저장부
190: 제어부 200: 서버 장치
210: 입출력부 220: 통신부
230: 저장부 231: 객체 식별 엔진
232:트레이닝 데이터 233: 사용자 수정 데이터
240: 처리부
251: 영역 검출 엔진 252: 영역 분류 엔진
253: 식별 엔진 253a: 문자 식별 엔진
253b: 영상 식별 엔진 253c: 영상 분할 엔진
300: 사용자 장치

Claims (20)

  1. 저장실;
    상기 저장실에 마련된 카메라;
    사용자의 터치 입력을 수신하는 터치 감지 디스플레이;
    외부 장치와 통신하는 통신부;
    상기 저장실 내부를 촬영하도록 상기 카메라를 제어하고, 상기 저장실 내부의 영상을 상기 터치 감지 디스플레이에 표시하고, 상기 영상을 상기 외부 장치로 전송하도록 상기 통신부를 제어하고, 상기 사용자의 터치 입력에 응답하여 상기 통신부를 통하여 상기 외부 장치로부터 상기 영상으로부터 식별된 식별 정보를 수신하고, 상기 식별 정보를 상기 터치 감지 디스플레이에 표시하는 제어부를 포함하고,
    상기 식별 정보는 상기 영상으로부터 식별된 식품의 식별 정보와 상기 식별된 식품의 상기 영상에서의 위치 정보를 포함하고,
    상기 제어부는 상기 사용자의 터치 입력의 위치 정보와 상기 식별된 식품의 상기 영상에서의 위치 정보에 기초하여 상기 사용자의 터치 입력에 대응하는 식품을 판단하고, 상기 사용자의 터치 입력에 대응하는 식품의 정보를 상기 터치 감지 디스플레이에 표시하는 냉장고.
  2. 제1항에 있어서,
    상기 식별된 식품의 상기 영상에서의 위치 정보는 상기 영상에서 임의로 선택된 복수의 샘플 영상들의 위치를 포함하고, 상기 영상으로부터 식별된 식품의 식별 정보는 상기 복수의 샘플 영상들로부터 식별된 식품의 식별 정보를 포함하는 냉장고.
  3. 제2항에 있어서,
    상기 제어부는 상기 복수의 샘플 영상들 중에 상기 사용자의 터치 입력으로부터 거리가 최소인 샘플 영상을 선택하는 냉장고.
  4. 제3항에 있어서,
    상기 제어부는 상기 선택된 샘플 영상으로부터 식별된 식품의 식별 정보를 상기 터치 감지 디스플레이에 표시하는 냉장고.
  5. 제4항에 있어서,
    상기 제어부는 상기 터치 감지 디스플레이에 상기 선택된 샘플 영상과 상기 선택된 샘플 영상으로부터 식별된 식품의 명칭과 상기 선택된 샘플 영상으로부터 식별된 식품의 보관 기간을 표시하는 냉장고.
  6. 제3항에 있어서,
    상기 선택된 샘플 영상으로부터 식별된 식품의 식별 정보는 적어도 2개의 식품의 명칭을 포함하고,
    상기 제어부는 상기 적어도 2개의 식별 정보를 상기 터치 감지 디스플레이에 표시하는 냉장고.
  7. 제6항에 있어서,
    상기 제어부는 상기 적어도 2개의 식별 정보 중에 상기 사용자에 의하여 선택된 어느 하나의 식별 정보를 상기 터치 감지 디스플레이에 표시하는 냉장고.
  8. 제1항에 있어서,
    상기 제어부는 상기 터치 감지 디스플레이를 통하여 상기 사용자로부터 상기 영상으로부터 식별된 식별 정보의 수정을 수신하고, 상기 영상으로부터 식별된 식별 정보의 수정을 상기 외부 장치로 전송하는 냉장고.
  9. 저장실과 상기 저장실에 마련된 카메라를 포함하는 냉장고의 제어 방법에 있어서,
    상기 저장실 내부를 촬영하고;
    상기 저장실 내부의 영상을 터치 감지 디스플레이에 표시하고;
    상기 영상을 외부 장치로 전송하고;
    상기 터치 감지 디스플레이에의 사용자의 터치 입력에 응답하여 상기 외부 장치로부터 상기 영상으로부터 식별된 식별 정보를 수신하고;
    상기 식별 정보를 상기 터치 감지 디스플레이에 표시하는 것을 포함하고,
    상기 식별 정보는 상기 영상으로부터 식별된 식품의 식별 정보와 상기 식별된 식품의 상기 영상에서의 위치 정보를 포함하고,
    상기 식별 정보를 상기 터치 감지 디스플레이에 표시하는 것은,
    상기 사용자의 터치 입력의 위치 정보와 상기 식별된 식품의 상기 영상에서의 위치 정보에 기초하여 상기 사용자의 터치 입력에 대응하는 식품을 판단하고;
    상기 사용자의 터치 입력에 대응하는 식품의 정보를 상기 터치 감지 디스플레이에 표시하는 것을 포함하는 냉장고의 제어 방법.
  10. 제9항에 있어서,
    상기 식별된 식품의 상기 영상에서의 위치 정보는 상기 영상에서 임의로 선택된 복수의 샘플 영상들의 위치를 포함하고, 상기 영상으로부터 식별된 식품의 식별 정보는 상기 복수의 샘플 영상들로부터 식별된 식품의 식별 정보를 포함하는 냉장고의 제어 방법.
  11. 제10항에 있어서,
    상기 사용자의 터치 입력에 대응하는 식품을 판단하는 것은,
    상기 복수의 샘플 영상들 중에 상기 사용자의 터치 입력으로부터 거리가 최소인 샘플 영상을 선택하는 것을 포함하는 냉장고의 제어 방법.
  12. 제11항에 있어서,
    상기 식별 정보를 상기 터치 감지 디스플레이에 표시하는 것은,
    상기 선택된 샘플 영상으로부터 식별된 식품의 식별 정보를 상기 터치 감지 디스플레이에 표시하는 것을 포함하는 냉장고의 제어 방법.
  13. 제12항에 있어서,
    상기 냉장고의 제어 방법은 상기 터치 감지 디스플레이에 상기 선택된 샘플 영상과 상기 선택된 샘플 영상으로부터 식별된 식품의 명칭과 상기 선택된 샘플 영상으로부터 식별된 식품의 보관 기간을 표시하는 것을 더 포함하는 냉장고의 제어 방법.
  14. 제11항에 있어서,
    상기 선택된 샘플 영상으로부터 식별된 식품의 식별 정보는 적어도 2개의 식품의 명칭을 포함하고,
    상기 식별 정보를 상기 터치 감지 디스플레이에 표시하는 것은 상기 적어도 2개의 식별 정보를 상기 터치 감지 디스플레이에 표시하는 것을 포함하는 냉장고의 제어 방법.
  15. 제14항에 있어서,
    상기 식별 정보를 상기 터치 감지 디스플레이에 표시하는 것은 상기 적어도 2개의 식별 정보 중에 상기 사용자에 의하여 선택된 어느 하나의 식별 정보를 상기 터치 감지 디스플레이에 표시하는 것을 더 포함하는 냉장고의 제어 방법.
  16. 냉장고; 및
    서버 장치를 포함하고,
    상기 냉장고는 저장실 내부를 촬영하고, 상기 저장실 내부의 영상을 터치 감지 디스플레이에 표시하고, 상기 영상을 상기 서버 장치로 전송하고, 상기 터치 감지 디스플레이에 대한 사용자의 터치 입력에 응답하여 상기 서버 장치로부터 상기 영상으로부터 식별된 식별 정보를 수신하고, 상기 식별 정보를 상기 터치 감지 디스플레이에 표시하고,
    상기 서버 장치는 상기 냉장고로부터 상기 저장실 내부의 영상을 수신하고, 상기 영상에서 임의로 복수의 샘플 영상들을 선택하고, 상기 복수의 샘플 영상들 각각으로부터 식품을 식별하고, 상기 복수의 샘플 영상 각각의 위치 정보와 상기 복수의 샘플 영상 각각으로부터 식별된 식품의 식별 정보를 상기 냉장고로 전송하는 시스템.
  17. 제16항에 있어서,
    상기 냉장고는 상기 사용자의 터치 입력의 위치 정보와 상기 복수의 샘플 영상 각각의 위치 정보에 기초하여 상기 사용자의 터치 입력에 대응하는 식품을 판단하는 시스템.
  18. 제17항에 있어서,
    상기 냉장고는 상기 복수의 샘플 영상들 중에 상기 사용자의 터치 입력으로부터 거리가 최소인 샘플 영상을 선택하는 시스템.
  19. 제18항에 있어서,
    상기 냉장고는 상기 선택된 샘플 영상으로부터 식별된 식품의 식별 정보를 상기 터치 감지 디스플레이에 표시하는 시스템.
  20. 제19항에 있어서,
    상기 냉장고는 상기 터치 감지 디스플레이에 상기 선택된 샘플 영상과 상기 선택된 샘플 영상으로부터 식별된 식품의 명칭과 상기 선택된 샘플 영상으로부터 식별된 식품의 보관 기간을 표시하는 시스템.
KR1020190023124A 2018-03-13 2019-02-27 냉장고, 그 제어 방법 및 시스템 KR102217024B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
EP19766651.4A EP3745304A4 (en) 2018-03-13 2019-03-12 REFRIGERATOR, AND SYSTEM AND ITS CONTROL PROCESS
CN201980025477.6A CN111971684A (zh) 2018-03-13 2019-03-12 冰箱、其控制方法以及系统
US16/979,586 US11425338B2 (en) 2018-03-13 2019-03-12 Refrigerator, and system and method for controlling same
PCT/KR2019/002851 WO2019177343A1 (ko) 2018-03-13 2019-03-12 냉장고, 그 제어 방법 및 시스템

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020180028944 2018-03-13
KR20180028944 2018-03-13

Publications (2)

Publication Number Publication Date
KR20190108049A true KR20190108049A (ko) 2019-09-23
KR102217024B1 KR102217024B1 (ko) 2021-02-19

Family

ID=68069178

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190023124A KR102217024B1 (ko) 2018-03-13 2019-02-27 냉장고, 그 제어 방법 및 시스템

Country Status (4)

Country Link
US (1) US11425338B2 (ko)
EP (1) EP3745304A4 (ko)
KR (1) KR102217024B1 (ko)
CN (1) CN111971684A (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102020207371A1 (de) 2020-06-15 2021-12-16 BSH Hausgeräte GmbH Erkennen von Lagergut in Haushalts-Lagerungsvorrichtungen
WO2022215771A1 (ko) * 2021-04-07 2022-10-13 엘지전자 주식회사 냉장고
WO2022231021A1 (ko) * 2021-04-27 2022-11-03 엘지전자 주식회사 냉장고
US11594019B2 (en) 2018-10-01 2023-02-28 Samsung Electronics Co., Ltd. Refrigerator, server, and object recognition method of refrigerator

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11386621B2 (en) * 2018-12-31 2022-07-12 Whirlpool Corporation Augmented reality feedback of inventory for an appliance
CN111444880B (zh) * 2020-04-10 2023-10-31 海信集团有限公司 一种食材识别方法及冰箱
US11942208B2 (en) * 2020-05-20 2024-03-26 Passio Inc. Food-recognition systems and methods
CN114294886B (zh) * 2021-06-23 2023-02-28 海信视像科技股份有限公司 冰箱及食材录入方法
CN114322409B (zh) * 2021-06-23 2023-09-19 海信视像科技股份有限公司 冰箱及储藏室内景图片展示方法
US20230058922A1 (en) * 2021-08-17 2023-02-23 Haier Us Appliance Solutions, Inc. Appliance with collocated cameras
DE102022102061A1 (de) 2021-12-14 2023-06-15 Liebherr-Hausgeräte Ochsenhausen GmbH Verfahren zur Erkennung von Objekten

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101756620B1 (ko) * 2017-02-03 2017-07-12 구영모 냉장고의 문자판독 인공지능에 의한 보관식품 유통기한 알림장치와 그 방법
KR20180025041A (ko) * 2016-08-31 2018-03-08 엘지전자 주식회사 냉장고 및 냉장고의 제어 방법

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8315673B2 (en) * 2010-01-12 2012-11-20 Qualcomm Incorporated Using a display to select a target object for communication
CN103294232A (zh) * 2012-02-22 2013-09-11 华为终端有限公司 一种触摸操作的处理方法及终端
JP6391943B2 (ja) * 2013-03-12 2018-09-19 東芝ライフスタイル株式会社 冷蔵庫、カメラ装置、庫内画像表示プログラム
JP6202865B2 (ja) 2013-04-10 2017-09-27 東芝ライフスタイル株式会社 冷蔵庫
KR102024595B1 (ko) 2013-04-25 2019-09-24 엘지전자 주식회사 냉장고 및 그 제어방법
JP6305122B2 (ja) 2014-03-10 2018-04-04 三菱電機株式会社 冷蔵庫及び冷蔵庫を備えたネットワークシステム
KR102388089B1 (ko) * 2014-09-04 2022-04-19 삼성전자주식회사 냉장고 및 그 제어 방법
KR102272108B1 (ko) * 2015-02-27 2021-07-05 삼성전자주식회사 영상 처리 장치 및 방법
CN107024073A (zh) * 2017-04-26 2017-08-08 中国石油大学(华东) 基于深度学习的多传感器智能冰箱控制方法和智能冰箱
CN107133650A (zh) 2017-05-10 2017-09-05 合肥华凌股份有限公司 冰箱的食物识别方法、装置及冰箱

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180025041A (ko) * 2016-08-31 2018-03-08 엘지전자 주식회사 냉장고 및 냉장고의 제어 방법
KR101756620B1 (ko) * 2017-02-03 2017-07-12 구영모 냉장고의 문자판독 인공지능에 의한 보관식품 유통기한 알림장치와 그 방법

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11594019B2 (en) 2018-10-01 2023-02-28 Samsung Electronics Co., Ltd. Refrigerator, server, and object recognition method of refrigerator
DE102020207371A1 (de) 2020-06-15 2021-12-16 BSH Hausgeräte GmbH Erkennen von Lagergut in Haushalts-Lagerungsvorrichtungen
WO2021254740A1 (de) 2020-06-15 2021-12-23 BSH Hausgeräte GmbH Erkennen von lagergut in haushalts-lagerungsvorrichtungen
WO2022215771A1 (ko) * 2021-04-07 2022-10-13 엘지전자 주식회사 냉장고
US11525627B2 (en) 2021-04-07 2022-12-13 Lg Electronics Inc. Refrigerator
WO2022231021A1 (ko) * 2021-04-27 2022-11-03 엘지전자 주식회사 냉장고

Also Published As

Publication number Publication date
EP3745304A4 (en) 2021-03-31
KR102217024B1 (ko) 2021-02-19
US20210014461A1 (en) 2021-01-14
EP3745304A1 (en) 2020-12-02
US11425338B2 (en) 2022-08-23
CN111971684A (zh) 2020-11-20

Similar Documents

Publication Publication Date Title
KR102217024B1 (ko) 냉장고, 그 제어 방법 및 시스템
EP3852038B1 (en) Food management system, server apparatus, and refrigerator
CN110637204B (zh) 冰箱及其食物管理的方法
US11263498B2 (en) Method and system for providing information related to a status of an object in a refrigerator
US11175790B2 (en) System and method for providing real-time product interaction assistance
US11521391B2 (en) Refrigerator, server and method of controlling thereof
US10482724B2 (en) Method, computer program product, and system for providing a sensor-based environment
CN112005268B (zh) 冰箱和在冰箱上显示用户界面的方法、用户终端和在用户终端中执行功能的方法
US10671841B2 (en) Attribute state classification
KR101754372B1 (ko) 식재료 관리 시스템 및 식재료 관리 방법
US11599928B2 (en) Refrigerator and method for managing products in refrigerator
CN109241883B (zh) 一种基于自动售货机的退货控制方法及其装置
KR20200046751A (ko) 냉장고 안의 객체에 관한 정보를 제공하는 방법 및 시스템
CN109191188A (zh) 目标信息的确定方法、装置、计算机设备和存储介质
KR20190090290A (ko) 인공지능을 이용하여 제품을 식별하고 구분된 이미지를 출력하는 냉장고 및 방법
CN111259257A (zh) 一种信息展示方法、系统、装置、电子设备及存储介质
CN113610005A (zh) 物品识别方法、电子设备、可读存储介质及产品
US11594019B2 (en) Refrigerator, server, and object recognition method of refrigerator
Ortiz et al. Using activity recognition for building planning action models
CN110659579B (zh) 变质物品识别方法、装置、设备和介质
CN108021234B (zh) 获取方法、系统、电子设备与存储介质
KR101916722B1 (ko) 냉장고 및 그 냉장고의 제어 방법
CN109214312B (zh) 信息显示方法、装置、计算机设备和存储介质
US11561750B2 (en) Retrieving personalized visual content items in real time for display on digital-content-display devices within a physical space
US20240070893A1 (en) Object location determination

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right