Developing a Computer Vision System for Autonomous Rover Navigation

Similar documents
Total Hours Registration through Website or for further details please visit (Refer Upcoming Events Section)

Moving Object Follower

Senior Design I. Fast Acquisition and Real-time Tracking Vehicle. University of Central Florida

Team KMUTT: Team Description Paper

MAKER: Development of Smart Mobile Robot System to Help Middle School Students Learn about Robot Perception

FACULTY MENTOR Khoshabeh, Ramsin. PROJECT TITLE PiB: Learning Python

A simple embedded stereoscopic vision system for an autonomous rover

Implementation Of Vision-Based Landing Target Detection For VTOL UAV Using Raspberry Pi

Vishnu Nath. Usage of computer vision and humanoid robotics to create autonomous robots. (Ximea Currera RL04C Camera Kit)

A New Approach to Control a Robot using Android Phone and Colour Detection Technique

Mechatronics. STEAM Clown Production. STEAM Clown & Productions Copyright 2016 STEAM Clown

Program.

Software Computer Vision - Driver Assistance

LESSONS Lesson 1. Microcontrollers and SBCs. The Big Idea: Lesson 1: Microcontrollers and SBCs. Background: What, precisely, is computer science?

Human Detection With SimpleCV and Python

AUTONOMOUS UNDERWATER VEHICLE Introductory Session. January 07, 2017 IITK

Image Processing : Introduction

KMUTT Kickers: Team Description Paper

E90 Project Proposal. 6 December 2006 Paul Azunre Thomas Murray David Wright

Terry Max Christy & Jeremy Borgman Dr. Gary Dempsey & Nick Schmidt November 29, 2011

Mobile SuDoKu Harvesting App

Major Project SSAD. Mentor : Raghudeep SSAD Mentor :Manish Jha Group : Group20 Members : Harshit Daga ( ) Aman Saxena ( )

FACULTY ADVISOR STATEMENT TEAM MEMBERS

Marine Debris Cleaner Phase 1 Navigation

Indoor Localization with Smartphones

Key Areas for Collaboration

Object Detection and Tracking Robot using Android, Arduino and Open CV

DTMF based Surveillance Robot

Ping Pong Trainer. Cal Poly Computer Engineering Senior Project. By Aaron Atamian. Advised by Andrew Danowitz

Park Ranger. Li Yang April 21, 2014

Saturday Academy Program

Welcome to Lego Rovers

ReVRSR: Remote Virtual Reality for Service Robots

Categories of Robots and their Hardware Components. Click to add Text Martin Jagersand

Programming of Embedded Systems Uppsala University Spring 2014 Summary of Pan and Tilt project

Supervisors: Rachel Cardell-Oliver Adrian Keating. Program: Bachelor of Computer Science (Honours) Program Dates: Semester 2, 2014 Semester 1, 2015

Randomized Motion Planning for Groups of Nonholonomic Robots

Formation and Cooperation for SWARMed Intelligent Robots

Physical Etoys: Freedom beyond the digital world

INTELLIGENT WHEELCHAIRS

Programming Arduino Next Steps: Going Further With Sketches PDF

Sponsorship Package

Functional Specification Document. Robot Soccer ECEn Senior Project

NASA Robotic Mining Competition

Figure 1. Motorized Pediatric Stander Problem Statement and Mission. 1 of 6

Workshops Elisava Introduction to programming and electronics (Scratch & Arduino)

Intuitive Vision Robot Kit For Efficient Education

Efficient Construction of SIFT Multi-Scale Image Pyramids for Embedded Robot Vision

A FACILITY AND ARCHITECTURE FOR AUTONOMY RESEARCH

Portfolio. Swaroop Kumar Pal swarooppal.wordpress.com github.com/swarooppal1088

Team S.S. Minnow RoboBoat 2015

INTRODUCTION TO ROBOTICS

National Aeronautics and Space Administration

Robotic manipulator capable of sorting moving objects alongside human workers using a budget-conscious control system

C. R. Weisbin, R. Easter, G. Rodriguez January 2001

Team MU-L8 Humanoid League TeenSize Team Description Paper 2014

Husky Robotics Team. Information Packet. Introduction

SENIOR PROJECT FINAL REPORT TEAM MARRS

MRS: an Autonomous and Remote-Controlled Robotics Platform for STEM Education

Mars 2020 Rover Dust Analysis for Drill. Team Hindsight

Development of a Remotely-Controlled Autofocus System For a Microscope

Lecture information. Intelligent Robotics Mobile robotic technology. Description of our seminar. Content of this course

ROCHESTER INSTITUTE OF TECHNOLOGY COURSE OUTLINE FORM COLLEGE OF SCIENCE. Chester F. Carlson Center for Imaging Science

Technology and the Stage:

Computer Vision Robotics I Prof. Yanco Spring 2015

Augmented Reality using Hand Gesture Recognition System and its use in Virtual Dressing Room

Job Description. Commitment: Must be available to work full-time hours, M-F for weeks beginning Summer of 2018.

Nautical Autonomous System with Task Integration

UTILIZATION OF ROBOTICS AS CONTEMPORARY TECHNOLOGY AND AN EFFECTIVE TOOL IN TEACHING COMPUTER PROGRAMMING

W. Jake Kisiel 5710 Bauer Rd Brighton, MI Cell: (517)

Human Computer Interaction by Gesture Recognition

Fernando Ribeiro, Gil Lopes, Davide Oliveira, Fátima Gonçalves, Júlio

DESIGN OF AN IMAGE PROCESSING ALGORITHM FOR BALL DETECTION

COS Lecture 1 Autonomous Robot Navigation

Wheeled Mobile Robot Kuzma I

President: Logan Gore

Motion-Activated Infrared Security System

Raspberry Pi: 101 Beginners Guide: The Definitive Step By Step Guide For What You Need To Know To Get Started (Raspberry Pi, Raspberry, Single Board

ECE 477 Digital Systems Senior Design Project Rev 8/09. Homework 5: Theory of Operation and Hardware Design Narrative

Baset Adult-Size 2016 Team Description Paper

OPEN CV BASED AUTONOMOUS RC-CAR

Making PHP See. Confoo Michael Maclean

IOT Question Bank. Unit 1. Chapter 1

Previous Tasks. Task A

Webcam Based Image Control System

Canadian Activities in Intelligent Robotic Systems - An Overview

ENGR 499: Wireless ECG

Information for Parents/Carers Targets in Computing

AFRL-RI-RS-TR

ROBOTIC ARM FOR OBJECT SORTING BASED ON COLOR

TurtleBot2&ROS - Learning TB2

INCREASING SAFETY AND ACCURACY IN AUTOMATION SYSTEMS WITH REAL- TIME ROBOT MONITORING. Rohan Dixit, Poolesville High School

Robot Jousting. A two-player interactive jousting game involving wheeled robots. Alexander Cruz, En Lei, Sunil Srinivasan, Darrel Weng

Hanuman KMUTT: Team Description Paper

Field Rangers Team Description Paper

Teleoperated Robot Controlling Interface: an Internet of Things Based Approach

Design of Tracked Robot with Remote Control for Surveillance

Introduction to Computer Science - PLTW #9340

Visually Impaired Assistant (VIA)

Multi-Robot Cooperative System For Object Detection

Transcription:

University of Hawaii at Hilo Fall 2016 Developing a Computer Vision System for Autonomous Rover Navigation ASTR 432 FINAL REPORT FALL 2016 DARYL ALBANO

Page 1 of 6 Table of Contents Abstract... 2 Introduction... 3 Background... 3 Project Findings... 3 Next Steps... 4 Conclusion... 5

Page 2 of 6 Abstract The NASA Robotic Mining Competition is hosted every year, in which several universities design, build, and compete in planetary mining competition. The competition consists of two 10-minute rounds where the goal is to mine and retrieve the most regolith as quickly and efficiently as possible. Thus, the project for this semester is targeted towards improving the Vulcan Robotics Team s competition rover, as well as design an autonomous navigation system. The project involves development on a miniature prototype of the competition rover. This includes similar movement functions and on-board computers. However, the main program for the navigation system has switched from the previous programming language, C, to Python. Additionally, the Arduino microcontroller has been removed in favor of the Raspberry Pi. Project findings have shown that the computer vision system can detect edges of objects however, there is difficulty distinguishing the edges of objects with the edges of shadows. With limitations under various lighting environments, a different design was introduced in which the camera would follow a reference object for navigation. Using a reference object removes the issue of misread information. From there the video data can be manipulated to include the size of the object, as well as the color of the object. Overall, the project has opened opportunities for other forms of navigation systems. Improvements were made in the navigation and communications portion of the rover, which should optimize data transfer size and power usage. Some downfalls did occur with the Raspberry Pi, involving networking issues and software issues. Solutions were also composed during the construction of the prototype. With this project, it has provided better insights on software development of a rover and has established future iterations of the autonomous navigation system.

Page 3 of 6 Introduction The goal of this project is to learn and understand effective methods of rover communication, as well as develop a computer vision system for autonomous rover navigation. The research would facilitate the development of a much more efficient planetary rover for the 2017 NASA Robotic Mining Competition. The competition, hosted by NASA, favors autonomy in the competition. Thus, the project s goal is to begin research and development of an autonomous system. Having a rover that can continue operations without a user would greatly improve exploration and retrieval of resources on planets like Mars. Some of the issues that plagued previous versions of the rover include communication issues and a lack of autonomy. After several months of research and implementations, improvements were made in reducing network overhead and user control, as well as a better understanding of computer vision. Background OpenCV is an open source computer vision software that is used to translate the video data into usable information. The software analyzes objects in the real world and translates the data. For example, the software is capable of outlining objects and recognizing human faces. For rover navigation, the computer vision system will search for an object and follow it. Depending on the object s position, it will drive the motors to follow the item. For example, if the object being searched for is a green ball, its distinct color and shape will make it easy to identify. In practical applications, such as a foreign planetary environment, a barcode or a quick response code will take the place of the green ball. From there, an initial prototype was developed that utilizes two 6V DC motors, a Raspberry Pi 3 Model B computer, and an L298N H-Bridge motor controller. Its primary purpose was to replicate the full planetary rover s basic navigation system. In other words, the turning methods share similarities between both platforms. Project Findings What the project did succeed in was improving communications by replacing the original secure shell (SSH) connection with virtual network computing (VNC). Connection to the Raspberry Pi Computer has also been improved by configuring it as a network access point. Thus, the command center can directly connect to the Raspberry Pi without needing access to a separate access point, improving connection speed and reliability. The computer vision system uses an open source software called OpenCV. This software provides several libraries that allows for video data from an input device to be manipulated for various tasks. An example

Page 4 of 6 would be face detection and color manipulation. The reason behind selecting OpenCV was for its focus on software. OpenCV utilizes multiple programming languages (C++, Python, Java) and is available on multiple operating systems (Windows, MacOS, Android, ios). Since the desktop webcam on the initial prototype has certain limitations (providing only vision), development was focused on software. This does pose an issue since OpenCV utilizes more resources, resulting in slower performance on the Raspberry Pi computer. Methods of reducing computer lag can be achieved with improved vision algorithms. Thus, the focus for upcoming iterations is to research and develop efficient software. Capture Frame Make decisions Transform from RGB (red, green, blue) to HSV (hue, saturation, value) Information threshold Configure and follow HSV threshold values Remove image noise Figure 1 Diagram demonstrating the process for detecting a reference object During the development of the initial prototype, much time was spent debugging and fixing issues, leaving limited time for navigation testing. The results show that although the Raspberry Pi can be efficient in cooling and energy consumption, it is limited in processing capabilities. Although other options, like the Intel NUC computer or Android mobile device, offer better performance, a Raspberry Pi is still a viable option since it provides an inexpensive Linux-based environment for computer vision development. With much needed improvements in software and OpenCV, there is potential in using computer vision with the navigation system. Next Steps With limitations in hardware, methods of improving software will be the primary focus for the upcoming semester. The idea is that the vision system locates a reference device that the computer could easily identify, such as a green ball or a quick response code. It could potentially identify its current location by determining the distance of the reference object based on its relative size, resulting in both distance and location awareness.

Page 5 of 6 The project findings have shown that computer vision can be difficult to implement with multiple factors to consider. Given the various lighting environments, the vision system would obtain inaccurate information. A possible solution would be to develop a program that contains exception handling methods for misread information. As stated previously, the implementation of a reference object could potentially improve the overall vision system by having an object that the rover would distinctly identify. Conclusion In conclusion, development on the computer vision system has led to new discoveries and improvements for the current planetary rover. In terms of navigation and communication, it has become much more streamlined compared to previous iterations. Although the computer vision system did not achieve its original goal, much of the research and development leaves much potential for other navigations methods. Thus, having a better understanding would lead to better iterations in the future. Overall, the project has succeeded in improving the current rover and to continue development of an autonomous navigation system.

Page 6 of 6 References [1] D. A. Forsyth, Computer Vision: A Modern Approach (2nd Edition), Pearson, 2011. [2] L. Matthies, M. Maimone, A. Johnson, Y. Cheng, R. Willson, C. Villalpando, S. Goldberg and A. Huertas, "Computer Vision on Mars," International Journal of Computer Vision, pp. 67-92, 2007. [3] "The R.R.O.P. - RaspRobot OpenCV Project - All," Autodesk Inc., 2016. [Online]. Available: http://www.instructables.com/id/the-rrop-rasprobot-opencv-project/?allsteps. [Accessed 24 08 2016].