Autonomous Off-Road Vehicle Using Computer Vision for Surveillance Applications

CSEF · 2017 Computational Systems & Analysis Third Award

Overview

Objectives/Goals The goal of this project was to create an algorithm that could effectively maneuver an autonomous robot by analyzing the video stream from a camera. The camera, mounted on a 6WD robot, would send the video to a laptop for processing and determination of the next location to move to. The robot should be able to autonomously drive along a sidewalk, or outdoor trail with a defined path. The algorithm, with no prior knowledge of its environment and a defined trail with adequate lighting, should guide a robot without human intervention. Methods/Materials The system consists of a 6-wheeled differential robot using DC motors and an Arduino Mega board, with a camera and laptop mounted on top. The camera sends the input video to the laptop which then analyses the video and sends commands back to the Arduino via USB. The algorithm was developed in C++ using the computer vision library OpenCV 3.1. The algorithm consists of a processing pipeline with an initialization stage and a single processing loop. The first step is the frame acquisition which captures the frame, then a Gaussian blur filter smooths out the input. A set of filters are used to eliminate the undesired background, and finally the next location is calculated and the speed of the motors is transferred to the micro-controller which is derived using the center of mass and computed with OpenCV. I designed the robot on SolidWorks and 3D printed the parts with PLA filament. Results I tested the robot on an outdoor trail where it was able to stay in the center of the path even in the presence of strong curves, while moving at maximum speed. There is a limitation on the algorithm that is intrinsic to the use of a threshold to determine the best path. If there is an obstacle with the same contrast and texture as the path, the algorithm may choose the wrong direction. Conclusions/Discussion I developed a program, and built a robot to test it, that allows a 6WD vehicle to autonomously navigate a series of paths. The noise produced by this robot is negligible, can operate under any weather condition, and possesses no threats to human bystanders. The characteristics of this robot contrasts that of other surveillance methods, such as drones which are not permitted to fly above populated regions, have weather impact their flights, and noise as a concern. All this combines to make a robot with this algorithm a valid option for real-world applications.

Summary statement

I designed and built an outdoor robot that uses a computer vision algorithm to navigate itself autonomously.

Help received

I took engineering courses at my high school that allowed me to learn programming and 3D computer modeling. I have also been a part of multiple robotics teams including the FTC competition where I was the main developer. My main source of information came from the internet.

Awards (1)

Competition history

  • CSEF 2017 Computational Systems & Analysis · Entry S0802

Resources

Related projects

Closest projects by meaning, across every fair and year in the corpus.

Browse more like this

Source: California Science & Engineering Fair public projects

Save projects to your library

Sign in with Google to keep track of projects you find interesting, organized into folders. An account also raises your daily allowance for “Has this been done?”, and lets you create a key for the MCP server with a much higher limit than anonymous use. Browsing stays public.

Continue with Google