Go to file
Juha Reunanen f685cb4249 Add U-net style skip connections to the semantic-segmentation example (#1600)
* Add concat_prev layer, and U-net example for semantic segmentation

* Allow to supply mini-batch size as command-line parameter

* Decrease default mini-batch size from 30 to 24

* Resize t1, if needed

* Use DenseNet-style blocks instead of residual learning

* Increase default mini-batch size to 50

* Increase default mini-batch size from 50 to 60

* Resize even during the backward step, if needed

* Use resize_bilinear_gradient for the backward step

* Fix function call ambiguity problem

* Clear destination before adding gradient

* Works OK-ish

* Add more U-tags

* Tweak default mini-batch size

* Define a simpler network when using Microsoft Visual C++ compiler; clean up the DenseNet stuff (leaving it for a later PR)

* Decrease default mini-batch size from 24 to 23

* Define separate dnn filename for MSVC++ and not

* Add documentation for the resize_to_prev layer; move the implementation so that it comes after mult_prev

* Fix previous typo

* Minor formatting changes

* Reverse the ordering of levels

* Increase the learning-rate stopping criterion back to 1e-4 (was 1e-8)

* Use more U-tags even on Windows

* Minor formatting

* Latest MSVC 2017 builds fast, so there's no need to limit the depth any longer

* Tweak default mini-batch size again

* Even though latest MSVC can now build the extra layers, it does not mean we should add them!

* Fix naming
2019-01-06 09:11:39 -05:00
dlib Add U-net style skip connections to the semantic-segmentation example (#1600) 2019-01-06 09:11:39 -05:00
docs Record last changeset and set PATCH version to 99 2018-09-29 09:05:19 -04:00
examples Add U-net style skip connections to the semantic-segmentation example (#1600) 2019-01-06 09:11:39 -05:00
python_examples Add padding argument support for Python compute_face_descriptor methods (#1578) 2018-12-05 07:18:40 -05:00
tools Add padding argument support for Python compute_face_descriptor methods (#1578) 2018-12-05 07:18:40 -05:00
.gitignore ignore dist directory as well as egg directories 2015-08-19 16:25:10 -07:00
.hgignore ignore more build folders 2018-09-10 08:30:54 -04:00
.hgtags Added tag v19.16 for changeset be6f74b9751b 2018-09-29 09:03:21 -04:00
.travis.yml more travis debug 2018-03-30 15:42:10 -04:00
CMakeLists.txt Only define one dlib target in CMake and shared vs. static is determined by BUILD_SHARED_LIBS variable. (#1138) 2018-02-27 22:39:20 -05:00
ISSUE_TEMPLATE.md updated issue template 2018-09-07 09:40:03 -04:00
MANIFEST.in Removed cruft 2018-01-15 22:30:42 -05:00
README.md Removed notes about using --yes USE_AVX_INSTRUCTIONS when building python 2018-05-22 07:01:09 -04:00
setup.py See if this unbreaks appveyor 2018-11-14 07:26:36 -05:00

dlib C++ library Travis Status

Dlib is a modern C++ toolkit containing machine learning algorithms and tools for creating complex software in C++ to solve real world problems. See http://dlib.net for the main project documentation and API reference.

Compiling dlib C++ example programs

Go into the examples folder and type:

mkdir build; cd build; cmake .. ; cmake --build .

That will build all the examples. If you have a CPU that supports AVX instructions then turn them on like this:

mkdir build; cd build; cmake .. -DUSE_AVX_INSTRUCTIONS=1; cmake --build .

Doing so will make some things run faster.

Finally, Visual Studio users should usually do everything in 64bit mode. By default Visual Studio is 32bit, both in its outputs and its own execution, so you have to explicitly tell it to use 64bits. Since it's not the 1990s anymore you probably want to use 64bits. Do that with a cmake invocation like this:

cmake .. -G "Visual Studio 14 2015 Win64" -T host=x64 

Compiling your own C++ programs that use dlib

The examples folder has a CMake tutorial that tells you what to do. There are also additional instructions on the dlib web site.

Compiling dlib Python API

Before you can run the Python example programs you must compile dlib. Type:

python setup.py install

Running the unit test suite

Type the following to compile and run the dlib unit test suite:

cd dlib/test
mkdir build
cd build
cmake ..
cmake --build . --config Release
./dtest --runall

Note that on windows your compiler might put the test executable in a subfolder called Release. If that's the case then you have to go to that folder before running the test.

This library is licensed under the Boost Software License, which can be found in dlib/LICENSE.txt. The long and short of the license is that you can use dlib however you like, even in closed source commercial software.

dlib sponsors

This research is based in part upon work supported by the Office of the Director of National Intelligence (ODNI), Intelligence Advanced Research Projects Activity (IARPA) under contract number 2014-14071600010. The views and conclusions contained herein are those of the authors and should not be interpreted as necessarily representing the official policies or endorsements, either expressed or implied, of ODNI, IARPA, or the U.S. Government.