26
Software Requirements Specification For Automatic Toll Collection Prepared by Rohini Deshmukh Priya tikamkar G.H.Raisoni College of Engineering & Management, Wagholi, Pune

Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for Page 1 1. Introduction AUTOMATIC vehicle identification is an

  • Upload
    others

  • View
    9

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification

For

Automatic Toll Collection

Prepared by Rohini Deshmukh

Priya tikamkar

G.H.Raisoni College of Engineering & Management, Wagholi, Pune

Page 2: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page ii

Table of Contents

1. Introduction................................................................................................................................12. Overall Description....................................................................................................................1

2.1 System content:................................................................................................................................... 12.2 STRUCTURE OF THE LPR SYSTEM............................................................................................. 3 PLATEREGION EXTRACTION.......................................................................................................... 3 SEGMENTATION.................................................................................................................................. 6 CHARACTER........................................................................................................................................ 6 CHARACTER RECOGNITION............................................................................................................. 6

3. Modules:......................................................................................................................................83.1 Major Modules:................................................................................................................................... 83.2 Minor Modules:................................................................................................................................... 93.3 Web Module:..................................................................................................................................... 9

4. Functional Requirements Specification................................................................................. 104.1 SOFTWARE REQUIREMENTS:................................................................................................... 104.2 HARDWARE REQUIREMENTS:.................................................................................................. 104.3 Architectural Requirements:............................................................................................................. 10

5. Non Functional Requirements................................................................................................ 115.1 Normal Requirements...................................................................................................................... 115.2 Expected Requirements.................................................................................................................... 115.3 Exciting Requirements..................................................................................................................... 11

6. Feasibility study:..................................................................................................................... 137. UML Diagram.......................................................................................................................... 14

Page 3: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page 1

1. Introduction

AUTOMATIC vehicle identification is an essential stage in intelligent traffic systems. Nowadays vehicles play a very big role in transportation. Also the use of vehicles has been increasing because of population growth and human needs in recent years. Therefore, control of vehicles is becoming a big problem and much more difficult to solve. Automatic vehicle identification systems are used for the purpose of effective control.

License plate recognition (LPR) is a form of automatic vehicle identification. It is an image processing technology used to identify vehicles by only their license plates. Real time LPR plays a major role in automatic monitoring of traffic rules and maintaining law enforcement on public roads. Since every vehicle carries a unique license plate, no external cards, tags or transmitters need to be recognizable, only license plate.

2. Overall Description

2.1 System content:

The vehicle approaches the gate of the restricted area it wants to enter into. There is a barrier and a traffic light showing red stopping it. There is an inductive loop installed at the entrance in order to sense the arrival (and the presence) of the vehicle. There is also a CCTV camera mounted to monitor the entrance.

The inductive loop, the camera, the traffic light and the barrier are all connected to a control PC. On the control PC there is an access control application software running coordinating the operation of the access control system.

As the vehicle arrives the inductive loop senses its arrival and gives a signal to the control PC meaning: "car arrived". This signal is processed and understood by the access control application.

Vehicle arrives to the entrance, the inductive loop gives a signal to the control PC

Page 4: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page 2

The access control application - via driving a frame grabber card - captures the video signal of the camera and creates a digital picture about the vehicle in the memory (RAM) of the control PC.

Creating digitised picture about the vehicle Having the digitised picture of the arrived vehicle in RAM, the access control

application requests the license plate reader module to analyse the digitised picture and read the license plate number of the vehicle. After reading the license plate number the LPR module returns the read plate number in ASCII to the access control application.

Reading the license plate from the digitised picture of the vehicle The access control application takes the license number in ASCII and passes it to a

database module. The database module checks the plate number against different lists of permissions, etc. and returns an "access permitted" or an "access denied" flag. Based on the flag the access control application opens the barrier and sets the traffic light to green - or not.

Also, the access control application may pass relevant data - like date and time of access - to the database module to store it in an access diary. After the vehicle left the gate (either by passing through or leaving) the system gets ready to start the entire process again for the next arriving vehicle.

Allowing access and storing data in the diary

Page 5: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page 3

2.2 STRUCTURE OF THE LPR SYSTEM

The algorithm proposed in this paper is designed to recognize license plates of vehicles automatically. Input of the system is the image of a vehicle captured by a camera. The captured image taken from 4-5 meters away is processed through the license plate extractor with giving its output to segmentation part. Segmentation part separates the charactersindividually. And finally recognition part recognizes the characters giving the result as the plate number.

PLATEREGION EXTRACTION

Plate region extraction is the first stage in this algorithm. Image captured from the camera is first converted to the binary image consisting of only 1’s and 0’s (only black and white). by thresholding the pixel values of 0 (black) for all pixels in the input image with luminance less than threshold value and 1 (white) for all other pixels. Captured image (original image) and binarized image are shown in Figure 1(a)

and 1(b) respectively.

( a ) Captured image

Page 6: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page 4

( b ) Binarized image

The binarized image is then processed using some methods. To find the plate region, firstly smearing algorithm is used. Smearing is a method for the extraction of text areas on a mixed image. With the smearing algorithm, the image is processed along vertical and horizontal runs (scan-lines). If the number of white pixels is less than a desired threshold or greater than any other desired threshold, white pixels are

converted to black. In this system, threshold values are selected as 10 and 100 for both horizontal and vertical smearing.

If number of ‘white’ pixels < 10 ; pixels become ‘black’Else ; no changeIf number of ‘white’ pixels > 100 ; pixels become ‘black’Else ; no change

After smearing, a morphological operation, dilation, is applied to the image for specifying the plate location.

However, there may be more than one candidate region for plate location. To find the exact region and eliminate the other regions, some criteria tests are applied to the image by smearing and filtering operation. The processed image after this stage is as shown in Figure 2(a) and image involving only plate is shown in Figure 2(b).

Page 7: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page 5

( a ) Plate region

( b ) Image involving only plate

After obtaining plate location, region involving only plate is cut giving the plate as shown in Figure 3.

Fig. 3 Plate Image

Page 8: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page 6

SEGMENTATION

In the segmentation of plate characters, license plate is segmented into its constituent parts obtaining the characters individually. Firstly, image is filtered for enhancing the imageand removing the noises and unwanted spots. Then dilation operation is applied to the image for separating the characters from each other if the characters are close to each other. After this operation, horizontal and vertical smearing are applied for finding the character regions. The result of this segmentation is in Figure 4.

Fig. 4 Locations of plate characters

The next step is to cut the plate characters. It is done by finding starting and end points of characters in horizontal direction. The individual characters cut from the plate are as follows in Figure 5.

CHARACTER

Fig. 5 Individual characters

CHARACTER RECOGNITION

Before recognition algorithm, the characters are normalized. Normalization is to refine the characters into a

Page 9: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page 7

block containing no extra white spaces (pixels) in all the four sides of the characters. Then each character is fit to equal size as shown in Figure 6.

Fig. 6 Equal-sized characters

Fitting approach is necessary for template matching. For matching the characters with the database, input images must be equal-sized with the database characters. Here the characters are fit to 36 18. The extracted characters cut from plate and the characters on database� are now equal-sized. The next step is template matching. Template matching is an effective algorithm for recognition of characters. The character image is compared with the ones in the database and the best similarity is measured. To measure the similarity and find the best match, a statistical method correlation is used. Correlation is an effective technique for image recognition which was developed by Horowitz. [15] This method measures the correlation coefficient between a number of known images with the same size unknown images or parts of an image with the highest correlation coefficient between the images producing the best match. There are two forms of correlations: auto-correlation and cross-correlation. Auto-correlation function (ACF) involves only one signal and provides information about the structure of the signal or its behavior in the time domain. Cross-correlation function (CCF) is a measure of the similarities or shared properties between two signals. Since there are two signals as unknown input image and known database image in this system, cross-correlation is used.

The normalized cross correlation between the image pair is defined as:

for m=1,2,….M and n=1,2,….N, where M and N are odd integers.This system used the database as the Turkish license plates characters all 33

alphanumeric characters (23 alphabets and 10 numerals) with the size of 36*18. The database formed is shown in Figure 7.

Fig. 7

Page 10: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page 8

Because of the similarities of some characters, there may be some errors during recognition. The confused characters mainly are B and 8, E and F, D and O, S and 5, Z and 2. To increase the recognition rate, some criteria tests are used in the system for the confused characters defining the special features of the characters. With these features of characters and applied tests during recognition algorithm, recognition rate is increased with the minimum error.

3. Modules:

3.1 Major Modules:

1. Number Plate Scanning

a. Capturing the Image of the car

b. Localization algorithm to find the number plate

c. Segmentation of Number plate Characters.

d. Optical Character recognition for recognizing the characters.

2. Desktop Module

a. Will Validate the number plate info received from Number plate

scanning module

b. Trnasactions would be done accordingly

3. Banned Vehicle Module

Page 11: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page 9

a. If any vehicle is banned for any reason, and it tries to pass to

tollbooth, that time an alarm would be generated and message can be

sent to the nearest police station

4. Web Application

1. Administrator module (Will Maintain the website)

2. Customer module (Prepaid Customer)

3.2 Minor Modules:

1. Recharge Module

2. Uploading Files to Ftp Server

3. Automatic Report Generation on different Criteria

4. Sending auto-generated mails to the concern person.

5. Printing Module

3.3 Web Module:

Admin Module

Admin have Functionalities like,

a) Maintain all information of website

b) Manage News and events

c) Manage Enquiry and feedback

d) Maintaining details of tollbooth

e) Maintaining details of users

f) View Reports of The users

g) Search particular report according to search criteria

User Module (TollBooth Owner)

User has Functionalities like,

a) Maintaining details of employees

Page 12: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page 10

b) Managing users information

c) View transaction Reports of The students

d) Search particular report according to search criteria

4. Functional Requirements Specification

4.1 SOFTWARE REQUIREMENTS:

• Operating system

• Apache Tomcat

• Jdk1.5

• MySQL

• Dreamweaver

• Web Browser

4.2 HARDWARE REQUIREMENTS:

• A Windows-compatible LAN Network

• Processor P4

• At least 128 megabytes (MB) RAM

• A Pentium 600 MHz PC (or faster)

4.3 Architectural Requirements:

1. Portability:

The system must be easily portable to a wide variety of platforms using various operating systems. Porting the software from one operating system to the anothershould not require more than 5% of the code to be changed. Similarly changing the backend database should not require more than 5% of the code to change.

2. Extensibility/Reuse:

Page 13: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page 11

The software should be extensible in order to add new features without affecting the base modules. The new releases of the system should maximize the reuse of the solutions developed in earlier releases.

3. Ease of use:

The system must be easy to use without requiring users to memorize the commands, special terms or notations. A new user should not require more than one hour of training to get comfortable using the system.

5. Non Functional Requirements

5.1 Normal Requirements

N1. Allows only the authorized user to interact with the website

N2. Information of developer and instruction for accessing website

N3. Inform about banned vehicles

N4. Recovery of forgotten password

N5. Scanner should read number plates properly

5.2 Expected Requirements

Exp1. Simple look & feel

Exp2. Fast response time

Exp3. Security to user accounts

Exp4. Easy enhancement

5.3 Exciting Requirements

Ex1. Number plate will be automatically scanned and recognised once car enter the gate of

TollBooth

Ex2. SMS alerts would be given to the car owner abt transaction

5.4 VALIDATION OF REQUIREMENTS:

Page 14: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page 12

N1: Every user interacting with system must have account.

N2: To provide forgotten password check the user name and then answer for the secret question.

If entered answer matches to database then provide the password to the user.

Exp1: Check the user name and password of user before login to the account.

Exp2: Use of cascaded style sheet to make enhancement in the web pages.

Page 15: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page 13

6. Feasibility study:

It is the high level capsule version of the entire requirement analysis process. The objective of feasibility study is to determine whether the proposed system can be developed with available resources.

There are three steps to be followed for determining feasibility study of proposed systems.

Technical feasibility

Operational feasibility

Economical feasibility

6.1 Technical feasibility:

It is concerned with hardware and software feasibility. In this study, one has to test whether the proposed system can be developed using existing technology or not. As per client requirements the system to be developed should have speed response because of fast exchange of information, reliability, security, scalability, integration and availability. To meet these requirements .We as a developer found Jsp specifications as a right choice because of its features platform independence and reusability.

6.2 Operational feasibility:

Operational feasibility determines whether the proposed system satisfied the user objectives and can be fitted in to current system operation. The system “The Prepaid Rationing System” can be justified as operationally feasible based on the following Operational feasibility determines if the proposed system satisfied the user objectives and can be fitted in to current system operation. The system “Prepaid Rationing System” can be justified as operationally feasible based on the following:

The methods of processing and presentation are completely acceptable by the users because

they meet all their requirements.

The users have been involved during the preparation of requirement analysis and

design process.

The system will certainly satisfy the user objectives and it will also enhance their

capability.

The system will certainly satisfy the user objectives and it will also enhance their

effectively.

6.3 Economical feasibility:

Page 16: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page 14

This includes an evaluation of all incremental costs and benefits expected if proposed system is implemented. Costs-benefit analysis which is to be done during economical feasibility delineates costs for project development and weighs them against system benefits. The system adds information of colleges and companies for which colleges and companies pays as it provides their information as well as company jobs. So developing this system is economically feasible.

7. UML Diagram

UML Diagrams:

Design modeling uses a combination of text and diagrammatic forms to depict the requirements for data, function and behavior in a way that is relatively easy to understand and more important, straightforward to review for correctness, completeness and consistency.

A diagram is the graphical presentation of a set of elements most often rendered as a connected graph of vertices (things) and arcs (relationship). These diagrams are drawn to visualize a system from different perspectives so a diagram into a system.Behavioral Modeling

Use case Diagram:

It shows a set of use cases and actors (a special kind of class and their relationships). Use case diagrams address the static use case view of system. These diagrams are especially important in organizing and modeling the behavior of a system. In below diagram a user can be anyone using the system.

Page 17: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page 15

Fig Use Case diagram for basic overview of TollBooth Automation

Fig 3.6 Use Case diagram for login

State Diagram:

Logi

n

Serve

r

Check for

authentication

User

1

Enter id , password

Databas

e

Accessing

Data

Profil

e

Authenticate UserAccessing

Profile1 Retriving

Data

User

2

Enter id, password

Accessing

Profile2

New User

Registration form

For new User

Page 18: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page 16

Using state diagram you can model the behavior of an individual object. A state machine is a behavior that specifies the sequence of states an object goes through during it’s lifetime in response to events, together with it’s response to those events. It is used to model the dynamic aspects of a system.

Fig 3.7 General State diagram

Sequence Diagram:

Existing User

Register Application

Login

invalid

Authentication Operation

MainController

invalid

For exiting user

user1 login

Info

logout

database

Enter id, password

Accessing Info

server

Retriving Data

Check for Authentication

Accessing Data

Authenticate User

Page 19: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page 17

A Sequence diagram is a structured representation of behavior as a series of sequential steps over time. It is used to depict workflow, message passing and how element in general cooperate over time to achieve a result. It is primarily used to show the interaction between objects in the sequential order that those interaction occurs.\

Fig 3.8 Sequence diagram for Admin

UserAdmin LoginLogin ProfileDetails ServerServer DatabaseDatabase

1: Enter id, password

2: Check for Authentication

3: Accesing Data

4: Authenticate user

5: User Details

6: TollBooth Details

7: Transaction Details

8: Digital Notices

9: Viewing Reports

11: Retriving Data

12: Accessing Info

Page 20: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page 18

Functional Modeling

In the functional modeling it describes the function of the propose system. it consist of two

diagram. They are as follows:

- Dataflow diagram

-Control flow diagram

Data flow diagram:

Data flow diagram (DFD), also called as ‘Bubble chart’ is a graphical technique, which is used to represent information flow, and transformers those are applied when data moves from input to output.

User

Server

Scanner

DB

Request

ResponseRequest for Validation

Response for Validation

DFD Level 0

GUI Server

Transactionss

ResponseRequest for TransactionRespons

e after all Validations

Page 21: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page 19

Control Flow Diagram

The large class of application having following characteristics requires control flow modeling

The application those are driven by events rather than data

The application those produce control information rather than reports or display.

The application those process information in specific times.

DB

Request for TransactionRespons

e after all Validations

DFD Level 1

Various TrnsactionsLocalisationSegmentationCharacter RecognitionPerform Transaction

Admin Server

DB

RequestTransaction

ResponseRequest for Report Validation

Response after all Validations

DFD Level 2 22

Various TrnsactionsCheck Transaction ReportsManage Banned VehiclesSend Notices to users

Page 22: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page 20

Collaboration Diagram:

Fig: Collaboration Diagram for Vehicle Owner

User GUI

Server

1 : Enter TollBooth ()

2 : Authentication()

3 : Authenticated ()

4 : display()

5 : Transaction Request()

6 : Validated()

7 : succeed()

8 : acknowledgement()

9 : Transaction Marked()

DBProcessing

Page 23: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page 21

Activity Diagram:

Enter

TollBooth

Register

account

Online

Scan Vehicle

Furnish

Details

subm

it

Number

Plate

Checking

Vehicle

AuthorizationBanned

Vehicle

finishe

d

Validate

details

Scan

Properly

ye

s

ye

s

n

o

n

o

Validatio

ns

Charater

Recogniti

on

Segmentati

on

Localisati

on

Page 24: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page 22

6 Technology Overview

Technology Overview:

The .NET Framework is a managed type-safe environment for application

development and execution. The .NET Framework manages all aspects of your program’s

execution.

• It allocates memory for the storage of data and instructions

• Grants or denies the appropriate permissions to your application

• Initiates and manages application execution

• Manages the reallocation of memory from resources that are no longer needed.

The .NET Framework consists of two main components:

• Common language runtime

• .NET Framework class library

Class library contains object-oriented collection of reusable types that can be used to develop all

types of application including command line, graphical user interface, Web application & Web

services.

Page 25: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page 23

Fig.4.1: .Net Framework Architecture

4.1.1. Introduction to C#:

As a recent birth in programming language family, C# has two programming language

parents: C++ and Java. C# contains many C++ features but also adds the object oriented features

from Java.

C# contains many different components, including:

• Versioning support, so that your base and derived classes-templates that define how an

object performs-remains compatible as you develop them.

• Events, so that your program can notify clients of a class about something that increases

reliability and code security.

• Garbage collection, so that your program can identify objects that your program can no

longer reach.

Page 26: Software Requirements Specification Template · 2012-02-19 · Software Requirements Specification for  Page 1 1. Introduction AUTOMATIC vehicle identification is an

Software Requirements Specification for <Project> Page 24

Benefits1. Prepaid cards for daily travelers

2. Centralized data collection

3. Financial accounts can be without any paperwork

4. Daily monitoring of sale at each booth

5. Useful for crime branch

6. Banned Vehicles Tracking

7. Useful for Government to understand life of the Highway roads.

8. Recharging options given to the Card owner at Tollbooth itself

9. Tollbooth Management can be done under the surveillance of Government

10. Financial Information of all Tollbooth would be maintained at single place

Conclusion

we presented application software designed for the recognition of car license plate. Firstly we extracted the plate location, then we separated the plate characters individually by segmentation and finally applied template matching with the use of correlation for recognition of plate characters. This system is designed for the identification Turkish license plates and the system is tested over a large number of images. Finally it is proved to be %97.6 for the extraction of plate region, %96 for the segmentation of the characters and %98.8 for the recognition unit accurate giving the overall system performance %92.57 recognition rates. This system can be redesigned for multinational car license plates in future studies.