Lane Line Detection Algorithm For Self-Drive Cars
Lane Line Detection Algorithm For Self-Drive Cars
SUBMITTED BY
2021-2022
CERTIFICATE
Submitted By
Saurabh Ahire Seat No: B150624204
Pratik Chandore Seat No: B150624217
Yashoda Gavit Seat No: B150624225
Yogesh Khalane Seat No: B150624235
Is a bonafide work carried out by them under the supervision Prof. S. S. Banne of and it
is submitted towards the partial fulfillment of the requirement of Savitribai Phule Pune
University, Pune for the award of the degree of Bachelor of Engineering (Computer
Engineering).
Place : Nashik
Date :
ACKNOWLEDGEMENT
It is a great pleasure in presenting the preliminary project report on ‘Lane line detection
algorithm for self-driving car’. We would like to take this opportunity to thank our
internal guide Prof. S. S. Banne & Head of Department Prof. V. D. Badgujar for giving
us all the help and guidance we needed. So really grateful to him for their kind support.
Their valuable suggestions were very helpful. We are thankful to management and Dr.
H. N. Kudal Principal of our college. We are thankful to our family members for
supporting and to encourage us and for providing their guidance, for Our Project. In the
end our thanks to all friends’ colleagues for providing their useful suggestions which
contributed greatly in making our project successful.
Being able to detect lane lines could be a crucial task for any self-driving autonomous
vehicle. In this project, to identify lane lines on the road OpenCV is used. OpenCV
method uses the input images to find any lane lines command among and also for
rendering out an illustration of the lane. The OpenCV tools like color selection, the region
of interest selection, grey scaling, Gaussian smoothing, Canny Edge Detection, and
Hough Transform line detection are being employed. A color detection algorithm
identifies pixels in a picture that matches a given color or color range. Region of interest
selection allows you to select a rectangle in an image, crop the rectangular region and
finally display the cropped image. Grey scaling is the method of changing an image from
different color spaces e.g., RGB, CMYK, HSV, etc. to shades of gray.
Keywords: Lane Line Detection, Hough Transform, Canny Edge Detection Algorithm
CONTENTS
Chapter 1
INTRODUCTION
1.1 Overview
The main aim of this project is to design and construct a lane line detection Algorithm for
self-driving cars. Lane line detection is the process of detecting lanes of the road via the
automate system of the car which is using camera, cancers and process the information in
computing unit of the computer of the car.
Algorithm for self-driving cars. Lane line detection is the process of detecting lanes
of the road via the automate system of the car which is using a camera, cancers and
processes the information in the computing unit of the computer of the car.
Traffic accidents have become one of the most serious problems in today’s world.
Roads are the mostly chosen modes of transportation and provide the finest connections
among all modes. Most frequently occurring traffic problem is the negligence of the
drivers and it has become more and more serious with the increase of vehicles. Increasing
the safety and saving lives of human beings is one of the basic functions of Intelligent
Transportation System (ITS). Intelligent transportation systems are advanced applications
which aim to provide innovative services relating to different modes of transport and
traffic management. This system enables various users to be better informed and make
safer, more coordinated, and smarter use of transport networks. These road accidents can
be reduced with the help of road lanes or white markers that assist the driver to identify
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 1
Chapter 1 Introduction
______________________________________________________________________
the road area and non-road area. A lane is a part of the road marked which can be used
by a single line of vehicles asto control and guide drivers so that the traffic conflicts can
be reduced.
1.2 Motivation
➢ Lane Line detection is a critical component for self-driving cars and also for
computer vision in general. This concept is used to describe the path for self-
driving cars and to avoid the risk of getting in another lane.
➢ Using computer vision techniques in Python, we will identify road lane lines in
which autonomous cars must run. This will be a critical part of autonomous cars,
as the self-driving cars should not cross its lane and should not go in opposite
lane to avoid accidents.
➢ To detect white markings in the lane, first, we need to mask the rest part of the
frame. We do this using frame masking. The frame is nothing but a NumPy array
of image pixel values. To mask the unnecessary pixel of the frame, we simply
update those pixel values to 0 in the NumPy array.
➢ After making it we need to detect lane lines. The technique used to detect
mathematical shapes like this is called Hough Transform. Hough transformation
can detect shapes like rectangles, circles, triangles, and lines.
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 2
Chapter 1 Introduction
______________________________________________________________________
• To develop a scalable project which can be extended to capture the lane line
on the road in tough conditions.
• The aim of this thesis is to avoid accidental deaths and provide a better safety
on roads, by use of advanced technologies in driving assistance system. The
clear idea of the important aims and objectives of this thesis is explained with
the help of block diagram.
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 3
Chapter 1 Introduction
______________________________________________________________________
Outcome:
• A lane line visual on the live screen on the car display monitor.
• A tool which has a wide range of lane line detection using some python libraries.
• These systems which showcase the ability to see what human can’t see is beyond
the limitation of human being.
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 4
Chapter 2 Literature Survey
______________________________________________________________________
Chapter 2
LITERATURE SURVEY
➢ Saha et al. [2012] [1] discussed an algorithm for detection of marks of road lanes
and road boundary by using intelligent vehicles. It converted the RGB road scene
image into gray image and employed the flood-fill algorithm to label the connected
components of that gray image. After that the largest connected component obtained
by the algorithm and which was the road region was extracted. The unwanted region
was detected and subtracted like outer-side of the road. The extracted connected
component was filtered to detect white marks of road lane and road boundary. The
road lane detection algorithm still had some problems such as critical shadow
condition of the image and color of road lanes other than white.
➢ Tseng et al. [2005] [2] gave a lane marking detection algorithm by using geometry
information and modified Hough transform. In that algorithm the captured image
was divided into road part and non-road part by using camera geometry information.
The color road image was quantized into a binary image. The modified Hough
transform with road geometry consideration was used to detect the lane markings. The
histogram of intensities was applied to quantize the road image into a binary image.
A modified Hough transform method has been developed to detect the lane markings
in road image by using the road geometry information. It was time consuming because
Hough transform was a full search algorithm in parameter space. It also failed when
the lane boundaries intersected in a region which was a non-road part.
➢ Shen et al. [2012] [3] discussed a monocular vision system that could locate the
positions of the road lane in real time. An algorithm proposed for lane detection
using single camera. The algorithm worked in five steps. Initially edge detection was
done to find all present edges from road image as road line required was included in
it. Canny approach has been used to achieve the edge map from road image for its
accurate edge detection. Then matching was done to eliminate unwanted figures. A
priority and orientation-based searching method has been used for enhance and label
potential lane segments from edge map, degrading unwanted edge features. Based on
results from search, a linking condition was used to assemble matched segment that
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 5
Chapter 2 Literature Survey
______________________________________________________________________
further strengthen the confidence of the potential lane line. Finally, a cluster algorithm
was used to localize the road-lane lines.
➢ M. Dhana Lakshmi et al. [2012] [4] discussed a novel algorithm to detect white-
and yellow-colored lanes on the road. An automatic lane marking violence detection
algorithm was designed and implemented in real time. The lane detection method was
robust and effective in finding the exact lanes by using both color and edge
orientations. The color segmentation procedure identified the yellow and white
colored lanes followed by edge orientation in which the boundaries was eliminated,
regions was labeled and finally the lanes was detected. As the height of the camera
was relatively constant with respect to the road surface, the road portion of the image
can be exclusively cropped by providing the coordinates, so that identifying the lanes
became much more efficient.
➢ Cuong Le et al. [2012] [5] discussed the task of finding the pedestrian lanes that
are indicated by painted markers for the vision impaired people. An assistive
navigation system has been developed for the blind by employing geometric figures
like straight line, parabola, or hyperbola. By combining color and local intensity
information, this method detected correctly pedestrian marked lanes in different
illumination and weather conditions (sunny, cloudy, strong shadows, times of day).
This method has also been evaluated and compared with existing approaches. It has
been found that the potential of the method in challenging environmental conditions.
➢ Shan Xu et al. [2012] [6] discussed a method of structured road lane detection
for blind travel aid. Median Filter has been implemented to process image firstly,
then mark off the region of interesting in the initial image. Using Canny Edge
Enhancement, threshold has been used to segment the image; road lane was fitted by
modified Hough Transformation. Finally, according to the detected region, it judged
whether racing course of bind has a deviation. It has been proved that this algorithm
was very robust and real-time.
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 6
Chapter 3 Software Requirement Specification
______________________________________________________________________
Chapter 3
Applications
• Robotics
• Laboure Charge Reduction
• Virtual Motion (Gaming)
• Transport
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 7
Chapter 3 Software Requirement Specification
______________________________________________________________________
3.3.2 Software Interface
• Anaconda (Jupyter Notebook)
Anaconda is a distribution of the Python and R programming languages
for scientific computing, that aims to simplify package management and
deployment. The Jupyter Notebook, an open-source, web-based IDE with
deep cross-language integration that allows you to create and share
documents containing live code, equations, visualizations, and narrative
text. Data scientists and engineers love using Jupyter for data cleaning and
transformation, statistical modeling, visualization, machine learning, deep
learning, and much more. Jupyter Notebook’s format (ipynb) has become
an industry standard.
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 8
Chapter 3 Software Requirement Specification
______________________________________________________________________
impose constraints on the design or implementation (such as performance engineering
requirements, quality standards, or design constraints). The software requirements
specification document enlists all necessary requirements that are required for the project
development. To derive the requirements, we need to have clear and thorough
understanding of the products to be developed. This is prepared after detailed
communications with the project team and customer. A software requirements
specification (SRS) is a comprehensive description of the intended purpose and
environment for software under development.
The SRS fully describes what the software will do and how it will be expected to
perform. An SRS minimizes the time and effort required by developers to achieve desired
goals and also minimizes the development cost. A good SRS defines how an application
will interact with system hardware, other programs and human users in a wide variety of
real- world situations. Parameter such as operating speed, response time, availability,
portability, maintainability, footprint, security and speed of recovery from adverse events
are evaluated. Methods of defining an SRS are described by the IEEE (Institute of
Electrical and Electronics Engineers) specification 830 1998. There are many good
definitions of System and Software Requirements Specifications that will provide us a
good basis upon which we can both define a great specification and help us identify
dependencies in our past efforts. There is also a lot of great students on the web about
writing good specifications. the problem is not lack of knowledge about how to create a
correctly formatted specification or even what should go into the specification.
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 9
Chapter 3 Software Requirement Specification
______________________________________________________________________
3.4.2 Safety Requirements
Antivirus should be installed. Refers to the technical innovations and
procedures applied to the hardware and operation systems to protect against
deliberate or accidental damage from a defined threat.
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 10
Chapter 3 Software Requirement Specification
______________________________________________________________________
• Ethical
Like a spoken language interpreter, the interpreter is a medium. This
means they are not involved in the conversation but rather transmit what
is said between speakers. The information discussed during appointments
cannot be revealed outside of the appointment. Everything that is
discussed must remain confidential. The best interpreters are cognizant of
their role and that their actions should not interfere with the word-for-
word, context or meaning of the interpretation. In addition, professional
interpreters are educated in HIPAA regulations. This ensures that they are
mindful of personal information sharing and the privacy laws that
coincide with the healthcare industry. HIPAA and the Code of Ethics set
forth by the Registry of Interpreters for the Deaf are put in place to protect
the Deaf or Hard- of-Hearing person and the interpreter, should an issue
arise.
• Experienced
Interpreters work in legal, medical, education and corporate settings.
Although it can be beneficial to specialize in one area, the demand for an
interpreter is always present. Overall, well-rounded professional
experience and training are what make an interpreter exceptional.
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 11
Chapter 3 Software Requirement Specification
______________________________________________________________________
3.5.2 Hardware Requirements
Sr. No. Parameter Description
Waterfall Model is also called as the Linear Sequential Life Cycle Model. This model
followed in the sequential order and so we move to next step of development of software.
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 12
Chapter 3 Software Requirement Specification
______________________________________________________________________
2. System Design
In this system design phase, we design the system which is easily understood for end
user i.e., user friendly. We design some UML diagrams and data flow diagram to
understand the system flow and system module and sequence of execution. We have
analyse10basepapersforanalysisphase.
3. Design
In implementation phase of our project, we have implemented various module
required of successfully getting expected out come at the different module levels.
With inputs from system design, the system is first developed in small programs called
units, which are integrated in the next phase. Each unit is developed and tested for its
functionality which is referred to as Unit Testing. Design of web screen will be done
in this phase.
4. Testing
The different test cases are performed to test whether the project module is giving
expected outcome in assumed time. All the units developed in the implementation
phase are integrated into a system after testing of each unit. Post integration the entire
system is tested for any faults and failures.
5. Deployments Of System
Once the functional and nonfunctional testing is done, the product is deployed in the
customer environment or released into the market.
6. Maintenance
There are some issues which come up in the client environment. To fix those issues
patches are released. Also, to enhance the product some better versions are released.
Maintenance is done to deliver these changes in the customer environment. All these
phases are cascaded to each other in which progress is seen as flowing steadily
downwards like a waterfall through the phases. The next phase is started only after
the defined set of goals are achieved for previous phase and it is signed off, so the
name “Waterfall Model”. In this model phases do not overlap.
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 13
Chapter 4 System Design
______________________________________________________________________
Chapter 4
SYSTEM DESIGN
Introduction
With the rapid development of science and technology, intelligent cars, as representatives
of intelligent products, have become a hot research topic today. The gradual growth of
the automobile industry has led to a rapid increase in the number of automobiles in India,
but the traffic problem has become increasingly prominent, which seriously threatens
people's travel safety. Autopilot technology is particularly important, and a lot of research
and development have been made at home and abroad. In the Spring Festival of 2018,
Baidu Apollo platform staged the driving charm of unmanned vehicles on the Mubai
Bandra-Worli Sea Link, reflecting the maturity of India’s autonomous driving
technology. Lane line detection technology is the important technology of unmanned
driving. The correctness of the detection directly determines whether the driving is safe.
The basic idea is to obtain the current road information through the on-board camera, and
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 14
Chapter 4 System Design
______________________________________________________________________
use the relevant algorithm to detect the left and right lane lines of the lane (if there is no
lane line on the right, the road edge is detected), finally, the vehicle travel decision is
made. Since unmanned driving is online in real time, the environment in each time slot is
different, so real-time is also important while ensuring the correct rate. At present, based
on the development status at home and abroad, the algorithm of lane line detection can be
roughly divided into two types, which are based on feature and segmentation based on
model. In 2018, Y. Su proposed a robust vanishing point constraint lane detection method
based on stereo platform. This method can detect both straight lane and curve lane without
considering any parameter lane model. C Lee proposed a robust and real-time lane
detection algorithm based on vision. The algorithm has an effective region of interest and
can effectively reduce the high noise level and computation time. The algorithm can
process a gradient cue and a color cue together and a line clustering with scan-line tests
to verify the characteristics of the lane markings. X. W. Wei used improved Hough
transform to realize Lane detection. By controlling the slope of two lanes before and after
comparison, a limitation is made near the previously detected lane line area, set ROI and
perform the search of diagonal pixels to reconstruct the corner part. In this paper, a lane
line detection algorithm based on improved Hough transform is proposed in terms of
real-time performance and accuracy. In order to improve the real time of image
processing and reduce the interference of useless factors in the image, wavelet lifting is
used to process the image to extract low-frequency wavelet coefficients sub-images;
Compared with the traditional gray average binarization algorithm and maximum
entropy binarization algorithm, the binarization image processing based on edge features
can retain more original details of the image, which is conducive to processing the image
obtained under weak illumination intensity; Then the conditional constraints are added to
Hough transform to improve the accuracy and real-time performance of detection;
Finally, the improved Hough transform method is used to detect the lane line to eliminate
the interference line and pseudo-lane line, and the correct lane line is extracted by fitting
the straight line with regression analysis method.
Traffic accidents have become one of the most serious problems in today’s world.
Roads are the mostly chosen modes of transportation and provide the finest connections
among all modes. Most frequently occurring traffic problem is the negligence of the
drivers and it has become more and more serious with the increase of vehicles. Increasing
the safety and saving lives of human beings is one of the basic functions of Intelligent
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 15
Chapter 4 System Design
______________________________________________________________________
Transportation System (ITS). Intelligent transportation systems are advanced applications
which aim to provide innovative services relating to different modes of transport and
traffic management. This system enables various users to be better informed and make
safer, more coordinated, and smarter use of transport networks. These road accidents can
be reduced with the help of road lanes or white markers that assist the driver to identify
the road area and non-road area. A lane is a part of the road marked which can be used
by a single line of vehicles as to control and guide drivers so that the traffic conflicts can
be reduced.
Smooth the image with a Gaussian filter to reduce noise and unwanted details and
textures.
Where,
The computed edge strengths are compared to the smoothed image in Figure
• Success Conditions:
Camera Embedding, Conversion, Sign Language, Text.
• Failure Conditions:
No data set, fail to read data set.
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 16
Chapter 4 System Design
______________________________________________________________________
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 17
Chapter 4 System Design
______________________________________________________________________
A description of each major software function, along with data flow (structured analysis)
or class hierarchy (Analysis Class diagram with class description for object-oriented
system) is presented.
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 18
Chapter 4 System Design
______________________________________________________________________
Data Description
Data objects that will be managed/manipulated by the software are described in this
section. The database entities or files or data structures required to be described. For data
objects details can be given as below.
Data objects and their major attributes and relationships among data objects are described
using an ERD- like form.
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 19
Chapter 4 System Design
______________________________________________________________________
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 20
Chapter 4 System Design
______________________________________________________________________
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 21
Chapter 4 System Design
______________________________________________________________________
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 22
Chapter 4 System Design
______________________________________________________________________
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 23
Chapter 5 Project Plan
______________________________________________________________________
Chapter 5
PROJECT PLAN
Cost Estimate
C=2*90*140=25200/-
Therefore, the cost of project is 25200/-(approx.)
Time Estimates
D=2.0 * (E) ˆ0.32
D=8.75 months
The approximate duration of project is 9 months. Number of people required
for the project N=22.31/7
N=2.47
N=2 people
Therefore 2 people are required to successfully complete the project on
schedule.
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 24
Chapter 5 Project Plan
______________________________________________________________________
5.1.2 Project Resources
1. Hardware
• Computer System – RAM 4GB, Hard disk 200MB, Processor i3 or
above
2. Software
• Operating System - Windows 8 or above
• Anaconda/ MIT App Inventory
• Python
• Windows
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 25
Chapter 5 Project Plan
______________________________________________________________________
2. Is end-user enthusiastically committed to the project and the system/product to
be built?
• No
3. Are requirements fully understood by the software engineering team and its
customers?
• Yes
6. Does the software engineering team have the right mix of skills?
• Yes
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 26
Chapter 5 Project Plan
______________________________________________________________________
5.2.2 Risk Analysis
The risks for the Project can be analyzed within the constraints of time and
quality.
Impact
ID Risk Description Probability
Schedule Quality Overall
1 Network
Low Low High High
Unavailable
2 Security Low Low High High
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 27
Chapter 5 Project Plan
______________________________________________________________________
5.2.3 Overview of Risk Mitigation, Monitoring, Management
Risk ID 1
Risk Description Description 1
Category Development Environment
Source Software requirement Specification document
Probability Low
Impact High
Response Mitigate
Strategy Strategy
Risk Status Occurred
Risk ID 2
Risk Description Description 2
Category Requirements
Source Software Design Specification documentation review
Probability Low
Impact High
Response Mitigate
Strategy Better testing will resolve this issue
Risk Status Identified
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 28
Chapter 5 Project Plan
______________________________________________________________________
Risk ID 3
Risk Description Description 3
Category Technology
Source This was identified during early development and testing.
Probability Low
Impact Very High
Response Accept
Strategy Example Running Service Registry behind proxy
Risk Status Identified
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 29
Chapter 5 Project Plan
______________________________________________________________________
5.3.2 Task Network
2) The basic idea is to obtain the current road information through the on-board
camera, and use the relevant algorithm to detect the left and right lane lines of the
lane (if there is no lane line on the right, the road edge is detected), finally, the
vehicle travel decision is made. Since unmanned driving is online in real time, the
environment in each time slot is different, so real-time is also important while
ensuring the correct rate. At present, based on the development status at home and
abroad, the algorithm of lane line detection can be roughly divided into two types,
which are based on feature.
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 31
Chapter 5 Project Plan
______________________________________________________________________
5) C. Lee proposed a robust and real-time lane detection algorithm based on vision.
The algorithm has an effective region of interest and can effectively reduce the
high noise level and computation time. The algorithm can process a gradient cue
and a color cue together and a line clustering with scan-line tests to verify the
characteristics of the lane markings.
7) In this paper, a lane line detection algorithm based on improved Hough transform
is proposed in terms of real-time performance and accuracy. In order to improve
the real time of image processing and reduce the interference of useless factors in
the image, wavelet lifting is used to process the image to extract low-frequency
wavelet coefficients sub-images; Compared with the traditional gray average
binarization algorithm and maximum entropy binarization algorithm, the
binarization image processing based on edge features can retain more original
details of the image, which is conducive to processing the image obtained under
weak illumination intensity; Then the conditional constraints are added to Hough
transform to improve the accuracy and real-time performance of detection;
Finally, the improved Hough transform method is used to detect the lane line to
eliminate the interference line and pseudo-lane line, and the correct lane line is
extracted by fitting the straight line with regression analysis method.
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 32
Chapter 6 Project Implementation
______________________________________________________________________
Chapter 6
PROJECT IMPLEMENTATION
Lane line is an important reference for safe driving. In order to improve the accuracy and
real-time performance of lane line detection, a lane line detection algorithm based on
improved Hough transform is proposed in this paper. Firstly, the lifting algorithm of
wavelet is used to extract the low-frequency wavelet coefficients of the image, so as to
reduce the complexity of the image and improve the efficiency of image processing; Then
Canny operator is used to detect the edge of the image region of interest, and threshold is
automatically selected according to edge information for threshold processing; Finally,
three constraints are proposed from two aspects of angle and lane width to improve the
Hough transform to detect lane lines, and the correct lane lines are fitted by linear
regression method. Experiments show that the proposed algorithm has good correctness
and real-time performance for lane line detection. The recognition accuracy is above 94%
and the average processing time of each frame is 25.6ms.
Anaconda:
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 33
Chapter 6 Project Implementation
______________________________________________________________________
Edition, while other products from the company are Anaconda Team Edition and
Anaconda Enterprise Edition, both of which are not free.
Python:
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 34
Chapter 6 Project Implementation
______________________________________________________________________
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 35
Chapter 6 Project Implementation
______________________________________________________________________
The Canny edge detector is an edge detection operator that uses a multi-stage algorithm
to detect a wide range of edges in images. It was developed by John F. Canny in 1986.
Canny also produced a computational theory of edge detection explaining why the
technique works.
Canny edge detection is a technique to extract useful structural information from different
vision objects and dramatically reduce the amount of data to be processed. It has been
widely applied in various computer vision systems. Canny has found that the
requirements for the application of edge detection on diverse vision systems are relatively
similar. Thus, an edge detection solution to address these requirements can be
implemented in a wide range of situations. The general criteria for edge detection include:
• Detection of edge with low error rate, which means that the detection should
accurately catch as many edges shown in the image as possible.
• The edge point detected from the operator should accurately localize on the center of
the edge.
• A given edge in the image should only be marked once, and where possible, image
noise should not create false edges.
To satisfy these requirements Canny used the calculus of variations – a technique which
finds the function which optimizes a given functional. The optimal function in Canny's
detector is described by the sum of four exponential terms, but it can be approximated by
the first derivative of a Gaussian.
Among the edge detection methods developed so far, Canny edge detection algorithm is
one of the most strictly defined methods that provides good and reliable detection. Owing
to its optimality to meet with the three criteria for edge detection and the simplicity of
process for implementation, it became one of the most popular algorithms for edge
detection.
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 36
Chapter 6 Project Implementation
______________________________________________________________________
First, we will have a look at our projects User Interface. These are the screenshots of
project outputs.
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 37
Chapter 6 Project Implementation
______________________________________________________________________
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 38
Chapter 6 Project Implementation
______________________________________________________________________
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 39
Chapter 6 Project Implementation
______________________________________________________________________
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 40
Chapter 6 Project Implementation
______________________________________________________________________
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 41
Chapter 7 Conclusion
______________________________________________________________________
Chapter 7
CONCLUSION
7.1 Conclusion
A real time vision-based lane detection method was proposed. Image segmentation and
removing the shadow of the road were processed. Canny operator was used to detect
edges that represent road lanes or road boundaries. A hyperbola-pair road model used to
deal with the occlusion and imperfect road condition. A series of experiment showed that
the lanes were detected using Hough transformation with restricted search area and the
projection of their intersection will form the last scan point called the horizon.
Furthermore, in order to search out for the left and right vector points that represent the
road lanes, the lane scan boundary phase uses the edge image and the left and right
Hough lines and the horizon line as inputs, to effectively allocate the lane points. That
was demonstrated by two hyperbola lines. The experimental results showed that the
system is able to achieve a standard requirement to provide valuable information to the
driver to ensure safety.
In this system we will add OPEN CV, in future for more efficiency with the AI module
this system can also be used for system performance and accuracy.
7.3 Applications
• Robotics: Robots are widely used in manufacturing, assembly, packing and
packaging, mining, transport, earth and space exploration, surgery, weaponry,
laboratory research, safety, and the mass production of consumer and industrial
goods.
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 42
Chapter 7 Conclusion
______________________________________________________________________
• Labour Charge Reduction: The equivalent hourly cost of robot labor has steadily
declined. One thing that’s not often discussed with collaborative robots is their ability
to provide quicker return on investment (ROI) than their heavier, more dangerous
industrial counterparts. Furthermore, collaborative robots are traditionally cheaper
than industrial robots, and still provide a much faster ROI when accounting for this
fact.
• Virtual Motion (Gaming): Lane detection and control has become a common feature
in many vehicles today. Additionally, it is a basic starting point for anyone going in
the direction of Autonomous Driving. But for most people who are not working on
autonomous driving or computer vision, starting with it might appear much more of
a daunting task than it actually is.
• Transport: We’ve all heard of self-driving cars, but this is just the start. From robot
buses already being trialed on European streets to drones set to create a whole new
transport network in city skies, companies are investing big to change the face of
private and commercial travel. In cities such as Paris, Las Vegas, Tokyo and Dubai
similar multi-person vehicles have and are being tested. Meanwhile in Singapore
they’ve gone one step further, building a whole town to help test and advance robot
bus tech.
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 43
Chapter 8 Bibliography
______________________________________________________________________
Chapter 8
BIBLIOGRAPHY
Chapter 9
APPENDIX A
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 45
Chapter 9 Appendix
______________________________________________________________________
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 46
Chapter 9 Appendix
______________________________________________________________________
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 47
Chapter 9 Appendix
______________________________________________________________________
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 48
Chapter 9 Appendix
______________________________________________________________________
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 49
Chapter 9 Appendix
______________________________________________________________________
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 50
Chapter 9 Appendix
______________________________________________________________________
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 51
Chapter 9 Appendix
______________________________________________________________________
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 52
Chapter 9 Appendix
______________________________________________________________________
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 53
Chapter 9 Appendix
______________________________________________________________________
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 54
Chapter 9 Appendix
______________________________________________________________________
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 55
Chapter 9 Appendix
______________________________________________________________________
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 56
Chapter 9 Appendix
______________________________________________________________________
APPENDIX B
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 57
Chapter 9 Appendix
______________________________________________________________________
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 58
Chapter 9 Appendix
______________________________________________________________________
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 59
Chapter 9 Appendix
______________________________________________________________________
_____________________________________________________________________________
“BVCOERI, Department of Computer Engineering 2021-22” 60