There are some Raspberry Pi projects that are just so cool, you don't have to bother to ask why someone would ever create them. In our opinion, some of the best Pi projects come from makers who ask, "Why not?" and that's exactly what maker and developer André Esser has done with his latest creation. Using our favorite SBC, he's put together an ASCII video camera project and showed it off at the latest Pi Jam conference.
I had only 3 days to build this Raspberry Pi Project (ASCII Video Camera) - YouTube
If you're not familiar with ASCII art, it's a way of displaying images using text in something like a terminal. The characters comprise the image in either a simple but crude fashion or with great complexity. ASCII art was much more common in retro computing, but you can still find some fun modern examples like this project today. In this creation, the Pi is able to convert video frames into ASCII art, which is then displayed frame by frame to make a video feed using Python.
In the project source files, we see an example of this in action using a demo video known as "Bad Apple". This demo is in black and white, which is great for showing off the ASCII format's potential. However, Esser wanted to make something interactive for the conference and took things a step further by integrating a camera connected to the Raspberry Pi as a main input source. This made it possible for people to walk up to his booth and see themselves represented by text in real-time.
You don't need too much hardware to recreate this project, nor do you need any special components. Esser opted to use a Raspberry Pi 5 as the main board, which has plenty of processing power for a project like this. It's connected to a screen, the larger the better in this case, which lets you see the ASCII output. For video input, Esser opted to use a Raspberry Pi camera module.
Esser was kind enough to make the project open source and has shared all the source code over at GitHub for anyone interested in either recreating the project or just digging deeper to see how it works. There are two versions of the project, according to Esser, one that uses Python and another that uses Cython. The project also requires OpenCV to operate. You can find not only the code, but also instructions on how to set everything up over at the GitHub page.
If you want to get a closer look at this Raspberry Pi project in action, check out the video shared to YouTube by Esser.