There are quite a few ways to retrieve the images stored on a Game Boy Camera. Some methods are commercial ready-to-use, while others are do-it-yourself and may require soldering and/or knowledge of Arduino IDE. The primary methods are either a Game Boy Printer emulator which requires you to print the photos or a cartridge reader which extracts the save data from the camera cartridge.
Commercial (ready-to-use) Solutions
Cartridge readers are generic devices that allow extracting the contents of the cartridge RAM or ROM. These devices can be used to backup save files from Game Boy games, as well as writing ROMs to flash cartridges so they can be useful for purposes besides extracting Game Boy Camera photos.
One benefit of using a cartridge reader to extract Game Boy Camera photos is that you may be able to retrieve photos that have been "deleted" via the Game Boy Camera interface. Photos are only marked as deleted and not completely gone until the unused slot is overwritten with a new photo.
Extracted save data (.sav file) can be processed with a variety of tools to retrieve photos using including, the Game Boy Camera Gallery web app. Some cartridge readers have a dedicated function to retrieve Game Boy Camera photos.
Most cartridge reader software runs on a PC so these devices are not typically a portable solution. Below is a brief list of the most common/well known devices. A more comprehensive list of cartridge readers is available on the Game Boy Resource Wiki.
BennVenn — Joey Jr.
Simple dumping, shows up as USB storage device. Works on PC (Windows, Mac, Linux) as well as most smartphones using an OTG cable. Has a dedicated Game Boy Camera mode which displays photos as BMP on the USB storage device. ROM/RAM dumping, and flash cart writing support.
insideGadgets — GBxCart
Straight forward GUI that runs on PC with dedicated Game Boy Camera viewing/exporting. Open community with a variety of software tools that support the device. ROM and RAM dumping, supports writing to most flash cartridges.
Epilogue — GB Operator
Clean software UI. Dedicated Game Boy Camera photo exporting. ROM and RAM dumping, no writing function. Direct integration with mGBA for emulating games directly off the cartridge while flashing save progress back onto the cartridge.
Game Boy Printer Emulators
The BitBoy was released in 2015. While it is not the cheapest solution, it is very easy-to-use. It connects to a Game Boy using a link cable and acts as a Game Boy Printer emulator. Images are stored onto an SD card. It can save many Game Boy Camera images in sequence using the batch print function. BitBoy can also save images from other games with Game Boy Printer support although there are some games it does not support. It has an internal battery and charges over micro USB so it's easy to use on the go.
Game Boy Camera WiFi Printer
The WiFi Printer was released in 2019. Similar to the BitBoy it operates as a Game Boy Printer emulator and supports batch printing. Besides the camera, it also supports printing from a limited number of games. It serves a minimal web interface which can be accessed by connecting to its WiFi hotspot. The web interface allows applying some color palette changes and downloading the images to your local device. This WiFi Printer is not battery powered and requires external power over micro USB to run.
Do-It-Yourself (Open Source) Solutions
Game Boy Printer Emulators
Arduino Game Boy Printer Emulator (by Brian Khuu)
This project has been around since 2017, and has seen a lot of great improvements since then including supporting prints from every printer compatible Game Boy game. It is based around the Arduino IDE and can run on most Arduino compatible microcontroller development boards (Arduino, ESP, etc.). This project works by wiring a Game Boy link cable to available pins on the microcontroller board. With the development board connected to a PC over USB and the link cable connected to a Game Boy, you can print and capture the transferred data being sent over serial. On the PC, you will monitor the serial connection (with the Arduino IDE for example) and paste the output into a decoder web page that's part of the same project which will convert the raw data into a photo.
While this method is very cheap (a compatible dev board can be purchased for less than $10), it is not portable and requires quite a few steps.
NeoGB Printer (by Rafael Zenaro & Raphael Boichot)
The most recent printer emulator project based on Brian Khuu's Arduino printer emulator. The goal of this project was to create a portable low-cost and open-source solution for capturing prints from all games with Game Boy Printer support (110 in total). It runs on any dual core ESP32 development board and outputs photos in BMP or PNG format onto an SD card. The project also hosts a simple web server mode which allows accessing prints directly via WIFi, incorporating the best of both worlds. While in server mode, it can also be used as a source device to import prints onto the GBP web app (by Herr Zatacke).
Depending on the ESP32 development board used, it may have an option for battery power or require USB power. The open-source nature of this project allows some creativity with builds. A shield PCB design is available to ease building this project.
Pi Pico Game Boy Printer (by Toxa)
Printer emulator project developed in 2022. It is based around the powerful yet very low cost Pi Pico microcontroller. This printer should support printing from any game with printer support. The build requires just a few components: Pi Pico, level shifter and a link cable. When connected to a device over USB, the Pi Pico acts as a network device and hosts a local web server for accessing the prints via a web browser. The device can be used on a PC as well as on modern versions of iOS using the lightning to USB camera adapter.
WiFi GBP Emulator (by Herr Zatacke)
Started in 2020 as way to use the Arduino printer emulator code on-the-go using a WiFi enabled ESP8266 (D1 mini) development board outputting the serial data onto simple web page. Since then, the project has evolved quite a lot and now is a two part project consisting of the ESP based WiFi GBP emulator (print mode) and a feature rich web interface, Game Boy Camera Gallery web app (web mode). You can add an optional OLED to display the current device mode and details for how to connect to the web app. This project currently supports prints from just the Game Boy Camera. Although technically two separate projects, they are designed to work together and are both developed by Herr Zatacke.
Depending on the ESP development board used, it may have an option for battery power or require USB power. There is plenty of opportunity to get creative and come up with a design that is battery powered and perhaps make your own enclosure for it, like in the photo shown here. A shield PCB design for the D1 Mini is freely available which has a built in Game Boy link port and is wired up for use with this project including pinouts for the optional OLED display. The shield board can be ordered from PCB vendors like OSH Park.
N64 Controller & Transfer Pak Cart Reader
If you already own an N64 controller and Transfer Pak, you might consider an N64 to USB adapter cable from raphnet which will allow you to effectively use the Transfer Pak as a cartridge reader and extract the save data from an attached Game Boy Camera. Not recommended for someone who does not already have this hardware as the cost would be higher than a dedicated cartridge reader like the ones mentioned above. The application to communicate with the controller is developed by raphnet and runs on Windows or Linux.
If you have a console with video out that can use the Game Boy Camera such as a Super Nintendo with a Super Game Boy or a GameCube with a Game Boy Player, you can use a video capture device to record the video stream from the console and then save screen captures from the video. The quality using this method is typically less than ideal.