WO2017135742A1 - 식재료 관리 시스템 및 식재료 관리 방법, 식재료를 이용한 레시피 제공 방법 및 이를 실행하는 서버, 식재료를 이용한 창작 레시피 생성방법 - Google Patents

식재료 관리 시스템 및 식재료 관리 방법, 식재료를 이용한 레시피 제공 방법 및 이를 실행하는 서버, 식재료를 이용한 창작 레시피 생성방법 Download PDF

Info

Publication number
WO2017135742A1
WO2017135742A1 PCT/KR2017/001205 KR2017001205W WO2017135742A1 WO 2017135742 A1 WO2017135742 A1 WO 2017135742A1 KR 2017001205 W KR2017001205 W KR 2017001205W WO 2017135742 A1 WO2017135742 A1 WO 2017135742A1
Authority
WO
WIPO (PCT)
Prior art keywords
recipe
information
food
food material
cooking
Prior art date
Application number
PCT/KR2017/001205
Other languages
English (en)
French (fr)
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
Priority claimed from KR1020160013602A external-priority patent/KR101798616B1/ko
Priority claimed from KR1020160065012A external-priority patent/KR101754372B1/ko
Priority claimed from KR1020160101666A external-priority patent/KR101874604B1/ko
Application filed by 주식회사 원더풀플랫폼 filed Critical 주식회사 원더풀플랫폼
Publication of WO2017135742A1 publication Critical patent/WO2017135742A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/12Hotels or restaurants
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices

Definitions

  • the present invention relates to a food material management system, a method for managing food ingredients, a method for providing a recipe using food ingredients, a server for executing the same, and a method for generating a creative recipe using food ingredients.
  • Refrigerators are generally classified into a refrigerator compartment and a freezer compartment.
  • the refrigerator compartment is maintained at about 3 to 4 ° C. so that various foods including vegetables and fruits can be kept fresh for a long time, and the freezer compartment is stored in a frozen state such as meat. To keep the temperature below zero.
  • the user When the user cooks according to the recipe, they should always purchase and prepare additional ingredients before cooking. In particular, when the user cooks according to the recipe of a special dish, special ingredients must be purchased and prepared. In this case, the user may keep the food ingredients left in the refrigerator in the refrigerator and may not be used for other cooking, and thus may be stored in the refrigerator for a long time and then thrown away as food waste.
  • housewives who have a large number of family members or students in the family may recycle the remaining food because the family members have different meal schedules and need to prepare several meals.
  • a large amount of food waste becomes a problem for the environment.
  • Korean Laid-Open Patent Publication No. 10-2013-0117255 relates to a cooking recipe storage chopping board, which is a recipe storage chopping board that can store recipes on one side of the cutting board so that the recipe can be easily referred to without reference to the cooking recipe. It is disclosed that a space can be made and a transparent window is formed on the upper side of the storage side to easily view the recipe, but a method for solving the above problem is not disclosed.
  • One embodiment of the present invention is to provide a food material management system and a food material management method for providing a food material map for efficient food material management.
  • One embodiment of the present invention is to provide a recipe providing method for making food using the food ingredients in the user's refrigerator so as not to leave a residue and to provide a server for executing the recipe.
  • An embodiment of the present invention is to provide a recipe providing method and a server for executing the same so that the user can use the food ingredients without leaving the food materials in the refrigerator by making the food through the recipe.
  • An embodiment of the present invention is to provide a recipe for providing a recipe that does not overlap with the recipe used by the user so that the user can cook in a variety of ways to eat a variety of foods instead of the same food each time, and a server for executing the same It is done.
  • An embodiment of the present invention provides a recipe providing method according to the number of people, disease information, etc. according to the user's personal information to provide a recipe providing method and the server for executing the user to receive the appropriate recipe for personal use The purpose.
  • One embodiment of the present invention is to provide a method for creating a creative recipe that can be easily and quickly generated on the basis of the existing recipes for the new recipe for the cooking to be made by the cooking material input by the user.
  • a method for managing food ingredients comprising: receiving a refrigerator image from a first user terminal; and pushing a refrigerator image to a plurality of second registered user terminals in advance; and at least one second user terminal.
  • the foodstuff management method analyzes the foodstuff consumption pattern of the user using the foodstuff map generated by using the previous foodstuff map generated in the past and the foodstuff information received from the second user terminal, and analyzes the foodstuff consumption pattern based on the foodstuff consumption pattern.
  • Generating the purchase information for the transmission to the first user terminal may further include.
  • the generating of the food map may include classifying food material information received from at least one second user terminal into a plurality of groups according to similarity to determine an effective group according to the number of samples, and using the food material information to the determined effective group. And generating a food material map.
  • the foodstuff management method comprises the steps of: receiving a food image from the first user terminal; and pushing to a plurality of second user terminals; and receiving cooking information corresponding to the food image from the plurality of second user terminals, cooking
  • the method may further include generating recipe information including ingredients information, recipes, and calorie information based on the information; and transmitting recipe information to the first user terminal and the second user terminal.
  • comparing the food material map and the food ingredients corresponding to the recipe information, analyzing the food ingredients that require additional purchase to generate the purchase information, and transmitting the purchase information to the first user terminal may further include.
  • the food material management system according to an embodiment of the present invention; a food material management server; and a first user terminal for transmitting a refrigerator image to the food material management server; and receives and displays a refrigerator image from the food material management server, and corresponds to the refrigerator image And a plurality of second user terminals configured to receive the food material information to be transmitted to the food material management server.
  • the food material management server recognizes at least one food material stored in the refrigerator by using the food material information received from the plurality of second user terminals, and includes a food material configured with information on the type and quantity of food materials stored for each region of the refrigerator.
  • a food material management unit generating a map and transmitting the generated map to a first user terminal;
  • a point manager configured to analyze the similarity between the food material map and the food material information received from the plurality of second user terminals, and accumulate points to each user of the plurality of second user terminals according to the similarity.
  • the foodstuff management server analyzes the foodstuff consumption pattern of the user using the foodstuff map generated by using the previous foodstuff map generated in the past and the foodstuff information received from the second user terminal, and analyzes the foodstuff consumption pattern based on the foodstuff consumption pattern. It may further include a purchase management unit for generating the purchase information for the transmission to the first user terminal.
  • the foodstuff management unit classifies the foodstuff information received from the at least one second user terminal into a plurality of groups according to the similarity, determines an effective group according to the number of samples, and uses the foodstuff information in the determined effective group to map the foodstuff map. Can be generated.
  • the food management apparatus when the food management apparatus receives the food image from the first user terminal, the food image is pushed to the plurality of second user terminals to receive cooking information corresponding to the food image, and based on the cooking information, the food information, the recipe, and It may further include a cooking information management unit for generating a recipe information including the calorie information to transmit to the first user terminal.
  • the cooking information manager may analyze the food ingredients that require additional purchase using the food ingredients map and the food ingredients corresponding to the recipe information, generate purchase information, and transmit the purchase information to the first user terminal.
  • the recipe providing server receives a recipe from a culinary expert or a recipe management block for managing recipes by collecting recipe web information on a web space, and a food material for receiving and managing food material information existing in a refrigerator from a user.
  • the recipe providing method executed in the recipe providing server comprises the steps of managing the recipe by receiving a recipe from a culinary expert or collecting recipe web information on a web space, food material information existing in the refrigerator from the user And receiving a member information from the user and extracting and recommending a recipe to be recommended to the user using the recipe, the food material information, and the member information.
  • cooking information receiving step for receiving information about the type and cooking ingredients input through the user interface;
  • a data collecting step of collecting unstructured data about recipe information related to the cooking type and the cooking ingredients existing on the web through data mining;
  • a classification and formatting step of classifying and shaping the unstructured data into recipe data;
  • a storage step of storing the recipe data in a database;
  • a new recipe generation step of generating a new recipe corresponding to the cooking type and cooking ingredients from the recipe data stored in the database using a deep learning technique.
  • the atypical data may be classified and formatted using Word2Vector and Paragraph2Vector techniques.
  • the new recipe generating step may include a first step of extracting a recipe and a cooking process from the recipe data stored in the database; And a second step of learning a cooking process for each cooking material.
  • the first step may include a first process of normalizing, rooting, and truncating a language constituting the recipe data; A second process of classifying verbs in the language normalized, rooted and truncated; A third step of clustering the classified verbs through a deep neural network; And identifying the clustered verbs and labeling each of the verbs with a recipe.
  • a vector distance between the cooking material and the verbs about the labeled recipe may be calculated using the Word2Vector technique for the normalized, rooted and truncated language.
  • verbs relating to the recipe for each cooking material may be listed based on the vector distance.
  • a proportional formula may be applied to derive verbs related to recipes for other cooking ingredients based on the list.
  • the new recipe generation step may further include a third step of re-cutting and de-rooting the language normalized, rooted and truncated to reassemble into spoken sentences.
  • the new recipe generation step is to receive a new cooking material that is compatible with the cooking ingredients from the database to derive a recipe for the new cooking ingredients, the recipe for the new cooking ingredients is added, the third The method may further include a fourth step of proposing modification to the new recipe generated after the step.
  • the user has the advantage that the user can use the food material without leaving the food material in the refrigerator by making food through the recipe.
  • the data mining (Data Mining) technique collects the existing recipes related to the cooking type input by the user, and classify and format using the Word2Vector and Paragraph2Vector technique, By using deep learning techniques to classify and formulate existing recipe data, a new recipe that is additionally matched to the input cooking ingredients is generated, so that the dishes to be made from the input cooking ingredients, for example, the cooking materials to be used. Or you can quickly and easily create a new recipe for a dish that will be made from the actual cooking ingredients, based on existing relevant recipes.
  • Data Mining data mining
  • FIG. 1 is a diagram illustrating a food management system according to one embodiment.
  • FIG. 2 is a control block diagram illustrating an example of a user terminal of a food management system according to one embodiment.
  • FIG. 3 is a view for explaining an example of a refrigerator image collection.
  • FIG. 4 is a control block diagram for explaining an example of a food material management server of a food management system according to one embodiment.
  • 5 is a view for explaining an example of the food material map.
  • FIG. 6 is a diagram for explaining another example of the food material map.
  • FIG. 7 is an exemplary screen illustrating an embodiment of providing purchase information.
  • FIG. 8 is an exemplary screen illustrating an embodiment of providing recipe information.
  • 9 is an exemplary screen illustrating another embodiment of providing purchase information.
  • FIG. 10 is a flowchart illustrating a foodstuff managing method according to an exemplary embodiment.
  • FIG. 11 is a flowchart illustrating a foodstuff managing method according to an exemplary embodiment.
  • FIG. 12 is a diagram illustrating a network for explaining a recipe providing system according to an exemplary embodiment.
  • FIG. 13 is a block diagram illustrating an internal structure of the recipe providing server of FIG. 12.
  • FIG. 14 is a block diagram illustrating an internal structure of the recipe management block of FIG. 12.
  • FIG. 15 is a block diagram illustrating an internal structure of the web information processing unit of FIG. 14.
  • FIG. 16 is an exemplary diagram for describing a recipe workflow generated by the recipe workflow generator of FIG. 15.
  • FIG. 17 is a block diagram illustrating an internal structure of the member information manager of FIG. 13.
  • FIG. 18 is a block diagram illustrating an internal structure of the recipe recommendation unit of FIG. 13.
  • 19 is a flowchart illustrating an embodiment of a recipe providing method.
  • 20 is a flowchart illustrating a method of generating a creative recipe according to an embodiment.
  • 21 is a view showing a potato stew recipe collected through a data collection step of the method of generating a creative recipe according to an embodiment.
  • FIG. 22 shows a calculated vector distance between cooking ingredients and related verbs labeled with a recipe.
  • Figure 23 is a view showing the pork sprouts potato stew recipe produced according to Example 1 of the present invention.
  • Example 24 is a view showing a canned recipe normalized, rooted and cut potato according to Example 2 of the present invention.
  • 25 is a view showing a recipe in which cooking ingredients are converted according to Embodiment 2 of the present invention.
  • 26 is a view showing a sweet potato leek recipe generated according to Example 2 of the present invention.
  • FIG. 27 is a view showing a pork sprouts sweet potato leek stew recipe produced according to Example 3 of the present invention.
  • the foodstuff information is information for identifying foodstuffs included in an image, such as the kind, quantity, and the like of the foodstuff
  • the foodstuff map means information in which the kind and quantity of foodstuffs stored for each region of the refrigerator are stored.
  • the cooking information refers to information corresponding to a food image, for example, a food name, a cooking method, and the like
  • the recipe information refers to a method of cooking food, and the food information, cooking method, and calories of food necessary for cooking.
  • Various information necessary for cooking food may be recipe information.
  • FIG. 1 is a diagram illustrating a food management system according to one embodiment.
  • a food management system includes a user terminal 100 and a foodstuff management server 200.
  • the user terminal 100 may be connected to the food material management server 200 through the communication network 300 to transmit predetermined information necessary for food management or receive predetermined information necessary for food management.
  • the user terminal 100 may be a smart phone having high portability and easy access to the communication network 300, but is not limited thereto.
  • the user terminal 100 is an information processing apparatus used at a fixed position such as a desktop or portable information processing such as a portable media player (PMP), a personal digital assistant (PDA), a tablet PC (tablet PC), or the like. It should be understood that the device may be substituted.
  • PMP portable media player
  • PDA personal digital assistant
  • tablet PC tablet PC
  • the user terminal 100 may be a refrigerator. That is, the refrigerator may communicate with the camera 140 for acquiring an internal image, the food management server 200, and a communication device capable of transmitting and receiving predetermined information, and an input / output for providing information received from the food management server 200.
  • the refrigerator may be the user terminal 100.
  • the user terminal 100 will be described as being provided separately from the refrigerator.
  • the user terminal 100 may be divided into a first user terminal 101 and a second user terminal 102 according to its operation and function.
  • the first user terminal 101 is a terminal that requests a recipe information by uploading a refrigerator image to the food material management server 200, or requests a recipe information by uploading a food image to the food material management server 200, and a second user.
  • the terminal 102 is a terminal that uploads the food material information about the refrigerator image uploaded by the first user terminal 101 to the food material management server 200 or the cooking information about the food image to the food material management server 200. .
  • the user terminal 100 when the user terminal 100 requests a food map or recipe information by uploading a refrigerator image or a food image, the user terminal 100 operates as the first user terminal 101 and uploads food material information or uploads cooking information. It operates as a terminal 102.
  • the foodstuff management server 200 collects foodstuff information of the refrigerator image received from the user terminal 100 and generates a foodstuff map corresponding to the refrigerator image based on the collected received information.
  • the food material management server 200 pushes the refrigerator images received from the first user terminal 101 to the plurality of second user terminals 102 and requests input of the food material information corresponding to the refrigerator images, and at least one of them.
  • the foodstuff map corresponding to the refrigerator image is generated using the received foodstuff information and provided to the first user terminal 101.
  • the food material management server 200 may provide a point to a user corresponding to the second user terminal 102 that inputs food material information corresponding to the food material map.
  • the reliability of the food material map may be improved.
  • the foodstuff management server 200 analyzes the foodstuff consumption pattern based on the change of the foodstuff map of the first user terminal 101, and accordingly generates purchase information for food and provides it to the first user terminal 101. can do.
  • the foodstuff management server 200 pushes the food image received from the first user terminal 101 to the plurality of second user terminals 102 to receive cooking information corresponding to the food image, and receives the received cooking information.
  • Based on the recipe information for the food image may be generated and provided to the first user terminal (101).
  • the first user terminal 101 that has received the recipe information displays the ingredients corresponding to the recipe information in the prestored food map and provides them to the user, or purchases the ingredients necessary for cooking food received from the food management server 200. Information can be provided to the user.
  • FIG. 2 is a control block diagram illustrating an example of a user terminal 100 of a food management system according to an embodiment
  • FIG. 3 is a diagram illustrating an example of collecting a refrigerator image.
  • the user terminal 100 may include a first communication unit 110, an input / output unit 120, a first storage unit 130, a camera 140, and a controller 150.
  • the first communication unit 110 may be connected to the communication network 300 to transmit and receive data with the food material management server 200.
  • the first communication unit 110 may be connected to the communication network 300 through a wireless communication protocol such as GSM / 3GPP series communication method (GSM, HSDPA, LTE Advanced), 3GPP2 series communication method (CDMA, etc.) or WiMAX,
  • GSM Global System for Mobile communications
  • HSDPA High Speed Downlink Packet Access
  • LTE Advanced 3GPP2 series communication method
  • WiMAX WiMAX
  • the first communication unit 110 may be connected to the communication network 300 through a conventional communication protocol or a communication protocol to be developed according to the development of a later technology.
  • the first communication unit 110 may transmit and receive a refrigerator image, food material information, food material map, purchase information, etc. to the food material management server 200 under the control of the controller 150.
  • the input / output unit 120 displays various information necessary for food management to the user and receives various inputs of the user.
  • the input / output unit 120 may provide an interface for acquiring a refrigerator image, input food material information, or the like, or provide a food material map or purchase information through a predetermined interface.
  • the input / output unit 120 includes a display panel (Plasma Display Panel, PDP), a liquid crystal display (LCD) panel, a light emitting diode (LED) panel, or an organic light emitting diode ( And display means such as an organic light emitting diode (OLED) panel, an active-matrix organic light-emitting diode (AMOLED) panel, and the like.
  • a display panel Plasma Display Panel, PDP
  • LCD liquid crystal display
  • LED light emitting diode
  • OLED organic light emitting diode
  • AMOLED active-matrix organic light-emitting diode
  • the input / output unit 120 may use a button input means such as a keypad, a push button, a membrane button, or the like, or a touch input means such as a touch pad. It may be included, it may be implemented in the form of a touch screen capable of both input and output.
  • an operating system for driving the user terminal 100 or various data necessary for food management for example, an interface for inputting information and a management application necessary for using a food management service may be stored.
  • the management application refers to a program for using the food management service connected to the food material management server 200 to be described below, it may be distributed by the manager of the food material management server 200.
  • the camera 140 may acquire a refrigerator image.
  • the refrigerator image refers to an image of the inside of the refrigerator, and may be obtained to display the food stored in the refrigerator.
  • the user may input the refrigerator image by using the camera 140 provided in the user terminal 100 as shown in FIG. 3.
  • the refrigerator image may be one image, but may be composed of a plurality of images as necessary.
  • the refrigerator image may include a refrigerator compartment image, a freezer compartment image, and a door image.
  • the controller 150 controls the user terminal 100 as a whole.
  • the controller 150 may include a device such as a CPU or a micro CPU, but is not limited thereto.
  • a device such as a CPU or a micro CPU, but is not limited thereto.
  • the controller 150 transmits the obtained refrigerator image to the food material management server 200 to prepare the food material.
  • the map generation may be requested, and the input / output unit 120 may be controlled to provide the user with purchasing information about the food material map or the food received from the food material management server 200.
  • the controller 150 transmits the obtained food image to the food material management server 200, requests recipe information of the food corresponding to the food image, and transmits the food image from the food material management server 200. Recipe information can be provided to the user.
  • the food image may be obtained by the camera 140 described above, but is not limited thereto.
  • the food image may be an image obtained through the communication network 300 or an image obtained through SNS.
  • the recipe information may further include purchasing information on ingredients that require additional purchase for cooking of food.
  • the controller 150 may search for a material corresponding to the recipe information in a previously stored food material map and provide the same to a user.
  • the user can easily manage the food by obtaining recipe information based on the food image, displaying food ingredients corresponding to the recipe information, or providing purchase information.
  • the controller 150 controls the input / output unit 120 to display a refrigerator image received from the food material management server 200 to the user.
  • the food material information input by the user is transmitted to the food material management server 200.
  • controller 150 controls the input / output unit 120 to display the food image received from the food material management server 200 to the user, and transmits the cooking information input by the user to the food material management server 200.
  • FIG. 4 is a control block diagram for explaining an example of the food material management server 200 of the food management system according to an embodiment
  • FIG. 5 is a view for explaining an example of a food material map
  • FIG. 7 is a diagram illustrating an embodiment of providing purchase information
  • FIG. 8 is a diagram illustrating an embodiment of providing recipe information
  • FIG. 9 is a purchase information providing.
  • the food material management server 200 may include a second communication unit 210, a second storage unit 220, a food material management unit 230, a point manager 240, a purchase manager 250, and a cooking information manager ( 260).
  • the second communication unit 210 may be connected to the communication network 300 to transmit and receive data with the plurality of user terminals 100.
  • the second communication unit 210 may be connected to the communication network 300 through a wireless communication protocol such as GSM / 3GPP series communication method (GSM, HSDPA, LTE Advanced), 3GPP2 series communication method (CDMA, etc.) or WiMAX,
  • the first communication unit 110 may be connected to the communication network 300 through a conventional communication protocol or a communication protocol to be developed according to the development of a later technology.
  • the second communication unit 210 may receive a refrigerator image or a food image from the first user terminal 101, or transmit a food material map, purchase information, recipe information, etc. to the first user terminal 101.
  • the second communication unit 210 transmits the refrigerator image or the food image to the second user terminal 102, and the cooking information corresponding to the food material information or the food image corresponding to the refrigerator image from the second user terminal 102. Can be received.
  • the second storage unit 220 stores information necessary for the operation of the foodstuff management server 200.
  • the second storage unit 220 may include an operating system of the food material management server 200, various data required for driving the food material management server 200, a database for generating a food material map from food material information, and the like. It is not limited to this.
  • the food material management unit 230 generates a food material map based on the refrigerator image received from the first user terminal 101.
  • the food material map indicates the type and quantity of food materials stored in each area of the refrigerator, and the food material map may include information on the type, quantity, and storage area of the food material.
  • the food material management unit 230 pushes the received refrigerator image to the plurality of second user terminals 102 to request input of food material information.
  • the second user terminal 102 receives a type and quantity of food ingredients corresponding to each area of the refrigerator from the user, generates food material information, and transmits the food material information to the food material management server 200.
  • the food material management unit 230 verifies the validity of the food material information received from the at least one second user terminal 102, and generates a food material map using the validated food material information.
  • the food material management unit 230 may validate the validity of the food material information transmitted from the plurality of second user terminal 102 by using the similarity between the food material information transmitted from the plurality of second user terminal 102. Can be verified For example, the food material management unit 230 classifies the plurality of groups according to the similarity of the food material information transmitted from the plurality of second user terminals 102, and determines the group having the largest number of samples among the plurality of groups as the effective group The foodstuff map may be generated using only the foodstuff information corresponding to the effective group.
  • the food material management unit 230 compares the similarity between the image of the food material corresponding to the food material information input by the second user terminal 102 and the refrigerator image, and if the similarity is greater than or equal to a preset threshold, the second user. If the terminal 102 determines that the inputted food information is valid, and the similarity is less than or equal to a preset threshold, the second user terminal 102 determines that the inputted food information is not valid and is transmitted from the second user terminal 102. It is possible to generate a food map without reflecting the processed food information.
  • the refrigerator image may be divided into a plurality of areas and transmitted to the second user terminal 102.
  • the corresponding food material information is different for each area.
  • the food material management unit 230 divides the refrigerator image into a plurality of areas A1 to A10 as shown in FIG. 3 to generate a plurality of divided images.
  • a plurality of divided images may be transmitted to the second user terminal 102 to request input of food material information corresponding to each region.
  • the divided image may be generated according to a preset reference preset reference (eg, shelf, refrigerator frame, etc.), but is not limited thereto. for example.
  • the food material management unit 230 may analyze the refrigerator image, classify areas having similar color and shape image features into the same area, and generate a divided image for each area having similar image features.
  • the validation of the above-mentioned food material information may be performed for each area.
  • the food material manager 230 transmits the food material map to the first user terminal 101 when the food material map generation is completed.
  • the first user terminal 101 receiving the food material map displays the food material map using the input / output unit 120 described above.
  • the food material map may be provided in the form of displaying the type and quantity of food ingredients in each region as shown in FIG. 5, or may be provided in the form of displaying a specific icon prepared for each kind of food material as shown in FIG. 6.
  • the method of providing food is not limited thereto.
  • the point manager 240 determines points to be accumulated to the user who inputs the food information, and accumulates the determined points to each user. In detail, the point manager 240 calculates a similarity degree between the food material map generated by the food material manager 230 and the food material information transmitted from the second user terminal 102, and according to the calculated similarity, each second user terminal 102. ) To determine the points to be credited to the user.
  • the point manager 240 transmits the earned information of the points, for example, the accumulated points and usable points, to the second user terminal 102 when the point accumulation is completed.
  • the purchase manager 250 may generate food material purchase information by using the food material map generated based on the refrigerator image and the food material map transmitted to the first user terminal 101, and may transmit the same to the first user terminal 101. have.
  • the purchase manager 250 analyzes the food consumption pattern of the user by using the food material map generated by the food material management unit 230 and the previously generated food material map, and determines the food material that needs to be purchased according to the food consumption pattern.
  • Purchase information can be generated.
  • the food consumption pattern may be generated based on the amount of change of each food material during the generation time of the past food map and the current food map, and the purchase information may include price information of the food ingredients.
  • the purchase information generated by the purchase management unit 250 may be transmitted along with the food material map, but may be transmitted to the first user terminal 101 when it is expected that the user needs to purchase according to the above-described food consumption pattern. have.
  • the purchase manager 250 may transmit the purchase information of the egg to the first user terminal 101 after two days.
  • the purchase manager 250 generates information on the expiration date of the food ingredients included in the food map using the previously generated food map and the currently generated food map, and provides the expiration date information along with the purchase information to the first user terminal 101. ) Can be sent.
  • the purchase management unit 250 searches for the food ingredients included in the previously generated food material map from the currently generated food material map, generates a management candidate group, and the expiration date of the food material in the management candidate group is generated from the past food map and the current food map
  • the expiration date information can be generated by searching the ingredients.
  • the first user terminal 101 receiving the purchase information and the expiration date information from the purchase manager 250 may display the purchase information and the expiration date information as shown in FIG. 7.
  • the cooking information manager 260 collects cooking information corresponding to the food image transmitted from the first user terminal 101, and uses the collected cooking information to prepare recipe information corresponding to the food image. It generates and provides to the first user terminal 101.
  • the cooking information manager 260 pushes the food image transmitted from the first user terminal 101 to the second user terminal 102 and requests the second user terminal 102 to input cooking information.
  • the cooking information manager 260 may generate recipe information based on the cooking information received from the second user terminal 102 and transmit the recipe information to the first user terminal 101.
  • Recipe information may be generated based on cooking information received from the second user terminal 102.
  • the cooking information manager recognizes a food corresponding to the food image based on the cooking information input from the second user terminal 102, searches for a cooking method, cooking material, calories, etc., corresponding to the recognized food, and recipes. Information can be generated.
  • the storage unit may be provided with a database storing recipe information according to food, if necessary, recipe information of a particular food may be added through the Internet search, cooking information transmitted from the second user terminal 102 If the cooking method, cooking ingredients, etc. are included in the recipe information may be added to reflect this.
  • the recipe information of the food may also be transmitted to the second user terminal 102 which inputs the cooking information, and the recipe information of each food may be transmitted to the first user terminal 101 or the second user terminal 102 that has received the cooking information.
  • the recipe information may be updated, and when the recipe information is updated, updated recipe information may be provided to the first user terminal 101 or the second user terminal 102 that inputs the cooking information.
  • the recipe information is updated using the feedback information, and the updated recipe information is updated to the second user terminal ( 102).
  • the first user terminal 101 or the second user terminal 102 provided with the recipe information may provide the recipe information to the user, and compare the previously stored food information information with the recipe information to prepare the food ingredients necessary for cooking the food. As shown in FIG. 8, the ingredients required for cooking the food may be displayed on the food map. For example, if beef and fish are included in the food ingredients in the recipe information, the first user terminal 101 may search for beef and fish on the food map to display an area in which the beef and fish are stored.
  • the cooking information management unit 260 compares the food ingredients map of the first user terminal 101 and the food ingredients included in the recipe information, and analyzes the food ingredients necessary for cooking the food, and purchases information of the food ingredients necessary for cooking. May be generated and transmitted to the first user terminal 101.
  • the first user terminal 101 receiving the purchase information may display the purchase information as shown in FIG. 9.
  • the first user terminal 101 may not only receive recipe information of food corresponding to the food image from the food management server 200 by uploading a food image, but also as illustrated in FIG. 8. Information about the storage location of the ingredients needed for cooking and the ingredients needed to be purchased for cooking can be provided together.
  • the point manager 240 determines points to be paid in the same manner as described above with respect to the second user terminal 102 that inputs cooking information, and accumulates the determined points to the user of each second user terminal 102. can do.
  • FIG. 10 is a flowchart illustrating a foodstuff managing method according to an exemplary embodiment.
  • the first user terminal 101 acquires a refrigerator image and pushes (transmits) the refrigerator image to the foodstuff managing apparatus (501).
  • the food material management apparatus that receives the refrigerator image from the first user terminal 101 may register the refrigerator image (502) and push (send) the refrigerator image to the second user terminal 102 (503).
  • 10 illustrates that a refrigerator image is pushed to one second user terminal 102, but the refrigerator image may be transmitted to the plurality of second user terminals 102.
  • the refrigerator image may be a plurality of divided images divided for each area as described above.
  • the second user terminal 102 Upon receiving the refrigerator image, the second user terminal 102 displays the refrigerator image to the user, and if the user inputs food material information corresponding to the refrigerator image, the second user terminal 102 may transmit the same to the food material management server 200 (504).
  • the food material management server 200 generates a food material map using the food material information received from the second user terminal 102 (505), and transmits it to the first user terminal 101 (506). In detail, the food material management server 200 may verify the validity of the food material information transmitted from the second user terminal 102 and generate the food material information using only the food material information verified as valid.
  • the food material management server 200 When the generation of the food material map is completed, the food material management server 200 accumulates points to the user of the second user terminal 102 that inputs the food material information (507), and the point earning information to the second user terminal 102 It may transmit 508.
  • the points accumulated for each user of the second user terminal 102 may be determined according to the similarity between the food material map and the input food material information. That is, high points are accumulated to the user who inputs the food material information with high similarity to the finally generated food map, and low points are accumulated to the user who inputs the food material information with the low similarity.
  • the foodstuff management server 200 may generate the purchase information (509), and transmit it to the first user terminal 101 (510). Purchasing information may be generated in the same manner as described above, and, unlike FIG. 10, may be transmitted together with a food material map.
  • FIG. 11 is a flowchart illustrating a foodstuff managing method according to another exemplary embodiment.
  • the first user terminal 101 acquires a food image and pushes (transmits) the food image to the foodstuff managing apparatus (601).
  • the food image may be photographed through the camera 140, but is not limited thereto, and may be downloaded through sns.
  • the food material management apparatus that receives the food image from the first user terminal 101 may register the food image (602) and push (send) the food image to the second user terminal 102 (603). In FIG. 11, the food image is pushed to one second user terminal 102, but the food image may be transmitted to the plurality of second user terminals 102.
  • the second user terminal 102 Upon receiving the food image, the second user terminal 102 displays the food image to the user, and if the user inputs cooking information corresponding to the food image, the second user terminal 102 may transmit the food image to the foodstuff management server 200 (604).
  • the food material management server 200 generates recipe information using the cooking information received from the second user terminal 102 (605), and transmits it to the first user terminal 101 (606). Since the method of generating recipe information is the same as the method of generating in the system described above, a detailed description thereof will be omitted. If the food material management server 200 receives the recipe information, it may transmit it to the second user terminal 102 (611).
  • the foodstuff management server 200 When the generation of the recipe information is completed, the foodstuff management server 200 accumulates points to the user of the second user terminal 102 that input the cooking information (607), and the point earning information to the second user terminal 102 May transmit (608).
  • the foodstuff management server 200 may generate the purchase information (609), and transmit it to the first user terminal 101 (610).
  • the purchase information may be generated by comparing recipe information and recipe information of the first user terminal 101 stored in advance as described above, and the first user terminal 101 shows the location of the food material corresponding to the recipe information in FIG. 8. It may be provided as shown.
  • FIG. 12 is a diagram illustrating a network for explaining a recipe providing system according to an exemplary embodiment.
  • the recipe providing system includes a recipe providing server 1000 and a user terminal 2000.
  • the recipe providing server 1000 is a server which extracts a recipe according to the member information and meal material information received from the user terminal 2000 and provides the recipe to the user terminal 2000.
  • the recipe providing server 1000 may extract a recipe according to the food material information received from the user terminal 2000 held by the general member and provide the recipe to the user terminal 2000.
  • the recipe providing server 1000 pays the points according to the activity of the general member, and executes the function of the paid member using the accumulated points.
  • the recipe providing server 1000 evaluates a recipe by a general member, a recipe is uploaded to the recipe providing server 1000 by a general member, or a food image cooked according to the recipe by the general member is a recipe. When uploaded to the providing server 1000, a point may be paid.
  • the recipe providing server 1000 extracts a recipe with reference to food material information received from the user terminal 2000 held by the paying member and the member information DB previously registered by the paying member, and then the user terminal 2000. ) Can be provided.
  • the recipe providing server 1000 generates and manages a recipe DB in order to provide a recipe according to a request of the user terminal 200 as described above.
  • the recipe providing server 1000 provides a recipe input interface at the request of a culinary expert to enable a culinary expert to enter recipes through the recipe input interface. These recipes are stored in the recipe DB and provided at the request of the user.
  • the recipe providing server 1000 generates a recipe using a recipe web page on a web space. These recipes are stored in the recipe DB and provided at the request of the user.
  • the recipe providing server 1000 crawls a recipe web page on a web space to collect a recipe web page and parses the recipe web page to generate a parse tree. That is, the recipe providing server 1000 may decompose a string into a meaningful token with respect to the text of the recipe web page, and generate a parse tree composed of the tokens.
  • the recipe providing server 1000 extracts parsing information corresponding to predetermined tag information by applying a text mining technique (for example, Conditional Random Fields) to the parse tree.
  • a text mining technique for example, Conditional Random Fields
  • the recipe providing server 1000 stores parsing information and tag information in correspondence.
  • the recipe providing server 1000 when the carrot is extracted as information corresponding to the predetermined tag information food material from the parse tree, the information and tag information may be stored as a carrot / food material.
  • the recipe providing server 1000 may store parsing information and tag information in four servings / amount.
  • the recipe providing server 1000 determines a recipe to be recommended to the user by using the member information and the food material information received from the user terminal 2000 and the recipe information stored in the recipe DB, and provides the recipe to the user terminal 2000.
  • the recipe providing server 1000 is a member information vector generated based on the member information received from the user terminal 2000, a food material vector and recipe DB generated based on the food material information received from the user terminal 2000.
  • a matrix is generated using the recipe vector generated based on. That is, the recipe providing server 1000 may generate a matrix composed of food material x member information x recipe.
  • the recipe providing server 1000 reduces the dimension of the matrix by using a dimension reduction method (for example, PCA, SVD, etc.).
  • the recipe providing server 1000 measures similarity of each of the information stored in the scaled-down matrix and clusters similar information to generate clustered information. That is, the recipe providing server 1000 is stored in the matrix reduced in dimensions 1. food material ⁇ member information ⁇ recipe, 2. food material ⁇ member information ⁇ recipe, 3. food material ⁇ member information ⁇ recipe, 4. food material ⁇ member information ⁇ Measure the similarity of recipes, etc. If 1 and 3 are similar, cluster the information of 1 and 3 to generate clustered information, and if 2 and 4 are similar, cluster the information of 2 and 4 to generate a plurality of groups. have.
  • the recipe providing server 1000 may determine whether each piece of information is similar, depending on how much information stored in the matrix of which the dimension is reduced matches. For example, the recipe providing server 1000, for each food material ⁇ member information ⁇ recipe stored in the matrix with reduced dimensions, if the number of matching materials in the recipe material is more than a certain number, the corresponding food material ⁇ member information ⁇ recipe is similar Can be judged.
  • the recipe providing server 1000 recommends a recipe based on a plurality of groups. At this time, the recipe providing server 1000 recommends the recipes in the order of high recipe according to the rank (ie, user evaluation result score) in each recipe of the plurality of groups.
  • the recipe providing server 1000 extracts an appropriate recipe according to the member information and the food material image received from the user terminal 2000 and provides it to the user terminal 2000, and then used according to the recipe.
  • the food material information is corrected and provided to the user terminal 2000, or another recipe is extracted and provided to the user terminal 2000 using the corrected food material information.
  • the recipe providing server 1000 may check how many kinds of food materials are by using the food material images received from the user terminal 2000, extract the recipes, and provide the recipes to the user terminal 2000. As a result, the reduced amount of food material is checked again and provided to the user terminal 2000 or other recipes that may use the remaining food material are provided to the user terminal 2000.
  • the recipe providing server 1000 provides a recipe together with essential food ingredients and selected food ingredients information. That is, the recipe providing server 1000 may help to intelligently determine that the user can cook even if some ingredients are insufficient by providing essential ingredients and optional ingredients.
  • the recipe providing server 1000 provides a recipe with essential seasonings and optional seasonings. However, the recipe providing server 1000 is to manage the seasoning in such a way that there is no problem in the recipe by checking the presence of the seasoning in advance in the case of essential seasoning.
  • the recipe providing server 1000 provides a cyber money or an incentive coupon to a professional chef who inputs a recipe according to the feedback about the recipe.
  • the recipe providing server 1000 provides a more detailed input function when requesting the user to input member information.
  • the recipe providing server 1000 provides a function of selecting a time for cooking until the food is cooked and made into food.
  • the recipe providing server 1000 provides a function of selecting a diet meal, a healthy meal (for example, diabetes, high blood pressure, etc.), a patient hospital meal, or the like in the case of a meal type.
  • a healthy meal for example, diabetes, high blood pressure, etc.
  • a patient hospital meal or the like in the case of a meal type.
  • the recipe providing server 1000 may include a special day (holiday, anniversary, birthday, etc.), a method of using a fire (for example, a stove, a microwave, a fire plate, etc.), and cooking utensils (if a special one is needed). , The number of participants, the gender of the participants, and the non-preferred subsidiary materials (adopted food or recipes, except if you do not like garlic).
  • the recipe providing server 1000 may be a simple selection (for example, general cooking, cooking using food materials, etc.) or a new selection (to recommend a new dish or something that has not been eaten in the first place). It provides the ability to do so.
  • the recipe providing server 1000 provides a food interval selection function (eg, luxury, general, inexpensive, etc.) to allow the user to configure a diet at a desired price.
  • a food interval selection function eg, luxury, general, inexpensive, etc.
  • the recipe providing server 1000 recommends a recipe so that the recipe is not duplicated with the most recently eaten by providing a restaurant information input function and at the same time, the recipe is provided so as not to be cooked again at home. can do.
  • the recipe providing server 1000 provides a diet selection cycle selection function (for example, daily, one week, two weeks, and the like) to display the food materials currently stored and the food materials to be purchased in a weekly or monthly basis. And so on. In this case, the recipe providing server 1000 calculates and provides food material costs for food materials to be purchased in the future.
  • a diet selection cycle selection function for example, daily, one week, two weeks, and the like
  • the recipe providing server 1000 recommends a food material purchase place where the food material can be purchased for the food material to be purchased in the future.
  • the recipe providing server 1000 allows the user to select the closest mart where the food material can be purchased and to be automatically connected to the mart application on the mobile.
  • the recipe providing server 1000 provides a function of allowing the user to receive food material delivery reservation information and deliver the food material according to the delivery reservation information.
  • the recipe providing server 1000 is connected to the mart app to allow the user to purchase a more discounted price through the same effect as a group order. This, in consultation with the mart app in advance to determine the discount of the day based on the purchase by the day before, the more you can buy a discount by providing a group price to consumers using the recipe providing server 1000.
  • the recipe providing server 1000 may give a gift certificate that can be purchased free of charge according to a random purchase order by randomly granting a gift certificate among buyers.
  • the recipe providing server 1000 provides a recipe for using food ingredients when the user presents food ingredients, and at the same time pays a coupon for purchasing subsidiary materials used together with the food ingredients.
  • the recipe providing server 1000 when a user purchases food materials such as ribs and fish for a gift, may provide a recipe for using ribs and fish and at the same time purchase subsidiary materials used with the food materials. Pay the coupons.
  • the recipe providing server 1000 provides a marketplace where food materials are exchanged with each other so that users can exchange food materials. At this time, the recipe providing server 1000 may be replaced with food materials that may be damaged or refrigerated. Since the recipe providing server 1000 is required to guarantee the quality of the exchanged product, the user who receives the food material should notify the user in advance of the problem by uploading the picture and video of the food material. In case of occurrence, refuse to receive.
  • the recipe providing server 1000 can be used by borrowing a company to link to use the kitchen utensils, dining table, containers, etc. only when necessary.
  • FIG. 13 is a block diagram illustrating an internal structure of the recipe providing server of FIG. 12.
  • the recipe providing server 1000 includes a recipe management block 1100, a food material information managing unit 1200, a member information managing unit 1300, and a recipe recommending unit 1400.
  • the recipe management block 1100 manages a recipe to be provided according to a user's request. To this end, the recipe management block 1100 receives a recipe from a culinary expert or stores recipe web information on a web space in the recipe DB 1110 and manages it.
  • the recipe management block 1100 provides a recipe input interface at the request of a culinary expert to enable a culinary expert to enter recipes through the recipe input interface.
  • the recipe management block 1100 stores and manages the recipe in the recipe DB 1110 when the recipe input through the recipe input interface is completed.
  • the recipe management block 1100 crawls recipe web pages on a web space to collect recipe web pages and parses the recipe web pages to generate a parse tree. That is, the recipe management block 1100 may decompose the string into meaningful tokens for the text of the recipe web page and generate a parse tree composed of the tokens.
  • the recipe management block 1100 extracts parsing information corresponding to predetermined tag information by applying a text mining technique (eg, Conditional Random Fields) to the parse tree.
  • a text mining technique eg, Conditional Random Fields
  • the recipe management block 1100 stores parsing information and tag information in association with each other.
  • the recipe management block 1100 may correspond to the information and tag information and store the carrot / food material.
  • the recipe management block 1100 may be stored in four servings / amount in correspondence with parsing information and tag information.
  • the recipe management block 1100 arranges the parsing information and the tag information according to a predetermined rule to generate a series of workflows of the cooking process.
  • the food material information management block 1200 receives and stores food material information input from a user. At this time, when the user inputs the food material information stored in his refrigerator as food material text, food material image, etc., the food material information management block 1200 receives and stores the food material information.
  • the food material information management block 1200 can determine how much of the kind of food material by using the food material image received from the user, extract the recipe and provide it to the user terminal, and then again reduces the amount of food material according to the recipe Check and provide to the user terminal or extract other recipes that can use the remaining food materials to provide to the user terminal.
  • the member information management block 1300 receives member information from a user and stores the member information in the member information DB 1310 to manage the member information.
  • the member information management block 1300 may store a certain number of favorite foods, a certain number of disliked foods, recipe difficulty levels, healthy food information, special schedule information, new food creation levels, gender, age, family members, and the like.
  • Member information is included and received in the member information DB 1310 to manage the member information.
  • the member information stored in the member information DB 1310 is used in the process of the recipe recommendation unit 1400 selecting a recommendation target recipe among a plurality of recipes to the user.
  • the recipe recommendation block 1400 may recommend a recipe using the recipe management block 1100, the food material information management unit 1200, and the member information management unit 1300.
  • the recipe recommendation block 1400 converts the member information stored in the member information DB 1310 into a member information vector model to generate a member information vector, and converts the food material information stored in the food material DB 1210 into food material.
  • a food material vector is generated by converting it into a vector model, and the recipe stored in the recipe DB 1110 is converted into a recipe vector model to generate a recipe vector.
  • the recipe recommendation block 1400 then generates the matrix using the member information vector, the food material vector, and the recipe vector. That is, the recipe recommendation block 1400 may generate a matrix composed of food material x member information x recipe. At this time, since the recipe recommendation block 1400 has a large amount of data of the matrix consisting of food material ⁇ member information ⁇ recipe, the dimension of the matrix is reduced by using a dimension reduction method (for example, PCA, SVD, etc.).
  • a dimension reduction method for example, PCA, SVD, etc.
  • the recipe recommendation block 1400 generates similar information by clustering similar information by measuring similarity of each information stored in the reduced dimension matrix. That is, the recipe recommendation block 1400 is 1. food material ⁇ member information ⁇ recipe, 2. food material ⁇ member information ⁇ recipe, 3. food material ⁇ member information ⁇ recipe, 4. food material ⁇ member information ⁇ If the similarity of each of the recipes 1, 3, etc. is measured, the information of 1, 3 is clustered to generate a clustered group, and if 2, 4 is similar, the information of 2, 4 can be clustered to generate a group.
  • the recipe recommendation block 1400 then recommends the recipe based on the plurality of groups. At this time, the recipe recommendation block 1400 recommends the recipes in the order of high recipe according to the rank (ie, user evaluation result score) in each recipe of the plurality of groups.
  • FIG. 14 is a block diagram illustrating an internal structure of the recipe management block of FIG. 12.
  • the recipe management block 1400 may include a recipe DB 1110, a web information processor 1120, a recipe workflow generator 1130, a similarity analyzer 1140, and a recipe input interface 1150. Include.
  • the recipe input from the culinary expert through the recipe input interface unit 1150 is stored or the recipe workflow generated by the recipe workflow generator 1130 automatically generates the recipe input interface unit 1150.
  • the recipe converted is saved.
  • the web information processing unit 1120 crawls a recipe web page on a web space to collect a recipe web page, parses a recipe web page, and generates a parse tree. Next, the web information processing unit 1120 extracts parsing information corresponding to predetermined tag information by applying a text mining technique (for example, Conditional Random Fields) to the parse tree. Then, the web information processing unit 1120 stores parsing information and tagging information in association with each other.
  • a text mining technique for example, Conditional Random Fields
  • the recipe workflow generation unit 1130 arranges the tagging information processed by the web information processing unit 1120 according to a predetermined rule to generate a series of recipe workflows of a cooking process.
  • the similarity analysis unit 1140 generates substitute food material information by calculating similarity between food materials in the process of creating a recipe workflow by the recipe workflow generator 1130. That is, the similarity analysis unit 1140 generates replacement food material information by calculating similarity between the information of the food material among the attribute values of the nodes in the recipe workflow in the process of generating the recipe workflow by the recipe workflow generator 1130. do.
  • the present invention can propose a substitute material, so that food can be taken with replaceable ingredients stored in a refrigerator or home, thereby inducing the use of the stored food material and efficiently operating fresh food material and food material at all times. Do it.
  • FIG. 15 is a block diagram illustrating an internal structure of the web information processing unit of FIG. 14.
  • the web information processing unit 1120 includes a web crawling module 1120a, an information parsing module 1120b, and an information extraction module 1120c.
  • the web crawling module 1120a crawls and provides recipe web information on the web space to the information parsing module 1120b.
  • the information parsing module 1120b parses recipe web information crawled by the web crawling module to generate a parse tree. That is, the information parsing module 1120b may decompose the string into meaningful tokens for the text of the recipe web page and generate a parse tree composed of the tokens.
  • the information extraction module 1120c extracts parsing information corresponding to predetermined tagging information from a parse tree generated by the information parsing module.
  • the information extraction module 1120c extracts parsing information corresponding to predetermined tag information by applying a text mining technique (for example, Conditional Random Fields) to the parse tree.
  • a text mining technique for example, Conditional Random Fields
  • FIG. 16 is an exemplary diagram for describing a recipe workflow generated by the recipe workflow generator of FIG. 15.
  • the recipe management block 1100 parses recipe web information collected on a web space to generate a parse tree, extracts parsing information corresponding to predetermined tagging information from the parse tree, and parses information and tagging. Correspond and store the information.
  • the recipe management block 1100 generates a recipe workflow indicating a cooking process by arranging the generated information corresponding to the parsing information and the tagging information according to a pre-generated rule.
  • the recipe workflow consists of a plurality of nodes, each of which is assigned an attribute value (eg, food material information), and the link between the nodes represents a state change.
  • attribute value eg, food material information
  • FIG. 17 is a block diagram illustrating an internal structure of the member information manager of FIG. 13.
  • the member information block 1300 includes a member information DB 1310, a preferred food receiver 1320, a non-preferred food receiver 1330, and a personal information receiver 1340.
  • the member information DB 1310 stores member information received by each of the preferred food receiver 1320, the non-preferred food receiver 1330, and the personal information receiver 1340.
  • the preferred food receiver 1320 receives a plurality of preferred foods from the user
  • the non-preferred food receiver 1330 receives a plurality of non-preferred foods from the user.
  • the reason for receiving the plurality of preferred foods and the plurality of non-preferred foods is to filter the recipes to be recommended by analyzing not only the foods preferred or the non-preferred foods but also the food materials included therein.
  • the personal information receiver 1340 receives personal information (for example, recipe difficulty, healthy food information, special schedule information, new food creation level, gender, age, family members, etc.) from the user.
  • personal information for example, recipe difficulty, healthy food information, special schedule information, new food creation level, gender, age, family members, etc.
  • the personal information receiving unit 1340 provides a more detailed input function when requesting the user to input member information.
  • the personal information receiver 1340 provides a function of selecting a time from cooking time to cooking food in the case of cooking time.
  • the personal information receiver 1340 provides a function of selecting a diet meal, a health (eg, diabetes, high blood pressure, etc.) meal, a patient hospital meal, or the like in the case of a meal type.
  • a health eg, diabetes, high blood pressure, etc.
  • the personal information receiving unit 1340 may include a special day (holiday, anniversary, birthday, etc.), a method of using a fire (for example, a stove, a microwave, a fire plate, etc.), and cooking utensils (if a special one is needed). , The number of participants, the gender of the participants, and the non-preferred subsidiary materials (adopted food or recipes, except if you do not like garlic).
  • the personal information receiving unit 1340 may be a simple selection (for example, general cooking, cooking using food materials, etc.) or a new selection (to recommend a new dish or those that have not been eaten in the first place). It provides the ability to do so.
  • the personal information receiver 1340 provides a food interval selection function (eg, luxury, general, inexpensive, etc.) to allow the user to configure a diet at a desired price.
  • a food interval selection function eg, luxury, general, inexpensive, etc.
  • the personal information receiver 1340 recommends a recipe so as not to overlap with the most recently eaten by providing a dining out information input function, and at the same time not to cook the food eaten by eating out again at home. can do.
  • the personal information receiving unit 1340 provides a diet selection cycle selection function (for example, daily, one week, two weeks, etc.) to display the food materials currently stored and the food materials to be purchased in a weekly or monthly unit. And so on.
  • a diet selection cycle selection function for example, daily, one week, two weeks, etc.
  • FIG. 18 is a block diagram illustrating an internal structure of the recipe recommendation unit of FIG. 13.
  • the recipe recommendation block 1400 includes a food material vector generation unit 1410, a member information vector generation unit 1420, a recipe vector generation unit 1430, a matrix generation unit 1440, and a clustering recipe generation unit ( 1450 and the recommended recipe selection unit 1460.
  • the food material vector generator 1410 converts the food material information stored in the food material DB 1210 into a food material vector model to generate a food material vector.
  • the member information vector generator 1420 converts member information stored in the member information DB 1310 into a member information vector model to generate a member information vector.
  • the recipe vector generation unit 1430 converts the recipe stored in the recipe DB 1110 into a recipe vector model to generate a recipe vector.
  • the matrix generator 1440 may include the food material vector generated by the food material vector generator 1410, the member information vector generated by the member information vector generator 1420, and the recipe vector generated by the recipe vector generator 1430. Generate the matrix using.
  • the matrix generator 1440 may generate a matrix composed of food material x member information x recipe.
  • the matrix generation unit 1440 reduces the dimension of the matrix by using a dimension reduction method (for example, PCA, SVD, etc.) because a large amount of data of the matrix consisting of food material ⁇ member information ⁇ recipe.
  • the clustering recipe generator 1450 measures the similarity of each of the information stored in the matrix whose dimension is reduced by the matrix generator 1440 to cluster the similar information to generate clustered information. That is, the clustering recipe generating unit 1450 is 1. food material ⁇ member information ⁇ recipe, 2. food material ⁇ member information ⁇ recipe, 3. food material ⁇ member information ⁇ recipe, 4. food material ⁇ member information stored in the matrix reduced in dimensions. ⁇ Measure each similarity, such as recipe, and if 1, 3 are similar, cluster the information of 1, 3 to generate clustered information. If 2, 4 are similar, cluster the information of 2, 4 to generate a plurality of groups. Can be.
  • the recommendation recipe selecting unit 1460 recommends a recipe based on a plurality of groups generated by the clustering recipe generating unit 1450. In this case, the recommendation recipe selecting unit 1460 recommends the corresponding recipes in the order of the high recipe according to the rank (ie, the user evaluation result score) in the recipe of each of the plurality of groups.
  • 19 is a flowchart illustrating an embodiment of a recipe providing method.
  • the recipe providing server 1000 receives a recipe from a culinary expert or collects recipe web information on a web space and manages the recipe (step S810).
  • the recipe providing server 1000 receives the food material information existing in the refrigerator from the user (step S820).
  • the recipe providing server 1000 receives member information from the user (step S830).
  • the recipe providing server 1000 extracts and recommends a recipe to be recommended to the user by using the recipe, the food material information, and the member information (step S840).
  • FIG. 20 is a flowchart illustrating a method of generating a creative recipe according to an embodiment
  • FIG. 21 is a diagram illustrating a potato stew recipe collected through a data collection step of a creative recipe generating method according to an embodiment.
  • Creative recipe generation method is a method for generating a new recipe, that is, a recipe for cooking to be made from the input cooking ingredients, for example, cooking ingredients to be used or actual cooking ingredients to be prepared to be.
  • the method for generating a creative recipe according to an embodiment of the present invention includes a cooking information receiving step S1, a data collecting step S2, a classification and formatting step S3, and a storing step S4. ) And a new recipe generation step (S5).
  • the cooking information receiving step S1 is a step of receiving information about a cooking type and cooking ingredients input through a user interface.
  • the user is provided with a web page including an interface window for inputting a cooking type and cooking ingredients from a web server. Accordingly, the user may input "simmered” as a cooking form, "bean sprouts” and “pork”, “sweet potato” and “leek” as a cooking material.
  • the cooking forms and cooking ingredients exemplified above are only examples, and in the embodiment of the present invention, the cooking forms are “boiled”, and the cooking ingredients are “bean sprouts” and “pork”, “sweet potatoes” and “leeks”. It is not limited.
  • the cooking form and the cooking ingredients may be input in the form of text in the interface window provided by the web server.
  • the web page provided by the web server provides a plurality of cooking material icons and cooking type icons. Accordingly, the cooking material and cooking type icons selected by the user may be input to the interface window.
  • the cooking information receiving step S1 as described above, information about a cooking type and cooking ingredients input by the user is received.
  • the data collection step (S2) is a cooking type and cooking ingredients existing on the web through the data mining (Data Mining) technique, more specifically, the cooking type input by the user through the cooking information receiving step (S1) And collecting atypical data regarding recipe information related to cooking ingredients.
  • the data collection step (S2) can collect the unstructured data by automated software.
  • at least one piece of unstructured data about recipe information related to a cooking type and cooking ingredients input by a user may be collected using a crawler, which is software for collecting data in real time.
  • the crawler takes URLs linked to a web page through a uniform URL (Uniform Resource Locator) and randomly enters the ⁇ simmered '' dish typed by the user, the "bean sprouts” and "pig” cooked by the user. Collect data related to meat, sweet potatoes, and leeks.
  • the crawler may also collect, for example, existing cooking related blogs.
  • FIG. 21 is a text form data regarding a potato stew recipe (R), which is a typical stew dish, among a number of afforestation related recipe data collected by the data collection step S2 when the cooking type input by the user is “simmered”. Shows.
  • R potato stew recipe
  • the potato stew recipe (R) collected by the data collection step (S2) is defined on the web, that is, existing recipes, which will be described below based on the potato stew recipe (R). Let's do it.
  • the classification and shaping step S3 is a step of classifying and shaping the unstructured data collected by the data collection step S2, that is, the potato stew recipe R, into recipe data.
  • the unstructured data is classified and formatted using the Word2Vector and Paragraph2Vector techniques.
  • Word2Vector will be briefly described.
  • Word2Vector is an artificial neural network that processes text and is composed of two layers.
  • Word2Vector is a technique for analyzing the similarity between words. It obtains a vector corresponding to a word for each word input, and puts the vector value into a deep neural network to grasp the similarity of words.
  • Word2Vector can be expressed in proportional formula.
  • Word2Vector is “cucumber” from verbs such as "cut", “cut”, “pickle”, boil ", etc.
  • Word2Vector is a technique that analyzes the similarity based on the meaning of a word and expresses it by high-dimensional space vector operation.
  • Paragraph2Vector is a technique for classifying text of sentence or paragraph structure analyzed through Word2Vector technique.
  • the classification and shaping step S3 classifies and formalizes the unstructured data collected by the data collection step S2 based on the information on the cooking type and the cooking ingredients received by the cooking information receiving step S1. Into recipe data.
  • the storing step (S4) is a step of storing the recipe data generated through the classification and shaping step (S3) in the database.
  • recipe data, recipes, etc. are stored in a database in which recipe-related information is stored.
  • the new recipe generation step S5 corresponds to the cooking type and cooking material input by the user from the recipe data stored in the database through the storage step S4 using a deep learning technique. Creating a new or new, i.e. creative recipe.
  • the recipe data stored in the database becomes models of learning to learn through deep learning techniques.
  • New recipe generation step (S5) first, the recipe data stored in the database, that is, the first step of extracting a recipe and cooking process from the learning model.
  • a natural language processing (NLP) technique is used to analyze Hangul, which is a language forming recipe data, in morpheme units. That is, in the first step, first, normalizing, stemming, and tokenizing the language forming the recipe data.
  • NLP natural language processing
  • the first stage classifies verbs from normalized, rooted and truncated languages. Then, the grouped verbs are clustered through the deep neural network, and the grouped verbs are visually identified by a human, and each verb is labeled as "recipe". For example, verbs such as “cut”, “simmer”, “fry”, “bak”, “boil”, “dech”, “mix”, “pick up”, “toss”, and “dry” Can be labeled. In this case, as described above, the types of verbs labeled with the recipe are just examples, and more verbs may be labeled with the recipe.
  • the new recipe generation step (S5) includes a second step of learning the cooking process for each cooking material.
  • verbs for input cooking ingredients and labeled recipes are used for the language normalized, rooted and truncated through the first stage, as in the classification and formalization stage (S3). Calculate the vector distance between them. As shown in FIG. 3, when the input cooking ingredient is "cucumber”, the vector distance between the verbs "cut”, “cut”, “pickle”, and "boil” for the labeled recipe is calculated.
  • the verbs labeled with the recipe for each cooking ingredient are listed based on the calculated vector distance.
  • the recipe with the shortest vector distance is "sliced” in order of priority, followed by "cut”, “pickled”, and “boiled” according to the vector distance.
  • the following proportional formula is applied to derive verbs related to the recipe for other cooking ingredients based on a list based on the vector distances of the verbs labeled with the recipe for each cooking ingredient. .
  • I is a cooking ingredient
  • M is a recipe
  • a is cooking ingredient of present recipe
  • b is a verb representing a recipe for cooking ingredient a
  • x is a cooking ingredient
  • y is a recipe for input cooking ingredient x Verb to indicate.
  • the cooking ingredient a of the present recipe may be selected from beef, cucumber, and water, and the verb having the shortest vector distance from the cooking ingredient a is "Burn", "cut” or “Boil” can be selected on the list. Therefore, if you substitute the above proportional formula,
  • the cooking ingredient x associated with beef a may be pork, and the recipe y therefor may be derived from “grill”.
  • the cooking ingredient x associated with the cucumber a is carrot, and the recipe y for it is “cut”.
  • the cooking ingredient x related to the water a may be derived from the broth and the recipe y thereof may be “boiled”.
  • the new recipe generation step (S5) includes a third step of reassembling the language including the normalized, rooted and truncated words or verbs into spoken sentences. do.
  • the normalized, rooted and truncated recipe language is re-assembled into colloquial sentences through the first and second steps, and reverse-tokenizing and reverse-stemming. .
  • a new recipe for a dish to be made of the input cooking form and the cooking ingredients for example, a cooking material to be used or a dish to be made of the prepared cooking ingredients is present. It is easily and quickly generated based on the relevant recipe (R).
  • the new recipe generation step (S5) may further comprise a fourth step for suggesting a modification to the new recipe generated after the third step. That is, in the fourth step, one or more new cooking ingredients that are compatible with the cooking ingredients input by the user are recommended from the database. And through deep learning on the recommended new cooking ingredients, a recipe for new cooking ingredients is derived. We then propose a modification to the new recipe so that the recipe for the new cooking ingredient is added to the new recipe. Accordingly, the user selects and determines whether to modify the new recipe according to the preference.
  • the pork bean sprouts sweet potato leek recipe (R3) is a combination of R1 and R2 when the pork sprouts potato stew recipe (R1 in Figure 23) and sweet potato leek recipe (R2 in Figure 26) is stored in the database. May be generated.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Development Economics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Finance (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Accounting & Taxation (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Game Theory and Decision Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Cold Air Circulating Systems And Constructional Details In Refrigerators (AREA)
  • Primary Health Care (AREA)

Abstract

본 발명의 실시예는 사용자가 입력한 이미지를 기반으로 식재료를 인식하여 식재료맵을 제공하는 식재료 관리 시스템 및 식재료 관리 방법에 관한 것이다. 또한, 본 발명의 실시예는 사용자의 냉장고에 있는 식자재를 이용하여 음식을 만들 수 있는 레시피를 제시하여 잔반을 남기지 않도록 하는 레시피 제공 방법 및 이를 실행하는 서버에 관한 것이다. 또한, 본 발명의 실시예는 사용자에 의해 입력되는 요리재료로 만들어질 요리에 대한 새로운 레시피를 현존하는 관련 레시피에 근거하여 쉽고 빠르게 생성할 수 있는 창작 레시피 생성방법에 관한 것이다.

Description

식재료 관리 시스템 및 식재료 관리 방법, 식재료를 이용한 레시피 제공 방법 및 이를 실행하는 서버, 식재료를 이용한 창작 레시피 생성방법
본 발명은 식재료 관리 시스템 및 식재료 관리 방법, 식재료를 이용한 레시피 제공 방법 및 이를 실행하는 서버, 식재료를 이용한 창작 레시피 생성방법에 관한 것이다.
음식물을 저온에서 보관하여 식품의 부패와 변질을 방지하는 냉장고는 1900년대초 일반 가정에 보급되기 시작하여, 대부분의 가정에서는 냉장고를 이용하여 식재료 또는 음식을 보관하고 있다. 냉장고는 일반적으로 냉장실과 냉동실로 구분되는데, 냉장실은 야채, 과일 등을 비롯한 각종 음식물을 신선한 상태로 오래 보관할 수 있도록 약 3~4℃를 유지하고, 냉동실은 육류를 비롯한 음식물을 냉동시킨 상태로 보관하기 위해 영하의 온도를 유지하고 있다.
냉장고의 크기가 커지고, 더 다양한 식재료 또는 음식이 냉장고를 통해 보관 가능해짐에 따라, 냉장고에 수납된 식재료의 관리가 어려워지는 문제점이 있다.
한편, 사용자가 요리를 할 때 TV에서 방영되는 요리 프로그램, 요리책, 웹 페이지를 참조하여 준비된 식자재를 가지고 요리하는 것이 통상적인 방법이다.
사용자가 레시피에 따라 요리를 하는 경우 항상 요리 전에 필요한 식자재를 추가적으로 구매해서 준비해야 한다. 특히, 사용자가 특별한 요리의 레시피에 따라 요리를 하는 경우 특별한 식자재를 추가적으로 구매해서 준비해야 한다. 이러한 경우, 사용자는 요리에 사용하고 남은 식자재를 냉장고에 보관하며 다른 요리에 활용하지 못하여 냉장고에 오랜 시간 동안 보관되다가 음식물 쓰레기로 버려지기 일수이다.
사용자가 냉장고에 보관된 식자재를 이용하여 요리를 하려고 하더라도 자신이 알고 있는 레시피 이외에 다른 요리 방법이 떠오르지 않아 냉장고에 그냥 보관을 하거나 부족한 식자재를 추가로 구매해서 다른 요리를 하는 경우가 허다하다. 이에 따라, 사용자는 남은 식자재를 버리거나 남은 식자재가 레시피와 상관없더라도 해당 식자재도 짬뽕식으로 섞어서 사용하여 냉장고에서 없애곤 하였다.
또한, 가족수가 많거나 가족에 학생이 있는 가정의 경우 주부는 가족 구성원의 식사 시간대가 달라서 여러 번 식사를 준비해야 하기 때문에 남은 음식을 재활용할 수 있으나, 가족수가 적거나 혼자 지내는 가정의 경우 사용자가 음식을 하는 시간과 노력을 최소화 하려다 보니, 항상 먹던 음식만 먹거나, 먹다가 남은 음식을 단순하게 데워서 먹고, 너무 오래되었다고 생각되면 버리는 것이 일상화되었다. 이에 따라, 음식물 쓰레기가 많아져서 환경에도 문제가 된다.
한국공개특허 제10-2013-0117255호는 요리 레시피 수납 도마에 관한 것으로, 레시피 수납 도마로써 요리 레시피를 참고 할 때 공간의 제약 없이 레시피를 쉽게 참고 할 수 있도록 도마의 일측면에 레시피를 수납할 수 있는 공간을 만들고 수납측의 상측부에 투명창을 형성 하여 레시피를 쉽게 볼 수 있게 한다는 내용이 개시되어 있으나, 상기의 문제점을 해결하기 위한 방안은 개시되어 있지 않다.
최근 들어, 요리에 대한 대중적 관심이 증가되면서, 요리를 소개하고 단순히 먹는 것에 대한 대리 만족을 주는 방송이 인기를 끌다가, 이제는 요리를 직접 조리하여 만드는 소위 쿡방으로 불리는 요리 프로그램이 인기를 끌고 있다. 현재, 요리 프로그램이나 예컨대, 요리 블로그 등을 통해 거의 모든 요리에 대한 다양한 레시피들이 소개되고 있다. 이에 따라, 요리 초보자라 할지라도 공개되어 있는 레시피를 통해 누구의 도움도 받지 않고, 손수 요리를 만드는 것이 가능해졌다.
그런데, 공개된 대부분의 레시피들은 그 레시피를 개발한 사람의 기호나 취향, 식성에 따라 만들어졌거나 옛날부터 그냥 전해져 내려오는 조리방법을 정리한 것이므로, 공개되어 있는 레시피로 만든 요리가 모든 사람들의 입맛을 만족시키는 것은 아니다.
한편, 공개되어 있는 레시피에 나와 있는 요리재료 중 특정 요리재료는 바로 준비하기 어려운 경우가 흔히 발생된다. 요리 초보자에게 이런 경우가 발생되면, 준비된 요리재료에 맞는 레시피를 찾는데 다시 많은 시간을 할애해야 된다. 그리고 그럼에도 불구하고 적합한 레시피를 찾지 못하면, 대부분은 요리하는 것 자체를 포기하게 되고, 결국에는 요리하는 것에 대한 흥미를 잃게 된다.
본 발명의 일 실시예는 효율적인 식재료 관리를 위한 식재료맵을 제공하는 식재료 관리 시스템 및 식재료 관리 방법을 제공하는 것을 그 목적으로 한다.
본 발명의 일 실시예는 사용자의 냉장고에 있는 식자재를 이용하여 음식을 만들 수 있는 레시피를 제시하여 잔반을 남기지 않도록 하는 레시피 제공 방법 및 이를 실행하는 서버를 제공하는 것을 목적으로 한다.
본 발명의 일 실시예는 사용자가 레시피를 통해 음식을 만들어 먹음으로써 사용자가 냉장고에 식자재를 방치해서 버리지 않고 식자재를 사용할 수 있도록 하는 레시피 제공 방법 및 이를 실행하는 서버를 제공하는 것을 목적으로 한다.
본 발명의 일 실시예는 사용자가 이용한 레시피와 겹치지 않는 레시피를 제공함으로써 사용자가 다양한 방식으로 조리해서 매번 똑같은 음식이 아닌 다양한 음식을 먹을 수 있도록 하는 레시피 제공 방법 및 이를 실행하는 서버를 제공하는 것을 목적으로 한다.
본 발명의 일 실시예는 사용자의 개인 정보에 따라 식사 인원, 질병 정보 등에 따라 레시피를 제공함으로써 사용자가 개인 맞춤형으로 적절한 레시피를 제공받아 활용할 수 있도록 하는 레시피 제공 방법 및 이를 실행하는 서버를 제공하는 것을 목적으로 한다.
본 발명의 일 실시예는 사용자에 의해 입력되는 요리재료로 만들어질 요리에 대한 새로운 레시피를 현존하는 관련 레시피에 근거하여 쉽고 빠르게 생성할 수 있는 창작 레시피 생성방법을 제공하는 것을 목적으로 한다.
본 발명의 일 실시예에 따른 식재료 관리 방법은 제1 사용자 단말로부터 냉장고 이미지를 수신하는 단계;와 냉장고 이미지를 미리 등록된 복수의 제2 사용자 단말로 푸쉬하는 단계;와 적어도 하나의 제2 사용자 단말로부터 냉장고 이미지에 대응되는 식재료 정보를 수신하는 단계;와 적어도 하나의 제2 사용자 단말로부터 수신된 식재료 정보를 이용하여 냉장고에 수납된 적어도 하나의 식재료를 인식하여 냉장고의 각 영역 별로 수납된 식재료의 종류 및 수량에 대한 정보로 구성된 식재료맵을 생성하는 단계;와 식재료맵을 제1 사용자 단말에 제공하는 단계;와 식재료맵과 적어도 하나의 제2 사용자 단말로부터 수신된 식재료 정보의 유사도를 분석하고, 유사도에 따라 제2 사용자에게 포인트를 적립하는 포인트 적립 단계;를 포함한다.
또한, 식재료 관리 방법은 과거에 생성된 이전 식재료맵과 제2 사용자 단말로부터 수신된 식재료 정보를 이용하여 생성된 식재료맵을 이용하여 사용자의 식재료 소비 패턴을 분석하고, 식재료 소비 패턴을 기초하여 식재료에 대한 구매 정보를 생성하여 제1 사용자 단말로 전송하는 단계;를 더 포함할 수 있다.
또한, 식재료맵을 생성하는 단계는, 적어도 하나의 제2 사용자 단말로부터 수신된 식재료 정보를 유사도에 따라 복수의 그룹으로 분류하여 표본 수에 따라 유효 그룹을 결정하고, 결정된 유효 그룹에 식재료 정보를 이용하여 식재료맵을 생성하는 단계;를 포함할 수 있다.
또한, 식재료 관리 방법은 제1 사용자 단말로부터 음식 이미지를 수신하는 단계;와 복수의 제2 사용자 단말로 푸쉬하는 단계;와 복수의 제2 사용자 단말로부터 음식 이미지에 대응되는 조리 정보를 수신하고, 조리 정보에 기초하여 식재료 정보, 조리법, 및 열량 정보를 포함하는 레시피 정보를 생성하는 단계;와 레시피 정보를 제1 사용자 단말 및 제2 사용자 단말로 전송하는 단계;를 더 포함할 수 있다. 이때, 식재료맵과 레시피 정보에 대응되는 식재료를 비교하여, 추가 구매가 필요한 식재료를 분석하여 구매 정보를 생성하고, 구매 정보를 제1 사용자 단말에 전송하는 단계;도 더 포함될 수 있다.
또한, 본 발명의 일 실시예에 따른 식재료 관리 시스템은 식재료 관리 서버;와 식재료 관리 서버로 냉장고 이미지를 전송하는 제1 사용자 단말;과 식재료 관리 서버로부터 냉장고 이미지를 수신하여 표시하고, 냉장고 이미지에 대응되는 식재료 정보를 입력 받아 식재료 관리 서버로 전송하는 복수의 제2 사용자 단말;을 포함한다.
이때, 식재료 관리 서버는, 복수의 제2 사용자 단말로부터 수신된 식재료 정보를 이용하여 냉장고에 수납된 적어도 하나의 식재료를 인식하여 냉장고의 각 영역 별로 수납된 식재료의 종류 및 수량에 대한 정보로 구성된 식재료맵을 생성하여 제1 사용자 단말에 전송하는 식재료 관리부; 와 식재료맵과 복수의 제2 사용자 단말로부터 수신된 식재료 정보의 유사도를 분석하고, 유사도에 따라 복수의 제2 사용자 단말의 각 사용자에게 포인트를 적립하는 포인트 관리부;를 포함할 수 있다.
또한, 식재료 관리 서버는 과거에 생성된 이전 식재료맵과 제2 사용자 단말로부터 수신된 식재료 정보를 이용하여 생성된 식재료맵을 이용하여 사용자의 식재료 소비 패턴을 분석하고, 식재료 소비 패턴을 기초하여 식재료에 대한 구매 정보를 생성하여 제1 사용자 단말로 전송하는 구매 관리부;를 더 포함할 수 있다.
또한, 식재료 관리부는, 적어도 하나의 제2 사용자 단말로부터 수신된 식재료 정보를 유사도에 따라 복수의 그룹으로 분류하여 표본 수에 따라 유효 그룹을 결정하고, 결정된 유효 그룹에 식재료 정보를 이용하여 식재료맵을 생성할 수 있다.
또한, 식재료 관리 장치는 제1 사용자 단말로부터 음식 이미지를 수신하면 음식 이미지를 복수의 제2 사용자 단말로 푸쉬하여 음식 이미지에 대응되는 조리 정보를 수신하고, 조리 정보에 기초하여 식재료 정보, 조리법, 및 열량 정보를 포함하는 레시피 정보를 생성하여 제1 사용자 단말로 전송하는 조리정보 관리부;를 더 포함할 수 있다.
또한, 조리정보 관리부는, 식재료맵과 레시피 정보에 대응되는 식재료를 이용하여 추가 구매가 필요한 식재료를 분석하여 구매 정보를 생성하고, 구매 정보를 제1 사용자 단말에 전송할 수 있다.
본 발명의 일 실시예에 따른 레시피 제공 서버는 요리 전문가로부터 레시피를 입력받거나 웹 공간 상의 레시피 웹 정보를 수집하여 레시피를 관리하는 레시피 관리 블록, 사용자로부터 냉장고 내에 존재하는 식자재 정보를 수신하여 관리하는 식자재 정보 관리 블록, 사용자로부터 회원 정보를 수신하여 관리하는 회원 정보 관리 블록 및 상기 레시피, 상기 식자재 정보 및 상기 회원 정보를 이용하여 상기 사용자에게 추천할 레시피를 추출하여 추천하는 레시피 추천 블록을 포함한다.
또한, 본 발명의 일 실시예에 따른 레시피 제공 서버에서 실행되는 레시피 제공 방법은 요리 전문가로부터 레시피를 입력받거나 웹 공간 상의 레시피 웹 정보를 수집하여 레시피를 관리하는 단계, 사용자로부터 냉장고 내에 존재하는 식자재 정보를 수신하는 단계, 상기 사용자로부터 회원 정보를 수신하는 단계 및 상기 레시피, 상기 식자재 정보 및 상기 회원 정보를 이용하여 상기 사용자에게 추천할 레시피를 추출하여 추천하는 단계를 포함한다.
또한, 본 발명의 일 실시예에 따른 창작 레시피 생성방법은, 사용자 인터페이스를 통해 입력되는 요리형태 및 요리재료에 관한 정보를 수신하는 요리 정보 수신단계; 데이터 마이닝을 통해 웹 상에 존재하는 상기 요리형태 및 상기 요리재료와 관련된 레시피 정보에 관한 비정형 데이터를 수집하는 데이터 수집단계; 상기 비정형 데이터를 분류 및 정형화하여 레시피 데이터로 만드는 분류 및 정형화 단계; 상기 레시피 데이터를 데이터베이스에 저장하는 저장단계; 및 딥 러닝 기법을 이용하여, 상기 데이터베이스에 저장되어 있는 상기 레시피 데이터로부터 상기 요리형태 및 요리재료에 부합되는 새로운 레시피를 생성하는 신규 레시피 생성단계를 포함할 수 있다.
여기서, 상기 분류 및 정형화 단계에서는 Word2Vector 및 Paragraph2Vector 기법을 이용하여 상기 비정형 데이터를 분류 및 정형화할 수 있다.
또한, 상기 신규 레시피 생성단계는, 상기 데이터베이스에 저장되어 있는 상기 레시피 데이터로부터 조리법과 조리과정을 추출하는 제1 단계; 및 상기 요리재료 별로 조리과정을 학습하는 제2 단계를 포함할 수 있다.
이때, 상기 제1 단계는, 상기 레시피 데이터를 이루는 언어에 대해 정규화, 어근화 및 절단화하는 제1 과정; 정규화, 어근화 및 절단화된 상기 언어에서 동사들을 분류하는 제2 과정; 분류된 상기 동사들을 심층 신경망을 통해 군집화하는 제3 과정; 및 군집화된 상기 동사들을 확인하여 상기 동사들 각각을 조리법으로 라벨화하는 제4 과정을 포함할 수 있다.
또한, 상기 제2 단계에서는 정규화, 어근화 및 절단화된 상기 언어에 대해 Word2Vector 기법을 이용하여, 상기 요리재료와 라벨화된 상기 조리법에 관한 동사들 간의 벡터 거리를 계산할 수 있다.
그리고, 상기 제2 단계에서는 상기 요리재료 별 상기 조리법에 관한 동사들을 상기 벡터 거리를 기준으로 리스트화할 수 있다.
또한, 상기 제2 단계에서는 상기 리스트를 토대로, 다른 요리재료에 대한 조리법과 관련된 동사들을 도출하기 위해 비례 수식을 적용할 수 있다.
아울러, 상기 신규 레시피 생성단계는 정규화, 어근화 및 절단화된 상기 언어를 역-절단화 및 역-어근화하여 구어체 문장으로 재 조립하는 제3 단계를 더 포함할 수 있다.
또한, 상기 신규 레시피 생성단계는 상기 요리재료와 궁합이 맞는 새로운 요리재료를 상기 데이터베이스로부터 추천 받아, 상기 새로운 요리재료에 대한 조리법을 도출하고, 상기 새로운 요리재료에 대한 조리법이 추가되도록, 상기 제3 단계 후 생성된 상기 새로운 레시피에 대한 수정을 제안하는 제4 단계를 더 포함할 수 있다.
본 발명의 일 실시예에 따르면, 사용자 단말로부터 입력된 냉장고 이미지를 이용하여 식재료맵을 생성하여 제공함으로써, 효휼적인 식재료 관리 정보를 위한 정보를 제공할 수 있다.
또한, 본 발명의 일 실시예에 따르면, 사용자 단말로부터 입력된 음식 이미지를 이용하여 레시피 정보를 생성함으로써, 음식 조리에 필요한 정보를 효율적으로 제공할 수 있다.
또한, 본 발명의 일 실시예에 따르면, 식재료맵의 변경 또는 레시피 정보에 기초하여 구매 정보를 제공함으로써, 사용자의 식재료 관리 효율성을 향상시킬 수 있다.
또한, 본 발명의 일 실시예에 따르면, 사용자의 냉장고에 있는 식자재를 이용하여 음식을 만들 수 있는 레시피를 제시하여 잔반을 남기지 않도록 한다는 장점이 있다.
또한, 본 발명의 일 실시예에 따르면, 사용자가 레시피를 통해 음식을 만들어 먹음으로써 사용자가 냉장고에 식자재를 방치해서 버리지 않고 식자재를 사용할 수 있다는 장점이 있다.
또한, 본 발명의 일 실시예에 따르면, 사용자가 이용한 레시피와 겹치지 않는 레시피를 제공함으로써 사용자가 다양한 방식으로 조리해서 매번 똑같은 음식이 아닌 다양한 음식을 먹을 수 있다는 장점이 있다.
또한, 본 발명의 일 실시예에 따르면, 사용자의 개인 정보에 따라 식사 인원, 질병 정보 등에 따라 레시피를 제공함으로써 사용자가 개인 맞춤형으로 적절한 레시피를 제공받아 활용할 수 있다는 장점이 있다.
또한, 본 발명의 일 실시예에 따르면, 데이터 마이닝(Data Mining) 기법을 통해, 사용자에 의해 입력되는 요리형태와 관련된 현존하는 레시피를 수집하고, 이를 Word2Vector 및 Paragraph2Vector 기법을 이용하여 분류 및 정형화하며, 분류 및 정형화된 기존의 레시피 데이터를 딥 러닝(Deep Learning) 기법을 통해, 추가로 입력되는 요리재료에 부합되는 새로운 레시피를 생성함으로써, 입력된 요리재료로 만들어질 요리, 예컨대, 사용하고자 하는 요리재료 혹은 실제 준비되어 있는 요리재료로 만들어질 요리에 대한 새로운 레시피를 현존하는 관련 레시피에 근거하여 쉽고 빠르게 생성할 수 있다.
도 1은 일 실시예에 따른 식품 관리 시스템을 도시한 도면이다.
도 2는 일 실시예에 따른 식품 관리 시스템의 사용자 단말의 일례를 설명하기 위한 제어 블록도이다.
도 3은 냉장고 이미지 수집의 일례를 설명하기 위한 도면이다.
도 4는 일 실시예에 따른 식품 관리 시스템의 식재료 관리 서버의 일례를 설명하기 위한 제어 불록도이다.
도 5는 식재료맵의 일례를 설명하기 위한 도면이다.
도 6은 식재료맵의 다른례를 설명하기 위한 도면이다.
도 7은 구매 정보 제공의 일 실시예를 도시한 화면 예시도이다.
도 8은 레시피 정보 제공의 일 실시예를 도시한 화면 예시도이다.
도 9는 구매 정보 제공의 다른 실시예를 도시한 화면 예시도이다.
도 10은 일 실시예에 따른 식재료 관리 방법을 설명하기 위한 순서도이다.
도 11은 일 실시예에 따른 식재료 관리 방법을 설명하기 위한 순서도이다.
도 12는 일 실시예에 따른 레시피 제공 시스템을 설명하기 위한 네트워크 구성도이다.
도 13은 도 12의 레시피 제공 서버의 내부 구조를 설명하기 위한 블록도이다.
도 14는 도 12의 레시피 관리 블록의 내부 구조를 설명하기 위한 블록도이다.
도 15는 도 14의 웹 정보 처리부의 내부 구조를 설명하기 위한 블록도이다.
도 16은 도 15의 레시피 워크플로우 생성부에 의해 생성된 레시피 워크플로우를 설명하기 위한 예시도이다.
도 17은 도 13의 회원 정보 관리부의 내부 구조를 설명하기 위한 블록도이다.
도 18은 도 13의 레시피 추천부의 내부 구조를 설명하기 위한 블록도이다.
도 19는 레시피 제공 방법의 일 실시예를 설명하기 위한 흐름도이다.
도 20은 일 실시 예에 따른 창작 레시피 생성방법을 단계 별로 나타낸 순서도이다.
도 21은 일 실시 예에 따른 창작 레시피 생성방법의 데이터 수집단계를 통해 수집된 감자조림 레시피를 나타낸 도면이다.
도 22는 요리재료 및 이와 관련되어 조리법으로 라벨화된 동사들 간의 계산된 벡터 거리를 보여주는 도면이다.
도 23은 본 발명의 실시 예1에 따라 생성된 돼지고기 콩나물 감자조림 레시피를 나타낸 도면이다.
도 24는 본 발명의 실시 예2에 따라, 정규화, 어근화 및 절단화된 감자조림 레시피를 나타낸 도면이다.
도 25는 본 발명의 실시 예2에 따라, 요리재료가 변환된 레시피를 나타낸 도면이다.
도 26은 본 발명의 실시 예2에 따라 생성된 고구마 부추조림 레시피를 나타낸 도면이다.
도 27은 본 발명의 실시 예3에 따라 생성된 돼지고기 콩나물 고구마 부추조림 레시피를 나타낸 도면이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
이하에서, 식재료 정보는 식재료의 종류, 수량 등과 같이 이미지에 포함된 식재료를 식별하기 위한 정보이고, 식재료맵은 냉장고의 각 영역 별로 수납된 식재료의 종류 및 수량이 저장된 정보를 의미한다.
또한, 조리 정보는 음식 이미지에 대응되는 정보, 예컨대, 음식 이름, 조리 방법 등을 의미하는 것이고, 레시피 정보는 음식을 조리하는 방법을 의미하는 것으로, 조리에 필요한 식재료 정보, 조리 방법, 음식의 열량 등과 같이 음식 조리에 필요한 각종 정보가 레시피 정보가 될 수 있다.
이하, 도면을 참조하여 본 발명에 대하여 구체적으로 설명한다.
도 1은 일 실시예에 따른 식품 관리 시스템을 도시한 도면이다.
도 1을 참조하면, 일 실시예에 따른 식품 관리 시스템은 사용자 단말(100) 및 식재료 관리 서버(200)를 포함한다.
사용자 단말(100)은 통신망(300)을 통해 식재료 관리 서버(200)와 연결되어, 식품 관리에 필요한 소정의 정보를 전송하거나, 식품 관리에 필요한 소정의 정보를 수신할 수 있다.
사용자 단말(100)은 도 1에 도시된 것과 같이, 휴대성이 높고 통신망(300)의 접근이 용이한 스마트폰일 수 있으나, 이에 한정되는 것이 아니다. 예컨대, 사용자 단말(100)은 데스크 탑 등과 같이 고정된 위치에서 사용되는 정보처리장치 또는 PMP(Portable Media Player), PDA(Personal Digital Assistant), 타블렛 PC(Tablet PC)등과 같이 휴대가 용이한 정보 처리 장치로 치환될 수 있음을 이해하여야 한다.
또한, 사용자 단말(100)은 냉장고 일 수도 있다. 즉, 냉장고가 내부 이미지 획득을 위한 카메라(140), 식재료 관리 서버(200)와 통신하여 소정의 정보를 송수신할 수 있는 통신 장치, 식재료 관리 서버(200)로부터 수신한 정보를 제공할 수 있는 입출력 장치 등을 포함한 경우 냉장고가 사용자 단말(100)이 될 수 있다. 다만, 이하에서는 설명의 편의를 위해 사용자 단말(100)은 냉장고와 별도로 마련된 것으로 설명한다.
한편, 사용자 단말(100)은 그 동작과 기능에 따라 제1 사용자 단말(101)과 제2 사용자 단말(102)로 구분될 수 있다. 제1 사용자 단말(101)은 냉장고 이미지를 식재료 관리 서버(200)에 업로드하여 식재료맵 생성을 요청하거나, 음식 이미지를 식재료 관리 서버(200)에 업로드하여 레시피 정보를 요청하는 단말이고, 제2 사용자 단말(102)은 제1 사용자 단말(101)이 업로드한 냉장고 이미지에 대한 식재료 정보를 식재료 관리 서버(200)로 업로드하거나, 음식 이미지에 대한 조리 정보를 식재료 관리 서버(200)로 업로드하는 단말이다.
즉, 사용자 단말(100)은 냉장고 이미지 또는 음식물 이미지를 업로드하여 식재료맵이나 레시피 정보를 요청하는 경우 제1 사용자 단말(101)로 동작하고, 식재료 정보를 업로드하거나 조리 정보를 업로드하는 경운 제2 사용자 단말(102)로 동작한다.
식재료 관리 서버(200)는 사용자 단말(100)로부터 수신한 냉장고 이미지에 대한 식재료 정보를 수집하고, 수집된 수신 정보에 기초하여 냉장고 이미지에 대응되는 식재료맵을 생성한다.
구체적으로, 식재료 관리 서버(200)는 제1 사용자 단말(101)로부터 수신한 냉장고 이미지를 복수의 제2 사용자 단말(102)에 푸쉬하여 냉장고 이미지에 대응되는 식재료 정보의 입력을 요청하고, 적어도 하나의 제2 사용자 단말(102)로부터 식재료 정보가 수신되면, 수신된 식재료 정보를 이용하여 냉장고 이미지에 대응되는 식재료맵을 생성하여 제1 사용자 단말(101)에 제공한다. 이때, 식재료 관리 서버(200)는 식재료맵에 대응되는 식재료 정보를 입력한 제2 사용자 단말(102)에 대응되는 사용자에게 포인트를 제공할 수 있다.
이와 같이 복수의 사용자 단말(100)을 통해 입력된 식재료 정보를 이용하여 식재료맵을 생성함으로써, 식재료맵의 신뢰도를 향상시킬 수 있다.
또한, 식재료 관리 서버(200)는 제1 사용자 단말(101)의 식재료맵의 변화에 기초하여 식재료 소비 패턴을 분석하고, 이에 따라 식품에 대한 구매 정보를 생성하여 제1 사용자 단말(101)에 제공할 수 있다.
이와 같이 식재료맵과 함께 구매 정보를 제공함으로써, 사용자의 식품 관리를 용이하게 할 수 있다.
또한, 식재료 관리 서버(200)는 제1 사용자 단말(101)로부터 수신한 음식 이미지를 복수의 제2 사용자 단말(102)에 푸쉬하여, 음식 이미지에 대응되는 조리 정보를 수신하고, 수신된 조리 정보에 기초하여 음식 이미지에 대한 레시피 정보를 생성하여 제1 사용자 단말(101)에 제공할 수 있다. 이때, 레시피 정보를 수신한 제1 사용자 단말(101)은 미리 저장된 식재료맵에서 레시피 정보에 대응되는 식재료를 표시하여 사용자에게 제공하거나, 식재료 관리 서버(200)로부터 수신한 음식 조리에 필요한 재료의 구매 정보를 사용자에게 제공할 수 있다.
이하, 도면을 참조하여 식품 관리 시스템을 구성하는 각 장치의 동작과 구조에 대하여 상세히 설명한다.
도 2는 일 실시예에 따른 식품 관리 시스템의 사용자 단말(100)의 일례를 설명하기 위한 제어 블록도이고, 도 3은 냉장고 이미지 수집의 일례를 설명하기 위한 도면이다.
도 2를 참조하면, 사용자 단말(100)은 제1 통신부(110), 입출력부(120), 제1 저장부(130), 카메라(140), 제어부(150)를 포함할 수 있다.
제1 통신부(110)는 통신망(300)에 연결되어 식재료 관리 서버(200)와 데이터를 송수신할 수 있다. 제1 통신부(110)는 GSM/3GPP 계열의 통신 방식(GSM, HSDPA, LTE 어드밴스드), 3GPP2 계열의 통신 방식(CDMA 등) 또는 와이맥스 등의 무선 통신 프로토콜을 통해 통신망(300)에 연결될 수 있으나, 제1 통신부(110)는 종래의 통신 프로토콜 또는 추후 기술의 개발에 따라 개발될 통신 프로토콜을 통해 통신망(300)에 연결될 수도 있다.
구체적으로, 제1 통신부(110)는 제어부(150)의 제어에 따라 식재료 관리 서버(200)로 냉장고 이미지, 식재료 정보, 식재료맵, 구매 정보 등을 송수신할 수 있다.
입출력부(120)는 사용자에게 식품 관리를 위해 필요한 각종 정보를 표시하고, 사용자의 각종 입력을 수신한다. 구체적으로, 입출력부(120)는 냉장고 이미지 획득, 식재료 정보를 입력 등을 위한 인터페이스를 제공하거나, 소정의 인터페이스를 통해 식재료맵 또는 구매 정보를 제공할 수 있다.
상술한 정보 표시를 위해, 입출력부(120)는 디스플레이 패널(Plasma Display Panel, PDP), 액정 디스플레이(Liquid Crystal Display: LCD) 패널, 발광 다이오드(Light Emitting Diode: LED) 패널, 또는 유기 발광 다이오드(Organic Light Emitting Diode: OLED) 패널, 능동형 유기 발광 다이오드(Active-matrix Organic Light-Emitting Diode, AMOLED) 패널 등과 같은 표시 수단을 포함할 수 있다.
또한, 사용자로부터 정보를 입력 받기 위해, 입출력부(120)는 키패드, 푸시 버튼(push button), 또는 멤브레인 버튼(membrane button)등과 같은 버튼 입력 수단, 터치 패드(touch pad) 등과 같은 터치 입력 수단을 포함할 수 있으며, 입출력이 모두 가능한 터치 스크린 형태로 구현될 수도 있다.
제1 저장부(130)에서 사용자 단말(100)의 구동을 위한 운영체제 또는 식품 관리를 위해 필요한 각종 데이터, 예컨대, 정보 입력을 위한 인터페이스, 식품 관리 서비스의 이용을 위해 필요한 관리 어플리케이션이 저장될 수 있다. 여기서, 관리 어플리케이션은 이하에서 설명할 식재료 관리 서버(200)에 연결되어 식품 관리 서비스를 이용하기 위한 프로그램을 의미하는 것으로, 식재료 관리 서버(200)의 관리자에 의하여 배포될 것일 수 있다.
카메라(140)는 냉장고 이미지를 획득할 수 있다. 냉장고 이미지는 냉장고 내부에 대한 영상을 의미하는 것으로, 냉장고에 수납된 식품이 표시되도록 획득된 것일 수 있다.
즉, 사용자는 도 3에 도시된 것과 같이 사용자 단말(100)에 마련된 카메라(140)를 이용하여 냉장고 이미지를 입력할 수 있다. 이때, 냉장고 이미지는 하나의 이미지일 수 있으나, 필요에 따라 복수의 이미지로 구성될 수 있다. 예컨대, 냉장고 이미지는 냉장실 이미지, 냉동실 이미지, 및 도어 이미지로 구성될 수 있다.
제어부(150)는 사용자 단말(100)을 전반적으로 제어한다. 제어부(150)는 CPU, micro CPU 등의 장치를 포함할 수 있으나, 이에 한정되는 것은 아니다. 상술한 것과 같이 제1 사용자 단말(101)과 제2 사용자 단말(102)의 동작 및 기능이 상이하므로, 제1 사용자 단말(101)일 때의 제어부(150)의 동작 및 기능과 제2 사용자 단말(102)일 때의 제어부(150)의 동작과 기능을 구분하여 설명한다.
사용자 단말(100)이 제1 사용자 단말(101)로 동작하는 경우, 제어부(150)는 카메라(140)를 통해 냉장고 이미지가 획득되면, 획득된 냉장고 이미지를 식재료 관리 서버(200)에 전송하여 식재료맵 생성을 요청할 수 있으며, 입출력부(120)를 제어하여 식재료 관리 서버(200)로부터 수신한 식재료맵 또는 식품에 대한 구매 정보를 사용자에게 제공할 수 있다.
또한, 제어부(150)는 음식 이미지가 획득되면, 획득된 음식 이미지를 식재료 관리 서버(200)에 전송하여, 음식 이미지에 대응되는 음식의 레시피 정보를 요청하고, 식재료 관리 서버(200)로부터 전송된 레시피 정보를 사용자에게 제공할 수 있다.
이때, 음식 이미지는 상술한 카메라(140)에 의하여 획득된 것일 수 있으나, 이에 한정되는 것이 아니다. 예컨대, 음식 이미지는 통신망(300)을 통해 획득한 이미지 또는 SNS를 통해 획득된 이미지일 수 있다. 또한, 레시피 정보에는 음식의 조리를 위해 추가 구매가 필요한 재료에 대한 구매 정보가 더 포함될 수 있다.
한편, 식재료 관리 서버(200)로부터 레시피 정보가 입력되면, 제어부(150)는 미리 저장된 식재료맵에서 레시피 정보에 대응되는 재료를 탐색하여 이를 사용자에게 제공할 수 있다.
이와 같이 음식 이미지에 기초하여 레시피 정보를 획득하고, 레시피 정보에 대응되는 식재료를 표시하거나 구매 정보를 제공함으로써, 사용자의 식품 관리를 용이하게 할 수 있다.
한편, 사용자 단말(100)이 제2 사용자 단말(102)로 동작하는 경우, 제어부(150)는 입출력부(120)를 제어하여 식재료 관리 서버(200)로부터 수신한 냉장고 이미지를 사용자에게 표시하고, 사용자가 입력한 식재료 정보를 식재료 관리 서버(200)로 전송한다.
또한, 제어부(150)는 입출력부(120)를 제어하여 식재료 관리 서버(200)로부터 수신한 음식 이미지를 사용자에게 표시하고, 사용자가 입력한 조리 정보를 식재료 관리 서버(200)로 전송한다.
도 4는 일 실시예에 따른 식품 관리 시스템의 식재료 관리 서버(200)의 일례를 설명하기 위한 제어 불록도이고, 도 5는 식재료맵의 일례를 설명하기 위한 도면이고, 도 6은 식재료맵의 다른례를 설명하기 위한 도면이고, 도 7은 구매 정보 제공의 일 실시예를 도시한 화면 예시도이고, 도 8은 레시피 정보 제공의 일 실시예를 도시한 화면 예시도이고, 도 9는 구매 정보 제공의 다른 실시예를 도시한 화면 예시도이다.
도 4를 참조하면, 식재료 관리 서버(200)는 제2 통신부(210), 제2 저장부(220), 식재료 관리부(230), 포인트 관리부(240), 구매 관리부(250), 조리정보 관리부(260)를 포함할 수 있다.
제2 통신부(210)는 통신망(300)에 연결되어 복수의 사용자 단말(100)과 데이터를 송수신할 수 있다. 제2 통신부(210)는 GSM/3GPP 계열의 통신 방식(GSM, HSDPA, LTE 어드밴스드), 3GPP2 계열의 통신 방식(CDMA 등) 또는 와이맥스 등의 무선 통신 프로토콜을 통해 통신망(300)에 연결될 수 있으나, 제1 통신부(110)는 종래의 통신 프로토콜 또는 추후 기술의 개발에 따라 개발될 통신 프로토콜을 통해 통신망(300)에 연결될 수도 있다.
구체적으로, 제2 통신부(210)는 제1 사용자 단말(101)로부터 냉장고 이미지 또는 음식 이미지를 수신하거나, 제1 사용자 단말(101)로 식재료맵, 구매 정보, 레시피 정보 등을 전송할 수 있다.
또한, 제2 통신부(210)는 제2 사용자 단말(102)로 냉장고 이미지 또는 음식 이미지를 전송하고, 제2 사용자 단말(102)로부터 냉장고 이미지에 대응되는 식재료 정보 또는 음식 이미지에 대응되는 조리 정보를 수신할 수 있다.
제2 저장부(220)는 식재료 관리 서버(200)의 동작에 필요한 정보를 저장한다. 구체적으로, 제2 저장부(220)는 식재료 관리 서버(200)의 운영체제, 식재료 관리 서버(200)의 구동에 필요한 각종 데이터, 식재료 정보로부터 식재료맵을 생성하기 위한 데이터 베이스 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.
식재료 관리부(230)는 제1 사용자 단말(101)로부터 수신한 냉장고 이미지에 기초하여 식재료맵을 생성한다. 식재료맵은 냉장고의 각 영역에 수납된 식재료의 종류 및 수량을 나타내는 것으로, 식재료맵은 식재료의 종류, 수량, 수납 영역에 대한 정보로 구성될 수 있다.
구체적으로, 식재료 관리부(230)는 제1 사용자 단말(101)로부터 냉장고 이미지가 수신되면, 수신된 냉장고 이미지를 복수의 제2 사용자 단말(102)에 푸쉬하여 식재료 정보의 입력을 요청한다. 제2 사용자 단말(102)은 사용자로부터 냉장고의 각 영역에 대응되는 식재료의 종류 및 수량을 입력 받아 식재료 정보를 생성하고, 이를 식재료 관리 서버(200)로 전송한다.
식재료 정보가 수신되면, 식재료 관리부(230)는 적어도 하나의 제2 사용자 단말(102)로부터 수신한 식재료 정보의 유효성을 검증하고, 유효성이 검증된 식재료 정보를 이용하여 식재료맵을 생성한다.
유효성 검증의 일 실시예로, 식재료 관리부(230)는 복수의 제2 사용자 단말(102)에서 전송된 식재료 정보간 유사도를 이용하여 복수의 제2 사용자 단말(102)에서 전송된 식재료 정보의 유효성을 검증할 수 있다. 예컨대, 식재료 관리부(230)는 복수의 제2 사용자 단말(102)에서 전송된 식재료 정보를 그 유사도에 따라 복수의 그룹을 분류하고, 복수의 그룹 중 표본 수가 가장 많은 그룹을 유효 그룹으로 결정하고, 유효 그룹에 대응되는 식재료 정보만을 이용하여 식재료맵을 생성할 수 있다.
유효성 검증의 다른 실시예로, 식재료 관리부(230)는 제2 사용자 단말(102)이 입력한 식재료 정보에 대응되는 식재료의 이미지와 냉장고 이미지의 유사도를 비교하여 유사도가 미리 설정된 임계치 이상이면 제2 사용자 단말(102)이 입력한 식재료 정보가 유효한 것으로 판단하고, 유사도가 미리 설정된 임계치 이하이면 제2 사용자 단말(102)이 입력한 식재료 정보가 유효하지 않은 것으로 판단하여 제2 사용자 단말(102)에서 전송된 식재료 정보를 반영하지 않고 식재료맵을 생성할 수 있다.
한편, 냉장고 이미지는 복수 개의 영역으로 분할되어 제2 사용자 단말(102)로 전송될 수 있다. 일반적으로, 냉장고의 각 영역에는 서로 다른 식재료가 수납되므로, 각 영역 별로 대응되는 식재료 정보가 상이하다.
이에 식재료 관리부(230)는 냉장고 이미지를 도 3에 도시된 것과 같이 복수의 영역(A1~A10)으로 분리하여, 복수의 분할 이미지를 생성하고. 복수의 분할 이미지를 제2 사용자 단말(102)로 전송하여 각 영역에 대응되는 식재료 정보 입력을 요청할 수 있다.
이때, 분활 이미지는 미리 설정된 기준 미리 설정된 기준(예컨대, 선반, 냉장고 프레임 등)에 따라 생성될 수 이에 한정되는 것은 아니다. 예컨대. 식재료 관리부(230)는 냉장고 이미지를 분석하여 색, 형상의 이미지 특징이 유사한 영역을 동일한 영역으로 분류하고, 이미지 특징이 유사한 영역 별로 분할 이미지를 생성할 수 있다.
이와 같이 각 분할 이미지로 식재료 정보가 수집되는 경우, 상술한 식재료 정보의 유효성 검증은 각 영역 별로 수행될 수 있다.
식재료 관리부(230)는 식재료맵 생성이 완료되면, 제1 사용자 단말(101)로 식재료맵을 전송한다. 식재료맵을 수신한 제1 사용자 단말(101)은 상술한 입출력부(120)를 이용하여 식재료맵을 표시한다. 식재료 맵은 도 5에 도시된 것과 같이 각 영역에 식재료의 종류와 수량을 표시하는 형식으로 제공되거나, 도 6에 도시된 것과 같이 식재료의 종류별로 마련된 특정 아이콘을 표시하는 형식으로 제공될 수 있으나, 식재료 제공 방법이 이에 한정되는 것은 아니다.
포인트 관리부(240)는 식재료 정보를 입력한 사용자에게 적립할 포인트를 결정하고, 결정된 포인트를 각 사용자에게 적립한다. 구체적으로, 포인트 관리부(240)는 식재료 관리부(230)에서 생성된 식재료맵과 제2 사용자 단말(102)에서 전송된 식재료 정보의 유사도를 산출하고, 산출된 유사도에 따라 각 제2 사용자 단말(102)에 대응되는 사용자에게 적립될 포인트를 결정한다.
포인트 관리부(240)는 포인트 적립이 완료되면, 제2 사용자 단말(102)로 포인트의 적립 정보, 예컨대, 적립된 포인트, 사용 가능한 포인트에 대한 정보를 전송한다.
구매 관리부(250)는 냉장고 이미지에 기초하여 생성된 식재료맵과 과거 제1 사용자 단말(101)로 전송된 식재료맵을 이용하여 식재료 구매 정보를 생성하고, 이를 제1 사용자 단말(101)로 전송할 수 있다.
구체적으로, 구매 관리부(250)는 식재료 관리부(230)에서 생성된 식재료맵과 이전에 생성된 식재료맵을 이용하여 사용자의 식재료 소비 패턴을 분석하고, 식재료 소비 패턴에 따라 구매가 필요한 식재료를 결정하여 구매 정보를 생성할 수 있다. 이때, 식재료 소비 패턴은 과거 식재료맵과 현재 식재료맵의 생성 시간 동안 각 식재료의 변화량에 기초하여 생성될 수 있으며, 구매 정보는 식재료의 가격 정보를 포함할 수 있다.
이와 같이 구매 관리부(250)에서 생성된 구매 정보는 식재료맵과 함께 전송될 수 있으나, 상술한 식재료 소비 패턴에 따라 사용자의 구매가 필요한 것으로 예상되는 시점에 제1 사용자 단말(101)로 전송될 수 있다.
예컨대, 구매 관리부(250)는 식재료 소비 패턴에 따라 3일후 계란의 구매가 필요한 것으로 판단되면, 2일 후에 계란의 구매 정보를 제1 사용자 단말(101)로 전송할 수 있다.
또한, 구매 관리부(250)는 과거 생성된 식재료맵과 현재 생성된 식재료맵을 이용하여 식재료맵에 포함된 식재료의 유통기한 정보를 생성하고, 구매 정보와 함께 유통기한 정보를 제1 사용자 단말(101)로 전송할 수 있다.
구체적으로, 구매 관리부(250)는 현재 생성된 식재료맵에서 과거 생성된 식재료맵에 포함된 식재료를 탐색하고 관리 후보군을 생성하고, 관리 후보군에서 식재료의 유통기한이 과거 식재료맵과 현재 식재료맵의 생성시간을 식재료를 탐색하여 유통기한 정보를 생성할 수 있다.
한편, 구매 관리부(250)로부터 구매 정보와 유통기한 정보를 수신한 제1 사용자 단말(101)은 도 7에 도시된 것과 같이 구매 정보와 유통기한 정보를 표시할 수 있다.
이와 같이 시간에 따른 식품맵의 변화에 따라 식재료의 구매 정보와 유통기한 정보를 사용자에게 제공함으로써, 사용자의 식재료 관리를 용이하게 할 수 있다.
다시 도 4를 참조하면, 조리정보 관리부(260)는 제1 사용자 단말(101)에서 전송된 음식 이미지에 대응되는 조리 정보를 수집하고, 수집된 조리 정보를 이용하여 음식 이미지에 대응되는 레시피 정보를 생성하여 제1 사용자 단말(101)에 제공한다.
구체적으로, 조리정보 관리부(260)는 제1 사용자 단말(101)에서 전송된 음식 이미지를 제2 사용자 단말(102)로 푸쉬하여, 제2 사용자 단말(102)에 조리 정보 입력을 요청한다. 조리정보 관리부(260)는 제2 사용자 단말(102)로부터 수신된 조리 정보에 기초하여 레시피 정보를 생성하여 제1 사용자 단말(101)로 전송할 수 있다.
레시피 정보는 제2 사용자 단말(102)로부터 수시된 조리 정보에 기초하여 생성될 수 있다. 구체적으로, 조리 정보 관리부는 제2 사용자 단말(102)로부터 입력된 조리 정보에 기초하여 음식 이미지에 대응되는 음식을 인식하고, 인식된 음식에 대응되는 조리방법, 조리재료, 열량 등을 검색하여 레시피 정보를 생성할 수 있다.
이를 위해, 저장부에는 음식에 따른 레시피 정보가 저장된 데이터 베이스가 마련될 수 있으며, 필요한 경우 인터넷 탐색을 통해 특정 음식의 레시피 정보가 추가될 수 있으며, 제2 사용자 단말(102)로부터 전송된 조리 정보에 조리방법, 조리재료 등이 포함된 경우 이를 반영하여 레시피 정보를 추가할 수도 있다.
음식의 레시피 정보는 조리 정보를 입력한 제2 사용자 단말(102)로도 전송될 수 있으며, 각 음식의 레시피 정보는 조리 정보를 수신한 제1 사용자 단말(101) 또는 제2 사용자 단말(102)의 피드백에 의하여 업데이트 될 수도 있으며, 레시피 정보가 업데이트되면 제1 사용자 단말(101) 또는 조리 정보를 입력한 제2 사용자 단말(102)에 업데이트된 레시피 정보가 제공될 수 있다.
예컨대, 제1 사용자 단말(101)을 통해 a식재료의 추가로 음식의 맛을 향상시킬 수 있다는 피드백이 입력되면, 피드백 정보를 이용하여 레시피 정보를 업데이트하고, 업데이트된 레시피 정보를 제2 사용자 단말(102)에 전송할 수 있다.
한편, 레시피 정보를 제공 받은 제1 사용자 단말(101) 또는 제2 사용자 단말(102)은 레시피 정보를 사용자에게 제공할 수 있으며, 미리 저장된 식재료 정보와 레시피 정보를 비교하여 음식의 조리에 필요한 식재료를 분석하고, 도 8에 도시된 것과 같이 식재료맵에 음식의 조리에 필요한 식재료를 표시할 수 있다. 예컨대, 레시피 정보에 소고기와 생선이 식재료에 포함되어 있으면, 제1 사용자 단말(101)은 식재료맵에서 소고기와 생선을 탐색하여, 소고기와 생선이 수납된 영역을 표시할 수 있다.
또한, 조리정보 관리부(260)는 미리 저장된 제1 사용자 단말(101)의 식재료맵과 레시피 정보에 포함된 식재료를 비교하여 음식을 조리를 위해 필요한 식재료를 분석하고, 조리를 위해 필요한 식재료의 구매 정보를 생성하여 제1 사용자 단말(101)로 전송할 수 있다. 구매 정보를 수신한 제1 사용자 단말(101)은 도 9에 도시된 것과 같이 구매 정보를 표시할 수 있다.
요약하자면, 제1 사용자 단말(101)은 음식 이미지를 업로드하는 것만으로, 식재료 관리 서버(200)로부터 음식 이미지에 대응되는 음식의 레시피 정보를 제공 받을 수 있을 뿐만 아니라, 도 8에 도시된 것과 같이 음식의 조리를 위해 필요한 식재료의 수납위치와 음식의 조리를 위해 구매가 필요한 식재료에 대한 정보를 모두 함께 제공 받을 수 있다.
이와 같이 음식 이미지 기반으로 음식 조리에 필요한 일체의 정보를 사용자에게 제공함으로써, 식재료 관리를 용이하게 할 수 있다.
한편, 포인트 관리부(240)는 조리 정보를 입력한 제2 사용자 단말(102)에 대해서도 상술한 것과 같은 방법으로 지급될 포인트를 결정하고, 결정된 포인트를 각 제2 사용자 단말(102)의 사용자에게 적립할 수 있다.
도 10은 일 실시예에 따른 식재료 관리 방법을 설명하기 위한 순서도이다.
도 10을 참조하면, 제1 사용자 단말(101)은 냉장고 이미지를 획득하고 이를 식재료 관리 장치로 푸쉬(전송)한다(501).
제1 사용자 단말(101)로부터 냉장고 이미지를 수신한 식재료 관리 장치는 냉장고 이미지를 등록하고(502), 냉장고 이미지를 제2 사용자 단말(102)로 푸쉬(전송)할 수 있다(503). 도 10에는 하나의 제2 사용자 단말(102)로 냉장고 이미지가 푸쉬되는 것으로 도시되어 있으나, 냉장고 이미지는 복수의 제2 사용자 단말(102)로 전송될 수 있다. 이때, 냉장고 이미지는 상술한 것과 같이 각 영역 별로 분할된 복수의 분할 이미지일 수 있다.
냉장고 이미지를 수신한 제2 사용자 단말(102)은 사용자에게 냉장고 이미지를 표시하고, 사용자가 냉장고 이미지에 대응되는 식재료 정보를 입력하면 이에 식재료 관리 서버(200)로 전송할 수 있다(504).
식재료 관리 서버(200)는 제2 사용자 단말(102)로부터 수신된 식재료 정보를 이용하여 식재료맵을 생성하고(505), 이를 제1 사용자 단말(101)로 전송한다(506). 구체적으로, 식재료 관리 서버(200)는 제2 사용자 단말(102)로부터 전송된 식재료 정보의 유효성을 검증하고, 유효한 것으로 검증된 식재료 정보만을 이용하여 식재료 정보를 생성할 수 있다.
식재료맵의 생성이 완료되면, 식재료 관리 서버(200)는 식재료 정보를 입력한 제2 사용자 단말(102)의 사용자에게 포인트를 적립하고(507), 포인트 적립 정보를 제2 사용자 단말(102)에 전송할 수 있다(508). 이때, 제2 사용자 단말(102)의 각 사용자에게 적립되는 포인트는 식재료맵과 입력한 식재료 정보의 유사성에 따라 결정될 수 있다. 즉, 최종적으로 생성된 식재료맵과 유사도가 높은 식재료 정보를 입력한 사용자에게 높은 포인트가 적립되고, 유사도가 낮은 식재료 정보를 입력한 사용자에게는 낮은 포인트가 적립된다.
한편, 식재료 관리 서버(200)는 구매 정보를 생성하고(509), 이를 제1 사용자 단말(101)로 전송할 수 있다(510). 구매 정보는 상술한 것과 같은 방법으로 생성될 수있으며, 도 10과 달리 식재료맵과 함께 전송될 수도 있다.
도 11은 다른 실시예에 따른 식재료 관리 방법을 설명하기 위한 순서도이다.
도 11을 참조하면, 제1 사용자 단말(101)은 음식 이미지를 획득하고 이를 식재료 관리 장치로 푸쉬(전송)한다(601). 이때, 음식 이미지는 카메라(140)를 통해 촬영된 것일 수 있으나, 이에 한정되는 것이 아니고, sns등을 통해 다운로드 받은 것일 수도 있다.
제1 사용자 단말(101)로부터 음식 이미지를 수신한 식재료 관리 장치는 음식 이미지를 등록하고(602), 음식 이미지를 제2 사용자 단말(102)로 푸쉬(전송)할 수 있다(603). 도 11에는 하나의 제2 사용자 단말(102)로 음식 이미지가 푸쉬되는 것으로 도시되어 있으나, 음식 이미지는 복수의 제2 사용자 단말(102)로 전송될 수 있다.
음식 이미지를 수신한 제2 사용자 단말(102)은 사용자에게 음식 이미지를 표시하고, 사용자가 음식 이미지에 대응되는 조리 정보를 입력하면 이에 식재료 관리 서버(200)로 전송할 수 있다(604).
식재료 관리 서버(200)는 제2 사용자 단말(102)로부터 수신된 조리 정보를 이용하여 레시피 정보을 생성하고(605), 이를 제1 사용자 단말(101)로 전송한다(606). 레시피 정보의 생성 방법은 상술한 것과 시스템에서 생성 방법과 동일하므로 이에 대한 상세한 설명을 생략한다. 식재료 관리 서버(200)는 레시피 정보를 수신하면, 이를 제2 사용자 단말(102)에도 전송할 수 있다(611).
레시피 정보의 생성이 완료되면, 식재료 관리 서버(200)는 조리 정보를 입력한 제2 사용자 단말(102)의 사용자에게 포인트를 적립하고(607), 포인트 적립 정보를 제2 사용자 단말(102)에 전송할 수 있다(608).
한편, 식재료 관리 서버(200)는 구매 정보를 생성하고(609), 이를 제1 사용자 단말(101)로 전송할 수 있다(610). 구매 정보는 상술한 것과 같이 미리 저장된 제1 사용자 단말(101)의 식재료맵과 레시피 정보를 비교하여 생성될 수 있으며, 제1 사용자 단말(101)은 레시피 정보에 대응되는 식재료의 위치를 도 8에 도시된 것과 같이 제공할 수도 있다.
도 12는 일 실시예에 따른 레시피 제공 시스템을 설명하기 위한 네트워크 구성도이다.
도 12를 참조하면, 레시피 제공 시스템은 레시피 제공 서버(1000) 및 사용자 단말(2000)을 포함한다.
레시피 제공 서버(1000)는 사용자 단말(2000)로부터 수신된 회원 정보 및 식사재 정보에 따라 레시피를 추출하여 사용자 단말(2000)에 제공하는 서버이다.
일 실시예에서, 레시피 제공 서버(1000)는 일반 회원이 보유하는 사용자 단말(2000)로부터 수신된 식자재 정보에 따라 레시피를 추출하여 사용자 단말(2000)에 제공할 수 있다. 레시피 제공 서버(1000)는 일반 회원의 활동에 따라 포인트를 지급하며, 누적된 포인트를 이용하여 유료회원의 기능을 실행할 수 있도록 한다. 예를 들어, 레시피 제공 서버(1000)는 일반 회원에 의해 레시피를 평가하거나, 일반 회원에 의해 본인 레시피가 레시피 제공 서버(1000)에 업로드되거나, 일반 회원에 의해 레시피에 따라 요리한 음식 이미지가 레시피 제공 서버(1000)에 업로드되면 포인트를 지급할 수 있다.
다른 일 실시예에서, 레시피 제공 서버(1000)는 유료 회원이 보유하는 사용자 단말(2000)로부터 수신된 식자재 정보 및 유료 회원에 의해 기 등록된 회원 정보 DB를 참조로 레시피를 추출하여 사용자 단말(2000)에 제공할 수 있다.
레시피 제공 서버(1000)는 상기와 같이 사용자 단말(200)의 요청에 따라 레시피를 제공하기 위하여 레시피 DB를 생성하여 관리한다.
일 실시예에서, 레시피 제공 서버(1000)는 요리 전문가의 요청에 따라 레시피 입력 인터페이스를 제공하여 레시피 입력 인터페이스를 통해 요리 전문가가 레시피를 입력할 수 있도록 한다. 이러한 레시피는 레시피 DB에 저장되어 사용자의 요청에 따라 제공된다.
다른 일 실시예에서, 레시피 제공 서버(1000)는 웹 공간 상의 레시피 웹 페이지를 이용하여 레시피를 생성한다. 이러한 레시피는 레시피 DB에 저장되어 사용자의 요청에 따라 제공된다.
보다 구체적으로, 레시피 제공 서버(1000)는 웹 공간 상의 레시피 웹 페이지를 크롤링하여 레시피 웹 페이지를 수집하고, 레시피 웹 페이지 파싱하여 파스 트리를 생성한다. 즉, 레시피 제공 서버(1000)는 레시피 웹 페이지의 텍스트에 대해서 문자열을 의미 있는 토큰으로 분해하고, 토큰으로 이루어진 파스 트리를 생성할 수 있는 것이다.
그런 다음, 레시피 제공 서버(1000)는 파스 트리에 텍스트 마이닝 기법(예를 들어, Conditional Random Fields)을 적용하여 미리 정해진 태그 정보에 해당하는 파싱 정보를 추출한다. 예를 들어, 미리 정해진 태깅 정보가 식자재, 양, 조리기구, 시간, 음식상태, 요리 전문가 액션일 경우, 파스 트리로부터 식자재, 양, 조리기구, 시간, 음식상태, 요리 전문가 액션에 해당하는 파싱 정보를 추출할 수 있다.
그런 다음, 레시피 제공 서버(1000)는 파싱 정보와 태그 정보를 대응시켜 저장한다. 예를 들어, 레시피 제공 서버(1000)는 파스 트리로부터 미리 정해진 태그 정보 식자재에 해당하는 정보로 당근이 추출된 경우, 정보와 태그 정보가 대응되어당근/식자재로 저장될 수 있다. 다른 예를 들어, 레시피 제공 서버(1000)는 파스 트리로부터 미리 정해진 태그 정보 양에 해당하는 정보로 4인분이 추출된 경우, 파싱 정보와 태그 정보가 대응되어 4인분/양으로 저장될 수 있다.
또한, 레시피 제공 서버(1000)는 사용자 단말(2000)로부터 수신된 회원 정보 및 식자재 정보 그리고 레시피 DB에 저장된 레시피 정보를 이용하여 사용자에게 추천하고자 하는 레시피를 결정하여 사용자 단말(2000)에 제공한다.
보다 구체적으로, 레시피 제공 서버(1000)는 사용자 단말(2000)로부터 수신된 회원 정보를 기초하여 생성된 회원 정보 벡터, 사용자 단말(2000)로부터 수신된 식자재 정보를 기초로 생성된 식자재 벡터 및 레시피 DB를 기초로 생성된 레시피 벡터를 이용하여 메트릭스를 생성한다. 즉, 레시피 제공 서버(1000)는 식자재 ×회원 정보 ×레시피로 구성된 메트릭스를 생성할 수 있는 것이다. 이때, 레시피 제공 서버(1000)는 식자재 ×회원 정보 ×레시피로 구성된 메트릭스의 데이터 양이 많기 때문에 차원 축소 방법(예를 들어, PCA, SVD 등)을 이용하여 메트릭스의 차원을 축소킨다.
레시피 제공 서버(1000)는 차원이 축소된 메트릭스에 저장된 정보 각각의 유사도를 측정하여 유사한 정보를 군집화하여 군집화된 정보를 생성한다. 즉, 레시피 제공 서버(1000)는 차원이 축소된 메트릭스에 저장된 1. 식자재 ×회원 정보 ×레시피, 2. 식자재 ×회원 정보 ×레시피, 3. 식자재 ×회원 정보 ×레시피, 4. 식자재 ×회원 정보 ×레시피 등 각각의 유사도를 측정하며 1, 3이 유사하면 1, 3의 정보를 군집화하여 군집화된 정보를 생성하고, 2, 4가 유사하면 2, 4의 정보를 군집화하여 복수의 그룹을 생성할 수 있다.
레시피 제공 서버(1000)는 차원이 축소된 메트릭스에 저장된 정보가 얼마만큼 일치하는지 여부에 따라 정보 각각이 유사한지 여부를 판단할 수 있다. 예를 들어, 레시피 제공 서버(1000)는 차원이 축소된 메트릭스에 저장된 각각의 식자재 ×회원 정보 ×레시피에 대해서 레시피의 재료 중 일치하는 재료 개수가 특정 개수 이상인 경우 해당 식자재 ×회원 정보 ×레시피가 유사하다고 판단할 수 있다.
그런 다음, 레시피 제공 서버(1000)는 복수의 그룹을 기초로 레시피를 추천한다. 이때, 레시피 제공 서버(1000)는 복수의 그룹 각각의 레시피 안에서 랭크(즉, 사용자 평가 결과 점수)에 따라 높은 레시피 순으로 해당 레시피를 추천한다.
상기의 실시예와는 달리, 레시피 제공 서버(1000)는 사용자 단말(2000)로부터 수신된 회원 정보 및 식자재 이미지에 따라 적절한 레시피를 추출하여 사용자 단말(2000)에 제공한 후, 레시피에 따라 사용된 식자재 정보를 보정하여 사용자 단말(2000)에 제공하거나 보정된 식자재 정보를 이용하여 다른 레시피를 추출하여 사용자 단말(2000)에 제공한다.
즉, 레시피 제공 서버(1000)는 사용자 단말(2000)로부터 수신된 식자재 이미지를 이용하여 어떤 종류의 식자재가 얼마만큼 있는지 확인할 수 있으며, 레시피를 추출하여 사용자 단말(2000)에 제공한 후, 레시피에 따라 줄어든 식자재 량을 다시 확인하여 사용자 단말(2000)에 제공하거나 남아있는 식자재를 이용할 수 있는 다른 레시피를 추출하여 사용자 단말(2000)에 제공한다.
상기와 같은 실시예에서, 레시피 제공 서버(1000)는 레시피와 필수 식재료 및 선택 식재료 정보를 함께 제공한다. 즉, 레시피 제공 서버(1000)는 필수 식재료 및 선택 식재료를 제공하여 만약에 사용자가 몇 가지 재료가 부족하더라도 조리할 수 있도록 지능적으로 판단할 수 있게 도와줄 수 있다.
레시피 제공 서버(1000)는 레시피와 필수 조미료 및 선택 조미료를 함께 제공한다. 다만, 레시피 제공 서버(1000)는 필수 조미료의 경우 사전에 조미료의 유무를 확인하도록 하여 조리법에 문제가 없도록 하는 방식으로 조미료를 관리하게 한다.
상기와 같은 실시예에서, 레시피 제공 서버(1000)는 레시피에 대한 피드백에 따라 레시피를 입력한 전문 요리사에게 사이버 머니 또는 인센티브 쿠폰을 제공한다.
또한, 레시피 제공 서버(1000)는 사용자에게 회원 정보를 입력을 요청할 시 보다 상세한 입력 기능을 제공한다.
일 실시예에서, 레시피 제공 서버(1000)는 요리 시간의 경우 식재료를 조리해서 음식으로 만들 때까지의 시간으로 선택할 수 있는 기능을 제공한다.
다른 일 실시예에서, 레시피 제공 서버(1000)는 식사 종류의 경우 다이어트 식사, 건강(예를 들어, 당뇨, 고혈압 등) 식사, 환자병원식사 등으로 선택할 수 있는 기능을 제공한다.
또 다른 일 실시예에서, 레시피 제공 서버(1000)는 특별한 날(명절, 기념일, 생일 등), 불 사용 방법(예를 들어, 화덕, 전자렌지, 불판 등), 조리 기구(특별한 것이 필요한 경우), 식사 참여 인원, 식사 참여인의 성별, 비선호 부자재(마늘을 싫어할 경우 제외한 음식이나 조리법을 채택)등을 선택할 수 있는 기능을 제공한다.
또 다른 일 실시예에서, 레시피 제공 서버(1000)는 간편선택(예를 들어, 일반적인 요리, 식자재를 활용한 요리 등) 또는 신규선택(새로운 요리나 그 동안 먹어보지 못한 것을 우선 추천하도록 하는 것)할 수 있는 기능을 제공한다.
또 다른 일 실시예에서, 레시피 제공 서버(1000)는 음식 간격 선택 기능(예를 들어, 고급스러움, 일반적, 저렴하게 등)을 제공함으로써 사용자가 원하는 가격으로 식단을 구성할 수 있도록 한다.
또 다른 일 실시예에서, 레시피 제공 서버(1000)는 외식 정보 입력 기능을 제공함으로써 가장 최근에 먹은 것과 중복되지 않게 레시피를 추천함과 동시에 외식으로 먹은 음식을 집에서 다시 조리해서 먹지 않도록 레시피를 추천할 수 있다.
또 다른 일 실시예에서, 레시피 제공 서버(1000)는 식단 선택 주기 선택 기능(예를 들어, 매일, 1주일, 2주일 등)을 제공함으로써 현재 보관중인 식자재 및 앞으로 구매할 식자재를 주간 단위, 월간 단위 등으로 제공한다. 이때, 레시피 제공 서버(1000)는 앞으로 구매할 식자재에 대한 식자재 비용도 함께 계산하여 제공한다.
상기의 실시예에서, 레시피 제공 서버(1000)는 앞으로 구매할 식자재에 대해서 식자재를 구매할 수 있는 식자재 구매 장소를 추천해준다. 예를 들어, 레시피 제공 서버(1000)는 식자재를 구매할 수 있는 가장 가까운 마트를 선택할 수 있도록 하며, 모바일에서 마트 어플리케이션에 자동으로 연결되도록 한다.
이때, 레시피 제공 서버(1000)는 사용자가 식자재 배달 예약 정보를 입력받아 해당 배달 예약 정보에 따라 식자재를 배달해주게 하는 기능을 제공한다. 또한, 레시피 제공 서버(1000)는 마트앱과 연결해서 사용자가 단체 주문을 하는 것과 같은 효과를 통해 가격을 좀 더 할인해서 구매할 수 있도록 한다. 이는, 사전에 마트앱과 협의해서 전일까지 구매한 것을 기준으로 금일의 할인폭을 결정해서 많이 살수록 레시피 제공 서버(1000)를 이용하는 소비자에게는 단체가격으로 제공해서 할인을 제공할 수 있는 것이다.
상기의 실시예에서, 레시피 제공 서버(1000)는 구매자 중에서 무작위로 상품권을 부여해서, 무작위 구매순서에 따라서 무료로 구매할 수 있는 상품권을 선사할 수 있다.
또한, 레시피 제공 서버(1000)는 사용자가 식자재를 선물 할 경우 식자재를 이용할 수 있는 레시피를 제공함과 동시에 식자재와 함께 사용되는 부자재를 함께 구매할 수 있는 쿠폰을 지급한다. 예를 들어, 레시피 제공 서버(1000)는 사용자가 갈비, 생선 등의 식자재를 선물을 위해 구매하는 경우, 갈비, 생선 등을 이용할 수 있는 레시피를 제공함과 동시에 식자재와 함께 사용되는 부자재를 함께 구매할 수 있는 쿠폰을 지급한다.
또한, 레시피 제공 서버(1000)는 식자재는 서로 교환하는 장터를 제공하여 사용자들이 식자재를 교환할수 있도록 한다. 이때, 레시피 제공 서버(1000)는 상할 우려가 있거나 냉장을 해야하는 식자재는 교환할 수 없도록 한다. 레시피 제공 서버(1000)는 교환제품의 품질보증이 필요하므로 식자재를 받는 사용자에게 식자재의 사진과 동영상을 올려서 문제없음을 사전에 알려야 하며, 식자재를 받는 사용자도 즉시 식자재의 사진과 동영상을 확인하여 문제 발생 시 수취 거부 등을 할 수 있도록 한다.
또한, 레시피 제공 서버(1000)는 주방용품, 식탁, 용기 등을 필요할 때 만 빌려서 사용할 수 있도록 업체를 링크시켜서 빌려 사용할 수 있도록 한다.
도 13은 도 12의 레시피 제공 서버의 내부 구조를 설명하기 위한 블록도이다.
도 13을 참조하면, 레시피 제공 서버(1000)는 레시피 관리 블록(1100), 식자재 정보 관리부(1200), 회원 정보 관리부(1300) 및 레시피 추천부(1400)를 포함한다.
레시피 관리 블록(1100)은 사용자의 요청에 따라 제공할 레시피를 관리한다. 이를 위해, 레시피 관리 블록(1100)은 요리 전문가로부터 레시피를 입력받거나 웹 공간 상의 레시피 웹 정보를 레시피 DB(1110)에 저장하여 관리한다.
일 실시예에서, 레시피 관리 블록(1100)은 요리 전문가의 요청에 따라 레시피 입력 인터페이스를 제공하여 레시피 입력 인터페이스를 통해 요리 전문가가 레시피를 입력할 수 있도록 한다. 이러한 레시피 관리 블록(1100)은 레시피 입력 인터페이스를 통한 레시피 입력이 완료되면 레시피를 레시피 DB(1110)에 저장하여 관리한다.
다른 일 실시예에서, 레시피 관리 블록(1100)은 웹 공간 상의 레시피 웹 페이지를 크롤링하여 레시피 웹 페이지를 수집하고, 레시피 웹 페이지 파싱하여 파스 트리를 생성한다. 즉, 레시피 관리 블록(1100)은 레시피 웹 페이지의 텍스트에 대해서 문자열을 의미 있는 토큰으로 분해하고, 토큰으로 이루어진 파스 트리를 생성할 수 있는 것이다.
그런 다음, 레시피 관리 블록(1100)은 파스 트리에 텍스트 마이닝 기법(예를 들어, Conditional Random Fields)을 적용하여 미리 정해진 태그 정보에 해당하는 파싱 정보를 추출한다. 예를 들어, 미리 정해진 태깅 정보가 식자재, 양, 조리기구, 시간, 음식상태, 요리 전문가 액션일 경우, 파스 트리로부터 식자재, 양, 조리기구, 시간, 음식상태, 요리 전문가 액션에 해당하는 파싱 정보를 추출할 수 있다.
그런 다음, 레시피 관리 블록(1100)은 파싱 정보와 태그 정보를 대응시켜 저장한다. 예를 들어, 레시피 관리 블록(1100)은 파스 트리로부터 미리 정해진 태그 정보 식자재에 해당하는 정보로 당근이 추출된 경우, 정보와 태그 정보가 대응되어당근/식자재로 저장될 수 있다. 다른 예를 들어, 레시피 관리 블록(1100)은 파스 트리로부터 미리 정해진 태그 정보 양에 해당하는 정보로 4인분이 추출된 경우, 파싱 정보와 태그 정보가 대응되어 4인분/양으로 저장될 수 있다.
레시피 관리 블록(1100)은 파싱 정보 및 태그 정보를 미리 정해진 규칙에 따라 정렬하여 조리 과정의 일련의 워크플로우를 생성한다.
식자재 정보 관리 블록(1200)은 사용자로부터 입력된 식자재 정보를 수신하여 저장한다. 이때, 사용자는 자신의 냉장고에 보관되어 있는 식자재 정보를 식자재 텍스트, 식자재 이미지 등으로 입력하면, 식자재 정보 관리 블록(1200)은 식자재 정보를 수신하여 저장한다.
이때, 식자재 정보 관리 블록(1200)은 사용자로부터 수신된 식자재 이미지를 이용하여 어떤 종류의 식자재가 얼마만큼 있는지 확인할 수 있으며, 레시피를 추출하여 사용자 단말에 제공한 후, 레시피에 따라 줄어든 식자재 량을 다시 확인하여 사용자 단말에 제공하거나 남아있는 식자재를 이용할 수 있는 다른 레시피를 추출하여 사용자 단말에 제공한다.
회원 정보 관리 블록(1300)은 사용자로부터 회원 정보를 수신하여 회원 정보 DB(1310)에 저장하여 관리한다. 예를 들어, 회원 정보 관리 블록(1300)은 사용자로부터 특정 개수의 좋아하는 음식, 특정 개수의 싫어하는 음식, 레시피 난이도, 건강식 정보, 특별한 일정 정보, 새로운 음식 창작 수준, 성별, 나이, 가족 구성원 등을 포함하는 회원 정보를 수신하여 회원 정보 DB(1310)에 저장하여 회원 정보를 관리한다. 이러한 회원 정보 DB(1310)에 저장된 회원 정보는 레시피 추천부(1400)가 사용자에게 복수의 레시피 중 추천 대상 레시피를 선정하는 과정에서 사용된다.
레시피 추천 블록(1400)은 레시피 관리 블록(1100), 식자재 정보 관리부(1200) 및 회원 정보 관리부(1300)를 이용하여 레시피를 추천할 수 있다.
이를 위해, 레시피 추천 블록(1400)은 회원 정보 DB(1310)에 저장되어 있는 회원 정보를 회원 정보 벡터 모델로 변환하여 회원 정보 벡터를 생성하고, 식자재 DB(1210)에 저장되어 있는 식자재 정보를 식자재 벡터 모델로 변환하여 식자재 벡터를 생성하고, 레시피 DB(1110)에 저장되어 있는 레시피를 레시피 벡터 모델로 변환하여 레시피 벡터로 생성한다.
그런 다음, 레시피 추천 블록(1400)은 회원 정보 벡터, 식자재 벡터 및 레시피 벡터를 이용하여 메트릭스를 생성한다. 즉, 레시피 추천 블록(1400)은 식자재 ×회원 정보 ×레시피로 구성된 메트릭스를 생성할 수 있는 것이다. 이때, 레시피 추천 블록(1400)은 식자재 ×회원 정보 ×레시피로 구성된 메트릭스의 데이터 양이 많기 때문에 차원 축소 방법(예를 들어, PCA, SVD 등)을 이용하여 메트릭스의 차원을 축소킨다.
레시피 추천 블록(1400)은 차원이 축소된 메트릭스에 저장된 정보 각각의 유사도를 측정하여 유사한 정보를 군집화하여 군집화된 정보를 생성한다. 즉, 레시피 추천 블록(1400)은 차원이 축소된 메트릭스에 저장된 1. 식자재 ×회원 정보 ×레시피, 2. 식자재 ×회원 정보 ×레시피, 3. 식자재 ×회원 정보 ×레시피, 4. 식자재 ×회원 정보 ×레시피 등 각각의 유사도를 측정하며 1, 3이 유사하면 1, 3의 정보를 군집화하여 군집화된 그룹을 생성하고, 2, 4가 유사하면 2, 4의 정보를 군집화하여 그룹을 생성할 수 있다.
그런 다음, 레시피 추천 블록(1400)은 복수의 그룹을 기초로 레시피를 추천한다. 이때, 레시피 추천 블록(1400)은 복수의 그룹 각각의 레시피 안에서 랭크(즉, 사용자 평가 결과 점수)에 따라 높은 레시피 순으로 해당 레시피를 추천한다.
도 14는 도 12의 레시피 관리 블록의 내부 구조를 설명하기 위한 블록도이다.
도 14를 참조하면, 레시피 관리 블록(1400)은 레시피 DB(1110), 웹 정보 처리부(1120), 레시피 워크플로우 생성부(1130), 유사도 분석부(1140) 및 레시피 입력 인터페이스부(1150)를 포함한다.
레시피 DB(1110)에는 레시피 입력 인터페이스부(1150)를 통해 요리 전문가로부터 입력받은 레시피가 저장되거나 레시피 워크플로우 생성부(1130)에 의해 생성된 레시피 워크플로우가 자동으로 레시피 입력 인터페이스부(1150)를 통해 전환된 레시피가 저장된다.
웹 정보 처리부(1120)는 웹 공간 상의 레시피 웹 페이지를 크롤링하여 레시피 웹 페이지를 수집하고, 레시피 웹 페이지 파싱하여 파스 트리를 생성한다. 그런 다음, 웹 정보 처리부(1120)는 파스 트리에 텍스트 마이닝 기법(예를 들어, Conditional Random Fields)을 적용하여 미리 정해진 태그 정보에 해당하는 파싱 정보를 추출한다. 그런 다음, 웹 정보 처리부(1120)는 파싱 정보와 태깅 정보를 대응시켜 저장한다.
레시피 워크플로우 생성부(1130)는 웹 정보 처리부(1120)에 의해 처리된 태깅 정보를 미리 정해진 규칙에 따라 정렬하여 조리 과정의 일련의 레시피 워크플로우를 생성한다.
유사도 분석부(1140)는 레시피 워크플로우 생성부(1130)에 의해 레시피 워크플로우가 생성되는 과정에서 식자재 사이의 유사성을 계산하여 대체 식자재 정보를 생성한다. 즉, 유사도 분석부(1140)는 레시피 워크플로우 생성부(1130)에 의해 레시피 워크플로우가 생성되는 과정에서 레시피 워크플로우 상의 노드의 속성값 중 식자재의 정보 사이의 유사성을 계산하여 대체 식자재 정보를 생성한다.
이와 같이, 본 발명은 대체할 재료를 제안할 수 있으므로, 냉장고나 가정집에 보관중인 대체 가능한 식재료를 가지고 음식을 할 수 있도록 함으로써, 보관중인 식자재의 사용을 유도하여 항상 신선한 식자재와 식자재 운용을 효율적으로 할 수 있도록 한다.
도 15는 도 14의 웹 정보 처리부의 내부 구조를 설명하기 위한 블록도이다.
도 15를 참조하면, 웹 정보 처리부(1120)는 웹 크롤링 모듈(1120a), 정보 파싱 모듈(1120b) 및 정보 추출 모듈(1120c)을 포함한다.
웹 크롤링 모듈(1120a)은 웹 공간 상의 레시피 웹 정보를 크롤링하여 정보 파싱 모듈(1120b)에 제공한다.
정보 파싱 모듈(1120b)은 웹 크롤링 모듈에 의해 크롤링된 레시피 웹 정보를 파싱하여 파스 트리를 생성한다. 즉, 정보 파싱 모듈(1120b)은 레시피 웹 페이지의 텍스트에 대해서 문자열을 의미 있는 토큰으로 분해하고, 토큰으로 이루어진 파스 트리를 생성할 수 있는 것이다.
정보 추출 모듈(1120c)은 정보 파싱 모듈에 의해 생성된 파스 트리에서 미리 결정된 태깅 정보에 해당하는 파싱 정보를 추출한다.
그런 다음, 정보 추출 모듈(1120c)은 파스 트리에 텍스트 마이닝 기법(예를 들어, Conditional Random Fields)을 적용하여 미리 정해진 태그 정보에 해당하는 파싱 정보를 추출한다. 예를 들어, 미리 정해진 태깅 정보가 식자재, 양, 조리기구, 시간, 음식상태, 요리 전문가 액션일 경우, 파스 트리로부터 식자재, 양, 조리기구, 시간, 음식상태, 요리 전문가 액션에 해당하는 파싱 정보를 추출할 수 있다.
도 16은 도 15의 레시피 워크플로우 생성부에 의해 생성된 레시피 워크플로우를 설명하기 위한 예시도이다.
도 16을 참조하면, 레시피 관리 블록(1100)은 웹 공간 상에서 수집된 레시피 웹 정보를 파싱하여 파스 트리를 생성하고, 상기 파스 트리에서 미리 결정된 태깅 정보에 해당하는 파싱 정보를 추출하여 파싱 정보 및 태깅 정보를 대응시켜 저장한다.
그런 다음, 레시피 관리 블록(1100)은 파싱 정보 및 태깅 정보가 대응되어 생성된 정보를 미리 생성된 규칙에 따라 배치하여 조리 과정을 나타내는 레시피 워크플로우를 생성한다.
레시피 워크플로우는 복수의 노드로 구성되며, 복수의 노드 각각은 속성 값(예를 들어, 식자재 정보)이 할당되어 있고, 노드와 노드 사이의 링크는 상태 변화를 나타낸다.
도 17은 도 13의 회원 정보 관리부의 내부 구조를 설명하기 위한 블록도이다.
도 17을 참조하면, 회원 정보 블록(1300)은 회원 정보 DB(1310), 선호 음식 수신부(1320), 비선호 음식 수신부(1330) 및 개인 정보 수신부(1340)을 포함한다.
회원 정보 DB(1310)에는 선호 음식 수신부(1320), 비선호 음식 수신부(1330) 및 개인 정보 수신부(1340) 각각에 의해 수신된 회원 정보가 저장된다.
선호 음식 수신부(1320)는 사용자로부터 복수의 선호 음식을 수신하고, 비선호 음식 수신부(1330)는 사용자로부터 복수의 비선호 음식을 수신한다. 이때, 복수의 선호 음식 및 복수의 비선호 음식을 수신하는 이유는 레시피를 추천받은 사용자가 선호하거나 비선호하는 음식뿐만 아니라 이에 포함된 식자재를 분석하여 추천될 레시피를 필터링하기 위해서이다.
개인 정보 수신부(1340)는 사용자로부터 개인 정보(예를 들어, 레시피 난이도, 건강식 정보, 특별한 일정 정보, 새로운 음식 창작 수준, 성별, 나이, 가족 구성원 등)를 수신한다.
이때, 개인 정보 수신부(1340)는 사용자에게 회원 정보를 입력을 요청할 시 보다 상세한 입력 기능을 제공한다.
일 실시예에서, 개인 정보 수신부(1340)는 요리 시간의 경우 식재료를 조리해서 음식으로 만들 때까지의 시간으로 선택할 수 있는 기능을 제공한다.
다른 일 실시예에서, 개인 정보 수신부(1340)는 식사 종류의 경우 다이어트 식사, 건강(예를 들어, 당뇨, 고혈압 등) 식사, 환자병원식사 등으로 선택할 수 있는 기능을 제공한다.
또 다른 일 실시예에서, 개인 정보 수신부(1340)는 특별한 날(명절, 기념일, 생일 등), 불 사용 방법(예를 들어, 화덕, 전자렌지, 불판 등), 조리 기구(특별한 것이 필요한 경우), 식사 참여 인원, 식사 참여인의 성별, 비선호 부자재(마늘을 싫어할 경우 제외한 음식이나 조리법을 채택)등을 선택할 수 있는 기능을 제공한다.
또 다른 일 실시예에서, 개인 정보 수신부(1340)는 간편선택(예를 들어, 일반적인 요리, 식자재를 활용한 요리 등) 또는 신규선택(새로운 요리나 그 동안 먹어보지 못한 것을 우선 추천하도록 하는 것)할 수 있는 기능을 제공한다.
또 다른 일 실시예에서, 개인 정보 수신부(1340)는 음식 간격 선택 기능(예를 들어, 고급스러움, 일반적, 저렴하게 등)을 제공함으로써 사용자가 원하는 가격으로 식단을 구성할 수 있도록 한다.
또 다른 일 실시예에서, 개인 정보 수신부(1340)는 외식 정보 입력 기능을 제공함으로써 가장 최근에 먹은 것과 중복되지 않게 레시피를 추천함과 동시에 외식으로 먹은 음식을 집에서 다시 조리해서 먹지 않도록 레시피를 추천할 수 있다.
또 다른 일 실시예에서, 개인 정보 수신부(1340)는 식단 선택 주기 선택 기능(예를 들어, 매일, 1주일, 2주일 등)을 제공함으로써 현재 보관중인 식자재 및 앞으로 구매할 식자재를 주간 단위, 월간 단위 등으로 제공한다.
도 18은 도 13의 레시피 추천부의 내부 구조를 설명하기 위한 블록도이다.
도 18을 참조하면, 레시피 추천 블록(1400)은 식자재 벡터 생성부(1410), 회원 정보 벡터 생성부(1420), 레시피 벡터 생성부(1430), 메트릭스 생성부(1440), 군집화 레시피 생성부(1450) 및 추천 레시피 선정부(1460)를 포함한다.
식자재 벡터 생성부(1410)는 식자재 DB(1210)에 저장되어 있는 식자재 정보를 식자재 벡터 모델로 변환하여 식자재 벡터를 생성한다.
회원 정보 벡터 생성부(1420)는 회원 정보 DB(1310)에 저장되어 있는 회원 정보를 회원 정보 벡터 모델로 변환하여 회원 정보 벡터를 생성한다.
레시피 벡터 생성부(1430)는 레시피 DB(1110)에 저장되어 있는 레시피를 레시피 벡터 모델로 변환하여 레시피 벡터로 생성한다.
메트릭스 생성부(1440)는 식자재 벡터 생성부(1410)에 의해 생성된 식자재 벡터, 회원 정보 벡터 생성부(1420)에 의해 생성된 회원 정보 벡터 및 레시피 벡터 생성부(1430)에 의해 생성된 레시피 벡터를 이용하여 메트릭스를 생성한다. 메트릭스 생성부(1440)는 식자재 ×회원 정보 ×레시피로 구성된 메트릭스를 생성할 수 있는 것이다. 이때, 메트릭스 생성부(1440)는 식자재 ×회원 정보 ×레시피로 구성된 메트릭스의 데이터 양이 많기 때문에 차원 축소 방법(예를 들어, PCA, SVD 등)을 이용하여 메트릭스의 차원을 축소킨다.
군집화 레시피 생성부(1450)는 메트릭스 생성부(1440)에 의해 차원이 축소된 메트릭스에 저장된 정보 각각의 유사도를 측정하여 유사한 정보를 군집화하여 군집화된 정보를 생성한다. 즉, 군집화 레시피 생성부(1450)는 차원이 축소된 메트릭스에 저장된 1. 식자재 ×회원 정보 ×레시피, 2. 식자재 ×회원 정보 ×레시피, 3. 식자재 ×회원 정보 ×레시피, 4. 식자재 ×회원 정보 ×레시피 등 각각의 유사도를 측정하며 1, 3이 유사하면 1, 3의 정보를 군집화하여 군집화된 정보를 생성하고, 2, 4가 유사하면 2, 4의 정보를 군집화하여 복수의 그룹을 생성할 수 있다.
추천 레시피 선정부(1460)는 군집화 레시피 생성부(1450)에 의해 생성된 복수의 그룹을 기초로 레시피를 추천한다. 이때, 추천 레시피 선정부(1460)는 복수의 그룹 각각의 레시피 안에서 랭크(즉, 사용자 평가 결과 점수)에 따라 높은 레시피 순으로 해당 레시피를 추천한다.
도 19는 레시피 제공 방법의 일 실시예를 설명하기 위한 흐름도이다.
도 19를 참조하면, 레시피 제공 서버(1000)는 요리 전문가로부터 레시피를 입력받거나 웹 공간 상의 레시피 웹 정보를 수집하여 레시피를 관리한다(단계 S810). 레시피 제공 서버(1000)는 사용자로부터 냉장고 내에 존재하는 식자재 정보를 수신한다(단계 S820). 레시피 제공 서버(1000)는 사용자로부터 회원 정보를 수신한다(단계 S830). 레시피 제공 서버(1000)는 레시피, 상기 식자재 정보 및 상기 회원 정보를 이용하여 상기 사용자에게 추천할 레시피를 추출하여 추천한다(단계 S840).
도 20은 일 실시 예에 따른 창작 레시피 생성방법을 단계 별로 나타낸 순서도이고, 도 21은 일 실시 예에 따른 창작 레시피 생성방법의 데이터 수집단계를 통해 수집된 감자조림 레시피를 나타낸 도면이며, 도 22는 요리재료 및 이와 관련되어 조리법으로 라벨화된 동사들 간의 계산된 벡터 거리를 보여주는 도면이다.
본 발명의 실시 예에 따른 창작 레시피 생성방법은 입력된 요리재료로 만들어질 요리, 예컨대, 사용하고자 하는 요리재료 혹은 실제 준비되어 있는 요리재료로 만들 예정인 요리에 대한 새로운 즉, 창작 레시피를 생성하는 방법이다. 도 20에 도시한 바와 같이, 이를 위해, 본 발명의 실시 예에 따른 창작 레시피 생성방법은 요리 정보 수신단계(S1), 데이터 수집단계(S2), 분류 및 정형화 단계(S3), 저장단계(S4) 및 신규 레시피 생성단계(S5)를 포함한다.
먼저, 요리 정보 수신단계(S1)는 사용자 인터페이스를 통해 입력되는 요리형태 및 요리재료에 관한 정보를 수신하는 단계이다. 여기서, 사용자는 웹 서버로부터 요리형태 및 요리재료를 입력할 수 있는 인터페이스 창을 포함하는 웹 페이지를 제공받는다. 이에, 사용자는 요리형태로는 "조림", 요리재료로는 "콩나물"과 "돼지고기", "고구마"와 "부추"를 입력할 수 있다. 그러나 상기에 예시한 요리형태 및 요리재료는 일례일 뿐, 본 발명의 실시 예에서, 요리형태를 "조림", 요리재료를 "콩나물"과 "돼지고기", "고구마"와 "부추"로 특별히 한정하는 것은 아니다.
이때, 웹 서버에서 제공하는 인터페이스 창에는 텍스트 형태로 요리형태와 요리재료가 입력될 수 있다. 또한, 웹 서버에서 제공하는 웹 페이지는 다수의 요리재료 아이콘 및 요리형태 아이콘을 제공하고, 이에 따라, 인터페이스 창에는 사용자에 의해 선택된 요리재료 및 요리형태 아이콘이 입력될 수 있다.
요리 정보 수신단계(S1)에서는 이와 같이, 사용자에 의해 입력되는 요리형태 및 요리재료에 관한 정보를 수신한다.
다음으로, 데이터 수집단계(S2)는 데이터 마이닝(Data Mining) 기법을 통해 웹 상에 존재하는 요리형태 및 요리재료, 보다 상세하게는 요리 정보 수신단계(S1)를 통해 사용자에 의해 입력된 요리형태 및 요리재료와 관련된 레시피 정보에 관한 비정형 데이터를 수집하는 단계이다. 이때, 데이터 수집단계(S2)에서는 비정형 데이터를 자동화된 소프트웨어로 수집할 수 있다. 예를 들어, 데이터 수집단계(S2)에서는 데이터를 실시간으로 수집하는 소프트웨어인 크롤러(Crawler)를 이용하여 사용자에 의해 입력된 요리형태 및 요리재료와 관련된 레시피 정보에 관한 비정형 데이터를 수집할 수 있다. 크롤러는 특정 URL(uniform Resource Locator)을 통해 웹 페이지에 링크되어 있는 URL들을 타고 들어가 무작위로, 사용자에 의해 입력된 요리형태인 "조림", 사용자에 의해 입력된 요리재료인 "콩나물"과 "돼지고기", "고구마"와 "부추"와 관련된 데이터를 수집한다. 또한, 크롤러는 예컨대, 현존하는 요리 관련 블로그를 수집할 수 있다.
도 21은 사용자에 의해 입력된 요리형태가 "조림"인 경우, 데이터 수집단계(S2)에 의해 수집된 수많은 조림관련 레시피 데이터 중 대표적인 조림요리인 감자조림 레시피(R)에 관한 텍스트 형태의 데이터를 보여준다.
본 발명의 실시 예에서, 데이터 수집단계(S2)에 의해 수집된 감자조림 레시피(R)는 웹 상에 존재하는, 즉, 현존하는 레시피로 정의되며, 하기에서는 감자조림 레시피(R) 기준으로 설명하기로 한다.
다음으로, 분류 및 정형화 단계(S3)는 데이터 수집단계(S2)에 의해 수집된 비정형 데이터, 즉, 감자조림 레시피(R)를 분류 및 정형화하여 레시피 데이터로 만드는 단계이다. 본 발명의 실시 예에 따른 분류 및 정형화 단계(S3)에서는 Word2Vector 및 Paragraph2Vector 기법을 이용하여 비정형 데이터를 분류 및 정형화한다. 여기서, Word2Vector에 대해 간략하게 설명하면, Word2Vector는 텍스트를 처리하는 인공 신경망으로 두 개의 층으로 구성되어 있다. 이러한 Word2Vector는 단어 간의 유사성을 분석하는 기법으로, 입력되는 각 단어마다 단어에 해당하는 벡터를 구하고, 이 벡터 값을 다시 심층 신경망에 집어넣어서 단어의 유사성 등 관계를 파악하게 된다. Word2Vector는 비례수식으로 표현할 수 있다. 예를 들어, "로마에게 이탈리아가 있다면 베이징에겐"이라는 텍스트를 Word2Vector에서는 로마:이탈리아::베이징:??으로 표현할 수 있다. 여기서, "::"은 수학식에서 "="와 동일하다. 이 경우, 로마는 이탈리아의 수도이므로, Word2Vector는 가장 유사한, 즉, 벡터 거리가 가장 짧은 "중국"을 고르게 된다. 다른 예로, 도 3에 도시한 바와 같이, "오이"라는 단어가 주어졌을 때, Word2Vector 는 이와 관련되는 단어들인 "깎는다", "썬다", "절인다", 삶는다" 등과 같은 동사들로부터 "오이"와의 벡터 값에 대한 상대적인 정도를 파악한다. 이와 같이, Word2Vector는 단어의 의미를 기반으로 유사성을 분석하고, 고차원 공간 벡터 연산으로 표현하는 기법으로, 문법을 알 필요가 없고, 또한, 단어의 맞춤법과도 전혀 관계가 없다. 한편, Paragraph2Vector는 Word2Vector 기법을 통해 분석한 문장이나 문단 구조의 텍스트를 분류하는 기법이다.
이와 같이, 분류 및 정형화 단계(S3)는 요리 정보 수신단계(S1)에 의해 수신된 요리형태 및 요리재료에 관한 정보를 바탕으로, 데이터 수집단계(S2)에 의해 수집된 비정형 데이터를 분류 및 정형화하여 레시피 데이터로 만든다.
다음으로, 저장단계(S4)는 분류 및 정형화 단계(S3)를 통해 만들어진 레시피 데이터를 데이터베이스에 저장하는 단계이다. 저장단계(S4)에서는 레시피명, 레시피 등이 상세하게 분류 및 정형화되어 만들어진 레시피 데이터를 요리관련 정보가 저장되어 있는 데이터베이스에 저장한다.
마지막으로, 신규 레시피 생성단계(S5)는 딥 러닝(Deep Learning) 기법을 이용하여, 저장단계(S4)를 통해 데이터베이스에 저장되어 있는 레시피 데이터로부터 사용자에 의해 입력된 요리형태 및 요리재료에 부합되는 새로운 혹은 신규한, 즉, 창작 레시피를 생성하는 단계이다. 여기서, 데이터베이스에 저장되어 있는 레시피 데이터가 딥 러닝 기법을 통해 학습할 학습모델(Models of Learning)이 된다.
본 발명의 실시 예에 따른 신규 레시피 생성단계(S5)는 먼저, 데이터베이스에 저장되어 있는 레시피 데이터, 즉, 학습모델로부터 조리법과 조리과정을 추출하는 제1 단계를 포함한다.
제1 단계에서는 레시피 데이터를 이루는 언어인 한글을 형태소 단위로 분석하기 위한 자연어 처리(Natural Language Processing; NLP) 기법을 이용한다. 즉, 제1 단계에서는 먼저, 레시피 데이터를 이루는 언어에 대해 정규화(Normalizing), 어근화(Stemming) 및 절단화(Tokenizing)한다.
다음으로, 제1 단계에서는 정규화, 어근화 및 절단화된 언어들에서 동사들을 분류해 낸다. 그 다음, 분류된 동사들을 심층 신경망을 통해 군집화(Clustering)한 후, 군집화된 동사들을 사람이 눈으로 확인하여 각각의 동사들에 "조리법"으로 라벨화(Labeling)한다. 예를 들어, "썰다", "끓이다", "볶다", "굽다", "삶다", "데치다", "섞다", "절이다", "버무리다", "말리다"와 같은 동사들이 조리법으로 라벨화될 수 있다. 이때, 상기와 같이, 조리법으로 라벨화된 동사들의 종류는 일례일 뿐, 더 많은 동사들이 조리법으로 라벨화될 수 있다.
상기와 같은 제1 단계 후, 본 발명의 실시 예에 따른 신규 레시피 생성단계(S5)는 요리재료 별로 조리과정을 학습하는 제2 단계를 포함한다.
제2 단계에서는 제1 단계를 통해 정규화, 어근화 및 절단화된 언어에 대해, 분류 및 정형화 단계(S3)와 마찬가지로, Word2Vector 기법을 이용하여, 입력된 요리재료와 라벨화된 조리법에 관한 동사들 간의 벡터 거리를 계산한다. 도 3에 도시한 바와 같이, 입력된 요리재료가 "오이"인 경우, 라벨화된 조리법에 관한 동사들인 "깎는다", "썬다", "절인다", "삶는다" 간의 벡터 거리를 계산한다.
그 다음, 제2 단계에서는 요리재료 별 조리법으로 라벨화된 동사들을 계산한 벡터 거리를 기준으로 리스트화한다. 예를 들어, 벡터 거리가 가장 짧은 조리법인 "썬다"를 1순위로, 그 다음, 벡터 거리에 따라, "깎는다", "절인다", "삶는다" 순으로 리스트화한다.
그 다음, 제2 단계에서는 요리재료 별 조리법으로 라벨화된 동사들을 계산한 벡터 거리를 기준으로 만들어진 리스트를 토대로, 다른 요리재료에 대한 조리법과 관련된 동사들을 도출하기 위해 하기와 같은 비례 수식을 적용한다.
I(a) : M(b) = I(x) : M(y)
여기서, I는 요리재료, M은 조리법, a는 존재하는 레시피의 요리재료, b는 요리재료 a에 대한 조리법을 나타내는 동사, x는 입력된 요리재료, y는 입력된 요리재료 x에 대한 조리법을 나타내는 동사이다.
예를 들어, 입력된 요리재료 x가 돼지고기, 당근, 육수인 경우, 존재하는 레시피의 요리재료 a는 쇠고기, 오이, 물이 선택될 수 있고, 이들 요리재료 a와 벡터 거리가 가장 짧은 동사는 리스트 상에서 "굽다", "깎다", "끓이다"가 선택될 수 있다. 따라서, 상기의 비례 수식에 대입하면,
I(쇠고기) : M(굽다) = I(x) : M(y)
상기 비례 수식에서, 쇠고기 a와 관련된 요리재료 x는 돼지고기, 이에 대한 조리법 y는 "굽다"가 도출될 수 있다.
I(오이) : M(깎다) = I(x) : M(y)
상기의 비례 수식에서, 오이 a와 관련된 요리재료 x는 당근, 이에 대한 조리법 y는 "깎다"가 도출될 수 있다.
I(물) : M(끓이다) = I(x) : M(y)
상기의 비례 수식에서, 물 a와 관련된 요리재료 x는 육수, 이에 대한 조리법 y는 "끓이다"가 도출될 수 있다.
상기와 같은 제2 단계 후, 본 발명의 실시 예에 따른 신규 레시피 생성단계(S5)는 정규화, 어근화 및 절단화된 단어나 동사를 포함하는 언어들을 구어체 문장으로 재 조립하는 제3 단계를 포함한다.
제3 단계에서는 제1 단계 및 제2 단계를 통해 정규화, 어근화 및 절단화된 레시피 언어를 역-절단화(Reverse-Tokenizing) 및 역-어근화(Reverse-Stemming)하여 구어체 문장으로 재 조립한다.
이와 같이, 신규 레시피 생성단계(S3)가 종료되면, 입력된 요리형태 및 요리재료로 만들어질 요리, 예컨대, 사용하고자 하는 요리재료 혹은 실제 준비되어 있는 요리재료로 만들어질 요리에 대한 새로운 레시피가 현존하는 관련 레시피(R)에 근거하여 쉽고 빠르게 생성된다.
한편, 신규 레시피 생성단계(S5)는 제3 단계 후 생성된 새로운 레시피에 대한 수정을 제안하는 제4 단계를 더 포함할 수 있다. 즉, 제4 단계에서는 사용자에 의해 입력된 요리재료와 궁합이 맞는 하나 또는 그 이상의 새로운 요리재료를 데이터베이스로부터 추천 받는다. 그리고 추천 받은 새로운 요리재료에 대한 딥 러닝을 통해, 새로운 요리재료에 대한 조리법을 도출한다. 그 다음, 새로운 요리재료에 대한 조리법이 새로운 레시피에 추가되도록, 새로운 레시피에 대한 수정을 제안한다. 이에, 사용자는 기호에 따라 새로운 레시피에 대한 수정 여부를 선택 및 결정한다.
실시 예1
사용자 인터페이스를 통해, 요리형태로는 "조림", 요리재료로는 "감자", "당근", "돼지고기", "콩나물"이 입력된 경우, 데이터 마이닝을 통해 관련 레시피를 수집한 후 감자조림 레시피(R)를 선택한다.(도 21), 그 다음, 학습모델에 대한 딥 러닝을 통해, 추가 요리재료인 "콩나물" 및 "돼지고기"와 관련된 조리법인 동사들을 도출한 후 구어체 문장으로 조립하여, 도 23에 도시한 바와 같이, 기존의 감자조림 레시피(R)에 "콩나물" 및 "돼지고기" 조리법이 추가된 돼지고기 콩나물 감자조림 레시피(R1)를 생성한다.
실시 예2
사용자 인터페이스를 통해, 요리형태로는 "조림", 요리재료로는 "고구마", "부추"가 입력된 경우, 데이터 마이닝을 통해 관련 레시피를 수집한 후 대표적인 조림요리인 감자조림 레시피(R)를 선택한다.(도 21), 그 다음, 감자조림 레시피(R)에 대한 텍스트 언어에 대해, 도 24에 도시한 바와 같이, 정규화, 어근화 및 절단화한다. 그 다음, 도 25에 도시한 바와 같이, 학습모델에 대한 딥 러닝을 통해, 구체적으로는 상기의 비례 수식을 적용하여, 감자조림 레시피(R)의 "감자"는 "고구마"로, "양파"는 "부추"로 변환한다. 그 다음, 도 26에 도시한 바와 같이, 정규화, 어근화 및 절단화된 레시피 언어를 구어체 문장으로 재 조립하기 위해, 이를 역-절단화 및 역-어근화하여, 감자조림 레시피(R)로부터 고구마 부추조림 레시피(R2)를 생성한다.
실시 예3
사용자 인터페이스를 통해, 요리형태로는 "조림", 요리재료로는 "돼지고기", "콩나물", "고구마", "부추"가 입력된 경우, 데이터 마이닝을 통해 관련 레시피를 수집한 후 대표적인 조림요리인 감자조림 레시피(R)를 선택한다.(도 21), 그 다음, 감자조림 레시피(R)에 대한 텍스트 언어에 대해, 정규화, 어근화 및 절단화한다. 그 다음, 학습모델에 대한 딥 러닝을 통해, "돼지고기", "콩나물", "고구마", "부추"와 관련된 조리법인 동사들을 도출하고, 비례 수식을 적용하여, 감자조림 레시피(R)의 "감자"는 "고구마"로, "양파"는 "부추"로 변환한다. 또한, 감자조림 레시피(R)에 유사성을 갖는 요리재료가 없는 "콩나물"과 "돼지고기"는 이와 관련된 조리법을 나타내는 동사들과 함께 감자조림 레시피(R)에 추가된다. 그 다음, 도 27에 도시한 바와 같이, 정규화, 어근화 및 절단화된 레시피 언어를 구어체 문장으로 재조립하기 위해, 이를 역-절단화 및 역-어근화하여, 감자조림 레시피(R)로부터 돼지고기 콩나물 고구마 부추조림 레시피(R3)를 생성한다.
한편, 돼지고기 콩나물 고구마 부추조림 레시피(R3)는 데이터베이스에 돼지고기 콩나물 감자조림 레시피(도 23의 R1) 및 고구마 부추 조림 레시피(도 26의 R2)가 저장되어 있는 경우, 이들 R1과 R2를 조합하여 생성될 수도 있다.
이상에서 설명한 것은 본 발명에 의한 식재료 관리 시스템 및 식재료 관리 방법, 식재료를 이용한 레시피 제공 방법 및 이를 실행하는 서버, 식재료를 이용한 창작 레시피 생성방법을 실시하기 위한 하나의 실시 예에 불과한 것으로서, 본 발명은 상기 실시 예에 한정되지 않고, 이하의 특허청구범위에서 청구하는 바와 같이 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변경 실시가 가능한 범위까지 본 발명의 기술적 정신이 있다고 할 것이다.

Claims (29)

  1. 제1 사용자 단말로부터 냉장고 이미지를 수신하는 단계;
    상기 냉장고 이미지를 미리 등록된 복수의 제2 사용자 단말로 푸쉬하는 단계;
    적어도 하나의 제2 사용자 단말로부터 상기 냉장고 이미지에 대응되는 식재료 정보를 수신하는 단계;
    상기 적어도 하나의 제2 사용자 단말로부터 수신된 식재료 정보를 이용하여 냉장고에 수납된 적어도 하나의 식재료를 인식하여 냉장고의 각 영역 별로 수납된 식재료의 종류 및 수량에 대한 정보로 구성된 식재료맵을 생성하는 단계;
    상기 식재료맵을 상기 제1 사용자 단말에 제공하는 단계; 및
    상기 식재료맵과 상기 적어도 하나의 제2 사용자 단말로부터 수신된 식재료 정보의 유사도를 분석하고, 상기 유사도에 따라 제2 사용자에게 포인트를 적립하는 포인트 적립 단계;를 포함하는 식재료 관리 방법.
  2. 제1항에 있어서,
    과거에 생성된 이전 식재료맵과 제2 사용자 단말로부터 수신된 식재료 정보를 이용하여 생성된 식재료맵을 이용하여 사용자의 식재료 소비 패턴을 분석하고, 상기 식재료 소비 패턴을 기초하여 식재료에 대한 구매 정보를 생성하여 상기 제1 사용자 단말로 전송하는 단계;를 더 포함하는 식재료 관리 방법.
  3. 제1항에 있어서,
    상기 식재료맵을 생성하는 단계는,
    상기 적어도 하나의 제2 사용자 단말로부터 수신된 식재료 정보를 유사도에 따라 복수의 그룹으로 분류하여 표본 수에 따라 유효 그룹을 결정하고, 결정된 유효 그룹에 식재료 정보를 이용하여 상기 식재료맵을 생성하는 단계;를 더 포함하는 식재료 관리 방법.
  4. 제1항에 있어서,
    상기 제1 사용자 단말로부터 음식 이미지를 수신하는 단계;
    상기 복수의 제2 사용자 단말로 푸쉬하는 단계;
    상기 복수의 제2 사용자 단말로부터 상기 음식 이미지에 대응되는 조리 정보를 수신하고, 상기 조리 정보에 기초하여 식재료 정보, 조리법, 및 열량 정보를 포함하는 레시피 정보를 생성하는 단계; 및
    상기 레시피 정보를 상기 제1 사용자 단말 및 상기 제2 사용자 단말로 전송하는 단계;를 더 포함하는 식재료 관리 방법.
  5. 제4항에 있어서,
    상기 식재료맵과 상기 레시피 정보에 대응되는 식재료를 비교하여, 추가 구매가 필요한 식재료를 분석하여 구매 정보를 생성하고, 상기 구매 정보를 상기 제1 사용자 단말에 전송하는 단계; 를 더 포함하는 식재료 관리 방법.
  6. 식재료 관리 서버;
    상기 식재료 관리 서버로 냉장고 이미지를 전송하는 제1 사용자 단말;
    상기 식재료 관리 서버로부터 상기 냉장고 이미지를 수신하여 표시하고, 상기 냉장고 이미지에 대응되는 식재료 정보를 입력 받아 상기 식재료 관리 서버로 전송하는 복수의 제2 사용자 단말;을 포함하는 식재료 관리 시스템에 있어서,
    상기 식재료 관리 서버는,
    상기 복수의 제2 사용자 단말로부터 수신된 식재료 정보를 이용하여 냉장고에 수납된 적어도 하나의 식재료를 인식하여 냉장고의 각 영역 별로 수납된 식재료의 종류 및 수량에 대한 정보로 구성된 식재료맵을 생성하여 상기 제1 사용자 단말에 전송하는 식재료 관리부; 및
    상기 식재료맵과 상기 복수의 제2 사용자 단말로부터 수신된 식재료 정보의 유사도를 분석하고, 상기 유사도에 따라 상기 복수의 제2 사용자 단말의 각 사용자에게 포인트를 적립하는 포인트 관리부;를 포함하는 식재료 관리 시스템.
  7. 제6항에 있어서,
    과거에 생성된 이전 식재료맵과 제2 사용자 단말로부터 수신된 식재료 정보를 이용하여 생성된 식재료맵을 이용하여 사용자의 식재료 소비 패턴을 분석하고, 상기 식재료 소비 패턴을 기초하여 식재료에 대한 구매 정보를 생성하여 상기 제1 사용자 단말로 전송하는 구매 관리부;를 더 포함하는 식재료 관리 시스템.
  8. 상기 제6항에 있어서,
    상기 식재료 관리부는,
    상기 적어도 하나의 제2 사용자 단말로부터 수신된 식재료 정보를 유사도에 따라 복수의 그룹으로 분류하여 표본 수에 따라 유효 그룹을 결정하고, 결정된 유효 그룹에 식재료 정보를 이용하여 상기 식재료맵을 생성하는 식재료 관리 시스템.
  9. 제6항에 있어서,
    상기 제1 사용자 단말로부터 음식 이미지를 수신하면 상기 음식 이미지를 상기 복수의 제2 사용자 단말로 푸쉬하여 상기 음식 이미지에 대응되는 조리 정보를 수신하고, 상기 조리 정보에 기초하여 식재료 정보, 조리법, 및 열량 정보를 포함하는 레시피 정보를 생성하여 상기 제1 사용자 단말로 전송하는 조리정보 관리부;를 더 포함하는 식재료 관리 시스템.
  10. 제9항에 있어서,
    상기 조리정보 관리부는,
    상기 식재료맵과 상기 레시피 정보에 대응되는 식재료를 이용하여 추가 구매가 필요한 식재료를 분석하여 구매 정보를 생성하고, 상기 구매 정보를 상기 제1 사용자 단말에 전송하는 식재료 관리 시스템.
  11. 요리 전문가로부터 레시피를 입력받거나 웹 공간 상의 레시피 웹 정보를 수집하여 레시피를 관리하는 레시피 관리 블록;
    사용자로부터 냉장고 내에 존재하는 식자재 정보를 수신하여 관리하는 식자재 정보 관리 블록;
    사용자로부터 회원 정보를 수신하여 관리하는 회원 정보 관리 블록; 및
    상기 레시피, 상기 식자재 정보 및 상기 회원 정보를 이용하여 상기 사용자에게 추천할 레시피를 추출하여 추천하는 레시피 추천 블록을 포함하는 레시피 제공 서버.
  12. 제11항에 있어서,
    상기 레시피 관리 블록은
    웹 공간 상에서 수집된 레시피 웹 정보를 파싱하여 파스 트리를 생성하고, 상기 파스 트리에서 미리 결정된 태깅 정보에 해당하는 파싱 정보를 추출하고, 상기 파싱 정보와 상기 태깅 정보를 대응시켜 저장하는 웹 정보 처리부;
    상기 웹 정보 처리에 의해 생성된 정보를 미리 생성된 규칙에 따라 배치하여 조리 과정을 나타내는 레시피 워크플로우를 생성하는 워크플로우 생성부;
    상기 레시피 워크플로우 각각의 유사도를 분석하는 유사도 분석부;
    상기 요리 전문가에게 레시피 입력 절차를 제공하거나 상기 레시피 워크플로우를 레시피 입력 절차에 따라 변환하는 레시피 입력 인터페이스부; 및
    상기 레시피 입력 인터페이스부를 통해 수신한 레시피가 저장되는 레시피 DB를 포함하는 것을 특징으로 하는 레시피 제공 서버.
  13. 제12항에 있어서,
    상기 웹 정보 처리부는
    웹 공간 상의 레시피 웹 정보를 크롤링하는 웹 크롤링 모듈;
    상기 웹 크롤링 모듈에 의해 크롤링된 상기 레시피 웹 정보를 파싱하는 정보 파싱 모듈; 및
    상기 정보 파싱 모듈에 의해 생성된 파스 트리에서 미리 결정된 태깅 정보에 해당하는 파싱 정보를 추출하고, 상기 파싱 정보와 상기 태깅 정보를 대응시켜 저장하는 정보 추출 모듈을 포함하는 것을 특징으로 하는 레시피 제공 서버.
  14. 제11항에 있어서,
    상기 회원 정보 관리 블록은
    상기 사용자로부터 특정 개수의 좋아하는 음식을 수신하는 선호 음식 수신 모듈;
    상기 사용자로부터 특정 개수의 싫어하는 음식을 수신하는 비선호 음식 수신 모듈;
    레시피 난이도, 건강식 정보, 특별한 일정 정보, 새로운 음식 창작 수준, 성별, 나이 및 가족 구성원 중 적어도 하나를 포함하는 정보를 수신하는 개인 정보 수신 모듈; 및
    상기 선호 음식 수신 모듈, 상기 비선호 음식 수신 모듈 및 상기 개인 정보 수신 모듈을 통해 수신된 정보가 저장되는 회원 정보 DB를 포함하는 레시피 제공 서버.
  15. 제12항 내지 제14항 중 어느 한 항에 있어서,
    상기 레시피 추천 블록은
    상기 회원 정보 DB에 저장되어 있는 회원 정보를 회원 정보 벡터 모델로 변환하여 회원 정보 벡터를 생성하는 회원 정보 벡터 생성부;
    상기 식자재 DB에 저장되어 있는 식자재 정보를 식자재 벡터 모델로 변환하여 식자재 벡터를 생성하는 식자재 벡터 생성부;
    상기 레시피 DB에 저장되어 있는 레시피를 레시피 벡터 모델로 변환하여 레시피 벡터를 생성하는 레시피 벡터 생성부;
    상기 회원 정보 벡터, 상기 식자재 벡터 및 레시피 벡터를 이용하여 식자재, 회원 정보 및 레시피로 구성된 레시피 집합에 대한 메트릭스를 생성하는 메트릭스 생성부;
    상기 레시피 집합 각각의 유사성에 따라 군집화를 실행하여 복수의 그룹을 생성하는 군집화 레시피 생성부; 및
    상기 복수의 그룹 각각의 레시피 안에서 랭크에 따라 레시피를 추천하는 추천 레시피 선정부를 포함하는 것을 특징으로 하는 레시피 제공 서버.
  16. 레시피 제공 서버에서 실행되는 레시피 제공 방법에 있어서,
    요리 전문가로부터 레시피를 입력받거나 웹 공간 상의 레시피 웹 정보를 수집하여 레시피를 관리하는 단계;
    사용자로부터 냉장고 내에 존재하는 식자재 정보를 수신하는 단계;
    상기 사용자로부터 회원 정보를 수신하는 단계; 및
    상기 레시피, 상기 식자재 정보 및 상기 회원 정보를 이용하여 상기 사용자에게 추천할 레시피를 추출하여 추천하는 단계를 포함하는 레시피 제공 방법.
  17. 제16항에 있어서,
    상기 레시피를 관리하는 단계는
    웹 공간 상에서 수집된 정보를 이용하여 파스 트리를 생성하고, 상기 파스 트리에서 추출된 파싱 정보 및 미리 결정된 태깅 정보를 대응시켜 저장하는 단계;
    상기 태깅 정보를 미리 생성된 규칙에 따라 배치하여 조리 과정을 나타내는 레시피 워크플로우를 생성하는 단계;
    상기 요리 전문가에게 레시피 입력 절차를 제공하거나 상기 레시피 워크플로우를 레시피 입력 절차에 따라 변환하는 단계; 및
    상기 레시피 입력 절차를 통해 수신한 레시피를 레시피 DB에 저장하는 단계를 포함하는 것을 특징으로 하는 레시피 제공 방법.
  18. 제17항에 있어서,
    상기 상기 파싱 정보와 상기 태깅 정보를 대응시켜 저장하는 단계는
    웹 공간 상의 레시피 웹 정보를 크롤링하는 단계;
    상기 크롤링된 상기 레시피 웹 정보를 파싱하여 파스 트리를 생성하는 단계;
    상기 파스 트리에서 미리 결정된 태깅 정보에 해당하는 파싱 정보를 추출하고, 상기 파싱 정보와 상기 태깅 정보를 대응시켜 저장하는 단계를 포함하는 것을 특징으로 하는 레시피 제공 방법.
  19. 제16항에 있어서,
    상기 사용자로부터 회원 정보를 수신하는 단계는
    상기 사용자로부터 특정 개수의 좋아하는 음식을 수신하는 단계;
    상기 사용자로부터 특정 개수의 싫어하는 음식을 수신하는 단계; 레시피 난이도, 건강식 정보, 특별한 일정 정보, 새로운 음식 창작 수준, 성별, 나이 및 가족 구성원 중 적어도 하나를 포함하는 정보를 수신하는 단계; 및
    상기 수신된 정보를 회원 정보 DB에 저장하는 단계를 포함하는 레시피 제공 방법.
  20. 제17항 내지 제19항 중 어느 한 항에 있어서,
    상기 레시피를 추출하여 추천하는 단계는
    상기 회원 정보 DB에 저장되어 있는 회원 정보를 회원 정보 벡터 모델로 변환하여 회원 정보 벡터를 생성하는 단계;
    상기 식자재 DB에 저장되어 있는 식자재 정보를 식자재 벡터 모델로 변환하여 식자재 벡터를 생성하는 단계;
    상기 레시피 DB에 저장되어 있는 레시피를 레시피 벡터 모델로 변환하여 레시피 벡터를 생성하는 단계;
    상기 회원 정보 벡터, 상기 식자재 벡터 및 레시피 벡터를 이용하여 식자재, 회원 정보 및 레시피로 구성된 레시피 집합에 대한 메트릭스를 생성하는 단계;
    상기 레시피 집합 각각의 유사성에 따라 군집화를 실행하여 복수의 그룹을 생성하는 단계; 및
    상기 복수의 그룹 각각의 레시피 안에서 랭크에 따라 레시피를 추천하는 단계를 포함하는 것을 특징으로 하는 레시피 제공 방법.
  21. 사용자 인터페이스를 통해 입력되는 요리형태 및 요리재료에 관한 정보를 수신하는 요리 정보 수신단계;
    데이터 마이닝을 통해 웹 상에 존재하는 상기 요리형태 및 상기 요리재료와 관련된 레시피 정보에 관한 비정형 데이터를 수집하는 데이터 수집단계;
    상기 비정형 데이터를 분류 및 정형화하여 레시피 데이터로 만드는 분류 및 정형화 단계;
    상기 레시피 데이터를 데이터베이스에 저장하는 저장단계; 및
    딥 러닝 기법을 이용하여, 상기 데이터베이스에 저장되어 있는 상기 레시피 데이터로부터 상기 요리형태 및 요리재료에 부합되는 새로운 레시피를 생성하는 신규 레시피 생성단계;를 포함하는 창작 레시피 생성방법.
  22. 제21항에 있어서,
    상기 분류 및 정형화 단계에서는 Word2Vector 및 Paragraph2Vector 기법을 이용하여 상기 비정형 데이터를 분류 및 정형화하는 창작 레시피 생성방법.
  23. 제21항에 있어서,
    상기 신규 레시피 생성단계는,
    상기 데이터베이스에 저장되어 있는 상기 레시피 데이터로부터 조리법과 조리과정을 추출하는 제1 단계; 및
    상기 요리재료 별로 조리과정을 학습하는 제2 단계를 포함하는 창작 레시피 생성방법.
  24. 제23항에 있어서,
    상기 제1 단계는,
    상기 레시피 데이터를 이루는 언어에 대해 정규화, 어근화 및 절단화하는 제1 과정;
    정규화, 어근화 및 절단화된 상기 언어에서 동사들을 분류하는 제2 과정;
    분류된 상기 동사들을 심층 신경망을 통해 군집화하는 제3 과정; 및
    군집화된 상기 동사들을 확인하여 상기 동사들 각각을 조리법으로 라벨화하는 제4 과정을 포함하는 창작 레시피 생성방법.
  25. 제24항에 있어서,
    상기 제2 단계에서는 정규화, 어근화 및 절단화된 상기 언어에 대해 Word2Vector 기법을 이용하여, 상기 요리재료와 라벨화된 상기 조리법에 관한 동사들 간의 벡터 거리를 계산하는 창작 레시피 생성방법.
  26. 제25항에 있어서,
    상기 제2 단계에서는 상기 요리재료 별 상기 조리법에 관한 동사들을 상기 벡터 거리를 기준으로 리스트화하는 창작 레시피 생성방법.
  27. 제26항에 있어서,
    상기 제2 단계에서는 상기 리스트를 토대로, 다른 요리재료에 대한 조리법과 관련된 동사들을 도출하기 위해 비례 수식을 적용하는 창작 레시피 생성방법.
  28. 제24항에 있어서,
    상기 신규 레시피 생성단계는 정규화, 어근화 및 절단화된 상기 언어를 역-절단화 및 역-어근화하여 구어체 문장으로 재 조립하는 제3 단계를 더 포함하는 창작 레시피 생성방법.
  29. 제28항에 있어서,
    상기 신규 레시피 생성단계는 상기 요리재료와 궁합이 맞는 새로운 요리재료를 상기 데이터베이스로부터 추천 받아, 상기 새로운 요리재료에 대한 조리법을 도출하고, 상기 새로운 요리재료에 대한 조리법이 추가되도록, 상기 제3 단계 후 생성된 상기 새로운 레시피에 대한 수정을 제안하는 제4 단계를 더 포함하는 창작 레시피 생성방법.
PCT/KR2017/001205 2016-02-03 2017-02-03 식재료 관리 시스템 및 식재료 관리 방법, 식재료를 이용한 레시피 제공 방법 및 이를 실행하는 서버, 식재료를 이용한 창작 레시피 생성방법 WO2017135742A1 (ko)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
KR10-2016-0013602 2016-02-03
KR1020160013602A KR101798616B1 (ko) 2016-02-03 2016-02-03 레시피 제공 방법 및 이를 실행하는 서버
KR1020160065012A KR101754372B1 (ko) 2016-05-26 2016-05-26 식재료 관리 시스템 및 식재료 관리 방법
KR10-2016-0065012 2016-05-26
KR1020160101666A KR101874604B1 (ko) 2016-08-10 2016-08-10 창작 레시피 생성방법
KR10-2016-0101666 2016-08-10

Publications (1)

Publication Number Publication Date
WO2017135742A1 true WO2017135742A1 (ko) 2017-08-10

Family

ID=59500887

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2017/001205 WO2017135742A1 (ko) 2016-02-03 2017-02-03 식재료 관리 시스템 및 식재료 관리 방법, 식재료를 이용한 레시피 제공 방법 및 이를 실행하는 서버, 식재료를 이용한 창작 레시피 생성방법

Country Status (1)

Country Link
WO (1) WO2017135742A1 (ko)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019045456A1 (ko) * 2017-08-30 2019-03-07 삼성전자주식회사 냉장고
CN109872796A (zh) * 2017-12-01 2019-06-11 北京京东尚科信息技术有限公司 一种菜谱推荐方法和装置
CN110163836A (zh) * 2018-11-14 2019-08-23 宁波大学 基于深度学习用于高空巡检下的挖掘机检测方法
CN111008303A (zh) * 2019-11-29 2020-04-14 珠海优特智厨科技有限公司 菜谱的录制方法和装置、存储介质、计算设备
CN111374521A (zh) * 2018-12-28 2020-07-07 浙江苏泊尔家电制造有限公司 烹饪器具和烹饪方法
US10733479B2 (en) * 2015-07-24 2020-08-04 Bsh Hausgeraete Gmbh System and method for providing a recipe
CN112005268A (zh) * 2018-04-13 2020-11-27 三星电子株式会社 冰箱和在冰箱上显示用户界面的方法、用户终端和在用户终端中执行功能的方法
CN112383454A (zh) * 2020-10-30 2021-02-19 添可智能科技有限公司 数据处理和执行方法及设备
CN112536977A (zh) * 2020-11-13 2021-03-23 四川长虹智能制造技术有限公司 一种注塑原料供料方法、终端设备及供料系统
CN112614564A (zh) * 2020-12-24 2021-04-06 武汉理工大学 一种基于多源异构数据融合的智能化营养膳食推荐方法
CN113218880A (zh) * 2020-01-21 2021-08-06 青岛海尔电冰箱有限公司 冰箱的食材检测方法、冰箱及存储介质
US20220171933A1 (en) * 2020-11-30 2022-06-02 Kpn Innovations, Llc. Methods and systems for personal recipe generation
WO2023087810A1 (zh) * 2021-11-22 2023-05-25 聚好看科技股份有限公司 一种智能烹饪设备、智能保鲜设备及控制方法
WO2023202221A1 (zh) * 2022-04-22 2023-10-26 海信视像科技股份有限公司 一种电子设备及数据处理方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006139554A (ja) * 2004-11-12 2006-06-01 Toshiba Corp 栄養成分表示方法、栄養成分表示システム及びサーバ装置
KR20070071420A (ko) * 2005-12-30 2007-07-04 삼성전자주식회사 휴대단말기에 있어서 냉장고의 무선통신망을 이용한 식재료 물품관리방법
JP2007249862A (ja) * 2006-03-17 2007-09-27 Toshiba Corp 調理支援装置、調理支援方法及びプログラム
KR20090090840A (ko) * 2008-02-22 2009-08-26 주식회사 솔트룩스 사용자 맞춤형 정보 제공 시스템 및 그 방법
KR20110035380A (ko) * 2009-09-30 2011-04-06 주식회사 케이티 네트워크 기반의 조리법 정보 제공 시스템 및 방법
KR20120105578A (ko) * 2011-02-17 2012-09-26 경북대학교 산학협력단 온톨로지를 이용한 증상과 질병에 따른 요리법의 추천과 요리법의 수정 방법
KR20130048055A (ko) * 2011-11-01 2013-05-09 황영은 레시피 음식점 운영시스템 및 그 방법
KR101497130B1 (ko) * 2014-08-08 2015-03-04 더디엔에이 주식회사 건강 관리를 위하여 자동으로 식재료를 주문하는 방법, 단말 및 컴퓨터 판독 가능한 기록 매체

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006139554A (ja) * 2004-11-12 2006-06-01 Toshiba Corp 栄養成分表示方法、栄養成分表示システム及びサーバ装置
KR20070071420A (ko) * 2005-12-30 2007-07-04 삼성전자주식회사 휴대단말기에 있어서 냉장고의 무선통신망을 이용한 식재료 물품관리방법
JP2007249862A (ja) * 2006-03-17 2007-09-27 Toshiba Corp 調理支援装置、調理支援方法及びプログラム
KR20090090840A (ko) * 2008-02-22 2009-08-26 주식회사 솔트룩스 사용자 맞춤형 정보 제공 시스템 및 그 방법
KR20110035380A (ko) * 2009-09-30 2011-04-06 주식회사 케이티 네트워크 기반의 조리법 정보 제공 시스템 및 방법
KR20120105578A (ko) * 2011-02-17 2012-09-26 경북대학교 산학협력단 온톨로지를 이용한 증상과 질병에 따른 요리법의 추천과 요리법의 수정 방법
KR20130048055A (ko) * 2011-11-01 2013-05-09 황영은 레시피 음식점 운영시스템 및 그 방법
KR101497130B1 (ko) * 2014-08-08 2015-03-04 더디엔에이 주식회사 건강 관리를 위하여 자동으로 식재료를 주문하는 방법, 단말 및 컴퓨터 판독 가능한 기록 매체

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10733479B2 (en) * 2015-07-24 2020-08-04 Bsh Hausgeraete Gmbh System and method for providing a recipe
WO2019045456A1 (ko) * 2017-08-30 2019-03-07 삼성전자주식회사 냉장고
CN109872796A (zh) * 2017-12-01 2019-06-11 北京京东尚科信息技术有限公司 一种菜谱推荐方法和装置
CN112005268A (zh) * 2018-04-13 2020-11-27 三星电子株式会社 冰箱和在冰箱上显示用户界面的方法、用户终端和在用户终端中执行功能的方法
US11954626B2 (en) 2018-04-13 2024-04-09 Samsung Electronics Co., Ltd. Refrigerator and method for displaying user interface on refrigerator, user terminal, and method for performing function in user terminal
CN112005268B (zh) * 2018-04-13 2024-03-19 三星电子株式会社 冰箱和在冰箱上显示用户界面的方法、用户终端和在用户终端中执行功能的方法
CN110163836A (zh) * 2018-11-14 2019-08-23 宁波大学 基于深度学习用于高空巡检下的挖掘机检测方法
CN110163836B (zh) * 2018-11-14 2021-04-06 宁波大学 基于深度学习用于高空巡检下的挖掘机检测方法
CN111374521B (zh) * 2018-12-28 2022-10-25 浙江苏泊尔家电制造有限公司 烹饪器具和烹饪方法
CN111374521A (zh) * 2018-12-28 2020-07-07 浙江苏泊尔家电制造有限公司 烹饪器具和烹饪方法
CN111008303A (zh) * 2019-11-29 2020-04-14 珠海优特智厨科技有限公司 菜谱的录制方法和装置、存储介质、计算设备
CN113218880B (zh) * 2020-01-21 2023-05-16 青岛海尔电冰箱有限公司 冰箱的食材检测方法、冰箱及存储介质
CN113218880A (zh) * 2020-01-21 2021-08-06 青岛海尔电冰箱有限公司 冰箱的食材检测方法、冰箱及存储介质
CN112383454B (zh) * 2020-10-30 2022-06-03 添可智能科技有限公司 数据处理和执行方法及设备
CN112383454A (zh) * 2020-10-30 2021-02-19 添可智能科技有限公司 数据处理和执行方法及设备
CN112536977A (zh) * 2020-11-13 2021-03-23 四川长虹智能制造技术有限公司 一种注塑原料供料方法、终端设备及供料系统
US20220171933A1 (en) * 2020-11-30 2022-06-02 Kpn Innovations, Llc. Methods and systems for personal recipe generation
CN112614564A (zh) * 2020-12-24 2021-04-06 武汉理工大学 一种基于多源异构数据融合的智能化营养膳食推荐方法
WO2023087810A1 (zh) * 2021-11-22 2023-05-25 聚好看科技股份有限公司 一种智能烹饪设备、智能保鲜设备及控制方法
WO2023202221A1 (zh) * 2022-04-22 2023-10-26 海信视像科技股份有限公司 一种电子设备及数据处理方法

Similar Documents

Publication Publication Date Title
WO2017135742A1 (ko) 식재료 관리 시스템 및 식재료 관리 방법, 식재료를 이용한 레시피 제공 방법 및 이를 실행하는 서버, 식재료를 이용한 창작 레시피 생성방법
Majumder et al. Generating personalized recipes from historical user preferences
WO2017176100A1 (en) Method and device for translating object information and acquiring derivative information
WO2017209564A1 (ko) 앱 리스트 제공 방법 및 그 장치
US8419434B2 (en) Interactive recipe preparation using interactive cooking device to communicate with kitchen appliances
WO2012091360A2 (ko) 유저 맞춤형 컨텐츠 제공 방법 및 시스템
US20210043108A1 (en) Recipe conversion system
US20090259687A1 (en) Interactive Recipe Preparation Using Instructive Device with Integrated Actuators to Provide Tactile Feedback
WO2017078288A1 (ko) 사용자 프로파일을 생성하기 위한 전자 장치 및 방법
US20090258332A1 (en) Interactive recipe preparation using instructive device with integrated actuators to provide tactile feedback
WO2017082525A1 (ko) 식습관 정보를 제공하는 방법 및 이를 위한 웨어러블 장치
US9797873B1 (en) Prediction of recipe preparation time
CA2801298C (en) Device and method for selecting instances in expanded set containing given seed string
WO2020222623A9 (ko) 기획 판매를 위한 컨텐츠를 자동적으로 구축하는 시스템 및 그 방법
EP3526763A1 (en) Electronic device and method for providing guide information based on genetic information
EP3775733A1 (en) Refrigerator and method of controlling thereof
WO2018084581A1 (en) Method and apparatus for filtering a plurality of messages
EP3818492A1 (en) Communication via simulated user
AU2018310111B2 (en) Electronic device and method for providing search result thereof
WO2020222561A1 (ko) 음식 측정 방법, 장치, 및 프로그램
US20190325501A1 (en) Meal-Kit Recommendation Engine
KR20140010679A (ko) 추천 시스템 및 추천 방법
WO2024005330A1 (ko) 인공지능 기반 업무 몰입 상태 판단 및 관리 서비스 제공 방법, 장치 및 시스템
EP3523932A1 (en) Method and apparatus for filtering a plurality of messages
WO2012121447A1 (ko) 상세정보가 포함된 이미지 파일의 형성 장치 및 방법과 그것을 이용한 운영 시스템 및 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17747787

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 21.11.2018)

122 Ep: pct application non-entry in european phase

Ref document number: 17747787

Country of ref document: EP

Kind code of ref document: A1