Project Details
Project Details
Project Details
On
VISION BASED PARKING AND OCCUPATION DETECTION
Submitted in partial fulfillment for the award of the degree
of
Bachelor of Technology
in
Electronics & Communication Engineering
by
P.JAYANTHI 18F61A0486
CIRIPI REDDY HEMANI 18F61A0470
PAKALA KAVYA 18F61A0497
KONIDALA LASYA 18F61A0494
ATURI MALLIKARJUNA 18F61A04B9
P.SARANYA M.Tech
Assistant Professor, Department of ECE
CERTIFICATE
This is to certify that the Project entitled “ VISION BASED
PARKING AND OCCUPATION DETECTION”that is being submitted by
P.JAYANTHI 18F61A0486
CIRIPI REDDY HEMANI 18F61A0470
PAKALA KAVYA 18F61A0497
KONIDALA LASYA 18F61A0494
ATURI MALLIKARJUNA 18F61A04B9
We wish to express our profound and sincere gratitude to Mrs. P.Saranya, Assistant
Professor of Electronics and Communication Engineering, Siddharth Institute of
Engineering & Technology, Puttur, who guided us into the intricacies of this project
phase
-1 with utmost clarity.
We would also like to extend our gratitude to Dr. P Ratna Kamala, Head of the
Electronics and Communication Engineering Department for her encouragement and for
providing the facilities to carry out the work in a successful manner.
We are thankful to Dr. K. Chandrasekhar Reddy, Principal for his encouragement and
support.
We wish to express our sincere thanks to Dr. K. Indiraveni, Vice-Chairman, and Dr. K.
Ashok Raju,Chairman of Siddharth Group of Institutions, Puttur , for providing ample
facilities to complete the project phase -1 work.
We would also like to thank all the faculty and staff of the Electronics and Communication
Engineering Department, for helping us to complete the project phase-1 work.
Very importantly, we would like to place on record our profound indebtedness to our
parents and families for their substantial moral support and encouragement throughout
our studies.
TABLE OF CONTENTS
1 Abstract i
2 List of abbreviation ii
4 Chapter 1: Introduction 1
8 Chapter 5: Applications 7
10 References 12
ABSTRACT
In this paper, we have presented a vision based smart parking framework to assist
the drivers in efficiently finding suitable parking slot and reserve it. Initially, we have
segmented the parking area into blocks using calibration. Then, classify each block to
identify car and intimate the driver about the status of parking either reserved or free.
i
LIST OF FIGURES
ii
LIST OF ABBREVIATIONS
iii
VISION BASED PARKING AND OCCUPATION DETECTION
CHAPTER 1
INTRODUCTION
Now a day’s most of the parking areas are manually managed by human manpower
and there is no automatic system to manage the parking area in an efficient way. There is
great analogy that when a driver enters any of the parking lot he must look for some kind of
information board that tells him about the status of the parking lot that whether it is fully
occupied, partly occupied or vacant. Most of the times the drivers have to circle around the
parking area in search of the free parking space. This kind of problem mostly occur in cities
near the shopping malls, hospitals etc., where the number of vehicles is greater as
compared to the parking spaces. The process for searching the free parking space is time
consuming and also wastage of fuel.
Most of the times the parking spaces remain unoccupied, however the total
occupancy is low because of bad management of parking lot. This causes ineffective use of
the parking area and also results in traffic jams and congestion near the parking lots. To
properly manage the parking lot and display each parking division’s information to the
drivers before entering the parking lot have become an important issue to be resolved.
In this paper, a system is proposed that will detect the total number of available
parking spaces and displays the information to the drivers so that they can easily parked
their cars. A web camera is used to get the images ofthe parking area and image processing
techniques are used to detect the presence or absence of cars to count and locate the
available parking spaces .The status of the parking lot is updated whenever a car enters or
leaves the parking lot.
ECE,SIETK
VISION BASED PARKING AND OCCUPATION DETECTION
There is various software development approaches defined and designed which are used/employed during
development process of software, these approaches are also referred as "Software Development Process
Models". Each process model follows a particular life cycle in order to ensure success in process of
software development.
Requirements:
Business requirements are gathered in this phase. This phase is the main focus of the project managers
and stake holders. Meetings with managers, stake holders and users are held in order to determine the
requirements. Who is going to use the system? How will they use the system? What data should be input into
the system? What data should be output by the system? These are general questions that get answered during a
requirements gathering phase. This produces a nice big list of functionality that the system should provide,
which describes functions the system should perform, business logic that processes data, what data is stored and
used by the system, and how the user interface should work. The overall result is the system as a whole and how
it performs, not how it is actually going to do it.
Design:
The software system design is produced from the results of the requirements phase. Architects have the
ball in their court during this phase and this is the phase in which their focus lies. This is where the details on
how the system will work is produced. Architecture, including hardware and software, communication, software
design (UML is produced here) are all part of the deliverables of a design phase.
ECE,SIETK 2
VISION BASED PARKING AND OCCUPATION DETECTION
Implementation:
Code is produced from the deliverables of the design phase during implementation, and this is the longest
phase of the software development life cycle. For a developer, this is the main focus of the life cycle because this
is where the code is produced. Implementation my overlap with both the design and testing phases. Many tools
exists (CASE tools) to actually automate the production of code using information gathered and produced during
the design phase.
Testing:
During testing, the implementation is tested against the requirements to make sure that the product is
actually solving the needs addressed and gathered during the requirements phase. Unit tests and
system/acceptance tests are done during this phase. Unit tests act on a specific component of the system, while
system tests act on the system as a whole.
So in a nutshell, that is a very basic overview of the general software development life cycle model. Now let’s
delve into some of the traditional and widely used variations.
1.2SDLC METHDOLOGIES:
This document play a vital role in the development of life cycle (SDLC) as it describes the complete
requirement of the system. It means for use by developers and will be the basic during testing phase. Any
changes made to the requirements in the future will have to go through formal change approval process.
SPIRAL MODEL was defined by Barry Boehm in his 1988 article, “A spiral Model of Software
Development and Enhancement. This model was not the first model to discuss iterative development, but it was
the first model to explain why the iteration models.
As originally envisioned, the iterations were typically 6 months to 2 years long. Each phase starts with a design
goal and ends with a client reviewing the progress thus far. Analysis and engineering efforts are applied at each
In the flexibility of uses the interface has been developed a graphics concepts in mind, associated through
a browser interface. The GUI’s at the top level has been categorized as follows
1. Administrative User Interface Design
The administrative user interface concentrates on the consistent information that is practically, part of the
organizational activities and which needs proper authentication for the data collection. The Interface helps the
ECE,SIETK 3
VISION BASED PARKING AND OCCUPATION DETECTION
administration with all the transactional states like data insertion, data deletion, and data updating along with
executive data search capabilities.
The operational and generic user interface helps the users upon the system in transactions through the existing
data and required services. The operational user interface also helps the ordinary users in managing their own
information helps the ordinary users in managing their own information in a customized manner as per the
assisted flexibilities.
INPUT DESIGN
Input design is a part of overall system design. The main objective during the input design is as given below:
To produce a cost-effective method of input.
To achieve the highest possible level of accuracy.
To ensure that the input is acceptable and understood by the user.
INPUT STAGES:
ECE,SIETK 4
VISION BASED PARKING AND OCCUPATION DETECTION
The main input stages can be listed as below:
Data recording
Data transcription
Data conversion
Data verification
Data control
Data transmission
Data validation
Data correction
INPUT TYPES:
It is necessary to determine the various types of inputs. Inputs can be categorized as follows:
External inputs, which are prime inputs for the system.
Internal inputs, which are user communications with the system.
Operational, which are computer department’s communications to the system?
Interactive, which are inputs entered during a dialogue.
INPUTMEDIA:
At this stage choice has to be made about the input media. To conclude about the input media
consideration has to be given to;
Type of input
Flexibility of format
Speed
Accuracy
Verification methods
Rejection rates
Ease of correction
Storage and handling requirements
Security
Easy to use
Portability
Keeping in view the above description of the input types and input media, it can be said that most of the
inputs are of the form of internal and interactive. As
ECE,SIETK 5
VISION BASED PARKING AND OCCUPATION DETECTION
Input data is to be the directly keyed in by the user, the keyboard can be considered to be the most suitable input
device.
1.4.2OUTPUT DESIGN
Outputs from computer systems are required primarily to communicate the results of processing to users. They
are also used to provide a permanent copy of the results for later consultation. The various types of outputs in
general are:
External Outputs, whose destination is outside the organization
Internal Outputs whose destination is within organization and they are the
User’s main interface with the computer.
Operational outputs whose use is purely within the computer department.
Interface outputs, which involve the user in communicating directly.
OUTPUT DEFINITION:
The outputs should be defined in terms of the following points:
Type of the output
Content of the output
Format of the output
Location of the output
Frequency of the output
Volume of the output
Sequence of the output
It is not always desirable to print or display data as it is held on a computer. It should be decided as which form
of the output is the most suitable
With the progress of database technology, various kinds of advanced data and information systems have
emerged and are undergoing development to address the requirements of new applications handling
spatial/temporal data (such as maps) engineering design data (such as the design of buildings, system
components, or integrated circuits) hypertext and multimedia data (including text, image, video, and audio data)
ECE,SIETK 6
VISION BASED PARKING AND OCCUPATION DETECTION
time-related data (such as historical records or stock exchange data) stream data (such as video surveillance and
sensor data, where data flow in and out like streams) the World Wide Web (a huge, widely distributed
information repository made available by the Internet)
1.6System Analysis
The Systems Development Life Cycle (SDLC), or Software Development Life Cycle in systems
engineering, information systems and software engineering, is the process of creating or altering systems, and the
models and methodologies that people use to develop these systems.
In software engineering the SDLC concept underpins many kinds of software development methodologies. These
methodologies form the framework for planning and controlling the creation of an information system the
software development process.
1.7Functional requirements
Outputs from computer systems are required primarily to communicate the results of processing to users.
They are also used to provide a permanent copy of the results for later consultation. The various types of outputs
in general are:
ECE,SIETK 7
VISION BASED PARKING AND OCCUPATION DETECTION
External Outputs, whose destination is outside the organization,.
Internal Outputs whose destination is within organization and they are the
User’s main interface with the computer.
Operational outputs whose use is purely within the computer department.
Interface outputs, which involve the user in communicating directly.
Understanding user’s preferences, expertise level and his business requirements through a friendly
questionnaire.
Input data can be in four different forms - Relational DB, text files, .xls and xml files. For testing and
demo you can choose data from any domain. User-B can provide business data as input.
1.8.Non-Functional Requirements:
2. 24 X 7 availability.
4. Flexible service based architecture will be highly desirable for future extension
1.9Feasibility Study:
Preliminary investigation examines project feasibility; the likelihood the system will be useful to the
organization. The main objective of the feasibility study is to test the Technical, Operational and Economical
feasibility for adding new modules and debugging old running system. All systems are feasible if they are given
unlimited resources and infinite time. There are aspects in the feasibility study portion of the preliminary
investigation:
Technical Feasibility
Operation Feasibility
Economical Feasibility
1.9.1Technical Feasibility
The technical issue usually raised during the feasibility stage of the investigation includes the following:
Does the necessary technology exist to do what is suggested?
Do the proposed equipments have the technical capacity to hold the data required to use the new system?
Will the proposed system provide adequate response to inquiries, regardless of the number or location of
users?
ECE,SIETK 8
VISION BASED PARKING AND OCCUPATION DETECTION
Can the system be upgraded if developed?
Are there technical guarantees of accuracy, reliability, ease of access and data security?
User-friendly
Customer will use the forms for their various transactions i.e. for adding new routes, viewing the routes details.
Also the Customer wants the reports to view the various transactions based on the constraints. These forms and
reports are generated as user-friendly to the Client.
Reliability
The package wills pick-up current transactions on line. Regarding the old transactions, User will enter them in to
the system.
Security
The web server and database server should be protected from hacking, virus etc
Portability
The application will be developed using standard open source software (Except Oracle) like Java, tomcat web
server, Internet Explorer Browser etc these software will work both on Windows and Linux o/s. Hence
portability problems will not arise.
Availability
This software will be available always.
Maintainability
The system uses the 2-tier architecture. The 1st tier is the GUI, which is said to be front-end and the 2nd tier is
the database, which uses sqllite, which is the back-end.
The front-end can be run on different systems (clients). The database will be running at the server. Users access
these forms by using the user-ids and the passwords.
1.9.3Economic Feasibility
The computerized system takes care of the present existing system’s data flow and procedures completely and
should generate all the reports of the manual system besides a host of other management reports.
It should be built as a web based application with separate web server and database server. This is required as the
activities are spread throughout the organization customer wants a centralized database. Further some of the
linked transactions take place in different.
What Is A Script?
ECE,SIETK 9
VISION BASED PARKING AND OCCUPATION DETECTION
Up to this point, I have concentrated on the interactive programming capability of Python. This is a very useful capability
that allows you to type in a program and to have it executed immediately in an interactive mode
Scripts are reusable:
Basically, a script is a text file containing the statements that comprise a Python program. Once you have created
the script, you can execute it over and over without having to retype it each time.
Perhaps, more importantly, you can make different versions of the script by modifying the statements from one
file to the next using a text editor. Then you can execute each of the individual versions. In this way, it is easy to
create different programs with a minimum amount of typing.
ECE,SIETK 1
0
VISION BASED PARKING AND OCCUPATION DETECTION
CHAPTER 2
LITERATURE SURVEY
[1].Ming-Yee Chiu: Proposed a method for counting the vehicles at the checkpoint from
which the number of available parking spaces can be counted. The counting is performed
by installation of the induction loop sensors under the road surface. Although the usage of
sensors was less costly, not easily affected by environmental conditions and it detects
accurately however, it installation was difficult and cause damage to roads. It was also
difficult to maintain it in case of malfunction. Moreover, the exact locations of free
parking area cannot be determined because the counting method is not able to give the
detail information, it just records the number of vehicles passing the checkpoints.
[2].Vamsee K. Boda: Proposed a method based on wireless sensor nodes. This method
was less costly and it uses the wireless sensor nodes implemented at the critical places
like the lane turns, entrance and exit positions of the parking lot. The total number of cars
in the parking area can be determined by the difference of incoming and outgoing cars.
The other kinds of detection methods are presented based on vision based methods.
Through vision based methods, the whole parking area available for parking can be
examined though the camera, the data is than processed and the result generated will
determine the exact number and location of the free parking spaces.
[3].Zhang Bin: Proposed that vision based parking space detection methods are very
easy to install, low in cost and the detector can be easily adjusted according to
requirements. Moreover, the data obtained from images is very rich. However, the defects
in the vision method are that the accuracy is highly dependent upon the position of the
camera. Thomas Fabian proposed an unsupervised vision based system for parking space
occupancy detection. The proposed system has low complexity in computation and needs
less image frames per minutes. He claims that the major problem in images detection is
the occlusions and shadows .
[4].H. Ichihashi: Proposed that the vision based parking space detection system are
mostly affected by weather and lighting condition like the falling of rain drops on the lens
of camera during heavy rainfall. Low and high lighting conditions. For this reason the
cameras are
ECE,SIETK 1
1
mostly used for the detection of vehicles in the indoor parking areas not for the outdoor
parking lots.
[5].R.Yusnita: Presented a method in which a brown color round patch was drawn in
each parking space manually. When the system is initialized it looks for the rounded
shape in each space, if patch is detected that particular space is considered as free and
will be displayed the driver.
[6].N.True: Proposed an efficient parking space detection by using the combinations of
color and vehicle features detection.
CHAPTER 3
PROPOSED SYSTEM
The main steps of the proposed algorithm for parking space detection are shown.
System will getvideo of the parking lot. Images are captured when a car enters or leaves
the parking lot. RGB Images are converted to grayscale images.
Do calibration : First select the coordinates of the parking lot. This will crop the
extra space other than parking lot from the image. Secondly select the coordinates of the
single parking slot. This will divide the parking lot into equal size slots. Each block is
converted from grayscale to binary and then inverse binary to get the car in white color
and parking area into black color. Threshold value is calculated in every block to detect
whether that block contain car or not. If value is less than threshold value than that block
is free and available for parking car and if value is greater than block is occupied.
FLOW CHART :
CHAPTER 4
SOFTWARE
DESCRIPTION
The software requirements specify the use of all required software products like data
management system. The required software product specifies the numbers and version.
Each interface specifies the purpose of the interfacing software as related to this software
product.
Operating System : Windows XP/7/10
Coding Language : Html, JavaScript,
Development Kit : Anaconda prompt
Programming language : Python
Libraries : Open cv
Python:
If you not interested in the how and whys of Python, feel free to skip to the next
chapter. In this chapter I will try to explain to the reader why I think Python is one of the
best languages available and why it’s a great one to start programming with.
1. Open source general-purpose language.
2. Object Oriented, Procedural, Functional
3. Easy to interface with C/ObjC/Java/Fortran
4. Easy-ish to interface with C++ (via SWIG)
5. Great interactive environment
Python is Interactive − You can actually sit at a Python prompt and interact with
the interpreter directly to write your programs.
Easy-to-read − Python code is more clearly defined and visible to the eyes.
A broad standard library − Python's bulk of the library is very portable and
cross-platform compatible on UNIX, Windows, and Macintosh.
Interactive Mode − Python has support for an interactive mode which allows
interactive testing and debugging of snippets of code.
Portable − Python can run on a wide variety of hardware platforms and has the
same interface on all platforms.
History of Python
Python is now maintained by a core development team at the Python was developed by
Guido van Rossum in the late eighties and early nineties at the National Research Institute
for Mathematics and Computer Science in the Netherlands.
Python is derived from many other languages, including ABC, Modula-3, C, C++, Algol-
68, SmallTalk, and Unix shell and other scripting languages.
Python libraries:
1. Requests. The most famous http library written by kennethreitz. It’s a must have for
every python developer.
2. Scrapy. If you are involved in webscraping then this is a must have library for you. After
using this library you won’t use any other.
3. wxPython. A gui toolkit for python. I have primarily used it in place of tkinter. You will
really love it.
4. Pillow. A friendly fork of PIL (Python Imaging Library). It is more user friendly than
PIL and is a must have for anyone who works with images.
5. SQLAlchemy. A database library. Many love it and many hate it. The choice is yours.
6. BeautifulSoup. I know it’s slow but this xml and html parsing library is very useful for
beginners.
7. Twisted. The most important tool for any network application developer. It has a very
beautiful api and is used by a lot of famous python developers.
Html
The hyper text markup language is the standard markup language for documents
designed to be displayed in a web browser. Each retrieval unit is know as a web page and
such pages frequently contain hypertext links that allow related pages to be retrieved.
Java script
It is a text based programming language used both on the client-side and server-
side that allows you to make web pages interactive .Where HTML and CSS are languages
that give structure and style to web pages, java script gives web pages interactive
elements that engage user.
VISION BASED PARKING AND OCCUPATION DETECTION
CHAPTER 6
APPLICATION
S
1.Shopping malls :
A parking lot is an area that is assigned for parking vehicles in the mall premises. All
malls have designated lots, with space to hold anywhere between 500 – 10,000 two and-
four- wheelers depending on their size and popularity. These parking facilities can be indoor
or outdoor, public or private.
ECE,SIETK 1
8
2.Hospitals :
A common problem at larger sites is severe under utilization of certain car parks and
overcrowding in other areas. Staff requirements have to cater for the different schedules and
shifts of doctors, nurses, surgeons and other hospital staff. Order can also be brought to
visitor parking, which comes with its own unique set of requirements.
3. Theaters :
The drive-in theatres which is usually a large parking lot, and park your car. The parking lot
will have a large screen in front of it. At the designated time, a movie will start playing on that
screen and you can watch it from the comfort of your car. And once you’re done, you simply drive
out. So here we face some parking difficulties at parking of over large cars and SUV's at perfect
area. So by using smart parking can able to drive in and out without any diffic
VISION BASED PARKING AND OCCUPATION DETECTION
CHAPTER 7
EXPECTED
RESULTS
In the above fig 6.1, we can see a green coordinate which indicates there is a vacancy
to park a car. So when car enters the parking area it shows the unparked area in green color
so that the driver can identify the parking area easily and can park the car in parking lot.
ECE,SIETK 21
Fig 6.2 COORDINATE AFTER PARKING
In the above fig 6.2 , we can see a red coordinate with parked area which indicates
there is a no vacancy to park a car. So when car enters the parking area it shows the parked
area in red color so that the driver can identify the parking area easily and can park the car in
parkinglot.
VISION BASED PARKING AND OCCUPATION DETECTION
REFERENCES
[1] Ming-Yee Chiu; Depommier, R.; Spindler, T.; , "An embedded realtime vision
system for 24-hourindoor/outdoor car-counting applications," Pattern Recognition,
2004.
[2]Boda, V.K.; Nasipuri, A.; Howitt, I.; , "Design considerations for a wireless sensor network
for locating parkingspaces," SoutheastCon, 2007..
[3]Zhang Bin; Jiang Dalin; Wang Fang; Wan Tingting; , "A design of parking space
detector based on on video image," Electronic Measurement & Instruments, 2009.
[4] Ichihashi, H.; Notsu, A.; Honda, K.; Katada, T.; Fujiyoshi, M.; , "Vacant parking space
detector for outdoorparking lot by using surveillance camera and FCM classifier," Fuzzy
Systems, 2009. FUZZ-IEEE 2009.
ECE,SIETK 12