/book-indexing

A system for indexing books

Primary LanguagePythonMIT LicenseMIT

vinyl-record-indexing

Use computer vision to index your book collection.

Getting Started

First, clone this repository and install the required dependencies:

git clone https://github.com/rubythelot/book-indexing
cd book-indexing

Next, follow the MobileCLIP installation instructions to install MobileCLIP, on which this project depends.

You will need an OpenAI API key to use this project. Register for an OpenAI API key, then export it into your environment using the following command:

export OPENAI_API_KEY=""

To start indexing your vinyl record collection, run the following command in the root project directory:

python3 app.py

When you run this command, a window will appear showing the feed from your webcam. In the top left corner, the prompt most similar to the current frame, as well as a counter showing how many records have been identified in the video feed, will show.

To start indexing your collection, place a vinyl in front of your camera until the Vinyls recorded counter increments. Repeat this process for all vinyls you want to index.

Then, open your palm (like you would if you were giving someone a high-five) and hold it until the camera stops. Opening your palm is a control sequence to indicate you have no more records to index.

Your camera will stop and all unique images will be sent to the OpenAI GPT-4 with Vision API for processing. The results, featuring the name of each vinyl record and the artist who wrote it, will be saved in a file called results.csv.

License

This project is licensed under an MIT license.

Refer to the MobileCLIP license for terms of use of MobileCLIP, on which this project depends. Of note, you can swap MobileCLIP for any CLIP-like model (i.e. the original CLIP model from OpenAI, which is licensed under an MIT license), although this will involve manually changing this script to work with your chosen model.