Computer Vision: Self-Driving Cars Celine Tan Eshi Kohli Kyara Torres-Olivares
Laura Rivas Rosnel Alejandro Leyva-Cortes Sophie Mansoor
Autonomous Vehicles
What are Autonomous Vehicles?
●
They have the ability to drive themselves without need for a human driver.
●
Artificial intelligence is applied, which allows them to... ○ Guide themselves ○ Prevent collisions ○ Detect pedestrians/objects
Tasks in Autonomous Vehicles ●
Object detection and identifying driving path ○ LiDAR is used for detecting objects in the road and car lanes as well ■ What is LiDAR?
●
Interpreting street signs ○ Image capturing
Human Computer Interaction Challenges Apart from computer vision challenges, autonomous vehicles must work with human drivers and pedestrians which can become a challenge ●
Human driver and autonomous vehicle interaction
●
Pedestrian and computer interaction
Beep Beep!!
Get out of the way!!
Our Dataset For this project we used the German Traffic Signs Dataset This dataset contains many images of traffic signs in Germany which we used to apply image pre-processing and different models.
Image Processing in Python
Introduction - German Traffic Signs Dataset What does this data set contain?
Lane Detection Original Image
Class: 6
Grayscale Image
Class: 14
A multitude of low-res images of traffic signs in germany
Grayscale + Blur
Detected white pixels = traffic lanes!
Why and how do we use Image Pre-processing?
**CV2 reads in images in BGR, not RGB
Applications on German Traffic Signs Dataset Threshold WhiteSign Pixels Original- Stop Image
Original Stop Sign Image Gaussian Filter - Smoothing src
Canny Edge Detector Gaussian Filter
Example of Segmentation on the road
Box Filter - Moving Avg.
Box Filter
AI Models and Analysis
Classes We Used
20-speed sign Class: [0]
80-speed sign Class: [5]
Priority sign Class: [12]
Stop sign Class: [14]
Pedestrian sign Class: [27]
GRAY
Logistic Regression Score: 0.97
Nearest Neighbor Score: 0.51
Neural Networks Score: 0.93
CORRECT
INCORRECT
INCORRECT
INCORRECT
INCORRECT
INCORRECT
INCORRECT
CORRECT
INCORRECT
CORRECT
INCORRECT
CORRECT
COLOR
Logistic Regression Score: 1.0
Nearest Neighbor Score: 0.54
Neural Networks Score: 0.89
CORRECT
INCORRECT
INCORRECT
CORRECT
CORRECT
CORRECT
CORRECT
CORRECT
CORRECT
CORRECT
CORRECT
CORRECT
Convolutional Neural Networks
Convolution Basically just using filters!!!
Pooling
CNNS vs Fully Connected NNs Cons:
Pros: - more accurate -
more suited to object classification, since it looks at pixels in context of each other
- automatic feature extraction - fewer weights needed (efficiency)
- need lots of computational power - need lots of training data - not invariant to rotation and scale - more complex (interpretability + execution)
Saliency
Adversarial Attacks
+
Class 0 (20 sign)
=
Class 2 (50 sign)
Ethics
Should self-driving cars be programmed to equally value the lives of passengers and pedestrians?
Passengers
●
Who will buy it; Has to seem safe
●
Adoption of AVs is necessary
●
Overall, AVs will be safer
Pedestrians
● ● ● ●
Classism, racism, and healthcare concerns Advanced safety measures Who wants it on the road? Reducing human error and protection
Q&A
Max Pooling - better at picking out extreme features
Average Pooling - image contrast learning an average would give you a strong signal in middle and soft at the edges, leaving you with more information on where the edges of the feature were localized (which is lost with max-pooling)