Automatic Projector Tilt Compensation System

Similar documents
6.111 Final Project Proposal Kelly Snyder and Rebecca Greene. Abstract

Figure 1: Feature Vector Sequence Generator block diagram.

ECE 4220 Real Time Embedded Systems Final Project Spectrum Analyzer

Snapshot. Sanjay Jhaveri Mike Huhs Final Project

Voice Controlled Car System

The Extron MGP 464 is a powerful, highly effective tool for advanced A/V communications and presentations. It has the

Pivoting Object Tracking System

Laboratory 1 - Introduction to Digital Electronics and Lab Equipment (Logic Analyzers, Digital Oscilloscope, and FPGA-based Labkit)

Proposal. Figure 1: Slot Machine [1]

G-106Ex Single channel edge blending Processor. G-106Ex is multiple purpose video processor with warp, de-warp, video wall control, format

Oscilloscopes, logic analyzers ScopeLogicDAQ

ECE532 Digital System Design Title: Stereoscopic Depth Detection Using Two Cameras. Final Design Report

VOB - data over Video Overlay Box

CHARACTERIZATION OF END-TO-END DELAYS IN HEAD-MOUNTED DISPLAY SYSTEMS

G-106 GWarp Processor. G-106 is multiple purpose video processor with warp, de-warp, video wall control, format conversion,

Logic Analysis Basics

Logic Analysis Basics

Design of Vision Embedded Platform with AVR

L14: Final Project Kickoff. L14: Spring 2006 Introductory Digital Systems Laboratory

Virtual Rock Climbing: A video game using tracking and tactile feedback. December 11, 2013

TV Synchronism Generation with PIC Microcontroller

L13: Final Project Kickoff. L13: Spring 2005 Introductory Digital Systems Laboratory

ECE Real Time Embedded Systems Final Project. Speeding Detecting System

Virtual Piano. Proposal By: Lisa Liu Sheldon Trotman. November 5, ~ 1 ~ Project Proposal

The Micropython Microcontroller

Fingerprint Verification System

Installation / Set-up of Autoread Camera System to DS1000/DS1200 Inserters

Solutions to Embedded System Design Challenges Part II

An FPGA Based Solution for Testing Legacy Video Displays

Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science Introductory Digital Systems Laboratory

Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science Introductory Digital Systems Laboratory

Radar Signal Processing Final Report Spring Semester 2017

FPGA Prototyping using Behavioral Synthesis for Improving Video Processing Algorithm and FHD TV SoC Design Masaru Takahashi

Case Study: Can Video Quality Testing be Scripted?

OPTIMIZING VIDEO SCALERS USING REAL-TIME VERIFICATION TECHNIQUES

M i N T the refreshing technologies

Rensselaer Polytechnic Institute Computer Hardware Design ECSE Report. Lab Three Xilinx Richards Controller and Logic Analyzer Laboratory

Design and Implementation of an AHB VGA Peripheral

An Iot Based Smart Manifold Attendance System

RF Mogul. Quick Start. Model: SDC1. Satellite Dish Controller

This module senses temperature and humidity. Output: Temperature and humidity display on serial monitor.

Digital Audio Design Validation and Debugging Using PGY-I2C

Lab 3: VGA Bouncing Ball I

FPGA Development for Radar, Radio-Astronomy and Communications

UVM Testbench Structure and Coverage Improvement in a Mixed Signal Verification Environment by Mihajlo Katona, Head of Functional Verification, Frobas

SWITCH: Microcontroller Touch-switch Design & Test (Part 2)

Application Note PG001: Using 36-Channel Logic Analyzer and 36-Channel Digital Pattern Generator for testing a 32-Bit ALU

Dancer control slims down while gaining functionality

6.111 Final Project: 3D Multiplayer Pong. Louis Tao, Miguel Rodriguez, Paul Kalebu

When to use External Trigger vs. External Clock

ISELED - A Bright Future for Automotive Interior Lighting

VGA to DVI-I. Scaler Box CP-252. Operation Manual

Low Power VLSI Circuits and Systems Prof. Ajit Pal Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur

DX-10 tm Digital Interface User s Guide

Laser Conductor. James Noraky and Scott Skirlo. Introduction

UNIVERSITY OF TORONTO JOÃO MARCUS RAMOS BACALHAU GUSTAVO MAIA FERREIRA HEYANG WANG ECE532 FINAL DESIGN REPORT HOLE IN THE WALL

Fig. 1. The Front Panel (Graphical User Interface)

R H Y T H M G E N E R A T O R. User Guide. Version 1.3.0

1 scope channel. 2 scope channels* 200 MSa/s 4 MB memory/ch. 200 MSa/s 2 MB memory/ch. 200 MSa/s 2 MB memory/ch

Computer Systems Architecture

MULTIPLE TPS REHOST FROM GENRAD 2235 TO S9100

Laboratory 4 Check Off Sheet. Student Name: Staff Member Signature/Date: Part A: VGA Interface You must show a TA the following for check off:

Sharif University of Technology. SoC: Introduction

Users Manual FWI HiDef Sync Stripper

Agilent MSO and CEBus PL Communications Testing Application Note 1352

Technovision DV-66B User Guide (HW V1.3, FW V1.6) Latest Version Sept. 2004

In-process inspection: Inspector technology and concept

CMS Tracker Synchronization

Building Video and Audio Test Systems. NI Technical Symposium 2008

ESI VLS-2000 Video Line Scaler

Laboratory 4 Check Off Sheet. Student Name: Staff Member Signature/Date: Part A: VGA Interface You must show a TA the following for check off:

COE758 Xilinx ISE 9.2 Tutorial 2. Integrating ChipScope Pro into a project

OPTIMUM Power Technology: Low Cost Combustion Analysis for University Engine Design Programs Using ICEview and NI Compact DAQ Chassis

L14: Quiz Information and Final Project Kickoff. L14: Spring 2004 Introductory Digital Systems Laboratory

Inside the Huddle Space:

Multiband Noise Reduction Component for PurePath Studio Portable Audio Devices

Modeling Digital Systems with Verilog

ASSEMBLY AND CALIBRATION

Using SignalTap II in the Quartus II Software

Prototyping an ASIC with FPGAs. By Rafey Mahmud, FAE at Synplicity.

Sensor Development for the imote2 Smart Sensor Platform

when it comes to quality! BMR GmbH 1

FPGA Laboratory Assignment 4. Due Date: 06/11/2012

Wall Ball Setup / Calibration

How to Match the Color Brightness of Automotive TFT-LCD Panels

Blackmagic SmartView 4K The world s rst full resolution Ultra HD broadcast monitor with 12G-SDI

Natural Radio. News, Comments and Letters About Natural Radio January 2003 Copyright 2003 by Mark S. Karney

KRAMER ELECTRONICS LTD. USER MANUAL

VGA Controller. Leif Andersen, Daniel Blakemore, Jon Parker University of Utah December 19, VGA Controller Components

L14: Final Project Kickoff. L14: Spring 2007 Introductory Digital Systems Laboratory

Displays Open Frame Monitor Model Number: AND-TFT-150Bxx

Overview When it comes to designing a video wall system that looks great and synchronizes perfectly, the AV Binloop HD and AV Binloop Uncompressed

THE LXI IVI PROGRAMMING MODEL FOR SYNCHRONIZATION AND TRIGGERING

Interactive Virtual Laboratory for Distance Education in Nuclear Engineering. Abstract

Syntor X Flash Memory Module Revision C

6.111 Project Proposal IMPLEMENTATION. Lyne Petse Szu-Po Wang Wenting Zheng

Chapter 1. Introduction to Digital Signal Processing

Design and Implementation of SOC VGA Controller Using Spartan-3E FPGA

Written Progress Report. Automated High Beam System

You will be first asked to demonstrate regular operation with default values. You will be asked to reprogram your time values and continue operation

Transcription:

Automatic Projector Tilt Compensation System Ganesh Ajjanagadde James Thomas Shantanu Jain October 30, 2014 1 Introduction Due to the advances in semiconductor technology, today s display projectors can incorporate fairly sophisticated digital processing algorithms for various enhancements to the visual appearance. Moreover, there is an increasing prevalence of portable projectors that benefit from fast, automated setup. One desired functionality is keystone/tilt correction. This means that even when the projector is tilted, the projector is able to pre-warp the image so that its output appears unskewed. In this project, we will be projecting the output of a camera, and will connect the camera s output to the FPGA board, and the FPGA board s VGA output to the projector. We will mount an accelerometer on the projector and measure its signals to determine the projector s tilt angles on two axes. We will run algorithms on the FPGA that correct the camera output based on the tilt angles and produce the results at the VGA output for the projector to display. We will calibrate the accelerometer through a special calibration mode. As a stretch goal, we will also attempt to use the camera combined with the accelerometer itself to calibrate by projecting a known image, such as a white rectangle. This should result in a gain to the quality of keystone/tilt correction, and one of our goals is to qualitatively observe and quantify such differences in quality. Finally, we will design digital logic that produces a voice with help commands, and also lets the user know of the new tilt angles whenever they are changed. 1

2 Implementation 2.1 Block Diagram 2.2 Modules Accelerometer Includes logic to convert signals from the accelerometer (whether in analog or SPI digital format) to normalized digital values that can be fed to the tilt angle estimation engine Tilt angle estimation engine Audio When calibration button is pressed, updates state to set the current values from the accelerometer as the reference values for an untitled projector By comparing the values from the accelerometer to the stored reference values, produces estimates of the angles of tilt in the two axes of interest 2

When the calibration help button is pressed, goes into state in which it periodically plays a recording instructing the user to adjust the projector so that its output looks unskewed and then hit the calibration button When the calibration button is pressed, exits the help state if it is in it When a change in the current angles of projector tilt is detected, plays recordings that specify the angles Audio samples are stored on compact flash Frame correction system Based on the current angles of projector tilt, adjusts an incoming frame from the camera using a linear transformation (implemented with a matrix multiplication) so that when it is projected it appears unskewed Uses the ZBT scratch space to store each frame from the camera (reading pixels from the stored frame for the matrix multiplication) and possibly the results of intermediate computations Stores the output frame from the linear transformation in a display buffer (also ZBT) An auxiliary module will feed the pixels in the display buffer to the VGA output at the appropriate clock edges 3 Timeline There is five weeks time in which to complete the project. In these five weeks, we envision four major stages to the project: 1. Initial attempt at implementing each block Time: 2 weeks In this stage, each team member will create an initial implementation of modules he is responsible for. He is expected to have his modules working as a standalone component. Each module will include simple test benches in order to facilitate this goal. 2. Module Integration; System Building Time: 2 weeks This stage will connect the individual modules from stage 1 together to form the initial system. This is expected to be the most hands-on and collaborative stage, as mistakes will often have a domino effect on the system. In the worst case, we may have to modify parts of our system design or change the behavior of some modules in order to compensate; in lesser situations, bugs may be uncovered and fixed. This is expected to be the lengthiest stage. 3

3. Intensive debugging Time: 1 week After the system has been put together and functions minimally, the team will focus on debugging. The goal of debugging is to make the system robust. Testing will include the common usage scenarios as well as edge cases, and a limited set of malicious inputs. 4. Stretch Goals Time: As available Once the system satisfies the test coverage plan, the team will focus on adding additional features to the system, as constrained by time. These possible additional features are described below. 4 Individual Responsibility Ganesh James Shantanu Algorithm - Identifying the appropriate algorithm, considering factors of complexity, hardware constraints, and implementability. Transform Module - Implementing the algorithm, with input parameters Accelerometer - Identifying the appropriate type and model, interfacing with the labkit. Calibration module - Entering calibration mode, collecting data, making it available as necessary. Audio output - Identifying necessary audio outputs, triggers for audio. Recording audio, transforming it into the appropriate format. Audio module - loading audio onto the labkit, standardizing trigger parameters. Test Setup - attaching accelerometer to projector, wiring to labkit. 5 Stretch Goals Camera-based adjustment The camera-based adjustment would augment the accelerometer by displaying a test pattern output to the projector and using an edge detection/corner detection algorithm to determine the skew caused by the projector s tilt. It would be able to correct the projector image in a wider variety of scenarios, including variable distance to the screen. This is difficult as it is complex and time consuming to interface the camera with the labkit and implement these additional algorithms. 4

External display of transformed image View the transformed image on a non-distorted screen, such as a PC LCD monitor. 5