Skip to content

btsantos/card_scan

 
 

Repository files navigation

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

Configure

config.py

db_file="inventory.sqlite3"

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

basic_magic_set_dir="cards/" card images obtained from GathererDownloader

Running

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.

python website.py

http://localhost:5000/verify_scans

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.


Licensing

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 http://www.gnu.org/licenses/.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 87.8%
  • HTML 12.2%