From MAE/ECE 148 - Introduction to Autonomous Vehicles
Revision as of 23:33, 20 March 2020 by Winter2020Team1 (talk | contribs) (→‎GPS Navigation)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

These are some ideas for possible projects to be develop in the class.

Code is collected on the class github repository.

Stay between the lines

Use computer vision to localize the vehicle and drive within the track's lane boundaries.

See 2018FallTeam1 for details.

Playing Fetch

Using image recognition to localize, track and fetch a tennis ball.

See project fetch for details.

GPS Navigation

Equip the car with GPS and use it to perform navigation tasks.

See project gps, 2018SpringTeam3, 2018FallTeam5, and 2020WinterTeam1 for details.

Stereo Vision

Equip the car with two cameras, design a new controller that can take advantage of the stereo vision and evaluate its performance.

See project stereo for details.

Encoders for Odometry

Incorporate encoders on the wheels of the car and use the new measurement to improve the performance of the controller.

See project encoders and 2018FallTeam4 for details.


Develop ROS nodes for the current setup of the car and demonstrate its capability.

See project ROS and 2019WinterTeam2 for details.

City Driving Suite

Equip the car with an additional camera and a suite of ultrasonic sensors so the car can evaluate and respond to common stimuli found in city driving.

See project City, 2018SpringTeam7,and 2019WinterTeam4 for details.

3D Vision

Equip the car with a camera that can sense depth, design a new controller that can take advantage of the stereo vision and evaluate its performance.

See 2018FallTeam3 for details.

Parallel Parking

Equip the car with ultrasonic sensor, design and train a controller that can park the car autonomously.

See 2018FallTeam2, 2019WinterTeam6, and 2019WinterTeam7 for details.


Follow the car in front of you keeping distance. Control first car by remote control, then all autonomous.

See 2018FallTeam6 and 2019WinterTeam10 for details.

Enhanced Image Processing

Incorporate image processing filters that can enhance the performance of the car. Ideas include: split field of view, line detection and following.

Obstacle Avoidance with Lidar

Our project focuses on improving the safety of autonomous driving. For a human driver, there are many scenarios where obstacles must be detected and avoided, such as a slow moving vehicle or debris in the road; the safest thing to do in such situations may be to change lanes. We focused on this type of situation and attempted to develop our autonomous vehicle to mimic this behavior. Our goal is to have the vehicle detect an obstacle in its path and change lanes to avoid a collision and continue driving autonomously.

See 2018SpringTeam1 for details.

Follow Me

Identify and follow a person, given two people in the field of view. Tiny YOLO was fed into OpenCV to identify targets in a live feed.

See 2018SpringTeam2 for details.


The goal of our project was to train the robocar to recognize common traffic signs, such as a stop sign and speed limits.

See 2018SpringTeam4 and 2019WinterTeam8 for details.

Vehicle-to-Vehicle Communication

The aim of this project is to improve upon the existing DonkeyCar autonomous control framework by implementing situational awareness through inter-car communication of data collected by on-board sensors. To achieve this end, two cars were equipped with infrared and ultrasound sensors which were able to receive data from the track environment. The track environment was demarcated into two zones, and the entry point to a specific zone was fitted with an infrared signal emitter. This was done so that a car would know which zone it was in when its infrared sensor picked up a signal from an infrared emitter set up at a zone entry point. Zone and sensor information were then broadcasted to both cars in order to take action according to a given situation. For instance, if a car enters a zone that the other car is already in, the car that entered the zone last will slow down until the lead car exits the zone.

See 2018SpringTeam5 for details.

Voice Control

The objective of this project is to add an voice control over the original car model. This voice feature will allow users to talk to the car to perform things like emergency stop as well as switching back and forth from autonomous-mode and joystick-mode.

See 2018SpringTeam6 and 2019WinterTeam1 for details.

Car plus drone

Can a DJI tello drone autonomously land on a moving car?

See 2018FallTeam7 for details.

Pick and place

We decided to build a delivery robot. The ultimate goal of this project is to pick up objects at a desired location and deliver them to a different location.

See 2019WinterTeam9 for details.

OpenCV Priors to Increase Robustness

We used OpenCV to pre-process images from the camera to detect edges/lanes and train using those. The goal was to perform better than the default donkeycar model.

See 2019FallTeam6 for details.