No description, website, or topics provided.

Card recognition and organization based on opencv

demo video

This is a set of utilities to recognize and extract card images from a video feed, and then recognize those images against a known database.

Dependencies and Setup

python 2.7, numpy, Flask, SQLAlchemy, Elixir

sudo apt-get install python-dev
sudo pip install -r requirements.txt

OpenCV 2.3.1-7

sudo apt-get install python-opencv



cards_file="cards.xml" card listing obtained from GathererDownloader

basic_magic_set_dir="cards/" card images obtained from GathererDownloader


1. Scan

python -m utils.run_scan

Key Function
middle mouse wheel delete scan
space rescan image
r rescan background
escape finish scanning

2. Match

Requires an image set to match against (GathererDownloader Instructions)

python -m utils.run_match

3. Verify

Verification allows you to manually label any cards the matching process could not recognize, or was uncertain about whether its recognition was correct.



Scanning Notes

It also helps to have lighting coming from both sides, to reduce the effect of slightly curved cards throwing shadows that alter their rectangular shape in the camera's view.


This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see