DeepDetect is written in C++11 with professional support for Linux platforms.
The latest release can be found at DeepDetect Releases.
For the most up-to-date installation information, see the main README
Note: the platforms with support are Ubuntu 14.04 LTS and 16.04 LTS.
DeepDetect may also be compiled from source on other platforms such as OSX. If you need to do so and are experiencing difficulties, request help on Github.
Installing from source
Prerequisite tools for downloading and building source code
- C++, gcc >= 4.8 or clang with support for C++11 (there are issues with Clang + Boost)
- eigen for all matrix operations;
- glog for logging events and debug;
- gflags for command line parsing;
- OpenCV >= 2.4
- gtest for unit testing (optional);
- CUDA 7 or 6.5 is required for using a GPU
- BLAS via ATLAS, MKL, or OpenBLAS (with DeepDetect, OpenBLAS is default)
- IO libraries hdf5, leveldb, snappy, lmdb
Typically on Debian/Ubuntu Linux, do:
$ sudo apt-get install build-essential libgoogle-glog-dev libgflags-dev libeigen3-dev libopencv-dev libcppnetlib-dev libboost-dev libboost-iostreams-dev libcurlpp-dev libcurl4-openssl-dev protobuf-compiler libopenblas-dev libhdf5-dev libprotobuf-dev libleveldb-dev libsnappy-dev liblmdb-dev libutfcpp-dev
Build from source
If you are building for one or more GPUs, you may need to add CUDA to your ld path:
The building system takes care of downloading Caffe and XGBoost as needed, so to build DeepDetect do:
$ git clone https://github.com/beniz/deepdetect.git $ cd deepdetect $ mkdir build $ cd build $ cmake .. $ make
If everything goes well, the deepdetect server exe is build/main/dede
Running the server
build repository, do:
You should see something similar to:
DeepDetect [ commit 73d4e638498d51254862572fe577a21ab8de2ef1 ] Running DeepDetect HTTP server on localhost:8080
Ctrl-C to kill the server.
Note: running tests requires the automated download of ~75Mb of datasets, and computations may take up to thirty minutes on a CPU-only machines.
To prepare for tests, compile with:
$ cmake .. -DBUILD_TESTS=ON $ make $ ctest
Upgrading DeepDetect from sources
Upgrading DeepDetect is done from sources with git:
$ cd deepdetect $ git pull $ cd build $ cmake .. $ make