0% found this document useful (0 votes)
13 views37 pages

IBM-19100-1662601873 - Project Report

Uploaded by

umesh sankar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views37 pages

IBM-19100-1662601873 - Project Report

Uploaded by

umesh sankar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 37

PROJECT REPORT

A NOVEL METHOD FOR HANDWRITTEN


DIGIT RECOGNITION

Submitted by
PNT2022TMID20756
Jagadish Dhanraj Tidke - 412419104039
Sriram A - 412419104125
Abimannan D - 412419104002
Jagath Guru C - 412419104040
Kambala Sreeharsha - 412419104048
TABLE OF CONTENTS

1 INTRODUCTION 1
1.1 PROJECT OVERVIEW 1
1.2 PURPOSE 1

2 LITERATURE SURVEY 2
2.1 EXISTING PROBLEM 2
2.2 REFERENCES 2
2.3 PROBLEM STATEMENT DEFINITION 5

3. IDEATION AND PROPOSED SOLUTION 6


3.1 EMPATHY MAP CANVAS 6
3.2 IDEATION AND BRAINSTROMING 7
3.3 PROPOSED SOLUTION 8
3.4 PROBLEM SOLUTION FIT 9

4. REQUIREMENT ANALYSIS 10
4.1 FUNCTIONAL REQUIREMENTS 10
4.2 NON-FUNCTIONAL REQUIREMENTS 11

5. PROJECT DESIGN 12
5.1 DATA FLOW DIAGRAM 12
5.2 SOLUTION AND TECHNICAL ARCHITECTURE 13
5.3 USER STORIES 15

6. PROJECT PLANNING AND SCHEDULING 16


6.1 SPRINT PLANNING AND ESTIMATION 16
6.2 SPRINT DELIVERY SCHEDULE 17
7.CODING AND SOLUTIONING 18

8.TESTING 20
8.1 TEST CASES 20
8.2 USER ACCEPTANCE TESTING 22
8.2.1 DEFECT ANALYSIS 22
8.2.2 TEST CASE ANALYSIS 22

9. RESULTS 23
9.1 PERFORMANCE METRICS 23

10. ADVANTAGES AND DISADVANTAGES 25


10.1 ADVANTAGES 25
10.2 DISADVANTAGES 25

11 CONCLUSION 26

12 FUTURE SCOPE 27

13 APPENDIX 28
SOURCE CODE 28
GITHUB 37
PROJECT DEMO 37
CHAPTER 1
INTRODUCTION

1.1 PROJECT OVERVIEW


Machine learning and deep learning play an important role in
computer technology and artificial intelligence. With the use of deep
learning and machine learning, human effort can be reduced in
recognizing, learning, predictions and inmany more areas.

Handwritten Digit Recognition is the ability of computer systems to


recognise handwritten digits from varioussources, such as images,
documents, and so on. This projectaims to let users take advantage of
machine learningto reduce manualtasksin recognizing digits.

1.2 PURPOSE
Digit recognition systems are capableof recognizing the digits from
different sources like emails, bank cheque, papers, images, etc. and in
different real-world scenarios for online handwriting recognition on
computer tablets or system, recognize number plates of vehicles,
processing bank cheque amounts, numeric entries in forms filled up by hand
(tax forms)and so on.
CHAPTER 2
LITERATURE SURVEY

2.1 EXISTING PROBLEM


The fundamental problem with handwritten digit recognition is that
handwritten digits do not alwayshave the same size, width,orientation, and
marginssince they vary from person to person. Additionally, there would be
issues with identifying the numbers becauseof similarities
betweennumerals like 1 and 7, 5 and6, 3 and 8, 2 and 5, 2 and 7, etc. Finally,
the individuality and variation of each individual's handwriting influence the
structure and appearance of the digits.

2.2 REFERENCES

Improved Handwritten Digit Recognition Using Convolutional Neural


Networks(CNN)(2020)
Ahlawat, Savita and Choudhary, Amit and Nayyar, Anand and Singh, Saurabh and Yoon, Byungun

This paper's primary goal was to enhance handwritten digit recognition ability. To
avoid difficult pre-processing, expensive feature extraction, and a complex ensemble
(classifier combination) method of a standard recognition system, theyexamined
different convolutional neural network variations. Their current work makes
suggestions on the functionof several hyper-parameters through thoroughevaluation
utilizing an MNISTdataset. They also confirmed that optimizinghyper-parameters is
crucial for enhancing CNN architecture performance. With the Adam optimizer for
the MNIST database, they were able to surpassmany previouslypublished results with
a recognition rate of 99.89%.Through the trials,it is made abundantly evident how the
performance of handwritten digit recognition is affected by the number of
convolutional layers in CNN architecture. According to the paper, evolutionary
algorithms can be explored for optimizing convolutional filterkernel sizes, CNN
learningparameters, and the quantity of layers and learning rates.

An Efficient And Improved Scheme For Handwritten Digit Recognition

Based OnConvolutional Neural Network (2019)


Ali, Saqib and Shaukat, Zeeshan and Azeem, Muhammad and Sakhawat, Zareen and

Mahmood, Tariq and others

This study uses rectified linear units (ReLU) activation and a convolutional
neuralnetwork (CNN) that incorporates the Deeplearning4j (DL4J) architecture to
recognize handwritten digits. The proposed CNN framework has all the necessary
parameters for a high level of MNIST digit classification accuracy. The system's
training takes into account the time factor as well. The system is also tested by
altering the numberof CNN layers for additional accuracy verification.It is importantto
note that the CNN architecture consists of two convolutional layers, the first with32
filters and a 5x5 window size and the second with 64 filters and a 7x7 window size. In
comparison to earlier proposedsystems, the experimental findings show that the
proposed CNN architecture for the MNIST dataset demonstrates great performance
in terms of time and accuracy. As a result, handwritten numbers are detected with a
recognition rate of 99.89% and high precision (99.21%) in a short amount of time.

Improved Handwritten Digit Recognition Using Quantum K-Nearest

NeighborAlgorithm (2019)

Wang, Yuxiang and Wang, Ruijin and Li, Dongfen and Adu-Gyamfi, Daniel and Tian,
Kaibin and Zhu, Yixin

The KNN classical machine learning technique is used in this research to


enable quantum parallel computing and superposition. They used the KNN algorithm
with quantum acceleration to enhance handwritten digit recognition. When dealing
with more complicated and sizable handwritten digital data sets, their
suggestedmethod considerably lowered the computational time complexity of the
traditional KNN algorithm. The paper offered a theoretical investigation of how
quantum concepts can be applied to machine learning. Finally, they established a
fundamental operational concept and procedure for machinelearning with quantum
acceleration.

Handwritten Digit Recognition Using Machine And Deep LearningAlgorithms(2021)


Pashine, Samay and Dixit, Ritik and Kushwah, Rishika

In this study, they developed three deep and machine learning-based models for
handwritten digit recognition usingMNIST datasets. To determine which model wasthe
most accurate, they compared them based on their individual properties.

Support vector machines are among the simplest classifiers, making


them faster than other algorithms and providing the highest training
accuracy rate in this situation. However,due to their simplicity, SVMs cannot
categorize complicated andambiguous images as accurately as MLP and
CNN algorithms can. In their research, they discovered that CNN
producedthe most precise outcomes for handwritten digit recognition. This
led them to the conclusion that CNN is the most effective solution for all
types of prediction issues, including those using picturedata. Next, by
comparing the execution times of the algorithms, they determined that
increasing the number of epochs without changing the configuration of the
algorithm is pointlessdue to the limitation of a certainmodel, and they
discoveredthat beyond a certain number of epochs, the model begins over-
fitting the datasetand providesbiased predictions.

2.3 PROBLEM STATEMENT DEFINITION


For years, the traffic department has been combatingtraffic law violators.
These offenders endanger not only their own lives, but also the lives of other
individuals. Punishing these offenders is critical to ensuring that others do
not become like them. Identificationof these offendersis next to impossible
becauseit is impossible for the average individual to write down the
licenseplate of a recklessdriver. Therefore, the goal of this project is to help
the traffic department identify these offenders and reduce traffic violations
as a result.
CHAPTER 3
IDEATION AND PROPOSED SOLUTION

3.1 EMPATHY MAP CANVAS


3.2 IDEATION & BRAINSTORMING
3.3 PROPOSED SOLUTION

S.N PARAMETER DESCRIPTION


O

1 Problem Statement To create an application that recognizes


handwritten digits

The application takes an imageas the input and


2 Idea/Solution accurately detects the digits in it.
Description

Instead of recognizing every text, the


3 Novelty / Uniqueness application accuratelyrecognizes only the digits

This application reduces the manual tasks that


Social Impact / need to beperformed. This improves productivity
4 CustomerSatisfaction in the workplace.

The application can be integrated with traffic


surveillance cameras to recognize vehicle
number plates
5 Business Model
The application can be integrated with Postal
systemsto recognize the pin codes effectively

The application can easily be scaled to accept


6 Scalability of the Solution multiple inputs and process them parallelly to
further increaseefficiency
3.4 PROBLEM SOLUTION FIT
CHAPTER 4
REQUIREMENT ANALYSIS
4.1 FUNCTIONAL REQUIREMENTS

FR.NO FUNCTIONAL SUB REQUIREMENTS


REQUIREMENTS
Get access the MNIST dataset
Analyze the dataset
FR-1 Model Creation
Define a CNN model
Train and Testthe Model
Create a website to let the user
recognize handwritten digits.
Create a home page to uploadimages
FR-2 Application
Development Create a result page to displaythe
results
Host the website to let the usersuseit
from anywhere
Let usersupload images ofvarious
formats.
Let usersupload images ofvarious size

FR-3 Input ImageUpload Prevent usersfrom uploading


unsupported image formats
Pre-Process the image to use iton the
model
Create a database to store allthe
input images

Display the result from the model


Display input image

FR-4 Display Results Display accuracy the result


Display other possible predictions
with their respectiveaccuracy

4.2 NON FUNCTIONAL REQUIREMENTS

NFR NON-FUNCTIONAL DESCRIPTION


REQUIREMENTS
The application must be usablein all
NFR-1 Usability devices

The application must protectuser


NFR-2 Security uploaded image

The application must give anaccurate


NFR-3 Reliability result as much as possible

The application must be fastandquick to


NFR-4 Performance loadup

The application must be available to


NFR-5 Availability use all the time

Theapplication must scalealongwith the


NFR-6 Scalability userbase
CHAPTER 5
PROJECT DESIGN
5.2 SOLUTION & TECHNICAL ARCHITECTURE
5.3 USER STORIES

User Type Functional User Story / Task Acceptance Priority Release


Requirements User Story Criteria
Number
As a user, I
should beable to User can access
Accessing the USN-1 access the the application High Sprint-4
Application application using the browser
fromanywhere on any device
and use onany
devices
As a user, I should
Uploading USN-2 be ableto upload User can High Sprint-3
Image imagesto predict upload
thedigits image
Customer s
As a user, I
Viewing USN-3 should beable to The result of the High Sprint-3
theResult view the results prediction is
s displayed
As a user, I The accuracy of
Viewing Other USN-4 should beable othervalues must Mediu Sprint-4
Prediction to see other be displayed m
closeprediction
s
As a user, I
should have a The usage
Usage USN-5 usage instruction instruction is Mediu Sprint-4
Instruction to knowhow to displayed on the m
use the home page
application
CHAPTER 6
PROJECT PLANNINGAND SCHEDULING

6.1 PLANNING AND SPRINTESTIMATION

STORYPOINTS
SPRINT USER STORY/TASK PRIORITY TEAM
MEMBERS

Getthe dataset 3 High Jagadish

Abimannan D
Explore the data 2 Medium
Sprint - I Sriram A
Sriram A
Data Pre-Processing 3 High
Jagadish
Prepare Jagadish
3 High
training andtesting Jagath Guru
data
Create the model 3 High Abimannan D
Sprint - II
Train the model 3 High Sriram A
Test the model 3 High Jagath guru
Jagath Guru
Improve the model 2 Medium
Sree Harsha
Sprint - III Save the model 3 High Sree Harsha
Sree Harsha
Build the Home Page 3 High
Sriram A
Setup a database to Abimannan D
store input images 2 Medium
Jagadish

Integrate Abimannan D
the model 3 High
Jagadish
with the
application

Sree Harsha
Test the 3 High
application Sriram A
6.2 SPRINT DELIVERYSCHEDULE

STORY POINTS
SPRINT
TOTAL SPRINT END COMPLETED
SPRINT RELEASE
SPRINT STORY DURATION START DATE DATE (AS ON
DATE
POINTS (PLANNED) PLANNED
(ACTUAL)
DATE)

24 Oct 29 Oct 29Oct


Sprint - I 11 6 Days 11
2022 2022 2022

31 Oct 05 Nov 05 Nov


Sprint - II 9 6 Days 9
2022 2022 2022

07 Oct 12 Nov 12 Nov


Sprint - III 10 6 Days 10
2022 2022 2022

14 Nov 19 Nov 19 Nov


Sprint - IV 9 6 Days 9
2022 2022 2022
CHAPTER 7
CODING & SOLUTIONING
CHAPTER 8
TESTING
8.1 TEST CASES

Test caseID Feature Component Test Expected Actual Result Status


Type Scenario Result

Verify UI
The Home Working as
elements in
HP_TC_001 UI Home Page page must be expected PASS
the Home
displayed
Page
properly

Check if the UI The UI is not


elements are displayed
displayed The Home properly in
HP_TC_002 UI Home Page properly in page must be screen size 2560 FAIL
different screen displayed x 1801
sizes properly in all and 768 x 630
sizes
The input
Check if user imageshould
HP_TC_003 Functional Home Page can upload their be uploaded to Working as PASS
file theapplication expected
successfully

Check if user The


User is able to
cannot upload application
HP_TC_004 Functional Home Page uploadany file FAIL
unsupported should not
files allowuser to
select a non
image file

Check if the
page redirectsto The page
HP_TC_005 Functional Home Page the result page shouldredirect Working as PASS
once theinputis to theresults expected
given page
Check if all
All the routes Working as
theroutes are
BE_TC_001 Functional Backend should properly expected PASS
working
work
properly

Check if the The model


Working as
model can shouldrescale
M_TC_001 Functional Model expected PASS
handle various the imageand
image sizes predict the
results

Check if the
The model Working as
model
M_TC_002 Functional Model shouldpredict expected PASS
predicts
the number
thedigit

The model fails


Check if the The model to identify the
model can shouldpredict digit since the
M_TC_003 Functional Model handle complex the number in model is not FAIL
inputimage the complex built to handle
image such data

Verify UI
The Result Working as
elements in
RP_TC_001 UI Result Page page must be expected PASS
the Result
displayed
Page
properly

The size of
Check if the
The input image theinput image
input image is exceeds the
RP_TC_002 UI Result Page should be FAIL
displayed display
displayed
properly container
properly

Check if the
The result Working as
result is
RP_TC_003 UI Result Page shouldbe expected PASS
displayed
displayed
properly
properly
8.2 USER ACCEPTANCE TESTING
8.2.1 DEFECT ANALYSIS

Resolution Severity Severity Severity Severity Total


1 2 3 4

By Design 1 0 1 0 2

Duplicate 0 0 0 0 0

External 0 0 2 0 2

Fixed 4 1 0 1 6

Not Reproduced 0 0 0 1 1

Skipped 0 0 0 1 1

Won’t Fix 1 0 1 0 2

Total 6 1 4 3 14

8.2.2 TEST CASE ANALYSIS

Total Not
Section Fail Pass
Cases Tested

Client Application 10 0 3 7

Security 2 0 1 1

Performance 3 0 1 2

Exception Reporting 2 0 0 2
CHAPTER 9
CHAPTER 10
ADVANTAGES & DISADVANTAGES

● ADVANTAGES
▪ Reduces manualwork

▪ More accurate than average human

▪ Capable of handling a lot of data

▪ Can be used anywherefrom any device

● DISADVANTAGES
▪ Cannot handlecomplex data

▪ All the data must be in digital format

▪ Requires a high performance server for fasterpredictions

▪ Prone to occasional errors


CHAPTER 11
CONCLUSION
This project demonstrated a web application that uses machine
learning to recognise handwritten numbers. Flask, HTML, CSS,
JavaScript, and a few other technologies were used to create this
project. The model predicts the handwritten digit using a CNN network.
During testing, the model achieved a 99.61% recognition rate. The
proposedproject is scalableand can easilyhandle a huge number of
users.Since it is a web application, it is compatible with any device that
can run a browser. This project is extremely useful in real-world
scenarios such as recognizing number plates of vehicles, processing
bank cheque amounts, numeric entries in forms filled up by hand (tax
forms) and so on. There is so much room for improvement, which can
be implemented in subsequent versions.
CHAPTER 12
\

FUTURE SCOPE

This project is far from complete and there is a lot of room for improvement.
Some of the improvements that can be made to this projectare as follows:

➤ Add supportto detect from digits multipleimages and save the

results

➤ Add support to detectmultiple digits

➤ Improve modelto detect digitsfrom complex images

➤ Add supportto different languagesto help users from all over the

world

This project has endless potentialand can always be enhancedto become better.
Implementing this concept in the real world will benefit several industries and reduce the
workload on many workers,enhancing overall work efficiency.
APPENDIX

SOURCECODE
MODEL CREATION
FLASK APP

RECOGNIZER
HOME PAGE (HTML)

HOME PAGE (CSS)


HOME PAGE (JS)

PREDICT PAGE (HTML)


GITHUB
https://github.com/IBM-EPBL/IBM-Project-19100-1659693254

PROJECT DEMO
https://www.dropbox.com/s/7yifd92lvqrrum2/Project%20Demo.mp4?dl=0

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