User`s manual

Finally, we also provide a useful voice output for the percentage of pixels kept
after the perspective transformation (this is a lossy transformation in general).
The audio is triggered by pressing a button on the FPGA kit.
2 Previous Work
Given the practical importance of keystone correction, there has been significant
research on doing automatic keystone correction. While Raskar and Beardsley
[2001] and Sukthankar et al. [2001] provide a solution to this problem, their
methods suffer from one principal weakness, already noted in Li and Sezan
[2004], namely that their algorithms are not well suited for implementation
in an embedded system. For instance, their methods require solving an 8x8
system of linear equations via Gaussian elimination or similar methods, which
is not suitable for embedded platforms, particularly those with slow dividers.
Our key technical contribution is the elimination of the Gaussian elimination
algorithm, and instead replacing it with closed form solutions for the equations.
Moreover, we implement our algorithm on a 6 million gate Xilinx Virtex 2
FPGA, demonstrating that our algorithm is suitable for embedded systems use.
The work done in Li and Sezan [2004] subsumes most of this work. However,
their system is much more complex, as evidenced by the use of a camera for
computing the precise perspective transformation. For the scope of this term
final project, we use a simpler accelerometer based approach instead, paying the
price of loss of automatic correction along one axis. Note that we still retain
fully general manual correction ability.
3 Module Architecture
Figure 2 shows a block diagram including all of the major modules in our
system, which are explained further below and in later sections:
6