PHAR – Android Augmented Reality Using a Handheld Projector


The Projective Handheld Augmented Reality (PHAR) framework provides an Android developer with high-level tools to create augmented reality applications which use a handheld projector as a display.

Typical mobile augmented reality applications display their graphics through the mobile device’s small screen. This poses a few problems; certain user groups, like the elderly people, might have difficulties reading the information displayed on the screen, due to its small size. The display quickly gets cluttered with information, making it harder for every kind of user to discern instructions. Furthermore, users get too focused on the screen, analogous to SMS reading, and lose track of their surroundings.

A solution for the aforestated problems is to use a pico-projector to display the graphics. These small projectors, have roughly the size of a smartphone, and are able to display images which theoretically might have diagonal sizes of 160 centimeters or more. Besides the advantage of this larger size, which gives more room to display information, the graphics are projected directly into real-world objects avoiding the distraction of having to see the augmentations through the device’s screen.

For this purpose, the PHAR framework was created, which facilitates the development of mobile augmented reality applications, using a handheld projector. PHAR is built upon OpenCV computer vision library, and addresses two complex steps that are the basis for projector-based augmented reality (AR) applications, to simplify them. The first step is to detect a target object for the augmentations. PHAR has an object detection procedure which does not require physical markers, commonly used in mobile AR.

The only configuration needed for the detection, is to provide the program with a frontal image of the target object. The other main step, addressed by this framework, is to automatically adjust the projection so that the augmentations are properly displayed on top of objects, while the handheld projector or Android device moves. Typically, this geometrical correction of the projection will work transparently, and needs no further action from the developer.


Author: Rui Marques

Type: MSc thesis

Partner: Faculdade de Ciências da Universidade do Porto

Year: 2012