Album Detector Using Raspberry Pi and OpenAI

Motivation

A few months ago I had seen a video on instagram where someone had made a device that detected what record he was playing through visual detection of the album cover. It then projected the album and its tracklist onto the wall next to him. Recently, I acquired a stand for the records that I'm currently playing and, being the frivolous man that I am, wanted to recreate this device for as cheap as possible.

Challenge

Using cheap equipment, create a device capable of visually identifying a record based off its album cover, obtain its data, and display it to the user.

Solution

Due to price constraints, I ended up opting for a 7 inch touchscreen display for the presentation of album data, as most projectors are unreasonably priced. The brains behind the device is a raspberry pi zero W with a raspberry pi camera.

Approach

Using OpenAI's and Spotify's APIs, I created a script that uses the raspberry pis camera to take a photo of the album cover and then send that photo to OpenAI's API to identify which album is in the picture. Once the album name and accompanying artist had been identified, it is sent to Spotify's end to acquire the album's tracklist and cover art. Then using Pygame, a front end view of the albums data is created.

Skills Demonstrated Project Artifacts
OpenCV, Pygame, OpenAI, Spotipy Github Repo
Raspberry Pi See Below

Budget Breakdown

Item Cost
Raspberry Pi Zero W $38.99
Raspberry Pi Camera $0.99
7 Inch LCD Touchscreen $39.55
Total $79.53

Project Photos (Work in Progress)

Benefits

For a cheap price, I was able to replicate the device while experimenting a bit with a raspberry pi.