You are on page 1of 41

VISVESVARAYA TECHNOLOGICAL UNIVERSITY

JnanaSangama, Belgaum-590014

A Technical Seminar Report On

“SMART MIRROR”

Submitted in Partial fulfillment of the Requirements for the VIII Semester of the
Degree of

Bachelor of Engineering
In
Computer Science & Engineering
By
KAVYA (1CE18CS033)

Under the Guidance of


Prof. Swetha shree R N
Prof, Dept. of CSE

CITY ENGINEERING COLLEGE


Doddakallasandra, Kanakapura Road,
Bengaluru-560061
CITY ENGINEERING COLLEGE
Doddakallasandra, Kanakapura Road, Bengaluru-560061

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

CERTIFICATE
Certified that the Technical Seminar presentation entitled “SMART MIRROR”has
been carried out by KAVYA (1CE18CS033) respectively a bonafide student of City
Engineering College in partial fulfillment for the award of Bachelor of Engineering in
Computer Science and Engineering of the Visvesvaraya Technological University,
Belgaum during the year 2021- 2022. It is certified that all corrections/suggestions
indicated for Internal Assessment have been incorporated in the Report deposited in the
departmental library. The Technical Seminar report has been completed and it satisfies the
academic requirements as per VTU norms with respect of Technical Seminar work prescribed
for the said Degree.

Prof. Swetha shree R N Prof. Swomya Naik Dr.Thippeswamy H N


Internal Guide, Hod,Dept of CSE Principal of
CEC Prof, Dept. of CSE

External Viva

Name of the examiners Signature with date


1.
2.
ABSTRACT

Every morning our day begins by watching ourselves at least once in mirror before leaving our
homes. We interact with it psychologically to find out how we look and how our attire is. Smart
Mirror or Magic Mirror is one of the applications of Raspberry Pie. A computer screen embedded
in mirror looks very futuristic. The Raspberry Pie stays at back scenes and controls the
data displayed on mirror. While looking at mirror you can look at various notifications from social
sites as well news, weather forecast and more things. Such mirrors can be programmed to work as
AI and control home appliances by voice input or touch screen. The Raspberry Pie is connected to
monitor via HDMI as well as it also has inbuilt Wi-Fi and Bluetooth interfaces so we can
just swipe music and videos to mirror. Smart mirrors are straight from science fiction. They’re part
of an optimistic vision of the future that imagines a world where screens and data are everywhere,
ready to feed you whatever information you need at a moment’s notice.

i
ACKNOWLEDGEMENT

While presenting this Technical Seminar on “Smart Mirror” I feel that it is my duty
to acknowledge the help rendered to me by various persons.

Firstly, I thank God for showering his blessings on me. I am grateful to my institution City
Engineering College for providing me a congenial atmosphere to carry out the project
successfully.

I would like to express my heartfelt gratitude to Dr.Thippeswamy H N, Principal,


City
Engineering College, Bangalore, for extending his support.

I would also like to express my heartful gratitude to Prof Swomya Naik, H.O.D, Department
of Computer Science and Engineering whose guidance and support was truly invaluable.

I am very grateful to my guide, Prof Swetha shree R N, Asst. Prof., Department of


Computer Science, city engineering college for her able guidance and valuable advice
at every stage of my seminar which helped me in the successful completion of my seminar.

I would also indebt to my Parents and Friends for their continued moral and material support
throughout the course of seminar and helping me in finalize the presentation. My
heartly thanks to all those have contributed bits, bytes and words to accomplish this seminar.

KAVYA
(1CE18CS033)

ii
TABLE OF CONTENTS

1. INTRODUCTION 01

2. LITERATURE SURVEY 03

3. PROBLEM STATEMENT 07

3.1 Existing system 08

3.2 Proposed System 09

4. APPROACHES AND METHODS 10

4.1 Technologies used 10

4.2 System requirements 11

4.3 Overall system 12

4.4 Algorithms 25

4.5 Raspberry Pi 26

5. RESULTS AND DISCUSSIONS 27

5.1 System integration testing 27

5.2 Testing relevance to overall system 29

5.3 Testing 33

6. CONCLUSION AND FUTURE ENHANCEMENT 35

7. REFERENCES 36

iii
LIST OF FIGURES

FIG.NO. FIGURE NAME PAGE NO

Fig.1.1 Smart Mirror for Personalized Medicine 2

Fig.1.2 Overall System Flow Diagram 2

Fig.1.3 Flow Diagram of On/Off Subsystem 3

Fig.1.4 PIR Motion Detector 5

Fig.1.5 Flow Diagram of Internet Subsystem 5

Fig.1.6 Flow Diagram of Software for Internet Subsystem 6


Fig.1.7 Flow Diagram of User Interface Subsystem 7

Fig 1.8 User Interface Web page 8


16
Fig 1.9
Flow Diagram of Software for User Interface Subsystem
Fig.2.0 17
ESP8266 Booted as Access Point,Data Written 18
toEEPROM 19
19
Fig 2.1 ESP8266 Booted to Connect to and
21
Parse Data from Internet
20

iv
SMART MIRROR

CHAPTER 1

INTRODUCTION
Smart mirrors are straight from science fiction. They’re part of an optimistic vision of
the future that imagines a world where screens and data are everywhere, ready to feed
you whatever information you need at a moment’s notice. Basically, the mirror looks
like a normal mirror but when someone stands in front of it the scene changes.

The mirror provides a functional, user friendly and interactive UI to its user for
accessing their social sites, messengers, etc. It has widgets for displaying the current whether
conditions, Time, Events, Latest news headlines The Smart Mirror would help in
developing smart houses with embedded artificial intelligence, as well as finding its
applications in industries. Switching home appliances becomes easy with mirror.

Virtual dressing, a smart way of having trials with your fashion sense make things quite easy
in malls. Having such intellectual mirror will only surge the beauty of a house. The raspberry
pi is programmed using python and connects to a monitor with inbuilt speaker so as
to provide an onscreen interface and voice assistance as well.

Every morning our day begins by watching ourselves at least once in mirror before leaving
our homes. We interact with it psychologically to find out how we look and how our attire is.
Smart Mirror or Magic Mirror is one of the applications of Raspberry Pie.

A computer screen embedded in mirror looks very futuristic. The Raspberry Pie stays at back
scenes and controls the data displayed on mirror. While looking at mirror you can
look at various notifications from social sites as well news, weather forecast and more things.

Such mirrors can be programmed to work as AI and control home appliances by voice input or
touch screen. The Raspberry Pie is connected to monitor via HDMI as well as it also has
inbuilt Wi-Fi and Bluetooth interfaces so we can just swipe music and videos to mirror.

In this world everyone needs a comfort life. Modern man has invented different technology for
his purpose. In today’s world, people need to be connected and they are willing to access Dept., of
Dept., of CSE 2021-2022 Page 1
SMART MIRROR

The Internet of Things with its enormous growth widens its applications to the living
environment of the people by changing a home to smart home. Smart home is
a connected home that connects all type of digital devices to communicate each other through
the internet. Our lifestyle has evolved in such a way that optimizing time is the most
important thing. Our work is based on the idea that we all look at the mirror when we go out, so
why wouldn‟t the mirror become smart. A common approach for building a smart mirror is to
use a high quality one-way glass, a LCD monitor, a frame to hold the glass and monitor, and a
web browser with python to provide the software features and drive the display. The
Internet transformed our lives by connecting us more easily to information and other
people in the virtual world. The state of innovation currently is to provide more
information with less interaction to get it. Smart Mirror is a wall mounted mirror
which displays relevant items to the user such as weather, time, date, temperature,
humidity and news and other fields of interest.

Presentation and punctuality are two of the most valued qualities in modern society. However,
it can be difficult to effectively prepare for the day while remaining
knowledgeable about current affairs and still maintain a timely schedule. In the morning, it is
imperative to prepare for the day in front of a mirror, which is often a slow process.
Additionally, factors such as the current weather conditions can influence how a person
prepares for the day. Finding an efficient way to check all the factors that can affect how a
person prepares for the day while also not adversely affecting the tasks that are performed in
front of a mirror can be a challenge.

Dept., of CSE 2021-2022 Page 1


SMART MIRROR

Chapter 2

LITERATURE SURVEY

[1] Title: International Journal of Engineering Research & Technology: IoT based Smart
Mirror using Raspberry Pi
Author: Lakshmi N M- Dept. of Electronics and Communication GSSSIETW, Mysuru,
Karnataka, India, Chandana M S- Dept. of Electronics and Communication GSSSIETW,
Mysuru, Karnataka, India, Ishwarya P-Dept. of Electronics and
Communication GSSSIETW, Mysuru, Karnataka, India, Nagarur Meena-Dept. of
Electronics and Communication GSSSIETW, Mysuru, Karnataka, India,
Rajendra R Patil, Dept. of Electronics and Communication GSSSIETW, Mysuru,
Karnataka, India.
This project depicts the design and development of smart mirror that represents
an elegant interface for glancing information and also used for thief detection in a home
environment. A smart mirror is a system that functions as mirror with additional capability of
displaying date, time, current temperature, weather details. To design a smart mirror that
receives a online news and display it using Internet of things (IoT) circuitry and to detect thief
when nobody is in home.

[2] Title: International Journal of Engineering Science Invention: A Review


Paper Design and Development of a Smart Mirror Using Raspberry Pi
Author: Prof. Jagdish A.Pateljayshri T. Sadgir Sonal D. Sangaleharshada A. Dokhale
Department Of Electronics
In Today Society Information Is Available To Our Phones, Our Laptops, Our
Desktop And More. The One That Concerns The Common Man Is Now It Can Be Used To
Make Day To Do Life Easier And Faster .This Paper Design And Development Of A
A “Smart Mirror” With Use Home, Industries, And Platforms. This Project Which
Would Collect Real Would Machine Data And Data Would Be Transmitted From
The Machine And Managed By The Raspberry Pi Board. This Project Is Used By
Raspberry Pi3 Version Model-B. This Smart Mirror Is Latest Version Of Raspberry Pi. This
Mirror Is Developed By

Dept., of CSE 2021-2022 Page 2


SMART MIRROR

Corresponding To Location. The Mirror Is Implemented As A Personalized


Monitor With Reflected One Way Mirror Provides Most Basic Common Such As
Weather Of The City, Updates Of News And Headlines Corresponding To Locations.
The Mirror Is Implemented As A Personalized Digital Device With Peripherals Such As
Raspberry Pi Microphone, Speaker, And Led monitor With Reflected one Way Mirror
Provides Most Basic Common Such As Weather Of The City, Updates Of News
And Headlines Corresponding To Locations. This Mirror Is Ability To Display Date
And Time The Current Weather Condition outside Temperature. This Feature Of
The Mirror Will Be Scraped From The Internet And Implemented Using Raspberry
Pi Board.

[3] Title: International Journal for Research in Applied Science and


Engineering
Technology: Smart Mirror
Author: Khurd Aishwarya.S, Shweta .S. Kakade, Prof. R. M. Dalvi, Department of
Computer Engg, MMCOE, Karvenagar, Pune, India.
The design and the development of an interactive Smart Mirror is for the
ambient home environment as well as for commercial uses in various industries. The
project which would display data on the mirror and the data and would be managed by the
Raspberry Pi. The smart mirror implemented as a personalized digital device
equipped with peripherals such as Raspberry Pi, microphone, speakers, LED monitor,
webcam covered with a sheet of reflective mirror provides one of the most basic common
amenities such as weather of the city, latest updates of news and headlines and local
time corresponding to the location and schedules using face recognition.

[4] Title: International Journal of Scientific and Research Publications: Raspbian Magic
Mirror-A Smart Mirror to Monitor Children by Using Raspberry Pi Technology
Author: R.M.B.N. Siripala, M. Nirosha, P.A.D.A. Jayaweera, N.D.A.S. Dananjaya, Ms. S.G.S.
Fernando, Faculty of Information Technology, Sri Lanka Institute of Information
Technology, Colombo, Sri Lanka.
It is a universally accepted truth that raising a child is an extremely responsible task. One of the
major problems faced by parents/guardians nowadays is monitoring their children while
they are away at work. To monitor them constantly, there should be a system that can be easily
handled, user friendly and smart in accordance with the rapid advancements in

Dept., of CSE 2021-2022 Page 3


SMART MIRROR

It is a smart mirror which will possess the ability to display advanced details and connect with
the user‟s smart phone by using an Android application. Even though many smart mirrors have
been developed previously, they had only a few features such as displaying the date,
time, weather and news feeds. But the Raspbian mirror which is demonstrate in this paper is
much more interactive and advanced and will primarily target working parents
which will receive notifications from the users through their smart phones. The
Raspbian magic mirror will display useful information such as the date, time, weather
and daily reminders, but it will also help parents to monitor their children and assist
them with their studies, and to organize their daily routines. In the case of teenage
children, parents could use this mirror to assign them household chores as well. This device
could of course be used as an ordinary mirror including all the above features that make
day to day life easier and faster, which is an integral part of home automation as well.

[5] Title: International Conference on Intelligent Transportation, Big Data & Smart
City: Design of Smart Mirror Based on Raspberry Pi.
Author: Sun yong, Geng Liqing, Dan Ke Tianjin Key Laboratory of Information
Sensing & Intelligent Control, Tianjin University of Technology and Education Tianjin,
China.
Intelligent systems are not only used on mobile phones and tablet computers, but also more
and more intelligent products are coming into being. At present, 3D mirrors and hair
salon smart mirrors are expensive, and are limited to use in public places. In this
paper, an intelligent mirror based on raspberry pi is designed for the home of Internet of
things. The intelligent mirror is made of raspberry pi as the host controller, and
STM32F030C8T6 microcontroller as the core control chip. In working condition, the
system by raspberry pi is connected to the network through WIFI, and obtain
information about the weather forecast from the API network interface specified
dressing index, time, date and other information, and then through the information displayed
on the plasma display. The user can interact with the mobile phone through the APP
mirror, SYN6288 mirror through speech synthesis module make sounds, such as asking
the mirror the weather, news, time, the mirror can automatically obtain the
corresponding information network and broadcast. The designed intelligent mirror has
the advantages of small size, simple operation, low cost, and is suitable for
families, and has broad application prospects.

Dept., of CSE 2021-2022 Page 4


SMART MIRROR

[6] Title: Smart Mirror- Digital Magazine for University Implemented Using Raspberry
Pi
Author: R Akshaya, N. Niroshma Raj, S. Gowri , Department of IT,
Sathyabama Institute of Science and Technology.
The design of smart mirror using Raspberry Pi. This may look like the regular mirror but the
difference is it displays weather, temperature, time, and web application for college. The smart
mirror is implemented using peripherals like raspberry pi, LED monitor covered with a two-
way acrylic sheet. The microcontroller can connect to the Internet and can retrieve data from
the internet which displays weather report of the particular location. This describes how smart
mirror is built using the raspberry pi as hardware.

[7] Title: Smart Mirror Applications with Raspberry Pi


Author: Fatma Ok1, Murat Can1, Hakan Üçgün1, U÷ur Yüzgeç1 1Bilgisayar
Mühendisli÷i Bölümü, Bilecik ùeyh Edebali Üniversitesi, Bilecik
Intelligent mirrors, which continue the works today and will take its place in the future
technology, provide both mirror and computer aided information services to its users. Thanks to
the microcontroller cards onboard, these systems, which can connect to the internet and take
data from the internet, can show this information on the places located on the mirror. In the
scope of the study, the developed intelligent mirror system includes the weather information,
time and location information, current event information, user information, and camera image
taken from web services using Raspberry Pi 3 microcontroller card.

[8] Title: IAPR Asian Conference on Pattern Recognition : Magic Mirror: An


Intelligent Fashion Recommendation System
Author: Si Liu, Luoqi Liu, Shuicheng Yan Department of Electrical and Computer
Engineering National University of Singapore
This paper mainly introduces the techniques re-quired for a future system, called Magic
Mirror. Imagine when you wake up in the morning and prepare for the coming day,
the Magic Mirror will automatically recommend to you the most appropriate styles of
hair, makeup, and dressing, according to the events and activities on your calendar, with which
it is linked, so that you can present yourself on these occasions with elegant and
suitable appearance. The work shall focus on the mathematical models for these tasks,

Dept., of CSE 2021-2022 Page 5


SMART MIRROR

Chapter 3

PROBLEM STATEMENT

In our rapidly developing world, information is always right at your fingertips - on your phone,
on your computer, maybe even on your watch. Staying connected with new information
is both important for entertainment and daily life. With such a variety of options, there
is difficulty in following all of your data streams. Often, during your day, you may end up in a
position where it is inconvenient, or even impossible, to take out your phone or computer and
check the newest update. You cannot commit to a slower interaction. You need a display to
glance at, with the information you need ready to go. However, aesthetics are just as important
as displaying information. Keeping an extra computer in your bathroom or hall would
be inconvenient, and would not fit well with the look of a modern room. A sleek,
simple display, easy for an average consumer, is a necessity in today‟sworld.

Solutions:
There are several products in the market that attempt to be your attractive hub of daily
information. The Amazon Echo and the upcoming Google Home present themselves as a small
speaker that can relay information through sound. You can request news or music, fulfilling
your need to obtain media content in a hands-free manner. However, not all data is suitable for
conveyance by voice. Both designs lack the key ability to convey information visually. Asking
for the morning traffic can give you a time estimate, but it barely comes close to a detailed map
with your route information. Having the news read to you is convenient, but many
prefer reading the news at their own pace. A smart display would be a product that would be
able to answer all of these concerns, while staying smoothly modern. The Nest thermostat has a
small display for information. However, it is not intended for interaction. The interface
can be clunky, and not something an average consumer would interact with on a day-to-
day basis. The recently Kickstarted Perseus hides a screen and computer behind a two-way
mirror. This allows users to interact with the mirrors applications via touch screen, voice,
and camera controls. Perseus, however, is a finished product, and does not allow
user hardware customization. It claims to have an available API and third party
applications,

Dept., of CSE 2021-2022 Page 6


SMART MIRROR

alternatives are also currently available. Both the MirrorMirror and Smart-
Mirror projects provide an application to display information on a monitor behind a mirror.
However, these require legwork on the user end, as not all users are willing to manually
construct the project from scratch. Manual configuration and tinkering with modules can be a
tedious and difficult process.

3.1 Existing System


The existing methods were surveyed of creating smart interactive mirror system. Smart
Mirrors are developed mostly for the purpose to display time, date, and weather forecast. Some
also contains To-Do lists, traffic information, and notifications. Later, it got upgraded
with music player and voice recognition. Thus, it can be personalized as per the requirements.

Dept., of CSE 2021-2022 Page 7


SMART MIRROR

3.2 Proposed System


We propose to build this smart piece of hardware by keeping in mind all the requirements and
drawbacks of existing system. Along with time, date, and weather forecast related information,
we also aim at implementing module which can feed news headlines from
various sources. More importantly we aim at implementing human Detection System.
This will display the feeds only when the human face is detected and will turn off the system
if no face is detected to save electricity and CPU power.

Fig 1.1: Smart Mirror for Personalized Medicine

Dept., of CSE 2021-2022 Page 8


SMART MIRROR

Chapter 4

APPROACHES AND METHODS

4.1 Technologies
Used
Below are a list of technologies that can be used for smart mirrors. Being a web-
based application, we used a variety of web tools:

• HTML

• CSS

• JavaScript

• NodeJS

• Electron

• GitHub

• Travis CI

• Raspberry Pi

• Amazon Alexa Voice Service

The primary hardware component for our system is the Raspberry Pi. In particular,
Raspberry Pi 3 is used as it maintains the same price point but offers additional processing
power, more RAM, and offers onboard bluetooth and WiFi for connectivity. The Raspberry
Pi was selected for its ease of use and availability to the hobbyist community. The Raspberry
Pi is capable of running several flavors of Linux, all of which should be capable of
running our software platform.
In order to display content, NodeJS and Electron were chosen. Electron
building multi- platform applications over a NodeJS base. NodeJS runs as the main
server and hosts web content using JavaScript. The server also has extensions to
interact with the Raspberry Pi‟s hardware GPIO so future users may add additional IoT
connectivity. Using Electron, a minimal web browser is launched to display the content
hosted by the server. Together, the application is able to be used on a wide variety of
computers and is highly scale-able - exactly what was needed to meet the requirements.

Dept., of CSE 2021-2022 Page 9


SMART MIRROR

future users who may wish to modify the system. Using unfamiliar technologies
and programming languages would increase the barrier for entry and deter potential
users who may not have as much of a technological background. Electron package
called
‟electron- boilerplate‟ is also used. This package provides a faster start to application
development and allows for more integrated testing as well as the potential to build
release executables for multiple systems.
In order to host the source code and other components of the project, a version control system
was necessary. GitHub was chosen for its familiarity and compatibility with other
technologies. GitHub allowed for multiple developers to work on the project at once and keep
track of version history. Other users can access the project from GitHub and obtain any
version of the project.
Because of GitHub‟s compatibility with other software, we can chose to use Travis CI to run
tests on our system. On any change in the GitHub repository, Travis CI runs all tests we have
written and reports the results. This helps track changes in the system‟s functionality and catch
bugs as they are introduced.

4.2 System Requirements

The microcontroller used to control the mirror and the LCD displays will need to be powered
by a 5V power supply. This will not need to be portable as the mirror will be stationary after its
initial installation. A 3.3V regulator will need to be included for some components.
Therefore, a 5V wall wart power supply and an on chip voltage regulator are the best choices to
meet the power requirements. The embedded system used in the mirror will need to be able to
interface with a WiFi interface as well as multiple LCD displays. The WiFi will need to be able
to work within a home, so it should be sensitive enough to pick up the signal from a
home WiFi router. The system will need to be able to take user input to program the user's
location, initial SSID information, and switch what data is being displayed on the
auxiliary screen. There will need to be communication from a motion sensor, which will need
to sense motion up to about 10 feet in front of the mirror, to determine if a person is present
and the system needs to be woken from its sleep state. The displays must be able to show all
relevant text and icons, and refresh quickly enough to allow for regular information updates.
Overall, all the code must be compact enough to fit and run on the microcontroller we plan to
use. The mirror will be around 1.5‟ by 1.5‟, so all the hardware will need to fit

Dept., of CSE 2021-2022 Page 10


SMART MIRROR

hardware must be able to be mounted securely and neatly to the back of the mirror so that it
will hold its position when mounted on the wall. Below given are the basic objects for
building a smart mirror.

4.3 Overall System

The overall system has been broken down into the 5 subsystems: The On/Off
Subsystem, Internet Subsystem, User Interface Subsystem, Speaker Subsystem, and
Display Subsystem. The connectivity of the entire system can be seen in the figure
below. The User Interface Subsystem takes user input to determine the SSID, password,
zip code, and a news source from which to display the headlines and writes it into
nonvolatile memory. This information is read out of memory and is out of memory and
passed to the Internet Subsystem. The Internet Subsystem connects to the internet via WiFi
and parses the time, weather, and news headlines from the sources selected in the User
interface. The data parsed by the Internet Subsystem is saved into arrays that can be printed
onto the screens by the Display Subsystem. The On/Off Subsystem runs off a motion
sensor and determines whether the system is in sleep mode or is actively pulling and
displaying data to the screens.
Dept., of CSE 2021-2022 Page 11
SMART MIRROR

Fig 1.2: Overall System Flow Diagram

4.3.1 Operation and Design of On/Off Subsystem

Fig 1.3: Flow Diagram of On/Off Subsystem

The system overall deals with determining whether or not there is a person in front of
the mirror or not. As of right now the group plans to use HC-SR501 PIR
Motion Detector to detect a human.

Dept., of CSE 2021-2022 Page 12


SMART MIRROR

The PIR Motion Detector is used over other options such as a photocell because of a
PIR Motion Detector is not too aesthetically displeasing, while triggering a high or a
low voltage rather than current. We plan to interface the PIR Motion Detector with the Arduino
Uno but could be interfaced with an ESP microcontroller. All of these choices would suffice as
there are examples in the Arduino IDE to help us get through any potential roadblocks along
the way.

Moving forward with this system we will need to consider how to effectively put a current-
draining resistor on the mirror in order to get rid of static voltages. We also need to consider
the time-delay and sensitivity adjustments as seen on top of the figure below that are available
with this PIR Motion Detector as well as a repeat or single trigger option that is in the red box
in order to provide the most pleasant user experience.

So far the PIR sensor is tested in the Arduino IDE by digitally reading the voltage level from
the middle prong at the bottom of figure below and outputting whether there is motion
detected accordingly. After seeing that the voltage level changed based off if one‟s hands had
passed the capacitors on the PIR Motion Detector or not, we concluded that the PIR Motion

Detector works.

Fig 1.4: PIR Motion


Detector

Dept., of CSE 2021-2022 Page 13


SMART MIRROR

4.3.2 Internet Subsystem

Fig 1.5: Flow Diagram of Internet Subsystem

The internet subsystem deals with being able to retrieve information such as weather,
time, news or any other applicable information from the internet to be displayed on the mirror.
An ESP microcontroller or similar device will be the device pulling the data over a WiFi signal
and communicate via I2C/SPI to the LCDs on the mirror.
The choice for considering both of these device is because of their ability to connect to the
internet while still have the capability of communicating with I2C/SPI to the mirror. Arduino
IDE is chosen for this subsystem, as it is flexible in ways to retrieve information with either
using get http functions or parsing with javascript. For instance in order to retrieve the time, we
are able to connect to a Network Time Protocol that would give us the Greenwich Mean Time,
and would translate from the time accordingly based on the user‟s location.

It is also wanted to retrieve the local weather data, so we decided to use underground‟s API for
underground‟s API for any location that is based off the user‟s inputted zip code. code.
underground provides a webpage of the data relevant to the user‟s needs including including
the location, time, and weather in javascript. Arduino allows us to use the the
“ArduinoJson.h” library that allows one to easily parse data from character arrays arrays
using javascript. Although ideally we plan for the zip code to be read from the user‟s setting on
a website, to test the subsystem we hard coded the zip code to be one of South South Bend‟s
zip codes 46617. An illustration of the software program
Dept., of CSE 2021-2022 Page 14
SMART MIRROR

Fig 1.6: Flow Diagram of Software for Internet Subsystem

4.3.3 User Interface

Fig 1.7: Flow Diagram of User Interface Subsystem

The user interface subsystem allows the user to update the settings of the mirror to connect to
their home wifi and display data relevant to their geographical location.
The ESP microcontroller must be configured to run as an access point server upon
initial boot up as well as when the user desires to edit the settings of the mirror, as well as

Dept., of CSE 2021-2022 Page 15


SMART MIRROR

The ESP microcontroller was chosen due to its ability to be configured as an access point as
well as its ability to connect to the WiFi. The user is required to enter the ssid and password to
allow the chip to connect with the WiFi as well as the user‟s zip code. The zip code code
was chosen as a parameter as it will allow for the weather and time for the user‟s location
location to be pulled by the internet subsystem and reduces the risk for the incorrect location
location to be input. The system is set to act as an access point upon powering the board on.
After being powered on, it will check to see if there are valid credentials to connect to WiFi. If
there are, then the chip will move on to the main function, if not, it will create an access
point to input WiFi credentials. This was chosen as the mirror will be stationary and
thus the information should remain the same after the initial boot up. If the location changes,
the chip will not be able to connect to the network and will generate an access point to adjust
the settings.
The ESP8266 was programmed using the Arduino IDE and utilizing the “ESP8266WiFi.h”,
“ESP8266WebServer.h”, and “EEPROM.h” libraries. These were chosen as they are well
documented and allow for custom html form data to be added. This enabled the for textboxes
and dropdown menus to be added to allow the zip code, SSID, password, and additional
information to be input. When access point mode is initiated, a WiFi hotspot starting with
“ESP” should become available. When prompted for a password, it is necessary to input the
password “password” to connect to access point. Once logged on, the user interface will be
available at the chips default IP address of 192.168.4.1. After entering data into the interface,
the data will be saved as a string and then written into EEPROM. Additionally, these allow for
a pleasant and user friendly interface to be accessed at the default of the chip, as shown

below,

Fig 1.8: User Interface Web pa

Dept., of CSE 2021-2022 Page 16


SMART MIRROR

To test the system, the code was uploaded to the chip and the web page was accessed from a
mobile device. After the after the data was input, as the data was being input into EEPROM,
what was being written into EEPROM was printed to the monitor. The chip was then powered
off and then powered back on and the string was read out of EEPROM. To ensure the correct
data was saved, the strings from EEPROM were printed to the monitor

Fig 1.9 : Flow Diagram of Software for User Interface Subsystem

4.3.4 Display Subsystem:

This subsystem takes information retrieved by the Internet Subsystem, creates the appropriate
textual outputs, and sends the desired information via SPI to each of the tft LCD screens. The
settings used to organize the display of data will be based on the user‟s last input to the user
interface subsystem. The system will continually exchange data with the internet subsystem to
update the displays regularly.
There will be four display screens in this subsystem. All are Adafruit brand tft LCD displays,
chosen for their ease of use and flexibility. The first screen is a 1.8” display, and will be used to
be used to show the current time. The second screen will be another 1.8” display that will
show an icon relating to the current forecast. The third screen will be a 2.8” display, and will be
will be used to show the daily weather. The fourth screen will be another 2.8” display, and
and will be used to show further information. One of the 1.8” 1.8”
displays was
Dept., of CSE 2021-2022 Page 17
SMART MIRROR

The displays will be controlled from the ESP microcontroller. Connection with
the display hardware will be done with the ST7735 library and ILI9341 library
for the
1.8” and 2.8” displays respectively, and graphics functionality will be achieved with the
Adafruit GFX library. All three libraries have been modified to reduce the
memory requirements of the microcontroller, as many of the functions included are not used.
Each display has five wires running to it: power, ground, chip select, MOSI, and clock.

The only unique wire for each is the chip select, all others are shared. The microcontroller sets
which board will be communicated with via the chip select pin. Diagrams of the subsystem
connections are included below.

Dept., of CSE 2021-2022 Page 18


SMART MIRROR

Display 1 is set up to receive a float variable of the current time from the internet subsystem.
The float is but in a useable buffer, and a colon is added to make the time easier to
understand. The time will be available in either a 12 or 24 hour format, depending on
the setting the user chose during setup. Time will always come into the subsystem in
24 hour format, but if 12 hour format is required the system will update the value accordingly.

Additionally, when the time is only three digits long, the text will automatically be scaled up
and repositioned to allow for the largest and most visible information possible. Shown below
are displays of a full 4 digit time, a three digit time with padding, and a three digit time with
size increased.

Display 2 is set up to receive an integer from 1 to 5, where each number represents a current
weather condition. The possibilities are sunny, cloudy/overcast, raining,
storming, and snowing. An icon depicting the condition will be shown on display 2. To save
space on the microcontroller and increase execution speed, the icons were drawn manually
instead of being loaded from bmp files. This was done by positioning various elementary
shapes into buffers using the adafruit gfx library. Circles, triangles, lines, and individual pixels
were all utilized.
Dept., of CSE 2021-2022 Page 19
SMART MIRROR

Examples of each icon can be seen below (take note that the coloring looks slightly
off in photos, but the images are pure black and white).

Display 3 is set up to receive text information from the internet subsystem in the form
of character arrays. This information will be put up on the display as it comes in, and will be
updated as much as possible. Because this is a larger screen, it allows for more information to
be shown at once. At a minimum, the temperature, humidity, and the daily forecast will
be shown. The top left and top right will show the temperature and humidity respectively. If the
forecast is the only other information to be shown, it will be along the bottom of the screen.

Dept., of CSE 2021-2022 Page 20


SMART MIRROR

The scrolling feature is achieved with reasonable speed by only updating „cells‟ on the display
where changes occur. The character array is processed into small sections, which are sent to the
display backed with black coloring so that they can overwrite current characters.
This makes for smooth scrolling and readable text.

Display 4 is able to receive and display any extra information as needed from
the internet subsystem. Based on the style of information the text can be large or small,
scrolling or motionless, and static or changing. Some information that might be
displayed includes sports scores, stock information, an rss feed, or a news ticker.

It is possible for all displays to show the text and images in color. It is unlikely that the user
will want this functionality, as color does not show through the mirror as well, but it
will nonetheless be available. Examples can be seen below, where the sun has been colored
yellow and the storm cloud has been colored grey, blue, and yellow for the cloud, rain, and
lightning respectively.

4.3.5 Speaker Subsystem

The speaker subsystem allows for the user to be able to play music through the mirror via a
bluetooth connection. Once the mirror has connected to the bluetooth device (likely a phone), it
will continuously receive data from the device and will output music accordingly. To enable a
simpler and cheaper mirror, a premade bluetooth speaker was used. Instead of running the
bluetooth connection and control information through the microcontroller, the speaker handles
the majority of it, leaving little for the microcontroller.

Dept., of CSE 2021-2022 Page 21


SMART MIRROR

The TaoTronics Wireless Pocket Boombox was chosen for its price
and performance.The speaker has been disassembled to allow for modifications, and to
ensure it
would fit behind the mirror glass. A diagram of subsystem connections is included below.

There were two main modifications to the TaoTronics speaker. First, the speaker
drivers themselves were removed in order to have more flexibility in mounting
position. Testing was done to see if larger drivers would produce better sound, but it was
determined the internal amplifier was not powerful enough. The second modification was
adding hardware to make the system controllable by the microcontroller. To do this,
wires were added across the contacts of the various surface mount buttons on the
speaker. In this way, either the ESP microcontroller can control the features or the
buttons can be run externally (allowing for better buttons and more straightforward
construction). An image of the disassembled device can be seen below (green wires are
for power, red/blue are for pairing).

Dept., of CSE 2021-2022 Page 22


SMART MIRROR

For control of the buttons, either the microcontroller can automatically connect the wires, or a
button can be added externally for user access. When the microcontroller is used, it must be
enabled for a precise amount of time to achieve the desired function, rather than reset
the device. The following times were determined for successful operation: pairing button: 1-
1.5 seconds, on button: 1.2-2 seconds, off button: 3-3.5 seconds.
One additional consideration that needs to be made for the speaker subsystem is
whether a flexible membrane needs to be added to allow pressure in the system to equalize.
Three such membranes were included in the speaker enclosure, but it is as of now unknown
whether this will be necessary or not. If it is included, the existing membranes will simply be
attached to the frame built for the mirror.

4.3.6 Interfaces

The User Interface subsystem will take user input to determine what the SSID and password
for the WiFi, as well as other relevant data which will be saved to EEPROM. When
this information is read out of EEPROM, it will need to be passed along to the
Internet subsystem in order to connect to the internet and pull weather and news data from the
correct location. The User Interface subsystem and Internet subsystem interface need to
be able to reliably exchange this

Dept., of CSE 2021-2022 Page 23


SMART MIRROR

The Internet subsystem will need to interface with the Display subsystem in order to
pass along the correct information to be displayed. The Internet subsystem needs to be capable
of reading relevant data from a website and parsing it into strings which can be transmitted via
SPI to the different displays mounted behind the mirror. The On Off subsystem will interface
with all of the Display subsystem as well as the Speaker subsystem. When the
On Off subsystem times out, it will cause the displays and speaker to turn off and
when the subsystem is triggered, it will signal for the displays to be turned back on and to
display data, as well as signal for the Bluetooth speaker to turn on.

4.4 Algorithms

There are two algorithms that will be needed to run the system those are for face recognition
and speech to text conversion. For face recognition 'Eigenfaces', 'LBPH(Local Binary Pattern
Histogram)', 'Fisherfaces' and 'OpenFace' were considered. Eigenfaces is based on statistical
approach which uses principal components of face for detection. Fisherfaces
is modified version of Eigenfaces. Eigenfaces does not make the difference between two
pictures from different classes during the training part which Fisherfaces can do. In LBPH
grayscale picture is used for face recognition. The LBPH works in block of 3x3 pixels.
OpenFace is face recognition library based on Google's FaceNet system. OpenFace
works using deep convolutional neutral network.
For face recognition for our system we found OpenFace as the best suitable algorithm.
OpenFace came into picture a couple of years back but due to its high accuracy was adopted
widely. OpenFace uses Torch, a scientific computing framework to do training offline that is
only once training is performed by OpenFace on hundreds and thousands of
images and handed over to the user as a ready to use product which does not need repeated
training.
In Torch feature extraction is performed using deep neural network which needs to be
performed only once and results are passed to the Neutral network part for further processing.
The face detection is performed by dlib's pre-trained detector, the face is detected from
several images. The detected face is then passed for preprocessing and after that
to Convolutional Neural Network(CNN). The CNN then uses features extracted in the
first part(Torch) for predicting class of unknown person.
The conversion of speech to text is done using Sonus technology. Sonus enables you to easily
add VUI(Voice User Interface) to any software or hardware project. Sonus is always listening

Dept., of CSE 2021-2022 Page 24


SMART MIRROR

4.5 Raspberry pi
The Raspberry Pi (/paɪ/) is a series of small single-board computers developed in the United
Kingdom by the Raspberry Pi Foundation to promote teaching of basic computer science in
schools and in developing countries. The original model became far more popular than
anticipated, selling outside its target market for uses such as robotics. It does
not include peripherals (such as keyboards and mice) or cases. However, some
accessories have been included in several official and unofficial bundles.

Raspberry Pi 3 Model B

The raspberry pi is the most vital part of the mirror, it forms the processing unit of the mirror.
The Pi is like motherboard having all the required constituents which forms a great CPU. Its
size of a credit card and still it can perform like a full-fledged computer. The programming of
Pi is done using Python language. The programs can be first developed and compiled
on windows or any other platform and then can run on Pi. The Pi also has its own inbuilt IDE
to program in languages like C++, Python, C, Java, etc. Installation of OS on Raspberry Pi is
quite a simple process. First you have to download NOOBS along with
Raspbian which is great OS of Raspberry Pi for beginners. The Raspbian is just a flavor of
Debian OS . There are many IDEs available to do programming for Python but what we
found was PyCharm Community is free and good among them who serves our
requirements. QtDesigner is amazing tool to make UI of Python. The GPIO pins on Raspberry
Pi controls the 8-Channel relay which is explained in next sub-section. The Raspberry Pi has
inbuilt Wi-fi and Bluetooth for connectivity purpose as well as it allows 4 USB devices
to be plugged. Python can be used for the script.

Dept., of CSE 2021-2022 Page 25


SMART MIRROR

Chapter 5

RESULTS AND DISSCUSSIONS

On start after giving power supply to mirror the raspberry loads the OS and directly runs the UI
of the mirror, it may take while to load the weather and other internet based widgets to
display the information completely depending on the speed of the home Wi-Fi
network. A power saving mode is also provided to the mirror by attaching a ultrasonic
range detector sensor on the top of the mirror. The ultrasonic sensor activates the mirror and
awakes it when someone comes close enough. Thus, improving the functionality and power
efficiency of the system. On fully loading the information required the mirror now
shows notification from different social sites as per the user has logged in. The events are
loaded from calendar and reminded to the user.

The user can plan route to his destination before leaving home on the mirror. A mass
of entertainment is also loaded on the mirror, as it‟s connected to home Wi-Fi YouTube can be
completely streamed on it and a music app is preloaded to beat your favorite music directly.
Besides several other applications like gallery is also installed to view your pictures on mirror.
The has a greeting pane which automatically prints greeting message according to events and
time of the day. You can book a cab before leaving home using Uber cab booking interface
made using Uber public API. Not only that, a user who knows the working of system well can
extend the ability of the system by adding more feature to it. The Home automation embedded
in this mirror is very easy to use, as you have to simply connect the pins of the appliances to
mirror‟s slots and then you can enjoy the control of appliances by touch interface.

5.1 System Integration Testing

5.1.1Subsystem Integration

To test the subsystem integration, the subsystems were combined by integrating


two subsystems at a time. The User Interface and Internet subsystems were combined
first and tested on the ESP8266 Dev Thing. A set of if statements was created to determine
whether the ESP8266 would boot as an access point, or to connect to the internet.

Dept., of CSE 2021-2022 Page 26


SMART MIRROR

an access point. From there, an SSID, password, and Zip code were input, and news source was
selected from the dropdown menu. It was ensured that this data was being input to
EEPROM by printing the strings to the monitor as the strings were written to
nonvolatile memory. Next, the board was powered off and the position of the variable
was changed to a down state to boot the system to connect to the internet and the
board was powered back on. The data was read out of EEPROM, which was checked by
printing the variables to the monitor. The chip then ran the Internet subsystem to
ensure the variables read out of EEPROM provided the variables as the correct type.
The weather data and news headlines were printed to the monitor to ensure that the user
selections were what was found and parsed by the system.

Fig 2.0: ESP8266 Booted as Access Point, Data Written to EEPROM

Fig 2.1: ESP8266 Booted to Connect to and Parse Data from Interne

Dept., of CSE 2021-2022 Page 27


SMART MIRROR

After the user interface and internet subsystems were integrated, the next subsystem to
integrate was the display subsystem. This required the main program file to utilize the
multiplexer in order to display the information on each LCD display that the user selected in
the User Interface. To test this, one display was added at a time, starting with one of the 1.8”
displays. An inspirational quote was printed out on the screen, as well as the time, and the
weather icons that were created in our code in order to see if the we could
successfully communicate with the LCD. This process demonstrated that the 1.8”
displays would work with the board hardware and software that was created.
Next, a 2.8” display was added to the second display port. The same information that was sent
to the 1.8” display was also sent to the 2.8” display. When both displays were run initially,
there was problem with the multiplexer pins floating and causing the displays to prematurely
clear or have crossfeed between the signals. To solve this problem, pull down resistors were
added to the design. This stopped the floating of the multiplexer pins from adversely affecting
the displays. Unfortunately, while the display was powered on and receiving information, the
displays were showing inverted flashing and the images were inverted. This meant that
the hardware was capable of supporting the multiple screens, but they were not able to be fully
integrated.
Next, the On/Off subsystem was added to the system. To test this, the PIR sensor was
connected to the board. This was set up to turn the entire system on when it detected motion
and started a timer to keep the mirror on for 10 minutes when triggered before being reset and
checked for motion. To test that the system was working, “On” was printed to
the serial monitor when the PIR sensor was triggered. The sensor was initialized as high
so that the system would go through its set up when it was initially turned on.

Finally, the Speaker subsystem was added onto the overall system. Since it was less expensive
to dismantle a prebuilt Bluetooth speaker to connect to the system than to add
a Bluetooth onto the chip, all that was required for integration was connecting the
speaker power to the board and run out a button to sync the speaker with a device.

5.2 Testing Relevance to Overall System

When the systems were integrated, it was possible to show that the system met the
design requirements that were set at the beginning of the project. The Internet
and User Interface subsystems are able to be switched between, meaning that the user
Dept., of CSE 2021-2022 Page 28
SMART MIRROR

display when the mirror is in normal operation. Although the 2.8” displays were not able to be
to be fully integrated, the testing illustrated that the hardware had the capability to support all
the screens and run multiple screens at the same time as well as run screens of different sizes.
The On/Off subsystem testing demonstrated that the power to the display was able to be
controlled by movement of the user, allowing the mirror to turn itself on when a person is
standing in front of it. By connecting the Bluetooth speaker to the board and running out a
button to allow the speaker to sync, the system requirement of having a Bluetooth
speaker built into the mirror.
The input data given to the modules for simulation and testing consists of module-specific
data and conditions. The input had to be relevant to the module being simulated and tested, in
order for an accurate result to be obtained. The test cases were used as a means to check the
correctness of the development process of the Smart Mirror system and to verify and validate
that each functional module of the Smart Mirror system performs its
required task independently as well as all together as one combined functional
unit. The following table represents the simulation process on the different main
functional modules of the Smart Mirror system as well as the results obtained from each
simulation
case.

Table : Simulation and Results

Dept., of CSE 2021-2022 Page 29


SMART MIRROR

5.3 Testing
In order to verify the functionality of the system, several rounds of testing is necessary. Testing
at each stage of development ensures that errors are caught early and addressed before they
cause delays in development and delivery.

5.3.1 Alpha Testing

The first stage of testing for the system is Alpha Testing. This includes testing with
knowledge of the internal functionality (white box) and without knowledge of internal
functionality (black box). Both styles of testing are carried out continuously - at
all stages of implementation and beyond. Testing is carried out across multiple platforms to
that system will be usable for a wider audience.
For White Box Testing, the primary testing method is provided by Travis CI, a
continuous integration service with access to the GitHub repository. As features are
developed, tests are written to verify the functionality of each module of the system and
the system as a whole. Upon completion of a feature or part of the system, each
developer will write a test using the test platform provided by Selenium Webdriver.
Upon any changes in the GitHub repository, all written tests are run to verify the
system. If any test fails, the build is marked as a failure and developers are notified to address
the failing test cases. A test on a module will attempt to pass incorrect values or correct values
and verify that the expected functionality is error-free.
In order to carry out Black Box Testing, Travis CI is also used. Selenium Webdriver was used
to develop tests that verify module functionality without code knowledge. Tests written for
this style provide inputs such as click actions on the web application and verify that the
expected outputs are received. These tests verify results by checking for HTML tags and id‟s
that can be used to programatically determine the functionality of a system. In essence, they
verify that the application displays the correct data without visually inspecting the data.
However, visual inspection is still useful and necessary in smaller quantities. After a feature is
submitted, a developer who did not work on the feature tests the system, ensuring that
the system behaves as expected from an outside standpoint. Any discrepancies are noted as an
issue using GitHub‟s tracking system to make sure that the proper behavior is achieved.

DEPT OF CSE, CEC 2021-2022 Page 30


SMART MIRROR

5.3.2 Beta Testing


The second stage of testing is Beta Testing. After the system is operational for
use, Beta Testing will be important. This includes inviting volunteers to
work with our system and provide feedback for improvements to the design and
user interface. This is an important step in order not only to determine design,
aesthetics, and functionality, but also to root out bugs with different requests from
different people. We will then accommodate user preference and client
requirements, and then perhaps move on to adding extra small functionalities. As
developers, we have a certain view of how our system should behave and be used.
However, not all users will have the same perspective. By utilizing the
outside perspective, we modify the system to be more suitable for end users.
Outside feedback was useful for catching bugs that we as developers saw as features. It
also verified and reinforced our concepts of how particular systems should work. The
most important feedback we received was concerning the implementation of our
module system for developers. It was referred to as having a similar development style
as the Arduino platform. The Arduino system is popular within the
hobbyist community so having familiarity for users will reduce the learning curve and
increase ease of use and development.

5.4 Test Results


By testing throughout the development process, issues with development stopping bugs were
avoided. Several errors that could potentially prevent another developer from continuing work
were caught immediately by the test net provided by Travis CI. Feedback from other users was
also able to guide the further development and improvement of the system. Test results from
Travis CI are shown on the GitHub repository so users can know if the latest codebase is safe
for use. Travis CI also keeps track of all builds - providing a comprehensive test history to help
identify problem areas that may be in need of special attention and improvement.

DEPT OF CSE, CEC 2021-2022 Page 34


SMART MIRROR

Chapter 6

CONCLUSION AND FUTURE ENHANCEMENT

The Smart Mirror will provide the user with an enhanced mirror experience. By making use of
multiple displays, the user can stay updated on the time, weather, and news headlines while
preparing for the day in with the fully functional Smart Mirror. Through an easy to
use interface, the mirror can be easily setup to display data that conforms with their desires.
The mirror is able to connect to the internet and parse the proper data to display. The PIR
sensor ensures that the mirror will always turn on when a person steps up to use it.
Building in a Bluetooth speaker means that the user is also able to play their music directly
from the mirror. mirrors can also be powerful perceptual tools for helping us diagnose our own
mental state.

Future enhancement

Mirror therapy has been shown to provide insight in a clinical context. There is a prevalence of
body dysmorphia where someone perceives (and experiences) a normal healthy weight range as
overweight. An anorexic young woman may look at herself in a mirror and see a reflection that
is greater than her actual size. As Anaïs Nin once said, “We don‟t see things as they are, we see
them as we are.”
Mirrors can be designed as tools to shift our perception and our behaviour in multiple ways by
creating specific realities and corresponding identities. For example, the HiMirror Mini scans
your face to detect flaws and presents you with a detailed analysis of the most
unattractive parts. It displays a percentage result for problem skin areas like wrinkles,
fine lines, complexion, dark circles, red spots and pores.

DEPT OF CSE, CEC 2021-2022 Page 35


SMART MIRROR

REFERENCES

[1] International Journal of Engineering Research & Technology: IoT based Smart Mirror
using Raspberry Pi
[2] International Journal of Engineering Science Invention: A Review Paper Design
and Development of a Smart Mirror Using Raspberry Pi
[3] International Journal for Research in Applied Science and Engineering Technology:
Smart Mirror
[4] International Journal of Scientific and Research Publications: Raspbian Magic Mirror-A
Smart Mirror to Monitor Children by Using Raspberry Pi Technology
[5] International Conference on Intelligent Transportation, Big Data & Smart City: Design
of Smart Mirror Based on Raspberry Pi.

[6] Smart Mirror- Digital Magazine for University Implemented Using Raspberry Pi

[7] Smart Mirror Applications with Raspberry Pi

[8] IAPR Asian Conference on Pattern Recognition : Magic Mirror: An Intelligent


Fashion Recommendation System

DEPT OF CSE, CEC 2021-2022 Page 36


DECLARATION

We do here by solemnly affirm to declare that, the contents of the technical seminar
report submitted to the department of Computer Science and Engineering ,
City Engineering college Bangalore, affiliated to VTU Belgaum, Approved AICTE-New
Delhi, is in majority the courtesy by the referred “National/International journals, papers
presented and published” by the learned authors in the area of their research and also
available in the public domain.

We sincerely acknowledge all of them. This report has been submitted by us to


satisfy the academic requirement affiliating university for the partial fulfillment for
the award of Bachelor of Engineering in Computer Science and Engineering.

KAVYA
(1CE18CS033)

You might also like