Old Change Logs
Revision: f9ef9feebe06f183
Author: Davis King
Date: Jan 22, 2018 (14:23:01 UTC)

Removed references to boost.python since it's no longer needed.

Modified
docs/docs/faq.xml
python_examples/cnn_face_detector.py
python_examples/correlation_tracker.py
python_examples/face_alignment.py
python_examples/face_clustering.py
python_examples/face_detector.py
python_examples/face_jitter.py
python_examples/face_landmark_detection.py
python_examples/face_recognition.py
python_examples/find_candidate_object_locations.py
python_examples/global_optimization.py
python_examples/max_cost_assignment.py
python_examples/sequence_segmenter.py
python_examples/svm_binary_classifier.py
python_examples/svm_rank.py
python_examples/svm_struct.py
python_examples/train_object_detector.py
python_examples/train_shape_predictor.py

Revision: 0adebb7f69997f70
Author: Davis King
Date: Jan 22, 2018 (02:36:53 UTC)

Added global properties that tell how dlib was compiled.

Modified
tools/python/src/dlib.cpp

Revision: 242e4181e085ec34
Author: Davis King
Date: Jan 21, 2018 (11:10:58 UTC)

Fixed travis config problem.

Modified
dlib/travis/build-and-test.sh

Revision: 82b24985d337b228
Author: Davis King
Date: Jan 21, 2018 (10:16:48 UTC)

Travis-ci needs better documentation, seriously.

Modified
dlib/travis/build-and-test.sh

Revision: b1c63c53fe3ec5b5
Author: Davis King
Date: Jan 21, 2018 (08:14:18 UTC)

Removed auto_ptr from these old smart pointers since auto_ptr is officially removed in C++17 from the standard library.

Modified
dlib/smart_pointers/shared_ptr.h
dlib/smart_pointers/shared_ptr_abstract.h
dlib/smart_pointers/shared_ptr_thread_safe.h
dlib/smart_pointers/shared_ptr_thread_safe_abstract.h

Revision: 4c29366127899659
Author: Davis King
Date: Jan 21, 2018 (07:17:22 UTC)

Fixed warnings in gcc 7

Modified
dlib/general_hash/murmur_hash3.h
dlib/serialize.h
dlib/svm/pegasos.h
dlib/svm/svm_c_linear_trainer.h
dlib/test/cca.cpp
dlib/xml_parser/xml_parser_kernel_1.h

Revision: ad9d9576e3a56428
Author: Davis King
Date: Jan 19, 2018 (14:01:30 UTC)

Made test more robust.

Modified
dlib/test/matrix.cpp

Revision: ab299d0f6fef49f9
Author: Davis King
Date: Jan 19, 2018 (13:49:21 UTC)

Made the sparse version of svd_fast() use multiple CPU cores.

Modified
dlib/matrix/matrix_la.h
dlib/test/cca.cpp

Revision: 983d5ce5a35aecfa
Author: Davis King
Date: Jan 19, 2018 (13:48:25 UTC)

Fixed the code ignoring the angle scan, oops.

Modified
tools/imglab/src/flip_dataset.cpp

Revision: 5f104aee700ae841
Author: Davis King
Date: Jan 18, 2018 (06:11:08 UTC)

Changed test a little so that it hopefully doesn't fail on travis-ci's overloaded OS X test servers.

Modified
dlib/test/timer.cpp

Revision: 33b39b662078500b
Author: Davis King
Date: Jan 17, 2018 (16:35:43 UTC)

More travis stuff

Modified
dlib/travis/build-and-test.sh

Revision: 3b03a44ba2c5c2c1
Author: Davis King
Date: Jan 17, 2018 (16:13:01 UTC)

more travis stuff

Modified
.travis.yml
dlib/travis/build-and-test.sh
Deleted
dlib/travis/before-install.sh

Revision: 15653580d09e359a
Author: Davis King
Date: Jan 17, 2018 (16:00:38 UTC)

more travis testing

Modified
.travis.yml
dlib/travis/build-and-test.sh

Revision: 549dec16bb689602
Author: Davis King
Date: Jan 17, 2018 (14:41:04 UTC)

updated for clean travis

Modified
dlib/travis/build-and-test.sh

Revision: 7bcb494c34bf3ca9
Author: Davis King
Date: Jan 17, 2018 (14:28:26 UTC)

More travis

Modified
dlib/travis/build-and-test.sh

Revision: ceab72b7eb090b3a
Author: Davis King
Date: Jan 17, 2018 (14:12:56 UTC)

Travis

Modified
.travis.yml
dlib/travis/build-and-test.sh

Revision: a9c0c2ca960a9ec4
Author: Davis King
Date: Jan 17, 2018 (13:58:19 UTC)

Still trying to get travis to behave

Modified
.travis.yml
dlib/travis/build-and-test.sh

Revision: a7624589c3c18423
Author: Davis King
Date: Jan 17, 2018 (13:49:23 UTC)

More travis stuff

Modified
.travis.yml
dlib/travis/build-and-test.sh

Revision: be1db8fda761d7b8
Author: Davis King
Date: Jan 17, 2018 (01:44:08 UTC)

fix travis build and test script

Modified
dlib/travis/build-and-test.sh

Revision: 157981252926584a
Author: Davis King
Date: Jan 16, 2018 (16:26:56 UTC)

Different versions of python disagree on what exception gets thrown. So just check for any exception.

Modified
tools/python/test/test_array.py
tools/python/test/test_vector.py

Revision: f20d332651129e01
Author: Davis King
Date: Jan 16, 2018 (16:00:54 UTC)

Fixed test to really work if numpy isn't installed.

Modified
tools/python/test/test_matrix.py

Revision: 0ccd44c600dd3094
Author: Davis King
Date: Jan 16, 2018 (15:14:37 UTC)

Disable these tests if numpy isn't installed

Modified
tools/python/test/test_matrix.py

Revision: ef48b2b3b4681d77
Author: Davis King
Date: Jan 16, 2018 (15:07:09 UTC)

A minor change to avoid compiler warnings in visual studio.

Modified
dlib/simd/simd_check.h

Revision: 10a389390c6c8479
Author: Davis King
Date: Jan 16, 2018 (14:54:33 UTC)

Added appveyor python tests

Added
dlib/appveyor/python.yml

Revision: 5c52811f0a4044d1
Author: Davis King
Date: Jan 16, 2018 (14:47:27 UTC)

Make travis python tests run via setup.py

Modified
dlib/travis/build-and-test.sh

Revision: 87ba9771c4980cde
Author: Davis King
Date: Jan 16, 2018 (14:23:35 UTC)

Fixed grammar

Modified
dlib/simd/simd_check.h

Revision: b6275535b393b92a
Author: Davis King
Date: Jan 16, 2018 (14:23:08 UTC)

Fixed simd warning message not working.

Modified
tools/python/src/dlib.cpp
tools/python/src/numpy_returns.cpp

Revision: f101973c5037935a
Author: Davis King
Date: Jan 16, 2018 (02:26:46 UTC)

Added warning about simd instructions

Modified
tools/python/src/dlib.cpp

Revision: 70d46fd1725e0df9
Author: Davis King
Date: Jan 16, 2018 (02:25:55 UTC)

Added missing #include

Modified
dlib/simd/simd_check.h

Revision: 2f435c3aa432019b
Author: Davis King
Date: Jan 16, 2018 (02:24:47 UTC)

Cleaned up setup.py and the python cmake script.

Modified
setup.py
tools/python/CMakeLists.txt
Deleted
setup_new.py

Revision: 07ab3973367db646
Author: Davis King
Date: Jan 15, 2018 (17:29:37 UTC)

Made test work in python3

Modified
tools/python/test/test_array.py

Revision: 6e2868baa6549b9a
Author: Mischan Toosarani-Hausberger
Date: Jan 15, 2018 (21:41:40 UTC)

Replace boost::python with pybind11 (#1040) * Replace boost::python with pybind11 * Replace add_python_module with pybind11_add_module * Fix clang error on type-dependent expression

Modified
dlib/python.h
dlib/python/numpy.h
dlib/python/numpy_image.h
dlib/python/pyassert.h
dlib/python/serialize_pickle.h
python_examples/svm_binary_classifier.py
tools/python/CMakeLists.txt
tools/python/src/basic.cpp
tools/python/src/cca.cpp
tools/python/src/cnn_face_detector.cpp
tools/python/src/conversion.h
tools/python/src/correlation_tracker.cpp
tools/python/src/decision_functions.cpp
tools/python/src/dlib.cpp
tools/python/src/face_recognition.cpp
tools/python/src/global_optimization.cpp
tools/python/src/gui.cpp
tools/python/src/image.cpp
tools/python/src/indexing.h
tools/python/src/matrix.cpp
tools/python/src/numpy_returns.cpp
tools/python/src/numpy_returns_stub.cpp
tools/python/src/object_detection.cpp
tools/python/src/other.cpp
tools/python/src/rectangles.cpp
tools/python/src/sequence_segmenter.cpp
tools/python/src/shape_predictor.cpp
tools/python/src/simple_object_detector_py.h
tools/python/src/svm_c_trainer.cpp
tools/python/src/svm_rank_trainer.cpp
tools/python/src/svm_struct.cpp
tools/python/src/vector.cpp
Added
dlib/external/pybind11/CMakeLists.txt
dlib/external/pybind11/CONTRIBUTING.md
dlib/external/pybind11/LICENSE
dlib/external/pybind11/README.md
dlib/external/pybind11/include/pybind11/attr.h
dlib/external/pybind11/include/pybind11/buffer_info.h
dlib/external/pybind11/include/pybind11/cast.h
dlib/external/pybind11/include/pybind11/chrono.h
dlib/external/pybind11/include/pybind11/common.h
dlib/external/pybind11/include/pybind11/complex.h
dlib/external/pybind11/include/pybind11/detail/class.h
dlib/external/pybind11/include/pybind11/detail/common.h
dlib/external/pybind11/include/pybind11/detail/descr.h
dlib/external/pybind11/include/pybind11/detail/init.h
dlib/external/pybind11/include/pybind11/detail/internals.h
dlib/external/pybind11/include/pybind11/detail/typeid.h
dlib/external/pybind11/include/pybind11/eigen.h
dlib/external/pybind11/include/pybind11/embed.h
dlib/external/pybind11/include/pybind11/eval.h
dlib/external/pybind11/include/pybind11/functional.h
dlib/external/pybind11/include/pybind11/iostream.h
dlib/external/pybind11/include/pybind11/numpy.h
dlib/external/pybind11/include/pybind11/operators.h
dlib/external/pybind11/include/pybind11/options.h
dlib/external/pybind11/include/pybind11/pybind11.h
dlib/external/pybind11/include/pybind11/pytypes.h
dlib/external/pybind11/include/pybind11/stl.h
dlib/external/pybind11/include/pybind11/stl_bind.h
dlib/external/pybind11/tools/FindCatch.cmake
dlib/external/pybind11/tools/FindEigen3.cmake
dlib/external/pybind11/tools/FindPythonLibsNew.cmake
dlib/external/pybind11/tools/check-style.sh
dlib/external/pybind11/tools/libsize.py
dlib/external/pybind11/tools/mkdoc.py
dlib/external/pybind11/tools/pybind11Config.cmake.in
dlib/external/pybind11/tools/pybind11Tools.cmake
dlib/python/pybind_utils.h
tools/python/test/.gitignore
tools/python/test/test_array.py
tools/python/test/test_matrix.py
tools/python/test/test_point.py
tools/python/test/test_range.py
tools/python/test/test_rgb_pixel.py
tools/python/test/test_sparse_vector.py
tools/python/test/test_vector.py
Deleted
dlib/cmake_utils/add_python_module
dlib/python/boost_python_utils.h

Revision: 9618feae0afeebee
Author: Davis King
Date: Jan 14, 2018 (04:16:50 UTC)

Changed the behavior of imglab's --flip option. It will now attempt to adjust any object part labels so that the flipped dataset has the same average part layout as the source dataset. I added a --flip-basic that behaves like the old --flip. However, most people flipping a dataset with part annotations will want to use --flip.

Modified
tools/imglab/src/flip_dataset.cpp
tools/imglab/src/main.cpp

Revision: 8e1d83b8c1207740
Author: Davis King
Date: Jan 13, 2018 (09:36:55 UTC)

Just moved code around to clean things up a little.

Modified
tools/imglab/CMakeLists.txt
tools/imglab/src/common.cpp
tools/imglab/src/common.h
tools/imglab/src/main.cpp
Added
tools/imglab/src/flip_dataset.cpp
tools/imglab/src/flip_dataset.h

Revision: c1690da74abc8876
Author: Davis King
Date: Jan 12, 2018 (17:19:53 UTC)

Fix compile error in visual studio.

Modified
dlib/simd/simd_check.h

Revision: 0939551ad1ab6530
Author: Davis King
Date: Jan 12, 2018 (17:10:24 UTC)

Added some functions for checking, at runtime, what SIMD instructions are available.

Modified
dlib/simd/simd_check.h

Revision: 8d38e817005d35ba
Author: David Hirvonen
Date: Jan 04, 2018 (09:17:00 UTC)

CUDA_PROPAGATE_HOST_FLAGS=OFF in FindCUDA.cmake for try_compile tests (#1048) Set `CUDA_PROPAGATE_HOST_FLAGS=OFF` in FindCUDA.cmake to avoid duplicate flag errors in nvcc that can occur when host flag forwarding is enabled and `-std=c++11` is set in `CMAKE_CXX_FLAGS` in the operative toolchain. ``` # Override the FindCUDA.cmake setting to avoid duplication of host flags if using a toolchain: option(CUDA_PROPAGATE_HOST_FLAGS "Propage C/CXX_FLAGS and friends to the host compiler via -Xcompile" OFF) ```

Modified
dlib/cmake_utils/test_for_cuda/CMakeLists.txt
dlib/cmake_utils/test_for_cudnn/CMakeLists.txt

Revision: f13a7f757b126b20
Author: Davis King
Date: Jan 10, 2018 (13:49:49 UTC)

Made cmake print a more informative error message when your compiler doesn't appear to support cuda.

Modified
dlib/CMakeLists.txt

Revision: 650507075796b484
Author: Davis King
Date: Jan 03, 2018 (16:25:33 UTC)

Updated XQuartz URL

Modified
dlib/CMakeLists.txt

Revision: 0d1d29bd45efdef0
Author: Duc Thien Bui
Date: Dec 25, 2017 (26:56:42 UTC)

fix typo in train find cars example (#1028)

Modified
examples/dnn_mmod_train_find_cars_ex.cpp

Revision: 9d2f6efc359f7952
Author: Andriy Gerasika
Date: Dec 25, 2017 (04:51:19 UTC)

>2x performance increase if DLIB_DO_NOT_USE_SIMD is defined (#1027)

Modified
dlib/simd/simd8f.h
dlib/simd/simd8i.h

Revision: 3cf0d6713204ed88
Author: Davis King
Date: Dec 25, 2017 (03:50:34 UTC)

Fixed typos

Modified
examples/CMakeLists.txt

Revision: 0d50f3df64f10342
Author: Paul Guyot
Date: Dec 20, 2017 (18:28:39 UTC)

Make sure intel architecture is properly detected (#1024) On systems such as FreeBSD, `uname -p` returns amd64 (in lowercase) and -DUSE_AVX_INSTRUCTIONS=1 does not work (the option is ignored).

Modified
dlib/cmake_utils/set_compiler_specific_options.cmake

Revision: 5efb80ed890b0d2f
Author: Davis King
Date: Dec 23, 2017 (04:48:11 UTC)

Made cmake include the visual studio runtime version in the name of the output .lib file when building dlib in visual studio.

Modified
dlib/CMakeLists.txt

Revision: 7dfc4d5e850e59ff
Author: Davis King
Date: Dec 19, 2017 (17:24:31 UTC)

Make the global optimizer work in python3

Modified
tools/python/src/global_optimization.cpp

Revision: 3864a4477300b2d4
Author: Davis King
Date: Dec 19, 2017 (16:16:57 UTC)

Record last changeset and set PATCH version to 99

Modified
dlib/CMakeLists.txt
docs/.logger_revnum

Revision: fef491c3b8182c68
Author: Davis King
Date: Dec 19, 2017 (16:15:28 UTC)

Created release v19.8

Modified
dlib/CMakeLists.txt

Revision: 3d917692ac8ab43c
Author: Davis King
Date: Dec 19, 2017 (09:18:55 UTC)

Removed an assert used for debugging that shouldn't have been committed.

Modified
dlib/image_transforms/random_cropper.h

Revision: 94abd62c1124f2af
Author: Davis King
Date: Dec 19, 2017 (05:57:07 UTC)

Fixed set_colm() and set_rowm() not being assignable from some matrix expressions.

Modified
dlib/matrix/matrix_blas_bindings.h
dlib/test/matrix.cpp

Revision: 1662c169b5b4c6b9
Author: Davis King
Date: Dec 19, 2017 (04:59:55 UTC)

Made unit test more robust.

Modified
dlib/test/global_optimization.cpp

Revision: 08908ad3f420a5ae
Author: Davis King
Date: Dec 19, 2017 (01:34:49 UTC)

Fixed initial point selection to only happen once.

Modified
dlib/global_optimization/global_function_search.cpp

Revision: e968c246e86cfa36
Author: Davis King
Date: Dec 18, 2017 (11:20:21 UTC)

Minor update

Modified
examples/model_selection_ex.cpp

Revision: ec042547cb06c4a7
Author: Davis King
Date: Dec 18, 2017 (10:59:23 UTC)

Added a minor optimization.

Modified
dlib/global_optimization/global_function_search.cpp
dlib/test/global_optimization.cpp

Revision: 9b23de588b165989
Author: Davis King
Date: Dec 18, 2017 (10:07:41 UTC)

Fixed problem with openmp linking

Modified
dlib/CMakeLists.txt
dlib/cmake_utils/cmake_find_blas.txt

Revision: 81ce6ee1d0be74bf
Author: David Hirvonen
Date: Dec 17, 2017 (15:18:44 UTC)

add chrono::duration_cast<>() cast for clang error (#1019) * fix chrono cast for llvm https://stackoverflow.com/a/18284105 tested: clang-3.9, clang-5.0 ``` /Source/dlib/dir_nav/dir_nav_kernel_2.h:397:31: error: no viable overloaded '+=' last_modified += std::chrono::nanoseconds(buffer.st_atim.tv_nsec); ~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/v1/chrono:782:43: note: candidate function not viable: no known conversion from 'duration<[...], ratio<[...], 1000000000>>' to 'const duration<[...], ratio<[...], 1000000>>' for 1st argument _LIBCPP_INLINE_VISIBILITY time_point& operator+=(const duration& __d) {__d_ += __d; return *this;} ^ Source/dlib/dir_nav/dir_nav_kernel_2.cpp:69:33: error: no viable overloaded '+=' state.last_modified += std::chrono::nanoseconds(buffer.st_atim.tv_nsec); ~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/c++/v1/chrono:782:43: note: candidate function not viable: no known conversion from 'duration<[...], ratio<[...], 1000000000>>' to 'const duration<[...], ratio<[...], 1000000>>' for 1st argument _LIBCPP_INLINE_VISIBILITY time_point& operator+=(const duration& __d) {__d_ += __d; return *this;} ``` * fix typo

Modified
dlib/dir_nav/dir_nav_kernel_2.cpp
dlib/dir_nav/dir_nav_kernel_2.h

Revision: 351ebdcb19bd65d3
Author: Davis King
Date: Dec 17, 2017 (09:41:00 UTC)

Changed this example to use repeat layers. This doesn't change the behavior of the code, but it helps visual studio use less RAM when building the example, and might make appveyor not crash. It's also a slightly cleaner way to write the code anyway.

Modified
examples/dnn_semantic_segmentation_ex.h

Revision: 85bf1aad671e76ba
Author: Davis King
Date: Dec 17, 2017 (08:46:37 UTC)

Check if appveyor's VS2017 is the newest version.

Modified
dlib/appveyor/examples.yml

Revision: 7f5e338f0d255b30
Author: Davis King
Date: Dec 17, 2017 (04:02:07 UTC)

Updated messages about what versions of visual studio have good enough C++11 support.

Modified
dlib/cmake_utils/add_python_module
dlib/cmake_utils/set_compiler_specific_options.cmake

Revision: 02c4f9aaef5f72bf
Author: Davis King
Date: Dec 17, 2017 (03:23:43 UTC)

Split appveyor build scripts into parts so they don't error out from being too big.

Added
dlib/appveyor/dtest.yml
dlib/appveyor/examples.yml
Deleted
appveyor.yml

Revision: 591a0011897707cc
Author: Davis King
Date: Dec 16, 2017 (18:17:37 UTC)

Improved visual studio compilation instructions

Modified
examples/CMakeLists.txt

Revision: 5504a0de9a3c3b45
Author: Davis King
Date: Dec 16, 2017 (17:34:22 UTC)

Merged

Modified
dlib/global_optimization/upper_bound_function.h
dlib/global_optimization/upper_bound_function_abstract.h

Revision: 1e45c8f824fc4551
Author: ernestotapiar
Date: Dec 15, 2017 (24:12:58 UTC)

little corrections in global optimization (#1016) * Removed redudant (repeated) definition of sample_type. * Added return statement in the documentation of the (lambda) upper bound function.

Modified
dlib/global_optimization/upper_bound_function.h
dlib/global_optimization/upper_bound_function_abstract.h

Revision: 3c244dce053b1b6e
Author: Davis King
Date: Dec 16, 2017 (06:26:40 UTC)

Fixed grammar

Modified
dlib/optimization/optimization_trust_region_abstract.h

Revision: 2417f8c37b6011ff
Author: Davis King
Date: Dec 15, 2017 (12:08:49 UTC)

clarified spec

Modified
dlib/global_optimization/upper_bound_function_abstract.h

Revision: a6bf6bc3416703ee
Author: Davis King
Date: Dec 15, 2017 (06:30:19 UTC)

Clarified spec

Modified
dlib/global_optimization/global_function_search_abstract.h

Revision: 82b38c4a2a4ca4d9
Author: Davis King
Date: Dec 14, 2017 (03:06:16 UTC)

Improved error messages for people who have incorrectly installed boost in windows.

Modified
dlib/cmake_utils/add_python_module

Revision: c8c167dcc5e01115
Author: Davis King
Date: Dec 12, 2017 (16:57:04 UTC)

Added python bindings for count_steps_without_decrease() and count_steps_without_decrease_robust()

Modified
tools/python/src/other.cpp

Revision: 8e171f495e4698c3
Author: Aron Rubin
Date: Dec 12, 2017 (16:23:47 UTC)

Fixed type passing to opencv to use basic instead of aggregate. (#1010) * Fixed type passing to opencv to use basic instead of aggregate. * Change tabs to spaces.

Modified
dlib/opencv/to_open_cv.h

Revision: cefc32136b3da7a7
Author: Davis King
Date: Dec 12, 2017 (01:36:37 UTC)

Fixed DLIB_ISO_CPP_ONLY not building.

Modified
dlib/CMakeLists.txt
dlib/all/source.cpp

Revision: c2a4495ce3e8c31a
Author: wyd1520
Date: Dec 12, 2017 (10:20:31 UTC)

Change VS2015 Update3 MSVC Version v19.0.24215.1 To v19.0.24210.0 (#1009)

Modified
dlib/cmake_utils/set_compiler_specific_options.cmake

Revision: e92d89dd296ed3d8
Author: Davis King
Date: Dec 11, 2017 (01:40:00 UTC)

Fixed spelling error in comment

Modified
examples/CMakeLists.txt

Revision: 7731b8fff8332d8e
Author: Davis King
Date: Dec 10, 2017 (10:33:46 UTC)

Better travis python testing.

Modified
.travis.yml
dlib/travis/build-and-test.sh

Revision: 95a2f74aa9f62ea3
Author: Davis King
Date: Dec 10, 2017 (10:25:21 UTC)

Try to fix travis build

Modified
dlib/travis/build-and-test.sh

Revision: 911d65885af78570
Author: Davis King
Date: Dec 10, 2017 (10:24:45 UTC)

Improved cmake's finding of the right python interpreter.

Modified
dlib/cmake_utils/add_python_module

Revision: 12be4f07888a4212
Author: Davis King
Date: Dec 10, 2017 (09:57:00 UTC)

Tell the python3 tests to use python3

Modified
dlib/travis/build-and-test.sh

Revision: 6ea80b1865e8c8ca
Author: Davis King
Date: Dec 10, 2017 (09:48:09 UTC)

Minor tweak

Modified
dlib/global_optimization/find_max_global.h
dlib/global_optimization/find_max_global_abstract.h

Revision: bbe33aaaebda370f
Author: Davis King
Date: Dec 10, 2017 (09:44:31 UTC)

Make travis build both python2 and python3 versions of the python extension.

Modified
.travis.yml
dlib/travis/build-and-test.sh

Revision: 60019c50ec69fa42
Author: Davis King
Date: Dec 09, 2017 (15:53:35 UTC)

Made random_cropper's API a little more convenient for cropping out only background crops.

Modified
dlib/image_transforms/random_cropper.h
dlib/image_transforms/random_cropper_abstract.h

Revision: 765f71aac76a690b
Author: Davis King
Date: Dec 09, 2017 (15:52:07 UTC)

The previous commit broke for pyhton2 but fixed python3. This should deal with numpy's import_array() in a more robust way.

Modified
tools/python/src/dlib.cpp
tools/python/src/numpy_returns.cpp
tools/python/src/numpy_returns_stub.cpp

Revision: 6703f0dfaf08fff9
Author: Davis King
Date: Dec 09, 2017 (14:51:20 UTC)

Numpy's import_array() macro in python3 requires the calling function to return void*. But the previous code didn't so it wouldn't compile. Fixed that problem.

Modified
tools/python/src/dlib.cpp
tools/python/src/numpy_returns.cpp
tools/python/src/numpy_returns_stub.cpp

Revision: 1dbced08946eb9d7
Author: Davis King
Date: Dec 08, 2017 (05:16:08 UTC)

A little bit of cleanup

Modified
python_examples/face_jitter.py

Revision: d54c33f16e6371c9
Author: Davis King
Date: Dec 08, 2017 (05:09:50 UTC)

Made this file executable

Modified
python_examples/face_jitter.py

Revision: 67e848f1de8c4f85
Author: Davis King
Date: Dec 08, 2017 (05:09:30 UTC)

cleaned up cmake

Modified
tools/python/CMakeLists.txt

Revision: eba177eb9652e560
Author: visionworkz
Date: Dec 08, 2017 (30:59:27 UTC)

Exposed jitter_image in Python and added an example (#980) * Exposed jitter_image in Python and added an example * Return Numpy array directly * Require numpy during setup * Added install of Numpy before builds * Changed pip install for user only due to security issues. * Removed malloc * Made presence of Numpy during compile optional. * Conflict * Refactored get_face_chip/get_face_chips to use Numpy as well.

Modified
appveyor.yml
dlib/travis/build-and-test.sh
python_examples/face_alignment.py
setup.py
tools/python/CMakeLists.txt
tools/python/src/dlib.cpp
tools/python/src/face_recognition.cpp
tools/python/src/image.cpp
Added
examples/faces/Tom_Cruise_avp_2014_4.jpg
python_examples/face_jitter.py
tools/python/src/numpy_returns.cpp
tools/python/src/numpy_returns_stub.cpp

Revision: 4881802d52fbcdea
Author: Davis King
Date: Dec 08, 2017 (04:39:52 UTC)

Fixed spelling error that broke cmake just now.

Modified
dlib/CMakeLists.txt

Revision: 4b54c0247dfb20a1
Author: Kino
Date: Dec 08, 2017 (04:53:29 UTC)

don't look for OpenMP with Apple Clang (#1002) look at issue: https://github.com/davisking/dlib/issues/674

Modified
dlib/CMakeLists.txt

Revision: 4287d80d0e72860c
Author: Davis King
Date: Dec 08, 2017 (04:08:09 UTC)

Added USE_NEON_INSTRUCTIONS cmake option.

Modified
dlib/cmake_utils/set_compiler_specific_options.cmake

Revision: 1f23d299f11ee131
Author: Davis King
Date: Dec 08, 2017 (04:07:49 UTC)

Fixed incorrect printing of blas warning message.

Modified
dlib/cmake_utils/cmake_find_blas.txt

Revision: 4e06ffd2c0c55ade
Author: Davis King
Date: Dec 07, 2017 (03:11:55 UTC)

Changed the windows signaler and mutex code to use the C++11 thread library instead of the old win32 functions. I did this to work around how windows unloads dlls. In particular, during dll unload windows will kill all threads, THEN it will destruct global objects. So this leads to problems where a global obejct that owns threads tries to tell them to shutdown and everything goes wrong. The specific problem this code change fixes is when signaler::broadcast() is called on a signaler that was being waited on by one of these abruptly killed threads. In that case, the old code would deadlock inside signaler::broadcast(). This new code doesn't seem to have that problem, thereby mitigating the windows dll unload behavior in some situations.

Modified
dlib/threads/threads_kernel_1.h

Revision: bb1f9991d4ea7385
Author: Davis King
Date: Dec 05, 2017 (10:10:41 UTC)

Added a missing assert.

Modified
tools/python/src/face_recognition.cpp

Revision: 0fbe493258bbd07f
Author: Davis King
Date: Dec 04, 2017 (16:47:43 UTC)

Filled out the documentation

Modified
dlib/global_optimization/global_function_search_abstract.h
dlib/global_optimization/upper_bound_function_abstract.h

Revision: 0f28d6dd3e8b668a
Author: Davis King
Date: Dec 04, 2017 (12:09:18 UTC)

Fixed shape_predictor_trainer padding so that it behaves as it used to. In dlib 19.7 the padding code was changed and accidentally doubled the size of the applied padding when in the older (and still default) landmark_relative padding mode. It's not a huge deal either way, but this change reverts back to the intended behavior.

Modified
dlib/image_processing/shape_predictor_trainer.h

Revision: 2154c0e2dc7d8260
Author: Davis King
Date: Dec 02, 2017 (10:21:23 UTC)

Fixed grammar

Modified
dlib/global_optimization/global_function_search_abstract.h

Revision: c3b0f5fe8563fa69
Author: Davis King
Date: Dec 04, 2017 (07:57:38 UTC)

Changed test_regression_function() and cross_validate_regression_trainer() to output correlation rather than squared correlation.

Modified
dlib/svm/cross_validate_regression_trainer.h
dlib/svm/cross_validate_regression_trainer_abstract.h

Revision: ce8122891fadf677
Author: Davis King
Date: Dec 04, 2017 (07:29:51 UTC)

Fixed a very small bias in rand::get_random_double()

Modified
dlib/rand/rand_kernel_1.h

Revision: a70fbba8fde7d053
Author: Davis King
Date: Dec 02, 2017 (03:55:24 UTC)

Changed example to use minimization rather than maximization.

Modified
python_examples/global_optimization.py

Revision: 905c54f3baa202a7
Author: Davis King
Date: Dec 02, 2017 (03:55:02 UTC)

Added python interface to find_min_global()

Modified
tools/python/src/global_optimization.cpp

Revision: 241dc3881e43952a
Author: Davis King
Date: Dec 02, 2017 (02:53:31 UTC)

Added find_min_global() overloads.

Modified
dlib/global_optimization/find_max_global.h
dlib/global_optimization/find_max_global_abstract.h
dlib/test/global_optimization.cpp
examples/optimization_ex.cpp

Revision: 548deb5fb1cce36a
Author: Davis King
Date: Dec 01, 2017 (15:15:16 UTC)

Updated to use thread_local instead of old thread_specific_data class.

Modified
dlib/stack_trace.cpp

Revision: 5f222107dac916cb
Author: Davis King
Date: Dec 01, 2017 (14:53:57 UTC)

Fixed stack trace macro

Modified
dlib/stack_trace.h

Revision: 873f5faae5c5ed73
Author: Davis King
Date: Dec 01, 2017 (02:17:09 UTC)

Minor cleanup

Modified
dlib/disjoint_subsets.h
dlib/disjoint_subsets/disjoint_subsets_sized_abstract.h
dlib/test/disjoint_subsets_sized.cpp
Deleted
dlib/disjoint_subsets_sized.h

Revision: 62ff0d5e218bf64e
Author: Facundo Galán
Date: Dec 01, 2017 (06:08:37 UTC)

disjoint_subsets: add get_number_of_sets and get_size_of_set functions (#880) * disjoint_subsets: make clear and sizde functions noexcept * disjoint_subsets: add get_number_of_sets function, documentations and tests * disjoint_subsets: add get_size_of_set function, documentation and tests * Split disjoint_subsets in a hierarchy. Modify disjoint_subsets to make it a valid base class. Add new class disjoint_subsets_sized, with information about number of subsets, and size of each subset. Add necessary unit test for the new class. * Replace tabs by spaces. * Remove virtuals from disjoint_subsets, and modify disjoint_subsets_sized. Now disjoint_subsets_sized is implemented in terms of disjoint_subsets, instead of inherit from it.

Modified
dlib/disjoint_subsets/disjoint_subsets.h
dlib/disjoint_subsets/disjoint_subsets_abstract.h
dlib/test/CMakeLists.txt
dlib/test/disjoint_subsets.cpp
Added
dlib/disjoint_subsets/disjoint_subsets_sized.h
dlib/disjoint_subsets/disjoint_subsets_sized_abstract.h
dlib/disjoint_subsets_sized.h
dlib/test/disjoint_subsets_sized.cpp

Revision: a8e2ca4db2cad5ab
Author: Davis King
Date: Dec 01, 2017 (-05:26:31 UTC)

This example still uses a lot of visual studio ram.

Modified
examples/CMakeLists.txt

Revision: 7b24b43d4934cd42
Author: Davis King
Date: Nov 30, 2017 (17:38:29 UTC)

These examples compile now in visual studio due to the recent pragma directive added to core.h.

Modified
examples/CMakeLists.txt

Revision: 0d8e0e4d8693b596
Author: Davis King
Date: Nov 30, 2017 (17:14:04 UTC)

Added a pragma statement that tells visual studio to not recursively inline functions very much when using the dnn tools, since otherwise it will sometimes take hours to compile.

Modified
dlib/dnn/core.h

Revision: c4b5bc05e2518b49
Author: Davis King
Date: Nov 25, 2017 (14:28:53 UTC)

clarified docs

Modified
examples/optimization_ex.cpp

Revision: ebccbb9697063feb
Author: Davis King
Date: Nov 25, 2017 (07:25:35 UTC)

Just moved the try block to reduce the indentation level.

Modified
examples/optimization_ex.cpp

Revision: fa87479f3b07250e
Author: Davis King
Date: Nov 25, 2017 (07:23:43 UTC)

Updated example to use C++11 style code and also to show the new find_max_global() routine.

Modified
examples/optimization_ex.cpp

Revision: d74613f7712c5c08
Author: Davis King
Date: Nov 25, 2017 (05:23:36 UTC)

Added python example for find_max_global()

Added
python_examples/global_optimization.py

Revision: ab3d942fd3dc8009
Author: Davis King
Date: Nov 25, 2017 (05:07:00 UTC)

Added a python interface to find_max_global()

Modified
tools/python/CMakeLists.txt
tools/python/src/dlib.cpp
Added
tools/python/src/global_optimization.cpp

Revision: 3a8cd8c8896637b7
Author: Davis King
Date: Nov 25, 2017 (04:57:33 UTC)

Clarified spec

Modified
dlib/global_optimization/find_max_global_abstract.h

Revision: eea1a2316f0f3011
Author: Davis King
Date: Nov 25, 2017 (04:29:36 UTC)

Fixed find_max_global() overload that was ignoring one of its arguments.

Modified
dlib/global_optimization/find_max_global.h

Revision: 9057d374b5e4a471
Author: Davis King
Date: Nov 25, 2017 (03:26:16 UTC)

Switched this example to use the svm C instead of nu trainer.

Modified
examples/model_selection_ex.cpp

Revision: e1e54852a26acc4e
Author: Davis King
Date: Nov 25, 2017 (03:07:36 UTC)

Minor changes to avoid compiler warnings.

Modified
dlib/dnn/trainer.h
dlib/test/matrix2.cpp

Revision: 2e65de540ea90531
Author: Davis King
Date: Nov 25, 2017 (03:00:08 UTC)

Changed default solver epsilon so that it will solve to full floating point precision by default. If the user is OK with less precision they can change it.

Modified
dlib/global_optimization/find_max_global.h
dlib/global_optimization/find_max_global_abstract.h
dlib/global_optimization/global_function_search.h
dlib/global_optimization/global_function_search_abstract.h

Revision: be19c47b84915aa5
Author: Davis King
Date: Nov 25, 2017 (02:42:48 UTC)

Fixing code for visual studio

Modified
dlib/global_optimization/find_max_global.h

Revision: fde4ddad8f0d8355
Author: Davis King
Date: Nov 24, 2017 (17:04:25 UTC)

Made this example program use the new find_max_global() instead of grid search and BOBYQA. This greatly simplifies the example.

Modified
examples/model_selection_ex.cpp

Revision: 94e5ee808b75aea0
Author: Davis King
Date: Nov 24, 2017 (16:44:09 UTC)

Made find_max_global() automatically apply a log-scale transform to variables that obviously need it.

Modified
dlib/global_optimization/find_max_global.h
dlib/global_optimization/find_max_global_abstract.h

Revision: 8dbe632e7ae48b62
Author: Davis King
Date: Nov 24, 2017 (12:22:37 UTC)

Added more docs

Modified
dlib/global_optimization/global_function_search_abstract.h

Revision: 1f2da9dd6649cc45
Author: Davis King
Date: Nov 24, 2017 (04:56:26 UTC)

Cleaned up the code a bit.

Modified
dlib/global_optimization/global_function_search.cpp
dlib/global_optimization/global_function_search.h
dlib/global_optimization/global_function_search_abstract.h

Revision: 83b80390d22efd73
Author: Davis King
Date: Nov 23, 2017 (06:43:32 UTC)

Renamed find_global_maximum() to find_max_global()

Modified
dlib/global_optimization.h
dlib/test/global_optimization.cpp
Added
dlib/global_optimization/find_max_global.h
dlib/global_optimization/find_max_global_abstract.h
Deleted
dlib/global_optimization/find_global_maximum.h
dlib/global_optimization/find_global_maximum_abstract.h

Revision: f3f63a3ba3e9c1b3
Author: Davis King
Date: Nov 23, 2017 (06:30:01 UTC)

More cleanup and added more tests

Modified
dlib/global_optimization/find_global_maximum.h
dlib/global_optimization/find_global_maximum_abstract.h
dlib/global_optimization/global_function_search.cpp
dlib/test/global_optimization.cpp

Revision: af6c65cc775eb452
Author: Davis King
Date: Nov 23, 2017 (05:57:00 UTC)

Fixed spec

Modified
dlib/global_optimization/find_global_maximum_abstract.h

Revision: c5139c043a41820b
Author: Davis King
Date: Nov 23, 2017 (05:03:11 UTC)

A bit of cleanup and documentation

Modified
dlib/global_optimization/find_global_maximum.h
dlib/global_optimization/global_function_search.cpp
dlib/global_optimization/global_function_search.h
Added
dlib/global_optimization/find_global_maximum_abstract.h
dlib/global_optimization/global_function_search_abstract.h

Revision: f2fbc879e04e27b4
Author: Davis King
Date: Nov 23, 2017 (02:59:10 UTC)

Fixed and clarified spec

Modified
dlib/global_optimization/upper_bound_function_abstract.h

Revision: ff1a5b18cefecfc9
Author: hannometer
Date: Nov 22, 2017 (12:42:15 UTC)

imglab: select next/previous image with 's' and 'w' (#964) * imglab: select next/previous image with 's' and 'w' * imglab: make 'w' and 's' keys behave like UP and DOWN keys; add 'about' text

Modified
tools/imglab/src/metadata_editor.cpp

Revision: 2ed19144e2c265df
Author: Davis King
Date: Nov 22, 2017 (08:06:19 UTC)

Made the loss dumping between learning rate changes a little more relaxed. In particular, rather than just dumping exactly 400 of the last loss values, it now dumps 400 + 10% of the loss buffer. This way, the amount of the dump is proportional to the steps without progress threshold. This is better because when the user sets the steps without progress to something larger it probably means you need to look at more loss values to determine that we should stop, so dumping more in that case ought to be better.

Modified
dlib/dnn/trainer.h

Revision: 68f78b1253264fd6
Author: Davis King
Date: Nov 20, 2017 (16:36:04 UTC)

Added global_function_search unit test

Modified
dlib/test/global_optimization.cpp

Revision: be23f984586d49aa
Author: Davis King
Date: Nov 20, 2017 (16:13:49 UTC)

more cleanup

Modified
dlib/global_optimization/global_function_search.cpp
dlib/global_optimization/global_function_search.h

Revision: 1fd281172beef8dd
Author: Davis King
Date: Nov 20, 2017 (14:55:07 UTC)

Cleanup

Modified
dlib/global_optimization/global_function_search.cpp
dlib/global_optimization/global_function_search.h

Revision: 57ed42324f584cf5
Author: Davis King
Date: Nov 20, 2017 (14:31:20 UTC)

Cleaned up the compile_time_integer_list and make_compile_time_integer_range types and put them into their own file.

Modified
dlib/dnn/core.h
dlib/global_optimization/find_global_maximum.h
Added
dlib/metaprogramming.h

Revision: 57e1dc1fd861432c
Author: Kino
Date: Nov 20, 2017 (19:52:24 UTC)

generic image all the way - colormaps.h (#971) Still hunting down pre-generic_image implementations

Modified
dlib/image_transforms/colormaps.h

Revision: e48fc4a638ad7f55
Author: Davis King
Date: Nov 20, 2017 (13:48:14 UTC)

Changed python build script to append rather than overwrite CMAKE_PREFIX_PATH.

Modified
dlib/cmake_utils/add_python_module

Revision: 8b67b8d494e687cf
Author: Juha Reunanen
Date: Nov 19, 2017 (19:53:50 UTC)

Problem: log loss may become infinite, if g[idx] goes zero (#938) * Problem: log loss may become infinite, if g[idx] goes zero Solution: limit the input of the log function to 1e-6 (or more) * Parameterize the safe_log epsilon limit, and make the default value 1e-10

Modified
dlib/dnn/loss.h

Revision: 2dd8e4eef3a78bd7
Author: Davis King
Date: Nov 18, 2017 (16:40:44 UTC)

Made the global_function_search object use the faster incremental upper_bound_function::add(). Also fixed some issues in the solver.

Modified
dlib/global_optimization/global_function_search.cpp
dlib/global_optimization/global_function_search.h

Revision: e2ee96d36b67f5ca
Author: Davis King
Date: Nov 17, 2017 (16:42:29 UTC)

Added a .add() to upper_bound_function so that the upper bound can be quickly updated without needing to resolve the whole QP.

Modified
dlib/global_optimization/upper_bound_function.h
dlib/global_optimization/upper_bound_function_abstract.h
dlib/test/global_optimization.cpp

Revision: 4aeb8a7ab0494de8
Author: Davis King
Date: Nov 15, 2017 (12:20:36 UTC)

Made normalization code more robust and a bit cleaner.

Modified
dlib/global_optimization/upper_bound_function.h

Revision: e85ac655088251e8
Author: Davis King
Date: Nov 17, 2017 (14:07:41 UTC)

Added loss_dot layer

Modified
dlib/dnn/loss.h
dlib/dnn/loss_abstract.h
dlib/test/dnn.cpp

Revision: f82ca631041817aa
Author: Davis King
Date: Nov 17, 2017 (11:55:24 UTC)

Upgraded the con_ layer so that you can set the nr or nc to 0 in the layer specification and this means "make the filter cover the whole input image dimension". So it's just an easy way to make a filter sized exactly so that it will have one output along that dimension.

Modified
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h
dlib/test/dnn.cpp

Revision: 9636a74b9406a9c9
Author: Davis King
Date: Nov 17, 2017 (06:40:44 UTC)

Added softmax_all layer.

Modified
dlib/dnn/cpu_dlib.cpp
dlib/dnn/cpu_dlib.h
dlib/dnn/cudnn_dlibapi.cpp
dlib/dnn/cudnn_dlibapi.h
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h
dlib/dnn/tensor_tools.cpp
dlib/dnn/tensor_tools.h
dlib/test/dnn.cpp

Revision: 31485fb7c99010ea
Author: Kino
Date: Nov 17, 2017 (18:41:55 UTC)

generic_image all the way (#921) * generic_image all the way tried to hunt down and correct the functions that were using a non-generic_image approach to dlib’s generic images. * generic image fix fix Had to change a couple of const_image_view to non-const versions so array access is possible in the rest of the code * same same * back to sanity

Modified
dlib/gui_widgets/base_widgets.h
dlib/gui_widgets/canvas_drawing.h

Revision: bc5b7f8157b4db2c
Author: Amin Cheloh
Date: Nov 17, 2017 (25:38:48 UTC)

Update dnn_mmod_find_cars2_ex.cpp (#966)

Modified
examples/dnn_mmod_find_cars2_ex.cpp

Revision: 4520ef38452cdfef
Author: Davis King
Date: Nov 16, 2017 (16:45:43 UTC)

Work around visual studio's lack of C++11 support.

Modified
dlib/global_optimization/find_global_maximum.h

Revision: e3376d54a97a613b
Author: Davis King
Date: Nov 15, 2017 (04:24:50 UTC)

Removed unneeded assert

Modified
dlib/global_optimization/global_function_search.cpp

Revision: 3745fccf08fd71e1
Author: Davis King
Date: Nov 15, 2017 (02:10:50 UTC)

Changed network filename to something more descriptive.

Modified
examples/dnn_semantic_segmentation_ex.cpp
examples/dnn_semantic_segmentation_ex.h
examples/dnn_semantic_segmentation_train_ex.cpp

Revision: 90a9d9bda445c006
Author: Davis King
Date: Nov 15, 2017 (02:06:33 UTC)

Minor tweaks to spec

Modified
dlib/image_transforms/interpolation_abstract.h

Revision: 529ad0fe8c57ddd6
Author: Juha Reunanen
Date: Nov 15, 2017 (16:01:52 UTC)

Add semantic segmentation example (#943) * Add example of semantic segmentation using the PASCAL VOC2012 dataset * Add note about Debug Information Format when using MSVC * Make the upsampling layers residual as well * Fix declaration order * Use a wider net * trainer.set_iterations_without_progress_threshold(5000); // (was 20000) * Add residual_up * Process entire directories of images (just easier to use) * Simplify network structure so that builds finish even on Visual Studio (faster, or at all) * Remove the training example from CMakeLists, because it's too much for the 32-bit MSVC++ compiler to handle * Remove the probably-now-unnecessary set_dnn_prefer_smallest_algorithms call * Review fix: remove the batch normalization layer from right before the loss * Review fix: point out that only the Visual C++ compiler has problems. Also expand the instructions how to run MSBuild.exe to circumvent the problems. * Review fix: use dlib::match_endings * Review fix: use dlib::join_rows. Also add some comments, and instructions where to download the pre-trained net from. * Review fix: make formatting comply with dlib style conventions. * Review fix: output training parameters. * Review fix: remove #ifndef __INTELLISENSE__ * Review fix: use std::string instead of char* * Review fix: update interpolation_abstract.h to say that extract_image_chips can now take the interpolation method as a parameter * Fix whitespace formatting * Add more comments * Fix finding image files for inference * Resize inference test output to the size of the input; add clarifying remarks * Resize net output even in calculate_accuracy * After all crop the net output instead of resizing it by interpolation * For clarity, add an empty line in the console output

Modified
dlib/image_transforms/interpolation.h
dlib/image_transforms/interpolation_abstract.h
examples/CMakeLists.txt
Added
examples/dnn_semantic_segmentation_ex.cpp
examples/dnn_semantic_segmentation_ex.h
examples/dnn_semantic_segmentation_train_ex.cpp

Revision: 7a224fc4691efc6f
Author: Sebastian Höffner
Date: Nov 14, 2017 (22:24:39 UTC)

Adding missing implementation of tabbed_display::selected_tab (#957)

Modified
dlib/gui_widgets/widgets.cpp
dlib/gui_widgets/widgets.h

Revision: acde092fa979ba10
Author: Davis King
Date: Nov 14, 2017 (01:17:28 UTC)

merged

Modified
dlib/CMakeLists.txt
dlib/cmake_utils/cmake_find_blas.txt
dlib/config.h.in
dlib/matrix/lapack/fortran_id.h

Revision: 2d32d19bd7ac7024
Author: Sean Warren
Date: Nov 14, 2017 (32:57:00 UTC)

Determine lapack fortran linking convention in CMake (#934) * Determine lapack fortran linking convention in CMake Looks for lapack function with and without trailing underscore - allows use of CLAPACK on windows where functions are decorated but fortran_id.h otherwise assumes they are not * Use enable_preprocessor_switch for LAPACK decoration detection * Add lapack decoration defines to config.h.in * Use correct variable for lapack_libraries

Modified
dlib/CMakeLists.txt
dlib/cmake_utils/cmake_find_blas.txt
dlib/config.h.in
dlib/matrix/lapack/fortran_id.h

Revision: 000b01cb844fcf11
Author: Davis King
Date: Nov 13, 2017 (17:41:07 UTC)

Added tools for doing global optimization. The main new tools here are find_global_maximum() and global_function_search.

Modified
dlib/CMakeLists.txt
dlib/all/source.cpp
dlib/global_optimization.h
Added
dlib/global_optimization/find_global_maximum.h
dlib/global_optimization/global_function_search.cpp
dlib/global_optimization/global_function_search.h

Revision: d804080cfbd4f055
Author: Davis King
Date: Nov 13, 2017 (17:38:38 UTC)

Made bigint use explicit relational operator functions rather than the overly general templates in dlib::relational_operators. I did this because the templates in dlib::relational_operators sometimes cause clashes with other code in irritating ways.

Modified
dlib/bigint/bigint_kernel_1.h
dlib/bigint/bigint_kernel_2.h
dlib/bigint/bigint_kernel_abstract.h
dlib/bigint/bigint_kernel_c.h

Revision: 401ebab9989a1911
Author: Davis King
Date: Nov 13, 2017 (00:56:57 UTC)

Added missing #include

Modified
dlib/svm/svm_c_linear_dcd_trainer.h

Revision: d76fe4993d93f60f
Author: Davis King
Date: Nov 12, 2017 (10:16:25 UTC)

Added solve_trust_region_subproblem_bounded()

Modified
dlib/optimization/optimization_trust_region.h
dlib/optimization/optimization_trust_region_abstract.h
dlib/test/optimization.cpp

Revision: 29e547c001fcfd09
Author: Davis King
Date: Nov 12, 2017 (09:18:34 UTC)

Added upper_bound_function object.

Modified
dlib/test/CMakeLists.txt
Added
dlib/global_optimization.h
dlib/global_optimization/upper_bound_function.h
dlib/global_optimization/upper_bound_function_abstract.h
dlib/test/global_optimization.cpp

Revision: 433312b1d9357e8a
Author: Davis King
Date: Nov 12, 2017 (02:14:48 UTC)

Reduce parallelism in build to avoid travis running out of RAM.

Modified
dlib/travis/build-and-test.sh

Revision: b5743c2df812daa6
Author: Davis King
Date: Nov 11, 2017 (03:42:16 UTC)

Fixed deserialize()

Modified
dlib/dnn/loss.h

Revision: 33608ad54a5bb598
Author: Davis King
Date: Nov 11, 2017 (03:37:29 UTC)

merged

Modified
dlib/dnn/loss.h
dlib/dnn/loss_abstract.h
dlib/matrix/matrix_op.h

Revision: 0a45b02fc198563b
Author: Juha Reunanen
Date: Nov 11, 2017 (17:37:00 UTC)

Add support for non-scale-invariant MMOD (#809) * Add capability to train scale-variant MMOD models * Review fixes: change bool scale_invariant to strongly typed enum, etc * Add serialization and deserialization of assumed_input_layer_type * Fix code formatting * Rename things as per review feedback * Review fix: move enum use_image_pyramid outside mmod_options * Continue execution with net, if deserialization of shape predictor fails * Revert "Continue execution with net, if deserialization of shape predictor fails" This reverts commit 8ea4482c043b5b98b97ed5b78bfc6916a1e2a453.

Modified
dlib/dnn/loss.h
dlib/dnn/loss_abstract.h

Revision: 8a0e025e1b29dd7a
Author: Pierre Fenoll
Date: Nov 11, 2017 (15:21:55 UTC)

pedantic: fix "extra `;`" warnings when compiling with -Wpedantic (#906)

Modified
dlib/matrix/matrix_op.h

Revision: ac98a4faa14f7718
Author: Davis King
Date: Nov 10, 2017 (13:11:08 UTC)

merged

Modified
dlib/cmake_utils/dlibConfig.cmake.in
dlib/test/dnn.cpp
tools/python/src/decision_functions.cpp
tools/python/src/testing_results.h

Revision: b2720f8536b180f8
Author: Davis King
Date: Nov 10, 2017 (12:42:40 UTC)

Updated code to work with new regression test output.

Modified
tools/python/src/decision_functions.cpp
tools/python/src/testing_results.h

Revision: 21b164c92e18ddc3
Author: Sean Warren
Date: Nov 09, 2017 (32:36:20 UTC)

Remove explicit specification of library path in dlibConfig.cmake (#935) * Remove explicit specification of library path in dlib.cmake Enables side-by-side multi configuration build on windows * Add dlib_LIBS For backwards compatability

Modified
dlib/cmake_utils/dlibConfig.cmake.in

Revision: 70e18693527ac105
Author: OtacilioNeto
Date: Nov 07, 2017 (13:27:54 UTC)

Fix issue https://github.com/davisking/dlib/issues/925 (#928) * This fix suggested by davisking make unit tests more reliable. Fix issue https://github.com/davisking/dlib/issues/925 * This fix suggested by davisking make unit tests more reliable. Fix issue https://github.com/davisking/dlib/issues/925

Modified
dlib/test/dnn.cpp

Revision: 403d8c86c47fd6a4
Author: Davis King
Date: Nov 10, 2017 (13:10:51 UTC)

Added loss_epsilon_insensitive_ layer

Modified
dlib/dnn/loss.h
dlib/dnn/loss_abstract.h
dlib/test/dnn.cpp

Revision: 10e00477fa63e058
Author: Davis King
Date: Nov 10, 2017 (11:56:37 UTC)

Changed test_regression_function() and cross_validate_regression_trainer() to output 2 more statistics, which are the mean absolute error and the standard deviation of the absolute error. This means these functions now return 4D rather than 2D vectors. I also made test_regression_function() take a non-const reference to the regression function so that DNN objects can be tested.

Modified
dlib/svm/cross_validate_regression_trainer.h
dlib/svm/cross_validate_regression_trainer_abstract.h
dlib/test/svm.cpp

Revision: 46bc892f13f4af2b
Author: Davis King
Date: Nov 10, 2017 (11:52:20 UTC)

Fixed compiler warning

Modified
dlib/image_transforms/random_cropper.h

Revision: 642123a7196c9a3d
Author: Davis King
Date: Nov 05, 2017 (05:36:48 UTC)

Made unit tests more reliable

Modified
dlib/test/dnn.cpp

Revision: 42baaa1336a719f0
Author: Davis King
Date: Nov 05, 2017 (03:13:26 UTC)

Changed the mean squared loss layers to return a loss that's the MSE, not 0.5*MSE. The only thing this effects is the logging messages that print during training, which were confusing since the reported loss was half the size you would expect.

Modified
dlib/dnn/loss.h

Revision: fdae9df8388b9142
Author: Davis King
Date: Nov 05, 2017 (02:57:34 UTC)

Added notes about not using visual studio 2017 since it doesn't support C++11.

Modified
dlib/cmake_utils/add_python_module

Revision: 39d0d0b1d246ada2
Author: Davis King
Date: Nov 05, 2017 (02:37:52 UTC)

Don't use CUDA/DNN stuff in Visual Studio 2017.

Modified
dlib/cmake_utils/set_compiler_specific_options.cmake

Revision: acdd9b3689390da2
Author: Davis King
Date: Nov 05, 2017 (02:37:29 UTC)

Fixed grammar in comment

Modified
examples/CMakeLists.txt

Revision: fbc0668caaa254af
Author: Gilles Rochefort
Date: Nov 04, 2017 (03:40:25 UTC)

Remove unused variable (#919)

Modified
dlib/gui_widgets/widgets.cpp

Revision: efc2148c344b67b6
Author: Davis King
Date: Nov 02, 2017 (06:24:25 UTC)

Fixed timing print() so the output scales are set correctly.

Modified
dlib/timing.h

Revision: 9a22b9508a392b92
Author: Davis King
Date: Nov 02, 2017 (01:43:15 UTC)

Updated comments to reflect recent API changes.

Modified
examples/dnn_mmod_dog_hipsterizer.cpp
examples/dnn_mmod_face_detection_ex.cpp

Revision: 64fec2dc9fd89914
Author: Davis King
Date: Nov 01, 2017 (12:30:42 UTC)

Changed the timing code to use the C++11 high resolution clock and atomics. This makes the timing code a lot more precise.

Modified
dlib/timing.h

Revision: 884b61e889c177f8
Author: Davis King
Date: Nov 01, 2017 (12:25:32 UTC)

Fixed error in TIME_THIS(). It was still printing in seconds when it said minutes in the output.

Modified
dlib/time_this.h

Revision: 7b92a9a00a49dbb7
Author: Davis King
Date: Oct 31, 2017 (13:01:47 UTC)

Upgraded the input layer so you can give input<std::array<matrix<T>,K>> types as input layer specifications. This will create input tensors with K channels.

Modified
dlib/dnn/input.h
dlib/dnn/input_abstract.h

Revision: 6f4d3e69a48e2101
Author: Davis King
Date: Oct 29, 2017 (04:57:52 UTC)

Made hamming_distance() a little more general.

Modified
dlib/general_hash/count_bits.h

Revision: 22cdf079eacf608f
Author: Davis King
Date: Oct 28, 2017 (16:44:43 UTC)

Made resizable_tensor objects not perform a reallocation if they are resized to be smaller. Instead, they now behave like std::vector in that they just change their nominal size but keep the same memory, only reallocating if they are resized to something larger than their underlying memory block. This change makes some uses of dlib faster, in particular, running networks on a large set of images of differing sizes will now run faster since there won't be any GPU reallocations, which are notoriously slow.

Modified
dlib/dnn/tensor.h
dlib/dnn/tensor_abstract.h

Revision: 13d6a64237b61d6c
Author: Davis King
Date: Oct 28, 2017 (16:35:59 UTC)

Suppress compiler warning

Modified
dlib/dnn/layers.h

Revision: b57f4c4dcc045d2d
Author: Davis King
Date: Oct 28, 2017 (16:35:25 UTC)

Always compile the C++11 related unit tests.

Modified
dlib/test/CMakeLists.txt

Revision: 25be87f5d99131d1
Author: Davis King
Date: Oct 28, 2017 (14:45:48 UTC)

Added set_num_outputs() to fc_ layer.

Modified
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h

Revision: 1c2bc68743e1bf3d
Author: Davis King
Date: Oct 28, 2017 (08:25:32 UTC)

Improved loss_mmod_ warning message.

Modified
dlib/dnn/loss.h

Revision: 7b52f75e2b6d18a4
Author: Davis King
Date: Oct 28, 2017 (08:23:47 UTC)

Made requires clause a little more sensible.

Modified
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h

Revision: 4426725482f44a1a
Author: Davis King
Date: Oct 28, 2017 (06:48:54 UTC)

Fixed a bug in dlib's MS Windows GUI code that was introduced a little while back when we switched everything to std::shared_ptr. Turns out std::shared_ptr has some surprising limitations. This change fixes a bug where the program crashes or hangs sometimes during program shutdown.

Modified
dlib/gui_core/gui_core_kernel_1.cpp
dlib/gui_core/gui_core_kernel_1.h

Revision: 7ed3b7f4b8689cc3
Author: Davis King
Date: Oct 28, 2017 (04:50:42 UTC)

Fixed sqlite include path finding.

Modified
dlib/CMakeLists.txt

Revision: 4ff1888a8eae7073
Author: Davis King
Date: Oct 28, 2017 (-04:06:42 UTC)

Don't ever try to use the busted version of libjpeg in anaconda.

Modified
dlib/CMakeLists.txt

Revision: 77f940ee5761f271
Author: Davis King
Date: Oct 27, 2017 (19:42:40 UTC)

Make cmake output less confusing

Modified
dlib/cmake_utils/cmake_find_blas.txt

Revision: 1cc61b3ff9ec7f6b
Author: Davis King
Date: Oct 27, 2017 (19:39:04 UTC)

Clarified build instructions

Modified
dlib/cmake_utils/add_python_module

Revision: 87ee21307afdeb32
Author: Davis King
Date: Oct 27, 2017 (15:30:58 UTC)

Changed graph construction for chinese_whispers() so that each face is always included in the edge graph. If it isn't then the output labels from chinese_whispers would be missing faces in this degenerate case. So basically this fixes a bug where chinese_whispers(), when called from python, would sometimes return a labels array that doesn't include labels for all the inputs.

Modified
tools/python/src/face_recognition.cpp

Revision: ee1ce5738cc9de54
Author: Davis King
Date: Oct 27, 2017 (15:29:52 UTC)

Changed graph construction for chinese_whispers() so that each face is always included in the edge graph. If it isn't then the output labels from chinese_whispers would be missing faces in this degenerate case.

Modified
examples/dnn_face_recognition_ex.cpp

Revision: 7b16aaaf91276334
Author: Davis King
Date: Oct 27, 2017 (03:27:57 UTC)

Made random_cropper use cleaner and unbiased dlib::rand interface.

Modified
dlib/image_transforms/random_cropper.h

Revision: 9de7bcf981a9f1c4
Author: Davis King
Date: Oct 27, 2017 (01:58:34 UTC)

Cleanup

Modified
dlib/cmake_utils/cmake_find_blas.txt

Revision: e1a474dbb93c1b0e
Author: Davis King
Date: Oct 27, 2017 (01:50:15 UTC)

Removed old cruft not needed anymore since we are doing this kind of thing with cmake targets already in set_compiler_specific_options.cmake.

Modified
dlib/cmake_utils/cmake_find_blas.txt

Revision: 7f132fb15a20d933
Author: Sean Warren
Date: Oct 27, 2017 (31:45:53 UTC)

Win lapack (#913) * Fall back on find_package for blas, lapack on Windows * Remove debugging message

Modified
dlib/cmake_utils/cmake_find_blas.txt

Revision: 32fa776b8f8593e3
Author: Davis King
Date: Oct 25, 2017 (01:42:31 UTC)

Updated python code to use the new dlib::jitter_image() instead of hacking it out of the random_cropper.

Modified
tools/python/src/face_recognition.cpp

Revision: 14329e4dc3c8d816
Author: Davis King
Date: Oct 24, 2017 (18:10:02 UTC)

Changed the random_cropper's set_min_object_size() routine to take min box dimensions in the same format as the mmod_options object (i.e. two lengths measured in pixels). This should make defining random_cropping strategies that are consistent with MMOD settings much more straightforward since you can just take the mmod_options settings and give them to the random_cropper and it will do the right thing.

Modified
dlib/image_transforms/random_cropper.h
dlib/image_transforms/random_cropper_abstract.h
examples/dnn_mmod_ex.cpp
examples/dnn_mmod_train_find_cars_ex.cpp
examples/random_cropper_ex.cpp

Revision: c97caf6837a6039c
Author: Davis King
Date: Oct 24, 2017 (17:13:02 UTC)

Made the metric learning example do image jittering.

Modified
examples/dnn_face_recognition_ex.cpp
examples/dnn_metric_learning_on_images_ex.cpp

Revision: f800181d4ac7f2be
Author: Davis King
Date: Oct 24, 2017 (04:02:44 UTC)

Cleaned up jitter_image() code and moved it into dlib proper.

Modified
dlib/image_transforms/interpolation.h
dlib/image_transforms/interpolation_abstract.h
examples/dnn_face_recognition_ex.cpp

Revision: 0ab057582f342b35
Author: Sean Warren
Date: Oct 24, 2017 (23:00:49 UTC)

Use banded Cholesky factorization if possible (#857) * Use banded Cholesky factorization if possible Computation cost from n.n.n -> n.n.b where b is band size * Tidy up whitespace * Remove typo * Escape from banded matrix detection correctly * Use LAPACK banded Cholesky factorisation where possible * Add banded chol tests * Add test for banded chol in column major layout * Use row major layout for banded chol - more efficient as we will pass to LAPACK

Modified
dlib/matrix/matrix_la.h
dlib/test/matrix.cpp
Added
dlib/matrix/lapack/pbtrf.h

Revision: 328dc37c8ddee740
Author: Gilles Rochefort
Date: Oct 21, 2017 (18:16:36 UTC)

Add some operator() to cv_image for compatibility with mmod loss. (#900) * Add some operator() to cv_image for compatibility with mmod. * Update documentation

Modified
dlib/opencv/cv_image.h
dlib/opencv/cv_image_abstract.h

Revision: 60074c1d09eeae3d
Author: Davis King
Date: Oct 22, 2017 (12:06:11 UTC)

Make sure the test loss the trainer logs to the console never gets suck at infinity.

Modified
dlib/dnn/trainer.h

Revision: 6abb5e6d9db7c7ee
Author: Davis King
Date: Oct 20, 2017 (17:45:14 UTC)

Updated spec

Modified
dlib/dnn/layers_abstract.h

Revision: a6aa7dcce8c1a59a
Author: Gilles Rochefort
Date: Oct 21, 2017 (05:44:00 UTC)

Missing interfaces in add_prev for compatibility with mmod loss. (#901)

Modified
dlib/dnn/layers.h

Revision: a4cb99a0e7387575
Author: Davis King
Date: Oct 20, 2017 (17:37:54 UTC)

Sometimes the loss_mmod_ layer could experience excessively long runtime during early iterations since the model might produce a huge number of false alarms while the detector is still bad. Processing all these detections can cause it to run slowly until the model is good enough to avoid really excessive amounts of false alarms. This change puts more of a limit on the number of false alarms processed during those early iterations and avoids the slowdown.

Modified
dlib/dnn/loss.h

Revision: 057ffb4905097dc3
Author: Davis King
Date: Oct 20, 2017 (17:34:34 UTC)

The loss returned by compute_loss_value_and_gradient() wasn't quite right. It doesn't effect normal use, but it's still wrong and this change fixes it.

Modified
dlib/dnn/loss.h

Revision: 357d1e7a16728a17
Author: Davis King
Date: Oct 20, 2017 (12:54:49 UTC)

Added install_target_output_folder option to matlab cmake scripts.

Modified
dlib/matlab/CMakeLists.txt
dlib/matlab/cmake_mex_wrapper

Revision: 5ed5aae2ecddb978
Author: Davis King
Date: Oct 19, 2017 (16:57:24 UTC)

Fixed the terrible breaking change to the tensor object I made earlier today :(

Modified
dlib/dnn/gpu_data.cpp

Revision: 88387be877309652
Author: Davis King
Date: Oct 19, 2017 (08:09:29 UTC)

Improved cmake error messages about CUDA support.

Modified
dlib/CMakeLists.txt
dlib/cmake_utils/test_for_cudnn/find_cudnn.txt

Revision: 89be073b2c0b05a9
Author: Davis King
Date: Oct 19, 2017 (06:50:40 UTC)

Changed tensor so that, when reallocating memory, it frees any existing memory *before* allocating new memory. It used to be the other way around which caused momentary spikes of increased memory usage. This could put you over the total memory available in some cases which is obviously less than ideal behavior.

Modified
dlib/dnn/gpu_data.cpp

Revision: 41fd094e76fbf10b
Author: Davis King
Date: Oct 18, 2017 (06:17:46 UTC)

Fixed bug

Modified
python_examples/svm_binary_classifier.py

Revision: 8e56a6e868922dd4
Author: Davis King
Date: Oct 18, 2017 (03:36:31 UTC)

Added python binary classifier example

Added
python_examples/svm_binary_classifier.py

Revision: 8f8305a983a0b19f
Author: Davis King
Date: Oct 17, 2017 (15:20:29 UTC)

Fixed weird wording.

Modified
examples/CMakeLists.txt

Revision: e85d60737bb8b890
Author: Davis King
Date: Oct 17, 2017 (15:18:57 UTC)

Made comment more clear.

Modified
examples/CMakeLists.txt

Revision: 0f7d11f4b1d5aa28
Author: Juha Reunanen
Date: Oct 18, 2017 (05:12:38 UTC)

Add get_net parameter that allows to call the function without forcing flush to disk (#875) * Add get_net parameter allowing to call the function without forced flush to disk (see the discussion in #869) * A blindfolded attempt to fix compile error on the CI server

Modified
dlib/dnn/trainer.h
dlib/dnn/trainer_abstract.h

Revision: f68ab44974cf7948
Author: jpblackburn
Date: Oct 17, 2017 (15:11:16 UTC)

Allow cross_validate_trainer_threaded to use non-double data (#883)

Modified
dlib/svm/svm_threaded.h
dlib/svm/svm_threaded_abstract.h

Revision: 78502ee2818a0c55
Author: Davis King
Date: Oct 17, 2017 (15:02:31 UTC)

Made cmake print a very explicit error message if you try to use a version of gcc that is too old.

Modified
dlib/cmake_utils/set_compiler_specific_options.cmake

Revision: 363b3a9af2b16ccd
Author: Davis King
Date: Oct 17, 2017 (06:31:27 UTC)

Fixed path

Modified
dlib/java/cmake_swig_jni

Revision: ede782ed7a0e1063
Author: Davis King
Date: Oct 17, 2017 (06:24:23 UTC)

Yet more cmake cleanup

Modified
dlib/java/CMakeLists.txt
dlib/java/cmake_swig_jni

Revision: 3ee69a0b0c1e7635
Author: Davis King
Date: Oct 17, 2017 (06:02:30 UTC)

More cmake script cleanup

Modified
dlib/matlab/CMakeLists.txt
dlib/matlab/cmake_mex_wrapper

Revision: ee24815d4e80afb0
Author: Davis King
Date: Oct 17, 2017 (05:45:18 UTC)

Fix deprecation warning from new cmake

Modified
dlib/CMakeLists.txt

Revision: c8c3eda2450daee4
Author: Davis King
Date: Oct 16, 2017 (17:36:18 UTC)

More cmake cleanup

Modified
dlib/cmake_utils/add_python_module
dlib/test/CMakeLists.txt
dlib/test/gui/CMakeLists.txt
dlib/test/tools/CMakeLists.txt
tools/convert_dlib_nets_to_caffe/CMakeLists.txt
tools/htmlify/CMakeLists.txt
tools/imglab/CMakeLists.txt

Revision: b911418ea135e232
Author: Davis King
Date: Oct 16, 2017 (17:34:17 UTC)

suppress compiler warnings

Modified
dlib/dnn/layers.h

Revision: 295fe04c36ceb719
Author: Davis King
Date: Oct 16, 2017 (17:34:00 UTC)

Suppress compiler warnings

Modified
tools/convert_dlib_nets_to_caffe/main.cpp

Revision: 97616b17fb4a47d0
Author: Davis King
Date: Oct 16, 2017 (17:11:16 UTC)

CMake tweaks to avoid errors in visual studio

Modified
dlib/cmake_utils/set_compiler_specific_options.cmake
dlib/cmake_utils/use_cpp_11.cmake

Revision: 9dd27d3f71028967
Author: Davis King
Date: Oct 16, 2017 (16:55:28 UTC)

Some cmake script cleanup and refactoring.

Modified
CMakeLists.txt
dlib/CMakeLists.txt
dlib/cmake
dlib/cmake_utils/add_global_compiler_switch.cmake
dlib/cmake_utils/dlibConfig.cmake.in
dlib/cmake_utils/test_for_cudnn/CMakeLists.txt
dlib/cmake_utils/use_cpp_11.cmake
examples/CMakeLists.txt
Added
dlib/cmake_utils/set_compiler_specific_options.cmake

Revision: 8bb39ca0f3ce4890
Author: Davis King
Date: Oct 16, 2017 (16:55:07 UTC)

Removed cout statement.

Modified
dlib/test/rand.cpp

Revision: 7f61e0dc695f1b25
Author: Davis King
Date: Oct 16, 2017 (05:22:01 UTC)

Fixed compiler error due to #define nonsense in visual studio.

Modified
dlib/test/rand.cpp

Revision: 305132ba0defe138
Author: Davis King
Date: Oct 16, 2017 (02:49:03 UTC)

Prevent include path clashes from system installs of dlib as well as suppress warning messages from boost and python system header files.

Modified
dlib/cmake_utils/add_python_module

Revision: e365cd0ef50efe07
Author: Davis King
Date: Oct 14, 2017 (06:29:29 UTC)

Added warning messages when users use the old non-target based cmake variables.

Modified
dlib/cmake_utils/dlibConfig.cmake.in

Revision: dcb2417f7b3180a6
Author: Davis King
Date: Oct 10, 2017 (05:59:59 UTC)

merged

Modified
dlib/array/array_kernel.h
dlib/array/array_kernel_abstract.h
dlib/data_io/load_image_dataset.h
dlib/data_io/load_image_dataset_abstract.h
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h
dlib/image_transforms/interpolation.h
dlib/image_transforms/interpolation_abstract.h
docs/docs/faq.xml
docs/docs/howto_contribute.xml
docs/docs/stylesheet.xsl
python_examples/face_clustering.py
python_examples/requirements.txt
python_examples/train_object_detector.py
tools/python/src/face_recognition.cpp
Added
python_examples/face_alignment.py

Revision: d855484b4a1244fb
Author: Davis King
Date: Oct 10, 2017 (05:53:22 UTC)

Added assert to improve error messages.

Modified
dlib/dnn/layers.h

Revision: 7ceecf3981ed53dd
Author: Davis King
Date: Oct 10, 2017 (05:52:43 UTC)

Added get_integer() and get_integer_in_range() to dlib::rand.

Modified
dlib/rand/rand_kernel_1.h
dlib/rand/rand_kernel_abstract.h
dlib/test/rand.cpp

Revision: 95e28ba0bbe3e2b0
Author: Davis King
Date: Oct 15, 2017 (11:53:33 UTC)

I accidentally slightly changed the cropping behavior of get_face_chip_details() when used with the 68 point landmark model about a month ago. This change reverts it back to the previous behavior. The change was very minor, so it shouldn't matter either way. But being consistent is important and I'm changing it back.

Modified
dlib/image_transforms/interpolation.h

Revision: c86b9956408f3b98
Author: Davis King
Date: Oct 08, 2017 (03:49:50 UTC)

Made dlib::array able to push_back() from rvalues.

Modified
dlib/array/array_kernel.h
dlib/array/array_kernel_abstract.h

Revision: 8c35538741e4992a
Author: Davis King
Date: Oct 08, 2017 (03:45:50 UTC)

Fixed missing inline

Modified
dlib/data_io/load_image_dataset.h

Revision: 2a5c218298e3818a
Author: Davis King
Date: Oct 07, 2017 (10:09:09 UTC)

Made add_image_left_right_flips() and add_image_rotations() work with mmod_rects in addition to rectangles and full_object_detections.

Modified
dlib/image_transforms/interpolation.h
dlib/image_transforms/interpolation_abstract.h

Revision: 52175140c4893822
Author: Davis King
Date: Oct 07, 2017 (10:05:58 UTC)

Fixed load_image_dataset()'s skip_empty_images() option. It wasn't skipping images that only have ignore boxes when you load into mmod_rects like it should have been.

Modified
dlib/data_io/load_image_dataset.h
dlib/data_io/load_image_dataset_abstract.h

Revision: 78459d399805fbf0
Author: Hung-Wei Chiu
Date: Sep 29, 2017 (31:20:11 UTC)

Fix warning (#851) * remove unused variable * modify variable type from int to size_t * fix previous delete, we need to call chinese_whispers here but we don't need its result now

Modified
tools/python/src/face_recognition.cpp

Revision: 4709c04600d4fef2
Author: Juha Reunanen
Date: Sep 28, 2017 (15:48:17 UTC)

cont layer: allow to set the number of filters at runtime (#845) * cont layer: allow to set the number of filters at runtime (implementation essentially copied from con layer) * Document the new constructor cont_(num_con_outputs o), and the function set_num_filters

Modified
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h

Revision: 7a39aef0b82941ff
Author: Davis King
Date: Oct 01, 2017 (04:44:03 UTC)

Clarified docs

Modified
python_examples/train_object_detector.py

Revision: 592ac3782bf56bfe
Author: Davis King
Date: Sep 22, 2017 (17:52:15 UTC)

Clarified comment and updated requirements.txt

Modified
python_examples/face_alignment.py
python_examples/requirements.txt

Revision: 2a70697db1083d39
Author: Varun Chatterji
Date: Sep 19, 2017 (31:08:54 UTC)

Cleaned up example file.

Modified
python_examples/face_alignment.py

Revision: 085759181aa54b74
Author: Varun Chatterji
Date: Sep 19, 2017 (21:08:51 UTC)

Added code to get face_chip images..

Modified
tools/python/src/face_recognition.cpp
Added
python_examples/face_alignment.py

Revision: 18a411362346426a
Author: Varun Chatterji
Date: Sep 18, 2017 (27:54:26 UTC)

Added size and padding as optional parameters

Modified
python_examples/face_clustering.py
tools/python/src/face_recognition.cpp

Revision: a467d4803a8ffa95
Author: Davis King
Date: Sep 26, 2017 (07:49:29 UTC)

Made cmake error messages a little clearer

Modified
dlib/CMakeLists.txt

Revision: 40d617294a1414db
Author: Davis King
Date: Sep 20, 2017 (17:10:59 UTC)

Fixed a bug in how the mmod_options automatically determines detection window sizes. It would pick a bad size in some cases.

Modified
dlib/dnn/loss.h

Revision: 1bae38fc5e550b34
Author: Davis King
Date: Sep 19, 2017 (02:29:49 UTC)

Made unit test more robust

Modified
dlib/test/ranking.cpp

Revision: e58c8efa04f0e6e9
Author: Davis King
Date: Sep 15, 2017 (07:15:34 UTC)

Added loss_ranking_ layer

Modified
dlib/dnn/loss.h
dlib/dnn/loss_abstract.h
dlib/test/ranking.cpp

Revision: adcb5e3312af6896
Author: Davis King
Date: Sep 17, 2017 (11:16:41 UTC)

Fixed a bug in the random_cropper where it might crash due to division by 0 if small images are given as input.

Modified
dlib/image_transforms/random_cropper.h

Revision: 2049560d94e4b066
Author: Davis King
Date: Sep 17, 2017 (04:28:45 UTC)

Record last changeset and set PATCH version to 99

Modified
dlib/CMakeLists.txt
docs/.logger_revnum

Revision: fb51c77524ff13ca
Author: Davis King
Date: Sep 17, 2017 (04:28:29 UTC)

Created release v19.7

Modified
dlib/CMakeLists.txt

Revision: aed1a8b9d186f5c9
Author: Davis King
Date: Sep 16, 2017 (11:35:58 UTC)

Added another car finding example

Modified
examples/CMakeLists.txt
Added
examples/dnn_mmod_find_cars2_ex.cpp
examples/mmod_cars_test_image2.jpg

Revision: d93489448b0ede06
Author: Davis King
Date: Sep 16, 2017 (11:35:37 UTC)

Clarified comments

Modified
examples/dnn_mmod_find_cars_ex.cpp

Revision: 988dca9349614bf4
Author: Davis King
Date: Sep 16, 2017 (11:14:13 UTC)

Changed to slightly better default recommendations for parameters.

Modified
examples/dnn_mmod_train_find_cars_ex.cpp

Revision: 62a35e943f25a70a
Author: Davis King
Date: Sep 16, 2017 (10:53:11 UTC)

Cleaned up code and comments. In particular, these new functions don't need to be inside the face recognition class. So I moved them out. I also fixed many incorrect copy/pasted comments and clarified parts of the example code.

Modified
python_examples/face_clustering.py
tools/python/src/face_recognition.cpp

Revision: 0e328d6d28a0f5ac
Author: Davis King
Date: Sep 16, 2017 (10:18:44 UTC)

Merge branch 'master' of git://github.com/visionworkz/dlib into visionworkz-master

Modified
tools/python/src/face_recognition.cpp
Added
python_examples/face_clustering.py

Revision: 7705cfa080168233
Author: Varun
Date: Sep 10, 2017 (14:15:42 UTC)

Added threshold to clustering call

Modified
python_examples/face_clustering.py
tools/python/src/face_recognition.cpp

Revision: e2b2c26a9ad7dd6b
Author: Visionworkz
Date: Sep 06, 2017 (10:05:42 UTC)

Added face clustering example to Python API

Modified
tools/python/src/face_recognition.cpp
Added
python_examples/face_clustering.py

Revision: c93757104c52cf48
Author: Davis King
Date: Sep 16, 2017 (10:10:09 UTC)

More cleanup

Modified
examples/dnn_mmod_find_cars_ex.cpp

Revision: c2dd895431ecdfed
Author: Davis King
Date: Sep 16, 2017 (10:08:41 UTC)

Made deserialize print more informative error messages.

Modified
dlib/serialize.h

Revision: 0509f7c6759cc037
Author: Davis King
Date: Sep 16, 2017 (10:01:34 UTC)

clarified error message

Modified
examples/dnn_mmod_find_cars_ex.cpp

Revision: 3eab2ad1b63b506a
Author: Davis King
Date: Sep 15, 2017 (18:16:00 UTC)

Updated comments.

Modified
examples/dnn_mmod_find_cars_ex.cpp

Revision: 37f365030968b2a0
Author: Davis King
Date: Sep 15, 2017 (17:58:03 UTC)

Changed TIME_THIS() to use std::chrono::high_resolution_clock

Modified
dlib/time_this.h

Revision: dfcdd26b2a383717
Author: Davis E. King
Date: Sep 15, 2017 (17:02:39 UTC)

Fixed typo in comment

Modified
tools/archive/train_face_5point_model.cpp

Revision: 43e14aaac348d910
Author: Davis King
Date: Sep 15, 2017 (16:20:08 UTC)

Added this program for historical reference.

Added
tools/archive/train_face_5point_model.cpp

Revision: e4016dc32c3f5c84
Author: Davis King
Date: Sep 15, 2017 (15:58:27 UTC)

Changed code to recommend users use the new 5 point face landmarking model.

Modified
examples/dnn_face_recognition_ex.cpp

Revision: ca41be63f31b314b
Author: Davis King
Date: Sep 15, 2017 (15:57:54 UTC)

Changed code to recommend users to use the new 5 point face landmarking model.

Modified
python_examples/face_recognition.py

Revision: bf9296155038b18c
Author: Davis King
Date: Sep 15, 2017 (15:57:33 UTC)

Fixed grammar

Modified
python_examples/face_landmark_detection.py

Revision: f1079b26839be76c
Author: Davis King
Date: Sep 15, 2017 (15:57:16 UTC)

Fixed grammar

Modified
examples/face_landmark_detection_ex.cpp

Revision: 14b8df13567d67de
Author: Davis King
Date: Sep 15, 2017 (15:56:38 UTC)

Upgraded face recognition input validation checks to allow use of 5 point face landmarking models.

Modified
tools/python/src/face_recognition.cpp

Revision: 8541cf9bd0d46f0a
Author: Davis King
Date: Sep 15, 2017 (15:55:47 UTC)

Upgraded render_face_detections() and get_face_chip_details() to support 5 point face landmark models.

Modified
dlib/image_processing/render_face_detections.h
dlib/image_processing/render_face_detections_abstract.h
dlib/image_transforms/interpolation.h
dlib/image_transforms/interpolation_abstract.h

Revision: 0ca1586040b2909a
Author: Davis King
Date: Sep 15, 2017 (15:54:22 UTC)

Added more options to control how the feature pool region is defined.

Modified
dlib/image_processing/shape_predictor_trainer.h
dlib/image_processing/shape_predictor_trainer_abstract.h

Revision: be713573b395e0c3
Author: Juha Reunanen
Date: Sep 10, 2017 (20:53:03 UTC)

MMOD: fix loss from ignored rects when using loss_per_missed_target != 1 (#813)

Modified
dlib/dnn/loss.h

Revision: 243b41595c739d5b
Author: Davis King
Date: Sep 10, 2017 (18:23:31 UTC)

fix awkward grammar

Modified
python_examples/face_landmark_detection.py

Revision: 42dcc4744452cb17
Author: Davis King
Date: Sep 10, 2017 (18:22:55 UTC)

Improved citations

Modified
examples/face_landmark_detection_ex.cpp

Revision: 77bedc2fc69285c9
Author: Davis King
Date: Sep 10, 2017 (18:16:54 UTC)

Improved citations

Modified
python_examples/face_landmark_detection.py

Revision: 37f15aecb23bdffa
Author: Davis King
Date: Sep 09, 2017 (05:23:24 UTC)

Made object part annotations shown on the image_display scale relative to the size of their bounding box.

Modified
dlib/gui_widgets/widgets.cpp
dlib/gui_widgets/widgets.h

Revision: a4350b58d7264cf8
Author: Davis King
Date: Sep 07, 2017 (15:11:18 UTC)

removed extraneous print statement.

Modified
tools/imglab/src/metadata_editor.h

Revision: 1d82ed6943226267
Author: Davis King
Date: Sep 06, 2017 (06:33:53 UTC)

Fix compiler error in visual studio.

Modified
dlib/all/source.cpp

Revision: 994afb470a3b377c
Author: Davis King
Date: Sep 06, 2017 (03:55:27 UTC)

Made input_rgb_image_pyramid use the GPU if available. So it's now a lot faster. The CPU path is also a lot faster as well.

Modified
dlib/dnn/input.h

Revision: df99bfe72a9de228
Author: Davis King
Date: Sep 06, 2017 (03:53:49 UTC)

Made cpu version of tt::resize_bilinear() use SIMD instructions and multiple CPU cores.

Modified
dlib/dnn/cpu_dlib.cpp

Revision: 08d6988c3c2da55c
Author: Davis King
Date: Sep 05, 2017 (18:06:07 UTC)

Added overloads of sub_image() that take raw pointers so you can make sub_images of anything. Also made the resize_image() functions a little more flexible and compatible with the other image interpolation code in dlib.

Modified
dlib/image_transforms/interpolation.h
dlib/image_transforms/interpolation_abstract.h

Revision: a38192fb4d40fdae
Author: Davis King
Date: Sep 05, 2017 (02:16:32 UTC)

Clarified spec

Modified
dlib/dnn/input_abstract.h

Revision: a823d87d985a2c3b
Author: Davis King
Date: Sep 04, 2017 (17:56:24 UTC)

Refactored create_tiled_pyramid() code to remove unnecessary copying. It's now about 2x faster. The code is cleaner too.

Modified
dlib/image_transforms/image_pyramid.h

Revision: 2ef8462541e4e02a
Author: Davis King
Date: Sep 04, 2017 (12:27:56 UTC)

Added find_pyramid_down_output_image_size()

Modified
dlib/image_transforms/image_pyramid.h
dlib/image_transforms/image_pyramid_abstract.h
dlib/test/pyramid_down.cpp

Revision: 6cb2a84b80e54814
Author: Davis King
Date: Sep 04, 2017 (11:42:34 UTC)

Upgraded resize_bilinear() to let the user specify independent row and channel stride values. This lets you run the tensor resizing routine on subwindows in a tensor.

Modified
dlib/dnn/cpu_dlib.cpp
dlib/dnn/cpu_dlib.h
dlib/dnn/cuda_dlib.cu
dlib/dnn/cuda_dlib.h
dlib/dnn/tensor_tools.cpp
dlib/dnn/tensor_tools.h
dlib/test/dnn.cpp

Revision: cfdec3e5b2f4492a
Author: Davis King
Date: Sep 03, 2017 (13:16:56 UTC)

mmod_options would pick bad window sizes in some corner cases. This has been fixed.

Modified
dlib/dnn/loss.h

Revision: c1ca3294c075399f
Author: Davis King
Date: Sep 03, 2017 (08:54:18 UTC)

Made it so you can press END or i to ignore boxes in imglab. I did this because it's a much less stressing hand motion to hit END that i in most cases.

Modified
dlib/gui_widgets/widgets.cpp
tools/imglab/src/metadata_editor.cpp

Revision: 451c2eff311480d5
Author: Davis King
Date: Sep 03, 2017 (08:15:36 UTC)

Fixed a bug in test_object_detection_function() which was just introduced. The problem was that it wasn't counting detection boxes as false alarms if the detection boxes had labels that never appeared in the truth dataset.

Modified
dlib/dnn/validation.h

Revision: 46c791a5f044eb35
Author: Davis King
Date: Sep 02, 2017 (18:07:07 UTC)

Added a label field to mmod_rect and updated code that uses this object to use the label in the way you would expect. In particular, loss_mmod_ is now a multi-class loss and therefore capable of learning a detector that can output detections with different labels.

Modified
dlib/data_io/load_image_dataset.h
dlib/data_io/load_image_dataset_abstract.h
dlib/dnn/loss.h
dlib/dnn/loss_abstract.h
dlib/dnn/validation.h
dlib/image_processing/full_object_detection.h
dlib/image_processing/full_object_detection_abstract.h
dlib/svm/cross_validate_object_detection_trainer_abstract.h

Revision: 4cffcea4f44a390e
Author: Davis King
Date: Sep 02, 2017 (04:42:36 UTC)

Added box_percent_covered()

Modified
dlib/image_processing/box_overlap_testing.h
dlib/image_processing/box_overlap_testing_abstract.h

Revision: c0f217507cef032a
Author: Davis King
Date: Sep 01, 2017 (13:38:41 UTC)

Made the box colors in imglab spread more evenly over the color space.

Modified
tools/imglab/src/main.cpp
tools/imglab/src/metadata_editor.cpp
tools/imglab/src/metadata_editor.h

Revision: 1a5f57880d3702b5
Author: Davis King
Date: Sep 01, 2017 (13:35:32 UTC)

Updated spec

Modified
dlib/gui_widgets/widgets_abstract.h

Revision: bbbb24ccfeb974fc
Author: Davis King
Date: Sep 01, 2017 (12:47:27 UTC)

Made it so crossed out overlay boxes are drawn slightly faded.

Modified
dlib/gui_widgets/widgets.cpp

Revision: b5ac155c9e5762fa
Author: Davis King
Date: Aug 31, 2017 (05:27:04 UTC)

Fixed a bug in the extract layer that trigged when a tensor with a different number of samples than the tensor used to initialize the network was passed through the layer.

Modified
dlib/dnn/layers.h

Revision: 72273be313a255de
Author: Davis King
Date: Aug 31, 2017 (05:25:27 UTC)

Clarified spec

Modified
dlib/dnn/layers_abstract.h

Revision: 01af6b94cb42556b
Author: Davis King
Date: Aug 31, 2017 (05:25:07 UTC)

Improved error message.

Modified
dlib/dnn/tensor.h

Revision: 40ff96c51fb40e71
Author: Davis King
Date: Aug 31, 2017 (03:21:07 UTC)

Fixed error in input_rgb_image_pyramid::image_contained_point(). The function didn't properly account for the new padding on the edge of the pyramid and might erroneously indicate that a point wasn't inside the original image when really it was.

Modified
dlib/dnn/input.h

Revision: c505ae19ca6d3e34
Author: Davis King
Date: Aug 28, 2017 (14:18:45 UTC)

Record last changeset and set PATCH version to 99

Modified
dlib/CMakeLists.txt
docs/.logger_revnum

Revision: 3eaa0e35b1b4b912
Author: Davis King
Date: Aug 28, 2017 (14:17:46 UTC)

Created release v19.6

Modified
dlib/CMakeLists.txt

Revision: c17b548be6c25d08
Author: Evgeniy Fominov
Date: Aug 28, 2017 (18:00:17 UTC)

fix static runtime in cuda with clang and windows (#773)

Modified
dlib/CMakeLists.txt
dlib/cmake_utils/use_cpp_11.cmake

Revision: 22ef457199658ec8
Author: Davis King
Date: Aug 27, 2017 (15:35:22 UTC)

Record last changeset and set PATCH version to 99

Modified
dlib/CMakeLists.txt
docs/.logger_revnum

Revision: 9121e039950df935
Author: Davis King
Date: Aug 27, 2017 (15:34:24 UTC)

Created release v19.5

Modified
dlib/CMakeLists.txt

Revision: b2cc8f1da3f778d7
Author: Davis King
Date: Aug 27, 2017 (15:13:46 UTC)

Set this file to executable

Modified
python_examples/cnn_face_detector.py

Revision: 96e8daf12f37b8eb
Author: Guillaume Ramé
Date: Aug 27, 2017 (24:40:31 UTC)

improvements to cnn face detection python interface (#780) * improvements to cnn face detection interface * mmod rectangle object renaming. possibility to set batch size in multi image detection. Added check to make sure images are all the same size.

Modified
dlib/image_processing/full_object_detection.h
python_examples/cnn_face_detector.py
tools/python/src/cnn_face_detector.cpp

Revision: e7708c5dd4bc4d29
Author: Davis King
Date: Aug 27, 2017 (14:18:00 UTC)

Minor cleanup

Modified
examples/dnn_mmod_find_cars_ex.cpp

Revision: c7d818690882a448
Author: Davis King
Date: Aug 27, 2017 (08:01:24 UTC)

Yet more comments

Modified
examples/dnn_mmod_ex.cpp
examples/dnn_mmod_train_find_cars_ex.cpp

Revision: a245be12cb44c533
Author: Davis King
Date: Aug 27, 2017 (06:46:49 UTC)

cleanup

Modified
examples/dnn_mmod_find_cars_ex.cpp

Revision: 00deb336c1cb6422
Author: Davis King
Date: Aug 27, 2017 (05:23:57 UTC)

Fixed compiler warning

Modified
examples/dnn_mmod_find_cars_ex.cpp

Revision: df39ce20e7971294
Author: Davis King
Date: Aug 27, 2017 (05:23:49 UTC)

Fixed compiler warnings

Modified
dlib/image_transforms/image_pyramid.h
dlib/image_transforms/interpolation.h

Revision: 5e2a0b81bafb45f2
Author: Davis King
Date: Aug 27, 2017 (05:17:05 UTC)

Added youtube links

Modified
examples/dnn_mmod_find_cars_ex.cpp

Revision: 3a9d5d4742ad6ad8
Author: Davis King
Date: Aug 27, 2017 (05:11:49 UTC)

More comments

Modified
examples/dnn_mmod_find_cars_ex.cpp
examples/dnn_mmod_train_find_cars_ex.cpp

Revision: bcf2eccb2563b3d9
Author: Davis King
Date: Aug 27, 2017 (04:29:36 UTC)

Added more comments

Modified
examples/dnn_mmod_train_find_cars_ex.cpp

Revision: 3db195f39ddebe05
Author: Davis King
Date: Aug 27, 2017 (03:31:50 UTC)

Cleanup

Modified
examples/dnn_mmod_train_find_cars_ex.cpp

Revision: 36f354fb6bba6236
Author: Davis King
Date: Aug 27, 2017 (03:31:38 UTC)

Gave upsample_image_dataset() an option to limit upsampling on really large images.

Modified
dlib/image_transforms/interpolation.h
dlib/image_transforms/interpolation_abstract.h

Revision: ff289ff45018c550
Author: Davis King
Date: Aug 26, 2017 (13:13:47 UTC)

Added two vehicle detection examples.

Modified
examples/CMakeLists.txt
Added
examples/dnn_mmod_find_cars_ex.cpp
examples/dnn_mmod_train_find_cars_ex.cpp
examples/mmod_cars_test_image.jpg

Revision: 9bc47990f9eea691
Author: Davis King
Date: Aug 26, 2017 (04:49:19 UTC)

Added a version of resize_image() that works inplace.

Modified
dlib/image_transforms/interpolation.h
dlib/image_transforms/interpolation_abstract.h

Revision: 01340662b0e82203
Author: Davis King
Date: Aug 26, 2017 (04:39:18 UTC)

Added overloads of max_pointwise() and min_pointwise() that take 3 arguments.

Modified
dlib/matrix/matrix_utilities.h
dlib/matrix/matrix_utilities_abstract.h

Revision: f723ce2ef3c754bc
Author: Davis King
Date: Aug 25, 2017 (18:29:40 UTC)

Made imglab --cluster ignore ignored boxes when doing all aspects of clustering.

Modified
tools/imglab/src/cluster.cpp

Revision: 1f57c3504835dfba
Author: Davis King
Date: Aug 25, 2017 (18:01:02 UTC)

Added options to input_rgb_image_pyramid that let the user set create_tiled_pyramid()'s padding parameters. Also changed the default outer border padding from 0 to 11. This effects even previously trained models. So any model that doesn't explicitly set the outer patting to something else will have a padding of 11. This should be a more reasonable value for most networks.

Modified
dlib/dnn/input.h
dlib/dnn/input_abstract.h

Revision: 6a9b82d06a3afec8
Author: Davis King
Date: Aug 25, 2017 (16:35:47 UTC)

Gave create_tiled_pyramid() the ability to include padding around the outsides of the pyramid image.

Modified
dlib/image_transforms/image_pyramid.h
dlib/image_transforms/image_pyramid_abstract.h

Revision: 6418906f383c6b60
Author: Davis King
Date: Aug 25, 2017 (14:38:40 UTC)

Changed the functions that transform between input tensor coordinates and output tensor coordinates to use dpoint instead of point. This way, we can obtain sub-pixel coordinates if we need them.

Modified
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h
dlib/dnn/utilities.h
dlib/dnn/utilities_abstract.h

Revision: f19f8301f63d9f18
Author: Davis King
Date: Aug 25, 2017 (14:21:35 UTC)

Made resize_image() and functions that use it like the pyramid objects produce better results when run on float and double images. There was needless rounding to integers happening in the bilinear interpolation. Now if you work with a float image the entire process will run without integer rounding.

Modified
dlib/image_transforms/interpolation.h

Revision: 3eae6bb90b2bc710
Author: Davis King
Date: Aug 25, 2017 (14:20:17 UTC)

Clarified spec

Modified
dlib/image_transforms/colormaps_abstract.h

Revision: 1cf38f0c65c0a297
Author: Davis King
Date: Aug 25, 2017 (08:59:55 UTC)

Clarified spec

Modified
dlib/image_transforms/colormaps_abstract.h

Revision: e983c3baaffffb82
Author: Deniz Evrenci
Date: Aug 25, 2017 (27:40:22 UTC)

C++11 features (#778) * Make noncopyable constructor and destructor default C++11 provides the functionality. Defining empty functions cause all classes derived from noncopyable to be non-trivially constructible and non-trivially destructible. For example, matrix with compile-time layout by definition does not require an explicit destructor and should be trivially destructible ; however, deriving from noncopyable makes it non-trivially destrutible. This also affects vector<T, 2> and vector<T, 3>. * Delete array2d copy constructor and assignment operators

Modified
dlib/array2d/array2d_kernel.h
dlib/array2d/array2d_kernel_abstract.h
dlib/noncopyable.h

Revision: 8a4db312e35c76ba
Author: Deniz Evrenci
Date: Aug 25, 2017 (27:39:07 UTC)

Include drectangle.h to point_transforms.h (#777)

Modified
dlib/geometry/point_transforms.h

Revision: 7c97ae6e8fb6ccb2
Author: Davis King
Date: Aug 24, 2017 (15:42:22 UTC)

Fixed grammar

Modified
dlib/dnn/layers_abstract.h

Revision: 37cc31f07f19f574
Author: Davis King
Date: Aug 24, 2017 (15:24:28 UTC)

Fixed spelling error in comment.

Modified
dlib/dnn/cuda_data_ptr.h

Revision: ed7d1cd9986c67b1
Author: Davis King
Date: Aug 24, 2017 (14:41:07 UTC)

Fully qualified boost::python::list to hopefully avoid compiler errors in some environments.

Modified
tools/python/src/other.cpp

Revision: c99fbc13def29190
Author: Evgeniy Fominov
Date: Aug 24, 2017 (18:12:31 UTC)

Clang support for windows (#772)

Modified
dlib/CMakeLists.txt
dlib/cmake_utils/use_cpp_11.cmake

Revision: 012387c880b9cb3e
Author: ipeterson
Date: Aug 23, 2017 (11:33:52 UTC)

Pull in external libpng dependencies properly (#770) PNG_LIBRARY set by libpng's FindPNG.cmake does not contain zlib dependancy. This causes the CHECK_FUNCTION_EXISTS(png_create_read_struct LIBPNG_IS_GOOD) to fail with liner errors, and for dlib to use it's internal copy of PNG. Updated to use libpng's PNG_LIBRARIES variable. This also sets both PNG and ZLib libraries in dlib_needed_libraries.

Modified
dlib/CMakeLists.txt

Revision: 68e4d543c0bc3316
Author: Davis King
Date: Aug 22, 2017 (18:02:19 UTC)

Fixed grammar

Modified
dlib/smart_pointers.h

Revision: b5e05441d5e718fc
Author: Davis King
Date: Aug 21, 2017 (17:32:36 UTC)

Fixed incorrect size() for simd8i.

Modified
dlib/simd/simd8i.h

Revision: 44466b8bccd7eab7
Author: Davis King
Date: Aug 21, 2017 (17:27:38 UTC)

Made windows testing bat file use rmdir rather than rm since rm isn't always available on windows.

Modified
dlib/test/WINDOWS_build_and_run_all_unit_tests.bat

Revision: 28cdb9ba38ab7fe1
Author: Davis King
Date: Aug 21, 2017 (17:27:12 UTC)

Fixed linker errors when building pyhton on windows. This fixes a bug that was introduced in a recent PR. Also fixed compiler errors that occurred in visual studio.

Modified
dlib/cmake_utils/add_python_module
dlib/python/numpy.h
dlib/python/serialize_pickle.h

Revision: 94fc5255cebe509f
Author: Davis King
Date: Aug 21, 2017 (15:35:42 UTC)

Fixed warning in visual studio.

Modified
dlib/dnn/tensor.h

Revision: 692a89abe25d650f
Author: Davis King
Date: Aug 20, 2017 (16:47:00 UTC)

Made the test loss in the verbose output messages from the dnn_trainer not jump in variance when the learning rate resets.

Modified
dlib/dnn/trainer.h

Revision: 4fd8c1322933d0f1
Author: Davis King
Date: Aug 20, 2017 (16:39:44 UTC)

Added serialization support for the running_stats_decayed object.

Modified
dlib/statistics/statistics.h
dlib/statistics/statistics_abstract.h

Revision: b2b9c59b46a25782
Author: Davis King
Date: Aug 20, 2017 (16:08:03 UTC)

Made the loss value management a little more conservative.

Modified
dlib/dnn/trainer.h

Revision: c3db550a43997eaf
Author: Davis King
Date: Aug 20, 2017 (15:42:12 UTC)

Made the input_tensor_to_output_tensor() and output_tensor_to_input_tensor() coordinate mappings work on networks that contain skip layers.

Modified
dlib/dnn/utilities.h
dlib/dnn/utilities_abstract.h

Revision: 4be725b8b96defea
Author: Davis King
Date: Aug 20, 2017 (15:30:11 UTC)

Changed the default get_test_iterations_without_progress_threshold() from 200 to 500. Now that we have a better history management of loss values in the trainer it's much more sensible to have a larger value here.

Modified
dlib/dnn/trainer.h
dlib/dnn/trainer_abstract.h

Revision: 4ce6f4a3e766e65a
Author: Davis King
Date: Aug 20, 2017 (15:28:08 UTC)

Made the dnn_trainer not forget all the previous loss values it knows about when it determines that there have been a lot of steps without progress and shrinks the learning rate. Instead, it removes only the oldest 100. The problem with the old way of removing all the loss values in the history was that if you set the steps without progress threshold to a really high number you would often observe that the last few learning rate values were obviously not making progress, however, since all the previous loss values were forgotten the trainer needed to fully populate it's loss history from scratch before it would figure this out. This new style makes the trainer not waste time running this excessive optimization of obviously useless mini-batches.

Modified
dlib/dnn/trainer.h

Revision: dee0369231464ef3
Author: Davis King
Date: Aug 20, 2017 (03:14:40 UTC)

The input_rgb_image_sized is supposed to be convertible to input_rgb_image, which it was in all ways except you couldn't deserialize directly like you would expect. This has now been fixed.

Modified
dlib/dnn/input.h

Revision: 935a4626e5a7650e
Author: Davis King
Date: Aug 19, 2017 (04:48:48 UTC)

Make DLIB_ASSERT statements not abort the python interpreter, but just trigger an exception.

Modified
tools/python/CMakeLists.txt

Revision: 67eb90d2a5eab5f6
Author: Davis King
Date: Aug 19, 2017 (04:42:17 UTC)

Suppress compiler warning

Modified
dlib/dnn/layers.h

Revision: e8b6ec9ee3de5dc2
Author: Adam Geitgey
Date: Aug 18, 2017 (06:30:33 UTC)

Add a python wrapper for using the mmod face detector (#753)

Modified
tools/python/CMakeLists.txt
tools/python/src/dlib.cpp
Added
python_examples/cnn_face_detector.py
tools/python/src/cnn_face_detector.cpp

Revision: 7ded71367ca9d628
Author: Davis King
Date: Aug 18, 2017 (01:30:11 UTC)

Changed the random_cropper so that it samples background patches uniformly across scales regardless of the input image size. Previously, if you gave really large images or really small images it had a bias towards giving only large patches or small patches respectively.

Modified
dlib/image_transforms/random_cropper.h

Revision: a5d7d71af997d1be
Author: Davis King
Date: Aug 15, 2017 (11:52:00 UTC)

Fixed spelling error

Modified
dlib/statistics/running_gradient.h

Revision: 8b70bcb314ac92fc
Author: Davis King
Date: Aug 14, 2017 (17:36:18 UTC)

Fixed grammar

Modified
dlib/dnn/loss_abstract.h

Revision: 22c842bb0ea24a87
Author: Davis King
Date: Aug 14, 2017 (10:04:16 UTC)

Updated solvers to correctly pull in cont_'s bias parameter multipliers.

Modified
dlib/dnn/solvers.h

Revision: 6fbcc1849eff3c47
Author: Davis King
Date: Aug 14, 2017 (09:50:47 UTC)

Added extract_ layer

Modified
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h
dlib/test/dnn.cpp

Revision: 2735e30a69fde8ed
Author: Davis King
Date: Aug 14, 2017 (08:48:37 UTC)

Added more tests for copy_tensor()

Modified
dlib/test/dnn.cpp

Revision: 1786adb70faeead4
Author: Davis King
Date: Aug 14, 2017 (08:28:26 UTC)

Added an "add_to" option to tt:copy_tensor(). There was also a bug in the concat layer's backward() method. It was assigning the gradient to previous layers instead of adding the gradient, as required by the layer interface specification. This change also noticeably speeds up concat layers since only one CUDA kernel launch now happens per concat operation, rather than one kernel launch for each sample in a tensor.

Modified
dlib/dnn/cpu_dlib.cpp
dlib/dnn/cpu_dlib.h
dlib/dnn/cuda_dlib.cu
dlib/dnn/cuda_dlib.h
dlib/dnn/layers.h
dlib/dnn/tensor_tools.cpp
dlib/dnn/tensor_tools.h
dlib/test/dnn.cpp

Revision: 05ffcd2add434f40
Author: Davis King
Date: Aug 14, 2017 (05:52:53 UTC)

Made copy_tensor() use cudaMemcpyAsync() rather than cudaMemcpy().

Modified
dlib/dnn/cuda_dlib.cu
dlib/dnn/tensor_tools.h

Revision: 024940c678875ea6
Author: Davis King
Date: Aug 11, 2017 (13:47:19 UTC)

Added mult_prev layer.

Modified
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h
dlib/test/dnn.cpp

Revision: 547865907036994d
Author: Davis King
Date: Aug 11, 2017 (12:39:00 UTC)

Added multiply_zero_padded()

Modified
dlib/dnn/cpu_dlib.cpp
dlib/dnn/cpu_dlib.h
dlib/dnn/cuda_dlib.cu
dlib/dnn/cuda_dlib.h
dlib/dnn/tensor_tools.cpp
dlib/dnn/tensor_tools.h
dlib/test/dnn.cpp

Revision: f038970afe17f4ef
Author: Davis King
Date: Aug 10, 2017 (13:05:35 UTC)

Made swig always run when you rebuild to avoid stale swig outputs.

Modified
dlib/java/cmake_swig_jni

Revision: f9108f60012e7e6e
Author: Davis King
Date: Aug 10, 2017 (12:07:42 UTC)

Added DLIB_NO_ABORT_ON_2ND_FATAL_ERROR for dlib::fatal_error as a generic switch for use in plugin environments.

Modified
dlib/error.h

Revision: e9b7a2b23d9a9219
Author: Davis King
Date: Aug 10, 2017 (12:07:12 UTC)

Fixed missing java:: qualifiers.

Modified
dlib/java/java_array.h

Revision: 885c55c71009c06a
Author: Davis King
Date: Aug 10, 2017 (11:31:02 UTC)

Removed exit call on load library failure.

Modified
dlib/java/cmake_swig_jni

Revision: 0fc640f24e8baf64
Author: Davis King
Date: Aug 10, 2017 (11:16:21 UTC)

A bit of path cleanup

Modified
dlib/java/CMakeLists.txt
dlib/java/cmake_swig_jni
dlib/java/swig_api.h

Revision: 1ff7211cc05b0422
Author: Davis King
Date: Aug 10, 2017 (10:38:41 UTC)

Added more options for controlling the install folder paths.

Modified
dlib/java/CMakeLists.txt
dlib/java/cmake_swig_jni

Revision: 039977decba9d23f
Author: Davis King
Date: Aug 09, 2017 (17:42:29 UTC)

merged

Modified
dlib/java/cmake_swig_jni
dlib/java/swig_api.h
dlib/java/swig_test.java
dlib/matrix/matrix_blas_bindings.h
dlib/matrix/matrix_mat.h
dlib/matrix/matrix_mat_abstract.h
dlib/test/dnn.cpp
dlib/test/matrix.cpp
Added
dlib/java/java_array.h
Deleted
dlib/java/jvector.h

Revision: 4e84498e368b7d95
Author: Davis King
Date: Aug 09, 2017 (17:42:14 UTC)

Fixed a bug in the warning message about NMS overlap where it would sometimes false alarm.

Modified
dlib/dnn/loss.h

Revision: b2395d8b583f14d0
Author: Davis King
Date: Aug 09, 2017 (08:20:06 UTC)

merged

Modified
dlib/java/cmake_swig_jni
dlib/java/swig_api.h
dlib/java/swig_test.java
dlib/matrix/matrix_blas_bindings.h
dlib/matrix/matrix_mat.h
dlib/matrix/matrix_mat_abstract.h
dlib/test/dnn.cpp
dlib/test/matrix.cpp
Added
dlib/java/java_array.h
Deleted
dlib/java/jvector.h

Revision: 0b26f900adfc416e
Author: Davis King
Date: Aug 09, 2017 (08:19:41 UTC)

Added an object that lets you hold a copyable reference to a java array. Also renamed the objects and generally improved documentation.

Modified
dlib/java/cmake_swig_jni
dlib/java/swig_api.h
dlib/java/swig_test.java
Added
dlib/java/java_array.h
Deleted
dlib/java/jvector.h

Revision: ac06c03e5ec8fc3a
Author: Davis King
Date: Aug 08, 2017 (11:10:17 UTC)

Added an overload of mat() that takes a row stride value.

Modified
dlib/matrix/matrix_blas_bindings.h
dlib/matrix/matrix_mat.h
dlib/matrix/matrix_mat_abstract.h
dlib/test/matrix.cpp

Revision: 88ec0c153bcd9ff9
Author: Davis King
Date: Aug 08, 2017 (11:00:38 UTC)

Relaxes test to avoid false alarms.

Modified
dlib/test/dnn.cpp

Revision: a3a15599f79256ed
Author: Davis King
Date: Aug 06, 2017 (07:34:07 UTC)

Added note about logging training parameters.

Modified
examples/dnn_mmod_ex.cpp

Revision: aea2c9f4a7daf579
Author: Davis King
Date: Aug 06, 2017 (04:54:10 UTC)

Changed how we print the network hash.

Modified
dlib/dnn/trainer.h

Revision: a2810bebf9f5a6bb
Author: Davis King
Date: Aug 05, 2017 (11:24:47 UTC)

Made dnn_trainer print the network size when logged to an iostream.

Modified
dlib/dnn/trainer.h

Revision: d10ac2240922c54a
Author: Davis King
Date: Aug 04, 2017 (18:46:46 UTC)

Improved how the relaxed mmod overlap settings are determined.

Modified
dlib/dnn/loss.h

Revision: 65a32f50b0c67588
Author: Davis King
Date: Aug 03, 2017 (11:55:57 UTC)

Added get_synchronization_file() and get_test_one_step_calls() to dnn_trainer. Also added an operator<< for dnn_trainer that prints the parameters it's using. These changes also break backwards compatibility with the previous serialization format for dnn_trainer objects.

Modified
dlib/dnn/trainer.h
dlib/dnn/trainer_abstract.h

Revision: a72fd3b281342ddd
Author: Davis King
Date: Aug 03, 2017 (11:47:08 UTC)

Added operator<< for the DNN solvers.

Modified
dlib/dnn/solvers.h
dlib/dnn/solvers_abstract.h

Revision: a9e364c0ef45edec
Author: Davis King
Date: Aug 03, 2017 (11:40:51 UTC)

Added operator<< for random_cropper.

Modified
dlib/image_transforms/random_cropper.h
dlib/image_transforms/random_cropper_abstract.h

Revision: f333a561d3aa649b
Author: Davis King
Date: Aug 03, 2017 (11:28:26 UTC)

Filled out the options for loss_mmod's operator<<.

Modified
dlib/dnn/loss.h

Revision: 6a1608b5d348414a
Author: Davis King
Date: Aug 03, 2017 (05:36:51 UTC)

Clarified spec

Modified
dlib/dnn/trainer_abstract.h

Revision: 6230ef7cabc2f565
Author: Davis King
Date: Aug 03, 2017 (05:14:36 UTC)

Fixed spelling error in comment.

Modified
dlib/serialize.h

Revision: c23b8fb76cd96163
Author: Davis King
Date: Jul 31, 2017 (15:49:46 UTC)

Added missing input validation to loss_mmod_. Specifically, the loss layer now checks if the user is giving truth boxes that can't be detected because the non-max suppression settings would prevent them from being output at the same time. If this happens then we print a warning message and set one of the offending boxes to "ignore".

Modified
dlib/dnn/loss.h

Revision: 2d821a1b149b262b
Author: Davis King
Date: Jul 31, 2017 (15:43:49 UTC)

Clarified spec

Modified
dlib/dnn/loss_abstract.h

Revision: 80e4c75351a5e37e
Author: Davis King
Date: Jul 30, 2017 (16:55:04 UTC)

Gave test_object_detection_function() an option to set how ignore box overlap is tested.

Modified
dlib/dnn/validation.h
dlib/svm/cross_validate_object_detection_trainer.h
dlib/svm/cross_validate_object_detection_trainer_abstract.h

Revision: 49ad8b55b00ee788
Author: ᴚ∀W∀ᴎ
Date: Jul 29, 2017 (-05:42:42 UTC)

differential std::clamp from c++17 with dlib:: prefix to clamp() (#734)

Modified
dlib/control/mpc.h
dlib/matrix/matrix_la.h
dlib/optimization/optimization.h
dlib/optimization/optimization_solve_qp_using_smo.h
dlib/test/matrix2.cpp

Revision: b4c4c47cbeb4e6f9
Author: Leo
Date: Jul 28, 2017 (09:03:41 UTC)

Fix strange dash in Box-Muller (#732)

Modified
dlib/general_hash/random_hashing.h

Revision: f1b45f1446062c59
Author: Davis King
Date: Jul 29, 2017 (01:51:59 UTC)

Minor adjustments to avoid false alarms in cca test.

Modified
dlib/test/cca.cpp

Revision: d9452d905bfb6ac6
Author: Davis King
Date: Jul 25, 2017 (11:42:13 UTC)

Updated cmake required version

Modified
dlib/java/cmake_swig_jni

Revision: 9a69628a43de0d97
Author: Davis King
Date: Jul 25, 2017 (11:41:30 UTC)

Added cmake scripts and some related tooling that makes it easy to call C++ code from java.

Added
dlib/java/CMakeLists.txt
dlib/java/cmake_swig_jni
dlib/java/jvector.h
dlib/java/run_test.sh
dlib/java/swig_api.h
dlib/java/swig_test.java

Revision: 8fc176117752ac5f
Author: Davis King
Date: Jul 24, 2017 (06:01:30 UTC)

Fixed tabbing

Modified
dlib/dnn/cpu_dlib.cpp

Revision: 11755added24a539
Author: Davis King
Date: Jul 24, 2017 (06:01:23 UTC)

Fixed grammar

Modified
examples/dnn_inception_ex.cpp

Revision: 69b6bb1130fc5fd3
Author: Davis King
Date: Jul 22, 2017 (07:41:48 UTC)

Improved errors from libpng when users link against a different version of libpng than they built against.

Modified
dlib/image_loader/png_loader.cpp

Revision: f7fbb3219aeaedc3
Author: Davis King
Date: Jul 22, 2017 (03:50:52 UTC)

Made tensor_conv hold references to the cuda_data_void_ptr work buffers in the member area of the class. This way, we avoid a potential error where the buffers are reallocated while cuDNN is still using them in the background.

Modified
dlib/dnn/cudnn_dlibapi.cpp
dlib/dnn/cudnn_dlibapi.h

Revision: d3ab7b9cda03f0de
Author: Evgeniy Fominov
Date: Jul 21, 2017 (22:37:46 UTC)

cuDNN convolution algorithms shared workspace (#695) * added shared workspace * rewrite shared workspace code * rename and device-based buffer allocation * fix cudnn_device_buffer constructors

Modified
dlib/dnn/cuda_data_ptr.h
dlib/dnn/cudnn_dlibapi.cpp
dlib/dnn/cudnn_dlibapi.h

Revision: 396b7ed0e6e08574
Author: Pavan kumar
Date: Jul 19, 2017 (23:68:28 UTC)

Just small typo (#716)

Modified
python_examples/face_recognition.py

Revision: 98605f018fd15cc1
Author: Morosko
Date: Jul 18, 2017 (17:33:27 UTC)

Make http_client compile in C++11 and above (#714) * Make http_client compile in C++11 and above * Optimize file reading

Modified
dlib/http_client/http_client.cpp

Revision: bf5bfffb2b74e0b6
Author: Davis King
Date: Jul 18, 2017 (18:19:29 UTC)

Added --sort and also the ability to propagate boxes from one image to the next using dlib::correlation_tracker.

Modified
tools/imglab/src/main.cpp
tools/imglab/src/metadata_editor.cpp

Revision: 4309baf01093704d
Author: Juha Reunanen
Date: Jul 16, 2017 (17:23:59 UTC)

Add per-pixel mean square loss (#690) * Add per-pixel mean square loss * Add documentation of loss_mean_squared_per_pixel_ * Add test case for per-pixel mean square loss: a simple autoencoder * Review fix: reorder params of function tensor_index, so that the order corresponds to the convention used in the rest of the dlib code base * Review fix: add breaks as intended, and change the rest of the test accordingly * Again a case where the tests already work locally for me, but not on AppVeyor/Travis - this commit is a blindfolded attempt to fix the problem (and it also fixes a compiler warning)

Modified
dlib/dnn/loss.h
dlib/dnn/loss_abstract.h
dlib/test/dnn.cpp

Revision: 6f82b11e5fc09b96
Author: Davis King
Date: Jul 15, 2017 (18:29:44 UTC)

Hopefully improved compiler error diagnostic when using gcc and a user misconfigures their build environment.

Added
dlib/bits/c++config.h

Revision: 89ab0bac484c0a62
Author: Joost van Amersfoort
Date: Jul 15, 2017 (03:12:00 UTC)

remove linking to libpython on linux/OSX (#703) * remove linking to libpython on linux * add OSX libpython free building * add automatic discovery of include python dir back in * make the libs non required for building on manylinux

Modified
dlib/cmake_utils/add_python_module

Revision: 05f40d904621210b
Author: Davis King
Date: Jul 11, 2017 (18:17:07 UTC)

Trying another python build test.

Modified
dlib/travis/build-and-test.sh

Revision: 401c6e1e465f059d
Author: Davis King
Date: Jul 11, 2017 (18:02:26 UTC)

Trying again...

Modified
dlib/travis/build-and-test.sh

Revision: 72d0ff9885268f8c
Author: Davis King
Date: Jul 11, 2017 (16:46:29 UTC)

Add cmake to path for travis

Modified
dlib/travis/build-and-test.sh

Revision: 8cc5d90e0f1f70bb
Author: Davis King
Date: Jul 11, 2017 (15:52:18 UTC)

More python build tests

Modified
dlib/travis/build-and-test.sh

Revision: d0841d570136ae02
Author: Davis King
Date: Jul 11, 2017 (14:12:47 UTC)

Make travis-ci build the python api

Modified
.travis.yml
dlib/travis/build-and-test.sh

Revision: fd0f8feaf3a1d09c
Author: MambaWong
Date: Jul 12, 2017 (10:11:06 UTC)

Update webcam_face_pose_ex.cpp (#702) Test on a given video like this cv::VideoCapture cap("Sample.avi") may be broken when the video frames are not enough before the main window is closed by the user.

Modified
examples/webcam_face_pose_ex.cpp

Revision: a3a3d46411f8d79d
Author: Davis King
Date: Jul 09, 2017 (08:20:21 UTC)

Fixed typo in spec.

Modified
dlib/dnn/tensor_abstract.h

Revision: 24db262ee5fa81fc
Author: Davis King
Date: Jul 08, 2017 (12:53:29 UTC)

Added Juha Reunanen serialize test case, but one with dlib:: in front and one without to make sure both types of lookup work.

Modified
dlib/test/dnn.cpp

Revision: c2b2bc909b8f2acb
Author: Davis King
Date: Jul 08, 2017 (12:50:38 UTC)

Work around funny name lookup rules for serialize() call.

Modified
dlib/dnn/core.h

Revision: 49c1d15ec8edf4bc
Author: Davis King
Date: Jul 08, 2017 (11:56:40 UTC)

Fixed name lookup problem for calls to serialize() on network objects.

Modified
dlib/dnn/core.h

Revision: 2c9e5703a0c1c0bd
Author: Davis King
Date: Jul 07, 2017 (06:42:29 UTC)

Improved error message from the svmstruct object detector.

Modified
dlib/svm/structural_svm_object_detection_problem.h

Revision: 8000a172af6d1a00
Author: Juha Reunanen
Date: Jul 07, 2017 (20:26:29 UTC)

Add new loss for weighted pixel inputs (#685) * Add new loss for weighted pixel inputs (may be useful e.g. to emphasize rare classes) * Deduplicate method loss_multiclass_log_per_pixel_(weighted_)::to_label * Add a simple test case for weighted inputs (also, fix a typo in test_tensor_resize_bilienar's name) * Add loss_multiclass_log_per_pixel_weighted_ to loss_abstract.h * Decrease the amount of weighting * There's no need to train for a very long time

Modified
dlib/dnn/loss.h
dlib/dnn/loss_abstract.h
dlib/test/dnn.cpp

Revision: 4233d5ba4a1aaad0
Author: Davis King
Date: Jul 06, 2017 (06:04:02 UTC)

Made ctrl+c detection in a mex file work more reliably in newer versions of matlab.

Modified
dlib/matlab/mex_wrapper.cpp

Revision: a7313c5603749aa2
Author: Davis King
Date: Jul 05, 2017 (08:12:43 UTC)

Renamed a few things to make the code and messages clearer.

Modified
dlib/CMakeLists.txt
dlib/cmake_utils/check_if_neon_available.cmake

Revision: 1d7f57b67c4421e3
Author: bot1131357
Date: Jul 06, 2017 (11:53:48 UTC)

Check for __ARM_NEON__ for libpng (#679) * Added check to see if __ARM_NEON__ is defined. Now we can use the following command: cmake --build --config Release .. * Rename to use_arm_neon.cmake to check_if_neon_available.cmake for clarity, minor tidying up of script, and simplifying try_compile() code for ARM NEON.

Modified
dlib/CMakeLists.txt
Added
dlib/cmake_utils/check_if_neon_available.cmake
dlib/cmake_utils/test_for_neon/CMakeLists.txt
dlib/cmake_utils/test_for_neon/neon_test.cpp

Revision: 97039314d589b354
Author: Davis King
Date: Jul 04, 2017 (09:19:41 UTC)

merged

Modified
dlib/test/dnn.cpp

Revision: 42edf220ec2b9da1
Author: Juha Reunanen
Date: Jul 03, 2017 (26:24:45 UTC)

Disable IntelliSense for all DNN unit tests (#678) * Problem: Visual Studio's vcpkgsrv.exe constantly uses a single CPU core, apparently never finishing whatever it's trying to do. Moreover, this issue prevents some operations like switching from Debug to Release (and vice versa) in the IDE. (Your mileage may vary.) Workaround: Keep manually killing the vcpkgsrv.exe process. Solution: Disable IntelliSense for some files. Which files? Unfortunately this seems to be a trial-and-error process. * Disable IntelliSense for the ResNet declarations * Disable IntelliSense for even more stuff * Disable IntelliSense for all DNN unit tests

Modified
dlib/test/dnn.cpp

Revision: e7500aaabbc0733b
Author: Davis King
Date: Jul 04, 2017 (09:14:05 UTC)

Added upsample_ layer that upsamples a tensor using bilinear interpolation.

Modified
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h
dlib/test/dnn.cpp

Revision: a5d65a463f81c319
Author: Davis King
Date: Jul 04, 2017 (07:52:56 UTC)

Added tt::resize_bilinear() and tt::resize_bilinear_gradient().

Modified
dlib/dnn/cpu_dlib.cpp
dlib/dnn/cpu_dlib.h
dlib/dnn/cuda_dlib.cu
dlib/dnn/cuda_dlib.h
dlib/dnn/tensor_tools.cpp
dlib/dnn/tensor_tools.h
dlib/test/dnn.cpp

Revision: 8b157ee76aa94558
Author: Davis King
Date: Jul 04, 2017 (04:52:12 UTC)

Clarified spec slightly.

Modified
dlib/dnn/tensor_abstract.h

Revision: 5104476d6c0f726c
Author: Davis King
Date: Jul 02, 2017 (04:43:45 UTC)

Added a comment

Modified
examples/dnn_mmod_ex.cpp

Revision: 9bb59097442a3284
Author: Davis King
Date: Jul 02, 2017 (04:16:16 UTC)

Removed default argument from process_batch since it upsets older versions of gcc and I can imagine scenarios where having it leads to user errors anyway.

Modified
dlib/dnn/core.h
dlib/dnn/core_abstract.h

Revision: 70e5e7dc8d677f68
Author: Davis King
Date: Jul 01, 2017 (12:26:58 UTC)

Moved label_to_ignore into loss_multiclass_log_per_pixel_ and also cleaned up a few minor things.

Modified
dlib/dnn/loss.h
dlib/dnn/loss_abstract.h
dlib/test/dnn.cpp

Revision: fad0fb2c55eee3d2
Author: Juha Reunanen
Date: Jul 01, 2017 (26:12:34 UTC)

Add new loss layer for semantic segmentation (pixel-wise classification) (#540) * #288 - add new layer loss_multiclass_log_matrixoutput for semantic-segmentation purposes * In semantic segmentation, add capability to ignore individual pixels when computing gradients * In semantic segmentation, 65535 classes ought to be enough for anybody * Divide matrix output loss by matrix dimensions too, in order to make losses related to differently sized matrices more comparable - note that this affects the required learning rate as well! * Review fix: avoid matrix copy * Review fix: rename to loss_multiclass_log_per_pixel * Review fix: just use uint16_t as the label type * Add more tests: check that network params and outputs are correct * Improve error message when output and truth matrix dimensions do not match * Add test case verifying that a single call of loss_multiclass_log_per_pixel equals multiple corresponding calls of loss_multiclass_log * Fix test failure by training longer * Remove the test case that fails on Travis for some reason, even though it works on AppVeyor and locally

Modified
dlib/dnn/loss.h
dlib/dnn/loss_abstract.h
dlib/test/dnn.cpp

Revision: 4dbaea3d09b01eb5
Author: Davis King
Date: Jul 01, 2017 (11:46:25 UTC)

Fixed broken copy constructor and assignment operator of con_, which became broken about an hour ago. Oops.

Modified
dlib/dnn/layers.h

Revision: 222d67337366cc71
Author: Davis King
Date: Jul 01, 2017 (11:24:25 UTC)

suppress compiler warnings

Modified
dlib/dnn/layers.h
dlib/dnn/loss.h

Revision: c27b1f28cee43d94
Author: Juha Reunanen
Date: Jun 30, 2017 (15:47:21 UTC)

Problem: Visual Studio's vcpkgsrv.exe constantly uses a single CPU core, (#666) apparently never finishing whatever it's trying to do. Moreover, this issue prevents some operations like switching from Debug to Release (and vice versa) in the IDE. (Your mileage may vary.) Workaround: Keep manually killing the vcpkgsrv.exe process. Solution: Disable IntelliSense for some files. Which files? Unfortunately this seems to be a trial-and-error process.

Modified
dlib/dnn.h

Revision: 77d5852d5ca0e243
Author: Davis King
Date: Jul 01, 2017 (10:46:27 UTC)

Upgraded loss_mmod_ to support objects of varying aspect ratio. This changes the API for the mmod_options struct slightly.

Modified
dlib/dnn/loss.h
dlib/dnn/loss_abstract.h
examples/dnn_mmod_ex.cpp

Revision: 4d594cdbcfea8731
Author: Davis King
Date: Jul 01, 2017 (08:12:30 UTC)

Added process() and process_batch() to add_loss_layer. These routines let you easily pass arguments to any optional parameters of a loss layer's to_tensor() routine. For instance, it makes it more convenient to set loss_mmod_'s adjust_threshold parameter.

Modified
dlib/dnn/core.h
dlib/dnn/core_abstract.h

Revision: f46c094db0c8fbdb
Author: Davis King
Date: Jul 01, 2017 (07:54:20 UTC)

updated spec about con_

Modified
dlib/dnn/layers_abstract.h

Revision: 1df4a8a67e958975
Author: Davis King
Date: Jul 01, 2017 (07:53:38 UTC)

Made it so you can set the number of output filters for con_ layers at runtime.

Modified
dlib/dnn/layers.h

Revision: 307c1b509117864d
Author: Davis King
Date: Jul 01, 2017 (07:41:26 UTC)

Made dnn_trainer sync its state to two separate sync files that it alternates between. This should make syncing more robust to sudden hardware failure that happens right when saving to disk.

Modified
dlib/dnn/trainer.h
dlib/dnn/trainer_abstract.h

Revision: 5d7f0f9e1ac6f673
Author: Davis King
Date: Jul 01, 2017 (07:37:16 UTC)

Added select_oldest_file() and select_newest_file()

Modified
dlib/dir_nav/dir_nav_extensions.cpp
dlib/dir_nav/dir_nav_extensions.h
dlib/dir_nav/dir_nav_extensions_abstract.h

Revision: 93a30ab0bf7065d5
Author: Davis King
Date: Jul 01, 2017 (07:34:35 UTC)

updated docs

Modified
dlib/dir_nav/dir_nav_kernel_1.h
dlib/dir_nav/dir_nav_kernel_2.h
dlib/dir_nav/dir_nav_kernel_abstract.h

Revision: e44118d86e385fa9
Author: Davis King
Date: Jul 01, 2017 (07:20:45 UTC)

Added file::last_modified() for windows version of code.

Modified
dlib/dir_nav/dir_nav_kernel_1.cpp
dlib/dir_nav/dir_nav_kernel_1.h

Revision: b5b8b55a3d1c6781
Author: Davis King
Date: Jul 01, 2017 (06:38:15 UTC)

Added last_modified() method to dlib::file.

Modified
dlib/dir_nav/dir_nav_kernel_2.cpp
dlib/dir_nav/dir_nav_kernel_2.h

Revision: bc43b7b4a15064e7
Author: Davis King
Date: Jun 26, 2017 (17:06:59 UTC)

Cleaned up documentation for conv_. Also removed unnecessary tensor reallocation and copying inside conv_'s backward pass. Doing this required adding an add_to_output boolean option to the methods of tensor_conv.

Modified
dlib/dnn/cpu_dlib.cpp
dlib/dnn/cpu_dlib.h
dlib/dnn/cudnn_dlibapi.cpp
dlib/dnn/cudnn_dlibapi.h
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h
dlib/dnn/tensor_tools.h
dlib/test/dnn.cpp

Revision: 5f43b527f26068b6
Author: Davis King
Date: Jun 26, 2017 (17:01:47 UTC)

Fixed typo in comment.

Modified
dlib/dnn/core.h

Revision: d50bd56510b31ab6
Author: OranjeeGeneral
Date: Jun 22, 2017 (18:55:20 UTC)

refactored interface to reduce complexity so conv and convt layers forward passes have to call setup explicit now and there is only one ()-operator

Modified
dlib/dnn/cpu_dlib.cpp
dlib/dnn/cpu_dlib.h
dlib/dnn/cudnn_dlibapi.cpp
dlib/dnn/cudnn_dlibapi.h
dlib/dnn/layers.h
dlib/dnn/tensor_tools.h
dlib/test/dnn.cpp

Revision: e0b16a54ce28359e
Author: Joachim
Date: Jun 13, 2017 (14:33:42 UTC)

Merge branch 'master' of https://github.com/davisking/dlib

Modified
dlib/CMakeLists.txt
dlib/any/any.h
dlib/any/any_decision_function.h
dlib/any/any_function.h
dlib/any/any_function_impl.h
dlib/any/any_trainer.h
dlib/bayes_utils/bayes_utils.h
dlib/bridge/bridge.h
dlib/bsp/bsp.cpp
dlib/bsp/bsp.h
dlib/cmake_utils/dlib.pc.in
dlib/cmake_utils/dlibConfig.cmake.in
dlib/cmd_line_parser/cmd_line_parser_print_1.h
dlib/directed_graph/directed_graph_kernel_1.h
dlib/dnn/core.h
dlib/dnn/core_abstract.h
dlib/dnn/cuda_dlib.cu
dlib/dnn/cuda_dlib.h
dlib/dnn/curand_dlibapi.cpp
dlib/dnn/curand_dlibapi.h
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h
dlib/dnn/loss.h
dlib/dnn/tensor_tools.cpp
dlib/dnn/tensor_tools.h
dlib/dnn/trainer.h
dlib/dnn/utilities.h
dlib/dnn/utilities_abstract.h
dlib/geometry/drectangle.h
dlib/geometry/drectangle_abstract.h
dlib/geometry/rectangle.h
dlib/geometry/rectangle_abstract.h
dlib/geometry/vector.h
dlib/graph/graph_kernel_1.h
dlib/graph_cuts/min_cut.h
dlib/gui_core/gui_core_kernel_1.cpp
dlib/gui_core/gui_core_kernel_1.h
dlib/gui_core/gui_core_kernel_2.cpp
dlib/gui_widgets/base_widgets.cpp
dlib/gui_widgets/base_widgets.h
dlib/gui_widgets/drawable.h
dlib/gui_widgets/fonts.cpp
dlib/gui_widgets/fonts.h
dlib/gui_widgets/nativefont.h
dlib/gui_widgets/widgets.cpp
dlib/gui_widgets/widgets.h
dlib/image_loader/jpeg_loader.h
dlib/image_loader/png_loader.h
dlib/image_processing.h
dlib/image_processing/shape_predictor.h
dlib/image_processing/shape_predictor_abstract.h
dlib/iosockstream/iosockstream.h
dlib/logger/logger_kernel_1.cpp
dlib/logger/logger_kernel_1.h
dlib/matrix/lapack/gees.h
dlib/matrix/matrix_blas_bindings.h
dlib/matrix/matrix_trsm.h
dlib/optimization/optimization_bobyqa.h
dlib/serialize.h
dlib/server/server_kernel.h
dlib/simd/simd4f.h
dlib/simd/simd4i.h
dlib/simd/simd_check.h
dlib/smart_pointers.h
dlib/smart_pointers/scoped_ptr.h
dlib/smart_pointers_thread_safe.h
dlib/sockets/sockets_extensions.cpp
dlib/sockets/sockets_extensions.h
dlib/sockets/sockets_extensions_abstract.h
dlib/sockets/sockets_kernel_1.cpp
dlib/sockets/sockets_kernel_1.h
dlib/sockets/sockets_kernel_2.cpp
dlib/sockets/sockets_kernel_2.h
dlib/sockets/sockets_kernel_abstract.h
dlib/sockstreambuf/sockstreambuf.h
dlib/sockstreambuf/sockstreambuf_abstract.h
dlib/sockstreambuf/sockstreambuf_unbuffered.h
dlib/sqlite/sqlite.h
dlib/svm/kkmeans.h
dlib/svm/pegasos.h
dlib/svm/structural_svm_distributed.h
dlib/svm/svm_threaded.h
dlib/test/CMakeLists.txt
dlib/test/dnn.cpp
dlib/test/elastic_net.cpp
dlib/test/gui/main.cpp
dlib/test/makefile
dlib/test/opt_qp_solver.cpp
dlib/test/optimization_test_functions.cpp
dlib/test/smart_pointers.cpp
dlib/test/sockets.cpp
dlib/test/sockets2.cpp
dlib/test/sockstreambuf.cpp
dlib/test/tester.h
dlib/test/tuple.cpp
dlib/threads/thread_function_extension.h
dlib/threads/thread_pool_extension.cpp
dlib/threads/thread_pool_extension.h
dlib/timer/timer.cpp
dlib/timer/timer.h
dlib/xml_parser/xml_parser_kernel_1.h
dlib/xml_parser/xml_parser_kernel_interfaces.h
docs/docs/containers.xml
docs/docs/howto_contribute.xml
docs/docs/linear_algebra.xml
docs/docs/ml.xml
docs/docs/term_index.xml
examples/CMakeLists.txt
examples/bayes_net_gui_ex.cpp
examples/dnn_face_recognition_ex.cpp
examples/dnn_introduction2_ex.cpp
examples/dnn_introduction_ex.cpp
examples/sockstreambuf_ex.cpp
setup.py
Added
appveyor.yml
dlib/image_processing/shape_predictor_trainer.h
dlib/image_processing/shape_predictor_trainer_abstract.h
python_examples/requirements.txt
tools/convert_dlib_nets_to_caffe/CMakeLists.txt
tools/convert_dlib_nets_to_caffe/main.cpp
tools/convert_dlib_nets_to_caffe/running_a_dlib_model_with_caffe_example.py
Deleted
dlib/smart_pointers/scoped_ptr_abstract.h

Revision: 224183b025f1b138
Author: Joachim
Date: Apr 10, 2017 (14:17:54 UTC)

Merge remote-tracking branch 'upstream/master'

Modified
README.md
dlib/CMakeLists.txt
dlib/cmake_utils/add_python_module
dlib/cmake_utils/cmake_find_blas.txt
dlib/data_io/image_dataset_metadata.cpp
dlib/data_io/image_dataset_metadata.h
dlib/dnn/core.h
dlib/dnn/cpu_dlib.cpp
dlib/dnn/cpu_dlib.h
dlib/dnn/cuda_dlib.cu
dlib/dnn/cuda_dlib.h
dlib/dnn/cuda_errors.h
dlib/dnn/cuda_utils.h
dlib/dnn/cudnn_dlibapi.cpp
dlib/dnn/tensor_tools.cpp
dlib/dnn/tensor_tools.h
dlib/graph_utils/edge_list_graphs.h
dlib/image_processing/scan_fhog_pyramid.h
dlib/image_transforms/image_pyramid.h
dlib/matlab/cmake_mex_wrapper
dlib/matlab/mex_wrapper.cpp
dlib/matrix/matrix_trsm.h
dlib/optimization/optimization_solve_qp_using_smo.h
dlib/optimization/optimization_solve_qp_using_smo_abstract.h
dlib/test/CMakeLists.txt
dlib/test/cublas.cpp
dlib/test/dnn.cpp
dlib/test/opt_qp_solver.cpp
dlib/timer/timer.cpp
dlib/timer/timer_heavy.h
dlib/tokenizer/tokenizer_kernel_1.cpp
docs/docs/optimization.xml
docs/docs/term_index.xml
examples/CMakeLists.txt
tools/imglab/src/main.cpp
tools/imglab/src/metadata_editor.cpp
Added
dlib/dnn/cuda_data_ptr.cpp
dlib/dnn/cuda_data_ptr.h
dlib/dnn/cusolver_dlibapi.cu
dlib/dnn/cusolver_dlibapi.h

Revision: 324a5638cdebfcb1
Author: Joachim
Date: Mar 16, 2017 (12:19:26 UTC)

fixed backward pass in cont layer to accumulate gradients this will pass the layer test now also removed compile warnings and changed some comments

Modified
dlib/dnn/cpu_dlib.h
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h
dlib/test/dnn.cpp

Revision: 4e0b6915da3a4ddd
Author: Joachim
Date: Mar 13, 2017 (15:34:13 UTC)

add initial version of convolutional transpose layer

Modified
dlib/dnn/cpu_dlib.cpp
dlib/dnn/cpu_dlib.h
dlib/dnn/cudnn_dlibapi.cpp
dlib/dnn/cudnn_dlibapi.h
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h
dlib/dnn/tensor_tools.h
dlib/test/dnn.cpp

Revision: 88b121a1fedc1130
Author: Davis King
Date: Jun 28, 2017 (04:53:43 UTC)

Minor change to avoid errors from some versions of cmake.

Modified
dlib/cmake_utils/test_for_cudnn/CMakeLists.txt

Revision: e8cf0eeb0696abff
Author: Davis King
Date: Jun 21, 2017 (13:06:48 UTC)

Fixed mex class code printing

Modified
dlib/matlab/mex_wrapper.cpp

Revision: 9e977a1bed81dd2a
Author: Davis King
Date: Jun 21, 2017 (05:10:34 UTC)

Added operator= for simd8f so assignment from float compiles.

Modified
dlib/simd/simd8f.h

Revision: a871b6765e9f5461
Author: Grigoris
Date: Jun 07, 2017 (12:51:19 UTC)

Minor typo corrections in shape predictor trainer. (#633)

Modified
dlib/image_processing/shape_predictor_trainer.h

Revision: 03333233fd7f0e7f
Author: Plumtus
Date: Jun 07, 2017 (10:19:23 UTC)

Reinitialize averagers when saved sync file was reloaded. (#629)

Modified
dlib/dnn/trainer.h

Revision: 1b250933cc9382b3
Author: Davis King
Date: Jun 19, 2017 (16:54:45 UTC)

Made is so pressing e in imglab toggles between views of the image where the histogram is equalized or unmodified. This way, if you are looking at particularly dark or badly contrasted images you can toggle this mode and maybe get a better view of what you are labeling.

Modified
tools/imglab/src/main.cpp
tools/imglab/src/metadata_editor.cpp
tools/imglab/src/metadata_editor.h

Revision: 722b93ed91244b64
Author: Davis King
Date: Jun 18, 2017 (04:11:54 UTC)

Updated code to work with new random_cropper interface.

Modified
tools/python/src/face_recognition.cpp

Revision: 5faee3477597fea2
Author: Davis King
Date: Jun 17, 2017 (08:34:26 UTC)

Changed the random_cropper's interface so that instead of talking in terms of min and max object height, it's now min and max object size. This way, if you have objects that are short and wide (i.e. objects where the relevant dimension is width rather than height) you will get sensible behavior out of the random cropper.

Modified
dlib/image_transforms/random_cropper.h
dlib/image_transforms/random_cropper_abstract.h
examples/dnn_face_recognition_ex.cpp
examples/dnn_mmod_ex.cpp
examples/random_cropper_ex.cpp

Revision: 108467d3815cfcab
Author: Davis King
Date: Jun 06, 2017 (01:47:00 UTC)

Switched order of things in if statement so cmake hopefully won't give weird errors.

Modified
dlib/CMakeLists.txt

Revision: d2719abaf6546a6f
Author: Davis King
Date: Jun 04, 2017 (06:06:44 UTC)

Changed the converter so that, rather than producing one python file with everything in it, it now makes a python file as before but an additional binary file with all the weights in it. This way, if you are working with a network with a very large number of weights you won't end up with a crazy large python script.

Modified
tools/convert_dlib_nets_to_caffe/main.cpp

Revision: ab209be410741632
Author: Davis King
Date: Jun 02, 2017 (18:50:01 UTC)

Added set_rect_area()

Modified
dlib/geometry/drectangle.h
dlib/geometry/drectangle_abstract.h
dlib/geometry/rectangle.h
dlib/geometry/rectangle_abstract.h

Revision: 5360858bb0c7f5e0
Author: Davis King
Date: May 31, 2017 (12:08:00 UTC)

Added a .fill() member to curand_generator that can create random 32bit integers.

Modified
dlib/dnn/curand_dlibapi.cpp
dlib/dnn/curand_dlibapi.h

Revision: 6021c01284a2bd82
Author: Evgeniy Fominov
Date: May 30, 2017 (15:40:11 UTC)

Possible CLang fix for Neon-based SIMD4i (#612)

Modified
dlib/simd/simd4f.h
dlib/simd/simd4i.h

Revision: 75122fdd0ac0cacb
Author: Davis King
Date: May 29, 2017 (16:06:37 UTC)

Relaxed the default non-max suppression parameters used by the mmod_options object so that users of the deep learning MMOD tool don't get spurious errors about impossibly labeled objects during training.

Modified
dlib/dnn/loss.h

Revision: 232d654d576228ee
Author: Davis King
Date: May 28, 2017 (07:07:02 UTC)

Made the converter handle caffe's odd pooling layer output size calculations.

Modified
tools/convert_dlib_nets_to_caffe/main.cpp

Revision: 033799853c74caf7
Author: Davis King
Date: May 27, 2017 (08:56:24 UTC)

Work around a bug in visual studio 2015.

Modified
dlib/dnn/core.h

Revision: 8d673c4363ac7494
Author: Davis King
Date: May 27, 2017 (07:59:32 UTC)

Made calling clean() on network objects also call clean on any layer detail objects that also provide a .clean() method.

Modified
dlib/dnn/core.h
dlib/dnn/core_abstract.h
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h

Revision: 08f6d8abf9582e8b
Author: Davis King
Date: May 26, 2017 (13:23:58 UTC)

Added visit_layers_until_tag()

Modified
dlib/dnn/core.h
dlib/dnn/core_abstract.h

Revision: 96836695f84bbe15
Author: Juha Reunanen
Date: May 22, 2017 (18:58:27 UTC)

Noticed compiler warning C4800: 'double': forcing value to bool 'true' or 'false' (performance warning) (#538) - suggesting to change the test to what perhaps was the original intention

Modified
dlib/test/elastic_net.cpp

Revision: 525ffd8652c7e66b
Author: Davis King
Date: May 24, 2017 (03:24:12 UTC)

Made the converter add zero padding layers when needed by Eltwise to replicate the behavior of dlib's add_prev layers.

Modified
tools/convert_dlib_nets_to_caffe/main.cpp

Revision: 7aead3cfc4860e72
Author: Davis King
Date: May 22, 2017 (15:11:00 UTC)

Made error message slightly better.

Modified
tools/convert_dlib_nets_to_caffe/main.cpp

Revision: 0fa88f3431233d21
Author: Davis King
Date: May 22, 2017 (15:06:55 UTC)

Changed caffe converter to require the user to specify the input tensor size when the converter is run.

Modified
tools/convert_dlib_nets_to_caffe/main.cpp
tools/convert_dlib_nets_to_caffe/running_a_dlib_model_with_caffe_example.py

Revision: d975568a1a9e41cc
Author: emptyVoid
Date: May 20, 2017 (27:37:40 UTC)

Move shape_predictor_trainer to a separate header (#599) Moved shape_predictor_trainer to its own header in order to support the use of shape_predictor with DLIB_ISO_CPP_ONLY defined (i.e. without threading API wrappers).

Modified
dlib/image_processing.h
dlib/image_processing/shape_predictor.h
dlib/image_processing/shape_predictor_abstract.h
Added
dlib/image_processing/shape_predictor_trainer.h
dlib/image_processing/shape_predictor_trainer_abstract.h

Revision: 43a8742c0823d982
Author: Davis King
Date: May 19, 2017 (16:16:40 UTC)

Dlib and caffe actually do use max pooling layers with padding in the same way. So I just removed the error check that was preventing the conversion from proceeding in that case. I also added more useful output messages about setting input tensor dimensions.

Modified
tools/convert_dlib_nets_to_caffe/main.cpp

Revision: cbeec8729b42008c
Author: Davis King
Date: May 17, 2017 (12:43:32 UTC)

Fixed uninitialized variable in test that caused unreliable test results.

Modified
dlib/test/opt_qp_solver.cpp

Revision: d3fd1a0bc906b749
Author: Davis King
Date: May 16, 2017 (17:14:09 UTC)

Cleanup and also fixed a cmake error when building dlib outside a project.

Modified
dlib/CMakeLists.txt

Revision: 8a628dc5a9c53d8a
Author: tschw
Date: May 16, 2017 (22:47:53 UTC)

Fix installed CMake targets when DLIB_ISO_CPP_ONLY (#595) (#597)

Modified
dlib/CMakeLists.txt

Revision: 82781a9eb9329af9
Author: Davis King
Date: May 16, 2017 (16:50:34 UTC)

yet more print statements

Modified
dlib/test/opt_qp_solver.cpp

Revision: 0ec5f02648fba710
Author: Davis King
Date: May 16, 2017 (05:55:34 UTC)

A test to see more info about what's going weird on appveyor.

Modified
dlib/test/opt_qp_solver.cpp

Revision: fd29101367974642
Author: Davis King
Date: May 15, 2017 (03:12:18 UTC)

More logging messages

Modified
dlib/test/opt_qp_solver.cpp

Revision: 8e0cabe86d7e501d
Author: Davis King
Date: May 14, 2017 (16:07:16 UTC)

A minor change to hopefully reduce inane warnings from visual studio.

Modified
examples/dnn_face_recognition_ex.cpp

Revision: a48bc42b6ba55508
Author: Davis King
Date: May 14, 2017 (15:55:01 UTC)

removed cruft

Modified
dlib/test/makefile

Revision: 4a38ad612a5dae29
Author: elelel
Date: May 14, 2017 (23:52:34 UTC)

Migrate from dlib::scoped_ptr to std::unique_ptr (#593) * Convert unique_ptr * Fix passing unique_ptr as copy by value * Remove scoped_ptr implementation * Fix missed files * Move bool cast into tester macro * Reexport scoped_ptr alias from sockets

Modified
dlib/any/any.h
dlib/any/any_decision_function.h
dlib/any/any_function_impl.h
dlib/any/any_trainer.h
dlib/bayes_utils/bayes_utils.h
dlib/bridge/bridge.h
dlib/bsp/bsp.cpp
dlib/bsp/bsp.h
dlib/gui_widgets/base_widgets.h
dlib/gui_widgets/widgets.cpp
dlib/gui_widgets/widgets.h
dlib/image_loader/png_loader.h
dlib/iosockstream/iosockstream.h
dlib/logger/logger_kernel_1.cpp
dlib/logger/logger_kernel_1.h
dlib/optimization/optimization_bobyqa.h
dlib/server/server_kernel.h
dlib/smart_pointers.h
dlib/smart_pointers/scoped_ptr.h
dlib/sockets/sockets_extensions.cpp
dlib/sockets/sockets_extensions.h
dlib/sockets/sockets_extensions_abstract.h
dlib/sockets/sockets_kernel_1.cpp
dlib/sockets/sockets_kernel_1.h
dlib/sockets/sockets_kernel_2.cpp
dlib/sockets/sockets_kernel_2.h
dlib/sockets/sockets_kernel_abstract.h
dlib/sockstreambuf/sockstreambuf.h
dlib/sockstreambuf/sockstreambuf_abstract.h
dlib/sockstreambuf/sockstreambuf_unbuffered.h
dlib/svm/kkmeans.h
dlib/svm/structural_svm_distributed.h
dlib/test/sockets.cpp
dlib/test/sockets2.cpp
dlib/test/sockstreambuf.cpp
dlib/test/tester.h
dlib/threads/thread_function_extension.h
examples/bayes_net_gui_ex.cpp
examples/sockstreambuf_ex.cpp
Deleted
dlib/smart_pointers/scoped_ptr_abstract.h

Revision: ef0782f1c88c775c
Author: elelel
Date: May 13, 2017 (22:05:52 UTC)

Change type traits from inherited to explicit (#591)

Modified
dlib/geometry/vector.h

Revision: dc1e020634471405
Author: Davis King
Date: May 13, 2017 (10:23:24 UTC)

Added more outputs to unit test error message.

Modified
dlib/test/opt_qp_solver.cpp

Revision: da3e6e946e500700
Author: elelel
Date: May 13, 2017 (18:05:23 UTC)

Replace shared_ptr_thread_safe with std::shared_ptr (#590) * Replace shared_ptr/weak_ptr with stdlib counterparts * Fix ptr usage through tests compilation * Bring back dlib smart ptrs as legacy * Include scoped_ptr directly * Add explanation about smart_ptr deprecation * Replace shared_ptr_thread_safe * Fix missed old include * Removed missed old include

Modified
dlib/gui_core/gui_core_kernel_1.cpp
dlib/gui_core/gui_core_kernel_1.h
dlib/gui_core/gui_core_kernel_2.cpp
dlib/gui_widgets/base_widgets.cpp
dlib/gui_widgets/base_widgets.h
dlib/gui_widgets/drawable.h
dlib/gui_widgets/fonts.cpp
dlib/gui_widgets/fonts.h
dlib/gui_widgets/nativefont.h
dlib/gui_widgets/widgets.cpp
dlib/gui_widgets/widgets.h
dlib/iosockstream/iosockstream.h
dlib/smart_pointers_thread_safe.h
dlib/sockets/sockets_kernel_1.h
dlib/test/gui/main.cpp
dlib/threads/thread_pool_extension.h
dlib/timer/timer.cpp
dlib/timer/timer.h

Revision: f1ba17502aeafe99
Author: elelel
Date: May 12, 2017 (20:40:59 UTC)

Replace shared_ptr/weak_ptr with STL's versions (#588) * Replace shared_ptr/weak_ptr with stdlib counterparts * Fix ptr usage through tests compilation * Bring back dlib smart ptrs as legacy * Include scoped_ptr directly * Add explanation about smart_ptr deprecation

Modified
dlib/any/any.h
dlib/any/any_decision_function.h
dlib/any/any_function.h
dlib/any/any_trainer.h
dlib/bayes_utils/bayes_utils.h
dlib/bridge/bridge.h
dlib/bsp/bsp.cpp
dlib/bsp/bsp.h
dlib/cmd_line_parser/cmd_line_parser_print_1.h
dlib/directed_graph/directed_graph_kernel_1.h
dlib/graph/graph_kernel_1.h
dlib/gui_widgets/base_widgets.h
dlib/gui_widgets/widgets.h
dlib/image_loader/jpeg_loader.h
dlib/image_loader/png_loader.h
dlib/logger/logger_kernel_1.h
dlib/optimization/optimization_bobyqa.h
dlib/serialize.h
dlib/server/server_kernel.h
dlib/smart_pointers.h
dlib/sockets/sockets_extensions.h
dlib/sockets/sockets_kernel_2.h
dlib/sqlite/sqlite.h
dlib/svm/kkmeans.h
dlib/svm/pegasos.h
dlib/svm/structural_svm_distributed.h
dlib/svm/svm_threaded.h
dlib/test/CMakeLists.txt
dlib/test/smart_pointers.cpp
dlib/test/sockstreambuf.cpp
dlib/threads/thread_function_extension.h
dlib/threads/thread_pool_extension.cpp
dlib/threads/thread_pool_extension.h
examples/bayes_net_gui_ex.cpp

Revision: 073194d2bf33b2a5
Author: Davis King
Date: May 07, 2017 (15:40:42 UTC)

Fixed spelling error

Modified
tools/convert_dlib_nets_to_caffe/main.cpp

Revision: 7c5ef62bc9326d82
Author: Davis King
Date: May 07, 2017 (15:12:12 UTC)

Added a note about exporting to XML.

Modified
examples/dnn_introduction_ex.cpp

Revision: dd4d30f3521efe26
Author: Davis King
Date: May 07, 2017 (15:11:52 UTC)

Changed the location of the set_synchronization_file() call so that rerunning the example restarts correctly.

Modified
examples/dnn_introduction2_ex.cpp

Revision: 755c0ac22b15ee88
Author: Davis King
Date: May 07, 2017 (15:08:41 UTC)

Renamed file

Added
tools/convert_dlib_nets_to_caffe/running_a_dlib_model_with_caffe_example.py
Deleted
tools/convert_dlib_nets_to_caffe/dlib_driver.py

Revision: 0a24828d2080d8a8
Author: Davis King
Date: May 07, 2017 (15:07:18 UTC)

Improved example python script

Modified
tools/convert_dlib_nets_to_caffe/dlib_driver.py

Revision: 93ddd177d4241cda
Author: Davis King
Date: May 07, 2017 (13:32:15 UTC)

Added an overload of net_to_xml() that takes a string filename.

Modified
dlib/dnn/utilities.h
dlib/dnn/utilities_abstract.h

Revision: 0deaaacf074903fe
Author: Davis King
Date: May 07, 2017 (13:19:26 UTC)

Changed the XML format output by net_to_xml(). Specifically, the XML tag for affine layers was changed so to use the same conventions as other layers that support convolutional vs fully connected modes.

Modified
dlib/dnn/layers.h

Revision: e326d0c0a08262ec
Author: Davis King
Date: May 07, 2017 (13:17:56 UTC)

Made net_to_xml() output floating point numbers with more digits.

Modified
dlib/dnn/utilities.h

Revision: a950eb8d61bb2530
Author: Davis King
Date: May 07, 2017 (13:16:08 UTC)

Added more comments

Modified
tools/convert_dlib_nets_to_caffe/main.cpp

Revision: d66e5da9d57d2aa0
Author: Davis King
Date: May 07, 2017 (12:57:34 UTC)

Fixed affine_fc and clarified error message.

Modified
tools/convert_dlib_nets_to_caffe/main.cpp

Revision: d73d2d82bb409fb3
Author: Davis King
Date: May 07, 2017 (12:23:35 UTC)

Added missing sig and prelu layer support.

Modified
tools/convert_dlib_nets_to_caffe/main.cpp

Revision: e1dffb71454fee96
Author: Davis King
Date: May 07, 2017 (11:49:19 UTC)

Cleaned up how the output is output.

Modified
tools/convert_dlib_nets_to_caffe/main.cpp

Revision: e414011a9bbd73d1
Author: Davis King
Date: May 07, 2017 (11:26:18 UTC)

Added support for all the other dlib layers that make sense.

Modified
tools/convert_dlib_nets_to_caffe/main.cpp

Revision: b422f960daf58c78
Author: Davis King
Date: May 06, 2017 (11:02:38 UTC)

Added a simple tool to convert dlib model files, which are saved as XML files, to caffe models. Not all layers are supported yet, but it works on the net from the first dlib dnn example program. Will add the rest of the layers soon.

Added
tools/convert_dlib_nets_to_caffe/CMakeLists.txt
tools/convert_dlib_nets_to_caffe/dlib_driver.py
tools/convert_dlib_nets_to_caffe/main.cpp

Revision: b1b5e6de383df644
Author: Davis King
Date: May 06, 2017 (08:46:19 UTC)

Made the attribute_list of the xml parser a little more friendly by allowing you to ask for attributes that don't exist and get a defined behavior (an exception being thrown) rather than it being a contract violation.

Modified
dlib/xml_parser/xml_parser_kernel_1.h
dlib/xml_parser/xml_parser_kernel_interfaces.h

Revision: 140a70ec4fc94561
Author: Davis King
Date: May 05, 2017 (01:42:13 UTC)

Added more comments

Modified
examples/dnn_face_recognition_ex.cpp

Revision: 25cf9e1177db1f08
Author: Jim61C
Date: May 03, 2017 (01:40:04 UTC)

remove enum in function signature to avoid cblas declaration conflicts (#571)

Modified
dlib/matrix/matrix_blas_bindings.h
dlib/matrix/matrix_trsm.h

Revision: a7859342b893164d
Author: Evgeniy Fominov
Date: May 01, 2017 (21:31:36 UTC)

Multiarch installation fix (#567) * fix multiarch install * fix include dir * cleaned up stuff and removed things we don't need anymore

Modified
dlib/CMakeLists.txt
dlib/cmake_utils/dlibConfig.cmake.in

Revision: 16134dee16e1933e
Author: cclough
Date: Apr 30, 2017 (10:48:51 UTC)

Update CMakeLists.txt (#566)

Modified
examples/CMakeLists.txt

Revision: cecc99498a2323bb
Author: Evgeniy Fominov
Date: Apr 29, 2017 (25:39:35 UTC)

ARM NEON SIMD support (#564) * added neon functions * TK1 tests passed * code cleanup * Re-tested on TK1 * improve simd4i * fixed simd4f_bool neon * fix simd8i sse operator <= * restored rsqrt/VSX * fixed simd4f/neon/reciprocal_sqrt

Modified
dlib/simd/simd4f.h
dlib/simd/simd4i.h
dlib/simd/simd_check.h

Revision: 7c55b1ef14be9a97
Author: Davis King
Date: Apr 21, 2017 (06:45:02 UTC)

Added tt::log(), tt::exp(), and tt::log10()

Modified
dlib/dnn/cuda_dlib.cu
dlib/dnn/cuda_dlib.h
dlib/dnn/tensor_tools.cpp
dlib/dnn/tensor_tools.h
dlib/test/dnn.cpp

Revision: f96f0a6d552bf009
Author: Davis King
Date: Apr 21, 2017 (06:15:27 UTC)

Fixed tabbing

Modified
dlib/dnn/tensor_tools.h

Revision: 08eca19334f45ac4
Author: David Seifert
Date: Apr 16, 2017 (20:14:21 UTC)

CMake improvements (#539) * Use GNUInstallDirs to allow changing target directories * Multi-lib distributions need to change the libdir which is only portably possible with `GNUInstallDirs`. The current `LIB_INSTALL_DIR` solution is not portable and not supported upstream by Kitware. * Multi-arch distributions such as Debian and Exherbo need to be able to change the bindir. * Do not install LICENSE.txt * Most distributions do not install license files, as they have all licenses stored in a central repository, in order not to duplicate the same file over and over. * License files do not need to be installed for a piece of software to be licensed under that license.

Modified
dlib/CMakeLists.txt
dlib/cmake_utils/dlib.pc.in

Revision: 4157beda1498593a
Author: Roy Macdonald
Date: Apr 14, 2017 (18:41:22 UTC)

Fixes issue with object named nil that collide with apple's definition. (#537) * Fixes issue with object named nil that collide with apple's definition. * fix nil named objects: changed name to no_parent

Modified
dlib/graph_cuts/min_cut.h
dlib/matrix/lapack/gees.h
dlib/test/tuple.cpp

Revision: 17edc910ea074b59
Author: ernestotapiar
Date: Apr 14, 2017 (17:41:25 UTC)

Corrected typo that generated an erroneus Hessian of Brown's function. (#534)

Modified
dlib/test/optimization_test_functions.cpp

Revision: 8a6bf5db9bc39fd4
Author: Joost van Amersfoort
Date: Apr 07, 2017 (17:02:37 UTC)

Add support for Python3.6 lib search with Cmake (#527) * Add support for Python3.6 lib search with Cmake A recent commit added support for python3.5 lib search with Cmake. This PR extends that to python 3.6. Relevant old commit: https://github.com/davisking/dlib/commit/17a2c75ddffb13e915686803c5e3bf4cc1389a96 * Turn python versions into a list

Modified
dlib/cmake_utils/add_python_module

Revision: 81942f1a2e279806
Author: Davis King
Date: Apr 19, 2017 (18:19:17 UTC)

Added python requirements.txt file for scikit-image

Added
python_examples/requirements.txt

Revision: 8f7170dcdb5139c5
Author: Davis King
Date: Apr 06, 2017 (16:28:08 UTC)

Tweak assert enable/disable behavior so the asserts still come on or off as a function of the release/debug drop down menu when using visual studio's IDE.

Modified
dlib/CMakeLists.txt

Revision: 5739b256a6eb6138
Author: Martijn Courteaux
Date: Apr 07, 2017 (03:41:20 UTC)

Fix asserts, super clean! (#526) * Wether asserts are enabled or not, is now only suggested by dlib, and not longer imposed. The user can override using SET(CACHE FORCE) or command line -DDLIB_ENABLE_ASSERT=ON/OFF anytime. * Fixed missing line in cmake for asserts.

Modified
dlib/CMakeLists.txt

Revision: 77669010b5182f50
Author: Davis King
Date: Apr 06, 2017 (13:07:07 UTC)

Stopped using CMAKE_CXX_FLAGS to set dlib's preprocessor switches and instead now use target_compile_options(). This should avoid weird configuration errors that happen in rare instances on some platforms.

Modified
dlib/CMakeLists.txt

Revision: db665c35d1076ed4
Author: Davis King
Date: Apr 05, 2017 (16:02:26 UTC)

Fixed cmake so openmp is handled properly in visual studio. The change yesterday messed it up and effectively disabled cuda in visual studio. This fixes that.

Modified
dlib/CMakeLists.txt

Revision: dc709769b48049ba
Author: Davis King
Date: Apr 05, 2017 (07:50:20 UTC)

Minor CMake cleanup

Modified
dlib/test/CMakeLists.txt

Revision: f5255d583370c41d
Author: Davis King
Date: Apr 05, 2017 (07:19:00 UTC)

Don't try to use any CUDA stuff when making matlab mex files.

Modified
dlib/matlab/cmake_mex_wrapper

Revision: f4ed7e576481801f
Author: Davis King
Date: Apr 05, 2017 (07:08:32 UTC)

Fixed bad results when using CUDA and the Intel MKL at the same time. This was because of a bug introduced yesterday in the CMake scripts which would accidentally pull in two versions of the OpenMP libraries, the GNU one and the Intel one, but you can't mix them together at the same time.

Modified
dlib/CMakeLists.txt
dlib/cmake_utils/cmake_find_blas.txt

Revision: 3f189157af659cb9
Author: goodloop
Date: Apr 05, 2017 (30:58:15 UTC)

fix unneeded reference for cblas_strsm and cblas_dtrsm when DLIB_USE_BLAS is not defined (#519)

Modified
dlib/matrix/matrix_trsm.h

Revision: 6ead4fdd4cdbcae9
Author: Davis King
Date: Apr 05, 2017 (02:15:39 UTC)

Fixed visual studio errors about openmp compiler flags not being right.

Modified
dlib/CMakeLists.txt

Revision: dbc83cda3b5401e3
Author: Davis King
Date: Apr 05, 2017 (01:47:06 UTC)

Added missing quotes so that cmake works on windows.

Modified
dlib/CMakeLists.txt

Revision: 7836cc0c0b216607
Author: Davis King
Date: Apr 04, 2017 (17:37:38 UTC)

Fixed code not compiling when cuda is disabled.

Modified
dlib/dnn/tensor_tools.cpp

Revision: 1d99d801574d5434
Author: sigbjorn
Date: Apr 04, 2017 (22:28:19 UTC)

Provide cleanup for timer_global_clock singleton, issue #505 (#512) * temporary workaround for python hanging on dlib::shared_ptr_thread_safe<global_clock> when extension-module using dlib is unloaded on windows platform * added some more doc and tests for the new delete_global_clock function. Minor adjustment to singleton pattern to allow easy access to singleton shared ptr * alternate _WIN32 specific solution, with no extra functions nor user-actions needed * removed floating/obsolete delete_global_clock, tab to space * leaving linux code unchanged in static desctructor * cleanup not modified files * align formatting

Modified
dlib/timer/timer.cpp

Revision: 12e38fe71aeed300
Author: Davis King
Date: Apr 04, 2017 (17:18:30 UTC)

Added a tt::inv() for computing matrix inversions on the GPU.

Modified
dlib/CMakeLists.txt
dlib/dnn/tensor_tools.cpp
dlib/dnn/tensor_tools.h
dlib/test/cublas.cpp
Added
dlib/dnn/cusolver_dlibapi.cu
dlib/dnn/cusolver_dlibapi.h

Revision: 154c991285d2c6ff
Author: Davis King
Date: Apr 04, 2017 (11:56:58 UTC)

removed cruft

Modified
dlib/dnn/cuda_utils.h

Revision: d684b7468c8f2bfa
Author: Davis King
Date: Apr 04, 2017 (11:21:19 UTC)

Moved the cuda_data class into its own file, renamed it to cuda_data_ptr, and also pushed all the cuda #includes into a .cpp file.

Modified
dlib/CMakeLists.txt
dlib/dnn/cuda_utils.h
Added
dlib/dnn/cuda_data_ptr.cpp
dlib/dnn/cuda_data_ptr.h

Revision: d0562135ef97eace
Author: Davis King
Date: Apr 04, 2017 (10:30:06 UTC)

Added cusolver_error class.

Modified
dlib/dnn/cuda_errors.h

Revision: c7e95f3b5f375a5b
Author: Davis King
Date: Apr 04, 2017 (10:29:41 UTC)

Added cuda_data, a templated container for GPU memory.

Modified
dlib/dnn/cuda_utils.h

Revision: c191fe1994525a0a
Author: Davis King
Date: Apr 03, 2017 (02:10:19 UTC)

Added support for cuDNN 6

Modified
dlib/dnn/cudnn_dlibapi.cpp

Revision: 91ce4560b9328fb4
Author: Davis King
Date: Apr 02, 2017 (12:31:55 UTC)

fixed spelling error in comment

Modified
dlib/timer/timer_heavy.h

Revision: e4468f6d706476df
Author: Davis King
Date: Apr 02, 2017 (10:03:51 UTC)

Added a version of tt::affine_transform() that operates on a sub-rectangle rather than the entire tensor.

Modified
dlib/dnn/cpu_dlib.cpp
dlib/dnn/cpu_dlib.h
dlib/dnn/cuda_dlib.cu
dlib/dnn/cuda_dlib.h
dlib/dnn/tensor_tools.cpp
dlib/dnn/tensor_tools.h
dlib/test/dnn.cpp

Revision: 4d29d54c03ae914c
Author: Davis King
Date: Mar 30, 2017 (06:43:49 UTC)

Made the title bar show the current image's number.

Modified
tools/imglab/src/metadata_editor.cpp

Revision: dcd6d464fa69c862
Author: marcovzla
Date: Mar 24, 2017 (07:20:33 UTC)

remove miniconda (#500)

Modified
dlib/CMakeLists.txt

Revision: 8f7255877534648a
Author: Davis King
Date: Mar 30, 2017 (03:32:42 UTC)

Fixed the visit_layers_backwards() and visit_layers_backwards_range() routines so they visit layers in the correct order.

Modified
dlib/dnn/core.h

Revision: 8b28b30a98d91f99
Author: Davis King
Date: Mar 27, 2017 (17:00:37 UTC)

Changed from ctrl to alt because otherwise it's easy to accidentally hit ctrl up and jump when you don't meant to while pruning an image list.

Modified
tools/imglab/src/metadata_editor.cpp

Revision: 386305577dc83e18
Author: Davis King
Date: Mar 27, 2017 (16:13:39 UTC)

Changed to ctrl+d since it's easier to press.

Modified
tools/imglab/src/metadata_editor.cpp

Revision: 6154ad414637b54a
Author: Davis King
Date: Mar 27, 2017 (16:11:04 UTC)

Made it so you can remove images by pressing ctrl+r.

Modified
tools/imglab/src/main.cpp
tools/imglab/src/metadata_editor.cpp

Revision: 22568dfb174282f5
Author: Davis King
Date: Mar 24, 2017 (05:15:43 UTC)

Made it more obvious that this file is a cmake tutorial. Also added a few more comments about how to use cmake.

Modified
examples/CMakeLists.txt

Revision: e0aad42281e637fa
Author: Davis King
Date: Mar 22, 2017 (11:59:53 UTC)

merged

Modified
dlib/optimization/optimization_solve_qp_using_smo.h
dlib/optimization/optimization_solve_qp_using_smo_abstract.h

Revision: 465eff072b9d31fa
Author: Davis King
Date: Mar 22, 2017 (11:59:06 UTC)

Added another code path inside solve_qp_box_constrained_blockdiag() that is much faster when the off-diagonal vectors are all simple multiples of the ones_matrix().

Modified
dlib/optimization/optimization_solve_qp_using_smo.h
dlib/test/opt_qp_solver.cpp

Revision: a1458a5153637fe1
Author: Davis King
Date: Mar 22, 2017 (08:49:12 UTC)

Added missing requires clause.

Modified
dlib/optimization/optimization_solve_qp_using_smo.h
dlib/optimization/optimization_solve_qp_using_smo_abstract.h

Revision: 76cb31c027c18564
Author: Davis King
Date: Mar 22, 2017 (07:00:27 UTC)

Made the mex wrapper deal with cell arrays that have null elements.

Modified
dlib/matlab/mex_wrapper.cpp

Revision: 26b9c3127cecd89d
Author: Davis King
Date: Mar 21, 2017 (05:50:01 UTC)

Removed unneeded code.

Modified
dlib/optimization/optimization_solve_qp_using_smo.h

Revision: bbcdc96dc4fb68e2
Author: Davis King
Date: Mar 21, 2017 (17:05:21 UTC)

Added age and gender fields to image metadata.

Modified
dlib/data_io/image_dataset_metadata.cpp
dlib/data_io/image_dataset_metadata.h

Revision: d4bf051a4dd87384
Author: ebroglio
Date: Mar 18, 2017 (21:54:46 UTC)

dets cleared twice in evaluate_detectors of scan_fhog_pyramid.h (#487) already cleared at the beginning

Modified
dlib/image_processing/scan_fhog_pyramid.h

Revision: b11d0851a3019b42
Author: ebroglio
Date: Mar 18, 2017 (21:17:52 UTC)

remove unused variable in edge_list_graphs.h (#486)

Modified
dlib/graph_utils/edge_list_graphs.h

Revision: d6e70cc1c54f7f57
Author: Davis King
Date: Mar 20, 2017 (17:10:36 UTC)

Fixed error in pyramid_down<2> that caused the output image to be a little funny looking in some cases.

Modified
dlib/image_transforms/image_pyramid.h

Revision: 29e864121dcf27dc
Author: Davis King
Date: Mar 20, 2017 (12:41:22 UTC)

Added solve_qp_box_constrained_blockdiag()

Modified
dlib/optimization/optimization_solve_qp_using_smo.h
dlib/optimization/optimization_solve_qp_using_smo_abstract.h
dlib/test/opt_qp_solver.cpp

Revision: d290c16ba7d36831
Author: Davis King
Date: Mar 18, 2017 (09:00:16 UTC)

Fixed double delete

Modified
dlib/tokenizer/tokenizer_kernel_1.cpp

Revision: 7100036ec519f6aa
Author: Davis King
Date: Mar 16, 2017 (07:30:02 UTC)

Removed use of const_temp_matrix here because it prevents binding to BLAS.

Modified
dlib/optimization/optimization_solve_qp_using_smo.h

Revision: 05aded11b02710a3
Author: Davis King
Date: Mar 09, 2017 (15:53:35 UTC)

More possible intel arch strings.

Modified
dlib/cmake

Revision: f7969146a5e459cd
Author: Davis King
Date: Mar 09, 2017 (15:14:42 UTC)

Fixed cmake file to correctly enable C++11 by default.

Modified
tools/htmlify/CMakeLists.txt

Revision: c2286914c854bf5a
Author: Davis King
Date: Mar 07, 2017 (12:19:46 UTC)

Record last changeset and set PATCH version to 99

Modified
dlib/CMakeLists.txt
docs/.logger_revnum

Revision: 74c4985dfb28f1b9
Author: Davis King
Date: Mar 07, 2017 (12:18:27 UTC)

Created release v19.4

Modified
dlib/CMakeLists.txt

Revision: bbd3be9b7b0a93f8
Author: Davis King
Date: Mar 05, 2017 (10:36:26 UTC)

Fixed a slow memory leak that occurred when using cuDNN and tensors were created.

Modified
dlib/dnn/cudnn_dlibapi.cpp

Revision: d4aef27f3c1e3273
Author: Davis King
Date: Mar 04, 2017 (02:58:55 UTC)

Upped imglab version number

Modified
tools/imglab/src/main.cpp

Revision: 2f4215c6f8071fb6
Author: Davis King
Date: Mar 04, 2017 (02:58:40 UTC)

Made the image_display widget draw mouse cross-hairs when the user holds shift.

Modified
dlib/gui_widgets/widgets.cpp
dlib/gui_widgets/widgets.h

Revision: 90c442908635c04c
Author: Davis King
Date: Mar 03, 2017 (11:03:27 UTC)

Added missing const

Modified
dlib/optimization/optimization_solve_qp_using_smo.h
dlib/optimization/optimization_solve_qp_using_smo_abstract.h

Revision: 03a898e940780408
Author: Davis King
Date: Mar 02, 2017 (00:33:56 UTC)

made test slightly more robust

Modified
dlib/test/cca.cpp

Revision: b368c8702035a874
Author: Davis King
Date: Mar 01, 2017 (04:17:35 UTC)

Set this because CMake search for python is wacked on ubuntu and won't look for new python otherwise.

Modified
dlib/cmake_utils/add_python_module

Revision: 647e6aa8a63c8cfe
Author: Davis King
Date: Mar 01, 2017 (00:26:22 UTC)

clarified documentation

Modified
tools/python/src/object_detection.cpp

Revision: d41c70ccd4ed2c8e
Author: Davis King
Date: Feb 28, 2017 (01:01:51 UTC)

Don't give -std=c++11 to nvcc when compiling with visual studio. This avoids a compiler warning.

Modified
dlib/CMakeLists.txt

Revision: 56b12b484030b01c
Author: Davis King
Date: Feb 28, 2017 (00:05:25 UTC)

Switched cmake link names to dlib::dlib

Modified
dlib/cmake_utils/add_python_module
tools/htmlify/CMakeLists.txt
tools/imglab/CMakeLists.txt

Revision: fa4e89353d66184b
Author: Davis King
Date: Feb 28, 2017 (-01:43:32 UTC)

Made example cmake use dlib::dlib link name. Also made the installed cmake config for dlib enable C++11.

Modified
dlib/CMakeLists.txt
dlib/cmake_utils/dlibConfig.cmake.in
examples/CMakeLists.txt

Revision: 6d55f8213d202cda
Author: Davis King
Date: Feb 27, 2017 (14:02:39 UTC)

removed unneeded cruft

Modified
dlib/CMakeLists.txt

Revision: 81746022a7a46f7a
Author: Davis King
Date: Feb 27, 2017 (13:44:30 UTC)

Fixed a few cmake errors, one regarding CUDA compilation and another about the all/source.cpp test compile.

Modified
dlib/CMakeLists.txt

Revision: 5e058a6abc25cf71
Author: Alain Vaucher
Date: Feb 27, 2017 (19:45:05 UTC)

Delete function that has now become unnecessary

Modified
dlib/CMakeLists.txt

Revision: 4e47077557e3c99b
Author: Alain Vaucher
Date: Feb 27, 2017 (19:23:28 UTC)

Change minimum CMake version that supports the introduced features

Modified
dlib/CMakeLists.txt
dlib/cmake
dlib/cmake_utils/add_global_compiler_switch.cmake
dlib/cmake_utils/tell_visual_studio_to_use_static_runtime.cmake
dlib/cmake_utils/test_for_cpp11/CMakeLists.txt
dlib/cmake_utils/test_for_cuda/CMakeLists.txt
dlib/cmake_utils/test_for_cudnn/CMakeLists.txt
dlib/cmake_utils/use_cpp_11.cmake
dlib/external/cblas/CMakeLists.txt
dlib/test/CMakeLists.txt
dlib/test/blas_bindings/CMakeLists.txt
dlib/test/tools/CMakeLists.txt
examples/CMakeLists.txt
tools/htmlify/CMakeLists.txt
tools/imglab/CMakeLists.txt
tools/python/CMakeLists.txt

Revision: 0c8bb36a6cbb1a11
Author: Alain Vaucher
Date: Feb 27, 2017 (19:13:44 UTC)

Simplifying file 'cmake' now that include directories are set automatically

Modified
dlib/cmake

Revision: 37139fcf88454d1e
Author: Alain Vaucher
Date: Feb 27, 2017 (19:09:40 UTC)

Only specify include directories for dlib_shared if it is built

Modified
dlib/CMakeLists.txt

Revision: 157aeb69df697a90
Author: Alain Vaucher
Date: Feb 27, 2017 (19:01:22 UTC)

Add target_include_directories for build interface and for optional libraries

Modified
dlib/CMakeLists.txt

Revision: 325fe9637e25d3a3
Author: Alain Vaucher
Date: Feb 27, 2017 (18:48:51 UTC)

Set the include directories automatically for targets that depend on imported dlib

Modified
dlib/CMakeLists.txt

Revision: 5f998dbe519f10e7
Author: Evgeniy Fominov
Date: Feb 27, 2017 (17:34:10 UTC)

Allow MINGW OpenBLAS usage (#455)

Modified
dlib/cmake_utils/cmake_find_blas.txt

Revision: f6bca6912868edee
Author: Davis King
Date: Feb 25, 2017 (01:42:35 UTC)

clarified spec

Modified
dlib/filtering/kalman_filter.h
dlib/filtering/kalman_filter_abstract.h

Revision: 3994ddf2d51dbe51
Author: Ehsan Azar
Date: Feb 25, 2017 (-05:32:07 UTC)

add set_state to kalman filter for the case we know the initial state (#246)

Modified
dlib/filtering/kalman_filter.h
dlib/filtering/kalman_filter_abstract.h

Revision: 4ce0a89935fc95bc
Author: Adam Geitgey
Date: Feb 22, 2017 (02:23:21 UTC)

Remove extra semicolons (#446)

Modified
python_examples/face_recognition.py

Revision: 5e707bcee50e10f2
Author: Davis King
Date: Feb 21, 2017 (17:02:45 UTC)

Record last changeset and set PATCH version to 99

Modified
dlib/CMakeLists.txt
docs/.logger_revnum

Revision: 26cdc89f4795a1f9
Author: Davis King
Date: Feb 21, 2017 (17:01:28 UTC)

Created release v19.3

Modified
dlib/CMakeLists.txt

Revision: 35b3f33e4e315fdd
Author: Davis King
Date: Feb 20, 2017 (15:45:36 UTC)

clarified spec

Modified
dlib/dnn/loss_abstract.h

Revision: 1b1e79fce55c15f9
Author: Davis King
Date: Feb 18, 2017 (18:23:16 UTC)

Made tests more robust and accurate

Modified
dlib/test/dnn.cpp

Revision: e097067e9abc21a1
Author: Davis King
Date: Feb 18, 2017 (14:48:58 UTC)

Changed cmake script to avoid warnings from visual studio.

Modified
dlib/CMakeLists.txt

Revision: 68afcc5bf7136fb2
Author: Davis King
Date: Feb 18, 2017 (14:20:59 UTC)

Fixed syntax error in cmake script.

Modified
dlib/CMakeLists.txt

Revision: fd58d09f23498b8d
Author: Davis King
Date: Feb 18, 2017 (10:33:09 UTC)

Don't build face recognition example if GUI support isn't enabled.

Modified
examples/CMakeLists.txt

Revision: 34c32a7967e36d51
Author: Davis King
Date: Feb 16, 2017 (02:35:43 UTC)

Fixed error in find_gap_between_convex_hulls() test

Modified
dlib/test/opt_qp_solver.cpp

Revision: 6b842e23f51904ea
Author: Davis King
Date: Feb 15, 2017 (16:31:33 UTC)

Added some comments about vector calculus.

Modified
dlib/dnn/loss.h

Revision: 11be214c3dc7736f
Author: Davis King
Date: Feb 15, 2017 (14:41:14 UTC)

merged

Modified
dlib/CMakeLists.txt

Revision: 6016a47dbe6d5b2d
Author: Kyle McDonald
Date: Feb 13, 2017 (08:03:37 UTC)

remove anaconda from X11_INCLUDE_DIR. closes #437 (#438)

Modified
dlib/CMakeLists.txt

Revision: 3796069f8aa8b5bb
Author: Davis King
Date: Feb 15, 2017 (12:06:03 UTC)

Added find_gap_between_convex_hulls()

Modified
dlib/optimization/optimization_solve_qp_using_smo.h
dlib/optimization/optimization_solve_qp_using_smo_abstract.h
dlib/test/opt_qp_solver.cpp

Revision: ead522d287a8510f
Author: Davis King
Date: Feb 12, 2017 (15:53:02 UTC)

cleanup

Modified
examples/dnn_face_recognition_ex.cpp

Revision: 860e151c61ac017c
Author: Davis King
Date: Feb 12, 2017 (15:51:50 UTC)

Fixed silly error in code.

Modified
dlib/image_processing/full_object_detection.h

Revision: 8aeefae78e1ecd5d
Author: Davis King
Date: Feb 12, 2017 (15:38:17 UTC)

Added a python version of the DNN face recognition example program.

Added
python_examples/face_recognition.py

Revision: 3709f82c1aac12a9
Author: Davis King
Date: Feb 12, 2017 (15:37:18 UTC)

Added a python interface to the face recognition DNN model.

Modified
tools/python/CMakeLists.txt
tools/python/src/dlib.cpp
Added
tools/python/src/face_recognition.cpp

Revision: 9d2a789665221e5f
Author: Davis King
Date: Feb 12, 2017 (11:47:49 UTC)

Make sure fPIC gets propagated to nvcc in all cases.

Modified
dlib/CMakeLists.txt
dlib/cmake_utils/add_python_module

Revision: e6d174d1eb01d2fd
Author: Davis King
Date: Feb 12, 2017 (11:03:40 UTC)

Made full_object_detection comparable via operator==

Modified
dlib/image_processing/full_object_detection.h
dlib/image_processing/full_object_detection_abstract.h

Revision: 77ba01f6b78eaeba
Author: Davis King
Date: Feb 12, 2017 (08:28:42 UTC)

Avoid crashing visual studio

Modified
examples/CMakeLists.txt

Revision: e00f763861885c02
Author: Davis King
Date: Feb 11, 2017 (12:07:51 UTC)

Disable another visual studio warning.

Modified
dlib/algs.h

Revision: 0225d8a21de6b546
Author: Davis King
Date: Feb 11, 2017 (11:45:22 UTC)

Added try/catch block to main

Modified
examples/dnn_face_recognition_ex.cpp

Revision: 79f97bbf6fdf9d50
Author: Davis King
Date: Feb 11, 2017 (10:36:24 UTC)

fixed grammar in comment

Modified
examples/dnn_face_recognition_ex.cpp

Revision: fc4e811c9def5e51
Author: Davis King
Date: Feb 11, 2017 (10:24:00 UTC)

clarified metric learning loss

Modified
dlib/dnn/loss_abstract.h

Revision: 820d899477e298c4
Author: Davis King
Date: Feb 11, 2017 (09:52:47 UTC)

Added face recognition example

Modified
examples/CMakeLists.txt
examples/dnn_metric_learning_on_images_ex.cpp
Added
examples/dnn_face_recognition_ex.cpp
examples/faces/bald_guys.jpg

Revision: 06845769b55af603
Author: Davis King
Date: Feb 11, 2017 (09:47:44 UTC)

Cleaned up loss_metric_ code a little

Modified
dlib/dnn/loss.h
dlib/dnn/loss_abstract.h

Revision: 3984c9a36e8f0429
Author: Davis King
Date: Feb 11, 2017 (07:06:46 UTC)

Added roc_point and compute_roc_curve().

Modified
dlib/statistics/lda.h
dlib/statistics/lda_abstract.h

Revision: b6b46aeecc8de4f5
Author: Davis King
Date: Feb 10, 2017 (15:35:46 UTC)

Fixed incorrect comment.

Modified
dlib/dnn/trainer.h

Revision: 86642a2d6d828ff1
Author: Davis King
Date: Feb 09, 2017 (07:38:39 UTC)

Minor cleanup

Modified
examples/dnn_metric_learning_on_images_ex.cpp

Revision: 14fda140fac5b6a7
Author: Davis King
Date: Feb 08, 2017 (17:53:55 UTC)

Made network smaller.

Modified
examples/dnn_metric_learning_on_images_ex.cpp

Revision: 8762abd86425a327
Author: Dennis Francis
Date: Feb 07, 2017 (08:52:39 UTC)

feature_addition : Mean squared loss layer for multiple output (#404) (#427) * feature_addition : Mean squared loss layer for multiple output (#404) * Added loss_mean_squared_multioutput layer to support multiple outputs. * Also added a corresponding test case to test a single variable regression with multiple outputs. * Added error checks on truth argument Added assert statements to check that truth argument in compute_loss_value_and_gradient() method contains matrices of correct dimension relative to the output tensor's size. Also the requirements on argument truth to the abstract documentation.

Modified
dlib/dnn/loss.h
dlib/dnn/loss_abstract.h
dlib/test/dnn.cpp

Revision: f56ee495ec1e1817
Author: David Miller
Date: Feb 01, 2017 (10:58:40 UTC)

GCC/Clang compatible SIMD code ./dlib/simd/simd**_vec.h (#414) * GCC/Clang compatible vector extension SIMD code * Minimal modifications to dlib for the simd_vec code to work, a few include changes and ifdefs * Changed tabbing to spaces * Allow type inference to binary ops on different types of same size * Added cmake option USE_AUTO_VECTOR, and fixed up preprocessor checks. It is required to build with gcc/clang auto vectorization * Changed to intrinsic version due to poor auto vectorization results. The simd8*_vec are just copies of the C code right now. * Removed _vec variants, added to existing defines. simd_check.h back in place and removed from dlib/simd.h

Modified
dlib/cmake
dlib/image_transforms/fhog.h
dlib/simd/simd4f.h
dlib/simd/simd4i.h
dlib/simd/simd8f.h
dlib/simd/simd_check.h

Revision: 4952b019167b9caa
Author: Davis King
Date: Jan 30, 2017 (10:18:39 UTC)

Made alias_tensor usable when it is const.

Modified
dlib/dnn/tensor.h
dlib/dnn/tensor_abstract.h

Revision: 73d5520ae19998ab
Author: Davis King
Date: Jan 30, 2017 (06:03:31 UTC)

Made dlib::thread_pool use std::thread and join on the threads in thread_pool's destructor. The previous implementation used dlib's global thread pooling to allocate threads to dlib::thread_pool, however, this sometimes caused annoying behavior when used as part of a MATLAB mex file.

Modified
dlib/threads/thread_pool_extension.cpp
dlib/threads/thread_pool_extension.h

Revision: e02b23ca0750aa25
Author: Davis King
Date: Jan 30, 2017 (05:56:47 UTC)

Made global thread pool shutdown not attempted unless the thread pool was already enabled. This also makes the global destruction order a little more deterministic.

Modified
dlib/threads/threads_kernel_shared.cpp

Revision: 9ed49aea6d41b247
Author: Davis King
Date: Jan 30, 2017 (04:56:06 UTC)

Made matrix literal assignment faster for column major matrices.

Modified
dlib/matrix/matrix.h

Revision: fca139c1d34b3c6e
Author: Davis King
Date: Jan 25, 2017 (01:59:08 UTC)

Fixed documentation

Modified
tools/python/src/shape_predictor.cpp

Revision: 56720f3015d727b2
Author: Daniel Crispell
Date: Jan 24, 2017 (14:11:30 UTC)

add support for loading of RGBA JPEG images (#409)

Modified
dlib/image_loader/jpeg_loader.cpp
dlib/image_loader/jpeg_loader.h

Revision: 27e0fc69d919bf54
Author: Davis King
Date: Jan 22, 2017 (06:32:27 UTC)

merged

Modified
examples/dnn_introduction2_ex.cpp
tools/imglab/README.txt

Revision: 7aa428cdfb3edb2d
Author: RangerUFO
Date: Jan 22, 2017 (31:36:40 UTC)

Fix comments typo in dnn_introduction2_ex (#405)

Modified
examples/dnn_introduction2_ex.cpp

Revision: c17082f59fe25809
Author: Frank
Date: Jan 16, 2017 (06:47:06 UTC)

Fix imglab readme typo in cd path (#400)

Modified
tools/imglab/README.txt

Revision: 92594614f3de742b
Author: Davis King
Date: Jan 22, 2017 (05:25:29 UTC)

Added comments about test_one_step()

Modified
examples/dnn_introduction2_ex.cpp

Revision: df6d88905db8d270
Author: Davis King
Date: Jan 22, 2017 (05:25:06 UTC)

Added test_one_step() to the dnn_trainer. This allows you to do automatic early stopping based on observing the loss on held out data.

Modified
dlib/dnn/trainer.h
dlib/dnn/trainer_abstract.h

Revision: 13935a74049b696b
Author: Davis King
Date: Jan 21, 2017 (16:26:15 UTC)

Always compile dnn code.

Modified
dlib/CMakeLists.txt

Revision: c80e888bdac79aa4
Author: Stefan Schweter
Date: Jan 08, 2017 (21:46:35 UTC)

Made matrix2 test more robust on ARM64 (#394)

Modified
dlib/test/matrix2.cpp

Revision: 8cba3cbdd468dbc8
Author: Davis King
Date: Jan 09, 2017 (02:14:20 UTC)

Made sure cmake config file pulls in dependent include folders.

Modified
dlib/cmake_utils/dlibConfig.cmake.in

Revision: 7be4ff22448d3a93
Author: Davis King
Date: Jan 06, 2017 (11:12:54 UTC)

Only turn off CUDA_PROPAGATE_HOST_FLAGS on OS X since that's the only place that really needs it off.

Modified
dlib/CMakeLists.txt

Revision: 450b23e56c3a9f10
Author: ernestotapiar
Date: Jan 06, 2017 (04:04:41 UTC)

cmake script to suppress randlib warnings about *.a having no symbols on MacOSX (#390) * cmake script to suppress randlib warnings about *.a having no symbols on MacOSX * Moved script code into the main CMakeLists.txt file to suppress the superfluous ranlib warnings all the time.

Modified
dlib/CMakeLists.txt

Revision: b28ea90fa729da6c
Author: Davis King
Date: Jan 04, 2017 (12:19:31 UTC)

Changed to avoid linker errors on some compilers.

Modified
dlib/pixel.h

Revision: 17c7c2219342a49a
Author: Davis King
Date: Jan 03, 2017 (01:35:32 UTC)

Initialized exception_ptr since some systems, incorrectly, don't initialize it automatically.

Modified
dlib/dnn/trainer.h

Revision: 253dfed88be54577
Author: rquk
Date: Jan 02, 2017 (18:08:03 UTC)

Fixed issue with uninitialised variables in thread_pool_extension. (#386) * Fixed issue with uninitialised variables. There are 2 places where std::exception_ptr eptr is not initialised. * running_gradient.h needs to qualify erfc with 'std::' to avoid compilation error. Found when compiling dnn_mmod_face_detection_ex.cpp with RadStudio and Clang compiler.

Modified
dlib/statistics/running_gradient.h
dlib/threads/thread_pool_extension.cpp
dlib/threads/thread_pool_extension.h

Revision: f88e2a0430a03561
Author: Davis King
Date: Jan 04, 2017 (04:10:13 UTC)

Fixed cmake script so that nvcc gets the correct compiler options sent to it (in particular on mac os x, where this flag needs to be set this way for it to work in some cases).

Modified
dlib/CMakeLists.txt

Revision: ff61b258c75b289c
Author: Davis King
Date: Dec 27, 2016 (04:33:41 UTC)

Made pixel_traits use constexpr everywhere to avoid compiler errors in newer compilers.

Modified
dlib/gui_core/gui_core_kernel_1.h
dlib/gui_core/gui_core_kernel_2.h
dlib/pixel.h

Revision: a340e4781e58c6e1
Author: Stefan Schweter
Date: Dec 24, 2016 (03:09:12 UTC)

Added new test case for split method (unicode non-breaking space) (#374)

Modified
dlib/test/string.cpp

Revision: 2e7eb3789277ac0a
Author: Davis King
Date: Dec 26, 2016 (03:56:40 UTC)

Made the dlib shared library build dependent on the static library build. This is because some build systems seem to mess up the parallel build of these two things and sometimes rebuild and potentially clobber object files during the parallel build. I haven't seen this result in a problem, but the race condition does seem to exist in some build systems. So this should force the two top level targets to be build sequentially rather than in parallel, thus avoiding any possible race condition.

Modified
dlib/CMakeLists.txt

Revision: a0f414b612966b53
Author: Davis King
Date: Dec 25, 2016 (07:32:48 UTC)

fixed spelling error in comment

Modified
dlib/dnn/trainer.h

Revision: 457530e2888669e8
Author: Davis King
Date: Dec 23, 2016 (05:12:12 UTC)

Added matlab_object to the mex wrapper. Now you can have parameters that are arbitrary matlab objects.

Modified
dlib/matlab/call_matlab.h
dlib/matlab/example_mex_function.cpp
dlib/matlab/mex_wrapper.cpp

Revision: 1ea53fefe15fbd03
Author: Davis King
Date: Dec 22, 2016 (15:43:50 UTC)

Removed C++11 check here since it's now redundant with the checks in algs.h. Also, the check doesn't work correctly in visual studio since visual studio doesn't define __cplusplus to 201103 even though the current version ostensibly supports C++11.

Modified
dlib/all/source.cpp

Revision: f003087ebdd79225
Author: Juha Reunanen
Date: Dec 20, 2016 (15:35:13 UTC)

Minor documentation fixes (#368)

Modified
dlib/image_transforms/random_cropper_abstract.h

Revision: 917332ad117dac01
Author: Davis E. King
Date: Dec 19, 2016 (10:14:49 UTC)

Merge pull request #365 from reunanen/fix-363 Fix #363 by not setting CUDA_HOST_COMPILER when targeting Visual Studio

Modified
dlib/CMakeLists.txt

Revision: cc6fec145c693d78
Author: Juha Reunanen
Date: Dec 19, 2016 (21:02:27 UTC)

Set CUDA_HOST_COMPILER when not targeting Visual Studio

Modified
dlib/CMakeLists.txt

Revision: fdf84afc2cc22701
Author: Juha Reunanen
Date: Dec 19, 2016 (18:10:38 UTC)

Workaround for #363: do not set CUDA_HOST_COMPILER for the CUDA test

Modified
dlib/CMakeLists.txt

Revision: fe39427ad616dd3a
Author: Juha Reunanen
Date: Dec 19, 2016 (19:07:43 UTC)

Problem: Visual Studio linker errors resulting from mixed /MT and /MD settings Solution: don't set CUDA_PROPAGATE_HOST_FLAGS to OFF when using Visual Studio

Modified
dlib/CMakeLists.txt

Revision: 5821cafa67ecc8f6
Author: Davis King
Date: Dec 18, 2016 (18:35:25 UTC)

Changed build order to see if it prevents travis from crashing.

Modified
examples/CMakeLists.txt

Revision: 0d9340beee693521
Author: Davis King
Date: Dec 18, 2016 (15:52:45 UTC)

Minor improvement to example

Modified
examples/dnn_metric_learning_on_images_ex.cpp

Revision: 2088fe75c0c744af
Author: Davis King
Date: Dec 18, 2016 (08:20:37 UTC)

more cleanup

Modified
examples/dnn_metric_learning_on_images_ex.cpp

Revision: 1c3bc4eec6e9e184
Author: Davis King
Date: Dec 18, 2016 (08:10:13 UTC)

Improved example

Modified
examples/dnn_metric_learning_on_images_ex.cpp

Revision: 7e33779c306dec13
Author: Davis King
Date: Dec 17, 2016 (15:41:36 UTC)

Finished the more complex metric learning example and added some example data.

Modified
examples/dnn_metric_learning_on_images_ex.cpp
Added
examples/johns/John_Salley/000179_02159509.jpg
examples/johns/John_Salley/000183_02159543.jpg
examples/johns/John_Salley/000186_02159346.jpg
examples/johns/John_Salley/000189_02159361.jpg
examples/johns/John_Salley/000190_02159501.jpg
examples/johns/John_Salley/000192_02159531.jpg
examples/johns/John_Salley/000194_02159572.jpg
examples/johns/John_Salley/000197_02159322.jpg
examples/johns/John_Salley/000197_02159525.jpg
examples/johns/John_Salley/000198_02159470.jpg
examples/johns/John_Salley/000200_02159354.jpg
examples/johns/John_Savage/000264_01099001.jpg
examples/johns/John_Savage/000274_01099061.jpg
examples/johns/John_Savage/000277_01099000.jpg
examples/johns/John_Savage/000289_01099139.jpg
examples/johns/John_Savage/000290_01099067.jpg
examples/johns/John_Savage/000290_01099090.jpg
examples/johns/John_Savage/000291_01099023.jpg
examples/johns/John_Savage/000291_01099214.jpg
examples/johns/John_Savage/000293_01099081.jpg
examples/johns/John_Savage/000296_01099007.jpg
examples/johns/John_Savage/000299_01099008.jpg
examples/johns/John_Schneider/000288_00925786.jpg
examples/johns/John_Schneider/000302_00925785.jpg
examples/johns/John_Schneider/000307_00925823.jpg
examples/johns/John_Schneider/000325_00925954.jpg
examples/johns/John_Schneider/000326_00925765.jpg
examples/johns/John_Schneider/000326_00926089.jpg
examples/johns/John_Schneider/000326_00926128.jpg
examples/johns/John_Schneider/000326_00926139.jpg
examples/johns/John_Schneider/000329_00925859.jpg
examples/johns/John_Schneider/000329_00925963.jpg
examples/johns/John_Schneider/000331_00926012.jpg
examples/johns/John_Shimkus/000373_03228153.jpg
examples/johns/John_Shimkus/000375_03227651.jpg
examples/johns/John_Shimkus/000376_02340068.jpg
examples/johns/John_Shimkus/000378_02340151.jpg
examples/johns/John_Shimkus/000378_03227610.jpg
examples/johns/John_Shimkus/000383_03227939.jpg
examples/johns/John_Shimkus/000385_03227766.jpg
examples/johns/John_Shimkus/000388_03227773.jpg
examples/johns/John_Shimkus/000390_03227666.jpg
examples/johns/John_Shimkus/000394_02340150.jpg
examples/johns/John_Shimkus/000396_03227722.jpg
examples/johns/John_Simm/000288_00470387.jpg
examples/johns/John_Simm/000297_00470170.jpg
examples/johns/John_Simm/000300_00470148.jpg
examples/johns/John_Simm/000304_00470122.jpg
examples/johns/John_Simm/000305_00470162.jpg
examples/johns/John_Simm/000305_00470717.jpg
examples/johns/John_Simm/000306_00470222.jpg
examples/johns/John_Simm/000306_00470223.jpg
examples/johns/John_Simm/000309_00470287.jpg
examples/johns/John_Simm/000310_00470421.jpg
examples/johns/John_Simm/000310_00470511.jpg

Revision: 70cd167f83ef7711
Author: Davis King
Date: Dec 17, 2016 (11:46:39 UTC)

Improved example

Modified
examples/dnn_metric_learning_ex.cpp

Revision: 3254c571384e1834
Author: Davis King
Date: Dec 17, 2016 (11:11:18 UTC)

Cleaned up example

Modified
examples/dnn_metric_learning_ex.cpp

Revision: 96e3596b9d8c79a0
Author: Davis King
Date: Dec 17, 2016 (10:08:58 UTC)

fixed grammar

Modified
dlib/dnn/loss_abstract.h

Revision: b2164124cf92daa0
Author: Davis King
Date: Dec 17, 2016 (09:29:29 UTC)

Added another metric learning example

Modified
examples/CMakeLists.txt
examples/dnn_metric_learning_ex.cpp
Added
examples/dnn_metric_learning_on_images_ex.cpp

Revision: 6986f126dc8e8e6d
Author: Davis King
Date: Dec 17, 2016 (08:37:01 UTC)

Made get_net() sync to disk if the disk date is out of date. This way, when using train_one_step(), you will get the behavior of automatic disk syncs at the end of training.

Modified
dlib/dnn/trainer.h
dlib/dnn/trainer_abstract.h

Revision: 5d5249551797d05f
Author: Davis King
Date: Dec 17, 2016 (05:56:27 UTC)

Added metric learning example

Modified
examples/CMakeLists.txt
Added
examples/dnn_metric_learning_ex.cpp

Revision: bfe738d443233a60
Author: Davis King
Date: Dec 17, 2016 (05:45:55 UTC)

clarified spec

Modified
dlib/dnn/trainer_abstract.h

Revision: 0559cc5e7bbda8e3
Author: Davis King
Date: Dec 17, 2016 (05:30:46 UTC)

Added docs and cleaned up code slightly.

Modified
dlib/dnn/loss.h
dlib/dnn/loss_abstract.h

Revision: ee835f2b30370b1f
Author: Davis King
Date: Dec 17, 2016 (04:45:03 UTC)

Removed loss_metric_hardish_

Modified
dlib/dnn/loss.h

Revision: 25c22f567aebab2e
Author: Davis King
Date: Dec 15, 2016 (11:06:37 UTC)

Allow enqueueing to a pipe from rvalues.

Modified
dlib/pipe/pipe_kernel_1.h
dlib/pipe/pipe_kernel_abstract.h

Revision: d6a6124156e4293b
Author: Davis King
Date: Dec 15, 2016 (04:07:04 UTC)

Fixed incorrect mex file name being shown in the generated class code.

Modified
dlib/matlab/CMakeLists.txt
dlib/matlab/cmake_mex_wrapper
dlib/matlab/mex_wrapper.cpp

Revision: f2d66cf532a73125
Author: Davis King
Date: Dec 14, 2016 (10:09:53 UTC)

Improved how cmake sets up clang and cuda. This is basically to work around partial C++11 support and funny cmake behavior of clang on OS X.

Modified
dlib/CMakeLists.txt
dlib/cmake_utils/use_cpp_11.cmake

Revision: 7c9b777fbd84469a
Author: Davis King
Date: Dec 14, 2016 (10:08:45 UTC)

Made this test try to enable C++11 via the compiler flag.

Modified
dlib/cmake_utils/test_for_cpp11/CMakeLists.txt

Revision: 3ad63d456a997bb5
Author: Davis King
Date: Dec 14, 2016 (04:51:03 UTC)

Updated C++11 enabling script to work around some kind of bug in cmake related to new versions of clang on OSX, without this extra statement C++11 wasn't being enabled.

Modified
dlib/cmake_utils/use_cpp_11.cmake

Revision: e91efa76ed9645ba
Author: Davis King
Date: Dec 13, 2016 (04:57:07 UTC)

Suppressed cmake warning

Modified
dlib/CMakeLists.txt

Revision: e6021de44315bd86
Author: Davis King
Date: Dec 13, 2016 (04:36:55 UTC)

Set set(CMAKE_CXX_STANDARD_REQUIRED YES)

Modified
dlib/cmake_utils/use_cpp_11.cmake

Revision: f975dd4cc28ce392
Author: Davis King
Date: Dec 10, 2016 (06:20:20 UTC)

Relaxed requires clauses even more.

Modified
dlib/image_transforms/random_cropper.h
dlib/image_transforms/random_cropper_abstract.h

Revision: 8e794a4fd291d677
Author: Davis King
Date: Dec 10, 2016 (06:03:07 UTC)

Relaxed require clause

Modified
dlib/image_transforms/random_cropper.h
dlib/image_transforms/random_cropper_abstract.h

Revision: 51c6afcaa41c826d
Author: Davis King
Date: Dec 10, 2016 (03:36:45 UTC)

Added an overload of flip_image_left_right() that operates inplace.

Modified
dlib/image_transforms/interpolation.h
dlib/image_transforms/interpolation_abstract.h

Revision: e47f00a5291e31ee
Author: Davis King
Date: Dec 09, 2016 (16:05:18 UTC)

Relaxed requires clause slightly

Modified
dlib/image_transforms/random_cropper.h
dlib/image_transforms/random_cropper_abstract.h

Revision: b71b824c942b4de2
Author: Davis King
Date: Dec 09, 2016 (14:51:58 UTC)

Made dlib::array movable.

Modified
dlib/array/array_kernel.h
dlib/array/array_kernel_abstract.h

Revision: 13b679aea0be116b
Author: Davis King
Date: Nov 30, 2016 (05:36:32 UTC)

Fixed missing implementation of map_input_to_output() and map_output_to_input() in the concat_ layer.

Modified
dlib/dnn/layers.h

Revision: 7506978fb45dc29a
Author: Davis King
Date: Nov 29, 2016 (06:05:16 UTC)

Added running_stats_decayed

Modified
dlib/statistics/statistics.h
dlib/statistics/statistics_abstract.h

Revision: 0c40eff84c399624
Author: Davis King
Date: Nov 28, 2016 (15:03:17 UTC)

Made dlib/cmake add the appropriate folders to client include search paths.

Modified
dlib/CMakeLists.txt
dlib/cmake

Revision: 475a03e598fb12a3
Author: Duncan Palmer
Date: Nov 28, 2016 (26:07:14 UTC)

Ensure MKL detection doesn't depend on MKL header files being present. Apparently, MKL installations don't always include header files. So detect MKL libraries and headers seperately.

Modified
dlib/CMakeLists.txt
dlib/cmake_utils/cmake_find_blas.txt

Revision: f52ad8692907a4b6
Author: Duncan Palmer
Date: Nov 23, 2016 (14:05:13 UTC)

Seperate MKL FFT and MKL BLAS configurations. MKL FFT bindings had assumed that MKL was also being used to provide the BLAS implementation, however the build system allows these 2 things to be configured independantly.

Modified
dlib/CMakeLists.txt
dlib/cmake_utils/cmake_find_blas.txt

Revision: 685838d8af7b5b94
Author: Duncan Palmer
Date: Sep 08, 2016 (24:41:52 UTC)

Add MKL DFTI FFT bindings.

Modified
dlib/CMakeLists.txt
dlib/cmake_utils/cmake_find_blas.txt
dlib/config.h.in
dlib/matrix/matrix_fft.h

Revision: a9593a0555281389
Author: Davis King
Date: Nov 27, 2016 (08:24:16 UTC)

clarified spec

Modified
dlib/clustering/bottom_up_cluster_abstract.h

Revision: 555f7f98a3321165
Author: Davis King
Date: Nov 27, 2016 (08:20:10 UTC)

Added segment_number_line().

Modified
dlib/clustering/bottom_up_cluster.h
dlib/clustering/bottom_up_cluster_abstract.h
dlib/test/clustering.cpp

Revision: 84dfcad68385e915
Author: Davis King
Date: Nov 26, 2016 (10:48:00 UTC)

Added append() to random_cropper.

Modified
dlib/image_transforms/random_cropper.h
dlib/image_transforms/random_cropper_abstract.h

Revision: 9510bb9314401fa6
Author: Davis King
Date: Nov 26, 2016 (03:26:59 UTC)

Made the random translation amount user settable.

Modified
dlib/image_transforms/random_cropper.h
dlib/image_transforms/random_cropper_abstract.h

Revision: b0644464754f58e6
Author: Davis King
Date: Nov 26, 2016 (03:17:24 UTC)

Changed to avoid gcc warnings

Modified
dlib/dnn/input.h

Revision: 6f7b3c6bf20a20b0
Author: Dennis Francis
Date: Nov 26, 2016 (14:37:36 UTC)

adapt to dlib indentation style

Modified
dlib/dnn/loss.h
dlib/dnn/loss_abstract.h
dlib/test/dnn.cpp

Revision: 6522d8c5785742a5
Author: Dennis Francis
Date: Nov 25, 2016 (27:45:39 UTC)

converted tabs to spaces in the indentation

Modified
dlib/dnn/loss.h
dlib/test/dnn.cpp

Revision: a460abd4fd4d0d9f
Author: Dennis Francis
Date: Nov 23, 2016 (19:74:33 UTC)

feature_addition : Added a mean squared loss layer to DNN Added mean squared loss layer "loss_mean_squared" to DNN as requested in https://github.com/davisking/dlib/issues/152 Also added test case of a simple linear regression with one variable that uses this layer.

Modified
dlib/dnn/loss.h
dlib/dnn/loss_abstract.h
dlib/test/dnn.cpp

Revision: 7e3cf5042c2a9ead
Author: Stefan Schweter
Date: Nov 19, 2016 (18:54:56 UTC)

Disable misleading-indentation warning in unicode.h (pragma for GCC >= 6)

Modified
dlib/unicode/unicode.h

Revision: d17ddfe34f8e7177
Author: Davis King
Date: Nov 25, 2016 (02:46:52 UTC)

Clarified spec

Modified
dlib/image_transforms/random_cropper_abstract.h

Revision: cc5d9caedb5c1105
Author: Davis King
Date: Nov 22, 2016 (07:59:24 UTC)

Fixed compile time error in random_subset_selector::swap()

Modified
dlib/statistics/random_subset_selector.h

Revision: 29c4d3ea7bd70110
Author: Davis King
Date: Nov 19, 2016 (10:37:51 UTC)

Made the dnn_trainer's detection and backtracking from situations with increasing loss more robust. Now it will never get into a situation where it backtracks over and over. Instead, it will only backtrack a few times in a row before just letting SGD run unimpeded.

Modified
dlib/dnn/trainer.h

Revision: 1a86b32362308860
Author: Davis King
Date: Nov 18, 2016 (08:47:50 UTC)

Made tt::add() more general

Modified
dlib/dnn/cpu_dlib.cpp
dlib/dnn/cuda_dlib.cu
dlib/dnn/cuda_dlib.h
dlib/dnn/cudnn_dlibapi.cpp
dlib/dnn/tensor_tools.h
dlib/test/dnn.cpp

Revision: 4e9fa80c14f028cd
Author: Davis King
Date: Nov 18, 2016 (07:40:01 UTC)

Suppress bogus warnings from nvcc about unreachable code that is actually reachable.

Modified
dlib/algs.h

Revision: 9a400902da27a32c
Author: Davis King
Date: Nov 18, 2016 (05:42:03 UTC)

Added min_pointwise() and max_pointwise().

Modified
dlib/matrix/matrix_utilities.h
dlib/matrix/matrix_utilities_abstract.h
dlib/test/matrix.cpp

Revision: 0f33099b2f19a5ce
Author: Davis King
Date: Nov 17, 2016 (07:10:54 UTC)

Made non-const alias tensors convertible to const alias tensors.

Modified
dlib/dnn/tensor.h
dlib/dnn/tensor_abstract.h

Revision: 358dc20ad776fd4a
Author: Davis King
Date: Nov 15, 2016 (01:56:00 UTC)

Added missing #include

Modified
dlib/image_processing/correlation_tracker.h

Revision: c9a9b5c662feb7e0
Author: caseymcc
Date: Nov 14, 2016 (07:52:45 UTC)

Remove initializer lists support for Apple/Clang (libstdc++ version used does not include std::initializer_list)

Modified
dlib/assert.h

Revision: df3a4de43efb9f0c
Author: Davis King
Date: Nov 14, 2016 (10:47:04 UTC)

Avoid division by zero in running_scalar_covariance_decayed.

Modified
dlib/statistics/statistics.h

Revision: 403deb128098f6ae
Author: Davis King
Date: Nov 14, 2016 (06:06:56 UTC)

Added running_scalar_covariance_decayd

Modified
dlib/statistics/statistics.h
dlib/statistics/statistics_abstract.h
dlib/test/statistics.cpp

Revision: de112e9f01f1b126
Author: Avi Haiat
Date: Nov 12, 2016 (16:54:48 UTC)

Expose python binding for running multiple detectors at once (#328) * Expose python binding for running multiple detectors at once * Remove unwanted typedef

Modified
tools/python/src/object_detection.cpp
tools/python/src/simple_object_detector_py.h

Revision: ae4e3984e1d04ccc
Author: MambaWong
Date: Nov 12, 2016 (19:39:05 UTC)

Modify to support both train-images-idx3-ubyte and train-images.idx3-ubyte styles of the filename. (#327)

Modified
dlib/data_io/mnist.cpp

Revision: dbc4a0c8365e10ce
Author: Avi Haiat
Date: Nov 10, 2016 (05:36:52 UTC)

Add option --rm-other-labels to imglab (#323) * Add option --rm-other-labels to imglab * Add support for comma separated list of labels

Modified
tools/imglab/src/main.cpp

Revision: 44c0e160fac405c1
Author: Davis King
Date: Nov 09, 2016 (05:30:16 UTC)

Fixed rls numerical instability.

Modified
dlib/svm/rls.h

Revision: 68b8859404b273dd
Author: Davis King
Date: Nov 08, 2016 (09:40:19 UTC)

Made rls run a bit faster, especially if the new mode that allows the regularization to decay away is activated.

Modified
dlib/svm/rls.h
dlib/svm/rls_abstract.h

Revision: 151810f94cabb586
Author: Davis King
Date: Nov 08, 2016 (06:03:40 UTC)

Fixed matlab crashing when an error message from a mex file included the % character, since that is interpreted by matlab as part of an eventual printf() code.

Modified
dlib/matlab/mex_wrapper.cpp

Revision: 69ac1166bbd80f50
Author: Davis King
Date: Nov 07, 2016 (14:50:12 UTC)

Make sure the state of the assert macros is always consistent between how dlib is built as a stand alone library and what appears in the config.h file.

Modified
dlib/CMakeLists.txt

Revision: 54d0970d0a953330
Author: Davis King
Date: Nov 06, 2016 (08:53:22 UTC)

Adding more possible metric loss layers.

Modified
dlib/dnn/loss.h

Revision: 37b2375391469e62
Author: Davis King
Date: Nov 05, 2016 (17:12:33 UTC)

Changed the loss layer interface to use two typedefs, output_label_type and training_label_type instead of a single label_type. This way, the label type used for training can be distinct from the type output by the network. This change breaks backwards compatibility with the previous API.

Modified
dlib/dnn/core.h
dlib/dnn/core_abstract.h
dlib/dnn/loss.h
dlib/dnn/loss_abstract.h
dlib/dnn/trainer.h
dlib/dnn/trainer_abstract.h

Revision: aa3bbd123ccdcb09
Author: Davis King
Date: Nov 05, 2016 (06:52:09 UTC)

Added serialization support for std::array.

Modified
dlib/serialize.h
dlib/test/serialize.cpp

Revision: d7710f6301efea99
Author: Davis King
Date: Nov 04, 2016 (16:30:03 UTC)

Changed CMake so it doesn't automatically enable asserts in debug builds since this frustrates Visual Studio users who want to compile dlib as a static library.

Modified
dlib/CMakeLists.txt

Revision: b212277ed1a04acd
Author: Stefan Schweter
Date: Nov 04, 2016 (22:55:25 UTC)

Explicitly use signed char in max_cost_assignment test (fix for ARM/ARM64) (#316)

Modified
dlib/test/max_cost_assignment.cpp

Revision: ed8309665c022d71
Author: Stefan Schweter
Date: Nov 04, 2016 (19:48:09 UTC)

Made active_learning test more robust on ARM64. (#315)

Modified
dlib/test/active_learning.cpp

Revision: 9e3cb4d950630b72
Author: caseymcc
Date: Oct 28, 2016 (09:15:55 UTC)

fix include issue when using libjpeg compiled outside of dlib (#307)

Modified
dlib/image_saver/save_jpeg.cpp

Revision: da705c1bfa258481
Author: Davis King
Date: Nov 02, 2016 (06:12:07 UTC)

Fixed compile time error.

Modified
dlib/dnn/tensor.h

Revision: 0f44bd64a3b6da0e
Author: Davis King
Date: Nov 02, 2016 (06:06:36 UTC)

Wrote replacements for set_tensor() and scale_tensor() since the previous versions were calling into cuDNN, however, the cuDNN functions for doing this are horrifically slow, well over 100x slower than they should be, which is surprising since these functions are so trivial.

Modified
dlib/dnn/cuda_dlib.cu
dlib/dnn/cuda_dlib.h
dlib/dnn/cudnn_dlibapi.cpp
dlib/dnn/cudnn_dlibapi.h
dlib/dnn/tensor.h
dlib/test/dnn.cpp

Revision: 40de2fbd2bfbf0a2
Author: Davis King
Date: Oct 30, 2016 (03:42:27 UTC)

Made test deterministic

Modified
dlib/test/discriminant_pca.cpp

Revision: 6fd6fcb3ae8f4383
Author: Davis King
Date: Oct 27, 2016 (07:29:27 UTC)

Fixed some race conditions in cuda code.

Modified
dlib/dnn/cuda_dlib.cu

Revision: 3fb9cb42908da65e
Author: Davis King
Date: Oct 26, 2016 (13:09:44 UTC)

Fixed compiler warnings

Modified
dlib/dnn/tensor.h

Revision: f6597d42842009ad
Author: Davis King
Date: Oct 26, 2016 (13:06:02 UTC)

Added tt::scale_columns(). Also optimized some other cuda kernel launches a little.

Modified
dlib/dnn/cuda_dlib.cu
dlib/dnn/cuda_dlib.h
dlib/dnn/tensor_tools.cpp
dlib/dnn/tensor_tools.h

Revision: cf213dfacd1ebded
Author: Davis King
Date: Oct 26, 2016 (12:49:56 UTC)

Added is_vector() for tensor objects.

Modified
dlib/dnn/tensor.h
dlib/dnn/tensor_abstract.h

Revision: 7ecdc2e44d57a754
Author: Davis King
Date: Oct 26, 2016 (05:06:05 UTC)

Improved cudnn error messages.

Modified
dlib/dnn/cudnn_dlibapi.cpp

Revision: 5e6cf2433e49ba1d
Author: Davis King
Date: Oct 23, 2016 (11:13:46 UTC)

Added l2normalize_ layer.

Modified
dlib/dnn/cuda_dlib.cu
dlib/dnn/cuda_dlib.h
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h
dlib/dnn/tensor_tools.cpp
dlib/dnn/tensor_tools.h
dlib/test/dnn.cpp

Revision: 2076132a771b0907
Author: Davis King
Date: Oct 23, 2016 (06:44:05 UTC)

Made approximate derivative calculation slightly more numerically robust.

Modified
dlib/optimization/optimization.h

Revision: 36d2e4b214b33488
Author: Davis King
Date: Oct 21, 2016 (18:48:03 UTC)

Made the dnn_trainer automatically reload from the last good state if a loss of NaN is encountered.

Modified
dlib/dnn/trainer.h

Revision: eaf32ef301e22fcd
Author: Davis King
Date: Oct 18, 2016 (18:54:34 UTC)

Fixed a bug in the repeat layer that caused it to throw exceptions in some cases.

Modified
dlib/dnn/core.h

Revision: 3003fe9808305f60
Author: Davis King
Date: Oct 16, 2016 (15:51:19 UTC)

Added --rmignore

Modified
tools/imglab/src/main.cpp

Revision: 007a4fabe1cfd6ac
Author: Davis King
Date: Oct 16, 2016 (12:38:17 UTC)

Added loss_metric_

Modified
dlib/dnn/loss.h

Revision: 6ecb13bd4efdc2f4
Author: Davis King
Date: Oct 16, 2016 (12:21:28 UTC)

Improved xml logging for --resample

Modified
tools/imglab/src/main.cpp

Revision: 9dc1723d0ec278d0
Author: Davis King
Date: Oct 16, 2016 (12:19:24 UTC)

removed --extract-chips

Modified
tools/imglab/src/main.cpp

Revision: 969b13255a40430a
Author: Davis King
Date: Oct 16, 2016 (12:10:44 UTC)

Fixed confusing -h docs

Modified
tools/imglab/src/main.cpp

Revision: 91364e2f189cb037
Author: Davis King
Date: Oct 16, 2016 (12:09:06 UTC)

Added --jpg and --one-object-per-image.

Modified
tools/imglab/src/main.cpp

Revision: 3cb6c541e2a9e01d
Author: Evgeniy Fominov
Date: Oct 14, 2016 (24:44:31 UTC)

Travis CI Integration scripts (#294)

Added
.travis.yml
dlib/travis/before-install.sh
dlib/travis/build-and-test.sh

Revision: d8b1a27bf2732380
Author: hannometer
Date: Oct 14, 2016 (16:35:09 UTC)

pass CUDA_HOST_COMPILER variable to cuda cmake tests (#292)

Modified
dlib/CMakeLists.txt

Revision: b7900c78a0328bbc
Author: Mateusz Baran
Date: Oct 14, 2016 (14:54:59 UTC)

optimization - poly_min_extrap fixed for a specific case (#291) If temp is nonzero but a subnormal then temp2 matrix may contain infinities which may cause temp assignment in line 225 to be a NaN (as a difference of two positive infinities).

Modified
dlib/optimization/optimization_line_search.h

Revision: 0e231bb9d3f2da6a
Author: Davis King
Date: Oct 10, 2016 (15:36:19 UTC)

Record last changeset and set PATCH version to 99

Modified
dlib/CMakeLists.txt
docs/.logger_revnum

Revision: f8fa027c760270d8
Author: Davis King
Date: Oct 10, 2016 (15:34:32 UTC)

Created release v19.2

Modified
dlib/CMakeLists.txt

Revision: 9d2cc9605dabbc51
Author: Davis King
Date: Oct 10, 2016 (14:26:09 UTC)

Made tensor copies a little more efficient.

Modified
dlib/dnn/tensor.h

Revision: c6c9fdeaa6415cde
Author: Evgeniy Fominov
Date: Oct 10, 2016 (18:32:16 UTC)

Added threads.h into shape_predictor.h (#283)

Modified
dlib/image_processing/shape_predictor.h

Revision: a37ad2dbe73ebd80
Author: Evgeniy Fominov
Date: Oct 10, 2016 (18:30:22 UTC)

Fix for #281 (#282)

Modified
dlib/threads/async.cpp

Revision: 17e2aad4fd065e39
Author: Davis King
Date: Oct 10, 2016 (04:12:58 UTC)

Added missing #include.

Modified
dlib/threads/async.cpp

Revision: 3e63dfdda30dc7e3
Author: Davis King
Date: Oct 10, 2016 (03:36:10 UTC)

Added missing #include

Modified
dlib/image_processing/shape_predictor.h

Revision: 38e96e999d2cebb3
Author: Davis King
Date: Oct 09, 2016 (19:29:20 UTC)

Removing mltool since I'm pretty sure no one uses it and it might even cause user confusion.

Modified
dlib/test/tools/CMakeLists.txt
Deleted
tools/mltool/CMakeLists.txt
tools/mltool/src/common.h
tools/mltool/src/main.cpp
tools/mltool/src/option_range.cpp
tools/mltool/src/option_range.h
tools/mltool/src/regression.cpp
tools/mltool/src/regression.h

Revision: 0276c3e7b67d2eef
Author: Davis King
Date: Oct 09, 2016 (19:18:46 UTC)

Made unit tests compile stuff in tools folder

Modified
dlib/test/CMakeLists.txt
Added
dlib/test/tools/CMakeLists.txt

Revision: 96a3a68254e12408
Author: Davis King
Date: Oct 09, 2016 (19:18:12 UTC)

Minor code cleanup.

Modified
dlib/image_transforms/image_pyramid.h

Revision: be4f95c3025c0c8a
Author: Davis King
Date: Oct 09, 2016 (14:25:52 UTC)

Improved check for old visual studio

Modified
dlib/cmake_utils/use_cpp_11.cmake

Revision: f1e84240b9f944fd
Author: Davis King
Date: Oct 09, 2016 (14:19:51 UTC)

Fixed old visual studio check

Modified
dlib/cmake_utils/use_cpp_11.cmake

Revision: 3f65c6abd14c2ffa
Author: Davis King
Date: Oct 09, 2016 (14:13:21 UTC)

Improved error messages about non-C++11 compilers and made the example cmake file a little clearer on this issue.

Modified
dlib/cmake_utils/use_cpp_11.cmake
examples/CMakeLists.txt

Revision: 0cb043aab1a94228
Author: Davis King
Date: Oct 09, 2016 (12:36:48 UTC)

Renamed file so it matches the naming scheme of the other matlab examples.

Modified
dlib/matlab/CMakeLists.txt
Added
dlib/matlab/example_mex_class.cpp
Deleted
dlib/matlab/mex_example_class.cpp

Revision: 0a5f86061b25eeb4
Author: Davis King
Date: Oct 09, 2016 (06:38:03 UTC)

Moved all the test_object_detection_function() specs into one file so they are organized in the HTML documentation.

Modified
dlib/dnn/validation.h
dlib/svm/cross_validate_object_detection_trainer_abstract.h
Deleted
dlib/dnn/validation_abstract.h

Revision: b87b1987c2fa72de
Author: Davis King
Date: Oct 08, 2016 (11:28:58 UTC)

Changed cmake so it compiles most of the DNN examples when using visual studio.

Modified
dlib/cmake_utils/use_cpp_11.cmake
examples/CMakeLists.txt

Revision: 5568c09ce2ef01e1
Author: Davis King
Date: Oct 08, 2016 (10:28:21 UTC)

Added warning message about trying to use cuda from a 32 bit visual studio project.

Modified
dlib/CMakeLists.txt

Revision: 09538bd6884d5d85
Author: Davis King
Date: Oct 08, 2016 (10:27:34 UTC)

Evgeniy Fominov's changes that avoid compiler bugs in Visual Studio.

Modified
examples/dnn_imagenet_ex.cpp
examples/dnn_imagenet_train_ex.cpp

Revision: 1dbb13122991d995
Author: Davis King
Date: Oct 08, 2016 (10:26:33 UTC)

Minor change to avoid warnings from visual studio.

Modified
dlib/image_transforms/image_pyramid.h

Revision: 1f0c4fd8dc47fb83
Author: Davis King
Date: Oct 07, 2016 (18:07:13 UTC)

Made the upsampling conditional on the image not being huge already.

Modified
examples/dnn_mmod_face_detection_ex.cpp

Revision: 2a834745327ca5c7
Author: elda27
Date: Oct 07, 2016 (28:36:58 UTC)

find_cudnn modified for cudnn installed a user directory. (#275)

Modified
dlib/cmake_utils/test_for_cudnn/find_cudnn.txt

Revision: 9251f7002f1f5525
Author: Jan Rüegg
Date: Oct 05, 2016 (19:15:31 UTC)

Unreachable code, fixed compiler warning (#272) * Unreachable code, fixed compiler warning * Update simd4f.h

Modified
dlib/simd/simd4f.h

Revision: fa8285990c12208b
Author: Jan Rüegg
Date: Oct 05, 2016 (18:57:01 UTC)

Unreachable code, fixed compiler warning (#271) * Unreachable code, fixed compiler warning * Update simd8f.h

Modified
dlib/simd/simd8f.h

Revision: 27148e269324a6a7
Author: Davis King
Date: Oct 05, 2016 (06:23:02 UTC)

Made the dnn_trainer check if the loss has been increasing before it saves the state to disk. If it detects that the loss has been going up then instead of saving to disk it recalls the previously good state. This way, if we hit a bad mini-batch during training which negatively effects the model in a significant way, the dnn_trainer will automatically revert back to an earlier good state.

Modified
dlib/dnn/trainer.h

Revision: 6ae4620f2ac43b69
Author: Davis King
Date: Oct 03, 2016 (15:55:31 UTC)

Made find_upper_quantile() more general

Modified
dlib/statistics/running_gradient.h
dlib/statistics/running_gradient_abstract.h

Revision: 4333eb792b01417e
Author: Davis King
Date: Oct 02, 2016 (13:52:39 UTC)

Merge branch 'skip_gui_examples' of git://github.com/miscellanea/dlib into miscellanea-skip_gui_examples Conflicts: examples/CMakeLists.txt

Modified
examples/CMakeLists.txt

Revision: 0c4e56915a1f6f28
Author: Xi Deng
Date: Oct 01, 2016 (11:49:57 UTC)

skip examples which need GUI when DLIB_NO_GUI_SUPPORT is defined

Modified
examples/CMakeLists.txt

Revision: 56a8a6b0e3c876be
Author: Davis King
Date: Oct 02, 2016 (12:43:11 UTC)

Added comments

Modified
examples/dnn_mmod_dog_hipsterizer.cpp
examples/dnn_mmod_face_detection_ex.cpp

Revision: 35746eebbe5ae72e
Author: Davis King
Date: Oct 02, 2016 (10:33:22 UTC)

Larger mustache :)

Modified
examples/dnn_mmod_dog_hipsterizer.cpp

Revision: 796613c025c742ff
Author: Davis King
Date: Oct 02, 2016 (09:37:47 UTC)

Added test image for dog mmod example program

Added
examples/faces/dogs.jpg

Revision: 1a1ea5f589d10e55
Author: Davis King
Date: Oct 02, 2016 (09:00:07 UTC)

Added more mmod examples.

Modified
examples/CMakeLists.txt
Added
examples/dnn_mmod_dog_hipsterizer.cpp
examples/dnn_mmod_face_detection_ex.cpp

Revision: 4ecbc95dd20e02b2
Author: Davis King
Date: Oct 02, 2016 (08:54:14 UTC)

Simplified the network definition slightly

Modified
examples/dnn_mmod_ex.cpp

Revision: 832dd2b780d5dcc9
Author: Davis King
Date: Oct 02, 2016 (05:25:19 UTC)

Added image_dataset_file::shrink_big_images(). So now load_image_dataset() can load a dataset of high resolution files into a user requested lower resolution.

Modified
dlib/data_io/load_image_dataset.h
dlib/data_io/load_image_dataset_abstract.h

Revision: d1edff75d500b46e
Author: miscellanea
Date: Oct 01, 2016 (10:52:45 UTC)

Add arm files for libpng from official libpng v1.6.7 to support neon (#262) (#264) Now dlib can be compiled for android with -DANDROID_ABI="armeabi-v7a with NEON" with https://github.com/taka-no-me/android-cmake However, when compiling for arm64-v8a, since __ARM_NEON__ is not defined, neon code will not be actually enabled, which requires upgrading libpng a bit more

Modified
dlib/CMakeLists.txt
Added
dlib/external/libpng/arm/arm_init.c
dlib/external/libpng/arm/filter_neon.S
dlib/external/libpng/arm/filter_neon_intrinsics.c

Revision: ae14992c6332d828
Author: Davis King
Date: Oct 01, 2016 (14:33:49 UTC)

Made the check in dnn_trainer for convergence more robust. Previously, if we encountered a bad mini-batch that made the loss value suddenly jump up by a larger than normal value it could make the trainer think we converged. Now the test is robust to recent spikes in loss value.

Modified
dlib/dnn/trainer.h

Revision: 745de03984577150
Author: Davis King
Date: Oct 01, 2016 (14:32:01 UTC)

Added find_upper_quantile() and count_steps_without_decrease_robust().

Modified
dlib/statistics/running_gradient.h
dlib/statistics/running_gradient_abstract.h

Revision: b26b4179004a9a68
Author: Davis King
Date: Oct 01, 2016 (14:00:36 UTC)

Changed DEFAULT_BATCH_NORM_EPS from 1e-5 to 1e-4.

Modified
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h

Revision: 52b7ca67fde80387
Author: Davis King
Date: Oct 01, 2016 (11:12:07 UTC)

Removed the last bit of code with any heritage from numerical recipes in C. This was in some of the svd routines. However, we already had a svd routine that used a separate svd code that is better than the NRIC derived version. So that's what we use everywhere now.

Modified
dlib/matrix/matrix_la.h

Revision: 7a017c493450a5a3
Author: Davis King
Date: Oct 01, 2016 (09:20:16 UTC)

Minor change to avoid warning from gcc

Modified
dlib/test/matrix.cpp

Revision: 5dd0cfca877caab1
Author: Davis King
Date: Sep 30, 2016 (19:09:03 UTC)

Fixed spelling error in comment

Modified
examples/train_shape_predictor_ex.cpp

Revision: 57bd723f7e7d8d75
Author: Davis King
Date: Sep 30, 2016 (17:06:11 UTC)

Minor changes to avoid warnings in visual studio 2015

Modified
dlib/array2d/array2d_kernel.h
dlib/dnn/cuda_dlib.cu
dlib/dnn/cuda_utils.h
dlib/dnn/tensor.h
dlib/matrix/matrix.h

Revision: 16774140d2203404
Author: Davis King
Date: Sep 29, 2016 (04:57:01 UTC)

Fixed spelling error in comment

Modified
dlib/dnn/cuda_utils.h

Revision: 8f5f924a938d99ea
Author: Eugene
Date: Sep 29, 2016 (03:15:25 UTC)

fixed warning about unsigned-signed comparison in imgtool (#258)

Modified
tools/imglab/src/main.cpp

Revision: aae42d24e3e0ae74
Author: Davis King
Date: Sep 28, 2016 (17:14:20 UTC)

Improved error message.

Modified
dlib/dnn/layers.h

Revision: c772c396f47ba1be
Author: Davis King
Date: Sep 28, 2016 (17:13:43 UTC)

Changed default background cropping rate from 0.1 to 0.5.

Modified
dlib/image_transforms/random_cropper.h
dlib/image_transforms/random_cropper_abstract.h

Revision: b84a32d32bde42e2
Author: Davis King
Date: Sep 28, 2016 (17:13:08 UTC)

Added missing requires clauses and asserts.

Modified
dlib/image_transforms/random_cropper.h
dlib/image_transforms/random_cropper_abstract.h

Revision: 8b677387a30aa788
Author: Davis King
Date: Sep 28, 2016 (17:01:49 UTC)

Added --sort-num-objects and cleaned up code slightly.

Modified
tools/imglab/src/main.cpp

Revision: 208920d77ff90da6
Author: Ehsan Azar
Date: Sep 21, 2016 (09:36:24 UTC)

first check large number in elsif (#239)

Modified
dlib/assert.h

Revision: afa9ee5ce6d8ce61
Author: Evgeniy Fominov
Date: Sep 21, 2016 (17:19:13 UTC)

Fixed warning about winsock2.h in windows build (#236)

Modified
dlib/sockets/sockets_kernel_1.cpp

Revision: 703e614feade0698
Author: Davis King
Date: Sep 28, 2016 (05:30:17 UTC)

Made cmake automatically increase clang's template depth limit so the dnn imagenet examples compile.

Modified
dlib/cmake

Revision: 757e906e1148853c
Author: Davis King
Date: Sep 28, 2016 (05:28:40 UTC)

Fixed --cluster not working with relative paths.

Modified
tools/imglab/src/cluster.cpp

Revision: 0cbf2bbfde39e2bf
Author: Davis King
Date: Sep 26, 2016 (16:50:54 UTC)

Added --rmlabel and --rm-if-overlaps. Also changed the behavior of --split so that it simply partitions the data and is an invertible operation.

Modified
tools/imglab/src/main.cpp

Revision: 1a9cff21810532ab
Author: Davis King
Date: Sep 21, 2016 (03:01:54 UTC)

Made thread_pool's destructor call abort() rather than rethrow any exception to avoid compiler warnings.

Modified
dlib/threads/thread_pool_extension.h
dlib/threads/thread_pool_extension_abstract.h

Revision: 2b44381e5800ba86
Author: Davis King
Date: Sep 18, 2016 (07:54:12 UTC)

Made --cluster skip empty images

Modified
tools/imglab/src/cluster.cpp

Revision: b4cc8af1ea94c05a
Author: Davis King
Date: Sep 18, 2016 (05:37:23 UTC)

Improved CLI for --resample

Modified
tools/imglab/src/main.cpp

Revision: 11c1841ef60b2f62
Author: Davis King
Date: Sep 18, 2016 (05:09:39 UTC)

Fixed a bug in --cluster where it would output xml files with empty entries if the input xml file contained unannotated images.

Modified
tools/imglab/src/cluster.cpp

Revision: d84791b084a95bf1
Author: Davis King
Date: Sep 17, 2016 (11:19:52 UTC)

Fixed getting cli warning message when gui closed.

Modified
tools/imglab/src/main.cpp

Revision: 5a82dbc2bb81da11
Author: Davis King
Date: Sep 17, 2016 (05:12:33 UTC)

Made imglab's --resample not skip objects near the edge of the image.

Modified
tools/imglab/src/main.cpp

Revision: c41a595d73a7ac90
Author: Davis King
Date: Sep 16, 2016 (15:45:06 UTC)

Added message about -h

Modified
tools/imglab/src/main.cpp

Revision: dde8f363dbc20329
Author: Davis King
Date: Sep 16, 2016 (02:47:49 UTC)

Made the background crops output by the random_cropper a little more expansive.

Modified
dlib/image_transforms/random_cropper.h