You are on page 1of 42

EB MANAGEMENT USING IMAGE RECOGNITION

PROJECT REPORT

By

GOKUL GANESH D (RA2211003040022)


GUHAN M (RA2211003040056)
PRANESH VELAN(RA2211003040058)

Under the guidance of

Dr Sridevi Sridhar

In partial fulfilment for the Course

of

21CSC203P – ADVANCED PROGRAMMING PRACTICE

in the

Department of Computer Science & Engineering

FACULTY OF ENGINEERING AND TECHNOLOGY

Department of Computer Science and Engineering

SRM INSTITUTE OF SCIENCE AND TECHNOLOGY

VADAPALANI CAMPUS

NOVEMBER 2023
SRM INSTITUTE OF SCIENCE AND TECHNOLOGY

Vadapalani Campus

BONAFIDE CERTIFICATE

Certified that this minor project report for the course 21CSC203P ADVANCED

PROGRAMMING PRACTICE entitled in "EB MANAGEMENT USING IMAGE

RECOGNITION" is the bonafide work of Gokul Ganesh D(RA2211003040022), Guhan

M(RA2211003040056), Pranesh Velan(RA2211003040058) who carried out the work under

my supervision.

SIGNATURE
Dr Sridevi Sridhar
Assistant Professor (Sr. G)
Department of Computer Science & Engineering
SRM Institute of Science and Technology
Vadapalani campus
ABSTRACT

EB management using image recognition mainly focuses on the calculation of


units consumed during the specified time and the money to be charged by the
electricity offices. This project aims at serving the department of electricity by
computerizing the billing system. This computerized system will make the
overall billing system easy, accessible, comfortable, and effective for
consumers. The main aim of our project is to satisfy customer by saving their
time by payment process, maintaining records, and allowing the customer to
view his/her records and permitting them to update their details. Tessaract OCR
is used in this project. Tesseract is an open source optical character recognition
(OCR) platform. OCR extracts text from images and documents without a text
layer and outputs the document into a new searchable text file, PDF, or most
other popular formats. Our application has been tested multiple times and
presented to the users as a finished product.
ACKNOWLEDGEMENT

We express our heartfelt thanks to our honorable Vice Chancellor Dr. C.


MUTHAMIZHCHELVAN, for being the beacon in all our endeavors.

We would like to express my warmth of gratitude to our Registrar Dr. S.


Ponnusamy & Dr S Ramachandran Director (Academics), for their encouragement.
We express our profound gratitude to our Dean (College of Engineering and
Technology) Dr. CV Jayakumar for providing the support and infrastructure to perform the
project.
We wish to express my sincere thanks to our Head of the Department Dr S
Prasanna Devi for her constant encouragement and support.

We are highly thankful to our Course Faculty-in-Charge Dr Sridevi Sridhar for


her assistance, timely suggestion and guidance throughout the duration of this project.

Finally, we thank our parents and friends near and dear ones who directly and
indirectly contributed to the successful completion of our project. Above all, I thank the
almighty for showering his blessings on me to complete the project.
TABLE OF CONTENTS

1 INTRODUCTION 6
1.1 PROJECT AIMS AND OBJECTIVES 6
1.2 BACKGROUND OF PROJECT 6
1.3 OPERATION ENVIRONMENT 7

2 SYSTEM ANALYSIS 8
2.1 SOFTWARE REQUIREMENT SPECIFICATION 8
2.2 EXISTING VS PROPOSED 14
2.3 SOFTWARE TOOL USED 15

3 SYSTEM DESIGN 17
3.1 TABLE DESIGN 17
3.2 DATA FLOW DIAGRAM’S 18

4 SYSTEM IMPLEMENTATION 25
4.1 MODULE DESCRIPTION 25
4.2 SCREENSHOTS 25

5 SYSTEM TESTING 35
5.1 UNIT TESTING 35
5.2 INTEGRATION TESTING 36

6 CONCLUSION & FUTURE SCOPE 37

7 REFERENCES 39
CHAPTER 1
INTRODUCTION

This chapter gives an overview about the aim, objectives, background and
operation environment of the game.

1.1 PROJECT AIMS AND OBJECTIVES

The project aims and objectives that will be achieved after completion
of this project are discussed in this subchapter. The aims and objectives are
as follows:
 This project aims at serving the department of electricity by computerizing the
billing system.
 It mainly focuses on the calculation of units consumed during the specified time
and the money to be charged by the electricity offices.
 To read readings, characters from images, to save the values in database for
further calculation, to subtract previous image’s meter readings, to display the
meter readings within a specific period of time
 This computerized system will make the overall billing system easy, accessible,
comfortable, and effective for consumers.

1.2 BACKGROUND OF PROJECT

To design the billing system more service oriented and simple, the following
features have been implemented in the project. The application has high speed of
performance with accuracy and efficiency. The software provides facility of data
sharing, it does not require any staff as in the conventional system. Once it is
installed on the system only the meter readings are to be given by the admin where
customer can view all details, it has the provision of security restriction. The
electricity billing software calculates the units consumed by the customer and makes
bills, it requires small storage for installation and functioning. There is provision for
debugging if any problem is encountered in the system. The system excludes the
need of maintaining paper electricity bill, administrator does not have to keep a
manual track of the users, users can pay the amount without visiting the office.
Thus, it saves human efforts and resources.
1.3 OPERATION ENVIRONMENT

PROCESSOR INTEL CORE PROCESSOR FOR


BETTER PERFORMANCE

OPERATING SYSTEM WINDOWS 11

MEMORY 4GB RAM

MINIMUM 3GB FOR


HARD DISK SPACE DATABASE USAGE
FOR FUTURE

DATABASE MYSQL WORKBENCH


CHAPTER 2
SYSTEM ANALYSIS

In this chapter, we will discuss and analyze about the developing process of
Java EB management including software requirement specification (SRS)
and comparison between existing and proposed system. The functional and
non- functional requirements are included in SRS part to provide complete
description and overview of system requirement before the developing
process is carried out. Besides that, existing vs proposed provides a view of
how the proposed system will be more efficient than the existing one.

2.1 SOFTWARE REQUIREMENT SPECIFICATION

2.1.1 GENERAL DESCRIPTION

PRODUCT DESCRIPTION:

The conventional electricity billing system is uneconomical, requires many


staffs to do simple jobs and is a lengthy process overall. In order to solve this
lengthy process of billing, a web based computerized system is essential. This
proposed electricity billing system project overcomes all these drawbacks with
the features. It is beneficial to both consumers and the company which provides
electricity.

PROBLEM STATEMENT:

The problem occurred before having computerized system includes:

The conventional system of electricity billing is not so effective; one staff must
visit each customer’s house to note the meter readings and collect the data. Then,
another staff must compute the consumed units and calculate the money to be paid.
Again, the bills prepared are to be delivered to customers.

Finally, individual customer must go to electricity office to pay their dues.


Hence, the conventional electricity billing system is uneconomical, requires many
staffs to do simple jobs and is a lengthy process overall.
In order to solve this lengthy process of billing, a web based computerized
system is essential. This proposed electricity billing system project overcomes all
these drawbacks with the features. It is beneficial to both consumers and the
company which provides electricity.

With the new system, there is reduction in the number of staffs to be employed
by the company. The working speed and performance of the software is faster with
high performance which saves time. Furthermore, there is very little chance of
miscalculation and being corrupted by the staffs.

2.1.2 SYSTEM OBJECTIVES

 Improvement in control and performance: The system is developed to cope


up with the current issues and problems of EB.The system can add user,
validate user and is also bug free.

 Save cost: After computerized system is implemented less human force will
be required to maintain the Electricity force thus reducing the overall cost.

 Save time: OCR computerizes the EB unit reading and requires less time to
further proceed billing in the EB website

 Option of online : EB websites can ensure easy mode of handling payments


and processing

 Reduce manpower: OCR can prevent noting the EB reading manually and
updating in the website, instead it reads the units by itself and updates in the
website.
2.1.3 SYSTEM REQUIREMENTS
2.1.3.1 NON FUNCTIONAL REQUIREMENTS

PRODUCT REQUIREMENT

With the new system, there is reduction in the number of staffs to be employed
by the company. The working speed and performance of the software is faster with
high performance which saves time. Furthermore, there is very little chance of
miscalculation and being corrupted by the staffs.

EFFICIENCY REQUIREMENT

When a EB management system with image recognition will be implemented,


the admin and user will easily access the readings, records and transaction will be
very faster .

RELIABILITY REQUIREMENT

The system accurately performs account registration ,account validation ,image


conversion, bill generation, payment transaction etc.

USABILITY REQUIREMENT

The system is designed for a user friendly environment so that the admin and
the user can perform the various tasks easily and in an effective way.

ORGANIZATIONAL REQUIREMENT

IMPLEMENTATION REQUIREMENTS

In implementing whole system it uses Java Swing in front end with java as
server side scripting language which will be used for database connectivity and the
backend i.e. the database part is developed using MySQL workbench.

DELIVERY REQUIREMENTS
The whole system is expected to be delivered in three months of time with a
weekly evaluation by the project guide.
2.1.3.2 FUNCTIONAL REQUIREMENTS

1. NORMAL USER

1.1 USER LOGIN

Description of feature:

This feature used by the user to login into system. They are required to enter
user id and password before they are allowed to enter the system. The user id and
password will be verified and if invalid id is there user is allowed to not enter the
system.

Functional requirements:

-user id is provided when they register


-The system must only allow user with valid id and password to enter the
system -The system performs authorization process which decides what user level
can access to.
-The user must be able to logout after they finished using system.

1.2 REGISTER NEW USER

Description of feature:

This feature can be performed by all users to register new user to create
account. If customer name, address, city, state, email and phone number is
entered, insert the values into customer.

else print
error
while
next=true
enter the meter_info
details else
print meter_info error
Functional requirements:

-System must be able to verify information


-System must be able to delete information if information is wrong

1.3 UPDATE INFO

Description of feature:

This feature will allow the customer to update the customer details. If customer
address, city, state, email and phone number is updated. update the values into
customer else print error update the details of customer that has been updated by
clicking onto update button. If we need to cancel the particulars that has been
updated, click onto back option.

1.4 CUSTOMER DETAILS

Description of feature:

This feature will allow the admin to view customer details. If we need to print
the particulars that has been viewed click onto print option.

1.5 CALCULATE BILL

Description of feature:

This feature will allow the admin to calculate total_bill when units consumed
are inserted where meter_no and month is selected. Insert the values into bill else
print error Submit the details of tax that has been entered by clicking onto submit
button. If we need to cancel the particulars that has been entered click onto cancel
option.

Functional Requirements:

-System must be able to calculate and generate bill


1.6 DELETE CUSTOMER

Description of feature:

This feature will allow the admin to delete the customer info when meter_no is
selected. If we need to delete the particulars that has been saved click onto delete
option. If we need to cancel the particulars that has been entered click onto back
option.

Functional Requirements:

-System must be able to delete customer information.

2.1.4 SOFTWARE AND HARDWARE REQUIREMENTS

This section describes the software and hardware requirements of the system

2.1.4.1 SOFTWARE REQUIREMENTS

 Operating system- Windows 11 is used as the operating system as it is


stable and supports more features and is more user friendly Windows 11 also
allows you to use their Virtual Desktop so you can access your desktop from
another device. Or if you just want to connect an additional monitor to your
PC, Windows 11 allows you to customize and save your setup, so your extra
screen will be configured to your preferences every time you log on.

 Database MYSQL Workbench-MYSQL is used as database as it easy to


maintain and retrieve records by simple queries which are in English
language which are easy to understand and easy to write. Scalability on
demand is the hallmark feature of MySQL. It manages deeply embedded
applications using a shallow footprint, even in databases that store terabytes
of data. Moreover, MySQL offers customized solutions to e-commerce
enterprises with specific database requirements.

 Development tools and Programming language- JAVA is used to write the


whole code and its GUI is also implemented in JAVA Swing. And, also
several components such as Jframe, JButton and JLabel has also been used.
2.1.4.2 HARDWARE REQUIREMENTS

 Intel core i5 7th generation is used as a processor because it is fast than


other processors an provide reliable and stable and we can run our PC for
longtime. By using this processor we can keep on developing our project
without any worries. Yes, 7th generation Intel Core i5 processors, also known
as "Kaby Lake," can provide good gaming performance, especially when
paired with a capable graphics card. These processors offer a solid balance
between price and performance for gaming enthusiasts.

 Ram 4 gb is used as it will provide fast reading and writing capabilities


and will in turn support in processing. 4GB of RAM is more than enough for
some great PC games. You can easily run the most demanding games with
that much memory. However, to play some of the games on the list, you will
need a decent graphics card.

2.2 EXISTING VS PROPOSED


Existing System:
 Early days EB reading noting were managed manually. It required lot of time,
manpower to record or to retrieve the details. The employees who have to
record the details must perform their job very carefully. Even a small mistake
would create a lot of problems. Security of information is very less. Report
generations of all the information is very tough task.

 Maintenance of Eb records is a very complex task. In addition to its


maintenance of customer details, reading dates manually is a complex task.

 All the operations must be performed in perfect manner for the maintenance of
the Electricity board without any degradation which may finally result in the
failure of the entire system.

Proposed System:

To solve the inconveniences as mentioned in the existing system, an Online


Library is proposed. The proposed system contains the following features:
 The customers will register them through Online
 Individually each customer will have their account through which they can
access the information.
 Customer details like meter no., unit readings will be totally maintained by
the board
 The OCR system will computerize the meter reading and update in the
database
 Administrator can add, update the books.
 Time consuming is low, gives accurate results, reliability can be improved
with the help of security

2.3 SOFTWARE TOOLS USED

The whole Project’s GUI is developed using JAVA in NetBeans IDE 8.2 and
database is connected through MySQL.

2.3.1 NetBeans IDE 8.2

NetBeans IDE 8.2 is an integrated development environment (IDE) for


Java. NetBeans allows applications to be developed from a set of
modular software components called modules. NetBeans runs
on Microsoft Windows, macOS, Linux and Solaris. In addition to Java
development, it has extensions for other languages like PHP, C, C++,
HTML5, and Javascript. Applications based on NetBeans, including the
NetBeans IDE, can be extended by third party developers.
The NetBeans Platform is a framework for simplifying the development
of Java Swing desktop applications. The NetBeans IDE bundle for Java SE
contains what is needed to start developing NetBeans plugins and NetBeans
Platform based applications; no additional SDK is required. Applications can
install modules dynamically. Any application can include the Update Center
module to allow users of the application to download digitally
signed upgrades and new features directly into the running application.
Reinstalling an upgrade or a new release does not force users to download the
entire application again. The platform offers reusable services common to
desktop applications, allowing developers to focus on the logic specific to
their application. Among the features of the platform are:

 User interface management (e.g. menus and toolbars)


 User settings management
 Storage management (saving and loading any kind of data)
 Wizard framework (supports step-by-step dialogs)
 NetBeans Visual Library
 Integrated development tools

2.3.2 MySQL WorkBench

MySQL is a database management system, while Workbench is a graphical


user interface (GUI) tool for MySQL that allows you to manage databases
and perform various tasks. MySQL is a relational database management
system that uses Structured Query Language (SQL) to manage and
manipulate data stored in tables.

MySQL("My S-Q-L", officially, but also called "My Sequel") is (as ofJuly
2013) the world's second most widely used open-source relational database
management system (RDBMS). It is named after co-founder Michael
Widenius daughter, My. The SQL phrase stands for Structured Query
Language. The MySQL development project has made its source code
available under the terms of the GNU General Public License, as well as
under a variety of proprietary agreements. MySQL was owned and sponsored
by a single for-profit firm, the Swedish company MySQL AB, now owned by
Oracle Corporation. MySQL is a popular choice of database for use in web
applications, and is a central component of the widely used LAMP open
source web application software stack (and other 'AMP' stacks). LAMP is an
acronym for "Linux, Apache, MySQL,Perl/PHP/Python." Free-software-open
source projects that require a full-featured database management system often
use MySQL. For commercial use, several paid editions are available, and
offer additional functionality. Applications which use MySQL databases.
CHAPTER 3

SYSTEM DESIGN

3.1 TABLE DESIGN

SINGLE TABELS TO MAINTAIN CUSTOMER INFORMATION

 EB Table from Database


3.2 DATA FLOW DIAGRAMS

SCHEMA DIAGRAM(TABLE ARRANGEMENT) FOR EB


MANAGEMENT SYSTEM:
UML DIAGRAM:-

CLASS DIAGRAM FOR EB MANAGEMENT SYSTEM:


COMPONENT DIAGRAM FOR EB MANAGEMENT SYSTEM:

It shows how the customer component connects to the other components while using the
system. Everything from the account details to product booking to payment flow can be seen in
the component diagram.

Admin is the primary user. Admin can Add/Remove/Update any details related to the
system, maintain electricity usage database, generate bills & invoices for the users, and
View/Confirm/Cancel registration requests by Users, etc. Admin can calculate bills.

Users can view the bill and check the due date all the details like start date, end date total
consume electricity units ETC and process the payment. And Also the user can check the history
of transactions.
ACTIVITY DIAGRAM FOR EB MANAGEMENT SYSTEM:

Admin will be responsible for maintaining the system and also, keeping a check on users,
billings, payments, generating invoices for users, etc.

On the other hand, Users can register, log in using the login credentials, and pay their
monthly electricity bills online. Users can view the bill and check the due date all the details like
start date, end date total consume electricity units ETC and process the payment. And Also the
user can check the history of transactions.
SEQUENCE DIAGRAM FOR EB MANAGEMENT
SYSTEM:
Sequence diagrams in UML are used to illustrate the sequence of messages between
objects in an interaction. A sequence diagram consists of a group of objects that are represented
by lifelines and the messages that they exchange overtime during the interaction.

Users can register on the portal using their name, address, and other valid details, view
their electricity bill, pay online, download bills & invoices, etc. After logging in, users can find
detailed information about the calculated charges & taxes included in the bills, data consumption,
pending bills, etc on the system after logging in.
USE CASE DIAGRAM FOR EB MANAGEMENT
SYSTEM:

A UML use case diagram can create a broad, high-level view of the relationship between
use cases, actors involved, and systems being performed.

As you can see from the examples below, use cases are represented by oval shapes, and
the lines then show at which point an actor/user participates and interacts with their
corresponding use case. You can see where each actor is involved within the entire process
(and where they’re excluded).For example, Admin will be able to calculate bills, add users,
manage pay history, and view bill reports in the system. Whereas, users can access the system
for paying their electricity bills.
DATA FLOW DIAGRAM FOR EB MANAGEMENT SYSTEM:
A data flow diagram represents the flow of information for any process or system. It shows
the system with its relationship to external entities. Here, we can see how the users and the
process flow work in a system.

Admin can collect electricity data usage of users for billings, generate bills & invoices for
the user, manage Users, View/Confirm/Cancel registration requests, manage bills & payments,
etc.Users can Manage “My profile” and download bills & invoices. Users can pay Electricity bills
online and can make payments online. Users can change passwords.
CHAPTER 4

SYSTEM IMPLEMENTATION

4.1 Screenshot for homepage


4.2 Screenshot for SignUp page

4.2.1 Admin’s side

4.2.2 Customer’s side


4.3 Login Screen

4.4 New Customer Screen


4.5 Meter info screen
4.6 Deposit details screen
4.7 Pay bill screen
4.8 Show bill screen
4.9 Calculator screen
4.10 Notepad screen
4.11 Update customer screen
CHAPTER 5

SYSTEM TESTING

Testing is an integral part of software development. Testing process, in a way


certifies, whether the product, that is developed, compiles with the standards, that it
was designed to. Testing process involves building of test cases, against which, the
product has to be tested. In some cases, test cases are done based on the system
requirements specified for the product/software, which is to be developed.

Testing objectives:-

The main objectives of testing process are as follows:


• Testing is a process of executing a program with the intent of finding an error.
• A good test case is one that has high probability of finding an as yet
undiscovered error.
• A successful test is one that uncovers an as yet undiscovered error.

Different levels of testing are used in the testing process; each level of testing aims to
test different aspects of the system. The basic levels are unit testing, integration
testing, system testing and acceptance testing.

1.Unit testing.

2.Integration testing.

5.1 UNIT TESTING

Unit testing focuses verification effort on the smallest unit of software design
the module. The software built, is a collection of individual modules. In this kind of
testing exact flow of control for each module was verified. With detailed design
consideration used as a guide, important control paths are tested to uncover errors
within the boundary of the module.
5.2 INTEGRATION TESTING

The second level of testing is called integration testing. In this, many class-
tested modules are combined into subsystems, which are then tested. The goal here is
to see if all the modules can be integrated properly. We have been identified and
debugged.

5.3 SYSTEM TESTING

Here the entire application is tested. The reference document for this process is
the requirement document, and the goal is to see IF the application meets its
requirements. Each module and component of ethereal was thoroughly tested to
remove bugs through a system testing strategy. Test cases were generated for all
possible input sequences and the output was verified for its correctness.
CHAPTER 6

CONCLUSION & FUTURE SCOPE

SOFTWARE SCOPE:-

• Extensibility: This software is extendable in ways that its original


developers may not expect. The following principles enhances extensibility
like hide data structure, avoid traversing multiple. Links or methods avoid
case statements on object type and distinguish public and private operations.

• Reusability: Reusability is possible as and when require in this application.


We can update it next version. Reusable software reduces design, coding and
testing cost by amortizing effort Over several designs. Reducing the amount
of code also simplifies understanding, which increases the likelihood that the
code is correct.
We follow up both types of reusability: Sharing of newly written code within
a project and reuse of previously written code on new projects.

• Understand ability: A method is understandable if someone other than the


creator of the method can understand the code (as well as the creator after a
time lapse). We use the method, which small and coherent helps to
accomplish this.

• Cost-effectiveness: Its cost is under the budget and make within given time
period. It is desirable to aim for a system with a minimum cost subject to the
condition that it must satisfy the entire requirement. Scope of this document
is to put down the requirements, clearly identifying the information needed
by the user, the source of the information and outputs expected from the
system.
LIMITATIONS:-

This application cannot be accessed remotely. This application requires


knowledgeable person to use this application. This application does not have
journals.

CONCLUSION:-

After all the hard work is done for electricity bill management system is here. It
is a software which helps the user to work with the billing cycles, paying bills,
managing different DETAILS under which are working etc. This software reduces
the amount of manual data entry and gives greater efficiency. The User Interface of it
is very friendly and can be easily used by anyone. It also decreases the amount of
time taken to write details and other modules.Since this system uses OCR,it doesn’t
require manual work like noting reading and updating it in the website,so its easier
for the admin side.
CHAPTER 7

REFERENCES

Tesseract OCR with Java- Geeksforgeeks

https://www.geeksforgeeks.org/tesseract-ocr-with-java-with-examples/

You might also like