Ffinal

Download as pdf or txt
Download as pdf or txt
You are on page 1of 74

PROJECT PHASE 2 REPORT

ON
TAILORED RECIPES AND CULINARY COMMUNITY

Submitted by
ALENTA JOSEPH (SJC20CS018)
JUVAL JAMES (SJC20CS075)
VISHNU AV (LSJC20CS126)
to
the APJ Abdul Kalam Technological University
in partial fulfillment of the requirements for the award of the degree
of
Bachelor of Technology
in
Computer Science and Engineering

Department of Computer Science and Engineering


St. Joseph’s College of Engineering and Technology, Palai
May :: 2024
Declaration

We undersigned hereby declare that the project report on “Tailored Recipes And
Culinary Community”, submitted for partial fulfillment of the requirements for the
award of degree of Bachelor of Technology of the APJ Abdul Kalam Technological Uni-
versity, Kerala, is a bonafide work done by us under supervision of Prof. Syamamol
T .This submission represents our ideas in our own words and where ideas or words of
others have been included, We have adequately and accurately cited and referenced the
original sources. We also declare that We have adhered to ethics of academic honesty and
integrity and have not misrepresented or fabricated any data or idea or fact or source in
my submission. We understand that any violation of the above will be a cause for disci-
plinary action by the institute and/or the University and can also evoke penal action from
the sources which have thus not been properly cited or from whom proper permission has
not been obtained. This report has not been previously formed the basis for the award of
any degree, diploma or similar title of any other University.

Name and Signature of Student


ALENTA JOSEPH
JUVAL JAMES
VISHNU A V

Place:Choondacherry
Date:29-04-2024
ST. JOSEPH’S COLLEGE OF ENGINEERING AND TECHNOLOGY, PALAI

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

CERTIFICATE

This is to certify that the report entitled ”TAILORED RECIPES AND CULI-
NARY COMMUNITY” submitted by ALENTA JOSEPH(SJC20CS013), JU-
VAL JAMES(SJC20CS075), VISHNU A V (LSJC20CS126), to the APJ Abdul
Kalam Technological University in partial fulfillment of the requirements for the award of
the Degree of Bachelor of Technology in Computer Science and Engineering is a bonafide
record of the project work carried out by them under my guidance and supervision.

Project Guide Project Coordinator


Prof. Syamamol T Prof. Kishore Sebastian
Assistant Professor Assistant Professor
Department of CSE Department of CSE

. Head of Department
. Dr. Joby P P
Place : Choondacherry Professor & Head
Date : 29-04-2024 Department of CSE
Acknowlegment

The success and final outcome of this project phase 2 required a lot of guidance and
assistance from many people, and we are extremely privileged to have received their
support throughout the completion of this project. All that we have accomplished is only
possible due to their supervision and assistance, and we are sincerely grateful to them.
We would like to express our respect and gratitude to the management of St. Joseph’s
College of Engineering and Technology for providing us with the opportunity and platform
to work on this project.
A special word of thanks goes to our beloved Principal, Dr. V. P. Devassia, for providing
invaluable support and necessary facilities to carry out this project.
We are extremely indebted to Dr. Joby P.P, Professor & Head of the Department
of Computer Science and Engineering, for his valuable suggestions and encouragement
throughout the course of this project work.
We would also like to express our gratitude to our project coordinator, Prof. Kishore
Sebastian, Assistant Professor in the Department of Computer Science and Engineering,
for his valuable suggestions and guidelines during the entire duration of this project. We
truly appreciate his contributions and technical support in preparing this report.
Our heartfelt thanks go to our project guide, Prof. Syamamol T, Assistant Professor
in the Department of Computer Science and Engineering, displayed a keen interest in this
project and provided guidance and all the necessary information for developing a robust
system.
We are thankful and fortunate enough to have received constant encouragement, sup-
port, and guidance from all the staff members of the Department of Computer Science
and Engineering. Their assistance played a crucial role in the successful completion of
our project phase 2 work.
Abstract

The envisioned culinary innovation is a sophisticated fusion of machine learning and com-
puter vision technologies, aimed at reshaping the cooking experience. At its core is a
commitment to user satisfaction, realized through a personalized approach that tailors
recipes to individual preferences and dietary restrictions. The system employs the YOLO
(You Only Look Once) algorithm for image recognition, simplifying the user input pro-
cess and making recipe selection intuitive and efficient.A pivotal aspect of the project is
its dedication to addressing nutrition concerns, particularly in the context of prevalent
health issues like obesity. By incorporating algorithms to quantify calorie content, the
system empowers users with crucial nutritional information, fostering informed decision-
making about their dietary choices.Beyond technological prowess, the project embraces
a holistic view of user engagement. The iterative refinement process, driven by user in-
teractions, ensures that the system evolves organically, adapting to changing culinary
preferences and staying attuned to user needs. This dynamic responsiveness positions
the application as not merely a static tool but as a culinary companion that grows and
evolves alongside its users.The transformative nature of the project extends to its ambi-
tion to redefine how individuals experience cooking. Through the seamless integration of
cutting-edge algorithms, the system promises more than just a repository of recipes; it
aspires to be an interactive and dynamic partner in the kitchen. This integration isn’t
just about technological sophistication; it’s about crafting a user experience that is both
innovative and seamlessly intuitive.In essence, this culinary innovation is positioned to be
a comprehensive solution that marries technology with user-centric design. It doesn’t just
provide recipes; it offers a personalized, dynamic, and health-conscious culinary journey,
reshaping the way users approach and enjoy the art of cooking.
Contents vi

Contents

Declaration ii

Acknowledgment iv

Abstract v

1 Introduction 1
1.1 Problem Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

2 Literature Review 3

3 Methodology 9
3.1 Existing System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
3.1.1 Yummly: . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.1.2 Spoonacular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.1.3 BigOven . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
3.2 Proposed System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.3 Module Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.3.1 Admin Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.3.2 User Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

4 System Requirements 15
4.1 Functional/Non-Functional Requirements . . . . . . . . . . . . . . . . . . . 15
4.1.1 Functional Requirements . . . . . . . . . . . . . . . . . . . . . . . . 15
4.1.2 Non-Functional Requirements . . . . . . . . . . . . . . . . . . . . . 16
4.2 Software and Hardware Specifications . . . . . . . . . . . . . . . . . . . . . 17
Contents vii

4.3 Hardware Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17


4.4 Software Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

5 System Design 20
5.1 Use Case Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
5.2 ER Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
5.3 Activity Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
5.4 Sequence Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

6 System Implementation 28
6.1 Technologies Used . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
6.1.1 HTML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
6.1.2 Javascript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
6.1.3 CSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
6.1.4 DjangoFramework . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
6.1.5 Visual Studio Code . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
6.1.6 SQLite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
6.2 System Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
6.3 Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

7 Experimental Results And Evaluation 36


7.1 Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
7.2 Home Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
7.3 Profile Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
7.4 Image Recognition Interface . . . . . . . . . . . . . . . . . . . . . . . . . . 41
7.5 Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
7.5.1 Graph Of Accuracy Of The First Test . . . . . . . . . . . . . . . . 43
7.5.2 Graph Of Losses Of The First Test . . . . . . . . . . . . . . . . . . 44
7.5.3 Graph Of Accuracy Of The Test With 4 Epochs . . . . . . . . . . . 45
7.5.4 Graph Of Losses Of The Test With 4 Epochs . . . . . . . . . . . . 45

8 Conclusion 47
Contents viii

References 48

ANNEXURE A A

ANNEXURE B A
List of Figures ix

List of Figures

5.1 Use case diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21


5.2 Entity relationship diagram . . . . . . . . . . . . . . . . . . . . . . . . . . 23
5.3 Activity diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
5.4 Sequence diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

6.1 Architecture Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32


6.2 System’s Flowchart . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
6.3 CNN Model Architecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

7.1 Sign up and Sign in . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37


7.2 Home page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
7.3 Profile page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
7.4 Ingredient identification . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
7.5 Graph of the accuracy of the first test . . . . . . . . . . . . . . . . . . . . . 43
7.6 Graph of the losses of the first test . . . . . . . . . . . . . . . . . . . . . . 44
7.7 Graph of the accuracy of the test with 4 epochs . . . . . . . . . . . . . . . 45
7.8 Graph of the losses of the test with 4 epochs . . . . . . . . . . . . . . . . . 46
Chapter 1. Introduction 1

Chapter 1

Introduction

1.1 Problem Statement


The world of cooking and recipe sharing has grown exponentially, with an abundance
of platforms, websites, and social media accounts dedicated to food and culinary arts.
However, this growth has also led to challenges such as fragmented recipe sharing, lack
of personalization, difficulties in identifying ingredients, and limited social engagement
within the culinary community. The Recipe in Social Media platform seeks to address
these challenges by creating a centralized and interactive environment that brings together
cooking enthusiasts, professional chefs, and food lovers from around the globe.
Centralized Recipe Sharing : One of the primary challenges in the culinary community
is the fragmented nature of recipe sharing. Recipes are scattered across various platforms,
blogs, social media accounts, and websites, making it difficult for users to find a consistent
source of culinary inspiration. The Recipe in Social Media platform solves this problem
by aggregating recipes from multiple sources into a single, easy-to-navigate space. Users
can search for recipes based on ingredients, cuisine types, cooking methods, or dietary
preferences, allowing them to discover new dishes without the hassle of navigating through
numerous platforms.
To ensure a comprehensive collection of recipes, the platform collaborates with pop-
ular food bloggers, chefs, and culinary institutions. This not only brings diversity to the
recipe selection but also ensures that users have access to high-quality, tried-and-tested
recipes. Additionally, the platform encourages user-generated content, allowing individu-

Department of Computer Science and Engineering, SJCET Palai


1.1. Problem Statement 2

als to share their own recipes and cooking experiences, further enriching the community
with unique and personal culinary stories.
Personalized Culinary Experiences : While many existing platforms offer a broad range
of recipes, they often lack personalization, providing generic content that may not cater
to individual needs or preferences. Recipe in Social Media takes personalization to the
next level by allowing users to create detailed profiles that reflect their unique tastes and
requirements. Users can specify dietary preferences, such as vegan, vegetarian, or gluten-
free; indicate food allergies or intolerances; and set their cooking skill level, ranging from
beginner to expert.
This personalization enables the platform to recommend recipes tailored to each user’s
profile. For instance, a vegan user will receive suggestions for plant-based recipes, while
someone with a gluten intolerance will see recipes that avoid wheat and related ingredi-
ents. The platform’s personalized approach ensures that users receive relevant content,
enhancing their cooking experience and encouraging them to explore new dishes within
their comfort zone.
Advanced Ingredient Identification : Identifying unfamiliar ingredients can be a daunt-
ing task for many home cooks, especially when trying new recipes or exploring different
cuisines. Recipe in Social Media addresses this challenge with advanced image recogni-
tion technology. Users can take a photo of an ingredient, and the platform will instantly
identify it, providing additional information such as nutritional content, storage recom-
mendations, and related recipes.
Building a Culinary Community : The culinary world thrives on social interaction,
collaboration, and shared experiences. However, many existing platforms lack dedicated
spaces for meaningful engagement among users. Recipe in Social Media creates a vi-
brant and interactive community where users can connect with like-minded individuals,
participate in cooking challenges, and share tips and tricks.
The platform’s social features include forums for discussion, virtual cooking classes,
and the ability to follow favorite chefs or users. Cooking challenges encourage users to
experiment with new recipes and share their results, fostering a sense of community and
friendly competition.

Departmant of Computer Science and Engineering,SJCET Palai


Chapter 2. Literature Review 3

Chapter 2

Literature Review

1. Recipe recommendation using ingredient networks


This research paper[1] explores culinary insights through meticulous ingredient ex-
traction methods.The methodology involves meticulous ingredient extraction using
maximal matching and regular expression methods. The resulting complement net-
work reveals two major communities—savory and sweet—with insights into common
ingredient pairings. . Experiments show an impressive 79.2 percent accuracy in pre-
dicting recipe ratings, with 84 percent prediction power from ingredient networks.
Future work aims to refine methods, enhance network analysis, and consider addi-
tional factors for improved recommendations in response to changing food trends
and user demographics. Overall, the study offers significant contributions to under-
standing online recipes.

2. Learning Structural Representations for Recipe Generation and Food Re-


trieval
The paper[2] introduces advancements in computer-assisted cooking, focusing on
recipe creation and food identification in images. The proposed methodology in-
cludes an Image-to-Tree process, transforming food images into hierarchical struc-
tures, recipe creation through a computer program learning from images and ingredi-
ents, and food matching, training a computer to associate ingredients and steps with
food pictures. Experiments emphasize challenges in describing lengthy recipes, with
a focus on improving matching accuracy using specialized models like ON-LSTM

Department of Computer Science and Engineering, SJCET Palai


Chapter 2. Literature Review 4

and transformers for enhanced performance.

3. Recipe Recommendation by Ingredients Detection


The paper[3] suggests to boast key features such as YOLOv5-based ingredient de-
tection, a hybrid model for personalized recipe recommendations, multilingual sup-
port for a diverse culinary experience, and voice assistance through NLP. The sys-
tem’s modules include user registration, detection, recommendation, and a high-
performing YOLOv5 model integrated with Firebase for real-time database storage.
The user interface is designed intuitively with swipe cards, detailed recipe pages,
and user profiles for customization. The system currently achieves an 87 percent
accuracy with YOLOv5 and aims to empower users, with future plans focusing on
expanding datasets and enhancing language support for continual advancement.

4. Personalized Recipe Recommendation System using Hybrid Approach


The journal[4] addresses the growing demand for advanced recipe recommendation
systems online. It introduces a hybrid model that combines content and collabora-
tive filtering to enhance accuracy, addressing issues in existing systems related to
limited ratings and biased popularity. Two hybrid approaches are proposed: one
utilizing KNN collaborative filtering and the other employing Stochastic Gradient
Descent. Evaluation based on RMSE demonstrates that the hybrid models out-
perform conventional ones, with Hybrid Approach-2 achieving a score of 0.6365.
The implications include significant advancements in culinary recommendation sys-
tems, with hybrid models offering precise and personalized recipe recommendations
tailored to diverse user preferences.

5. Generating Personalized Recipes from Historical User Preferences


This paper introduces a personalized recipe generation model addressing the needs of
users with incomplete ingredient knowledge. Leveraging an encoder-decoder frame-
work with attention mechanisms, the model incorporates user preferences from his-
torical interactions with recipes. Inputting recipe name, partial ingredient list, and
calorie level, the model generates personalized recipe instructions. Two schemes for
modeling user preferences are explored, utilizing a dataset of 180K+ recipes and
700K+ user reviews from Food.com. In experiments, the personalized models out-
Departmant of Computer Science and Engineering,SJCET Palai
Chapter 2. Literature Review 5

perform baseline ones in BPE perplexity, achieving better user matching accuracy
and mean reciprocal rank. These models also show improvements in recipe-level
coherence and local coherence, gaining preference in human evaluations.632

6. Rice Quality Analysis Based On Physical Attributes Using Image Pro-


cessing
This review paper[6] explores the application of image processing and computer
vision for rice quality analysis, emphasizing the importance of rice in human con-
sumption and the food market. It discusses key components of image processing,
the challenges in rice quality analysis (specifically ”rice integrity”), and proposes
alternative methods using image processing to replace traditional human sensory
panels. The problem definition underscores the inconsistency and time-consuming
nature of traditional methods, advocating for more efficient image processing tech-
niques. The paper also highlights the significance of quality analysis in meeting
market demands and critiques conventional methods for their slowness, costliness,
and susceptibility to errors in grain shape and size measurements.

7. Food Recipe Recommendation Based on Ingredients Detection Using


Deep Learning
This research paper[7] addresses the challenges of food ingredient recognition and
recipe recommendation, especially for beginners. Traditional image processing meth-
ods are limited, prompting the use of machine learning and deep learning for more
accurate solutions. The methodology involves compiling a custom dataset, training
a Convolutional Neural Network (CNN) for ingredient recognition, and employing
machine learning for recipe recommendations. Impressive results showcase a 94
percent accuracy in recognizing food ingredients, with the recipe recommendation
algorithm providing tailored suggestions. The study concludes by highlighting the
innovative potential of machine learning and deep learning techniques in enhancing
the culinary experience for both novice and expert cooks.

8. Recipe Recommendation Based on Ingredients using Machine Learning


This research[8] addresses common challenges in daily meal planning, especially for
children, by introducing a comprehensive solution. The methodology involves a
Departmant of Computer Science and Engineering,SJCET Palai
Chapter 2. Literature Review 6

sophisticated ingredient recommendation system based on co-occurrence in recipe


databases, organized using a cooking ontology. Object detection with OpenCV is
employed for efficient kitchen ingredient management through feature extraction,
grayscale, and histogram analysis. Results showcase the system’s ability to assist
users in finding suitable ingredients, enhance relevance through cooking ontology,
and streamline kitchen tasks with OpenCV. The research concludes by emphasizing
the goal of making cooking a more enjoyable and hassle-free experience by combining
technology and culinary expertise.

9. Multimodal Recipe Recommendation System Using Deep Learning and


Rule-Based Approach
This research[9] focuses on the need for intelligent recommendation engines in the
digital age, particularly for culinary exploration. The methodology involves as-
sembling a comprehensive dataset of recipes in textual and image formats. The
recommendation system employs a combination of deep learning techniques and a
rule-based approach to deliver accurate and tailored recipe suggestions. Users can
seamlessly explore information through both text and image-based searches. The
results demonstrate the system’s effectiveness in simplifying culinary exploration
and providing relevant recommendations. The study concludes by emphasizing the
crucial role of recommendation engines in serving user needs and showcasing how the
integration of deep learning and rule-based techniques enhances the user experience
in recipe recommendations.

10. An effective explainable food recommendation using deep image cluster-


ing and community detection
This paper[10] introduces an Explainable Food Recommendation system that com-
bines deep learning and image clustering to enhance transparency and interpretabil-
ity in dietary recommendations. The methodology involves utilizing deep learning
for image clustering, introducing a novel similarity score based on user commu-
nity preferences, and incorporating rule-based explainability. Experiments on a
collected dataset demonstrate significant improvements in recommendation quality,
with increased precision, recall, F1 score, and NDCG. The rule-based explainability

Departmant of Computer Science and Engineering,SJCET Palai


Chapter 2. Literature Review 7

feature further enhances transparency in recommendations. The research under-


scores the importance of visual content in dietary communication and positions the
Explainable Food Recommendation system as a promising approach for accurate,
transparent, and interpretable food recommendations, positively influencing users’
dietary choices.

11. Fine-Grained Food Classification Methods on the UEC FOOD-100 Database


The paper[11], delves into fine-grained food classification methods using the UEC
FOOD-100 Database. The focus is likely on detailed categorization of food items,
suggesting a nuanced approach to classifying different types of foods.Deep Convo-
lutional Neural Network Models are used in here. Given the IEEE membership of
one of the authors, it indicates a potential alignment with electrical engineering and
computer science. A more comprehensive understanding would require a detailed
review of the paper’s content.

12. DeepNOVA: A Deep Learning NOVA Classifier for Food Images Shady
The paper[12], introduces a deep learning classifier named Deep NOVA designed
for the classification of food images. The use of ”NOVA” in the classifier’s name
suggests a specific classification approach or framework.NOVA Classification Model
is the protocol used in here. To gain a comprehensive understanding, a detailed
review of the paper’s content would be necessary.

13. A Cooking Recommender for Ingredients and Recipes Using Set Trans-
former
The paper[13] outlines a cooking recommender system utilizing Set Transformer, a
protocol specified as Convolutional Neural Networks (CNNs) The advantage high-
lighted is the system’s ability to offer unparalleled visibility and tracking capabil-
ities. However, a notable disadvantage is mentioned: the system is constrained
by a limited dataset. For a comprehensive understanding of the methodology and
implications, a thorough review of the content is necessary.

14. Juice Recipe Recommendation System Using Machine Learning in MEC


Environment.

Departmant of Computer Science and Engineering,SJCET Palai


Chapter 2. Literature Review 8

The document[14] introduces a ”Juice Recipe Recommendation System” that em-


ploys Machine Learning within a Mobile Edge Computing (MEC) environment. The
proposed model for this system is Convolutional Neural Networks (CNNs). The ad-
vantage highlighted is the system’s ability to provide personalized recommendations,
leveraging CNNs. However, a noted disadvantage is associated with data collection,
suggesting challenges or limitations in gathering the necessary information for the
system. The document is dated 10 August 2020. To gain deeper insights into the
proposed model, its performance, and the specific challenges with data collection, a
thorough examination of the content is recommended.

15. Food State Recognition Using Deep Learning


The journal[15] discusses ”Food State Recognition” utilizing Deep Learning, au-
thored by Saeed S. Alahmari and dated 12 December 2022. The employed model
is specified as a ”cascaded multi-head deep neural network.” The advantage men-
tioned is related to the model’s capability for multi-task learning. However, a noted
disadvantage points to the challenges associated with handling variability in the con-
text of multi-task learning. For a comprehensive understanding of the methodology,
results, and implications, a detailed review of the document is recommended.

Departmant of Computer Science and Engineering,SJCET Palai


Chapter 3. Methodology 9

Chapter 3

Methodology

3.1 Existing System

In the dynamic realm of digital culinary exploration, platforms like Yummly, Spoonacular,
and BigOven are reshaping how individuals engage with recipes. These innovators seam-
lessly blend advanced algorithms with user-centric features, offering a personalized and
immersive experience for culinary enthusiasts. Beyond serving as mere digital cookbooks,
these platforms function as interactive communities where users actively contribute, share
insights, and connect with like-minded individuals. Registration processes act as gateways
to vibrant spaces where the exchange of culinary creations takes center stage, fostering a
sense of community and collaboration. In this digital gastronomic universe, technology
plays a pivotal role in curating personalized recipe suggestions, making each user’s culi-
nary journey unique. The platforms serve as catalysts for creativity, where users actively
participate in shaping content and contributing to a dynamic and interactive culinary
community. As these platforms continue to evolve and adapt, they stand at the forefront
of a culinary revolution, guiding and inspiring individuals on their distinctive journeys
through the art of cooking. Yummly, Spoonacular, and BigOven, among others, represent
the vanguard of this transformative culinary landscape.

Department of Computer Science and Engineering, SJCET Palai


3.1. Existing System 10

3.1.1 Yummly:

Yummly is a popular recipe discovery and food recommendation platform. It uses a com-
bination of user preferences, dietary restrictions, and ingredient availability to recommend
personalized recipes. Yummly employs a collaborative filtering approach, analyzing user
behavior and preferences to suggest recipes that align with individual tastes. Users can
also input specific ingredients they have, and the platform suggests recipes based on those
ingredients.[2]

3.1.2 Spoonacular

Spoonacular is an API that offers various food-related functionalities, including recipe


recommendations. It utilizes natural language processing to understand user queries and
preferences. Users can input ingredients they have, and Spoonacular generates recipe sug-
gestions. The API also provides nutritional information for recipes. It uses a combination
of content-based and knowledge-based filtering to offer personalized recommendations.[8]

3.1.3 BigOven

BigOven is a recipe app that combines a large recipe database with features for meal
planning and grocery list creation. Users can input available ingredients, and the app
suggests recipes based on what they have. The platform also integrates a social com-
ponent, allowing users to share recipes and recommendations with each other. BigOven
leverages a combination of collaborative filtering and content-based approaches.

Common Features Across Solutions:


1.User Profiles: Many of these platforms allow users to create profiles where they can
input preferences, dietary restrictions, and other relevant information to tailor recom-
mendations.
2.Search Functionality: Users can typically search for recipes based on specific criteria,
Departmant of Computer Science and Engineering,SJCET Palai
3.1. Existing System 11

such as cuisine type, cooking time, and ingredients.


3.Collaborative Filtering: Several platforms use collaborative filtering, analyzing user be-
havior and preferences to suggest recipes that align with individual tastes.
4.Content-Based Filtering: Content-based approaches consider the attributes of recipes
and users’ past interactions to make recommendations.
5.Community Engagement: Many platforms incorporate social features, such as user re-
views, ratings, and the ability to share recipes, fostering a sense of community and user
engagement.[4]

However, the existing system faces certain challenges that impact the overall user experi-
ence. These challenges include limited personalization options for users, making it chal-
lenging to tailor the platform to individual preferences. Discovering high-quality recipes
proves to be a difficulty, and the system relies on basic engagement metrics, potentially
limiting the depth of user interactions. While functional, the current system presents
opportunities for improvement in terms of user engagement, personalization, and content
curation.Discovering high-quality recipes emerges as another critical challenge, necessi-
tating a strategic overhaul. Collaborations with culinary experts and the integration of a
comprehensive user rating and review system can be instrumental in ensuring that users
can easily identify and trust recipes of exceptional quality. This not only elevates the
overall content standard but also instills confidence in users, fostering a more positive
and rewarding culinary journey.

As technology continues to evolve, there is room for enhancements to elevate the user
experience, provide more sophisticated personalization features, and implement advanced
content curation mechanisms. By addressing these challenges, the recipe social media
system could evolve into a more dynamic and user-friendly platform, offering a more
enriching culinary community experience for its users.[14]

Departmant of Computer Science and Engineering,SJCET Palai


3.2. Proposed System 12

3.2 Proposed System

The proposed system introduces Recipe in Social Media, a digital platform inspired by
successful social media models, designed to cultivate a community of food enthusiasts and
home cooks. Emphasizing engagement and information, the platform facilitates personal-
ized profiles, recipe sharing, and community connections. Key objectives include address-
ing culinary pain points, such as dispersed recipe-sharing, generic recipes, and ingredient
identification challenges. The proposed system offers functionalities like personalized pro-
files, recipe uploads with images, and community interaction, aided by advanced image
recognition technology. Algorithms provide personalized recipe suggestions based on user
preferences, creating a valuable resource with a vast database of recipes, cooking tips, and
culinary knowledge for cooks of all skill.

3.3 Module Description

3.3.1 Admin Module

The Admin Module provides tools for managing the platform, including user management,
content moderation, and insights into user activity. This module is accessible only to
administrators with appropriate permissions.

1.1 Admin Login - Admins can log in using a secure authentication system. The
system should support multi-factor authentication (MFA) for enhanced security.

1.2 View User Details - Admins can view a list of all registered users, including their
profile information, registration date, and activity level. - An option to search and filter
users based on various criteria (e.g., registration date, number of recipes posted, etc.).

1.3 View Recipes - Admins can view all user-submitted recipes, with detailed infor-
mation such as recipe title, ingredients, steps, user ratings, and date of posting. - Admins

Departmant of Computer Science and Engineering,SJCET Palai


3.3. Module Description 13

can approve, reject, or flag recipes that do not meet community guidelines.

1.4 View Images Uploaded by Users - Admins can access a gallery of all images up-
loaded by users. This can be used to review content for appropriateness and quality. -
Tools to remove images or flag them for further review.

1.5 System Monitoring - This section provides insights into platform activity, including
user engagement metrics, most active users, and most popular recipes. - Admins can view
and manage reported content or users that have been flagged for inappropriate behavior.

3.3.2 User Module

The User Module encompasses all features accessible to registered users, allowing them
to interact with the platform and the community.

2.1 User Registration - Users can register by providing basic information (e.g., name,
email, password). The system should implement email verification for account activation.
- Options for social media login (e.g., Google, Facebook) can be added for convenience.

2.2 User Login - Users can log in securely to access their profile and other app features.
The system should support ”forgot password” functionality for account recovery.

2.3 View and Edit Profile - Users can view and update their profile information,
including profile picture, bio, and personal details. - Option to adjust privacy settings
(e.g., who can view their profile, who can message them, etc.).

2.4 Upload Recipes - Users can upload new recipes, providing details such as recipe
name, ingredients, preparation steps, and cooking time. - Ability to upload images or
videos for each recipe, with AI-based image detection to suggest relevant recipes or cate-
gories.

2.5 Recipe Interaction - Users can interact with recipes by liking, sharing, commenting,

Departmant of Computer Science and Engineering,SJCET Palai


3.3. Module Description 14

and saving them for future reference. - A feature to mention calorie information in recipe
posts, allowing users to understand the nutritional content of recipes.

2.6 Community Interaction - Users can send and receive private messages, allowing
them to communicate with other users directly. - Ability to participate in community
events, cooking challenges, and other interactive elements.

2.7 Notifications - Users receive notifications for activities related to their profile, such
as likes, comments, shares, and new messages. - Notifications for community events,
platform updates, and other relevant information.

These modules, for both the admin and user sides, outline the comprehensive func-
tionality of the ”Recipe in Social Media” web app. The admin module provides tools for
managing and maintaining the platform, while the user module facilitates a rich commu-
nity experience through interaction, sharing, and engagement with culinary content.

Departmant of Computer Science and Engineering,SJCET Palai


Chapter 4. System Requirements 15

Chapter 4

System Requirements

4.1 Functional/Non-Functional Requirements

4.1.1 Functional Requirements

• Authentication: Authentication involves establishing the identity of operators or


information within the developed solutions and systems. This process relies on
various methods such as usernames and passwords, biometric data, or multi-factor
authentication. The primary goal is to ensure secure access, preventing unauthorized
entry, and often includes logging and auditing mechanisms to track and monitor
authentication events.[2]

• Authorization Levels: Authorization levels dictate the diverse privileges and re-
strictions assigned to different operators or roles within the system. For instance, it
specifies who can perform operations like Create, Read, Update, or Delete (CRUD)
on the solution. This granularity allows for precise control over user access and
typically involves implementing Role-Based Access Control (RBAC) principles. Au-
thorization levels may dynamically adjust based on changing user roles or system
requirements.[11]

Department of Computer Science and Engineering, SJCET Palai


4.1. Functional/Non-Functional Requirements 16

• External Interfaces: External interfaces refer to how the developed solution commu-
nicates with other solutions, systems, and users. This involves specifying commu-
nication protocols, data exchange formats, and error handling procedures. Security
measures such as encryption and authentication are crucial to safeguard data trans-
mitted through these interfaces. Establishing seamless communication with external
entities is essential for interoperability and integration.[2]

• Database: The database functional requirement focuses on defining what data will
be stored and the rules governing its format. This includes determining data types,
normalization strategies to minimize redundancy, constraints for ensuring data in-
tegrity, and validation rules. The database structure should be designed to optimize
data retrieval, incorporating indexing strategies. Additionally, procedures for regu-
lar data backups and mechanisms for data recovery in case of failures or corruption
contribute to the overall robustness of the system.[11]

4.1.2 Non-Functional Requirements

• Usability: Usability focuses on the ease with which users can learn and navigate the
software. It encompasses factors such as the intuitiveness of the user interface, the
clarity of instructions, and the overall user experience. A software solution with high
usability has a minimal learning curve, allowing users to efficiently and effectively
interact with the system.[1]

• Availability: Availability discusses learning structural representations for recipe gen-


eration and food retrieval, and though not directly related, the importance of avail-
ability in software systems can be inferred..[2]

• Security: Security in software solutions pertains to the safeguarding of data and


prevention of unauthorized access or malicious activities. It involves implementing
measures such as encryption, access controls, and authentication mechanisms to
protect sensitive information. A secure software solution ensures the confidentiality,
integrity, and availability of data, mitigating risks of breaches or data loss.[10]

Departmant of Computer Science and Engineering,SJCET Palai


4.2. Software and Hardware Specifications 17

• Reliability: Reliability concerns the ability of a software solution to operate consis-


tently and avoid failures. It involves proactive measures to identify potential failure
points and strategies for handling errors when they occur.[7]

• Performance: Performance is related to how responsive the software is during user


interactions. It includes parameters like the maximum acceptable response time for
each operation requested.[13]

• Availability: Availability focuses on the total time a software solution is accessible


for use. Parameters, such as maximum maintenance time and maximum recovery
time for potential error scenarios, are essential.[2]

• Scalability: Scalability is about the software’s ability to handle changes in capacity


without compromising performance. Defining parameters like the minimum and
maximum number of supported users helps establish scalability expectations. A
scalable software solution can adapt to increased or decreased demands, ensuring
optimal performance even as user numbers fluctuate.[11]

4.2 Software and Hardware Specifications

4.3 Hardware Requirements

• GPU (Graphics Processing Unit):

A powerful GPU is highly recommended, especially if you plan to train your own
food detection model. GPUs with CUDA support (NVIDIA GPUs) can significantly
speed up the training process. Common choices include NVIDIA GeForce, Tesla, or
Quadro series GPUs.[6]

• CPU (Central Processing Unit):

A multicore CPU is essential for overall system performance. While the GPU is
crucial for deep learning tasks, a good CPU can still contribute to preprocessing,
post-processing, and handling other aspects of your application.[6]
Departmant of Computer Science and Engineering,SJCET Palai
4.4. Software Requirements 18

• RAM (Random Access Memory):

At least 8 GB of RAM is often recommended, but more may be beneficial for


larger datasets and more complex models.This ensures smooth handling of image
processing, model inference, application operations, and accommodates potential
scalability for larger datasets or future enhancements.[9]

• Storage:

Adequate storage is needed for the app, model files, and any large datasets. SSDs
(Solid State Drives) are preferred over HDDs for faster data access. The amount of
storage required will depend on the size of your dataset and the model.[5]

• Processor Requirements: This implies that an Intel Core i3 processor or a higher-


tier processor is suitable for running the food detection app. The specific processor
choice may depend on factors such as the app’s complexity, real-time processing
needs, and the size of the dataset. If feasible, opting for a more powerful processor
may enhance overall system performance.[9]

• Camera (for Mobile Devices):

If your food detection app is intended for mobile devices and involves real-time
image capture, the quality of the device’s camera is crucial.[6]

4.4 Software Requirements

• Operating System: Windows 10 Any 32 bit or 64 bit platform are taken.Both 32-bit
and 64-bit versions of Windows 10 can run the food detection app, but the choice
depends on your target audience, hardware considerations, and the complexity of
your application. If in doubt, and if the hardware supports it, opting for the 64-bit
version is generally a safe choice for modern app development.[9]

• Front End: HTML, CSS, JavaScript, Bootstrap are the front end used.HTML struc-
tures the content, CSS styles the appearance, JavaScript adds interactivity, and

Departmant of Computer Science and Engineering,SJCET Palai


4.4. Software Requirements 19

Bootstrap streamlines development by providing a framework for creating a visu-


ally cohesive and responsive user interface in a food detection app.[8]

• Back End : Django simplifies back end development for a food detection app by
providing a well-organized structure, database management through ORM, user
authentication, and other essential features. Its versatility and adherence to best
practices make it a powerful choice for building the server-side logic of the applica-
tion.[8]

• Data Base : Integrating SQLite for a food detection app involves designing tables
for detected items and user data. Store and retrieve information using SQLite
queries, optimize for performance, and ensure security measures like encryption.
Regular backups and scalability considerations are crucial. Connect the SQLite
database with your app’s logic using appropriate language connectors for efficient
data handling.[11]

• IDE : A development environment like Jupyter Notebooks, Visual Studio Code, or


another IDE for coding and experimentation.[7]

• Object Detection Library : CNN( Convolutional Neural Network) , SSD (Single


Shot Multibox Detector), or another object detection library depending on your
preference and model requirements.[9]

• Programming Language: Python 3.6 or above is commonly used for developing


machine learning applications. Ensure you have Python installed.[15]

Departmant of Computer Science and Engineering,SJCET Palai


Chapter 5. System Design 20

Chapter 5

System Design

5.1 Use Case Diagram

The provided Use Case diagram (Fig 5.1) shows the delineates the interactive scenarios
within our system, seamlessly choreographing the engagements between Users and Ad-
ministrators. Users embark on their journey by registering an account, a fundamental
step in gaining access to the culinary community. Once registered, users can log in, pe-
ruse and update their profiles through the ’View User’ and ’Update Profile’ use cases.
The culinary experience is enriched as users contribute to the community by uploading
recipes, accompanied by images, which can be updated later through the ’Update Recipe’
use case. Additionally, users can engage with the community by liking, commenting on,
and viewing recipes using the respective use cases, fostering a collaborative and inter-
active culinary space. Furthermore, users can streamline their culinary exploration by
employing the ’Get Recipes’ use case, ensuring a tailored and efficient recipe discovery
process.

On the administrative front, the Admin is equipped with essential functionalities to


oversee and manage the system.Admins can view user details and recipes through the
’View User’ and ’View Recipe’ use cases, respectively.

Department of Computer Science and Engineering, SJCET Palai


5.1. Use Case Diagram 21

Figure 5.1: Use case diagram

Departmant of Computer Science and Engineering,SJCET Palai


5.2. ER Diagram 22

5.2 ER Diagram

The ER Diagram shows the intricate web of our system’s Entity-Relationship (ER) dia-
gram, key entities include Admin, User, and Recipe, each possessing distinct attributes
that contribute to the overall functionality. The Admin entity is characterized by an iden-
tification number (id), a password, and a username, empowering administra- tors with the
authority to manage and oversee the system. Users, represented by the User entity, are
uniquely identified by user id and are associated with attributes such as name, username,
password, and email. The Recipe entity encapsulates recipe-related information, including
likes, a unique recipe id, the recipe’s name, and an image. The flow within this system is
orchestrated by the interactions between these entities. Users navigate the system by cre-
ating accounts, providing essential details such as name, username, password, and email.
Simultaneously, they contribute to the culinary commu- nity by adding recipes, each iden-
tified by a unique recipe id, accompanied by the recipe’s name and an image. Notably, the
likes attribute within the Recipe entity quantifies user appreciation for specific recipes,
fostering a sense of community engagement. Crucially, the system introduces a pivotal
interaction point where the Admin entity verifies and oversees the addition of recipes by
users. This verification process ensures the quality and appropriateness of contributed
recipes, enhancing the overall integrity of the culinary community. The flow, therefore,
seamlessly connects user engagement, recipe contribution, and administrative oversight,
creating a dynamic and secure environment where users and administrators collaborate
to cultivate a vibrant and reliable repository of culinary delights.

Departmant of Computer Science and Engineering,SJCET Palai


5.2. ER Diagram 23

Figure 5.2: Entity relationship diagram

The ER diagram(Fig 5.2) depicts the relationships between Admins, Users, and Recipes
in a culinary community system. Users create accounts, contribute recipes, and express
appreciation through likes. Admins oversee and verify recipes, ensuring community in-
tegrity. The diagram showcases a dynamic and secure environment, emphasizing the
collaborative flow between users and administrators in cultivating a reliable repository of
culinary content

Departmant of Computer Science and Engineering,SJCET Palai


5.3. Activity Diagram 24

5.3 Activity Diagram

In the intricate web of this culinary system, users find themselves at the forefront of a
captivating and immersive culinary journey. The initiation point is the Recipe Upload
Activity, where users not only share their culinary creations but also provide a wealth of
details, ranging from ingredients to cooking instructions. The option to upload associated
images adds a visual dimension to the shared recipes, transforming them into vibrant,
multimedia experiences.

As these recipes seamlessly traverse into the system’s backend, a sophisticated process
of creation and storage unfolds. The meticulous structuring of information ensures that
the recipes are not only easily retrievable but also form the foundation for a comprehen-
sive and diverse recipe database. Users, having contributed their culinary expertise, can
then navigate to the View Recipes Activity, immersing themselves in a rich tapestry of
gastronomic delights curated by the community.

For those seeking to enhance their contributions further, the Upload Image Activity
opens up a gateway to advanced image processing. The uploaded images undergo a
transformative journey, tapping into a robust image dataset and leveraging state-of-the-
art recognition mechanisms. This dual-purpose process not only elevates the visual appeal
of the culinary platform but also significantly contributes to the system’s intelligence.
The data generated from image processing not only enriches the image dataset but also
dynamically enhances the recipe list, creating a harmonious relationship between visual
and textual culinary representations.

The user experience is further personalized through the Recipe Refinement Activity,
allowing users to tailor their culinary selections. By choosing specific cooking methods,
users actively influence and dynamically update the displayed recipe list, reflecting their
evolving preferences and culinary interests.This dynamic interplay between user input
and system responsiveness creates an environment where the culinary journey is not only
shared but co-created by a vibrant and engaged community.

Departmant of Computer Science and Engineering,SJCET Palai


5.3. Activity Diagram 25

Figure 5.3: Activity diagram

The activity diagram(Fig 5.3) showcases a user-centric flow in our culinary community
system. From recipe uploads to image processing and refined selections, it ensures a
dynamic and innovative experience, contributing to a vibrant culinary community.

By visualizing these activities in an activity diagram, the culinary web application


can streamline the user experience, identify potential bottlenecks or inefficiencies, and
optimize the overall flow of interactions to enhance user satisfaction and engagement.

Departmant of Computer Science and Engineering,SJCET Palai


5.4. Sequence Diagram 26

5.4 Sequence Diagram

The sequence diagram (Fig 5.4) is the dynamic sequence of actions within our system, the
flow commences with the user interacting with the application through the user interface.
The user, serving as a contributor, initiates the process by uploading a recipe, utilizing the
dedicated upload method provided by the interface. The recipe data is then transmitted
to the data storage, where it is securely stored for future retrieval. Subsequently, the data
storage communicates back to the user interface, confirming the successful storage of the
recipe data. This seamless interaction ensures that the user’s contributed recipes are not
only uploaded but also securely maintained within the system.

Moreover, the system accommodates another crucial functionality, where users can
enrich their recipe contributions by uploading images. This begins with the user inter-
acting with the interface to upload an image. The uploaded image is then transmitted to
the data storage, where it is stored alongside the associated recipe data. To enhance user
experience and facilitate efficient recipe discovery, the system incorporates a search func-
tionality for ingredients. Users interact with the user interface to initiate a search, and
the data storage, equipped with a comprehensive database, retrieves and presents relevant
ingredient information back to the user interface. This dynamic sequence underscores the
fluid and user-centric nature of our system, where seamless interactions between the user
and the underlying data storage contribute to a cohesive and efficient culinary community
experience.

Departmant of Computer Science and Engineering,SJCET Palai


5.4. Sequence Diagram 27

Figure 5.4: Sequence diagram

The sequence diagram demonstrates the dynamic interaction between users and the
system. From uploading recipes to enriching contributions with images and searching for
ingredients, the seamless communication between the user interface and data storage en-
sures a cohesive and efficient culinary community experience. This user-centric approach
emphasizes both the security of contributed data and the enhancement of user interactions
within the system.

Overall, the sequence diagram provides a comprehensive overview of the interactions


between users, the application interface, and the server-side components involved in the
process of ingredient recognition and recipe recommendation within the culinary web
application.

Departmant of Computer Science and Engineering,SJCET Palai


Chapter 6. System Implementation 28

Chapter 6

System Implementation

6.1 Technologies Used

6.1.1 HTML

HTML, or Hypertext Markup Language, serves as the backbone of the internet, providing
a standardized and universal language for structuring and presenting content on the World
Wide Web. At its core, HTML is a markup language composed of a series of elements or
tags, each with its own specific function and purpose. These elements allow developers
to create structured documents by defining headings, paragraphs, lists, images, links,
forms, and other multimedia content. HTML documents are organized hierarchically, with
elements nested within one another to create a cohesive and visually appealing layout.
Through the use of attributes, such as IDs and classes, developers can further customize
and style HTML elements to achieve desired aesthetics and functionality. HTML plays
a vital role in web development, providing the foundation upon which websites and web
applications are built, ensuring accessibility, compatibility, and usability across different
devices and platforms[16].

Department of Computer Science and Engineering, SJCET Palai


6.1. Technologies Used 29

6.1.2 Javascript

JavaScript is a versatile programming language primarily used for web development, en-
abling dynamic and interactive features on websites and web applications. As a client-side
scripting language, JavaScript runs directly within the web browser, allowing it to ma-
nipulate the Document Object Model (DOM) of a webpage in real-time. JavaScript
is renowned for its flexibility and wide-ranging capabilities, including event handling,
form validation, DOM manipulation, animations, and asynchronous communication with
servers using AJAX. With the advent of frameworks and libraries such as React, Angular,
and Vue.js, JavaScript has evolved into a full-fledged ecosystem for building robust and
scalable web applications. Furthermore, JavaScript is not limited to client-side devel-
opment; it can also be used server-side with platforms like Node.js, enabling developers
to create entire applications using a single programming language. JavaScript’s ubiquity,
versatility, and rich ecosystem make it an indispensable tool for modern web development,
driving innovation and enhancing user experiences across the digital landscape[17].

6.1.3 CSS

CSS, or Cascading Style Sheets, is a fundamental technology in web development that


defines the visual presentation of HTML elements on a web page. It allows developers
to control the layout, design, and appearance of web content, including text, images,
and multimedia elements. CSS achieves this by specifying styling rules, such as colors,
fonts, margins, padding, and positioning, which are applied to HTML elements. With
CSS, developers can create visually appealing and responsive designs that adapt seam-
lessly to different screen sizes and devices. CSS also supports advanced techniques such
as animations, transitions, and transformations, enabling the creation of engaging user
experiences. Additionally, CSS can be used in conjunction with preprocessors like Sass
and Less to streamline development workflows and maintainable code bases. As a core
component of web development, CSS plays a crucial role in shaping the aesthetics and
usability of websites and web applications, contributing to a rich and immersive browsing

Departmant of Computer Science and Engineering,SJCET Palai


6.1. Technologies Used 30

experience for users[16].

6.1.4 DjangoFramework

Django is a high-level Python web framework renowned for its efficiency, simplicity, and
versatility in building web applications. Offering a clean and pragmatic design, Django
follows the Model-View-Template (MVT) architecture, emphasizing rapid development
and maintainability. With its built-in features such as an intuitive admin interface, pow-
erful ORM for database management, and robust security mechanisms, Django enables
developers to focus on crafting compelling user experiences rather than boilerplate code.
Its comprehensive documentation, active community, and vast ecosystem of reusable com-
ponents further enhance its appeal, making Django a top choice for projects ranging from
simple prototypes to enterprise-grade applications. Whether it’s handling authentication,
managing URL routing, or internationalization support, Django empowers developers to
deliver scalable, secure, and feature-rich web solutions with ease[18].

6.1.5 Visual Studio Code

Visual Studio Code (VS Code) stands out as a lightweight yet powerful source code ed-
itor, crafted meticulously by Microsoft. Renowned for its versatility, extensive features,
and thriving ecosystem of extensions, it has swiftly risen to prominence among developers
worldwide. With an intuitively customizable user interface, VS Code caters to diverse pro-
gramming needs, offering robust support for a multitude of languages and frameworks. Its
arsenal includes sophisticated features like syntax highlighting and intelligent code com-
pletion, empowering developers to write code with precision and efficiency. Moreover, VS
Code seamlessly integrates Git version control, empowering teams to collaborate seam-
lessly and manage code changes effortlessly. Developers also benefit from debugging tools
and integrated terminals, further streamlining their workflow. The allure of VS Code
extends beyond its core functionality, thanks to a vast marketplace brimming with ex-
tensions. Here, developers can augment their coding experience with additional features,
Departmant of Computer Science and Engineering,SJCET Palai
6.1. Technologies Used 31

themes, and language support tailored to their preferences. Across different domains,
from web development to data science, VS Code reigns supreme as an indispensable tool,
driving productivity and facilitating streamlined development processes. Its speed, effi-
ciency, and cross-platform compatibility have cemented its status as the go-to choice for
developers navigating the complexities of modern software development[19].

6.1.6 SQLite

SQLite is a lightweight, self-contained, serverless, and open-source relational database


management system (RDBMS) that is widely used in various software applications and
embedded systems. It is designed for simplicity, reliability, and ease of integration, mak-
ing it an ideal choice for mobile apps, IoT devices, and desktop applications. Unlike
traditional RDBMS systems, SQLite does not require a separate server process or config-
uration, as the entire database is contained within a single file, making it highly portable
and easy to deploy. Despite its lightweight nature, SQLite supports most of the SQL stan-
dard, offering features such as transactions, indexes, triggers, and views. Furthermore,
SQLite databases are ACID-compliant, ensuring data integrity and reliability. With its
small footprint, efficiency, and compatibility with popular programming languages and
platforms, SQLite has become a popular choice for developers seeking a reliable and scal-
able database solution for their applications.

Overall, SQLite is a versatile and lightweight database engine that is well-suited for a
wide range of applications, including desktop and mobile applications, embedded systems,
and small to medium-sized websites. Its simplicity, reliability, and portability make it a
popular choice among developers for building database-driven applications[18].

Departmant of Computer Science and Engineering,SJCET Palai


6.2. System Architecture 32

6.2 System Architecture

The Architecture Diagram (Figure. 6.1) demonstrates the dynamic interaction between
users and the system. From uploading recipes to enriching contributions with images
and searching for ingredients, the seamless communication between the user interface
and data storage ensures a cohesive and efficient culinary community experience. The
frontend of our culinary web app has been meticulously designed to provide users with
an engaging and intuitive experience. Administrators are equipped with tools for user
management, enhancing the overall administrative experience. Underpinning the backend
is a sophisticated database system, designed for efficient storage and retrieval of data. The
backend architecture ensuring adaptability to evolving user needs and seamless integration
of future updates and enhancements.

Figure 6.1: Architecture Diagram

Departmant of Computer Science and Engineering,SJCET Palai


6.3. Implementation 33

6.3 Implementation

The initiative represents a cutting-edge response to the contemporary demand for person-
alized culinary experiences. The machine learning component analyzes user interactions,
incorporates feedback, and processes extensive datasets to continually enhance its recipe
recommendations. This iterative learning process ensures that the system provides per-
sonalized recipe suggestions aligned with each user’s unique culinary inclinations. The
user-friendly approach allows individuals to simply photograph and upload images of in-
gredients, leaving the system to handle the rest, offering a variety of recommended dishes
based on the uploaded images. The project’s overarching goal is to create an innovative
system capable of accurately detecting and quantifying the calorie content of food items,
addressing the rising concerns over nutrition and diet-related health issues like obesity
and diabetes.

The initiative’s objectives encompass the development of an intelligent system capable


of analyzing user-uploaded images of ingredients, offering personalized recipe recommen-
dations considering individual preferences, dietary restrictions, and cooking habits. Si-
multaneously, the project aims to establish an online community where chefs can connect,
share culinary creations, exchange ideas, and provide support to foster knowledge sharing
and networking. The identified problems of dealing with varying image qualities, ensuring
consistency in ingredient image recognition, addressing fragmented recipe experiences, and
combating recipe overload underline the initiative’s commitment to enhancing the user
experience and streamlining the culinary exploration process across various platforms.

The system flowchart (Figure. 6.2) outlines a sequential process for the recipe recom-
mendation application. Initially, the system utilizes a camera to capture images of food
items, which then undergo image transformation to optimize their quality and clarity.
Subsequently, the system identifies contours within the transformed images. If contours
are not detected, the system loops back to the image transformation step to enhance the
image quality. However, if contours are successfully identified, the process proceeds to
food recognition. Here, the system employs recognition algorithms to identify the type

Departmant of Computer Science and Engineering,SJCET Palai


6.3. Implementation 34

of food present in the image. If the recognition process fails, the system revisits the food
recognition step until successful identification occurs. Once the food is correctly recog-
nized, the system proceeds to calculate the area and volume of the identified food item.
Following this, the system retrieves and calculates nutritional information associated with
the recognized food item. This information is then stored for future reference.

Figure 6.2: System’s Flowchart

This flowchart represents a structured approach to streamline the process of captur-


ing, recognizing, and analyzing food items, ultimately facilitating the recommendation of
personalized recipes based on user preferences and dietary requirements[9].

A Convolutional Neural Network (CNN) represents a deep learning model specifically


designed to process and analyze visual data, primarily images. Inspired by the structure
and functionality of the visual cortex in animals, CNNs excel in tasks related to computer
vision, such as image classification, object detection, and image segmentation. Comprising
several layers, CNNs include convolutional layers, where filters extract features like edges
and textures from input images These features are then passed through activation func-
tions like ReLU to introduce non-linearity and enable the learning of complex patterns.
Departmant of Computer Science and Engineering,SJCET Palai
6.3. Implementation 35

Pooling layers follow, downsampling feature maps while preserving critical information.
Fully connected layers integrate extracted features for classification or regression tasks[14].

The CNN model architecture diagram (Figure. 6.3) depicts the systematic progression
of an RGB image through distinct layers aimed at extracting features and generating
meaningful outputs. Initially, the RGB image serves as the input, comprising red, green,
and blue channels. Following this, the image traverses through convolutional layers where
filters are applied to capture specific patterns and features. Within these convolutional
layers, the Rectified Linear Unit (ReLU) activation function introduces non-linearity,
crucial for learning complex relationships within the data. Additionally, Maxpooling
layers reduce spatial dimensions while preserving important information, contributing to
computational efficiency and preventing overfitting. Subsequently, the fully connected
layer connects neurons from one layer to the next, integrating extracted features and
enabling classification tasks.Ultimately, the Softmax activation function within the fully
connected layer converts raw outputs into probabilities across different classes, facilitating
classification. At the final output layer, predictions or classifications are generated based
on the learned features, representing the culmination of the CNN’s processing pipeline[13].

Figure 6.3: CNN Model Architecture

Departmant of Computer Science and Engineering,SJCET Palai


Chapter 7. Experimental Results And Evaluation 36

Chapter 7

Experimental Results And


Evaluation

7.1 Authentication

The authentication page (Figure 7.1) of the web application plays a pivotal role in ensuring
a secure and personalized experience for users. Drawing inspiration from successful social
media models, this page serves as the entry point for users to create personalized profiles,
enabling seamless recipe sharing and community engagement among culinary enthusiasts.
Emphasizing the importance of security, the authentication process incorporates robust
mechanisms such as multi-factor authentication to safeguard user accounts and sensitive
information from unauthorized access. Leveraging machine learning algorithms, the sys-
tem continuously monitors and analyzes user behavior patterns to detect and mitigate
potential security threats in real-time, thereby enhancing the overall security posture of
the platform. The sign-up process provides newcomers with a frictionless journey, guiding
them through the creation of personalized profiles tailored to their culinary preferences
and interests Additionally, the authentication page serves as a platform for users to review
and agree to community guidelines and user agreements, fostering a culture of respect,
inclusivity, and responsible behavior within the culinary community.

Department of Computer Science and Engineering, SJCET Palai


7.1. Authentication 37

Figure 7.1: Sign up and Sign in

With a user-centric design approach, the authentication page prioritizes accessibility


and usability, offering clear instructions to ensure a seamless navigation experience for
users of all levels of technical proficiency. In essence, the authentication page not only
establishes trust and credibility but also plays a crucial role in facilitating secure access
to platform features and nurturing a vibrant and thriving culinary community ecosystem.

Departmant of Computer Science and Engineering,SJCET Palai


7.2. Home Page 38

7.2 Home Page

The homepage is a central component of many applications, serving as the initial screen
or landing page that users encounter when they open the app. Here are some key uses
and benefits of including a homepage in your app. The homepage serves as a central hub
that provides users with an overview of the app’s features, content, or functionalities.

Figure 7.2: Home page

Departmant of Computer Science and Engineering,SJCET Palai


7.3. Profile Page 39

The homepage can guide new users through the app’s features or provide a step-by-step
onboarding process to help them get started with ”CULINARYHUB” (see Figure.7.2).
Drawing inspiration from the seamless integration of social media and advanced technol-
ogy, the homepage greets users with a visually captivating layout that beckons them to
embark on a culinary journey like no other. Dynamic content modules showcase trending
recipes, personalized recommendations, and engaging culinary content curated based on
user preferences and interactions. From mouthwatering images of delectable dishes to
insightful cooking tips and tricks, the homepage is a treasure trove of culinary inspiration
for users of all skill levels. Whether seeking quick and easy weeknight dinner ideas or em-
barking on a gourmet culinary adventure, the homepage sets the stage for an immersive
and rewarding culinary experience that transcends traditional recipe-sharing platforms.

7.3 Profile Page

The ”My Profile” page is a dedicated section within an app where users can view and
manage their personal information, preferences, settings, and account details.

Figure 7.3: Profile page

Departmant of Computer Science and Engineering,SJCET Palai


7.3. Profile Page 40

Inspired by the integration of machine learning algorithms and user-centric design, the
profile page offers a comprehensive snapshot of each user’s engagement within the culinary
community. My Profile page (see Figure.7.3) serves as a central location where users can
manage their account settings, such as updating their username, email address, password,
profile picture, or other personal details. Users can view their uploaded recipes, culinary
preferences, and dietary restrictions, allowing for seamless management of their culinary
repertoire. Leveraging insights from user interactions and iterative learning, the profile
page dynamically adapts to reflect evolving tastes and preferences. It provides users with
control over their account information and allows them to customize their profile according
to their preferences. Users can review and adjust their privacy settings on the My Profile
page, controlling the visibility of their information, managing permissions, or determining
who can access their profile. This empowers users to maintain their privacy and ensure
that their personal data is protected The user can also update personal information and
even change passwords.

Moreover, users can track their culinary achievements, such as recipe contributions and
community engagement metrics, fostering a sense of accomplishment and belonging within
the culinary community. With intuitive navigation and personalized recommendations,
the profile page serves as a central hub for users to explore, share, and connect, redefining
the way they experience culinary exploration and creativity.

Departmant of Computer Science and Engineering,SJCET Palai


7.4. Image Recognition Interface 41

7.4 Image Recognition Interface

The image recognition interface represents a pivotal feature within the food app, seam-
lessly bridging the gap between visual input and actionable culinary insights. Upon ac-
cessing the interface, users are greeted with an intuitive design that prioritizes simplicity
and efficiency (see Figure.7.4).

Figure 7.4: Ingredient identification

Departmant of Computer Science and Engineering,SJCET Palai


7.4. Image Recognition Interface 42

The image recognition interface within our culinary web application represents a
cutting-edge integration of machine learning algorithms, particularly Convolutional Neu-
ral Networks (CNNs), to enhance user culinary experiences. Anchored in the principles
of computer vision, this interface enables users to effortlessly capture images of ingredi-
ents using their device’s camera. Leveraging sophisticated CNN models trained on vast
datasets of food images, the interface autonomously analyzes and identifies the captured
ingredients in real-time. By processing the visual data, the interface accurately recognizes
various food items, ranging from fruits and vegetables to spices and condiments.

Upon successful recognition, the interface displays detailed information about the iden-
tified ingredients, including their names, nutritional content, and potential culinary uses.
Users can access this information to make informed decisions about recipe selection, di-
etary planning, and ingredient substitutions. Moreover, the interface seamlessly integrates
with other components of the web application, such as the recipe recommendation system
and personalized profile pages, to provide a cohesive and immersive culinary experience.
Through sophisticated image processing techniques, the interface swiftly interprets visual
cues, distinguishing between various food items with remarkable accuracy. Users are then
presented with comprehensive results, including detailed information on recognized ingre-
dients, suggested recipes, and relevant nutritional data. Whether capturing a snapshot
of fresh produce at the grocery store or documenting a culinary creation in progress, the
image recognition interface empowers users to effortlessly translate visual inspiration into
actionable culinary insights, enhancing their cooking.

The deployment of this image recognition interface marks a transformative chapter


in the culinary landscape, redefining the way users interact with cooking ingredients and
recipes. By harnessing the power of machine learning and computer vision, the interface
empowers users to explore new culinary possibilities, make healthier dietary choices, and
embark on personalized culinary journeys with confidence and ease.

Departmant of Computer Science and Engineering,SJCET Palai


7.5. Graphs 43

7.5 Graphs

7.5.1 Graph Of Accuracy Of The First Test

The graph (Figure. 7.5) shows the training accuracy of a machine learning model over 30
epochs. It appears that the training accuracy increases as the number of epochs increases.
This suggests that the model is learning from the training data and improving its ability
to make accurate predictions.

Figure 7.5: Graph of the accuracy of the first test

However, it is important to note that the graph only shows the training accuracy, and
not the validation accuracy. The validation accuracy is a measure of how well the model
performs on unseen data. It is possible that the model is overfitting to the training data,
which means that it is memorizing the data too well and will not perform well on new
data.

Departmant of Computer Science and Engineering,SJCET Palai


7.5. Graphs 44

7.5.2 Graph Of Losses Of The First Test

The graph (Figure. 7.6) shows the validation accuracy of a machine learning model over
30 epochs. The y-axis shows validation accuracy and it ranges from 0.1 to 0.8. The x-axis
shows the number of epochs and goes from 0 to 30.

Figure 7.6: Graph of the losses of the first test

The graph shows an upward trend in validation accuracy, which means the model’s
performance on unseen data is improving as the number of epochs increases. It appears
that after 20 epochs, the validation accuracy starts to plateau, which could indicate the
model is nearing its optimal performance.

Departmant of Computer Science and Engineering,SJCET Palai


7.5. Graphs 45

7.5.3 Graph Of Accuracy Of The Test With 4 Epochs

The graph (Figure. 7.7) shows the accuracy of the test with 4 epochs. A typical graph
of test accuracy with 4 epochs might show a slight increase in accuracy as the number
of epochs increases. This is because the model is learning from the training data and
improving its ability to make accurate predictions. However, it is also possible for the
accuracy to plateau or even decrease after a few epochs. This could be a sign of overfitting,
which is when the model memorizes the training data too well and does not generalize
well to unseen data.

Figure 7.7: Graph of the accuracy of the test with 4 epochs

The y-axis shows validation accuracy and it ranges from 0.1 to 0.8. The x-axis shows
the number of epochs and goes from 0 to 30. Validation accuracy increases with the
number of epochs, this indicates that the model is learning from the training data and
improving its ability to make accurate predictions on unseen data. Validation accuracy
starts to plateau after 20 epochs, this suggests that the model might be nearing its optimal
performance. There might be minimal improvement in accuracy with further epochs.

7.5.4 Graph Of Losses Of The Test With 4 Epochs

The graph (Figure. 7.8) shows losses of the test with 4 epochs.The graph shows the
average training accuracy over time. The x-axis shows the number of epochs, which are
iterations of the training process for a machine learning model. The y-axis shows the
accuracy of the model on a training dataset.

Departmant of Computer Science and Engineering,SJCET Palai


7.5. Graphs 46

Figure 7.8: Graph of the losses of the test with 4 epochs

It appears that the training accuracy increases as the number of epochs increases. This
is a typical trend, because the model is learning from the training data and improving
its ability to make accurate predictions on the training data. However, it is important to
note that the graph only shows the training accuracy, and not the validation accuracy.
The validation accuracy is a measure of how well the model performs on unseen data.
It is possible that the model is overfitting to the training data, which means that it is
memorizing the data too well and will not perform well on new data.

Departmant of Computer Science and Engineering,SJCET Palai


Chapter 8. Conclusion 47

Chapter 8

Conclusion

In conclusion, the envisioned AI-driven recipe recommendation system, emerging from the
Department of Computer Science and Engineering at SJCET Palai, stands as a beacon of
innovation at the intersection of technology and culinary artistry.By integrating cutting-
edge technologies such as machine learning and computer vision, the proposal not only
tackles concerns related to food quality and convenience but also sets a new standard for
personalized and accessible home cooking. The user-centric philosophy, underscored by
tailored recipe recommendations, creates a symbiotic relationship between technology and
individual preferences, fostering a sense of empowerment and satisfaction.The integration
of CNN (Convolutional Neural Network) image recognition technology streamlines recipe
selection, reflecting an understanding of modern communication trends, and enhancing
the system’s technological sophistication and user-friendliness. Furthermore, the inclusion
of calorie content quantification contributes to the larger discourse on health-conscious
living, positioning the system as a proactive tool for informed dietary choices. As we
anticipate the implementation of this AI-driven recipe recommendation system, we envi-
sion a future where home cooking is not only a delightful and personalized experience but
also a testament to the positive impact of technology on our daily lives. This project not
only promises to redefine the way we cook but also reflects a broader narrative of using
innovation to enhance our overall quality of life.

Department of Computer Science and Engineering, SJCET Palai


References 48

References

[1] Chun-Yuen Teng, ”Recipe recommendation using ingredients networks”,


School of Information University of Michigan Ann Arbor, MI, USA chun-
yuen@umich.edu,(/ui.adsabs.harvard.edu),2018

[2] Hao Wang, Guosheng Lin, Steven C. H. Hoi, Fellow, IEEE and Chunyan Miao.
”Learning Structural Representations for Recipe Generation and Food Retrieval”

[3] Mrs. Silviya D’monte1 , Department of Computer Engineering, Universal Col-


lege of Engineering, Vasai ”Recipe Recommendation by Ingredients Detec-
tion”(www.ijraset.com).

[4] Lipi Shah1 , Hetal Gaudani2 , Prem Balani3, ”Personalized Recipe Recommenda-
tion System using Hybrid Approach”,(IJARCCE),2018

[5] Bodhisattwa Prasad Majumder , Shuyang Li , Jianmo Ni, Julian


McAuley.”Generating Personalized Recipes from Historical User Preferences”,
(cseweb.ucsd.edu)

[6] Namita Patel,Assistant Professor,Department Of Information Technology,ASOIT,


”Rice Quality Analysis Based On Physical Attributes Using Image Processing” ,2019

[7] Morol, Md Kishor, et al. ”Food recipe recommendation based on ingredient de-
tection using deep learning.” Proceedings of the 2nd International Conference on
Computing Advancements. , 2022 .

[8] Ms. Soundarya Desai , Ms. Pooja Patil , Mr. Pratik Shinde , Mr. Azhar Sayyed ,
Prof. Rohini Bhosale Student, Comp Dept, KJEIs Trinity College of Engineering
Department of Computer Science and Engineering, SJCET Palai
References 49

and Research Pisoli, Pune, India .”Recipe Recommendation Based on Ingredients


using Machine Learning”

[9] Abdullah Faiz Ur Rahman Khilji,Department of Computer Science and Engineer-


ing, National Institute of Technology Silchar, Assam, India ,” Multimodal Recipe
Recommendation System Using Deep Learning and Rule-Based Approach ”

[10] Mehrdad Rostami,Center for Machine Vision and Signal Analysis (CMVS), Univer-
sity of Oulu, Finland. ”An effective explainable food recommendation using deep
image clustering and community detection”

[11] B. Arslan, S. Memiş, E.B. Sönmez and O.Z. Batur, Member, IEEE ,”Fine-Grained
Food Classification Methods on the UEC FOOD-100 Database” , 27 August 2021

[12] Shady Elbasouni , Halla Gattas, Jalila Elatia , ” DeepNOVA: A Deep Learning
NOVA Classifier for Food Images” , 8 December 2022

[13] Mogan Gim; Donghyeon Park; Michael Spranger; Kana Maruyama; Jaewoo Kang
,IEEE, ”RecipeBowl: A Cooking Recommender for Ingredients and Recipes Using
Set Transformer ” , 14 October 2021

[14] Juyong Lee and Johoon Lee, Sangmyung University, ”Juice Recipe Recommenda-
tion System Using Machine Learning in MEC Environment” . 10 August 2020

[15] SAEED S. ALAHMARI, ”Food State Recognition Using Deep Learning” , 12 De-
cember 2022

[16] Utkarsh Kaushal; Gurinder Singh,et al ”Responsive Webpage Using HTML CSS” ,
06-07 October 2022

[17] Swati Vaid, Aditya Dhunna, Aryan Bisht, et al ”Design And Development of Web
based Application for Educational purpose ” , 01 June 2023

[18] Adamya Shyam, Nitin Mukesh , ”A Django Based Educational Resource Sharing
Website: Shreic ” , 12 March 2020

[19] Adam Freeman , et al , ”Working with Visual Studio Code ” , 20 September 2016

Departmant of Computer Science and Engineering,SJCET Palai


ANNEXURE A

Departmant of Computer Science and Engineering,SJCET Palai


Departmant of Computer Science and Engineering,SJCET Palai
Departmant of Computer Science and Engineering,SJCET Palai
Departmant of Computer Science and Engineering,SJCET Palai
Departmant of Computer Science and Engineering,SJCET Palai
ANNEXURE B

Departmant of Computer Science and Engineering,SJCET Palai


Departmant of Computer Science and Engineering,SJCET Palai
Departmant of Computer Science and Engineering,SJCET Palai
Departmant of Computer Science and Engineering,SJCET Palai
Departmant of Computer Science and Engineering,SJCET Palai
Departmant of Computer Science and Engineering,SJCET Palai
Departmant of Computer Science and Engineering,SJCET Palai
Departmant of Computer Science and Engineering,SJCET Palai
Departmant of Computer Science and Engineering,SJCET Palai
Departmant of Computer Science and Engineering,SJCET Palai
VISION & MISSION OF THE DEPARTMENT

Vision

To evolve as a school of computing with globally reputed Centre’s of excellence and

serve the changing needs of the industry and society.

Mission

• The department is committed in bringing out career-oriented graduates who are


industry ready through innovative practices of teaching and learning process

• To nurture professional approach, leadership qualities and moral values to the grad-
uates by organizing various programs periodically

• To acquire self-sustainability and serve the society through research and consultancy

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy