This project requires Python 2.7 and the following Python libraries installed:
- NumPy
- SciPy
- scikit-learn (v0.17)
- TensorFlow
You will also need to have software installed to run and execute a Jupyter Notebook.
In addition to the above, for those optionally seeking to use image processing software, you may need one of the following:
- PyGame
- Helpful links for installing PyGame:
- Getting Started
- PyGame Information
- Google Group
- PyGame subreddit
- OpenCV
For those optionally seeking to deploy an Android application:
- Android SDK & NDK (see this README)
If you do not have Python installed yet, it is highly recommended that you install the Anaconda distribution of Python, which already has the above packages and more included. Make sure that you select the Python 2.7 installer and not the Python 3.x installer. pygame
and OpenCV
can then be installed using one of the following commands:
Mac:
conda install -c https://conda.anaconda.org/quasiben pygame
conda install -c menpo opencv=2.4.11
Windows & Linux:
conda install -c https://conda.anaconda.org/tlatorre pygame
conda install -c menpo opencv=2.4.11
A template notebook is provided as digit_recognition.ipynb
. While no code is included in the notebook, you will be required to use the notebook to implement the basic functionality of your project and answer questions about your implementation and results.
In a terminal or command window, navigate to the top-level project directory digit_recognition/
(that contains this README) and run one of the following commands:
ipython notebook digit_recognition.ipynb
or
jupyter notebook digit_recognition.ipynb
This will open the Jupyter Notebook software and notebook file in your browser.
While no data is directly provided with the project, you will be required to download and use the Street View House Numbers (SVHN) dataset, along with either the notMNIST or MNIST datasets. If you've completed the course material, the notMINIST dataset should already be available.