KiMa Vision

Are you a newbie in the kitchen? How often do you find yourself wanting to cook something and don’t know where to start? Kitchen-Mate will interact with your kitchen in order to give you the best experience while you’re cooking your favourite dish or a dinner for your friends. Our intelligent environment will help you decide the best recipe according to the ingredients at your disposal. It will show you how to cut, season or prepare the ingredients. It will give you the proper dose of every ingredient, guiding you in the choice of the right pans and in the right cooking time. Knowing at any moment what is happening in the environment, it will be able to understand if you are proceeding in the correct way and it will also help you controlling the stoves, so that there will be no risk of burning or overcooking anything.

KiMa Features

Intelligent: Capacity of understanding what you are doing and check if you are doing it correctly

Responsive: Lots of ingredients and don't know what to cook? I'll show you different recipe of various difficulty

Ubiquitus: Something is burining?!?! No problem I just turn of the gas

Adaptive: Don't know where to start in a kitchen full of knifes, forks and other strange tools? I'll tell you the best choice

AmI main steps

How our smart assistant will help you.

Sensing

Tell him how many and which ingredients you have, in a few seconds you will have a list of possible dishes to cook with the relative difficulty.

Reasoning

It will check every step you take and tell you if you are doing it correctly.

Acting

It will show you videos to help you understand what you have to do, and it also shows you which kitchen tool is best for your task.

Interacting

It is able to understand basic commands you give him, e.g. 'decrese the stove power', 'switch on the fumes hood', 'turn on the oven'. It also able to understand if something is burning, it will turn un the fumes hood and notify you on what is happening.

Sensing

Tell him how many and which ingredients you have, in a few seconds you will have a list of possible dishes to cook with the relative difficulty.

Reasoning

It will check every step you take and tell you if you are doing it correctly.

Acting

It will show you videos to help you understand what you have to do, and it also shows you which kitchen tool is best for your task.

Interacting

It is able to understand basic commands you give him, e.g. 'decrese the stove power', 'switch on the fumes hood', 'turn on the oven'. It also able to understand if something is burning, it will turn un the fumes hood and notify you on what is happening.

Project Features

Purpose and Scope

Kitchen-Mate was thought to be a virtual cooking assistant that helps to simplify and improve the cooking experience of a person. Suppose you want to cook something good for a special dinner with friends, but you just have a limited number of ingredients and you don't know what meal you could cook with them. Ki-Ma is the best help you can get. By listing the available ingredients through a touch screen (ie. Tablet, Smartphone), it'll search through its database and it'll come up with a few recipes, with the relative information about them (time needed for cooking, level of difficulty, degree of appreciation, …). Choose the one you prefer and it'll then show you a video of how to prepare it in the best way. Through a set of LEDs, it'll illuminate the tools to use (particular knife, fork, spoon, ...) and with the use of a video camera it'll monitor your movements, telling you whether you're doing something wrong and how to do it instead, for example it can tell you if you're cutting a carrot in the right way. Sensors will be used by KiMa to help checking the stove and pot for you, telling you when something is burning or boiling. Of course, you can interact with the Kitchen-Mate. That is obtained either by voice or by typing on the display. It is indeed loaded with a voice analyzer. It is able to execute some commands for you, from stopping a video to decreasing a flame, turn on/off the oven or lights to set an alarm.

System Architecture

The System is intended to have a direct interaction with the user, thanks to a Touchscreen display, connected to the KiMa server application. This display will show the list of recipes, after the user inserted the ingredients he has. KiMa, after the selection, will run the video of the recipe. The server application, running on a Raspberry, enables a system of LEDs on the kitchen tool's containers, in order to show the best to use in the task showed in the video. Meanwhile a humidity and pollution sensor will be employed to check the kitchen stove, to warn the user in case of burning or boiling situations; in both cases a smart plug, that powers the stove, will be turned off. This two devices will send signal to a Raspberry board which will handle the information and communicate to the user in case of need.


Hardware

- Computational nodes: Touchscreen display with the front-end application running, and a Raspberry board, running the server-side application, connected to the sensors and wireless to the front-end application
- Devices: humidity sensor for the boiling situation, connected to the board; LEDs for the kitchen tools, are lighted up together with the video; smart plug to control the power on the stove, connected wireless to the board
- User interface devices: Touchscreen, intended to be in the main cooking position; speakers nearby in the kitchen for the warnings; microphone near the Touchscreen for the vocal commands (can use also speaker and microphone of the touchscreen device)


Software

- Touchscreen application: is the front-end part of the system, it handles the query of the user that have to be sent to the database. It also shows the video of the recipe
- Raspberry running the Back-end application: where we run the database of the KiMa server app and we handle the received information
- Raspberry program: algorithm to handle the informations of the sensor and sends warning to the front-end app and turns of LEDs and the smart plug if needed

Selected Components:


Any question?

Contact us!

Group Components:

Andrea Benedetto

ID(matricola): s225976. email: s225976@studenti.polito.it. AndreaBenedetto Role: Software Designer.


Andrea Simone Foderaro

ID(matricola): s223523. email: s2235236@studenti.polito.it. FoxAndre96 Role: Software programmer.


Giacomo Cerfeda

ID(matricola): s229621. email: s229621@studenti.polito.it. giacomocerfeda Role: Hardware Designer.

Video



Open Issues:

  • Definition database: recipes, user inserted ingredients and ingredients of the recipes tables
  • Back-end application (endling of the database): definition of the basic functions to handle the queries to the database
  • Develop the server-side using Flask; use also REST API components
  • Javascript inclusion
  • Video displaying for the task to be done, in the recipe.html
  • Connection Raspberry to humidity sensor, done with AdafrutiDHT library
  • Connection Raspberry to smoke sensor, done by testing the sensor
  • Connection display to the set of LEDs
  • Implementing the web design using css and bootstrap
  • Use the Raspberry to host the server
  • Test of signal stopping the video
  • Integration of all the components, i.e. web app and signals
  • Program Smart Plug
  • Include Smart Plug
  • Design a voice command recognizer
  • Design a video acting recognizer (to recognize what the user is doing, i.e. cutting or seosoning or...)