Resumé & Skills

Professional experience and acquired skills in a printer-friendly format.

Photography & Blog

My newest and most serious hobby. Started with my (ongoing) world-wide trip. I share my favorites here. Eventually, you might find posts about other subjects too.

Invisible Wall

A Computer Vision interactive art installation for the second Atibaia’s Art ant Technology Festival, organized by Incubadora de Artistas.

The concept was created by the OHMS team and I. It was coded by me in C/C++, with OpenCV.

This installation consists in a light-controlled room with a camera pointing to the participants and projecting their silhouettes on the wall in front of them. These silhouettes are filled with the view from the other side of the projection wall, captured by another camera. The wall becomes “invisible” only inside each person’s contours, making them move around to interact with the other side.
See photos and a video

Source (C/C++) (requires OpenCV)

A Framework for TV Game Shows with Augmented Reality and Second Screen

April 2015
Authors: Antonio Lutfi, Bruno Feijó
My MSc thesis, in Portuguese, originally titled “Um Framework para Game Shows Interativos de TV com Realidade Aumentada e Segunda Tela”. It proposes a framework for the development of interactive TV game shows using Augmented Reality in TV studios, which allows the participation of viewers using tablets and smartphones as the Second Screen. It also investigates new convergence paradigms between TV and video games, utilizing the concept of Play/Flow by Mihaly Csikszentmihalyi as the desirable state to achieve while playing. All the code in this project was written in Python.
Full text(Portuguese) | Summary(English)
HTML Code Documentation
Project Source (Python)
Simple test case, a game of Checkers (Python)


Coded in C++ with OpenCV, it was commissioned by Rede Globo from ICAD/VisionLab.

Region Detection in Images

Coded in R, it uses random walks in images to segment them into regions. We implemented the original Algorithm by Leo Grady, as well as an altered version that sets the maximum number of steps in a walk, limiting the computing time. It’s a trade-off between accuracy and performance.
This was a requirement for a Stochastic Simulation course and was made by me and Ericsson Leal.
Source (R)
Presentation PPT(Portuguese)