GameBEye, vintage camera and modern processing

GameBEye is a Python library to do some image processing with Game Boy Camera images.
The goal for me was to write Python code, to use its scientific libraries (mainly numpy), to build a package, to write Sphinx documentation, and to share it.
The documentation page can be found here!

GitHub License Release Issues

Introduction

In the late 80’s, Nintendo release a new handheld game console, the first of a new family : the GameBoy. In the following decade, a couple of year before my tenth birthday, this 8-bit console was mine with an Asterix video game to play…

Asterix game cover for GameBoy
Asterix game cover for GameBoy

The same year Les Bleus, the France national football team, won their first FIFA World Cup - i.e. 1998 - a four-grayscaled world was born with the GameBoy Camera. All in a resolution of 128 x 112 pixels (0.014 Megapixels). Pretty impressive, right ?

GameBoy Camera image
GameBoy Camera image

:baby: Birth of the project

Surfing on the web, searching for some new DIY projects to start, I found Furrtek Game Boy Camera project to transform Game Boy Camera into a DSLR or a webcam. However, I do not own his electronic skills… But i know how to code !

Furrtek's YouTube video for his GameBoy Camcorder project
Furrtek's YouTube video for his GameBoy Camcorder project

Furrtek's GBLiveCam Furrtek's GBLiveCam result
Furrtek's GBLiveCam

Project’s development

1. Goals :question:

This project aims to become a Python library. It’ll purely be used as an external package to process Game Boy Camera images in scripts or in the Python console.

My main goal was and is still to learn and improve my knowledge in a programming language (here, Python) and scientific libraries (here, numpy and OpenCV), to try GitHub CI and to discover and learn stuff along the way. I also wanted to maintain the project documentation as up to date as possible by add the maximum of docstrings in my files.

2. Setup :computer:

2.1 Transfering images from GameBoy Camera to a computer

The first pitfall to overcome could be downloading the photo from the GameBoy Camera. Fortunately, there are many ways to avoid these by paying a few bucks :

Game Boy Camera on a GB Operator from Epilogue
Game Boy Camera on a GB Operator from :copyright:Epilogue
GBxCart RW - Gameboy/GBC/GBA Cart Reader, Writer & Flasher
GBxCart RW (Gameboy/GBC/GBA Cart Reader, Writer & Flasher) from insideGadgets

2.2 Using GameBEye to play with original Game Boy Camera pictures

Once installed, you can start using the library to process your images using examples or make your own.

For the moment, it allows a few effects as changing image colors from Black & White to a color from a predefine palette as :

CHIG color palette
CHIG color palette
PPR color palette
PPR color palette
BANANA color palette
BANANA color palette

You can also add a thermal printed effect to display images like this :

Thermal printed image
Thermal printed image

3. :chart_with_upwards_trend: Project’s evolution

Before using this project with an graphical computer interface, I would like to keep improving and adding software functionalities to this library :

:memo: Documentation

You’ll find more information on how to use GameBEye in the documentation page

Let’s see the world in quadricolor!