Git Product home page Git Product logo

bob's Introduction

image

image

image

image

image

image

Bob

Bob is a free signal-processing and machine learning toolbox originally developed by the Biometrics group at Idiap Research Institute, Switzerland.

The toolbox is written in a mix of Python and C++ and is designed to be both efficient and reduce development time. It is composed of a reasonably large number of packages that implement tools for image, audio & video processing, machine learning and pattern recognition.

If just want to use Bob's functionalities on your experiments, you are not supposed to install this package on your machine, but rather create your own personalised work environment depending on your needs, by collecting individual sub-packages based on your requirements.

If you are developing Bob packages which are supposed to built along side our nightly build system, please read on.

Installation

Note

If you are reading this page through our GitHub portal and not through PyPI, note the development tip of the package may not be stable or become unstable in a matter of moments.

Go to http://pypi.python.org/pypi/bob to download the latest stable version of this package.

There are 2 options you can follow to get this package installed and operational on your computer: you can use automatic installers like pip (or easy_install) or manually download, unpack and use zc.buildout to create a virtual work environment just for this package.

Using an automatic installer

Using pip is the easiest (shell commands are marked with a $ signal):

$ pip install bob

You can also do the same with easy_install:

$ easy_install bob

This will download and install this package plus any other required dependencies. It will also verify if the version of Bob you have installed is compatible.

This scheme works well with virtual environments by virtualenv or if you have root access to your machine. Otherwise, we recommend you use the next option.

Using zc.buildout

Download the latest version of this package from PyPI and unpack it in your working area. The installation of the toolkit itself uses buildout. You don't need to understand its inner workings to use this package. Here is a recipe to get you started:

$ python bootstrap-buildout.py
$ ./bin/buildout

These 2 commands should download and install all non-installed dependencies and get you a fully operational test and development environment.

Note

As per-usual, make sure all external dependencies are installed on your host before trying to compile the whole of Bob.

Documentation

You can generate the documentation for all packages in this container, after installation, using Sphinx:

$ ./bin/sphinx-build . sphinx

This shall place in the directory sphinx, the current version for the documentation of the package.

For the maintainers

In the next subsections we have instructions for the maintainers of the package.

Adding a dependency package

To add a package on bob, just append the package name in the file ('requirements.txt').

Warning

Before adding a package to this prototype, please ensure that the package:

  • contains a README clearly indicating how to install the package (including external dependencies required). Also, please add package badges for the build status and coverage as shown in other packages (even if your package is not yet integrated to Travis or Coveralls).
  • Has unit tests.
  • Is integrated with Travis-CI, and correctly tests on that platform (i.e. it builds, it tests fine and a documentation can be constructed and tested w/o errors)
  • Is integrated with Coveralls for reporting test coverage

If you don't know how to do this, ask for information on the bob-devel mailing list.

Updating the dependencies

If you want to update the version of the dependency packages, run the following commands:

$ ./bin/get_versions.py > requirements.txt
$ git commit requirements.txt -m "Update requeriments" && git push

Removing a dependency package

To remove a package on bob, just append the package name in the file ('requirements.txt').

bob's People

Contributors

anjos avatar ivana7c avatar khoury avatar neodark avatar pcampr avatar puckch avatar raphexion avatar salimkayal avatar smarcel avatar tiagofrepereira2012 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.