KR101562364B1 - Automatic calorie caculation method using food image and feeding behavior managing system using thereof - Google Patents
Automatic calorie caculation method using food image and feeding behavior managing system using thereof Download PDFInfo
- Publication number
- KR101562364B1 KR101562364B1 KR1020140192660A KR20140192660A KR101562364B1 KR 101562364 B1 KR101562364 B1 KR 101562364B1 KR 1020140192660 A KR1020140192660 A KR 1020140192660A KR 20140192660 A KR20140192660 A KR 20140192660A KR 101562364 B1 KR101562364 B1 KR 101562364B1
- Authority
- KR
- South Korea
- Prior art keywords
- food
- type
- image
- calorie
- photographs
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H20/00—ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance
- G16H20/60—ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance relating to nutrition control, e.g. diets
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S128/00—Surgery
- Y10S128/90—Blood pressure recorder
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Nutrition Science (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Epidemiology (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Primary Health Care (AREA)
- Public Health (AREA)
- Image Analysis (AREA)
- Medical Treatment And Welfare Office Work (AREA)
Abstract
본 발명은 음식사진을 이용한 칼로리 자동 계산 방법에 관한 것으로, (a) 학습용 음식사진의 색상, 질감 및 형상에 대한 영상특징을 계산하는 단계; (b) 계산된 영상특징값들을 기초로 기계학습을 통해 자동분류자를 생성하는 단계; (c) 입력되는 음식사진에서 색상, 질감 및 형상에 대한 영상특징을 추출하여 상기 자동분류자에 입력하여 음식의 종류 및 양을 추정하는 단계; 및 (d) 상기 추정된 음식의 종류 및 양을 이용하여 칼로리를 계산하는 단계;를 포함하는 것을 특징으로 한다.
또한, 본 발명은 음식사진을 이용한 칼로리 자동 계산 방법을 이용한 식습관 관리 시스템에 관한 것으로, 웹(web) 또는 앱(app) 상에 음식 섭취 전후의 음식사진을 업로드 하는 사용자 단말; 음식의 종류별 칼로리 데이터가 저장되어 있는 데이터베이스; 및 상기 사용자 단말로부터 업로드된 음식 섭취 전후의 음식사진에서 영상특징을 추출하여 음식의 종류 및 양에 대해 미리 학습된 자동분류자에 입력하여 상기 음식사진들의 음식종류 및 양을 추정하는 음식 추정모듈, 상기 추정된 음식종류와 섭취 전후 음식량의 차이 및 데이터베이스의 칼로리 데이터를 이용하여 섭취 칼로리를 계산하는 칼로리 계산모듈 및 상기 계산된 섭취 칼로리를 이용하여 사용자의 식습관을 안내 및 관리하는 식습관 관리모듈을 구비하는 서버;를 포함하는 것을 특징으로 한다.
본 발명에 의하면, 음식사진의 색상, 형상 및 질감에 대한 영상특징을 이용하여 음식의 종류 및 양을 추정하고 추정된 음식의 종류 및 양을 이용하여 칼로리를 자동으로 계산함으로써, 사용자가 음식의 종류 및 양을 수동으로 입력할 필요가 없어 편리하며, 웹 또는 앱 기반으로 사용자가 음식사진을 업로드하면 실시간으로 섭취한 칼로리를 계산하고 이를 바탕으로 사용자 각각에 알맞는 식습관 컨설팅이 제공되는 효과가 있다.The present invention relates to a calorie automatic calculation method using food photographs, the method comprising the steps of: (a) calculating image characteristics of color, texture and shape of a study food photograph; (b) generating an automatic classifier through machine learning based on the computed image feature values; (c) extracting image features of color, texture, and shape from input food photographs and inputting them to the automatic classifier to estimate the type and amount of food; And (d) calorie calculation using the type and amount of the estimated food.
In addition, the present invention relates to a system and method for managing eating habits using an automatic calorie calculation method using food photographs, and includes a user terminal for uploading food photographs before and after food on a web or an app. A database storing calorie data for each type of food; And a food estimating module for extracting image characteristics from food photographs before and after the food is uploaded from the user terminal and inputting the image characteristics into an automatic classifier previously learned about the type and amount of food to estimate the type and quantity of food of the food photographs, A calorie calculation module for calculating an intake calorie using a difference between the estimated food type and a food quantity before and after intake and calorie data of a database and a dietary habit management module for guiding and managing a dietary habit of a user using the calculated intake calorie And a server.
According to the present invention, the type and amount of food are estimated using the image characteristics of the color, shape and texture of the food photograph, and the calories are automatically calculated using the type and amount of the estimated food, And it is convenient because it does not need to input the amount manually. If a user uploads food photographs on the basis of web or app, calorie consumed in real time is computed and based on this, a diet consulting suitable for each user is provided.
Description
본 발명은 음식사진을 이용한 칼로리 자동 계산 방법 및 그 방법을 이용한 식습관 관리시스템에 관한 것으로, 보다 자세하게는 음식사진의 영상 특징을 분석하여 학습된 자동 분류자를 이용하여 음식의 종류 및 양을 추정하여 자동으로 음식의 칼로리를 계산하고 이를 이용하여 사용자의 식습관을 관리하는 시스템에 관한 것이다.The present invention relates to an automatic calorie counting method using food photographs and a eating habit management system using the method. More particularly, the present invention relates to a method and apparatus for estimating the type and amount of food by analyzing image characteristics of food photographs, To a system for calculating the calorie of food and managing the eating habits of the user by using the calculated calories.
현대 사회가 점차 서구화 및 산업화됨에 따라 과체중이나 비만으로 고통받는 사람들이 점차 증가하고 있다. 이러한 과체중이나 비만은 개인에게 있어서도 성인병 등 각동 질환의 원인이 되는 심각한 문제지만, 사회적으로도 그에 따른 엄청난 사회적 비용을 발생시키므로 현대의 심각한 사회 문제 중 하나가 되고 있다.As modern society becomes more westernized and industrialized, more and more people are suffering from overweight or obesity. Overweight or obesity is a serious problem that causes genetic diseases such as adult diseases in individuals, but it is one of the serious social problems in modern society because it causes huge social costs due to societies.
따라서, 이와 같은 과체중이나 비만을 해결하기 위한 다이어트가 현대인들에게는 필수라고 할 만큼 광범위하게 실시되고 있다. 또한, 최근에는 사람들의 아름다움에 대한 욕구가 증가됨에 따라 다이어트가 단순한 건강을 위한 과체중이나 비만 해결 방법이 아닌 아름다운 몸매와 건강을 유지하기 위한 수단으로 각광받고 있다.Therefore, such a diet to overcome the obesity and overweight is essential to modern people is being carried out widely. In addition, recently, as the desire for beauty of people is increased, dieting is being seen as a means to maintain beautiful body and health, rather than overweight or obesity solution for simple health.
상기와 같은 다이어트를 위해서는 자신의 식습관을 분석하는 것이 선행되어야 하며, 이는 자신이 섭취하는 칼로리를 인지하는 것이 기본이 된다.In order to do such a diet, it is necessary to analyze his / her eating habits, and it is basically to recognize the calories ingested by himself / herself.
한국 공개 특허 10-2005-0045190호는 종래의 칼로리 계산 방법에 관한 기술이 개시되어 있으며, 상기 공개 특허는 이동통신 단말기에서 각각의 음식물에 대한 칼로리 계산 정보를 제공하고, 사용자의 수치 입력에 따라 전체 칼로리양을 계산하는 방법을 제공한다.Korean Patent Laid-Open Publication No. 10-2005-0045190 discloses a conventional calorie calculation method. In the mobile communication terminal, calorie calculation information for each food is provided, and according to a user's numerical input, Provides a way to calculate the caloric content.
보다 구체적으로는, 사용자가 이동통신 단말기 상의 칼로리 계산 메뉴를 선택하면, 음식 각각에 대한 칼로리 계산 정보가 표시된 화면을 제공하는 제1단계와, 상기 음식물 각각에 대한 칼로리 계산 정보에 섭취한 음식물의 양에 해당하는 수치를 입력하면, 이에 따라 전체 칼로리를 계산하는 제2단계와, 계산된 전체 칼로리양을 디스플레이하는 제3단계를 구비한다.More particularly, the present invention relates to a method for calorie counting, comprising: a first step of providing a screen displaying calorie calculation information for each food when a user selects a calorie calculation menu on the mobile communication terminal; A second step of calculating the total calories according to the second step, and a third step of displaying the calculated total calories amount.
상기와 같은 종래의 방법은 언제 어디서나 칼로리의 계산이 가능하고 간단한 수치의 입력만으로 비교적 간단하게 칼로리를 계산할 수 있다는 효과가 있다. The conventional method as described above has an effect that the calories can be calculated anytime and anywhere and the calories can be calculated relatively simply by inputting simple numerical values.
하지만, 상기와 같은 종래의 칼로리 계산 방법의 경우 여전히 사용자가 일일이 자신이 섭취한 음식물의 종류를 검색한 후 섭취한 양을 입력해야 하기 때문에 수동적인 입력에 따른 불편함과 잘못된 입력으로 인해 계산된 칼로리가 부정확해지는 문제점이 있었다.However, in the case of the above conventional calorie counting method, since the user still has to input the amount consumed after searching for the type of the food he / she has ingested, the inconvenience due to the manual input and the calculated calorie There is a problem in that it is inaccurate.
본 발명은 상기와 같은 종래의 문제점을 해결하기 위한 것으로, 칼로리 계산을 위해 사용자가 직접 섭취한 음식물의 종류 및 양을 입력하지 않고, 섭취할 또는 섭취한 음식사진에서 색상, 질감 및 형상에 대한 영상특징을 추출하여 음식의 종류 및 양을 추정하고, 이를 바탕으로 자동으로 칼로리를 계산하는 방법 및 이를 이용한 식습관 관리 시스템을 제공함에 그 목적이 있다.SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned problems, and it is an object of the present invention to provide a method and apparatus for calorie counting, in which, without inputting the type and amount of food consumed directly by a user, And a method of automatically calculating calories based on the type and amount of food extracted by extracting features, and a food management system using the method.
상기와 같은 목적을 달성하기 위한 본 발명의 음식사진을 이용한 칼로리 자동 계산 방법은 웹(web) 또는 앱(app) 상에 음식 섭취 전후의 음식사진을 업로드 하는 사용자 단말과, 음식의 종류별 칼로리 데이터가 저장된 데이터베이스와 음식추정모듈, 칼로리 계산모듈 및 식습관 관리모듈을 구비하는 서버를 포함하는 식습관 관리 시스템을 이용하여 음식사진을 이용한 칼로리 자동 계산 방법을 제공하는 것으로, 상기 식습관 관리 시스템의 서버는, (a) 학습용 음식사진의 색상, 질감 및 형상에 대한 영상특징을 계산하는 단계와; (b) 계산된 영상특징값들을 기초로 기계학습을 통해 자동분류자를 생성하는 단계; (c) 입력되는 음식사진에서 색상, 질감 및 형상에 대한 영상특징을 추출하여 상기 자동분류자에 입력하여 음식의 종류 및 양을 추정하는 단계; 및 (d) 상기 추정된 음식의 종류 및 양을 이용하여 칼로리를 계산하는 단계; 를 포함하되, 상기 색상 영상특징은 RGB 색상 히스토그램이고, 상기 형상 영상특징은, 픽셀 숫자 및 런 렝스(run length)이며, 상기 질감 영상특징은 기울기 히스토그램 및 GLCM(gray-level co-occurrence matrix)의 텍스처 변수인 것을 특징으로 한다.According to another aspect of the present invention, there is provided a method for calorie counting using a food photograph, including: a user terminal for uploading food photographs before and after food intake on a web or an app; A method for automatically calculating a calorie using a food photograph using a dietary management system including a stored database and a server having a food estimation module, a calorie calculation module and a dietary management module, the server of the dietary management system comprising: Calculating image features for colors, textures and shapes of the learning food pictures; (b) generating an automatic classifier through machine learning based on the computed image feature values; (c) extracting image features of color, texture, and shape from input food photographs and inputting them to the automatic classifier to estimate the type and amount of food; And (d) calorie calculation using the type and amount of the estimated food; Wherein the color image feature is an RGB color histogram, the shape image feature is a number of pixels and a run length, and the texture image feature includes a gradient histogram and a gray-level co-occurrence matrix (GLCM) And is a texture variable.
상기와 같은 목적을 달성하기 위한 본 발명의 음식사진을 이용한 칼로리 자동 계산 방법을 이용한 식습관 관리 시스템은 웹(web) 또는 앱(app) 상에 음식 섭취 전후의 음식사진을 업로드 하는 사용자 단말; 음식의 종류별 칼로리 데이터가 저장된 데이터베이스; 및 상기 사용자 단말로부터 업로드된 음식 섭취 전후의 음식사진에서 영상특징을 추출하여 음식의 종류 및 양에 대해 미리 학습된 자동분류자에 입력하여 상기 음식사진들의 음식종류 및 양을 추정하는 음식 추정모듈, 상기 추정된 음식종류와 섭취 전후 음식량의 차이 및 데이터베이스의 칼로리 데이터를 이용하여 섭취 칼로리를 계산하는 칼로리 계산모듈 및 상기 계산된 섭취 칼로리를 이용하여 사용자의 식습관을 안내 및 관리하는 식습관 관리모듈을 구비하는 서버;를 포함하되, 상기 음식 추정모듈은 학습용 음식사진에서 추출한 색상, 질감 및 형상에 대한 영상특징을 기초로 음식의 종류 및 양을 기계학습하는 자동분류자부, 입력되는 음식사진에서 색상, 질감 및 형상에 대한 영상특징을 추출하는 영상특징 추출부 및 상기 추출한 색상, 질감 및 형상에 대한 영상특징을 상기 자동분류자부에 입력하여 음식의 종류 및 양을 추정하는 음식 추정부를 포함하고, 상기 색상 영상특징은 RGB 색상 히스토그램이고, 상기 형상 영상특징은 픽셀 숫자 및 런 렝스(run length)이며, 상기 질감 영상특징은 기울기 히스토그램 및 GLCM(gray-level co-occurrence matrix)의 텍스처 변수인 것을 특징으로 한다.In order to accomplish the above object, the present invention provides a system and method for automatically counting calories using food photographs, the system comprising: a user terminal for uploading food images before and after food intake on a web or an app; A database storing calorie data for each type of food; And a food estimating module for extracting image characteristics from food photographs before and after the food is uploaded from the user terminal and inputting the image characteristics into an automatic classifier previously learned about the type and amount of food to estimate the type and quantity of food of the food photographs, A calorie calculation module for calculating an intake calorie using a difference between the estimated food type and a food quantity before and after intake and calorie data of a database and a dietary habit management module for guiding and managing a dietary habit of a user using the calculated intake calorie Wherein the food estimating module comprises: an automatic classifier for mechanically learning the type and amount of food based on image characteristics of colors, textures, and shapes extracted from the pictures of the food for learning; An image feature extraction unit for extracting an image feature of the shape, Wherein the color image feature is an RGB color histogram, and the shape image characteristic includes a number of pixels and a run length of the image ), And the texture image characteristic is a texture parameter of a gradient histogram and a gray-level co-occurrence matrix (GLCM).
본 발명에 의하면, 음식사진의 색상, 형상 및 질감에 대한 영상특징을 이용하여 음식의 종류 및 양을 추정하고 추정된 음식의 종류 및 양을 이용하여 칼로리를 자동으로 계산함으로써, 사용자가 음식의 종류 및 양을 수동으로 입력할 필요가 없어 편리하며, 웹 또는 앱 기반으로 사용자가 음식사진을 업로드하면 실시간으로 섭취한 칼로리를 계산하고 이를 바탕으로 사용자 각각에 알맞는 식습관 컨설팅이 제공되는 효과가 있다.According to the present invention, the type and amount of food are estimated using the image characteristics of the color, shape and texture of the food photograph, and the calories are automatically calculated using the type and amount of the estimated food, And it is convenient because it does not need to input the amount manually. If a user uploads food photographs on the basis of web or app, calorie consumed in real time is computed and based on this, a diet consulting suitable for each user is provided.
도 1은 본 발명에 따른 음식사진을 이용한 칼로리 자동 계산 방법을 도시한 흐름도이다.
도 2는 본 발명에 따른 자동분류자 생성 과정을 설명하는 흐름도이다.
도 3은 본 발명에 따른 음식사진의 전처리 및 분할 방법을 설명하는 참고도이다.
도 4는 본 발명의 자동분류자를 이용하여 음식의 종류를 추정하는 방법을 설명하는 참고도이다.
도 5는 본 발명의 자동분류자를 이용하여 음식의 양을 추정하는 방법을 설명하는 참고도이다.
도 6은 본 발명에 사용되는 데이터베이스의 칼로리 데이터를 나타낸 도면이다.
도 7은 본 발명에 따른 방법을 이용하여 칼로리을 계산하여 음식사진에 시각적으로 표시한 도면이다.
도 8은 본 발명에 따른 방법을 이용하여 섭취한 칼로리을 계산하여 음식사진에 시각적으로 표시한 도면이다.
도 9은 본 발명에 따른 밥(백미)의 영상특징을 추출한 예시표이다.
도 10는 본 발명에 따른 김치의 영상특징을 추출한 예시표이다.
도 11는 본 발명의 방법을 이용한 식습관 관리 시스템을 도시한 블럭도이다.
도 12은 본 발명에 따른 음식추정모듈의 구성을 나타낸 블럭도이다.1 is a flowchart illustrating an automatic calorie calculation method using a food photograph according to the present invention.
2 is a flowchart illustrating an automatic classifier generating process according to the present invention.
3 is a reference view for explaining a method of preprocessing and dividing a food photograph according to the present invention.
4 is a reference diagram for explaining a method of estimating the kind of food using the automatic classifier of the present invention.
5 is a reference diagram illustrating a method of estimating the amount of food using the automatic classifier of the present invention.
6 is a diagram showing calorific data of a database used in the present invention.
Figure 7 is a graphical representation of calorie counts in a food photograph using the method according to the present invention.
FIG. 8 is a graphical representation of calorie intake calculated using a method according to the present invention and displayed on a food photograph. FIG.
FIG. 9 is an exemplary table in which image features of rice (white rice) according to the present invention are extracted.
FIG. 10 is a diagram showing an example of the image characteristics of the kimchi according to the present invention.
11 is a block diagram illustrating a dietary management system using the method of the present invention.
12 is a block diagram illustrating a configuration of a food estimation module according to the present invention.
이하, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여, 본 발명의 실시예를 첨부된 도면을 참조하여 설명하기로 한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings, so that those skilled in the art can easily carry out the technical idea of the present invention.
도 1은 본 발명에 따른 음식사진을 이용한 칼로리 자동 계산 방법을 도시한 흐름도이며, 도 2는 본 발명에 따른 자동분류자 생성과정을 설명하는 흐름도이며, 도 3 내지 도 10은 본 발명에 따른 음식사진을 이용한 열량 자동 계산 방법을 설명하는 참고도이다. 여기서, 도 9 및 도 10은 음식사진의 각 픽셀이 RGB 8비트의 색상을 표현하는 경우 김치 및 밥에 대한 영상특징 추출값을 나타낸 표이다. FIG. 1 is a flowchart illustrating an automatic calorie calculation method using a food photograph according to the present invention. FIG. 2 is a flowchart illustrating an automatic classifier generating process according to the present invention. A reference diagram for explaining a method of automatically calculating a calorie using a photograph. 9 and 10 are tables showing image feature extraction values for kimchi and rice when each pixel of a food photograph expresses RGB 8-bit color.
먼저, 도 1을 참조하면, 본 발명에 따른 음식사진을 이용한 칼로리 자동 계산 방법은 자동분류자를 생성하는 단계(S100), 자동분류자를 이용하여 음식의 종류 및 양을 추정하는 단계(S200) 및 추정된 음식의 종류 및 양을 이용하여 칼로리를 계산하는 단계(S300)를 포함하며, 상기 S200 단계는 입력되는 음식사진을 전처리하는 단계(S210), 전치리한 음식사진을 분할하는 단계(S220), 분할된 영역을 영상처리하여 영상특징을 추출하는 단계(S230) 및 추출된 영상특징을 자동분류자에 입력하여 음식의 종류 및 양을 추정하는 단계(S240)를 포함한다.Referring to FIG. 1, an automatic calorie counting method using food photos according to the present invention includes generating an automatic classifier S100, estimating the type and amount of food using the automatic classifier S200, (S200). The step S200 includes steps of pre-processing the input food image (S210), dividing the pre-edited food image (S220), and calculating the calories using the type and amount of the food. A step S230 of extracting image features by image processing of the divided regions, and a step S240 of inputting the extracted image features to the automatic classifier to estimate the type and amount of the food.
상기 동분류자를 생성하는 단계(S100)는, 도 2에 도시된 바와 같이 학습용 음식사진을 획득하는 단계(S110), 획득된 학습용 음식사진을 전처리하는 단계(S120), 전처리된 학습용 음식사진을 분할하는 단계(S130), 분할된 학습용 음식사진에서 영상특징을 획득하는 단계(S140), 추출된 영상특징에 대한 음식의 종류 및 양을 입력하여 자동분류자를 생성하는 단계(S150)를 포함한다.The step S100 of generating the classifier includes a step S110 of obtaining a learning food picture as shown in FIG. 2, a step S120 of pre-processing the obtained learning food picture, A step S140 of obtaining an image feature from the divided learning food photographs, and a step S150 of generating an automatic classifier by inputting the type and amount of food for the extracted image feature.
상기 S110 단계는, 음식의 종류 및 양에 대한 자동분류자를 생성하기 위해 학습용 음식사진을 획득하는 단계로써, 상기 학습용 음식사진은 음식이 있는 식판의 사진이나 음식이 놓여져 있는 식탁의 사진이다. 학습용 음식사진은 스마트폰의 카메라나 DSLR 등의 디지털 카메라를 이용하여 촬영한 이미지일 수 있다.The step S110 is a step of acquiring a photograph of a food for learning to generate an automatic classifier for the type and amount of the food, wherein the photograph of the food for learning is a photograph of a plate with food or a photograph of a table on which food is placed. The food photograph for learning can be an image photographed using a digital camera such as a camera of a smart phone or a DSLR.
상기 S120 단계는, 학습용 음식사진에서 영상특징을 쉽게 추출하기 위해 음식사진을 전처리하는 단계로써, 학습용 음식사진을 설정된 해상도, 예를 들어 1024×768로 축소 또는 확대하고, 음식사진에서 식판 또는 식탁의 경계를 인식하는 단계를 포함할 수 있다.The step S120 is a step of preprocessing the food photograph to easily extract the image feature from the food photograph for learning. The food photograph is reduced or enlarged to a predetermined resolution, for example, 1024 x 768, And recognizing the boundary.
한편, 식판 또는 식탁의 경계를 인식하는 방법으로 선 허프 변환(Line Hough transform), 이미지 임계화(Image Thresholding) 또는 질감 분석(Texture analysis)이 사용될 수 있다.On the other hand, Line Hough transform, Image Thresholding, or Texture analysis can be used as a method of recognizing a boundary of a plate or table.
상기 S130 단계는, 전처리된 학습용 음식사진에서 음식이 존재하는 영역만을 분할하는 단계로서, 학습자에 의해 수동으로 분할될 수 있다. 즉, 학습용 음식사진에서 음식이 존재하는 영역을 육안으로 확인하고 분할함으로써, 보다 정확한 음식영역의 추출이 가능하다. 또한 음식 양의 학습을 위해 분할된 음식영역을 설정된 크기, 예를 들면 10×10 픽셀 단위의 원형의 관심영역으로 재분할 할 수 있다.The step S130 is a step of dividing only a region where food exists in the preprocessed learning food photograph, and can be manually divided by the learner. That is, it is possible to extract the food area more accurately by visually identifying and dividing the area where the food exists in the learning food photograph. In addition, for the learning of the amount of food, the divided food area can be subdivided into a circular area of interest of a predetermined size, for example, 10 10 pixels.
상기 S140 단계는, 분할된 음식영역 및 관심영역에서 영상특징을 추출하는 단계로서, 색상, 형상 및 질감에 대한 영상특징을 추출한다.In operation S140, image features are extracted from the segmented food area and the ROI, and image features for color, shape, and texture are extracted.
아래의 표 1은, 상기 S140 단계에서 추출하는 영상특징을 나타낸 표이며, 이를 참조하여 추출되는 색상, 형상 및 질감에 대한 영상특징을 설명한다.Table 1 below is a table showing image characteristics extracted in step S140, and image characteristics of colors, shapes, and textures extracted by referring to the table will be described.
*여기에서, 상기 SD:Standard Deviation, SPE:Short Primitive Emphasis, LPE:Long Primitive Emphasis, GLCM:Gray Level Co-occurrence Matrix, ASM:Angular Second Moment, IDM:Inverse Differential Moment 이다.Here, SD is the Standard Deviation, SPE is the Short Primitive Emphasis, LPE is the Long Primitive Emphasis, GLCM is the Gray Level Co-occurrence Matrix, ASM is the Angular Second Moment, and IDM is the Inverse Differential Moment.
상기 색상에 대한 영상특징은 음식영역 및 각 관심영역에 대한 RGB 색상 평균값과 편차 및 RGB 색상 히스토그램이며, 상기 히스토그램은 R,G,B 당 평균(Mean), 표준편차(Standard Deviation,SD), 비대칭도(Skewness), 첨도(Kurtoses) 히스토그램값이다.The image characteristic for the color is an RGB color average value and a deviation and an RGB color histogram for the food region and each ROI, and the histogram has mean, standard deviation (SD), asymmetry Skewness, and Kurtoses histogram values.
상기 형상에 대한 영상특징은 픽셀의 갯수 및 런 렝스(Run Length)이며, 상기 런 렝스는 SPE(Short Primitive Emphasis) 및 LPE(Long Primitive Emphasis)로 구성되며, 상기 픽셀의 갯수는 음식영역의 크기를 측정하기 위해 사용된다.The image characteristic of the shape is a number of pixels and a run length. The run length is composed of SPE (Short Primitive Emphasis) and LPE (Long Primitive Emphasis) It is used to measure.
상기 질감에 대한 영상특징은 상기 평균 및 표준편차의 기울기 히스토그램 및 질감 분석(texture analysis)기법 중 하나인 GLCM(Gray Level Co-occurrence matrix)의 텍스쳐 변수이다. 즉, GLCM의 ASM(Angular Second Moment), Contrast, Correlation, Entropy, IDM(Inverse Difference Moment) 및 Inertia의 6가지 텍스처 변수와 기울기 히스토그램을 구하여 이를 질감에 대한 영상특징으로 획득한다.
The image characteristic of the texture is a gray level co-occurrence matrix (GLCM) texture parameter, which is one of a slope histogram and a texture analysis technique of the average and standard deviation. In other words, six texture variables and slope histograms of GLCM's Angular Second Moment (ASM), Contrast, Correlation, Entropy, IDM (Inverse Difference Moment) and Inertia are obtained and obtained as image features for texture.
*상기 S150 단계는, 상기 S140 단계에서 획득한 영상특징들을 가지는 음식의 종류 및 양을 자동분류자에 학습시키는 단계이다. 즉, 학습자가 이미 알고 있는 학습용 음식사진의 각 음식의 종류 및 양을 자동분류자에 입력하여 자동분류자를 생성한다.In step S150, the automatic classifier learns the type and amount of food having the image characteristics acquired in step S140. That is, the type and amount of each food of the learning food photograph already known to the learner are input to the automatic classifier to generate the automatic classifier.
상기 자동분류자는 Bayesian Classifier, SVM(Support Vector Machine) 또는 ANN(Artificial Neural Network)등이 사용될 수 있다. 각 자동 분류자는 고유의 원리를 이용하여 알려준 음식의 종류와 양을 영상 사진에서 자동으로 추출된 영상의 특징값을 이용하여 자동 분류 구조를 만든다. 이런 음식의 종류 및 양을 분류할 수 있는 자동 분류자를 생성하는 것이 학습의 최종 결과이다.The automatic classifier may be a Bayesian classifier, a SVM (Support Vector Machine), or an ANN (Artificial Neural Network). Each automatic classifier creates an automatic classification structure by using the characteristic values of the images automatically extracted from the images by using the inherent principle. It is the end result of learning to create an automatic classifier that can classify the type and quantity of these foods.
자동분류자의 학습시 다양한 음식종류 및 양에 대한 많은 학습용 사진을 이용하여 자동분류자를 생성하는 경우 음식의 종류 및 양에 대한 보다 정확한 추정이 가능하다.
In the case of automatic classifier learning, it is possible to estimate more accurately about kinds and amount of food when generating automatic classifier using many learning pictures about various kinds and amounts of food.
*상기와 같은 단계들(S110, S120, S130, S140, S150)을 거쳐 자동분류자가 생성되면, 입력되는 음식사진을 이용하여 음식의 종류 및 양을 추정하고 이를 바탕으로 입력되는 음식사진에 존재하는 각 음식의 칼로리를 계산한다. 여기에서 입력되는 음식사진이란 사용자가 칼로리를 계산하기 위해 입력하는 음식사진을 의미한다.If the automatic classifier is generated through the above steps S110, S120, S130, S140, and S150, the kind and amount of the food are estimated using the inputted food photograph, Calculate the calories of each food. The food photograph input here means a food photograph that a user inputs to calculate calories.
이하에서, 입력된 입력되는 음식사진의 음식 종류 및 양을 추정하고 이를 바탕으로 칼로리를 계산하는 방법을 보다 상세히 설명한다.Hereinafter, a method of estimating the type and amount of food of the input food image and calculating the calories based on the estimation will be described in detail.
먼저, 입력되는 음식사진에서 영상특징을 추출하는 방법은 상기에서 설명한 자동분류자 생성 방법의 영상특징을 추출하는 방법과 거의 동일하다. 이는 음식의 종류 및 양을 추정하기 위해 자동분류자의 생성에 사용된 동일한 영상특징을 입력되는 음식사진으로부터 획득하여야 하기 때문이다. 따라서, 자동분류자의 생성방법과 동일한 방법인 전처리 단계(S210) 및 영상특징 추출 단계(S230)는 제외하고 차이점이 있는 방법인 영상분할 단계(S220), 음식종류 및 양 추정 단계(S240) 및 칼로리 계산 단계(S300)만을 설명한다.First, the method of extracting the image feature from the input food photograph is almost the same as the method of extracting the image feature of the automatic classifier generating method described above. This is because the same image characteristics used in the generation of the automatic classifier must be obtained from the input food photograph to estimate the type and amount of food. Therefore, the image segmentation step S220, the food type and amount estimation step S240, and the calorie separation step S240, which are different from each other except the preprocessing step S210 and the image feature extraction step S230, Only the calculation step S300 will be described.
상기 S220 단계는, 전처리된 입력되는 음식사진에서 음식이 있는 음식영역 및 관심영역을 분할하는 단계로써, 자동분류자 생성시 사용된 수동 분할이 아니 자동분할이 사용된다. 상기와 같은 자동분할을 위해 본 발명에서는 템플릿 매칭(Template Matching) 및 원 허프 변환(Circle Hough Transform)을 이용하여 입력되는 음식사진에서 음식이 존재하는 부분만을 분할한다. 즉, 상기 방법을 이용하여 입력되는 음식사진에서 그릇 또는 식판의 음식부분을 인식한다.In step S220, a food region and a region of interest are segmented in the preprocessed input food photograph, and the automatic segmentation is used instead of the manual segmentation used in the automatic classifier generation. In the present invention, only the part where food exists is divided in the food photograph inputted by using Template Matching and Circle Hough Transform. That is, the food portion of the bowl or the plate is recognized in the food photograph inputted using the above method.
상기 S240 단계는, 추출된 각 영상특징을 자동분류자에 입력하여 입력되는 음식사진에 존재하는 음식의 종류 및 양을 추정하는 단계이다. 자동분류자는 입력된 각 영상특징들을 학습된 각 음식종류 및 양에 대한 영상특징들과 비교 분석하여 입력되는 음식사진에 존재하는 음식의 종류 및 양을 추정한다.The step S240 is a step of inputting the extracted image features to the automatic classifier and estimating the type and amount of food present in the food photographs to be inputted. The automatic classifier compares the inputted image characteristics with the image characteristics of the learned food type and amount, and estimates the type and amount of food present in the inputted food photograph.
보다 자세하게는, 분할된 음식영역 전체의 영상특징을 이용하여 음식의 종류를 추정하고, 그 후 음식종류가 추정된 음식영역의 각 관심영역의 영상특징을 이용하여 음식의 양을 추정한다. 여기에서 관심영역은 상기 음식영역을 설정된 크기로 재분할한 영역이므로 음식의 양에 대한 보다 세밀한 추정이 가능해진다.More specifically, the type of food is estimated using the image characteristics of the entire divided food region, and then the amount of food is estimated using the image characteristics of each region of interest in the estimated food type. Here, since the region of interest is a region in which the food region is re-divided into a predetermined size, more detailed estimation of the amount of food becomes possible.
상기 음식의 양을 추정하는 방법은 먼저, 음식의 종류가 추정된 음식영역을 복수의 설정된 크기의 관심영역으로 재분할한 후, 각 관심영역에 대한 영상특징을 이용하여 자동분류자를 통해 음식영역 중 음식이 실제로 존재하는 부분을 추정하고 추정된 관심영역의 크기를 계산하여 음식의 양을 추정한다. 즉, 음식영역의 경우 식판에서 음식이 담겨지는 부분 또는 식탁 위에 있는 그릇의 경계를 검출한 것이므로, 음식영역의 크기와 실제 음식이 존재하는 부분의 크기가 다를 수 있기 때문에 본 발명의 음식량 추정방법과 같이 음식사진상의 영상특징을 분석하여 음식이 실제로 존재하는 영역만을 추출하고 이를 바탕으로 음식의 양을 추정하는 경우 보다 정확한 음식량의 추정이 가능하다.The method of estimating the amount of food comprises the steps of first dividing a food region estimated as a kind of food into a plurality of regions of interest having a predetermined size, Estimate the amount of food that is actually present and estimate the size of the region of interest. That is, in the case of the food area, since the boundary of the food on the table is detected, the size of the food area may be different from that of the actual food. Similarly, by analyzing the image characteristics of food photographs, it is possible to estimate the food quantity more accurately than when extracting only the area where the food actually exists and estimating the amount of food based on the extracted area.
또한, 보다 정확하게 음식의 종류를 추정하기 위해 자동분류자를 이용한 음식종류 추정뿐만 아니라 추가로 내용기반 이미지 검색(CBIR:Content Based Image Retrieval)기법을 이용하여 음식의 종류를 추정할 수 있다.In addition, the type of food can be estimated using the CBIR (Content Based Image Retrieval) method as well as the food type estimation using the automatic classifier to more accurately estimate the type of food.
상기 S300 단계는, 자동분류자를 이용하여 음식의 종류 및 양이 추정되면 이를 이용하여 음식의 칼로리를 계산하는 단계로써, 기준량에 대한 음식의 종류별 칼로리가 저장되어 있는 데이터베이스를 이용하여 음식의 칼로리를 계산한다.The step S300 is a step of calculating the calorie of the food using the automatic classifier when the type and amount of the food are estimated, and the calorie of the food is calculated using the database in which the calories per kind of the food are stored do.
또한, 섭취 전후의 음식사진이 입력되는 경우 상기 S240 단계에서 각 음식사진의 음식종류 및 양이 추정하고, S300 단계에서 양 음식사진의 음식량 차이를 이용하여 섭취한 칼로리를 계산할 수 있다.In addition, if a food photograph before and after the intake is inputted, the type and amount of food of each food photograph may be estimated in step S240, and the calories consumed may be calculated using the difference in food amount of the food photographs in step S300.
또한, 본 발명은 상기 S300 단계에서 계산된 각 음식의 칼로리를 입력되는 음식사진의 해당 음식위에 시각적으로 표시할 수 있다. 상기 표시는 각 음식의 해당 칼로리뿐만 아니라 해당 음식들의 칼로리를 모두 더한 총 칼로리도 표시할 수 있으며, 섭취한 칼로리 또한 표시할 수 있다. 따라서, 사용자는 해당 음식을 모두 먹을 경우 섭취하는 총 칼로리뿐만 아니라 실제로 섭취한 칼로리를 직관적으로 확인할 수 있다.In addition, the present invention can visually display the calories of each food calculated in step S300 on the corresponding food of the inputted food photograph. The display may display not only the calorie of each food but also the total calories added to the calories of the food, and the calories ingested may also be displayed. Therefore, the user can intuitively confirm not only the total calories consumed when the food is consumed, but also the calories actually consumed.
도 11는 본 발명에 따른 음식사진을 이용한 칼로리 자동 계산 방법을 이용한 식습관 관리 시스템을 도시한 블럭도이며, 도 12은 본 발명에 따른 음식추정모듈의 구성을 나타낸 블럭도이다.FIG. 11 is a block diagram showing a food habit management system using a calorie automatic calculation method using food photographs according to the present invention, and FIG. 12 is a block diagram illustrating a configuration of a food estimation module according to the present invention.
도 11과 도 12을 참조하면, 본 발명에 따른 음식사진을 이용한 칼로리 자동 계산 방법을 이용한 식습관 관리 시스템(1000)은 사용자 단말(100), 데이터베이스(200), 및 음식 추정모듈(310), 칼로리 계산모듈(320) 및 식습관 관리모듈(330)을 포함하는 서버(300)를 포함한다.11 and 12, the eating
상기 사용자 단말(100)은, 웹(web) 또는 앱(app) 상에 음식사진을 업로드하기 위한 것으로 스마트폰, 데스크탑 또는 노트북 등일 수 있다. 상기 사용자 단말(220)은 상기 서버(230)와 네트워크(10)를 통해 유선 또는 무선으로 통신가능하며, 사용자는 웹상에 음식사진을 업로드하거나 앱을 다운받아 설치한 후 앱 상에 음식사진을 업로드할 수 있다. 또한, 사용자는 추가적으로 자신의 나이, 체중 및 키 등을 입력할 수 있다.The
상기 데이터베이스(200)는, 설정된 기준량에 대한 음식의 종류별 칼로리 데이터가 저장되어 있으며, 음식 추정부(313)에서 추정된 음식의 종류 및 양을 이용하여 음식의 칼로리를 계산하기 위해 사용된다.The
상기 서버(300)의 음식 추정모듈(310)은 음식의 종류 및 양에 대한 기계학습을 통해 생성되는 자동분류자부(311), 음식사진에서 영상특징을 추출하는 영상특징 추출부(312), 추출된 영상특징 및 상기 자동분류자부를 이용하여 음식의 종류 및 양을 추정하는 음식 추정부(313)를 포함한다.The
또한, 상기 영상특징 추출부(312)는 입력되는 음식사진을 전처리하는 전처리부(312a), 전처리된 입력되는 음식사진에서 음식영역 및 관심영역을 분할하는 영상 분할부(312b) 및 분할된 음식영역 및 관심영역의 영상특징을 추출하는 특징 추출부(312c)를 포함한다. In addition, the image
상기 자동분류자부(311)는, 학습용 음식사진을 이용하여 각 음식의 종류 및 양에 대한 자동분류자를 생성하는 곳으로, 학습자가 학습용 음식사진을 이용하여 미리 학습시켜 자동분류자를 생성한다. 학습을 위해 사용되는 영상특징들은 상기에서 설명한 S140 단계에서 사용된 영상특징과 동일하므로 이에 대한 자세한 설명은 생략한다.The
상기 영상특징 추출부(312)는, 입력되는 음식사진에서 음식의 종류 및 양을 추정하기 위해 필요한 영상특징들을 추출한다.The image
상기 영상특징 추출부(312)의 전처리부(312a)는, 입력되는 음식사진의 영상특징 추출을 용이하게 하기 위해 전처리를 수행하며, 상기 전처리는 설정된 해상도로 입력되는 음식사진을 리사이즈(resize)하거나, 회전(rotation)하고 입력되는 음식사진에서 식판 또는 식탁부분을 분할하는 것을 포함할 수 있다. 또한, 식판 또는 식탁부분을 분할하기 위해 선 허프 변환, 영상 임계화 또는 질감 분석 기법이 사용될 수 있다.The
상기 영상 분할부(312b)는, 전처리된 음식사진에서 음식이 존재하는 영역인 음식영역을 분할하고, 분할된 음식영역을 설정된 크기의 관심영역으로 재분할한다. 상기 음식영역은, 예를 들어 입력되는 음식사진이 식판에 대한 사진일 경우 식판에서 음식이 담겨지는 부분이고, 입력되는 음식사진이 식탁위에 놓여진 음식들일 경우 음식이 담겨지는 그릇부분이다. 상기 관심영역은 음식의 양을 추정하기 위해 미리 설정된 일정한 크기의 영역을 의미한다.The
상기 특징 추출부(312c)는, 분할된 음식영역 및 관심영역 각각에 대해 색상, 형상 및 질감에 대한 영상특징을 추출한다.
The
*상기 음식 추정부(313)는 상기 영상특징 추출부(312)에서 추출된 영상특징 및 자동분류자부(311)에서 생성된 자동분류자를 이용하여 입력되는 음식사진에 존재하는 음식의 종류 및 양을 추정한다. 즉, 음식 추정부(313)는 각 음식영역에 대한 영상특징을 이용하여 각 음식영역이 어떤 종류의 음식인지를 먼저 추정하고, 상기 추정된 음식영역의 각 관심영역의 영상특징을 이용하여 음식의 양을 추정한다.The
또한, 상기 음식 추정모듈(310)은 음식의 종류를 보다 정확하게 추정하기 위해 자동분류자뿐만 아니라 내용기반 이미지 검색기법을 추가로 이용하여 음식의 종류를 추정할 수 있다.In addition, the
상기 칼로리 계산모듈(320)은 음식 추정부(313)에서 추정된 음식의 종류와 양 및 상기 데이터베이스(200)의 칼로리 데이터를 이용하여 업로드된 음식사진에 있는 각 음식들의 칼로리를 계산한다.The
또한, 본 발명에 따른 음식사진을 이용한 칼로리 자동 계산 방법을 이용한 식습관 관리 시스템(1000)은 상기 칼로리 계산모듈(320)에서 계산된 칼로리를 상기 사용자 단말(100)로부터 업로드되는 음식사진의 각 음식위에 표시할 수 있다.In addition, the eating
상기 식습관 관리모듈(330)은, 사용자가 섭취한 음식종류, 섭취한 양 및 섭취한 칼로리를 이용하여 사용자의 식습관을 안내 및 관리한다.The eating and
상기 식습관 관리모듈(330)은 사용목적에 맞게 다양한 기능이 제공되도록 관리자에 의해 변경될 수 있다.The eating and
예를 들면, 사용자가 업로드한 음식사진에서 음식의 종류 및 양을 추정하고 추정된 음식 종류 및 양을 이용하여 사용자가 선호하는 음식종류 파악하고, 이를 이용하여 사용자의 영양소별 섭취상태를 분석할 수 있으며, 이를 이용하여 부족한 영양소를 사용자에게 안내하거나 영양소의 균형적인 섭취를 위해 사용자가 추가적으로 섭취하여야 할 음식을 안내할 수 있다.For example, we can estimate the type and amount of food in user-uploaded food photographs, and then use the estimated food type and amount to determine the type of food that the user prefers and then use it to analyze the user's nutrient intake status Which can be used to guide poor nutrients to the user or to guide the user through the addition of nutrients for a balanced nutrient intake.
또는, 일일, 주간 및 월별 단위로 사용자가 섭취한 칼로리를 분석하여 체중조절을 위한 음식섭취 계획을 제공할 수 있다. 상기와 같은 기능을 제공하기 위해 식습관 관리모듈(330)은 사용자가 입력한 나이, 체중 및 키에 관한 정보를 추가로 이용할 수 있다.Alternatively, the calorie consumed by the user on a daily, weekly, and monthly basis can be analyzed to provide a food intake plan for weight control. In order to provide the above function, the eating
또는, 상기 식습관 관리모듈(330)은 다이어트를 위해 개인별 맞춤 컨설팅용도 또는 병원에서 환자의 식습관 및 질환의 특성에 맞는 식습관을 컨설팅하는 용도로 사용될 수 있다.Alternatively, the eating and
본 발명에 따른 방법을 이용한 식습관 관리 시스템(1000)에 의하면, 사용자는 자신이 섭취한 음식의 칼로리를 실시간으로 확인할 수 있으며, 섭취한 음식의 종류 및 양과 칼로리를 바탕으로 사용자의 상황에 맞는 다양한 컨설팅을 제공받을 수 있는 효과가 있다.
According to the eating and
이상, 전술한 본 발명의 실시예는, 예시의 목적을 위해 개시된 것으로, 통상의 기술자라면, 이하 첨부된 특허청구범위에 개시된 본 발명의 기술적 사상과 그 기술적 범위 내에서, 또 다른 다양한 실시예들을 개량, 변경, 대체 또는 부가 등이 가능할 것이다.It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are intended to provide further explanation of the invention as claimed. Modification, substitution, addition, or the like.
100: 사용자 단말 200: 데이터베이스
300: 서버 310: 음식 추정모듈
311: 자동분류자부 312: 영상특징 추출부
312a: 전처리부 312b: 영상 분할부
312c: 특징 추출부 313: 음식 추정부
320: 칼로리 계산모듈 330: 식습관 관리모듈
1000: 식습관 관리 시스템100: user terminal 200: database
300: server 310: food estimation module
311: Automatic classifier unit 312: Image feature extraction unit
312a: preprocessing
312c: feature extraction unit 313:
320: Calorie Calculation Module 330: Diet Management Module
1000: Eating management system
Claims (12)
(a) 학습용 음식사진의 색상, 질감 및 형상에 대한 영상특징을 계산하는 단계;
(b) 계산된 영상특징값들을 기초로 기계학습을 통해 상기 학습용 음식사진에 대한 음식의 종류 및 양이 학습된 자동분류자를 생성하는 단계;
(c) 입력되는 음식사진에서 색상, 질감 및 형상에 대한 영상특징을 추출하고, 입력된 음식사진으로부터 추출된 영상특징을 상기 자동분류자에 입력하여 음식의 종류 및 양을 추정하는 단계; 및
(d) 상기 추정된 음식의 종류 및 양을 이용하여 칼로리를 계산하는 단계; 를 포함하되,
상기 (c) 단계는
(c1) 입력되는 음식사진을 설정된 해상도로 변경하고, 상기 음식사진에서 식탁 또는 식판을 분할하는 단계;
(c2) 상기 분할된 음식사진에서 음식이 존재하는 음식영역을 분할하고 분할된 각 음식영역을 크기가 미리 설정된 복수의 관심영역으로 재분할하는 단계;
(c3) 상기 분할된 음식영역 및 상기 관심영역을 영상처리하여 색상, 형상 및 질감에 대한 영상특징을 추출하는 단계;
(c4) 상기 분할된 음식영역 전체에 대한 영상특징을 상기 자동분류자에 입력하여 음식의 종류를 추정하는 단계; 및
(c5) 음식종류가 추정된 음식영역에 대한 관심영역의 영상특징을 상기 자동분류자에 입력하여 종류가 추정된 음식에 대한 양을 추정하는 단계로 이루어지며,
상기 색상 영상특징은 RGB 색상 히스토그램이고, 상기 형상 영상특징은, 픽셀 숫자 및 런 렝스(run length)이며, 상기 질감 영상특징은 기울기 히스토그램 및 GLCM(gray-level co-occurrence matrix)의 텍스처 변수인 것을 특징으로 하는 음식사진을 이용한 칼로리 자동 계산 방법.A user terminal for uploading food photographs before and after food intake on a web or an app (app), a database storing calorie data for each kind of food, a server including a food estimation module, a calorie calculation module and a dietary management module Wherein the server of the eating and drinking management system comprises:
(a) calculating an image feature for color, texture and shape of a study food photograph;
(b) generating an automatic classifier in which the type and amount of food for the learning food photograph are learned through machine learning based on the calculated image characteristic values;
(c) extracting image characteristics of colors, textures, and shapes from the input food photographs, and inputting the image features extracted from the input food photographs into the automatic classifiers to estimate the types and amounts of foods; And
(d) calculating calories by using the type and amount of the estimated food; , ≪ / RTI &
The step (c)
(c1) changing an inputted food photograph to a set resolution, and dividing a table or a plate in the food photograph;
(c2) dividing the food region in which the food exists in the divided food photographs and re-dividing each divided food region into a plurality of regions of interest having a predetermined size;
(c3) extracting image features of color, shape, and texture by image processing the divided food area and the ROI;
(c4) inputting the image characteristic of the entire divided food region to the automatic classifier to estimate the type of food; And
(c5) inputting the image characteristic of the region of interest with respect to the food region in which the food type is estimated into the automatic classifier, and estimating the amount of the estimated food type,
Wherein the color image feature is an RGB color histogram, the shape image feature is a number of pixels and a run length, and the texture image feature is a texture parameter of a gradient histogram and a GLCM (gray-level co-occurrence matrix) Automatic Calorie Calculation Method Using Food Photographs Characterized.
상기 (c1) 단계에서 식습관 관리 시스템의 서버는 선 허프 변환, 영상 임계화 및 질감 분석 중 적어도 하나 이상을 이용하여 식탁 또는 식판을 분할하는 것을 특징으로 하는 음식사진을 이용한 칼로리 자동 계산 방법.The method according to claim 1,
Wherein the server of the eating habit management system divides a table or a plate using at least one of a linear Huff transformation, an image thresholding, and a texture analysis in the step (c1).
상기 (c2) 단계에서 식습관 관리 시스템의 서버는 템플릿 매칭 및 원 허프 변환을 이용하여 음식영역을 분할하는 것을 특징으로 하는 음식사진을 이용한 칼로리 자동 계산 방법.The method according to claim 1,
Wherein the server of the eating habit management system divides the food region using template matching and circular Huff transform in the step (c2).
상기 (c) 단계에서 식습관 관리 시스템의 서버는 내용기반 이미지 검색을 추가로 이용하여 음식의 종류를 추정하는 것을 특징으로 하는 음식사진을 이용한 칼로리 자동 계산 방법.The method according to any one of claims 1 and 3 to 4,
Wherein the server of the eating habit management system in the step (c) estimates the type of food by further using a content-based image search.
상기 (d) 단계에서 상기 식습관 관리 시스템의 서버는 음식 섭취 전후의 사진을 통해 섭취한 음식의 칼로리를 계산하는 것을 특징으로 하는 음식사진을 이용한 칼로리 자동 계산 방법.6. The method of claim 5,
Wherein the server of the eating and drinking management system calculates the calories of the food consumed through photographs before and after the food intake in the step (d).
상기 (d) 단계에서 상기 식습관 관리 시스템의 서버는 계산된 칼로리를 입력되는 음식사진의 각 음식위에 시각적으로 표시하는 것을 특징으로 하는 음식사진을 이용한 칼로리 자동 계산 방법.The method according to claim 6,
Wherein the server of the eating and drinking management system displays the calculated calories visually on each food of the inputted food photograph in the step (d).
음식의 종류별 칼로리 데이터가 저장된 데이터베이스; 및
상기 사용자 단말로부터 업로드된 음식 섭취 전후의 음식사진에서 영상특징을 추출하여 음식의 종류 및 양에 대해 미리 학습된 자동분류자에 입력하여 상기 음식사진들의 음식종류 및 양을 추정하는 음식 추정모듈, 상기 추정된 음식종류와 섭취 전후 음식량의 차이 및 데이터베이스의 칼로리 데이터를 이용하여 섭취 칼로리를 계산하는 칼로리 계산모듈 및 상기 계산된 섭취 칼로리를 이용하여 사용자의 식습관을 안내 및 관리하는 식습관 관리모듈을 구비하는 서버;를 포함하되,
상기 음식 추정모듈은 학습용 음식사진에서 추출한 색상, 질감 및 형상에 대한 영상특징을 기초로 음식의 종류 및 양을 기계학습하는 자동분류자부, 입력되는 음식사진에서 색상, 질감 및 형상에 대한 영상특징을 추출하는 영상특징 추출부, 및 상기 추출한 색상, 질감 및 형상에 대한 영상특징을 상기 자동분류자부에 입력하여 음식의 종류 및 양을 추정하는 음식 추정부를 구비하고,
상기 영상특징 추출부는 입력되는 음식사진을 설정된 해상도로 변경하고 음식사진에서 식판 또는 식탁을 분할하는 전처리부, 상기 전처리부에 의해 분할된 음식사진에서 음식이 존재하는 음식영역을 분할하고 분할된 각 음식영역을 크기가 미리 설정된 복수의 관심영역으로 재분할하는 영상 분할부, 및 상기 음식영역 및 관심영역에서 색감, 질감 및 형상에 대한 영상특징을 추출하는 특징 추출부를 구비하며,
상기 음식 추정부는 상기 분할된 음식영역 전체에 대한 영상특징을 상기 자동분류자에 입력하여 음식의 종류를 추정한 후, 음식종류가 추정된 음식영역에 대한 관심영역의 영상특징을 상기 자동분류자에 입력하여 종류가 추정된 음식에 대한 양을 추정하고,
상기 색상 영상특징은 RGB 색상 히스토그램이고, 상기 형상 영상특징은 픽셀 숫자 및 런 렝스(run length)이며, 상기 질감 영상특징은 기울기 히스토그램 및 GLCM(gray-level co-occurrence matrix)의 텍스처 변수인 것을 특징으로 하는 음식사진을 이용한 칼로리 자동 계산 방법을 이용한 식습관 관리 시스템.A user terminal for uploading food pictures before and after food intake on a web or an app (app);
A database storing calorie data for each type of food; And
A food estimating module for extracting image characteristics from food photographs before and after the food is uploaded from the user terminal and inputting the image characteristics into an automatic classifier previously learned about the type and amount of food to estimate the type and quantity of food of the food photographs ; A calorie calculation module for calculating an intake calorie using a difference between an estimated food type and a pre-intake and post-intake food amount and calorie data of a database, and a dietary habit management module for guiding and managing a dietary habit of the user using the calculated intake calorie ; ≪ / RTI >
The food estimation module includes an automatic classifier for mechanically learning the type and amount of food based on image characteristics of colors, textures, and shapes extracted from a photograph of a food for learning, and an image classifier for classifying colors, textures, And a food estimating unit for inputting the image characteristics of the extracted color, texture, and shape into the automatic classifier unit and estimating the type and amount of the food,
The image feature extracting unit may include a preprocessing unit for changing input food photographs to a set resolution and dividing a plate or a table in a food photograph, a food region in which food is present in the food photographs divided by the preprocessing unit, And a feature extracting unit for extracting image features of color, texture, and shape in the food area and the ROI,
The food estimating unit inputs the image characteristic of the entire food region into the automatic classifier to estimate the type of the food, and then the image characteristic of the region of interest with respect to the estimated food type is classified into the automatic classifier And estimates the amount of the estimated food type,
Wherein the color image characteristic is an RGB color histogram, the shape image characteristic is a pixel number and a run length, and the texture image characteristic is a texture parameter of a gradient histogram and a GLCM (gray-level co-occurrence matrix) Food management system using calorie automatic calculation method using food photographs.
상기 전처리부는 입력되는 음식사진을 설정된 해상도로 변경하고 선 허프 변환, 영상 임계화 및 질감 분석 중 적어도 하나 이상을 이용하여 음식사진에서 식판 또는 식탁을 분할하는 것을 특징으로 하는 음식사진을 이용한 칼로리 자동 계산 방법을 이용한 식습관 관리 시스템.9. The method of claim 8,
Wherein the preprocessing unit divides a food plate into at least one of a food image to be inputted and a food image using at least one of line-Hough transform, image thresholding, and texture analysis. Eating management system using method.
상기 영상 분할부는 템플릿 매칭 및 원 허프 변환을 이용하여 음식영역을 분할하는 것을 특징으로 하는 음식사진을 이용한 칼로리 자동 계산 방법을 이용한 식습관 관리 시스템.9. The method of claim 8,
Wherein the image dividing unit divides the food area using template matching and circular Huff transform.
상기 음식 추정모듈은 내용기반 이미지 검색을 추가로 이용하여 음식의 종류를 추정하는 것을 특징으로 하는 음식사진을 이용한 칼로리 자동 계산 방법을 이용한 식습관 관리 시스템.11. The method according to any one of claims 8 to 10,
Wherein the food estimation module further estimates the type of food by using a content-based image search.
상기 칼로리 계산모듈에서 계산된 음식의 칼로리를 상기 사용자 단말로부터 입력되는 음식사진의 각 음식위에 표시하는 것을 특징으로 하는 음식사진을 이용한 칼로리 자동 계산 방법을 이용한 식습관 관리 시스템.12. The method of claim 11,
Wherein the calorie calculation module displays the calories of the food on each food of the food photo inputted from the user terminal.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140192660A KR101562364B1 (en) | 2014-12-29 | 2014-12-29 | Automatic calorie caculation method using food image and feeding behavior managing system using thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140192660A KR101562364B1 (en) | 2014-12-29 | 2014-12-29 | Automatic calorie caculation method using food image and feeding behavior managing system using thereof |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020130001504A Division KR20140089729A (en) | 2013-01-07 | 2013-01-07 | Automatic calorie caculation method using food image and feeding behavior managing system using thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20150018759A KR20150018759A (en) | 2015-02-24 |
KR101562364B1 true KR101562364B1 (en) | 2015-10-23 |
Family
ID=52578153
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140192660A KR101562364B1 (en) | 2014-12-29 | 2014-12-29 | Automatic calorie caculation method using food image and feeding behavior managing system using thereof |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101562364B1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190117076A (en) * | 2018-04-06 | 2019-10-16 | 김정인 | Education system using cooking kit and education method of the same |
KR20210040495A (en) | 2019-10-04 | 2021-04-14 | 김준연 | Image based calorimetry |
KR20230139184A (en) | 2022-03-25 | 2023-10-05 | 주식회사 누비랩 | Apparatus and method for monitoring eating based on artificial intelligence |
KR102615747B1 (en) | 2023-07-24 | 2023-12-19 | 주식회사 쏘렐라 | Method, device and system for providing food calorie estimation and user customized body change information visualization service using artificial intelligence model |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102359359B1 (en) | 2015-11-25 | 2022-02-08 | 삼성전자주식회사 | User terminal appratus and control method thereof |
KR102433391B1 (en) | 2016-01-14 | 2022-08-17 | 한국전자통신연구원 | Apparatus and Method for Food Search Service |
KR101890989B1 (en) * | 2016-09-02 | 2018-09-28 | 변규리 | O2O(Online to Offline) Calorie Service Management System for Calorie Measuring and Consumption based Image Recognition using Deep Learning Algorithm |
KR101952295B1 (en) * | 2016-11-25 | 2019-02-27 | (주)이오아시스 | A nutrition measuring system for foods in the tray |
JP7300027B2 (en) * | 2017-07-05 | 2023-06-28 | キヤノン株式会社 | Image processing device, image processing method, learning device, learning method, and program |
KR102194912B1 (en) * | 2018-07-02 | 2020-12-24 | 이화여자대학교 산학협력단 | Method and apparatus for managing dietary habits of hemodialysis patients |
KR102243452B1 (en) * | 2018-09-28 | 2021-04-22 | 가천대학교 산학협력단 | Guide card for food information recognition, food information recognition system and method thereof |
KR102024722B1 (en) * | 2018-10-31 | 2019-11-04 | 이승보 | System and Method for Marketing Online To Offline based on Artificial Intelligence Recommendation |
WO2021071081A1 (en) * | 2019-10-08 | 2021-04-15 | 삼성전자주식회사 | Cooking appliance comprising three-dimensional shape estimation device and control method thereof |
-
2014
- 2014-12-29 KR KR1020140192660A patent/KR101562364B1/en active IP Right Grant
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190117076A (en) * | 2018-04-06 | 2019-10-16 | 김정인 | Education system using cooking kit and education method of the same |
KR102082042B1 (en) * | 2018-04-06 | 2020-02-26 | 김정인 | Education system using cooking kit |
KR20210040495A (en) | 2019-10-04 | 2021-04-14 | 김준연 | Image based calorimetry |
KR20230139184A (en) | 2022-03-25 | 2023-10-05 | 주식회사 누비랩 | Apparatus and method for monitoring eating based on artificial intelligence |
KR102615747B1 (en) | 2023-07-24 | 2023-12-19 | 주식회사 쏘렐라 | Method, device and system for providing food calorie estimation and user customized body change information visualization service using artificial intelligence model |
Also Published As
Publication number | Publication date |
---|---|
KR20150018759A (en) | 2015-02-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101562364B1 (en) | Automatic calorie caculation method using food image and feeding behavior managing system using thereof | |
KR20140089729A (en) | Automatic calorie caculation method using food image and feeding behavior managing system using thereof | |
US11615559B2 (en) | Methods and systems for human imperceptible computerized color transfer | |
US20220359058A1 (en) | Meal service management system and operating method therefor | |
US9916520B2 (en) | Automated food recognition and nutritional estimation with a personal mobile electronic device | |
US9721183B2 (en) | Intelligent determination of aesthetic preferences based on user history and properties | |
US9122958B1 (en) | Object recognition or detection based on verification tests | |
US9934450B2 (en) | System and method for creating a collection of images | |
EP1886255B1 (en) | Using photographer identity to classify images | |
Martin et al. | Quantification of food intake using food image analysis | |
GB2609723A (en) | Exposure defects classification of images using a neural network | |
WO2005114577A1 (en) | Method for determining image quality | |
US10331953B2 (en) | Image processing apparatus | |
KR102130772B1 (en) | Food Recognition and Diet Management System Using Deep Learning | |
KR20190066361A (en) | Apparatus and method for color pattern analysis of food image in health care service | |
US20230297646A1 (en) | System and methods for classifying magnetic resonance imaging (mri) image characteristics | |
Minija et al. | Food recognition using neural network classifier and multiple hypotheses image segmentation | |
KR20190104980A (en) | Management system of cafeteria and operation method thereof | |
JP2018049584A (en) | Meal size estimation program, meal size estimation method, and meal size estimation apparatus | |
KR20220089258A (en) | Portable device for calorie measurement, calorie measurement system and method | |
JP2005070908A (en) | Method and system for measuring meal intake for hospital | |
CN111209425A (en) | Image searching method and device, electronic equipment and computer readable storage medium | |
Pouladzadeh | An Image Processing and Pattern Analysis Approach for Food Recognition | |
CN113343832A (en) | Video cover judging method, device, equipment and computer readable medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
FPAY | Annual fee payment |
Payment date: 20181011 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20191111 Year of fee payment: 5 |