/luminoth

Deep Learning toolkit for Computer Vision

Primary LanguagePythonBSD 3-Clause "New" or "Revised" LicenseBSD-3-Clause

Luminoth

Build Status codecov License

Luminoth is an open source toolkit for computer vision. Currently, we support object detection and image classification, but we are aiming for much more. It is built in Python, using TensorFlow and Sonnet.

Example of Object Detection

DISCLAIMER: Luminoth is still alpha-quality release, which means the internal and external interfaces (such as command line) are very likely to change as the codebase matures.

Installation

Luminoth currently supports Python 2.7 and 3.4–3.6.

If TensorFlow and Sonnet are already installed, Luminoth will use those versions.

Note: older Tensorflow versions of 1.3.0 will not work.

Install with CPU support

Just run:

$ pip install luminoth

This will install the CPU versions of TensorFlow & Sonnet if you don't have them.

Install with GPU support

  1. Install TensorFlow with GPU support.
  2. Install Sonnet with GPU support:
    $ pip install dm-sonnet-gpu
  3. Install Luminoth from PyPI:
    $ pip install luminoth

Install from source

First, clone the repo on your machine and then install with pip:

$ git clone https://github.com/tryolabs/luminoth.git
$ cd luminoth
$ pip install -e .

Check that the installation worked

Simply run lumi --help.

Supported models

Currently, we support the following models:

We are planning on adding support for more models in the near future, such as SSD, YOLO and Mask R-CNN.

Moreover, we are also working on providing pre-trained checkpoints on popular datasets such as Pascal VOC2012.

Usage

There is one main command line interface which you can use with the lumi command. Whenever you are confused on how you are supposed to do something just type:

lumi --help or lumi <subcommand> --help

and a list of available options with descriptions will show up.

Working with datasets

See DATASETS.

Training

Check our TRAINING on how to train locally or in Google Cloud.

Visualizing results

We strive to get useful and understandable summary and graph visualizations. We consider them to be essential not only for monitoring (duh!), but for getting a broader understanding of what's going under the hood. The same way it is important for code to be understandable and easy to follow, the computation graph should be as well.

By default summary and graph logs are saved to jobs/ under the current directory. You can use TensorBoard by running:

tensorboard --logdir path/to/jobs

Why the name?

The Dark Visor is a Visor upgrade in Metroid Prime 2: Echoes. Designed by the Luminoth during the war, it was used by the Champion of Aether, A-Kul, to penetrate Dark Aether's haze in battle against the Ing.

-- Dark Visor - Wikitroid

License

Copyright © 2017, Tryolabs. Released under the BSD 3-Clause.