Senior Design Project - “Selfiebot”
Overview
"Selfiebot" is an autonomous photo capturing robotic system and it is the output project for Cornell ECE 4760 - Digital System Design using Microcontrollers. The course pairs design, implement, construct of several small systems that illustrate the integration of a large digital system.
The system that uses facial detection to track faces and take pictures of people. The camera on the robot pans and tilts using servos controlled from an ATmega1284 microcontroller. A laptop computer performs image processing and tracking, using OpenCV for facial detection, giving commands to the microcontroller via serial communication.
Recognition
Featured in College of Engineering, “Hackaday", "Embedded Lab”
Project Highlights
Context
During the semester, students in the course learn about various embedded systems and are required to brainstorm, design, implement, debug and present a fully functional system acquired in previous Electrical and Computer Engineering courses. The content focuses on the laboratory work. The lectures are used primarily for the introduction of examples, description of specific modules to be designed, and instruction in the hardware and high-level design tools to be employed.
Intent
Back in 2014, as a selfie enthusiast, I found it difficult to take a photo of oneself in distance that is longer than an arm. One day, I tried to capture footages of my dance for choreography class but I always came across unfocused output. I thought "wouldn't it be so cool to have a robot to capture the most optimal pictures of my friends and i?" And that was the inspiration of "Selfie-bot"; then I pitched the idea in class and started working with my lab partner and successfully created "Selfiebot".
Design and Execution
We have designed and constructed an autonomous photo capturing system that detects and tracks faces, centers subjects in the frame, and takes pictures. Since the most straightforward application for our robot is to take pictures of oneself without the aid of others, we have fittingly dubbed our system the "Selfiebot". When operating our device, the user may specify a variety of preferences through its simple GUI, including contrast, brightness, centering options, the number of people to capture, and the number of pictures to take.