IP Library Granted Patent US 12,354,344
Granted Patent B2
US 12,354,344 · App. 17/598,771 · Granted Jul 8, 2025

Apparatus and method for performing image-based dish recognition

Inventors: Zhongchi Luo (Eindhoven, NL); Weimin Xiao (Eindhoven, NL); Linjun Li (Eindhoven, NL); Yafang Jin (Eindhoven, NL)
Assignee: KONINKLIJKE PHILIPS N.V.
G06V20/00G06F18/22G06F18/24137G06V10/761G06V10/764G06V10/774G06V10/82G06V20/68
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,354,344
App. No.
17/598,771
Granted
Jul 8, 2025
Kind
B2
Abstract

There is provided a computer-implemented method for performing image-based dish recognition. The method includes acquiring a first image depicting a dish to be recognized, analyzing the first image using a predictive model to determine a first candidate theme, and acquiring a reference set of dish identifiers. The method further includes calculating, for each of the dish identifiers in the reference set, an association score indicative of a degree of similarity between the dish represented by the respective dish identifier and the first candidate theme, selecting one or more dish identifiers in the reference set having the highest association scores as one or more variant dish identifiers of the first candidate theme, and outputting a centroid dish identifier of the first candidate theme and the one or more variant dish identifiers of the first candidate theme.

Claims (69)

1. A computer-implemented method for performing image-based dish recognition, the method comprising:

acquiring a first image depicting a dish to be recognized;

acquiring a plurality of recipes, wherein each of the plurality of recipes comprises: a dish identifier, a plurality of food ingredients, and one or more cooking instructions;

selecting a core subset of recipes, from the acquired plurality of recipes;

calculating a similarity score between each of the recipes in the core subset based on at least one of: a degree of similarity between the dish identifiers of the two recipes, a degree of similarity between the food ingredients of the two recipes, and a degree of similarity between the cooking instructions of the two recipes;

clustering the plurality of recipes into a plurality of reference themes based on the similarity scores of the plurality of recipes; and

selecting, for each of the plurality of reference themes, the recipe having the highest cosine similarity with the respective reference theme as the centroid recipe, wherein the dish identifier of the selected recipe is the centroid dish identifier of the respective reference theme;

analyzing the first image using a predictive model to determine a first candidate theme, wherein the first candidate theme comprises a plurality of candidate dish identifiers each associated with a candidate dish, one of the plurality of candidate dish identifiers being a centroid dish identifier associated with a candidate dish most representative of the first candidate theme, and wherein determining a first candidate theme comprises selecting the first candidate theme from the plurality of reference themes;

acquiring a reference set of dish identifiers from the plurality of acquired recipes;

calculating, for each of the dish identifiers in the reference set, an association score indicative of a degree of similarity between the dish represented by the respective dish identifier and the first candidate theme based on a proximity distance between a vector representing the respective dish identifier in the reference set and a vector representing the first candidate theme, or based on an angle between a vector representing the respective dish identifier in the reference set and a vector representing the first candidate theme, wherein the vectors are results of cluster analysis;

selecting one or more dish identifiers in the reference set having the highest association scores as one or more variant dish identifiers of the first candidate theme; and

outputting the centroid dish identifier of the first candidate theme and the one or more variant dish identifiers of the first candidate theme.

2. The computer-implemented method of claim 1 , wherein outputting the centroid dish identifier of the first candidate theme and the one or more variant dish identifiers of the first candidate theme comprises:

displaying the first candidate theme; and

displaying, upon receiving a user input to expand the first candidate theme, the centroid dish identifier of the first candidate theme and the one or more variant dish identifiers of the first candidate theme,

wherein the centroid dish identifier of the first candidate theme is displayed above the one or more variant dish identifiers of the first candidate theme, and the one or more variant dish identifiers of the first candidate theme are displayed in descending order of their respective association scores.

3. The computer-implemented method of claim 1 , wherein the plurality of candidate dish identifiers in the first candidate theme represent dishes that are similar to each other.

4. The computer-implemented method of claim 1 , further comprising:

analyzing the first image using the predictive model to determine one or more additional candidate themes, wherein each of the additional candidate themes comprises a plurality of candidate dish identifiers each associated with a candidate dish, one of the plurality of candidate dish identifiers being a centroid dish identifier most representative of the respective candidate theme; and

outputting the one or more additional candidate themes.

5. The computer-implemented method of claim 4 , further comprising, for each of the one or more additional candidate themes:

calculating, for each of the dish identifiers in the reference set, an association score indicative of a degree of similarity between the dish represented by the respective dish identifier and the respective additional candidate theme;

selecting one or more dish identifiers in the reference set having the highest association scores as one or more variant dish identifiers of the respective additional candidate theme; and

outputting the centroid dish identifier of the respective additional candidate theme and the one or more variant dish identifiers of the respective additional candidate theme.

6. The computer-implemented method of claim 4 , further comprising:

determining a ranking of the first candidate theme and the one or more additional candidate themes using the predictive model, wherein the ranking is indicative of a descending degree of similarity between a centroid dish of the respective candidate theme and the depicted dish in the acquired first image; and

displaying the first candidate theme and the one or more additional candidate themes based on the determined ranking.

7. The computer-implemented method of claim 1 , further comprising:

determining a popularity score for each of the plurality of recipes, wherein the popularity score is indicative of a popularity or commonness of the respective recipe,

wherein selecting the core subset of recipes is based on the popularity scores of the plurality of recipes.

8. The computer-implemented method of claim 1 , wherein calculating the similarity score between each of the recipes in the core subset is based on one or more synonyms of at least one of: the dish identifiers, the plurality of food ingredients, and the cooking instructions of the two recipes.

9. The computer-implemented method of claim 1 , wherein clustering the plurality of recipes into the plurality of reference themes is based on K-means clustering or singular value decomposition.

10. The computer-implemented method of claim 1 , further comprising:

determining, for each of the plurality of reference themes, a plurality of keywords based on the recipes of the respective reference themes, wherein each of the plurality of keywords is associated with at least one of a cooking technique and a food ingredient.

11. The computer-implemented method of claim 10 , further comprising:

selecting one of the plurality of reference themes;

acquiring a second image based on at least one of the centroid dish identifier of the selected reference theme and the plurality of keywords of the selected reference theme; and

training the predictive model based on the second image and the selected reference theme.

12. The computer-implemented method of claim 1 , wherein the predictive model is at least one of: a convolutional neural network, a residual neural network, and a dense neural network.

13. A computer program product comprising a non-transitory computer readable medium, the computer readable medium having computer readable code embodied therein, the computer readable code being configured such that, on execution by a suitable computer or processor, the computer or processor is caused to perform a method comprising:

acquiring a first image depicting a dish to be recognized;

acquiring a plurality of recipes, wherein each of the plurality of recipes comprises: a dish identifier, a plurality of food ingredients, and one or more cooking instructions;

selecting a core subset of recipes from the acquired plurality of recipes;

calculating a similarity score between each of the recipes in the core subset based on at least one of: a degree of similarity between the dish identifiers of the two recipes, a degree of similarity between the food ingredients of the two recipes, and a degree of similarity between the cooking instructions of the two recipes;

clustering the plurality of recipes into a plurality of reference themes based on the similarity scores of the plurality of recipes; and

selecting, for each of the plurality of reference themes, the recipe having the highest cosine similarity with the respective reference theme as the centroid recipe, wherein the dish identifier of the selected recipe is the centroid dish identifier of the respective reference theme;

analyzing the first image using a predictive model to determine a first candidate theme, wherein the first candidate theme comprises a plurality of candidate dish identifiers each associated with a candidate dish, one of the plurality of candidate dish identifiers being a centroid dish identifier associated with a candidate dish most representative of the first candidate theme, and wherein determining the first candidate theme comprises selecting the first candidate theme from the plurality of reference themes;

acquiring a reference set of dish identifiers;

calculating, for each of the dish identifiers in the reference set, an association score indicative of a degree of similarity between the dish represented by the respective dish identifier and the first candidate theme based on a proximity distance between a vector representing the respective dish identifier in the reference set and a vector representing the first candidate theme, or based on an angle between a vector representing the respective dish identifier in the reference set and a vector representing the first candidate theme, wherein the vectors are results of cluster analysis;

selecting one or more dish identifiers in the reference set having the highest association scores as one or more variant dish identifiers of the first candidate theme; and

outputting the centroid dish identifier of the first candidate theme and the one or more variant dish identifiers of the first candidate theme.

14. An apparatus for performing image-based dish recognition, the apparatus comprising a processor configured to:

acquire a first image depicting a dish to be recognized;

acquire a plurality of recipes, wherein each of the plurality of recipes comprises: a dish identifier, a plurality of food ingredients, and one or more cooking instructions;

select a core subset of recipes from the acquired plurality of recipes;

calculate a similarity score between each of the recipes in the core subset based on at least one of: a degree of similarity between the dish identifiers of the two recipes, a degree of similarity between the food ingredients of the two recipes, and a degree of similarity between the cooking instructions of the two recipes;

cluster the plurality of recipes into a plurality of reference themes based on the similarity scores of the plurality of recipes;

select, for each of the plurality of reference themes, the recipe having the highest cosine similarity with the respective reference theme as the centroid recipe, wherein the dish identifier of the selected recipe is the centroid dish identifier of the respective reference theme;

analyze the first image using a predictive model to determine a first candidate theme, wherein the first candidate theme comprises a plurality of candidate dish identifiers each associated with a candidate dish, one of the plurality of candidate dish identifiers being a centroid dish identifier associated with a candidate dish most representative of the first candidate theme, and wherein determining a first candidate theme comprises selecting the first candidate theme from the plurality of reference themes;

acquire a reference set of dish identifiers;

calculate, for each of the dish identifiers in the reference set, an association score indicative of a degree of similarity between the dish represented by the respective dish identifier and the first candidate theme based on a proximity distance between a vector representing the respective dish identifier in the reference set and a vector representing the first candidate theme, or based on an angle between a vector representing the respective dish identifier in the reference set and a vector representing the first candidate theme, wherein the vectors are results of cluster analysis;

select one or more dish identifiers in the reference set having the highest association scores as one or more variant dish identifiers of the first candidate theme; and

output the centroid dish identifier of the first candidate theme and the one or more variant dish identifiers of the first candidate theme.

15. The computer-implemented method of claim 1 , further comprising:

determining a vector for each of the dish identifiers in the reference set based on a relevance occurrence frequency of one or more semantic keywords in a recipe associated with the respective dish identifier.

16. The computer-implemented method of claim 15 , further comprising:

determining the vector for the first candidate theme based on a relevance occurrence frequency of the one or more semantic keywords in recipes associated with the plurality of candidate dish identifiers of the first candidate theme; or

determining the vector for the first candidate theme based on a relevance occurrence frequency of the one or more semantic keywords in a recipe associated with the centroid dish identifier of the first candidate theme.

17. The computer-implemented method of claim 1 , wherein selecting the one or more dish identifiers in the reference set as the one or more variant dish identifiers of the first candidate theme is based on at least one of: a predetermined threshold for the association scores, and a predetermined number of dish identifiers in the reference set to select.

Assignments (2)
NUNC PRO TUNC ASSIGNMENT Recorded Aug 18, 2023
From: KONINKLIJKE PHILIPS N.V.
To: VERSUNI HOLDING B.V.
Reel/Frame 064636/0541 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 12, 2021
From: LOU, ZHONGCHI; XIAO, WEIMIN; LI, LINJUN; JIN, YAFANG
To: KONINKLIJKE PHILIPS N.V.
Reel/Frame 058097/0991 →
Priority Claims (2)
WO PCT/CN2019/080016 · Mar 28, 2019 · international
EP 19172163 · May 2, 2019 · regional
Continuity (1)
Related Publication 20220172008A1 · Jun 2, 2022
References Cited (25)
US 9483547B1 · Feller et al. · 2016 [cited by applicant]
US 9928448B1 · Merler et al. · 2018 [cited by applicant]
US 11080742B1 · Iannone · 2021 [cited by examiner]
US 20150170001A1 · Rabinovich et al. · 2015 [cited by applicant]
US 20160063692A1 · Divakaran et al. · 2016 [cited by applicant]
US 20160063734A1 · Divakaran · 2016 [cited by examiner]
US 20160335588A1 · Knobel · 2016 [cited by applicant]
US 20180157936A1 · Lee · 2018 [cited by examiner]
US 20180308143A1 · Chan · 2018 [cited by examiner]
US 20190034556A1 · Gu · 2019 [cited by examiner]
US 20190304000A1 · Simpson · 2019 [cited by examiner]
CN 102576372A · 2012 [cited by applicant]
CN 103942569A · 2014 [cited by applicant]
CN 107851183A · 2018 [cited by applicant]
CN 108027912A · 2018 [cited by applicant]
CN 108463821A · 2018 [cited by applicant]
CN 109074861A · 2018 [cited by applicant]
EP 3306543A1 · 2018 [cited by applicant]
KR 20170092364A · 2017 [cited by applicant]
Chen, J., et al., “Deep-based Ingredient Recognition for Cooking Recipe Retrieval”, pp. 1-10, 2016. [cited by applicant]
Salvador, A., et al., “Learning Cross-Modal Embeddings for Cooking Recipes and Food Images”, IEEE Conference on Computer Vision and Pattern Recognition, IEEE Computer Society, pp. 3068-3076, Jul. 21, 2017. [cited by applicant]
Herranz, L., et al., “Food recognition and recipe analysis: integrating visual content, context and external knowledge”, Cornell University Library, pp. 1-7, Jan. 22, 2018. [cited by applicant]
Mezgec, S., et al., “Mixed deep learning and natural language processing method for fake-food image recognition and standardization to help automated dietary assessment”, Public Health Nutrition, pp. 1-10, Feb. 27, 2018. [cited by applicant]
Extended European Search Report issued in connection with corresponding EP Application No. 19172163.8 dated Oct. 24, 2019. [cited by applicant]
International Search Report and Written Opinion issued in connection with corresponding PCT Application No. PCT/EP2020/057733 dated Jul. 1, 2020. [cited by applicant]