Nesne tespiti ile yemek tarifi tavsiye sistemi
Recipe recommendation system via object detection
Yazar: YASİN KÖKER
Danışman: PROF. DR. SEVİNÇ GÜLSEÇEN ; DR. MURAT GEZER
İstanbul Üniversitesi / Fen Bilimleri Enstitüsü / Enformatik Ana Bilim Dalı / Enformatik Bilim Dalı
Derece: Yüksek Lisans, 2020
Konu: Bilgisayar Mühendisliği Bilimleri-Bilgisayar ve Kontrol = Computer Engineering and Computer Science and Control

Özet:
Yemek yapmak, hayatımızdaki en önemli günlük faaliyetlerden bir tanesidir. Ancak, çalışanlar ve öğrenciler gibi zamanı kısıtlı ve mutfakta az zaman geçiren kişiler için ne yemek yapacaklarına ve bunu yaparken eldekilerle neler yapabileceklerine karar vermeleri uzun zaman almaktadır. Karar verilse dahi, eldeki malzemelerle bir şeyler yapılmaya kalkışıldığında malzemeler arası uyumu yakalayabilmek kolay bir iş değildir. Bu sebepten ötürü internet ortamında varolan yemek sitelerinin sağladığı yemek tariflerine gözatılmakta fakat o yemek sitelerinde tüm malzemelere yer verildiği için kişileri ek malzeme almaya yönlendirmektedir. Bu çalışma ise bu sorunu, eldeki malzemelere göre yemek tarifi araması yaptırarak ortadan kaldırmaktadır. 
Bu tez çalışmasında, kullanıcıdan alınan girdi görüntüsü; öncelikle görüntü ön işleme adımlarındaki işlemlerden geçirilmektedir. Bu işlemler sonucunda çıktı olarak birden fazla kontur saptanmakta ve bu konturlar ayrı birer görüntü olarak kaydedilmektedir. Bu kaydedilen görüntüler; derin evrişimsel sinir ağı modeline girdi olarak verilmekte ve tanımlama işlemi yapılmaktadır. Tanımlama aşamasında; transfer öğrenmesi (transfer learning) ile ImageNet veri kümesinde eğitilmiş derin evrişimsel sinir ağı mimarilerinden Xception seçilmiştir. Xception mimarisi üzerine ince-ayar (fine tuning) yapılarak özelleştirilmiştir. 
Bu oluşturulan yeni ağ modelinde; doğruluk (accuracy); 0.9452, kayıp (loss); 0.4930, geçerleme kaybı (validation loss); 0.4883, geçerleme doğruluğu (validation accuracy); 0.9362'lik bir başarım yakalanmıştır. 
Bu ağdan çıkan her bir görüntüye ait olan tanımlama etiketi bir listeye kaydedilmektedir. Tanımlama işlemi tamamlandığında bu listedeki değerler veritabanına sorgu olarak gönderilmektedir. Sorgu sonucu olarak da o listedeki malzemelerle hangi yemek tariflerinin yapılabileceğine dair bir yemek tarifi öneri sonucu dönmektedir.
Sonuç olarak, kişilerin sadece mutfaklarında bulunan malzemelere göre arama yapabilecek olmaları yemek yapacak olan kişinin dışarı çıkmasını, o an için alışverişe gitmesini engelleyecektir. Böylelikle zamandan ve maliyetten tasarrufta bulunabileceklerdir.

Abstract:
Cooking is one of the most important daily activities in our lives. However, it takes a long time for people, such as employees and students, to decide what to cook and what they can do with what they have in their hand for those with limited time and little experience in the kitchen. Even if a decision is made, it is not an easy task to achieve harmony between ingredients when trying to do something with the ingredients at hand. For this reason, the recipes provided by the food sites available on the internet are browsed by the people, but since all the ingredients are included in those food sites, they direct people to buy additional ingredients. This study eliminates this problem by searching recipes according to the ingredients at hand.
In this thesis, the input image taken from the user; firstly the image is processed through the image pre-processing steps. As a result of these operations, more than one contour is detected as output and these contours are saved as separate images. These saved images are given as an input to the deep convolutional neural network model and recognition process is started. At the recognition stage; Xception was selected from deep convolutional neural network architectures trained in ImageNet dataset with transfer learning. It is customized by fine tuning on the Xception architecture. In this new network model created: accuracy; 0.9452, loss; 0.4930, validation loss; 0.4883, validation accuracy; 0.9362 has been achieved.
The recognition tag of each image that comes out of this network is saved in a list. When the recognition process is completed, the values in this list are sent to the database as queries. As a result of the query, a recipe suggests which recipes can be made with the ingredients in that list.
As a result, the fact that people can search only according to the ingredients in their kitchens will prevent the person who will cook to go out and go shopping for the moment. Thus, they will be able to save time and cost.