The project is based on classic Computer Vision techniques, hence, no Neural Networks are involved.
The notebook recognize
(executable code) is self-explanatory, so the detailed description of how everything works is present there.
- After cloning the repository, create a
Python 3.8
virtual environment:
python3.8 -m venv venv
- Activate it:
source vevn/bin/activate
- Install the required libraries:
pip install -r requirements.txt
There are 3 levels of difficulty:
- The view is nearly vertical.
- The light is very good.
- There are almost no shadows.
- The board is straightly positioned.
- The pawns are never covered.
- Less moves.
- The view is nearly vertical.
- Quite bad light.
- Soft shadows are presents.
- The board may be tilted.
- The pawn may be partially covered by fingers.
- More moves.
- Angled view.
- Awful light.
- Extreme shadows.
- The board may be tilted.
- The pawn may be heavily covered by fingers.
- More moves.
-
data/
a) input videos separated by difficulty level
b)
train/
contains heuristic templates -
output/
a) rendered videos siparated by difficulty level
b)
intemediate/
contains output demos obtained while processing -
Project files
a)
recognize.ipynb
is the notebook with how it works explanations and codeb)
requirements.txt
is the list of dependencies