Skip to main content

MNIST Database Access API for Bob

Project description

The MNIST database is a database of handwritten digits.

The actual raw data for the database should be downloaded from the original website. This package only contains the Bob accessor methods to use this database directly from python, with our certified protocols.

You would normally not install this package unless you are maintaining it. What you would do instead is to tie it in at the package you need to use it. There are a few ways to achieve this:

  1. You can add this package as a requirement at the setup.py for your own satellite package or to your Buildout .cfg file, if you prefer it that way. With this method, this package gets automatically downloaded and installed on your working environment, or

  2. You can manually download and install this package using commands like easy_install or pip.

The package is available in two different distribution formats:

  1. You can download it from PyPI, or

  2. You can download it in its source form from its git repository.

The database raw files must be installed somewhere in your environment.

You can mix and match points 1/2 above based on your requirements. Here are some examples:

Modify your setup.py and download from PyPI

That is the easiest. Edit your setup.py in your satellite package and add the following entry in the install_requires section (note: ... means whatever extra stuff you may have in-between, don’t put that on your script):

install_requires=[
  ...
  "xbob.db.mnist",
],

Proceed normally with your bootstrap/buildout steps and you should be all set. That means you can now import the namespace xbob.db.mnist into your scripts.

Modify your buildout.cfg and download from git

You will need to add a dependence to mr.developer to be able to install from our git repositories. Your buildout.cfg file should contain the following lines:

[buildout]
...
extensions = mr.developer
auto-checkout = *
eggs = bob
       ...
       xbob.db.mnist

[sources]
xbob.db.mnist = git https://github.com/bioidiap/xbob.db.mnist.git
...

How to use this database API

After launching the python interpreter (assuming that the environment is properly set up), you could get the training set as follows:

>>> import xbob.db.mnist
>>> db = xbob.db.mnist.Database('PATH_TO_DATA_FROM_YANN_LECUN_WEBSITE') # 4 binary .gz compressed files
>>> images, labels = db.data(groups='train', labels=[0,1,2,3,4,5,6,7,8,9])

In this case, this should return two NumPy arrays:

  1. images contain the raw data (60,000 samples of dimension 784 [28x28 pixels images])

  2. labels are the corresponding classes (digits 0 to 9) for each of the 60,000 samples

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xbob.db.mnist-1.0.0a.zip (18.6 kB view details)

Uploaded Source

File details

Details for the file xbob.db.mnist-1.0.0a.zip.

File metadata

  • Download URL: xbob.db.mnist-1.0.0a.zip
  • Upload date:
  • Size: 18.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for xbob.db.mnist-1.0.0a.zip
Algorithm Hash digest
SHA256 1b529d31ae4dd9db8227d145ca9b3a8edb7d9f76a7fb565f3032eef131f5ab85
MD5 591b0bc493f4dac3a9b59d1303a74929
BLAKE2b-256 f1e03ae81479a2a1290dc398e4e478b87629da7621c480ca6ba36b2f2141f7be

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page