Change Log
Revision: 7210589728f6d83f
Author: Davis King
Date: Jun 25, 2016 (11:03:30 UTC)

Created release v19.0

Modified
dlib/CMakeLists.txt

Revision: 657c608fec03e34a
Author: Davis King
Date: Jun 25, 2016 (10:16:43 UTC)

fixed tabbing

Modified
dlib/dnn/cpu_dlib.h

Revision: f54faf884ed106bf
Author: Davis King
Date: Jun 25, 2016 (10:00:38 UTC)

Changed URLs to point to dlib.net instead of sourceforge.net

Modified
python_examples/face_landmark_detection.py

Revision: 8e7a0b7f1b36fd89
Author: Davis King
Date: Jun 25, 2016 (09:03:12 UTC)

fixed compiler warning

Modified
examples/dnn_imagenet_train_ex.cpp

Revision: 935447da3526dd72
Author: Davis King
Date: Jun 25, 2016 (08:31:59 UTC)

Changed code so the validation listing file doesn't have to be in the imagenet root folder.

Modified
examples/dnn_imagenet_train_ex.cpp

Revision: d112ab11d2160ed3
Author: Davis King
Date: Jun 25, 2016 (08:28:00 UTC)

Fixed bug in apply_random_color_offset(), it computed slightly wrong outputs.

Modified
dlib/image_transforms/random_color_transform.h

Revision: 349648ad122bf778
Author: Davis King
Date: Jun 25, 2016 (07:17:07 UTC)

fixed compiler warnings

Modified
dlib/dnn/input.h
examples/dnn_imagenet_train_ex.cpp

Revision: 760b4cdb0a564200
Author: Davis King
Date: Jun 25, 2016 (05:47:36 UTC)

Minor formatting cleanup

Modified
examples/dnn_imagenet_ex.cpp

Revision: 40636e2e9f9060d0
Author: Davis King
Date: Jun 25, 2016 (05:42:22 UTC)

fixed typo

Modified
examples/dnn_imagenet_train_ex.cpp
examples/dnn_introduction2_ex.cpp

Revision: bcfee9140836f78e
Author: Davis King
Date: Jun 25, 2016 (05:40:11 UTC)

Updated examples to refer to the correct file names.

Modified
examples/dnn_imagenet_ex.cpp
examples/dnn_imagenet_train_ex.cpp
examples/dnn_inception_ex.cpp
examples/dnn_introduction2_ex.cpp

Revision: 9f785654dc6b1746
Author: Davis King
Date: Jun 25, 2016 (05:34:53 UTC)

renamed examples

Modified
examples/CMakeLists.txt
Added
examples/dnn_introduction2_ex.cpp
examples/dnn_introduction_ex.cpp
Deleted
examples/dnn_mnist_advanced_ex.cpp
examples/dnn_mnist_ex.cpp

Revision: c497ce79d35ae74e
Author: Davis King
Date: Jun 25, 2016 (05:26:51 UTC)

Added the program that made the resnet model.

Modified
examples/CMakeLists.txt
examples/dnn_imagenet_ex.cpp
Added
examples/dnn_imagenet_train_ex.cpp

Revision: 534ebf664f47aefb
Author: Davis King
Date: Jun 24, 2016 (06:51:03 UTC)

Changed test to avoid failure in visual studio.

Modified
dlib/test/matrix_qr.cpp

Revision: 52c3bd988a107cb2
Author: Davis King
Date: Jun 24, 2016 (-03:28:52 UTC)

Changed the message that cmake displays when opencv isn't found so users don't get confused.

Modified
examples/CMakeLists.txt

Revision: 567abd857dc34a8d
Author: Davis King
Date: Jun 24, 2016 (-03:24:03 UTC)

Added check back in since visual studio doesn't really work with the C++11 code in dlib.

Modified
dlib/use_cpp_11.cmake

Revision: e8baacc72fc1b2be
Author: Davis King
Date: Jun 23, 2016 (05:42:38 UTC)

A minor change to avoid a compiler error in clang

Modified
dlib/simd/simd8f.h

Revision: c70732018c46b64e
Author: GurunathB
Date: Jun 23, 2016 (26:32:12 UTC)

Updated comments to specify the position of points (#141) Updated comments to specify the position of points on the face for 68 points generated by the face landmark detector.

Modified
dlib/image_processing/render_face_detections.h

Revision: c086d238f6b64dee
Author: Davis King
Date: Jun 22, 2016 (18:30:45 UTC)

Added some comments

Modified
examples/dnn_imagenet_ex.cpp

Revision: b4e8042977086fdf
Author: Davis King
Date: Jun 22, 2016 (18:26:48 UTC)

Added an example showing how to classify imagenet images.

Modified
examples/CMakeLists.txt
Added
examples/dnn_imagenet_ex.cpp

Revision: dc90a5abe21b758b
Author: Davis King
Date: Jun 22, 2016 (18:20:19 UTC)

Added input_rgb_image_sized.

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

Revision: 96d7741e06057500
Author: nxwhite-str
Date: Jun 22, 2016 (17:17:16 UTC)

Add detection threshold adjustment to object detection python interface (#140) * Add cmake option to use external libjpeg on Mac OS * Add adjust_threshold to python object detector * Add cmake option to use external libjpeg on Mac OS * Add adjust_threshold to python object detector * Revert "Add cmake option to use external libjpeg on Mac OS" This reverts commit 01f7fd13ea3f2b519312900333f9b68847fd1633. * Update detector example to set adjust_threshold

Modified
python_examples/face_detector.py
tools/python/src/object_detection.cpp
tools/python/src/simple_object_detector_py.h

Revision: 2908d73bbbf5c26f
Author: Davis King
Date: Jun 22, 2016 (17:43:51 UTC)

Removed support for old serialization formats in many of the DNN objects. This is to clean up the code since it was getting somewhat complex and this is the last opportunity to do this kind of cleanup prior to the release of dlib v19.0. If you have saved network objects and want to convert them to the current format, then make sure you checkout the previous commit (labeled with tag before_dnn_serialization_cleanup) and then deserialize and serialize your network back to disk.

Modified
dlib/dnn/layers.h
dlib/dnn/trainer.h

Revision: 4d6b102506bb9e2f
Author: Davis E. King
Date: Jun 22, 2016 (07:47:38 UTC)

Merge pull request #139 from e-fominov/dnn_vs2015_up3 DNN Visual Studio 2015 Update3 support

Modified
dlib/cmake
dlib/dnn.h
dlib/dnn/core.h
dlib/dnn/layers.h
dlib/use_cpp_11.cmake
examples/CMakeLists.txt
examples/dnn_inception_ex.cpp
examples/dnn_mnist_advanced_ex.cpp

Revision: 14afea5ff3b87e1c
Author: Fm
Date: Jun 22, 2016 (21:09:26 UTC)

#pragma warning moved to dnn.h

Modified
dlib/dnn.h
examples/dnn_inception_ex.cpp
examples/dnn_mnist_advanced_ex.cpp

Revision: ae8d58db4973c70b
Author: Fm
Date: Jun 22, 2016 (20:54:28 UTC)

removed wrong empty line

Modified
examples/dnn_inception_ex.cpp

Revision: a633a6714320720b
Author: Fm
Date: Jun 22, 2016 (20:53:37 UTC)

removed comment form net printing

Modified
examples/dnn_inception_ex.cpp

Revision: d404e2d676b8984a
Author: Fm
Date: Jun 22, 2016 (20:51:06 UTC)

#pragma warning for C4503 and /bigobj

Modified
dlib/cmake
examples/CMakeLists.txt
examples/dnn_inception_ex.cpp
examples/dnn_mnist_advanced_ex.cpp

Revision: 3c0ffd41063b88e4
Author: Fm
Date: Jun 22, 2016 (20:22:43 UTC)

Added compiler flags for VS compiling DNN samples without warnings

Modified
examples/CMakeLists.txt

Revision: a40d55b25999dff6
Author: Fm
Date: Jun 22, 2016 (19:53:27 UTC)

Fixed layer constructors to support VS2015

Modified
dlib/cmake
dlib/dnn/core.h

Revision: 1251abd05a506bf0
Author: Fm
Date: Jun 21, 2016 (22:35:36 UTC)

removed commented code

Modified
dlib/dnn/layers.h

Revision: 702f2732971ff655
Author: Fm
Date: Jun 21, 2016 (22:15:25 UTC)

Visual studio now compiles dnn_mnist_advanced, inception and dtest

Modified
dlib/cmake
dlib/dnn/layers.h

Revision: 4da85b5391e84ac9
Author: Fm
Date: Jun 21, 2016 (13:49:01 UTC)

Visual Studio 2015 UP3 support

Modified
dlib/dnn/core.h
dlib/use_cpp_11.cmake

Revision: a9767ba602e13b1d
Author: Davis King
Date: Jun 22, 2016 (07:09:49 UTC)

Changed conv layer to use cross-correlation rather than convolution.

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

Revision: c380016096f46a88
Author: Davis King
Date: Jun 19, 2016 (04:55:42 UTC)

Made it so the image_display lets you add parts outside the object's bounding box.

Modified
dlib/gui_widgets/widgets.cpp

Revision: 0aa0400268ffbade
Author: Davis King
Date: Jun 13, 2016 (08:25:44 UTC)

Made subprocess_stream echo stuff written to the child's cout to the parent's cout. Also just made it a little nicer with regard to error handling.

Modified
dlib/matlab/subprocess_stream.cpp
dlib/matlab/subprocess_stream.h

Revision: 5acc96d2156973bb
Author: Davis King
Date: Jun 11, 2016 (19:08:51 UTC)

Moved log1pexp() and randomize_parameters() from core.h into utilities.h

Modified
dlib/dnn/core.h
dlib/dnn/core_abstract.h
dlib/dnn/layers.h
dlib/dnn/utilities.h
dlib/dnn/utilities_abstract.h

Revision: 10fd985ffb498a15
Author: Davis King
Date: Jun 11, 2016 (18:47:52 UTC)

Added net_to_xml()

Modified
dlib/dnn.h
dlib/dnn/input.h
dlib/dnn/input_abstract.h
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h
dlib/dnn/loss.h
dlib/dnn/loss_abstract.h
Added
dlib/dnn/utilities.h
dlib/dnn/utilities_abstract.h

Revision: 44d9fba2b8ffed0d
Author: Davis King
Date: Jun 11, 2016 (18:13:48 UTC)

Made layer() work on const networks.

Modified
dlib/dnn/core.h

Revision: 9bbee06740b5ca74
Author: Davis King
Date: Jun 11, 2016 (17:15:36 UTC)

Made mat() work on empty tensors.

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

Revision: 1d215f63e5f3cf9f
Author: Davis King
Date: Jun 11, 2016 (17:15:04 UTC)

Adjusted asserts to allow mat() to output empty matrices.

Modified
dlib/matrix/matrix_mat.h
dlib/matrix/matrix_mat_abstract.h

Revision: 8fae9e8b82cf0d1d
Author: Davis King
Date: Jun 11, 2016 (08:58:59 UTC)

Added visit_layers()

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

Revision: 6e3bc66aa6b93b34
Author: Davis King
Date: Jun 11, 2016 (07:56:04 UTC)

clarified spec

Modified
dlib/dnn/core_abstract.h

Revision: 05a5e5363690cbc4
Author: Davis King
Date: Jun 11, 2016 (07:54:44 UTC)

updated example comments

Modified
examples/dnn_mnist_advanced_ex.cpp

Revision: 54ddafdee10fdf93
Author: Davis King
Date: Jun 11, 2016 (07:54:32 UTC)

Added tag_id and made skip and add_prev layers print their id numbers when written to an output stream.

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

Revision: e148425be8ece75f
Author: Davis King
Date: Jun 11, 2016 (05:37:44 UTC)

cleanup

Modified
dlib/dnn/core.h

Revision: c5e3341d3f6a6adb
Author: Davis King
Date: Jun 11, 2016 (04:04:51 UTC)

Updated tests now that the resizable_tensor has an assignment mode that automatically sizes the tensor.

Modified
dlib/test/dnn.cpp

Revision: d04c251b841a4a2a
Author: Davis King
Date: Jun 11, 2016 (04:04:22 UTC)

Made the resizable_tensor's assignment operator work in a more sensible way.

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

Revision: 24dbc7dc8b677c6a
Author: Davis King
Date: Jun 11, 2016 (04:03:40 UTC)

Made fill_gaussian() default to a standard normal distribution.

Modified
dlib/dnn/curand_dlibapi.h
dlib/dnn/tensor_tools.h

Revision: 4c257702f516cbb9
Author: Davis King
Date: Jun 11, 2016 (03:39:56 UTC)

Made this bit of the code a little clearer.

Modified
dlib/simd/simd_check.h

Revision: 283bae2f1b502e95
Author: Davis King
Date: Jun 10, 2016 (17:26:12 UTC)

Removed this include statement since it causes errors on some systems.

Modified
dlib/simd/simd_check.h

Revision: e1c0dd50c8123cdf
Author: Davis King
Date: Jun 10, 2016 (16:52:10 UTC)

Made imglab assign a random color to boxes with labels.

Modified
tools/imglab/src/metadata_editor.cpp

Revision: d4da2bf6089d0438
Author: Davis King
Date: Jun 10, 2016 (16:49:20 UTC)

Made holding ctrl and clicking on an overlay rectangle set the color to the default value as well as the label to the default.

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

Revision: c5e398c5ad20a2f9
Author: Davis King
Date: Jun 10, 2016 (12:40:50 UTC)

Fixed minor bugs in join_rows() and join_cols(). They didn't work when one of the matrices was empty.

Modified
dlib/matrix/matrix_utilities.h

Revision: bfab04ee3fd00c15
Author: Davis King
Date: Jun 10, 2016 (08:42:02 UTC)

fixed compiler warning

Modified
dlib/matrix/matrix_eigenvalue.h

Revision: ed3a22282755bfa9
Author: Davis King
Date: Jun 10, 2016 (07:00:53 UTC)

Made resizable_tensor construction and assignment from matrices automatically set the size of the tensor.

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

Revision: 7abc9cdc99ca5431
Author: Davis King
Date: Jun 07, 2016 (11:37:46 UTC)

fixed warning and typo in comment

Modified
dlib/error.h
dlib/matlab/subprocess_stream.h

Revision: dc6d459bdd37748f
Author: Davis King
Date: Jun 07, 2016 (08:08:40 UTC)

Fixed missing return statement

Modified
dlib/smart_pointers/shared_ptr_thread_safe.h

Revision: 95fcd08cfe9b8131
Author: Davis King
Date: Jun 07, 2016 (05:01:21 UTC)

Made CMake's search for cuDNN a little more broad

Modified
dlib/dnn/test_for_cudnn/find_cudnn.txt

Revision: 769251e198953ca9
Author: Davis King
Date: Jun 07, 2016 (02:27:24 UTC)

Made tests less likely to false alarm.

Modified
dlib/test/bayes_nets.cpp

Revision: a2c3f8205bd8bd6a
Author: Davis King
Date: Jun 06, 2016 (17:18:09 UTC)

Made this bit of code not look crazy

Modified
dlib/dnn/cpu_dlib.cpp

Revision: 51deedd8836012e1
Author: Davis King
Date: Jun 05, 2016 (12:39:10 UTC)

Fixed solvers so they apply the bias specific multipliers to the correct parts of the parameter vectors.

Modified
dlib/dnn/solvers.h

Revision: 0734470533650bc7
Author: AbdealiJK
Date: Jun 05, 2016 (28:68:09 UTC)

save_jpeg: Use TRUE instead of true In some verisons on jpeg, TRUE is an enum, and so `true` fails because it is not of the enum's type. Now, all the libjpeg calls use TRUE/FALSE. Fixes https://github.com/davisking/dlib/issues/129

Modified
dlib/image_saver/save_jpeg.cpp

Revision: 4df0b675c5585b34
Author: Davis King
Date: Jun 05, 2016 (03:45:15 UTC)

Made the steps without progress counter reset immediately upon changing the learning rate.

Modified
dlib/dnn/trainer.h

Revision: 45b0db5d2ba20909
Author: Davis King
Date: Jun 01, 2016 (02:51:46 UTC)

made tests more repeatable

Modified
dlib/test/dnn.cpp

Revision: 9017ee37672b6536
Author: Davis King
Date: May 31, 2016 (08:40:48 UTC)

fixed compile time error

Modified
dlib/matlab/subprocess_stream.h

Revision: 763f4c6984a81014
Author: Davis King
Date: May 31, 2016 (08:37:25 UTC)

Added subprocess_stream so that complex things can be isolated from MATLAB's shenanigans in a separate process.

Added
dlib/matlab/subprocess_stream.cpp
dlib/matlab/subprocess_stream.h

Revision: f5f7f0af60574181
Author: Davis King
Date: May 31, 2016 (08:27:59 UTC)

Made the mex wrapper trap all std::exception derived exceptions rather than just dlib exceptions.

Modified
dlib/matlab/mex_wrapper.cpp

Revision: 64027e70595b7888
Author: Davis King
Date: May 31, 2016 (02:45:02 UTC)

Made imglab show the name of the current image in the title bar.

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

Revision: 38a6da59fda1fc3e
Author: Davis King
Date: May 30, 2016 (09:14:04 UTC)

minor cleanup

Modified
examples/dnn_inception_ex.cpp

Revision: 22868c99e2671f1d
Author: Davis King
Date: May 30, 2016 (07:39:16 UTC)

clarified spec

Modified
dlib/dnn/tensor_abstract.h

Revision: dd8ebb421e62df84
Author: Davis King
Date: May 30, 2016 (05:24:19 UTC)

fixed typo

Modified
dlib/dnn/layers_abstract.h

Revision: a37f304c93a471bf
Author: Davis King
Date: May 30, 2016 (05:17:46 UTC)

A little more cleanup in the spec

Modified
dlib/dnn/layers_abstract.h

Revision: fcd9cac1209ad70b
Author: Davis King
Date: May 30, 2016 (04:54:02 UTC)

fixed typo

Modified
dlib/dnn/tensor_tools.h

Revision: 9ff207d88a180dd7
Author: Davis King
Date: May 30, 2016 (04:50:49 UTC)

clarified spec

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

Revision: e2263ff9f026587b
Author: Davis King
Date: May 30, 2016 (04:50:28 UTC)

Clarified some parts of the example.

Modified
examples/dnn_inception_ex.cpp

Revision: 98f6ba7640ae5482
Author: Fm
Date: May 29, 2016 (20:21:42 UTC)

Replaced sizeof... with variadic templates

Modified
dlib/dnn/layers.h

Revision: 4a1e8f032a7503de
Author: Fm
Date: May 27, 2016 (17:49:11 UTC)

Removed friend declaration of dnn_tester from core.h

Modified
dlib/dnn/core.h
dlib/test/dnn.cpp

Revision: 20baf67694b60a0f
Author: Fm
Date: May 27, 2016 (12:55:15 UTC)

Changed concat syntax into concat1, concat2..., made dtest more readable::

Modified
dlib/dnn/core.h
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h
dlib/test/dnn.cpp
examples/dnn_inception_ex.cpp

Revision: e445f5915620bb31
Author: Fm
Date: May 26, 2016 (22:40:10 UTC)

Added layer access and printing examples to inception sample

Modified
examples/dnn_inception_ex.cpp

Revision: 17828db2f61a2744
Author: Evgeniy Fominov
Date: May 26, 2016 (21:26:08 UTC)

Fixed dnn_tester in GPU mode for cpu_tensor test

Modified
dlib/test/dnn.cpp

Revision: 66435f70abd6303a
Author: Fm
Date: May 26, 2016 (20:51:44 UTC)

fixed cuda::copy_tensor

Modified
dlib/dnn/cuda_dlib.h

Revision: 63be501a69605ade
Author: Fm
Date: May 26, 2016 (20:43:54 UTC)

depth_group replaced with concat layer

Modified
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/layers.h
dlib/dnn/layers_abstract.h
dlib/dnn/tensor_tools.cpp
dlib/dnn/tensor_tools.h
dlib/test/dnn.cpp
examples/dnn_inception_ex.cpp

Revision: ce9fd4d4cfe2fbe0
Author: Fm
Date: May 26, 2016 (20:15:56 UTC)

Merge branch 'master' of https://github.com/davisking/dlib into dnn_group_layer

Modified
dlib/algs.h
dlib/dnn/core.h
dlib/dnn/core_abstract.h
dlib/dnn/cpu_dlib.cpp
dlib/dnn/cpu_dlib.h
dlib/dnn/cuda_dlib.cu
dlib/dnn/cuda_dlib.h
dlib/dnn/cudnn_dlibapi.cpp
dlib/dnn/cudnn_dlibapi.h
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h
dlib/dnn/solvers.h
dlib/dnn/solvers_abstract.h
dlib/dnn/tensor_tools.cpp
dlib/dnn/tensor_tools.h
dlib/dnn/trainer.h
dlib/optimization/optimization.h
dlib/optimization/optimization_abstract.h
dlib/test/dnn.cpp
examples/dnn_mnist_advanced_ex.cpp
examples/webcam_face_pose_ex.cpp
Added
tools/visual_studio_natvis/README.txt
tools/visual_studio_natvis/dlib.natvis

Revision: ccae12930d226e99
Author: Fm
Date: May 17, 2016 (16:36:48 UTC)

depth layer: cuda concat/split moved to cpu/cuda files

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

Revision: 1b0d06e416ec8c11
Author: Fm
Date: May 17, 2016 (16:07:04 UTC)

Grouping layer added

Modified
dlib/dnn/core.h
dlib/dnn/tensor_tools.cpp
dlib/dnn/tensor_tools.h
examples/CMakeLists.txt
Added
examples/dnn_inception_ex.cpp

Revision: 3710f9bf7d1b3224
Author: Davis King
Date: May 30, 2016 (03:35:25 UTC)

Cleaned up the contracts a little.

Modified
dlib/dnn/trainer_abstract.h

Revision: 01810065fb5a3a96
Author: Fm
Date: May 30, 2016 (12:25:23 UTC)

Added getter for trainer::train_one_step_calls

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

Revision: 014ef16a406d4985
Author: Davis King
Date: May 25, 2016 (15:12:36 UTC)

Made add_prev output a tensor with dimensions that are the max of each of the dimensions of its inputs rather than always outputting a tensor that has the dimensions of its immediate predecessors.

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

Revision: 5c6dc31e052bfcbc
Author: Davis King
Date: May 23, 2016 (18:01:47 UTC)

updated example

Modified
examples/dnn_mnist_advanced_ex.cpp

Revision: 026791e9404a4608
Author: Davis King
Date: May 23, 2016 (18:01:37 UTC)

Added bias learning rate and weight decay multipliers to bn_ layers

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

Revision: 02842d1ead9a1bd9
Author: Davis King
Date: May 23, 2016 (16:25:43 UTC)

Relaxed the requirements for calling find_min_box_constrained() and find_max_box_constrained(). Now the bounds can be empty for some variables.

Modified
dlib/optimization/optimization.h
dlib/optimization/optimization_abstract.h

Revision: 587ed2505faee4c2
Author: Davis King
Date: May 23, 2016 (15:57:53 UTC)

Changed code to avoid recreating thread_local cuda context objects.

Modified
dlib/dnn/trainer.h

Revision: 522937162ba182fb
Author: Davis King
Date: May 23, 2016 (02:54:55 UTC)

fixed broken tests

Modified
dlib/test/dnn.cpp

Revision: 4b0ba40bdee010ac
Author: Davis King
Date: May 22, 2016 (12:30:09 UTC)

Fixed a bug I introduced a minute ago.

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

Revision: 2d780c8ff054e5fa
Author: Davis King
Date: May 22, 2016 (12:14:10 UTC)

Fixed a bug in visit_layer_parameter_gradients() and visit_layer_parameters() caused by num_computational_layers being wrong when tax layers were placed as the first layer. These visit functions being wrong also caused multi-GPU support to not work on such networks.

Modified
dlib/dnn/core.h
dlib/test/dnn.cpp

Revision: a06033d239b68adf
Author: Davis King
Date: May 22, 2016 (11:49:40 UTC)

Changed the trainer threading code to use dlib::thread_pool instead of std::async() since std::async creates new threads with each invocation, which in turn causes objects with thread_local storage duration to be reconstructed each time. This is problematic because CUDA context objects for cublas and cudnn get reconstructed over and over, slowing things down and generally using more resources than should be used.

Modified
dlib/dnn/trainer.h

Revision: 635828e53bcfa8b5
Author: Davis King
Date: May 22, 2016 (09:17:10 UTC)

Cleaned up code a little and made the example use a better version of the architecture.

Modified
examples/dnn_mnist_advanced_ex.cpp

Revision: 516e7894b163d9af
Author: Davis King
Date: May 22, 2016 (06:30:15 UTC)

Fixing tests

Modified
dlib/test/dnn.cpp

Revision: 3d9334b28d23a9b2
Author: Davis King
Date: May 22, 2016 (06:26:23 UTC)

Made the batch normalization epsilon user settable rather than being hard coded.

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

Revision: 4e294c1002fb2c55
Author: Davis King
Date: May 22, 2016 (05:59:34 UTC)

Added learning rate and weight decay multipliers to the con_, fc_, and bn_ layers. Updated the solvers to support this.

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/layers_abstract.h
dlib/dnn/solvers.h
dlib/dnn/solvers_abstract.h
dlib/dnn/tensor_tools.cpp
dlib/dnn/tensor_tools.h

Revision: bc894dae480c2f42
Author: Davis King
Date: May 21, 2016 (19:23:06 UTC)

Added more tests for the new affine_transform_range()

Modified
dlib/test/dnn.cpp

Revision: dc05bb90894d0679
Author: Davis King
Date: May 21, 2016 (19:22:26 UTC)

Added affine_transform_range() and another overload of affine_transform()

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

Revision: b208f4f16b9c260d
Author: Davis King
Date: May 21, 2016 (19:16:49 UTC)

Added get_learning_rate_multiplier() and get_weight_decay_multiplier() global functions.

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

Revision: 7b9b836fbf616591
Author: Davis King
Date: May 20, 2016 (04:29:39 UTC)

Added Johannes Huber's natvis file for visual studio.

Added
tools/visual_studio_natvis/README.txt
tools/visual_studio_natvis/dlib.natvis

Revision: 618761489d8a13f8
Author: Davis King
Date: May 18, 2016 (18:22:56 UTC)

Added an error message if a camera isn't available.

Modified
examples/webcam_face_pose_ex.cpp

Revision: 4e5df0eb8c401a7d
Author: Davis King
Date: May 15, 2016 (15:56:55 UTC)

Made LIB_INSTALL_DIR only appear when building dlib as an installable library, not when using dlib in another cmake project.

Modified
dlib/CMakeLists.txt

Revision: c3279168c3c34c99
Author: Davis King
Date: May 15, 2016 (12:28:44 UTC)

Now when you print a network to cout it will include the output tensor sizes for each layer if you have passed a tensor through the next.

Modified
dlib/dnn/core.h

Revision: d784ee76714119be
Author: Davis King
Date: May 15, 2016 (11:07:04 UTC)

Renamed compute_loss() to compute_loss_value_and_gradient() in the loss interface.

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

Revision: 39a1fc83d8d55527
Author: Davis King
Date: May 15, 2016 (10:52:33 UTC)

Added comment to show how to deserialize a network.

Modified
examples/dnn_mnist_ex.cpp

Revision: 0e27a08f87456e17
Author: Davis King
Date: May 15, 2016 (10:48:06 UTC)

Added a function to dnn_trainer that lets you query the "steps without progress" estimate. I also renamed the get/set functions for the shrink amount to have a consistent name and use the word "factor" instead of "amount".

Modified
dlib/dnn/trainer.h
dlib/dnn/trainer_abstract.h
examples/dnn_mnist_advanced_ex.cpp

Revision: 7444fe767025d77d
Author: Davis King
Date: May 15, 2016 (10:36:02 UTC)

Added set_learning_rate_schedule() to dnn_trainer.

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

Revision: 39d21efc90ccb750
Author: Davis King
Date: May 15, 2016 (10:31:06 UTC)

clarified comments.

Modified
examples/dnn_mnist_ex.cpp

Revision: 871c2767b46c95e1
Author: Davis King
Date: May 14, 2016 (16:30:45 UTC)

Changed the solver interface to take the learning rate and the layer details object as an input. This allows the solvers to exhibit a more complex behavior that depends on the specific layer. It also removes the learning rate from the solver's parameter set and pushes it entirely into the core training code. This also removes the need for the separate "step size" which previously was multiplied with the output of the solvers. Most of the code is still the same, and in the core and trainer the step_size variables have just been renamed to learning_rate. The dnn_trainer's relevant member functions have also been renamed. The examples have been updated to reflect these API changes. I also cleaned up the resnet definition and added better downsampling.

Modified
dlib/dnn/core.h
dlib/dnn/core_abstract.h
dlib/dnn/solvers.h
dlib/dnn/solvers_abstract.h
dlib/dnn/trainer.h
dlib/dnn/trainer_abstract.h
examples/dnn_mnist_advanced_ex.cpp
examples/dnn_mnist_ex.cpp

Revision: b8ca79904d4df660
Author: Davis King
Date: May 13, 2016 (05:01:24 UTC)

Made printing to cout or cerr check for matlab ctrl+c and throw an exception if so. This way, if you have a long running mex file it will be killable if it is periodically printing.

Modified
dlib/matlab/mex_wrapper.cpp

Revision: 13b81b51041983ed
Author: Davis King
Date: May 13, 2016 (19:08:03 UTC)

Fixed the in-place layers so that they don't interfere with the operation of skip layers and add_prev style layers. In particular, now in-place layers only overwrite the gradient information in their child layer if they are operating in in-place mode. Otherwise, they add their gradients to their child layers. It should also be noted that it's safe for in-place layers to overwrite gradients when in in-place mode since their child layers are inaccessible when in-place layers operate in in-place mode. This prevents any other layers from trying to add to the child layer, thereby avoiding the potability of layer interference. So the bug this change fixes is that, when not in in-place mode the child layers are still accessible but in-place layers were *still* overwriting child gradients.

Modified
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/cudnn_dlibapi.cpp
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h
dlib/dnn/tensor_tools.cpp
dlib/dnn/tensor_tools.h
dlib/test/dnn.cpp

Revision: 60eaa594e8f9ed9a
Author: Davis King
Date: May 13, 2016 (04:50:25 UTC)

Added intel architecture detection so SSE/AVX isn't enabled when it shouldn't be.

Modified
dlib/cmake

Revision: 618d4d0caeea942f
Author: Davis King
Date: May 13, 2016 (04:35:22 UTC)

Made dropout layer initialize its random number generator from std::rand() rather than always using the same seed.

Modified
dlib/dnn/layers.h

Revision: 0783d49a146c2dca
Author: Davis King
Date: May 13, 2016 (02:40:15 UTC)

Fixed a compiler error on some systems.

Modified
dlib/dnn/trainer.h

Revision: 40786b4dc5d40d45
Author: Davis King
Date: May 13, 2016 (02:32:18 UTC)

slightly relaxed tests to avoid false failure

Modified
dlib/test/cca.cpp

Revision: cc68d1ade3dc40ef
Author: Davis King
Date: May 12, 2016 (15:40:24 UTC)

I accidentally turned the max pooling layers into average pooling a few days ago. This fixes that and turns them back into max pooling layers.

Modified
dlib/dnn/layers.h

Revision: 6ff5d3ff3c55eea7
Author: Davis King
Date: May 12, 2016 (15:22:53 UTC)

Fixed network constructors so you can give an input layer for initialization without getting a compiler error.

Modified
dlib/dnn/core.h

Revision: 568c5b7a3c53ac37
Author: David Seifert
Date: May 10, 2016 (11:18:12 UTC)

* Add pkg-config file, allowing for build-system agnostic dependencies * Define LIB_INSTALL_DIR cache variable, allowing for multilib installations * Discover BLAS and LAPACK via pkg-config if possible * Fix incorrect toolchain variables in "dlib/test/makefile"

Modified
dlib/CMakeLists.txt
dlib/cmake_find_blas.txt
dlib/test/makefile
Added
dlib/dlib.pc.in

Revision: bb367dc2e9167075
Author: Davis King
Date: May 09, 2016 (17:46:04 UTC)

Fixed compiler warnings

Modified
dlib/dnn/layers.h

Revision: c3961540917e8ead
Author: Davis King
Date: May 07, 2016 (10:30:42 UTC)

Made example use the "everything" version of avg pooling.

Modified
examples/dnn_mnist_advanced_ex.cpp

Revision: 7cd9a0f83797aaa2
Author: Davis King
Date: May 07, 2016 (10:30:18 UTC)

Added max_pool_everything and avg_pool_everything.

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

Revision: 372ff5b758a749b6
Author: Davis King
Date: May 07, 2016 (03:53:27 UTC)

Changed extract_fhog_features() back to returning matrix<double> since that's what it's contract says needs to happen (and what existing code expects).

Modified
dlib/image_transforms/fhog.h

Revision: f4220a92d0945ae6
Author: Davis King
Date: May 05, 2016 (02:58:52 UTC)

Made test error reporting more reliable

Modified
dlib/test/dnn.cpp

Revision: 50ac43e3dd2f8241
Author: Davis King
Date: May 04, 2016 (17:40:29 UTC)

Fixed avg pooling filter sizes to avoid errors with the new rules about non-one based strides.

Modified
examples/dnn_mnist_advanced_ex.cpp

Revision: eb8b88ef7fa28a51
Author: Davis King
Date: May 04, 2016 (17:39:31 UTC)

Improved error messages

Modified
dlib/dnn/cudnn_dlibapi.cpp

Revision: e9e47cb7c080c0d1
Author: Davis King
Date: May 04, 2016 (17:32:59 UTC)

Pushed the padding parameters into the con_, max_pool_, and avg_pool_ interfaces. Also changed the default behavior when the stride isn't 1. Now the filters will be applied only to the "valid" part of the image.

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

Revision: 220cb636af22fc71
Author: Davis King
Date: May 04, 2016 (17:27:10 UTC)

Added missing ; to DLIB_TEST and DLIB_TEST_MSG macros now that they are required.

Modified
dlib/test/directed_graph.cpp
dlib/test/entropy_coder.cpp
dlib/test/image.cpp
dlib/test/is_same_object.cpp
dlib/test/matrix.cpp
dlib/test/matrix3.cpp
dlib/test/one_vs_all_trainer.cpp
dlib/test/one_vs_one_trainer.cpp
dlib/test/smart_pointers.cpp
dlib/test/vectorstream.cpp

Revision: 729ca298c8af56ba
Author: Davis King
Date: May 04, 2016 (17:13:28 UTC)

fixed typo in comment

Modified
dlib/dnn/tensor_tools.h

Revision: 90ea73cf501ccbf3
Author: Davis King
Date: May 03, 2016 (18:55:46 UTC)

Added a padding parameter to the pooling and convolution classes. Still need to expose it in the final layer interface.

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: 83e6c2039931488d
Author: Davis King
Date: May 03, 2016 (17:44:39 UTC)

Made test less likely to false alarm.

Modified
dlib/test/dnn.cpp

Revision: 4f7582a53f71129e
Author: Davis King
Date: May 03, 2016 (16:36:09 UTC)

Improved macros

Modified
dlib/test/tester.h

Revision: fdbea5506e703c20
Author: Davis King
Date: May 02, 2016 (14:53:00 UTC)

fixed typo in spec

Modified
dlib/dnn/layers_abstract.h

Revision: c3b4a21758840cb5
Author: Davis King
Date: May 01, 2016 (02:56:34 UTC)

Made dlib work with libgif v5

Modified
dlib/image_loader/load_image.h

Revision: 954882c0e1988cf9
Author: Davis King
Date: Apr 30, 2016 (08:53:53 UTC)

Fixed bugs in multi-gpu training code.

Modified
dlib/dnn/trainer.h

Revision: 20cd0a18e869097d
Author: Davis King
Date: Apr 30, 2016 (08:28:00 UTC)

Added comments

Modified
dlib/dnn/tensor_tools.h

Revision: 887d57118bd8fd5e
Author: Davis King
Date: Apr 30, 2016 (07:09:50 UTC)

Added a num_device_groups() member function.

Modified
dlib/dnn/tensor_tools.h

Revision: 07892c7da7acd6cf
Author: Davis King
Date: Apr 30, 2016 (06:42:16 UTC)

Made launch_kernel() not generate CUDA errors if you ask it to launch a kernel of size 0.

Modified
dlib/dnn/cuda_utils.h

Revision: 421efd4210679302
Author: Davis King
Date: Apr 29, 2016 (05:53:05 UTC)

Added missing #include.

Modified
dlib/image_processing/shape_predictor.h

Revision: 65cf7575aafb4cbd
Author: Davis King
Date: Apr 29, 2016 (05:40:19 UTC)

Fixed namespace lookup problem due to a name clash.

Modified
dlib/bridge/bridge.h

Revision: d62d1a0d6ffeb2fe
Author: Davis King
Date: Apr 29, 2016 (04:04:54 UTC)

Fixed compiler warnings

Modified
dlib/dnn/cuda_dlib.h

Revision: 571005f4faf0882f
Author: Davis King
Date: Apr 29, 2016 (02:55:53 UTC)

Made multi-gpu mode use GPUDirect rather than copying through the CPU.

Modified
dlib/dnn/trainer.h

Revision: 6fe15da64792f203
Author: Davis King
Date: Apr 29, 2016 (02:55:04 UTC)

Made the multi_device_tensor_averager not assume the size of the tensors is known at set() time.

Modified
dlib/dnn/tensor_tools.h

Revision: 48a99971f1ea434c
Author: Davis King
Date: Apr 29, 2016 (02:54:30 UTC)

clarified spec

Modified
dlib/dnn/gpu_data_abstract.h
dlib/dnn/tensor_abstract.h

Revision: af950eda6373c303
Author: Davis King
Date: Apr 27, 2016 (17:50:31 UTC)

Added multi_device_tensor_averager

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

Revision: 382ca209c76c35ab
Author: Davis King
Date: Apr 28, 2016 (15:41:27 UTC)

clarified example

Modified
examples/dnn_mnist_advanced_ex.cpp

Revision: 4753e463b89f997b
Author: Davis King
Date: Apr 28, 2016 (14:57:15 UTC)

Fixed a bug in gaussian_blur() that caused messed up outputs when big sigma values were used on some pixel types.

Modified
dlib/image_transforms/spatial_filtering.h

Revision: 41c444435b2385a9
Author: Davis King
Date: Apr 27, 2016 (16:20:06 UTC)

Added more overloads of affine_transform()

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

Revision: c5214e7148b85015
Author: Davis King
Date: Apr 27, 2016 (16:18:57 UTC)

Added device_id() methods to gpu_data and tensor objects. These functions allow you to find out which device owns the memory inside these objects.

Modified
dlib/dnn/gpu_data.cpp
dlib/dnn/gpu_data.h
dlib/dnn/gpu_data_abstract.h
dlib/dnn/tensor.h
dlib/dnn/tensor_abstract.h

Revision: d977f0ca4678aeb6
Author: Davis King
Date: Apr 27, 2016 (08:36:50 UTC)

Made the cout and cerr redirection in mex files restore the state of the streambufs before exiting.

Modified
dlib/matlab/mex_wrapper.cpp

Revision: b71f11ff98266453
Author: Davis King
Date: Apr 26, 2016 (06:24:19 UTC)

Made the elastic_net inputs be in terms of trans(X)*X and trans(X)*Y rather than raw X and Y matrices.

Modified
dlib/optimization/elastic_net.h
dlib/optimization/elastic_net_abstract.h
dlib/test/elastic_net.cpp

Revision: 149bf8ce51ab635f
Author: Davis King
Date: Apr 26, 2016 (05:52:19 UTC)

made code faster

Modified
dlib/optimization/elastic_net.h

Revision: df16cfe84a9c8d84
Author: Davis King
Date: Apr 25, 2016 (13:05:10 UTC)

Added elastic_net solver.

Modified
dlib/test/CMakeLists.txt
Added
dlib/optimization/elastic_net.h
dlib/optimization/elastic_net_abstract.h
dlib/test/elastic_net.cpp

Revision: 82b56e9009ce9f58
Author: Davis King
Date: Apr 25, 2016 (12:34:14 UTC)

removed cruft

Modified
dlib/optimization/find_optimal_parameters.h

Revision: ea754bbf352d401d
Author: Davis King
Date: Apr 27, 2016 (04:49:02 UTC)

Fixed double counting of mini-batches for the purposes of solver termination when multiple GPUs are used.

Modified
dlib/dnn/trainer.h

Revision: d67d73abd4f07c93
Author: Davis King
Date: Apr 27, 2016 (04:48:23 UTC)

Fixed bad random number generation in layer initialization.

Modified
dlib/dnn/layers.h

Revision: 1289c4158a69a14e
Author: Davis King
Date: Apr 25, 2016 (04:26:29 UTC)

Added missing function

Modified
dlib/matrix/matrix.h

Revision: bc511d37a590fd3e
Author: Davis King
Date: Apr 25, 2016 (03:01:36 UTC)

fixed bug in tests

Modified
dlib/test/dnn.cpp

Revision: 96de7615a7de6fa9
Author: Davis King
Date: Apr 24, 2016 (06:08:55 UTC)

Added memcpy() functions for tensor and gpu_data objects.

Modified
dlib/dnn/gpu_data.cpp
dlib/dnn/gpu_data.h
dlib/dnn/gpu_data_abstract.h
dlib/dnn/tensor.h
dlib/dnn/tensor_abstract.h
dlib/test/dnn.cpp

Revision: dba3d6dfde580066
Author: Davis King
Date: Apr 24, 2016 (06:07:24 UTC)

Improved more macros

Modified
dlib/dnn/cublas_dlibapi.cpp
dlib/dnn/cudnn_dlibapi.cpp
dlib/dnn/curand_dlibapi.cpp

Revision: 36ec0f54919fda74
Author: Davis King
Date: Apr 24, 2016 (06:05:37 UTC)

Improved CHECK_CUDA() macro

Modified
dlib/dnn/cuda_utils.h

Revision: 2d3266a41aa46fb6
Author: Davis King
Date: Apr 24, 2016 (04:33:39 UTC)

fixed grammar in comment

Modified
dlib/dnn/tensor.h

Revision: fb67a0f047dfce1e
Author: Davis King
Date: Apr 21, 2016 (13:27:56 UTC)

Fixed an error where some assignments to matrix output variables would result in an exception getting thrown.

Modified
dlib/matlab/mex_wrapper.cpp

Revision: a3cf389a0072b72d
Author: Davis King
Date: Apr 20, 2016 (04:39:49 UTC)

Made the mex wrapper flush output streams to the matlab console when the mex function ends.

Modified
dlib/matlab/mex_wrapper.cpp

Revision: c09b25e5f529b5e6
Author: Davis King
Date: Apr 19, 2016 (17:57:59 UTC)

Fixed file I/O error that happens only on windows.

Modified
dlib/dnn/trainer.h

Revision: 503feb0d491f3a18
Author: Davis King
Date: Apr 19, 2016 (02:45:35 UTC)

Added visit_layer_parameter_gradients() and also fixed a silly synchronization error in the multi-gpu training code.

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

Revision: 963c45cf80a9f8f9
Author: Davis King
Date: Apr 19, 2016 (02:44:31 UTC)

Fixed typo in example

Modified
examples/dnn_mnist_advanced_ex.cpp

Revision: 1fbe04b3b9053871
Author: Davis King
Date: Apr 18, 2016 (18:48:07 UTC)

Added comments about using multiple GPUs

Modified
examples/dnn_mnist_advanced_ex.cpp

Revision: cf6bbb04b4e881da
Author: Davis King
Date: Apr 18, 2016 (18:03:02 UTC)

Added multi-gpu support to the dnn_trainer

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

Revision: d764426ce0679f89
Author: Davis King
Date: Apr 18, 2016 (18:02:42 UTC)

Added missing assert

Modified
dlib/dnn/cuda_dlib.h

Revision: 1e568527c996bcaf
Author: Davis King
Date: Apr 18, 2016 (14:11:38 UTC)

Added find_optimal_parameters()

Modified
dlib/test/CMakeLists.txt
Added
dlib/optimization/find_optimal_parameters.h
dlib/optimization/find_optimal_parameters_abstract.h
dlib/test/find_optimal_parameters.cpp

Revision: 1742063e07f8b432
Author: Davis King
Date: Apr 18, 2016 (14:11:16 UTC)

Fixed typo in error message

Modified
dlib/optimization/optimization_bobyqa.h

Revision: f6a281b9d2e007c8
Author: Davis King
Date: Apr 18, 2016 (14:04:00 UTC)

Added operator= that takes an initializer_list so that = assignments always behave in the way you would expect.

Modified
dlib/matrix/matrix.h
dlib/matrix/matrix_abstract.h

Revision: 15012d37a03bd5be
Author: Davis King
Date: Apr 18, 2016 (13:35:02 UTC)

Added a matrix constructor that takes an initializer list.

Modified
dlib/matrix/matrix.h
dlib/matrix/matrix_abstract.h

Revision: 729d47ae6f821e96
Author: Davis King
Date: Apr 17, 2016 (10:39:41 UTC)

Added visit_layer_parameters()

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

Revision: a3a8db1dbb4e78e2
Author: Davis King
Date: Apr 17, 2016 (10:35:40 UTC)

Clarified error message

Modified
dlib/dnn/trainer.h

Revision: d6fe2c4233115ef2
Author: Davis King
Date: Apr 17, 2016 (06:11:05 UTC)

Split the update() methods into two parts. One that computes gradients with respect to parameters and one that updates the parameters with those gradients.

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

Revision: 661d51740939813e
Author: Davis King
Date: Apr 17, 2016 (03:41:29 UTC)

fixed linker error

Modified
dlib/dnn/cuda_dlib.h

Revision: 76f63eb40a7ef8c1
Author: Davis King
Date: Apr 16, 2016 (18:43:17 UTC)

Made unit test less likely to false alarm.

Modified
dlib/test/dnn.cpp

Revision: db5185cfde94820c
Author: Davis King
Date: Apr 16, 2016 (17:12:31 UTC)

Added get_num_devices()

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

Revision: b7675e870b977dc9
Author: Davis King
Date: Apr 16, 2016 (06:50:15 UTC)

- Renamed network_type::num_layers to network_type::num_computational_layers. - Made layer() recurse into repeat objects so that the index given to layer() does what you would expect. - Added an operator<< for network objects that prints the network architecture.

Modified
dlib/dnn/core.h
dlib/dnn/core_abstract.h
dlib/dnn/input.h
dlib/dnn/input_abstract.h
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h
dlib/dnn/loss.h
dlib/dnn/loss_abstract.h
dlib/dnn/trainer.h
dlib/dnn/trainer_abstract.h
dlib/test/dnn.cpp
examples/dnn_mnist_advanced_ex.cpp

Revision: 0ffad5712a6341e3
Author: Davis King
Date: Apr 16, 2016 (02:36:59 UTC)

fixed typo

Modified
dlib/dnn/layers_abstract.h

Revision: cb3d86acba215761
Author: Davis King
Date: Apr 16, 2016 (02:36:07 UTC)

renamed EXAMPLE_LAYER_ to EXAMPLE_COMPUTATIONAL_LAYER_

Modified
dlib/dnn/core_abstract.h
dlib/dnn/layers_abstract.h

Revision: 3363f5e21ae3dc70
Author: Davis King
Date: Apr 16, 2016 (02:22:43 UTC)

Added a few more tests

Modified
dlib/test/dnn.cpp

Revision: fbc638691df94bd3
Author: Davis King
Date: Apr 14, 2016 (17:48:59 UTC)

fixed grammar in some comments

Modified
dlib/dnn/core.h

Revision: 058103555a26432d
Author: Davis King
Date: Apr 12, 2016 (05:20:09 UTC)

Fixed compiler errors when using std::vector in mex wrapper.

Modified
dlib/matlab/mex_wrapper.cpp

Revision: b13636e9fb635092
Author: Davis King
Date: Apr 11, 2016 (19:11:18 UTC)

Seeded random number generator with the clock since that's generally a good thing to do for this kind of training.

Modified
examples/dnn_mnist_advanced_ex.cpp

Revision: 70ec47c3a91f216e
Author: Davis King
Date: Apr 11, 2016 (19:06:32 UTC)

fixed formatting

Modified
examples/dnn_mnist_advanced_ex.cpp

Revision: 838bbeb2fefe9f9d
Author: Davis King
Date: Apr 11, 2016 (18:58:54 UTC)

Clarified spec and cleaned up code slightly

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

Revision: 4971ae6ba72b7f63
Author: Davis King
Date: Apr 11, 2016 (18:57:11 UTC)

renamed a file

Modified
examples/CMakeLists.txt
Added
examples/dnn_mnist_advanced_ex.cpp
Deleted
examples/dnn_mnist_resnet_ex.cpp

Revision: d76ef2221d82a087
Author: Davis King
Date: Apr 11, 2016 (18:55:49 UTC)

Fleshed out these examples more.

Modified
examples/dnn_mnist_ex.cpp
examples/dnn_mnist_resnet_ex.cpp

Revision: 6a2c295f6960714f
Author: Davis King
Date: Apr 11, 2016 (17:18:14 UTC)

Fixed grammar and clarified a few things.

Modified
examples/dnn_mnist_ex.cpp

Revision: 1e48056383c33fff
Author: Davis King
Date: Apr 11, 2016 (05:00:44 UTC)

fixed an array indexing error.

Modified
dlib/image_transforms/fhog.h

Revision: d20a7098b28a858b
Author: Fm
Date: Apr 11, 2016 (14:08:52 UTC)

Removed simd4 and ifdef's

Modified
dlib/image_transforms/fhog.h

Revision: c9202e075e3bf2cb
Author: Fm
Date: Apr 05, 2016 (15:43:54 UTC)

Added simd8 usage on FHOG features computation

Modified
dlib/image_transforms/fhog.h

Revision: 45462f7305fca342
Author: Davis King
Date: Apr 10, 2016 (13:30:45 UTC)

Added a narrative to this example.

Modified
examples/dnn_mnist_ex.cpp

Revision: 549c04de7c7ef1a4
Author: Davis King
Date: Apr 10, 2016 (13:30:07 UTC)

Fixed errors in documentation

Modified
dlib/dnn/loss_abstract.h
dlib/dnn/trainer_abstract.h

Revision: 31a238732c92571b
Author: Davis King
Date: Apr 10, 2016 (09:41:05 UTC)

Minor code cleanup

Modified
dlib/dnn/trainer.h

Revision: 43df14dd5b8fcd4f
Author: Davis King
Date: Apr 10, 2016 (08:11:19 UTC)

Made examples work with new fc<> template.

Modified
examples/dnn_mnist_ex.cpp
examples/dnn_mnist_resnet_ex.cpp

Revision: c184315f61a7a774
Author: Davis King
Date: Apr 10, 2016 (08:10:56 UTC)

Made fc<> always use a bias and added an fc_no_bias<> for the other case.

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

Revision: c8a5e67104ad42bf
Author: Davis King
Date: Apr 10, 2016 (07:31:24 UTC)

Just renamed variables to reflect the new meaning of the batch normalization running variance output.

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.cpp
dlib/dnn/tensor_tools.h
dlib/test/dnn.cpp

Revision: f980a565be7ec565
Author: Davis King
Date: Apr 10, 2016 (06:54:49 UTC)

merged

Modified
dlib/dnn/test_for_cuda/CMakeLists.txt
dlib/dnn/test_for_cuda/cuda_test.cu

Revision: 5592e8a9218fff5a
Author: Davis King
Date: Apr 10, 2016 (06:52:40 UTC)

upgraded to cudnn v5. Also changed the affine_ layer to not be templated but to automatically select the right mode. The serialization format for bn_ layers has also changed, but the code will still be able to deserialize older bn_ objects.

Modified
dlib/CMakeLists.txt
dlib/dnn/cpu_dlib.cpp
dlib/dnn/cpu_dlib.h
dlib/dnn/cudnn_dlibapi.cpp
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h
dlib/dnn/tensor_tools.h
dlib/dnn/test_for_cuda/CMakeLists.txt
dlib/dnn/test_for_cudnn/CMakeLists.txt
dlib/test/dnn.cpp
examples/dnn_mnist_resnet_ex.cpp

Revision: 80bc833972968417
Author: Davis King
Date: Apr 09, 2016 (19:10:27 UTC)

Made the cuda test include some header files to make it a little more realistic.

Modified
dlib/dnn/test_for_cuda/CMakeLists.txt
dlib/dnn/test_for_cuda/cuda_test.cu

Revision: 119cca87d019254a
Author: Davis King
Date: Apr 09, 2016 (15:54:59 UTC)

Made unit test more robust

Modified
dlib/test/correlation_tracker.cpp

Revision: b852c4344d28736a
Author: Davis King
Date: Apr 09, 2016 (08:53:12 UTC)

Minor changes to avoid warnings and a bug in clang.

Modified
dlib/smart_pointers/shared_ptr.h
dlib/test/matrix3.cpp
dlib/test/smart_pointers.cpp

Revision: d07b8b3b67fc34d5
Author: Davis King
Date: Apr 09, 2016 (06:07:33 UTC)

Made tests more robust.

Modified
dlib/test/opt_qp_solver.cpp

Revision: 2cfc68c63c7f230f
Author: Davis King
Date: Apr 09, 2016 (05:21:17 UTC)

Fixed c++11 test program.

Modified
dlib/dnn/test_for_cpp11/cpp11_test.cpp

Revision: d7a29a9ee229f7ea
Author: Davis King
Date: Apr 09, 2016 (05:17:55 UTC)

Adjusted test threshold to avoid false test failure.

Modified
dlib/test/opt_qp_solver.cpp

Revision: 1d701541cd4c1220
Author: Davis King
Date: Apr 09, 2016 (05:16:57 UTC)

Improved C++11 detection.

Modified
dlib/dnn/test_for_cpp11/cpp11_test.cpp
dlib/use_cpp_11.cmake

Revision: 9cc6e176410847d1
Author: Davis King
Date: Apr 08, 2016 (19:13:48 UTC)

merged

Modified
dlib/image_processing/correlation_tracker.h
dlib/image_processing/correlation_tracker_abstract.h
dlib/test/CMakeLists.txt
Added
dlib/test/correlation_tracker.cpp
Deleted
dlib/test/corellation_tracker.cpp

Revision: 0960546668b7c82a
Author: Davis King
Date: Apr 08, 2016 (19:12:53 UTC)

Moved most of the layer parameters from runtime variables set in constructors to template arguments. This way, the type of a network specifies the entire network architecture and most of the time the user doesn't even need to do anything with layer constructors.

Modified
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h
dlib/test/dnn.cpp
examples/dnn_mnist_ex.cpp
examples/dnn_mnist_resnet_ex.cpp

Revision: 4d0e1f7574db73a0
Author: Davis King
Date: Apr 08, 2016 (18:37:28 UTC)

Improved the add_layer forwarding constructor. Also added repeat_group() variable decorator.

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

Revision: ac33bbf6978f92ec
Author: Davis King
Date: Apr 08, 2016 (15:59:32 UTC)

Added global functions for telling cuDNN to prefer fast or memory efficient algorithms.

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

Revision: 503bd7f8ba23d7c8
Author: Davis King
Date: Apr 08, 2016 (13:31:49 UTC)

fixed spelling error

Modified
dlib/test/CMakeLists.txt
Added
dlib/test/correlation_tracker.cpp
Deleted
dlib/test/corellation_tracker.cpp

Revision: 72a669118ee44279
Author: Fm
Date: Apr 08, 2016 (12:43:16 UTC)

Fixed corellation_tracker abstract docs

Modified
dlib/image_processing/correlation_tracker_abstract.h

Revision: 977b5387746a98bf
Author: Fm
Date: Apr 08, 2016 (12:39:15 UTC)

Changed corellation_tracker constructor

Modified
dlib/image_processing/correlation_tracker.h
dlib/image_processing/correlation_tracker_abstract.h

Revision: 701bb64050da859f
Author: Fm
Date: Apr 07, 2016 (21:54:07 UTC)

Added options for corellation tracker

Modified
dlib/image_processing/correlation_tracker.h

Revision: 310a0c43376990eb
Author: Fm
Date: Apr 07, 2016 (21:34:47 UTC)

Added options for corellation tracker

Modified
dlib/image_processing/correlation_tracker.h
dlib/image_processing/correlation_tracker_abstract.h

Revision: ff1b1d10ea8bc2ad
Author: Davis King
Date: Apr 08, 2016 (05:38:23 UTC)

Fixed bug in mex binding API.

Modified
dlib/matrix/matrix_data_layout.h

Revision: 5d01895f78be3ed8
Author: Davis King
Date: Apr 08, 2016 (04:59:06 UTC)

Minor change to avoid compiler warnings.

Modified
dlib/dnn/core.h

Revision: 0c2ff939b446c4be
Author: Davis King
Date: Apr 08, 2016 (03:18:15 UTC)

Fixed another compiler error that could happen with the forwarding constructor.

Modified
dlib/dnn/core.h

Revision: 769ccd8195b03bd7
Author: Davis King
Date: Apr 08, 2016 (02:41:16 UTC)

merged

Modified
dlib/image_transforms/fhog.h
dlib/simd/simd_check.h
dlib/test/CMakeLists.txt
Added
dlib/test/corellation_tracker.cpp

Revision: 199e769f8fe63728
Author: Fm
Date: Apr 07, 2016 (16:08:38 UTC)

Added regression test for corellation_tracker

Modified
dlib/test/corellation_tracker.cpp

Revision: b3665ca7fbf6de36
Author: Evgeniy Fominov
Date: Apr 07, 2016 (15:26:37 UTC)

Added regression test for corellation_tracker

Modified
dlib/test/CMakeLists.txt
Added
dlib/test/corellation_tracker.cpp

Revision: 4adfd448cc3121ba
Author: Evgeniy Fominov
Date: Apr 04, 2016 (22:57:46 UTC)

Changed fhog calculations from double to float

Modified
dlib/image_transforms/fhog.h

Revision: ccfd1177c903f8aa
Author: Fm
Date: Apr 04, 2016 (22:17:45 UTC)

Changed fhog calculations from double to float

Modified
dlib/image_transforms/fhog.h

Revision: d15692db0c1adead
Author: Fm
Date: Apr 01, 2016 (17:48:20 UTC)

MSVC SSE2 automatical support for x64

Modified
dlib/simd/simd_check.h

Revision: 5d4f7e09653e0f81
Author: Fm
Date: Apr 01, 2016 (17:46:44 UTC)

MSVC SSE2 automatical support for x64

Modified
dlib/simd/simd_check.h

Revision: e31145a495911911
Author: Davis King
Date: Apr 07, 2016 (19:16:17 UTC)

Fixed compile time bug in the constructor I just added.

Modified
dlib/dnn/core.h

Revision: a95dc910b9d3628f
Author: Davis King
Date: Apr 07, 2016 (18:55:17 UTC)

Made it so you can skip giving layer detail objects to a network's constructor if they should be default constructed.

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

Revision: 8dbd9509bfc600be
Author: Davis King
Date: Apr 07, 2016 (17:20:36 UTC)

clarified spec

Modified
dlib/dnn/trainer_abstract.h

Revision: 667fcf84576338de
Author: Davis King
Date: Apr 07, 2016 (09:01:37 UTC)

Fixed a bug that caused the matrix to throw an error during some assignment statements when used inside a matlab mex file.

Modified
dlib/matrix/matrix.h
dlib/matrix/matrix_data_layout.h

Revision: 0422b08dd4f2bf28
Author: Davis King
Date: Apr 01, 2016 (07:38:16 UTC)

Added a member function to get the line intercept from running_gradient.

Modified
dlib/statistics/running_gradient.h
dlib/statistics/running_gradient_abstract.h

Revision: cfaf4587b960a2ef
Author: Davis King
Date: Apr 02, 2016 (05:34:01 UTC)

Added input_rgb_image.

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

Revision: 2beff8e5240b5e48
Author: Davis King
Date: Mar 31, 2016 (17:11:11 UTC)

minor cleanup

Modified
dlib/dnn/layers.h

Revision: 79eb055fc06c3af4
Author: Davis King
Date: Mar 31, 2016 (17:10:56 UTC)

Added unit test for prelu layer.

Modified
dlib/test/dnn.cpp

Revision: f2332635c46ae093
Author: Davis King
Date: Mar 31, 2016 (17:07:04 UTC)

Added prelu layer

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/layers_abstract.h
dlib/dnn/tensor_tools.cpp
dlib/dnn/tensor_tools.h

Revision: 7b66399d2e76249b
Author: Davis King
Date: Mar 31, 2016 (16:58:34 UTC)

Fixed a bug in affine_. The layer was implemented as an inplace layer, however, that doesn't really work if we need to compute the gradients with respect to the parameters which the layer attempted to do. So I made the layer's parameters non-learnable so it can continue to be inplace since the main usecase for this layer is to be a fast replacement for bn_ during testing.

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

Revision: 1c5fb0b70e835b1f
Author: Evgeniy Fominov
Date: Mar 30, 2016 (13:37:03 UTC)

Python/Simple object detector trainer. Added upsample_limit option

Modified
tools/python/src/object_detection.cpp
tools/python/src/simple_object_detector.h

Revision: 734f0fb4bb347d06
Author: Davis King
Date: Mar 29, 2016 (06:26:55 UTC)

Yet more stability improvements for line_search().

Modified
dlib/optimization/optimization_line_search.h

Revision: dcc86b773ec3efb5
Author: Davis King
Date: Mar 29, 2016 (05:31:40 UTC)

More robustness improvements to line_search(). Mostly just parameter tweaks.

Modified
dlib/optimization/optimization_line_search.h

Revision: 8ee3c300c0a677c6
Author: Davis King
Date: Mar 28, 2016 (11:43:11 UTC)

Improved line_search() behavior for functions without continuous derivatives. Also made the bracketing phase more efficient.

Modified
dlib/optimization/optimization_line_search.h
dlib/optimization/optimization_line_search_abstract.h

Revision: b011a9ee773c6a55
Author: Davis King
Date: Mar 28, 2016 (07:36:34 UTC)

fixed spelling error in comment

Modified
dlib/optimization/optimization.h

Revision: aacce10e14dc4b4c
Author: Davis King
Date: Mar 27, 2016 (13:22:25 UTC)

Renamed variable to make things more clear.

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

Revision: 7abdbdceb61e6ab5
Author: Davis King
Date: Mar 27, 2016 (06:50:52 UTC)

A bit more cleanup

Modified
examples/dnn_mnist_resnet_ex.cpp

Revision: ee1fbe1c32859c40
Author: Davis King
Date: Mar 27, 2016 (06:29:30 UTC)

added more stuff to example

Modified
examples/dnn_mnist_resnet_ex.cpp

Revision: 98eb7ba76bbb11fa
Author: Davis King
Date: Mar 27, 2016 (04:45:44 UTC)

Minor change to avoid compiler warning

Modified
dlib/dnn/core.h

Revision: ff695ad1b6cf1d71
Author: Davis King
Date: Mar 26, 2016 (19:16:43 UTC)

Changed this example to be another mnist example so it runs in a non-insane amount of time.

Modified
examples/CMakeLists.txt
Added
examples/dnn_mnist_resnet_ex.cpp
Deleted
examples/dnn_mit67_ex.cpp

Revision: ca40de922d2182cb
Author: Davis King
Date: Mar 26, 2016 (19:07:38 UTC)

Removed cruft

Modified
examples/dnn_mnist_ex.cpp

Revision: 4c06a892e8125440
Author: Davis King
Date: Mar 26, 2016 (18:58:57 UTC)

Added ADAM tests

Modified
dlib/test/dnn.cpp

Revision: 905123f0f0cff88f
Author: Davis King
Date: Mar 26, 2016 (18:58:39 UTC)

Added ADAM solver.

Modified
dlib/dnn/cpu_dlib.cpp
dlib/dnn/cpu_dlib.h
dlib/dnn/cuda_dlib.cu
dlib/dnn/cuda_dlib.h
dlib/dnn/solvers.h
dlib/dnn/solvers_abstract.h
dlib/dnn/tensor_tools.cpp
dlib/dnn/tensor_tools.h

Revision: b8b33f71d134d07e
Author: Davis King
Date: Mar 26, 2016 (18:29:21 UTC)

Fixed bug in add_tag_layer that prevented it from working when placed immediately after the input layer.

Modified
dlib/dnn/core.h

Revision: 6a6085ece3bca92f
Author: Davis King
Date: Mar 26, 2016 (08:21:40 UTC)

Merged and also updated documentation to reflect these changes.

Modified
dlib/image_transforms/fhog.h
dlib/image_transforms/fhog_abstract.h

Revision: 19ac649297a5c7fa
Author: ray glover
Date: Mar 26, 2016 (11:49:34 UTC)

introduce a configurable threshold for rendering HOGs

Modified
dlib/image_transforms/fhog.h

Revision: bf5897181e4f071f
Author: Davis King
Date: Mar 25, 2016 (05:01:48 UTC)

Cleaned up trainer API and made the verbose output include information about how much the current step size has converged.

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

Revision: 796b0a395f829f24
Author: Davis King
Date: Mar 25, 2016 (04:32:30 UTC)

Added count_steps_without_decrease() and count_steps_without_increase().

Modified
dlib/statistics/running_gradient.h
dlib/statistics/running_gradient_abstract.h

Revision: 890c5c1966662914
Author: Davis King
Date: Mar 20, 2016 (15:28:57 UTC)

Adding clarifications to spec which were pointed out by Scott Richardson.

Modified
dlib/dnn/core_abstract.h
dlib/dnn/layers_abstract.h
dlib/dnn/tensor_abstract.h

Revision: 566ac5667b01ad4c
Author: Davis King
Date: Mar 18, 2016 (06:45:14 UTC)

Added apply_random_color_offset()

Modified
dlib/image_transforms/random_color_transform.h
dlib/image_transforms/random_color_transform_abstract.h

Revision: b66abed2e31c836f
Author: Davis King
Date: Mar 18, 2016 (06:44:52 UTC)

Added a constructor for seeding rand with a time_t.

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

Revision: 5f508c6622d2e3f5
Author: Davis King
Date: Mar 11, 2016 (10:34:39 UTC)

fixed cout and cerr in mex wrapper

Modified
dlib/matlab/mex_wrapper.cpp

Revision: ad6f383b3ad7b004
Author: Davis King
Date: Mar 11, 2016 (05:27:39 UTC)

Made cerr print in matlab as a red warning message.

Modified
dlib/matlab/mex_wrapper.cpp

Revision: 9448e717ce7e3a80
Author: Davis King
Date: Mar 11, 2016 (03:59:06 UTC)

Renamed check_for_ctrl_c() to check_for_matlab_ctrl_c(), put everything in call_matlab.h into dlib namespace, and also added missing overloads for call_matlab().

Modified
dlib/matlab/call_matlab.h
dlib/matlab/mex_wrapper.cpp

Revision: c83a0257963dfa10
Author: Davis King
Date: Mar 08, 2016 (10:22:40 UTC)

Updated comment

Modified
dlib/matlab/example_mex_function.cpp

Revision: 8226c88018dac504
Author: Davis King
Date: Mar 08, 2016 (10:19:43 UTC)

merged

Modified
dlib/CMakeLists.txt
dlib/optimization/optimization_solve_qp_using_smo.h
dlib/optimization/optimization_solve_qp_using_smo_abstract.h
dlib/test/mpc.cpp
docs/docs/optimization.xml
docs/docs/term_index.xml
Added
CMakeLists.txt

Revision: e3146feb788ef032
Author: Davis King
Date: Mar 08, 2016 (10:18:48 UTC)

Upgraded mex wrapper to support 20 argument functions instead of just 10.

Modified
dlib/any/any_function.h
dlib/matlab/mex_wrapper.cpp

Revision: 30dae5076d09fc81
Author: Davis King
Date: Mar 08, 2016 (10:18:19 UTC)

Made DLIB_ASSERT and DLIB_CASSERT not kill the process when running inside a MATLAB mex file.

Modified
dlib/error.h

Revision: 0c80a97e1aef7747
Author: Davis King
Date: Mar 06, 2016 (06:52:50 UTC)

merged

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

Revision: ada15024acf4db14
Author: Davis King
Date: Mar 06, 2016 (06:40:44 UTC)

Changed the cmake scripts to forward CMAKE_PREFIX_PATH to the try_compile statements rather than a cuDNN specific variable.

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

Revision: 970f40db2f509772
Author: Daniel Crispell
Date: Mar 04, 2016 (11:54:00 UTC)

allow user to interactively set CUDNN paths

Modified
dlib/CMakeLists.txt

Revision: 24f64fb03be60501
Author: Daniel Crispell
Date: Mar 04, 2016 (05:01:51 UTC)

standardize cmake and env CUDNN variable names

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

Revision: f78694b91e4e3419
Author: Daniel Crispell
Date: Mar 03, 2016 (13:16:17 UTC)

Check CUDNN environment variables for path

Modified
dlib/dnn/test_for_cudnn/find_cudnn.txt

Revision: 23ebf035fbcabaf5
Author: Daniel Crispell
Date: Mar 03, 2016 (13:15:21 UTC)

Don't include cudnn_include_path until we find it.

Modified
dlib/dnn/test_for_cudnn/CMakeLists.txt

Revision: 7e45a31a9ae8a226
Author: Daniel Crispell
Date: Feb 29, 2016 (12:41:51 UTC)

try_compile needs cudnn cmake vars explicitly passed

Modified
dlib/CMakeLists.txt

Revision: d493a93147c50a43
Author: Davis King
Date: Feb 29, 2016 (16:15:03 UTC)

merged

Modified
dlib/CMakeLists.txt
dlib/data_io/image_dataset_metadata.cpp
dlib/data_io/image_dataset_metadata.h
dlib/geometry/rectangle.h
dlib/geometry/rectangle_abstract.h
docs/docs/faq.xml
docs/docs/optimization.xml
Added
CMakeLists.txt

Revision: c2a07a67cae6a08c
Author: Davis King
Date: Feb 27, 2016 (04:23:18 UTC)

changed to run on image net

Modified
examples/dnn_mit67_ex.cpp

Revision: f3d21437bb93dadf
Author: Davis King
Date: Feb 27, 2016 (04:21:39 UTC)

Fixed spelling error in method name. Also optimized and cleaned up the automatic step size reduction code a little.

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

Revision: 13402155490c31bd
Author: Davis King
Date: Feb 22, 2016 (12:13:27 UTC)

merged

Modified
dlib/cmake_find_blas.txt
dlib/matrix/matrix_assign_fwd.h
dlib/matrix/matrix_data_layout.h
dlib/optimization/optimization_oca.h
dlib/optimization/optimization_oca_abstract.h
dlib/optimization/optimization_solve_qp_using_smo.h
dlib/optimization/optimization_solve_qp_using_smo_abstract.h
dlib/server/server_iostream.h
dlib/smart_pointers/shared_ptr.h
dlib/smart_pointers/shared_ptr_thread_safe.h
dlib/test/least_squares.cpp
dlib/test/oca.cpp
dlib/test/opt_qp_solver.cpp
dlib/test/smart_pointers.cpp
dlib/threads/threads_kernel_shared.h
docs/docs/optimization.xml

Revision: 5026d5c0625a7bb5
Author: Davis King
Date: Feb 18, 2016 (05:22:19 UTC)

merged

Modified
dlib/svm/svm_c_linear_dcd_trainer.h
dlib/svm/svm_c_linear_dcd_trainer_abstract.h

Revision: 44ba91e8c5a94968
Author: Davis King
Date: Feb 18, 2016 (05:14:52 UTC)

merged

Modified
dlib/svm/svm_c_linear_dcd_trainer.h

Revision: 133071cfea2f5b1c
Author: Davis King
Date: Feb 18, 2016 (05:14:06 UTC)

merged

Modified
dlib/svm/svm_c_linear_dcd_trainer.h
dlib/svm/svm_c_linear_dcd_trainer_abstract.h
dlib/test/svm_c_linear_dcd.cpp

Revision: e0d4c4ba7c04f194
Author: Davis King
Date: Feb 17, 2016 (06:08:23 UTC)

merged

Modified
dlib/svm/svm_c_linear_dcd_trainer.h
dlib/svm/svm_c_linear_dcd_trainer_abstract.h
dlib/test/svm_c_linear_dcd.cpp

Revision: df11a21c95048aaa
Author: Davis King
Date: Feb 16, 2016 (12:34:16 UTC)

Fixed spelling error in comment.

Modified
dlib/svm/svm_c_linear_dcd_trainer.h

Revision: 635a8fd1c758542b
Author: Davis King
Date: Feb 13, 2016 (03:31:12 UTC)

Updated dlib to work with the released cuDNN V4.0 and also updated the cmake scripts so they attempt to verify the version of cuDNN you have installed and print a useful message if that isn't the case.

Modified
dlib/CMakeLists.txt
dlib/dnn/cudnn_dlibapi.cpp
Added
dlib/dnn/test_for_cudnn/CMakeLists.txt
dlib/dnn/test_for_cudnn/find_cudnn.txt

Revision: 5586d7c274ad4e2a
Author: Davis King
Date: Feb 13, 2016 (00:26:56 UTC)

Made imglab look for gif files when scanning folders for images.

Modified
tools/imglab/src/main.cpp

Revision: 9633fc90038fe1c5
Author: Davis King
Date: Feb 11, 2016 (06:19:17 UTC)

Added asserts to catch a common user error.

Modified
dlib/matrix/matrix.h
dlib/matrix/matrix_abstract.h

Revision: a553d5f7991e6fa4
Author: Davis King
Date: Feb 11, 2016 (04:00:15 UTC)

Made check_for_ctrl_c() available outside matlab build system.

Modified
dlib/matlab/call_matlab.h

Revision: 0489dc8ec6cf50a2
Author: Davis King
Date: Feb 10, 2016 (07:13:32 UTC)

Made copying to matlab a little bit faster.

Modified
dlib/matlab/mex_wrapper.cpp

Revision: 8ba3d8fd59a64b80
Author: Davis King
Date: Feb 10, 2016 (06:35:53 UTC)

Fixed bug in 10 argument version of call_matlab() and also cleaned up a few minor things.

Modified
dlib/matlab/call_matlab.h
dlib/matlab/mex_wrapper.cpp
dlib/matrix/matrix_data_layout.h

Revision: 99c443d2273f4eb0
Author: Davis King
Date: Feb 09, 2016 (04:06:03 UTC)

clarified spec

Modified
dlib/dnn/loss_abstract.h

Revision: 5245eebad57216f0
Author: Davis King
Date: Feb 08, 2016 (09:02:27 UTC)

Removed unused variable

Modified
dlib/dnn/loss.h

Revision: 7f25538343058215
Author: Davis King
Date: Feb 08, 2016 (04:19:01 UTC)

Made the dnn_trainer check for convergence every iteration rather than only once every few thousand iterations.

Modified
dlib/dnn/trainer.h

Revision: 39b167a27518d384
Author: Davis King
Date: Feb 08, 2016 (04:13:02 UTC)

Removed gif filtering

Modified
examples/dnn_mit67_ex.cpp

Revision: f6a7aa3f132d9282
Author: Davis King
Date: Feb 08, 2016 (04:10:28 UTC)

Made the gif reader work on interlaced images.

Modified
dlib/image_loader/load_image.h

Revision: 2a21948ef05ccc1a
Author: Davis King
Date: Feb 08, 2016 (03:52:12 UTC)

Fixed GIF reader so it works on a wider variety of GIF files.

Modified
dlib/image_loader/load_image.h

Revision: cd52dc4c54cf01ad
Author: Davis King
Date: Feb 07, 2016 (15:59:55 UTC)

Made load_image() support GIF files.

Modified
dlib/CMakeLists.txt
dlib/config.h
dlib/config.h.in
dlib/image_loader/load_image.h
dlib/image_loader/load_image_abstract.h

Revision: 58e6b148279cb1d9
Author: Davis King
Date: Feb 06, 2016 (17:39:43 UTC)

Added some dnn examples.

Modified
examples/CMakeLists.txt
Added
examples/dnn_mit67_ex.cpp
examples/dnn_mnist_ex.cpp

Revision: 0366b94fec1e54cd
Author: Davis King
Date: Feb 05, 2016 (10:53:52 UTC)

merged

Modified
dlib/CMakeLists.txt
dlib/geometry/drectangle.h
dlib/geometry/drectangle_abstract.h
dlib/smart_pointers/shared_ptr.h
dlib/smart_pointers/shared_ptr_thread_safe.h
tools/python/CMakeLists.txt
tools/python/src/dlib.cpp
tools/python/src/rectangles.cpp
tools/python/src/shape_predictor.cpp
tools/python/src/shape_predictor.h

Revision: 1487dd70bea3a420
Author: Davis King
Date: Feb 05, 2016 (10:43:09 UTC)

Minor change to avoid compiler errors in older compilers

Modified
dlib/data_io/mnist.cpp

Revision: ead2f534487bdf3b
Author: Davis King
Date: Feb 05, 2016 (08:42:09 UTC)

Updated documentation

Modified
dlib/matlab/example_mex_function.cpp

Revision: 2b522636c72ca81e
Author: Davis King
Date: Feb 05, 2016 (07:50:02 UTC)

Fixed compile time error.

Modified
dlib/matlab/mex_wrapper.cpp

Revision: 73e14b7fc7b466ab
Author: Davis King
Date: Feb 05, 2016 (07:31:59 UTC)

Made column major matrices directly wrap matlab matrix objects when used inside mex files. This way, if you use matrix_colmajor or fmatrix_colmajor in a mex file it will not do any unnecessary copying or transposing.

Modified
dlib/matlab/mex_wrapper.cpp
dlib/matrix/matrix.h
dlib/matrix/matrix_abstract.h
dlib/matrix/matrix_data_layout.h

Revision: 5349d54aad806f4c
Author: Davis King
Date: Feb 05, 2016 (05:22:16 UTC)

Made the MATLAB_MEX_FILE #define get set globally to avoid any possibility of ODR violations.

Modified
dlib/matlab/cmake_mex_wrapper

Revision: c0a8dc483c27a986
Author: Davis King
Date: Feb 04, 2016 (04:25:57 UTC)

Clarified instructions

Modified
dlib/matlab/README.txt
dlib/matlab/example.m

Revision: 8ac7378da4fc3c83
Author: Davis King
Date: Feb 04, 2016 (04:19:13 UTC)

Now when you make a mex file with cmake it will only try to link to the BLAS and LAPACK that comes with MATLAB since trying to use any other BLAS or LAPACK generally makes MATLAB unstable.

Modified
dlib/cmake_find_blas.txt
dlib/matlab/cmake_mex_wrapper
dlib/matrix/lapack/fortran_id.h

Revision: c80c2d63fc6e4479
Author: Davis King
Date: Feb 04, 2016 (04:07:41 UTC)

Added a copy of CBLAS so we can use it when linking against a BLAS that doesn't have it.

Added
dlib/external/cblas/CMakeLists.txt
dlib/external/cblas/README
dlib/external/cblas/cblas.h
dlib/external/cblas/cblas_caxpy.c
dlib/external/cblas/cblas_ccopy.c
dlib/external/cblas/cblas_cdotc_sub.c
dlib/external/cblas/cblas_cdotu_sub.c
dlib/external/cblas/cblas_cgbmv.c
dlib/external/cblas/cblas_cgemm.c
dlib/external/cblas/cblas_cgemv.c
dlib/external/cblas/cblas_cgerc.c
dlib/external/cblas/cblas_cgeru.c
dlib/external/cblas/cblas_chbmv.c
dlib/external/cblas/cblas_chemm.c
dlib/external/cblas/cblas_chemv.c
dlib/external/cblas/cblas_cher.c
dlib/external/cblas/cblas_cher2.c
dlib/external/cblas/cblas_cher2k.c
dlib/external/cblas/cblas_cherk.c
dlib/external/cblas/cblas_chpmv.c
dlib/external/cblas/cblas_chpr.c
dlib/external/cblas/cblas_chpr2.c
dlib/external/cblas/cblas_cscal.c
dlib/external/cblas/cblas_csscal.c
dlib/external/cblas/cblas_cswap.c
dlib/external/cblas/cblas_csymm.c
dlib/external/cblas/cblas_csyr2k.c
dlib/external/cblas/cblas_csyrk.c
dlib/external/cblas/cblas_ctbmv.c
dlib/external/cblas/cblas_ctbsv.c
dlib/external/cblas/cblas_ctpmv.c
dlib/external/cblas/cblas_ctpsv.c
dlib/external/cblas/cblas_ctrmm.c
dlib/external/cblas/cblas_ctrmv.c
dlib/external/cblas/cblas_ctrsm.c
dlib/external/cblas/cblas_ctrsv.c
dlib/external/cblas/cblas_dasum.c
dlib/external/cblas/cblas_daxpy.c
dlib/external/cblas/cblas_dcopy.c
dlib/external/cblas/cblas_ddot.c
dlib/external/cblas/cblas_dgbmv.c
dlib/external/cblas/cblas_dgemm.c
dlib/external/cblas/cblas_dgemv.c
dlib/external/cblas/cblas_dger.c
dlib/external/cblas/cblas_dnrm2.c
dlib/external/cblas/cblas_drot.c
dlib/external/cblas/cblas_drotg.c
dlib/external/cblas/cblas_drotm.c
dlib/external/cblas/cblas_drotmg.c
dlib/external/cblas/cblas_dsbmv.c
dlib/external/cblas/cblas_dscal.c
dlib/external/cblas/cblas_dsdot.c
dlib/external/cblas/cblas_dspmv.c
dlib/external/cblas/cblas_dspr.c
dlib/external/cblas/cblas_dspr2.c
dlib/external/cblas/cblas_dswap.c
dlib/external/cblas/cblas_dsymm.c
dlib/external/cblas/cblas_dsymv.c
dlib/external/cblas/cblas_dsyr.c
dlib/external/cblas/cblas_dsyr2.c
dlib/external/cblas/cblas_dsyr2k.c
dlib/external/cblas/cblas_dsyrk.c
dlib/external/cblas/cblas_dtbmv.c
dlib/external/cblas/cblas_dtbsv.c
dlib/external/cblas/cblas_dtpmv.c
dlib/external/cblas/cblas_dtpsv.c
dlib/external/cblas/cblas_dtrmm.c
dlib/external/cblas/cblas_dtrmv.c
dlib/external/cblas/cblas_dtrsm.c
dlib/external/cblas/cblas_dtrsv.c
dlib/external/cblas/cblas_dzasum.c
dlib/external/cblas/cblas_dznrm2.c
dlib/external/cblas/cblas_f77.h
dlib/external/cblas/cblas_icamax.c
dlib/external/cblas/cblas_idamax.c
dlib/external/cblas/cblas_isamax.c
dlib/external/cblas/cblas_izamax.c
dlib/external/cblas/cblas_sasum.c
dlib/external/cblas/cblas_saxpy.c
dlib/external/cblas/cblas_scasum.c
dlib/external/cblas/cblas_scnrm2.c
dlib/external/cblas/cblas_scopy.c
dlib/external/cblas/cblas_sdot.c
dlib/external/cblas/cblas_sdsdot.c
dlib/external/cblas/cblas_sgbmv.c
dlib/external/cblas/cblas_sgemm.c
dlib/external/cblas/cblas_sgemv.c
dlib/external/cblas/cblas_sger.c
dlib/external/cblas/cblas_snrm2.c
dlib/external/cblas/cblas_srot.c
dlib/external/cblas/cblas_srotg.c
dlib/external/cblas/cblas_srotm.c
dlib/external/cblas/cblas_srotmg.c
dlib/external/cblas/cblas_ssbmv.c
dlib/external/cblas/cblas_sscal.c
dlib/external/cblas/cblas_sspmv.c
dlib/external/cblas/cblas_sspr.c
dlib/external/cblas/cblas_sspr2.c
dlib/external/cblas/cblas_sswap.c
dlib/external/cblas/cblas_ssymm.c
dlib/external/cblas/cblas_ssymv.c
dlib/external/cblas/cblas_ssyr.c
dlib/external/cblas/cblas_ssyr2.c
dlib/external/cblas/cblas_ssyr2k.c
dlib/external/cblas/cblas_ssyrk.c
dlib/external/cblas/cblas_stbmv.c
dlib/external/cblas/cblas_stbsv.c
dlib/external/cblas/cblas_stpmv.c
dlib/external/cblas/cblas_stpsv.c
dlib/external/cblas/cblas_strmm.c
dlib/external/cblas/cblas_strmv.c
dlib/external/cblas/cblas_strsm.c
dlib/external/cblas/cblas_strsv.c
dlib/external/cblas/cblas_xerbla.c
dlib/external/cblas/cblas_zaxpy.c
dlib/external/cblas/cblas_zcopy.c
dlib/external/cblas/cblas_zdotc_sub.c
dlib/external/cblas/cblas_zdotu_sub.c
dlib/external/cblas/cblas_zdscal.c
dlib/external/cblas/cblas_zgbmv.c
dlib/external/cblas/cblas_zgemm.c
dlib/external/cblas/cblas_zgemv.c
dlib/external/cblas/cblas_zgerc.c
dlib/external/cblas/cblas_zgeru.c
dlib/external/cblas/cblas_zhbmv.c
dlib/external/cblas/cblas_zhemm.c
dlib/external/cblas/cblas_zhemv.c
dlib/external/cblas/cblas_zher.c
dlib/external/cblas/cblas_zher2.c
dlib/external/cblas/cblas_zher2k.c
dlib/external/cblas/cblas_zherk.c
dlib/external/cblas/cblas_zhpmv.c
dlib/external/cblas/cblas_zhpr.c
dlib/external/cblas/cblas_zhpr2.c
dlib/external/cblas/cblas_zscal.c
dlib/external/cblas/cblas_zswap.c
dlib/external/cblas/cblas_zsymm.c
dlib/external/cblas/cblas_zsyr2k.c
dlib/external/cblas/cblas_zsyrk.c
dlib/external/cblas/cblas_ztbmv.c
dlib/external/cblas/cblas_ztbsv.c
dlib/external/cblas/cblas_ztpmv.c
dlib/external/cblas/cblas_ztpsv.c
dlib/external/cblas/cblas_ztrmm.c
dlib/external/cblas/cblas_ztrmv.c
dlib/external/cblas/cblas_ztrsm.c
dlib/external/cblas/cblas_ztrsv.c
dlib/external/cblas/cdotcsub.f
dlib/external/cblas/cdotusub.f
dlib/external/cblas/dasumsub.f
dlib/external/cblas/ddotsub.f
dlib/external/cblas/dnrm2sub.f
dlib/external/cblas/dsdotsub.f
dlib/external/cblas/dzasumsub.f
dlib/external/cblas/dznrm2sub.f
dlib/external/cblas/icamaxsub.f
dlib/external/cblas/idamaxsub.f
dlib/external/cblas/isamaxsub.f
dlib/external/cblas/izamaxsub.f
dlib/external/cblas/sasumsub.f
dlib/external/cblas/scasumsub.f
dlib/external/cblas/scnrm2sub.f
dlib/external/cblas/sdotsub.f
dlib/external/cblas/sdsdotsub.f
dlib/external/cblas/snrm2sub.f
dlib/external/cblas/zdotcsub.f
dlib/external/cblas/zdotusub.f

Revision: ca1e742fab6dc375
Author: Davis King
Date: Jan 31, 2016 (06:59:33 UTC)

Added random_color_transform and disturb_colors().

Modified
dlib/image_transforms.h
Added
dlib/image_transforms/random_color_transform.h
dlib/image_transforms/random_color_transform_abstract.h

Revision: 38d93c0ff9524bf6
Author: Davis King
Date: Jan 31, 2016 (05:55:19 UTC)

Minor cleanup

Modified
dlib/dnn/core_abstract.h

Revision: fcb24980a914daf8
Author: Davis King
Date: Feb 02, 2016 (08:28:36 UTC)

Added a function to check if the matlab user hit ctrl+c.

Modified
dlib/matlab/call_matlab.h
dlib/matlab/mex_wrapper.cpp

Revision: 016e9dad395bebce
Author: Davis King
Date: Feb 02, 2016 (07:39:07 UTC)

Made mex files always build with fPIC.

Modified
dlib/matlab/cmake_mex_wrapper

Revision: f3cce8e130311bd5
Author: Davis King
Date: Feb 02, 2016 (06:08:28 UTC)

Improved building of mex files.

Modified
dlib/cmake_find_blas.txt
dlib/matlab/cmake_mex_wrapper

Revision: a72b9fb25b8c8a6c
Author: Davis King
Date: Feb 02, 2016 (05:27:32 UTC)

Minor change to avoid compiler warnings

Modified
dlib/matlab/mex_wrapper.cpp

Revision: cd38fc35ea5b7f17
Author: Davis King
Date: Feb 01, 2016 (08:28:28 UTC)

Improved building of mex files with cmake.

Modified
dlib/cmake_find_blas.txt
dlib/matlab/cmake_mex_wrapper

Revision: f9f71460729bb2bf
Author: Davis King
Date: Jan 30, 2016 (04:52:24 UTC)

Changed the tensor serialization format to use a 4 byte little endian IEEE representation rather than dlib's default variable length encoding. This change makes the resulting serialized networks about 33% smaller.

Modified
dlib/dnn/tensor.h

Revision: d021c6451895ce02
Author: Davis King
Date: Jan 30, 2016 (04:23:49 UTC)

Added host_write_only() and device_write_only() to the gpu_data and tensor objects. Then made the relevant parts of the code use these functions.

Modified
dlib/dnn/cudnn_dlibapi.cpp
dlib/dnn/gpu_data.h
dlib/dnn/gpu_data_abstract.h
dlib/dnn/loss.h
dlib/dnn/tensor.h
dlib/dnn/tensor_abstract.h

Revision: 2976d50a09c8b2ba
Author: Davis King
Date: Jan 29, 2016 (10:23:39 UTC)

merged

Modified
dlib/cmake_find_blas.txt
dlib/matlab/cmake_mex_wrapper

Revision: 56b5d3b4e3949eb2
Author: Davis King
Date: Jan 28, 2016 (07:15:27 UTC)

Minor change to avoid compiler warning

Modified
dlib/matlab/mex_wrapper.cpp

Revision: 3e763e009f2cb1bd
Author: Davis King
Date: Jan 24, 2016 (12:32:04 UTC)

Added tests to make sure the GPU and CPU conv code does the same thing.

Modified
dlib/test/dnn.cpp

Revision: d1d06ef01d5b6b11
Author: Davis King
Date: Jan 24, 2016 (12:31:31 UTC)

Added CPU convolution implementation.

Modified
dlib/dnn/cpu_dlib.cpp
dlib/dnn/cpu_dlib.h
dlib/dnn/tensor_tools.cpp
dlib/dnn/tensor_tools.h

Revision: 1fcd46fe77e4abb4
Author: Davis King
Date: Jan 24, 2016 (10:46:05 UTC)

Added missing asserts

Modified
dlib/dnn/cudnn_dlibapi.cpp

Revision: 3deb9b500852fcf1
Author: Davis King
Date: Jan 24, 2016 (02:12:32 UTC)

removing cruft

Modified
dlib/dnn/tensor.h

Revision: 6fbf5146a8eff4b6
Author: Davis King
Date: Jan 24, 2016 (02:10:43 UTC)

Made affine_transform() routines a little faster.

Modified
dlib/dnn/cuda_dlib.cu

Revision: 61c6fe4ad6ac77ee
Author: Davis King
Date: Jan 24, 2016 (02:03:06 UTC)

Added a multiply_ layer and set it up so you can use it instead of dropout_ after training has finished.

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

Revision: 9b213ea06310e1e1
Author: Davis King
Date: Jan 23, 2016 (15:06:11 UTC)

Made it so you can deserialize bn_ objects into affine_ objects.

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

Revision: b6951a5ac1e6bf2a
Author: Davis King
Date: Jan 23, 2016 (14:52:48 UTC)

merged

Modified
dlib/CMakeLists.txt
dlib/algs.h
dlib/all/source.cpp
dlib/bridge.h
dlib/gui_widgets.h
dlib/image_io.h
dlib/image_loader/load_image.h
dlib/image_processing.h
dlib/image_transforms.h
dlib/matlab/cmake_mex_wrapper
dlib/opencv.h
dlib/platform.h
dlib/smart_pointers/shared_ptr.h
dlib/smart_pointers/shared_ptr_thread_safe.h
dlib/svm.h
dlib/svm_threaded.h
dlib/threads.h
dlib/vectorstream.h
docs/docs/algorithms.xml
docs/docs/compile.xml
docs/docs/dlib.css
docs/docs/other.xml
docs/docs/release_notes.xml
docs/docs/stylesheet.xsl
docs/docs/term_index.xml
setup.py
Added
dlib/dlib_basic_cpp_build_tutorial.txt
dlib/vectorstream/unserialize.h
dlib/vectorstream/unserialize_abstract.h

Revision: 8abb036b9a01c52a
Author: Davis King
Date: Jan 23, 2016 (14:48:47 UTC)

Made add_loss_layer's batch operator() more general.

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

Revision: 525d3d51cfce5fa4
Author: Davis King
Date: Jan 23, 2016 (07:06:51 UTC)

Added an overload of operator() that lets you easily run a network on an entire std::vector of objects.

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

Revision: 38de99005ce2f8b8
Author: Davis King
Date: Jan 23, 2016 (06:29:21 UTC)

Made the affine_ layer support being constructed from bn_ layers. Also added unit tests for the routines supporting this feature.

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

Revision: 758c85cdd3552641
Author: Davis King
Date: Jan 23, 2016 (05:40:15 UTC)

Added affine_transform_conv() and multiply_conv() as well as a CPU implementation of assign_conv_bias_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

Revision: 5631d96e353d7509
Author: Davis King
Date: Jan 23, 2016 (05:37:21 UTC)

Added missing requirements check.

Modified
dlib/dnn/cudnn_dlibapi.cpp

Revision: 6fd3413502f29788
Author: Davis King
Date: Jan 23, 2016 (04:40:04 UTC)

Changed dot() so it doesn't call cublasSdot anymore since cublasSdot gives the wrong outputs sometimes.

Modified
dlib/dnn/cublas_dlibapi.cpp
dlib/dnn/cublas_dlibapi.h
dlib/dnn/tensor.h

Revision: 920d70b358de97bd
Author: Davis King
Date: Jan 22, 2016 (04:16:20 UTC)

Added grid_stride_range_y cuda tool

Modified
dlib/dnn/cuda_utils.h

Revision: 8782a6c892e33682
Author: Davis King
Date: Jan 17, 2016 (11:20:50 UTC)

Fixed typo in comment

Modified
dlib/dnn/tensor_tools.h

Revision: fc2fa25cd752ead4
Author: Davis King
Date: Jan 11, 2016 (15:38:04 UTC)

Made train_one_step() print stuff in verbose mode.

Modified
dlib/dnn/trainer.h

Revision: 90a115416d7a26fe
Author: Davis King
Date: Jan 09, 2016 (06:57:04 UTC)

Made trainer disk synchronization more reliable and efficient.

Modified
dlib/dnn/trainer.h

Revision: 04415fe2d3e46787
Author: Davis King
Date: Jan 09, 2016 (06:56:37 UTC)

Clarified spec

Modified
dlib/dnn/core_abstract.h

Revision: 4ffbafec5b301ebb
Author: Davis King
Date: Jan 09, 2016 (06:50:12 UTC)

Improved the dnn_trainer. In particular, it no longer makes a copy of the network (which would needlessly double VRAM usage). I also added a set_synchronization_file() method so you can tell it to automatically synchronize itself to disk every so often during training. This makes resuming an interrupted training session trivially easy.

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

Revision: 47584de0c1f05acb
Author: Davis King
Date: Jan 09, 2016 (04:39:07 UTC)

Increased the default sgd learning rate.

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

Revision: b5088e91a51b769a
Author: Davis King
Date: Jan 09, 2016 (04:37:00 UTC)

Now training will automatically reduce the learning rate when it is clear that the loss isn't being reduced. Also, there is a stopping condition now based on how large the current learning rate is. That is, training stops when the learning rate gets small enough and it is clear that no progress is being made.

Modified
dlib/dnn/core.h
dlib/dnn/core_abstract.h
dlib/dnn/solvers.h
dlib/dnn/solvers_abstract.h
dlib/dnn/trainer.h
dlib/dnn/trainer_abstract.h

Revision: 031aa9c62fbbb170
Author: Davis King
Date: Jan 09, 2016 (03:16:33 UTC)

saving comments

Modified
dlib/dnn/tensor.h

Revision: 09bf39a02a91cd07
Author: Davis King
Date: Jan 08, 2016 (02:48:41 UTC)

merged

Modified
dlib/cmake
Added
dlib/statistics/running_gradient.h
dlib/statistics/running_gradient_abstract.h

Revision: 824c094a07084fce
Author: Davis King
Date: Jan 04, 2016 (12:58:00 UTC)

Added CPU version of pooling layer code.

Modified
dlib/dnn/cpu_dlib.cpp
dlib/dnn/cpu_dlib.h
dlib/dnn/tensor_tools.cpp
dlib/dnn/tensor_tools.h

Revision: 71ca78a15574f9c7
Author: Davis King
Date: Jan 04, 2016 (12:55:59 UTC)

Improved outputs from test_layer().

Modified
dlib/dnn/core.h

Revision: 9a32f5482f4ee837
Author: Davis King
Date: Jan 03, 2016 (07:03:00 UTC)

Fixed a bug where the trainer didn't initialize the solvers unless you explicitly gave it a solver.

Modified
dlib/dnn/trainer.h

Revision: 0198bed120833512
Author: Davis King
Date: Jan 03, 2016 (06:44:54 UTC)

Made add() faster by calling my own version for the simple pointwise add case.

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

Revision: c72b909c2fddc7fc
Author: Davis King
Date: Jan 03, 2016 (06:21:40 UTC)

Wrapped new dot() function into the tt namespace and gave it a CPU version.

Modified
dlib/dnn/cpu_dlib.cpp
dlib/dnn/cpu_dlib.h
dlib/dnn/tensor_tools.cpp
dlib/dnn/tensor_tools.h

Revision: 67a811e56161ac38
Author: Davis King
Date: Jan 03, 2016 (06:20:49 UTC)

Added the launch_kernel() function that launches a kernel by smartly picking the number of threads and blocks rather than using the hard coded numbers I had in there. This makes some functions noticeably faster. Also added a dot() function that is fully asynchronous.

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

Revision: e7b7c200c1a417f2
Author: Davis King
Date: Jan 01, 2016 (16:50:50 UTC)

Made the tensor dot() function use cuBLAS.

Modified
dlib/dnn/cublas_dlibapi.cpp
dlib/dnn/cublas_dlibapi.h
dlib/dnn/tensor.h

Revision: 5094ed6ad85a89f9
Author: Davis King
Date: Dec 31, 2015 (17:58:20 UTC)

Fixed more serialization bugs

Modified
dlib/dnn/layers.h

Revision: c2f23b2b6cfde05b
Author: Davis King
Date: Dec 31, 2015 (17:23:14 UTC)

Added the repeat layer and generally optimized the code for really deep networks. This revolved mostly around removing really deep template recursions since that upsets the compiler when you make really deep networks.

Modified
dlib/dnn/core.h
dlib/dnn/core_abstract.h
dlib/dnn/trainer.h
dlib/dnn/trainer_abstract.h
dlib/test/dnn.cpp

Revision: d9084ab189fe718e
Author: Davis King
Date: Dec 31, 2015 (17:19:13 UTC)

Fixed a bug in the max_pool serialization functions.

Modified
dlib/dnn/layers.h

Revision: 49e6b8db1bbf581e
Author: Davis King
Date: Dec 30, 2015 (15:39:12 UTC)

Added a way to get the final gradient with respect to the inputs. Also added a method to more efficiently give the input gradient in some instances.

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

Revision: b47aefeb8fc08ce1
Author: Davis King
Date: Dec 30, 2015 (15:32:26 UTC)

Made add_layer hold subnetworks though a pointer so that most of a network is allocated on the heap rather than resulting in really large stack usage for large networks.

Modified
dlib/dnn/core.h

Revision: 9e8e0226fae38ee6
Author: Davis King
Date: Dec 30, 2015 (15:30:32 UTC)

Clarified spec

Modified
dlib/dnn/core_abstract.h

Revision: 961dbaacd122e046
Author: Davis King
Date: Dec 24, 2015 (06:30:16 UTC)

Added the add_prev_ layer

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

Revision: 642e9b3fef5ebf7c
Author: Davis King
Date: Dec 24, 2015 (05:44:37 UTC)

Added another add() function for adding tensors. This one lets you add tensors with different sizes and it will zero pad them as needed.

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: 651c3e69a3b1facf
Author: Davis King
Date: Dec 24, 2015 (05:40:53 UTC)

Added pack_idx() and unpack_idx().

Modified
dlib/dnn/cuda_utils.h

Revision: b7856158a417506c
Author: Davis King
Date: Dec 24, 2015 (04:23:22 UTC)

Made the tuple based layer constructors work with nested tuples so you can define combination layers made out of other combination layers without being hassled by the compiler.

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

Revision: 5bc2e5474da65da2
Author: Davis King
Date: Dec 23, 2015 (17:29:31 UTC)

Just renamed two functions to way better names.

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

Revision: 754efd0daae0b209
Author: Davis King
Date: Dec 23, 2015 (17:25:17 UTC)

Added an option to fc_ to enable or disable a bias term.

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

Revision: c4bf6e31ffe255cc
Author: Davis King
Date: Dec 23, 2015 (16:44:21 UTC)

Added an avg_pool_ layer. Also fixed some errors in the layer specs.

Modified
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: 484f9ed89233a32d
Author: Davis King
Date: Dec 23, 2015 (16:31:35 UTC)

Change to suppress compiler warning.

Modified
dlib/dnn/core.h

Revision: 3e40078e296e6be3
Author: Davis King
Date: Dec 23, 2015 (15:58:31 UTC)

Fixed the tag and skip layers so they compile now that we have the in-place/out-of-place logic present.

Modified
dlib/dnn/core.h

Revision: faccec2a17af5d4c
Author: Davis King
Date: Dec 23, 2015 (15:18:04 UTC)

Clarified spec

Modified
dlib/dnn/layers_abstract.h

Revision: 92e520e8ba9ab185
Author: Davis King
Date: Dec 23, 2015 (03:23:46 UTC)

Made the default input layer automatically normalize unsigned char pixel values to the range [0,1].

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

Revision: 299015aff5570e56
Author: Davis King
Date: Dec 23, 2015 (03:05:08 UTC)

Reverted cmake file back to it's proper state. Oops.

Modified
dlib/test/CMakeLists.txt

Revision: 1d8869b9284d4758
Author: Davis King
Date: Dec 23, 2015 (03:03:31 UTC)

Made computed_output an optional argument to backward_inplace() so there is symmetry between the non-inplace version. This also enables additional optimizations in the resulting network.

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

Revision: e3c43a2345a47c6d
Author: Davis King
Date: Dec 22, 2015 (17:01:00 UTC)

Upgraded to cuDNN v4.0. This means changing the binding to max_pool a little since that's a little different in cuDNN. I also removed my CUDA code for doing batch normalization and replaced it with cuDNN's new batch normalization methods. Finally, I forgot to add a convolutional option to the bn_ object. Now it has one so you can set the mode however you like, either BATCH_NORM_FC or BATCH_NORM_CONV.

Modified
dlib/CMakeLists.txt
dlib/dnn/cpu_dlib.cpp
dlib/dnn/cpu_dlib.h
dlib/dnn/cuda_dlib.cu
dlib/dnn/cuda_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/CMakeLists.txt
dlib/test/dnn.cpp

Revision: c6e2356cb1e89046
Author: Davis King
Date: Dec 16, 2015 (18:11:03 UTC)

Gave the batch normalization layer an automatic testing mode that causes it to use the saved average mean and invstd to scale the data instead of normalizing the batch.

Modified
dlib/dnn/layers.h

Revision: f3ee4e0e31d46f14
Author: Davis King
Date: Dec 15, 2015 (14:43:09 UTC)

Added specs for bn, affine, and max_pool layers.

Modified
dlib/dnn/layers_abstract.h

Revision: eea644b6c856ce39
Author: Davis King
Date: Dec 14, 2015 (15:12:06 UTC)

Changed the type used to represent labels so it's more consistent with other parts of the library.

Modified
dlib/data_io/mnist.cpp
dlib/data_io/mnist.h
dlib/data_io/mnist_abstract.h

Revision: 353205b72cbf02a5
Author: Davis King
Date: Dec 13, 2015 (07:46:18 UTC)

Added spec for loss_multiclass_log_ and fixed some typos.

Modified
dlib/dnn/loss_abstract.h

Revision: 67a0e64b9c7d11d9
Author: Davis King
Date: Dec 13, 2015 (07:21:54 UTC)

Added loss_multiclass_log_

Modified
dlib/dnn/loss.h

Revision: 3f4013332041ae07
Author: Davis King
Date: Dec 13, 2015 (07:21:25 UTC)

Fixed errant const.

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

Revision: da61dfb5e2a9a3c9
Author: Davis King
Date: Dec 12, 2015 (07:59:29 UTC)

Fixed old tests. Also added more max pooling tests.

Modified
dlib/test/dnn.cpp

Revision: 4b23fc41f333d727
Author: Davis King
Date: Dec 12, 2015 (07:53:43 UTC)

Added test for max pool layer.

Modified
dlib/test/dnn.cpp

Revision: 4f9c18d8c6ff8df6
Author: Davis King
Date: Dec 12, 2015 (07:53:27 UTC)

Added max_pool_ layer.

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

Revision: 18906b90eedee92c
Author: Davis King
Date: Dec 12, 2015 (07:52:32 UTC)

Fixed some resource leaks. Also fixed max_pool so it does exactly what the spec says it should.

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

Revision: b4bdec60f7ae2ecf
Author: Davis King
Date: Dec 12, 2015 (07:51:29 UTC)

Made test_layers() a little more robust.

Modified
dlib/dnn/core.h

Revision: ea3ea031cfbeb988
Author: Davis King
Date: Dec 12, 2015 (07:05:09 UTC)

removed cruft

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

Revision: 56ae2ccc432426ee
Author: Davis King
Date: Dec 12, 2015 (07:01:47 UTC)

Improved softmax tests

Modified
dlib/test/dnn.cpp

Revision: 346c41f41c90201c
Author: Davis King
Date: Dec 12, 2015 (07:01:27 UTC)

Fixed bug in softmax gradient computation.

Modified
dlib/dnn/cpu_dlib.cpp

Revision: 9063377c13bb1a5a
Author: Davis King
Date: Dec 12, 2015 (05:33:27 UTC)

updated tests

Modified
dlib/test/dnn.cpp

Revision: 5cda4ddda5da9807
Author: Davis King
Date: Dec 12, 2015 (05:33:13 UTC)

Figured out the *undocumented* requirements for calling cuDNN's cudnnAddTensor() function and updated the specs and asserts accordingly.

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

Revision: 30f023570d4cd714
Author: Davis King
Date: Dec 12, 2015 (05:31:50 UTC)

Fixed race condition that could happen if set_size() was called while a cuda kernel was still running.

Modified
dlib/dnn/gpu_data.cpp

Revision: f6a19d62569b71cb
Author: Davis King
Date: Dec 08, 2015 (17:53:51 UTC)

saving tests for add()

Modified
dlib/test/dnn.cpp

Revision: eb88bdd387de9f7c
Author: Davis King
Date: Dec 08, 2015 (17:53:13 UTC)

Improved cudnn error messages.

Modified
dlib/dnn/cudnn_dlibapi.cpp

Revision: 306149ea052e2387
Author: Davis King
Date: Dec 08, 2015 (17:53:02 UTC)

Made test_layer() more robust.

Modified
dlib/dnn/core.h

Revision: de559b7434659633
Author: Davis King
Date: Dec 08, 2015 (17:25:00 UTC)

Updated multiply()'s CUDA implementation to reflect it's new features. Also added CUDA version of add_bias_gradient().

Modified
dlib/dnn/cuda_dlib.cu
dlib/dnn/cuda_dlib.h
dlib/dnn/cuda_utils.h
dlib/dnn/layers_abstract.h
dlib/dnn/tensor_tools.cpp
dlib/test/dnn.cpp

Revision: 58a3801cf2451813
Author: Davis King
Date: Dec 08, 2015 (16:32:48 UTC)

Added affine_ layer.

Modified
dlib/dnn/layers.h

Revision: b56d3f684a9b4333
Author: Davis King
Date: Dec 08, 2015 (16:32:32 UTC)

Added cpu version of add() and also added new add_bias_gradient() function.

Modified
dlib/dnn/cpu_dlib.cpp
dlib/dnn/cpu_dlib.h
dlib/dnn/tensor_tools.cpp
dlib/dnn/tensor_tools.h

Revision: a4ef62e12f95ba67
Author: Davis King
Date: Dec 08, 2015 (16:31:44 UTC)

Added missing assert check

Modified
dlib/dnn/cudnn_dlibapi.cpp

Revision: 4b9f4615b97d8db4
Author: Davis King
Date: Dec 08, 2015 (13:49:12 UTC)

Made multiply() more flexible and also fixed a bug in the CPU implementation of batch_normalize_conv.

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

Revision: f2908a17d70d3b9e
Author: Davis King
Date: Dec 08, 2015 (12:44:48 UTC)

Made the affine_transform functions consistent.

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

Revision: 3023f037f051a722
Author: Davis King
Date: Dec 08, 2015 (12:18:34 UTC)

Added the dropout layer

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

Revision: bc74ff167d88fc9b
Author: Davis King
Date: Dec 08, 2015 (03:25:29 UTC)

Clarified spec

Modified
dlib/dnn/layers_abstract.h

Revision: 538d4b02842ada2e
Author: Davis King
Date: Dec 08, 2015 (03:25:11 UTC)

Added another version of multiply()

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

Revision: c68e6fc5a42533b9
Author: Davis King
Date: Dec 07, 2015 (16:43:39 UTC)

Added bn layer tests.

Modified
dlib/test/dnn.cpp

Revision: 260008c84e36f20b
Author: Davis King
Date: Dec 07, 2015 (16:43:24 UTC)

Implemented the bn layer.

Modified
dlib/dnn/layers.h

Revision: 519a14f2e5bf704c
Author: Davis King
Date: Dec 07, 2015 (16:42:45 UTC)

Increased default mini-batch size to 32.

Modified
dlib/dnn/trainer.h

Revision: e7354372d8573313
Author: Davis King
Date: Dec 07, 2015 (16:42:22 UTC)

Made the batch normalization code assign the parameter gradient outputs instead of add to them so that it's consistent with how the layer interface expects this to be done.

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

Revision: f7d27d6c787a1b3f
Author: Davis King
Date: Dec 07, 2015 (16:40:53 UTC)

Relaxed test_layer() a little.

Modified
dlib/dnn/core.h

Revision: 8155d9d71bef41a1
Author: Davis King
Date: Dec 06, 2015 (07:22:32 UTC)

Added conv_ spec and did a little cleanup.

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

Revision: a8ef56ce5a99c211
Author: Davis King
Date: Dec 06, 2015 (07:10:07 UTC)

code cleanup

Modified
dlib/dnn/core.h

Revision: 6153ecf6b49394dc
Author: Davis King
Date: Dec 06, 2015 (07:08:45 UTC)

Set initial bias parameters to 0.

Modified
dlib/dnn/layers.h

Revision: 2549c3815ea13673
Author: Davis King
Date: Dec 06, 2015 (07:07:32 UTC)

Added a convolution layer.

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

Revision: 61ef5302b627299b
Author: Davis King
Date: Dec 06, 2015 (07:06:57 UTC)

Yet more robustness tweaks for test_layer().

Modified
dlib/dnn/core.h

Revision: ace2b2465f2e4360
Author: Davis King
Date: Dec 06, 2015 (06:46:54 UTC)

More robustness tweaks for test_layer()

Modified
dlib/dnn/core.h

Revision: 011091fc001019ee
Author: Davis King
Date: Dec 06, 2015 (06:44:58 UTC)

Cleaned up the tensor_conv interface a little. Also fixed an error in the spec for this object.

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

Revision: fd429392ca58fa1a
Author: Davis King
Date: Dec 06, 2015 (06:43:38 UTC)

Made alias_tensor serializable.

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

Revision: e32184066d2e5a17
Author: Davis King
Date: Dec 06, 2015 (06:42:41 UTC)

Made test_layer() a little more robust.

Modified
dlib/dnn/core.h

Revision: 78fc0a7b19a9690d
Author: Davis King
Date: Dec 05, 2015 (06:13:02 UTC)

Added GPU versions of the batch normalization functions.

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

Revision: e632a17da59383eb
Author: Davis King
Date: Dec 01, 2015 (15:11:00 UTC)

fixed compile time error

Modified
dlib/dnn/tensor.h

Revision: 9939d311e9c9eeba
Author: Davis King
Date: Dec 01, 2015 (03:18:13 UTC)

Minor cleanup

Modified
dlib/dnn/cudnn_dlibapi.cpp

Revision: ce8252bc3a7631ec
Author: Davis King
Date: Dec 01, 2015 (03:13:17 UTC)

Added tests for the alias_tensor.

Modified
dlib/test/dnn.cpp

Revision: 88d694e07fb17496
Author: Davis King
Date: Dec 01, 2015 (03:00:01 UTC)

Minor change to avoid compiler warnings

Modified
dlib/dnn/cuda_dlib.h
dlib/test/dnn.cpp

Revision: 70cc101f4cfb29f0
Author: Davis King
Date: Nov 30, 2015 (13:30:49 UTC)

Cleaned up the tensor code a bit and also added a tool for making aliased tensors.

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

Revision: 35b0b1dc53d49c07
Author: Davis King
Date: Nov 29, 2015 (08:02:56 UTC)

fixed missing return

Modified
dlib/dnn/cuda_dlib.h

Revision: afda627e8e61c23d
Author: Davis King
Date: Nov 29, 2015 (07:58:35 UTC)

Gave dnn_trainer the ability to train on out of core data by adding the train_one_step() member function. Also improved how the host to device transfers are overlapped with kernel computation.

Modified
dlib/dnn/core.h
dlib/dnn/cuda_dlib.cu
dlib/dnn/cuda_dlib.h
dlib/dnn/trainer.h
dlib/dnn/trainer_abstract.h

Revision: affdb37a4874c273
Author: Davis King
Date: Nov 29, 2015 (07:07:03 UTC)

Made the host to device copying code wait for any outstanding kernel executions to finish before overwriting the device memory with updated values from the host.

Modified
dlib/dnn/gpu_data.cpp
dlib/dnn/gpu_data.h
dlib/dnn/gpu_data_abstract.h

Revision: 3fe40a5f6859f3a0
Author: Davis King
Date: Nov 29, 2015 (07:07:47 UTC)

Fixed spelling error in comment.

Modified
dlib/dnn/core.h

Revision: 8da722cc20fe2be7
Author: Davis King
Date: Nov 29, 2015 (03:58:40 UTC)

Made cuBLAS and cuDNN automatically switch their library handles to the currently active device id if the user changes the active device via a call to cudaSetDevice().

Modified
dlib/dnn/cublas_dlibapi.cpp
dlib/dnn/cudnn_dlibapi.cpp

Revision: 3439e2627f112f7d
Author: Davis King
Date: Nov 26, 2015 (08:53:11 UTC)

Cleaned up cuda error handling code

Modified
dlib/dnn/cublas_dlibapi.cpp
dlib/dnn/cublas_dlibapi.h
dlib/dnn/cuda_errors.h
dlib/dnn/cudnn_dlibapi.cpp
dlib/dnn/curand_dlibapi.cpp
dlib/dnn/curand_dlibapi.h

Revision: a6b6883a940c1499
Author: Davis King
Date: Nov 21, 2015 (11:43:26 UTC)

Fixed a compile time bug.

Modified
dlib/dnn/core.h

Revision: e521043ff50e06f0
Author: Davis King
Date: Nov 21, 2015 (11:33:01 UTC)

Finished the bindings in this file

Modified
dlib/dnn/tensor_tools.cpp

Revision: 6d7cb347d254c340
Author: Davis King
Date: Nov 21, 2015 (11:31:56 UTC)

Added cuda tests

Modified
dlib/test/dnn.cpp

Revision: 8aa0fbfe69fd9726
Author: Davis King
Date: Nov 21, 2015 (11:31:13 UTC)

Added cuda implementations of a bunch of functions.

Modified
dlib/dnn/cuda_dlib.cu

Revision: f7e9f8a3d45c568c
Author: Davis King
Date: Nov 21, 2015 (08:48:41 UTC)

Added more stuff to tests

Modified
dlib/test/cublas.cpp

Revision: d0706c1707e828f4
Author: Davis King
Date: Nov 21, 2015 (05:42:39 UTC)

Made loss layers output the gradients by assigning them to the output rather than adding them. This way, the gradient buffer can be used as scratch space during the loss computation.

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

Revision: 23812903cf42d464
Author: Davis King
Date: Nov 21, 2015 (05:37:00 UTC)

Added more gemm() tests

Modified
dlib/test/cublas.cpp

Revision: dc325dda5c9315bd
Author: Davis King
Date: Nov 21, 2015 (04:39:07 UTC)

Fixed cmake lists so it compiles correctly without C++11

Modified
dlib/test/CMakeLists.txt

Revision: a76fb0d89e587254
Author: Davis King
Date: Nov 21, 2015 (04:37:51 UTC)

Fixed minor bug

Modified
dlib/dnn/tensor_tools.h

Revision: e18b912e81183ef0
Author: Davis King
Date: Nov 21, 2015 (04:36:50 UTC)

Changed gemm so it doesn't cause device to host copies in the assert statements.

Modified
dlib/dnn/cublas_dlibapi.cpp

Revision: be33d27cd962f06b
Author: Davis King
Date: Nov 20, 2015 (13:20:36 UTC)

fixed compiler errors

Modified
dlib/test/dnn.cpp

Revision: b2778e72a62e5134
Author: Davis King
Date: Nov 20, 2015 (13:20:16 UTC)

Added batch normalization layer skeleton

Modified
dlib/dnn/layers.h

Revision: bccba5e23908078a
Author: Davis King
Date: Nov 20, 2015 (13:19:56 UTC)

Removed cruft

Modified
dlib/dnn/cpu_dlib.cpp

Revision: 78e1bf5b05e5085c
Author: Davis King
Date: Nov 20, 2015 (12:50:09 UTC)

Added sigmoid, tanh, and softmax layers. Also added log loss layer.

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

Revision: 63e38c616e900ed1
Author: Davis King
Date: Nov 20, 2015 (03:02:32 UTC)

Added log1pexp()

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

Revision: 6170091bd731bd1f
Author: Davis King
Date: Nov 19, 2015 (03:58:23 UTC)

Fixed a compile time bug.

Modified
dlib/dnn/core.h

Revision: ca6f21df2cfc5600
Author: Davis King
Date: Nov 18, 2015 (13:32:28 UTC)

Implemented CPU version of tanh

Modified
dlib/dnn/cpu_dlib.cpp
dlib/test/dnn.cpp

Revision: cbbd46199086472e
Author: Davis King
Date: Nov 18, 2015 (13:26:21 UTC)

Implemented the CPU version of softmax

Modified
dlib/dnn/cpu_dlib.cpp
dlib/test/dnn.cpp

Revision: 809fdd7e2c85871d
Author: Davis King
Date: Nov 18, 2015 (03:52:03 UTC)

Added CPU implementation of sigmoid() and sigmoid_gradient()

Modified
dlib/dnn/cpu_dlib.cpp
dlib/test/dnn.cpp

Revision: b6602cdd53059224
Author: Davis King
Date: Nov 18, 2015 (03:27:24 UTC)

removed cruft

Modified
dlib/dnn/loss.h

Revision: 2be9579bf0d3bbf0
Author: Davis King
Date: Nov 18, 2015 (03:26:48 UTC)

Added more kinds of affine_transform(), made the solver use affine_transform() so it runs on the GPU, and made affine_transform() take only tensors.

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

Revision: 7933930e73fefaf4
Author: Davis King
Date: Nov 16, 2015 (13:29:09 UTC)

Finished tensor_rand constructor.

Modified
dlib/dnn/tensor_tools.cpp

Revision: 178ecc615bbdf1a1
Author: Davis King
Date: Nov 16, 2015 (13:21:37 UTC)

Code cleanup

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

Revision: caf780320d0b3451
Author: Davis King
Date: Nov 16, 2015 (13:04:05 UTC)

More batch normalization optimizations.

Modified
dlib/dnn/cpu_dlib.cpp

Revision: 97042184093c62b3
Author: Davis King
Date: Nov 16, 2015 (12:28:10 UTC)

Optimized batch normalization code

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

Revision: 84d2464d36d74a1d
Author: Davis King
Date: Nov 16, 2015 (03:55:00 UTC)

More activation layer updates. Now the relu and fc layer objects use either CPU or GPU. Fixed a bug in gemm().

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.cpp
dlib/dnn/tensor_tools.h

Revision: b860fdb4da819c58
Author: Davis King
Date: Nov 13, 2015 (11:07:32 UTC)

Added a check for constexpr

Modified
dlib/use_cpp_11.cmake

Revision: 2cc7e09434635ee3
Author: Davis King
Date: Nov 13, 2015 (10:52:19 UTC)

Changed the API for functions that can operate in-place to a more appropriate form.

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

Revision: 024ae8ff5149ddeb
Author: Davis King
Date: Nov 13, 2015 (10:32:14 UTC)

Upgrade the layer interface so that you can implement layers that operate in-place.

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

Revision: 88c5de0f5ee14f94
Author: Davis King
Date: Nov 13, 2015 (05:25:00 UTC)

removed print statements

Modified
dlib/dnn/gpu_data.cpp

Revision: 773bfa09d9485016
Author: Davis King
Date: Nov 13, 2015 (05:11:44 UTC)

Added missing requirements

Modified
dlib/dnn/cudnn_dlibapi.h
dlib/dnn/curand_dlibapi.h

Revision: 010648cc8c6eb218
Author: Davis King
Date: Nov 11, 2015 (13:13:54 UTC)

removed cruft

Modified
dlib/dnn/cudnn_dlibapi.h

Revision: 705338e5cffe414c
Author: Davis King
Date: Nov 11, 2015 (13:09:02 UTC)

updated specs

Modified
dlib/dnn/tensor_tools.h

Revision: b5e3e33fd6c711e4
Author: Davis King
Date: Nov 11, 2015 (12:59:40 UTC)

Removed unnecessary zero initialization of parameter gradients in core.h.

Modified
dlib/dnn/core.h
dlib/dnn/cudnn_dlibapi.cpp
dlib/dnn/cudnn_dlibapi.h
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h

Revision: 6ebaaf146ce4c8b7
Author: Davis King
Date: Nov 11, 2015 (12:13:34 UTC)

Clarified specs

Modified
dlib/dnn/cudnn_dlibapi.h

Revision: 33a6e6170a5975e5
Author: Davis King
Date: Nov 10, 2015 (03:44:16 UTC)

clarified spec

Modified
dlib/dnn/loss_abstract.h

Revision: ba3eb4897d59e4f4
Author: Davis King
Date: Nov 09, 2015 (15:25:35 UTC)

fixed compile time bugs

Modified
dlib/dnn/tensor_tools.cpp

Revision: 0f026cc1e8582bca
Author: Davis King
Date: Nov 09, 2015 (13:29:56 UTC)

Added part of the tensor_tools implementations

Modified
dlib/CMakeLists.txt
dlib/all/source.cpp
dlib/dnn.h
dlib/dnn/cpu_dlib.h
dlib/dnn/tensor_tools.h
Added
dlib/dnn/tensor_tools.cpp

Revision: a4cc5d2eff852994
Author: Davis King
Date: Nov 09, 2015 (13:18:51 UTC)

Renamed conv to tensor_conv

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

Revision: f8ee2e87e021cbd8
Author: Davis King
Date: Nov 09, 2015 (12:56:25 UTC)

Made a tensor iterable

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

Revision: eeae425593704ab3
Author: Davis King
Date: Nov 09, 2015 (12:37:15 UTC)

Added tests for some of the new tensor operators.

Modified
dlib/test/dnn.cpp

Revision: de91c1ed3c99a1ae
Author: Davis King
Date: Nov 09, 2015 (12:29:41 UTC)

Added the header containing the prototypes that call into either the CPU or GPU code based on how dlib was built. All the layer implementations will interact with these functions.

Added
dlib/dnn/tensor_tools.h

Revision: 0a80f73e0ff27e30
Author: Davis King
Date: Nov 09, 2015 (12:28:47 UTC)

Implemented the CPU side of the tools in cuda_dlib.h and also cleaned some things up a bit.

Modified
dlib/dnn/cpu_dlib.cpp
dlib/dnn/cpu_dlib.h
dlib/dnn/cuda_dlib.h

Revision: 8fc0d9834c1a1ce9
Author: Davis King
Date: Nov 08, 2015 (12:22:49 UTC)

fixed some compiler warnings

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

Revision: 2a980deddfc968da
Author: Davis King
Date: Nov 08, 2015 (12:18:46 UTC)

Added batch normalization tests

Modified
dlib/test/CMakeLists.txt
Added
dlib/test/dnn.cpp

Revision: 7ef7157d26236582
Author: Davis King
Date: Nov 08, 2015 (11:55:26 UTC)

Added CPU version of batch normalization functions

Modified
dlib/CMakeLists.txt
dlib/all/source.cpp
dlib/dnn.h
Added
dlib/dnn/cpu_dlib.cpp
dlib/dnn/cpu_dlib.h

Revision: 3d6d1fb34c306905
Author: Davis King
Date: Nov 08, 2015 (04:34:26 UTC)

Added binding to cuRAND

Modified
dlib/CMakeLists.txt
Added
dlib/dnn/curand_dlibapi.cpp
dlib/dnn/curand_dlibapi.h

Revision: c2a57172078b6ba4
Author: Davis King
Date: Nov 07, 2015 (14:59:31 UTC)

Added prototypes for batch normalization's gradients.

Modified
dlib/dnn/cuda_dlib.h

Revision: dd1e352c55796446
Author: Davis King
Date: Nov 06, 2015 (06:32:58 UTC)

Said backward() is allowed to reuse computations cached during the forward() computation.

Modified
dlib/dnn/layers_abstract.h

Revision: e2ca1656a98f9524
Author: Davis King
Date: Nov 06, 2015 (04:23:37 UTC)

clarified spec

Modified
dlib/dnn/core_abstract.h

Revision: 51cd26ab30deec6e
Author: Davis King
Date: Nov 04, 2015 (04:06:32 UTC)

Cleaned up the test_layer() interface.

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

Revision: a75b47e6cce397d3
Author: Davis King
Date: Nov 03, 2015 (17:05:18 UTC)

changed test to avoid compiler error in gcc 4.8

Modified
dlib/test/multithreaded_object.cpp

Revision: ef613da566ee2815
Author: Davis King
Date: Nov 03, 2015 (16:48:38 UTC)

Minor tweaks to avoid compiler warnings

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

Revision: a03ddcd78dfd3fa9
Author: Davis King
Date: Nov 03, 2015 (16:38:44 UTC)

Added a cuBLAS test

Modified
dlib/test/CMakeLists.txt
Added
dlib/test/cublas.cpp

Revision: 7f798ba9ff489015
Author: Davis King
Date: Nov 03, 2015 (16:37:18 UTC)

Fixed a bug in cuda::gemm()

Modified
dlib/dnn/cublas_dlibapi.cpp

Revision: be40e64321d72095
Author: Davis King
Date: Nov 03, 2015 (16:24:59 UTC)

Added cuda::gemm()

Modified
dlib/dnn/cublas_dlibapi.cpp
dlib/dnn/cublas_dlibapi.h

Revision: c259cc525f150b1b
Author: Davis King
Date: Nov 03, 2015 (13:32:05 UTC)

merged

Modified
dlib/CMakeLists.txt

Revision: 957f568a1055fe18
Author: Davis King
Date: Nov 03, 2015 (13:15:33 UTC)

Relaxed the preconditions so that layers are allowed to output tensors that contain a different number of samples than their input tensors.

Modified
dlib/dnn/core.h
dlib/dnn/core_abstract.h
dlib/dnn/layers_abstract.h
dlib/dnn/loss.h
dlib/dnn/loss_abstract.h

Revision: 714d8e24b5274fbe
Author: Davis King
Date: Nov 02, 2015 (12:29:04 UTC)

Added an MNIST loader

Modified
dlib/CMakeLists.txt
dlib/all/source.cpp
dlib/data_io.h
Added
dlib/data_io/mnist.cpp
dlib/data_io/mnist.h
dlib/data_io/mnist_abstract.h

Revision: 3e21bf3f75b1fd2f
Author: Davis King
Date: Oct 31, 2015 (03:36:47 UTC)

merged

Modified
.hgtags
README.txt
dlib/CMakeLists.txt
dlib/test/cca.cpp
dlib/test/multithreaded_object.cpp
docs/.logger_revnum
docs/docs/index.xml
docs/docs/intro.xml
docs/docs/main_menu.xml
docs/makedocs
docs/makerel
setup.py
Deleted
dlib/README.txt

Revision: 670724402be8bfa1
Author: Davis King
Date: Oct 27, 2015 (13:31:08 UTC)

merged

Modified
dlib/control/approximate_linear_models_abstract.h
dlib/float_details.h
dlib/matrix/lapack/fortran_id.h
dlib/matrix/matrix_abstract.h
docs/docs/compile.xml
docs/docs/linear_algebra.xml
docs/docs/release_notes.xml
docs/docs/term_index.xml
docs/makerel
python_examples/correlation_tracker.py
python_examples/face_detector.py
python_examples/face_landmark_detection.py
python_examples/find_candidate_object_locations.py
python_examples/max_cost_assignment.py
python_examples/sequence_segmenter.py
python_examples/svm_rank.py
python_examples/svm_struct.py
python_examples/train_object_detector.py
python_examples/train_shape_predictor.py
setup.py
Deleted
python_examples/compile_dlib_python_module.bat

Revision: ac373ad44147a7cf
Author: Davis King
Date: Oct 25, 2015 (15:38:00 UTC)

Implemented cuDNN based max_pool

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

Revision: 0c91cf02964fd6c5
Author: Davis King
Date: Oct 25, 2015 (15:34:44 UTC)

just formatting cleanup

Modified
dlib/matrix/matrix_subexp_abstract.h

Revision: 873572930a4676b9
Author: Davis King
Date: Oct 25, 2015 (15:32:54 UTC)

Added subm_clipped()

Modified
dlib/matrix/matrix_subexp.h
dlib/matrix/matrix_subexp_abstract.h
dlib/test/matrix.cpp

Revision: ca0705a1151836f3
Author: Davis King
Date: Oct 25, 2015 (15:13:06 UTC)

Fixed cmake so it enables/disables the DLIB_ENABLE_ASSERTS switch right.

Modified
dlib/CMakeLists.txt

Revision: 01ae67db48e71136
Author: Davis King
Date: Oct 25, 2015 (14:13:22 UTC)

Added image_plane()

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

Revision: fe89bf38c046be6c
Author: Davis King
Date: Oct 25, 2015 (10:16:47 UTC)

Added softmax

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

Revision: 78e9bce89fb7dfcd
Author: Davis King
Date: Oct 25, 2015 (08:41:16 UTC)

Added cuDNN activation functions

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

Revision: 968a9a9a2cdc5b3e
Author: Davis King
Date: Oct 25, 2015 (08:19:57 UTC)

Made the layer's backward() function take a copy of the output tensor vector from that layer so that it can be reused in any computations. Most layers won't use it but for some backward computations having it allows them to be implemented more efficiently.

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

Revision: fd9f8f7107768f00
Author: Davis King
Date: Oct 25, 2015 (07:18:46 UTC)

Added add_conv_bias_gradient()

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

Revision: 5b50bc1e46ff72a0
Author: Davis King
Date: Oct 24, 2015 (18:36:32 UTC)

Finished the cuDNN convolution binding.

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

Revision: 3b5ba0600efea9c9
Author: Davis King
Date: Oct 24, 2015 (17:43:10 UTC)

Implemented more cuDNN bindings and cleaned up code a bit.

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

Revision: e335a6a754dd4182
Author: Davis King
Date: Oct 24, 2015 (17:38:28 UTC)

Made the add_layer variadic constructors take tuples of parameters in addition to just regular lists of parameters.

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

Revision: d925e0e996ac3f53
Author: Davis King
Date: Oct 24, 2015 (06:53:52 UTC)

Added methods to inspect where the current data is at.

Modified
dlib/dnn/gpu_data.h
dlib/dnn/gpu_data_abstract.h

Revision: 2bc16628e852214c
Author: Davis King
Date: Oct 21, 2015 (13:28:51 UTC)

minor cleanup

Modified
dlib/dnn/tensor_abstract.h

Revision: bd2b026cf0b13d30
Author: Davis King
Date: Oct 21, 2015 (13:27:21 UTC)

Added tensor spec.

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

Revision: 0378a676391b1647
Author: Davis King
Date: Oct 21, 2015 (04:13:04 UTC)

Added missing const

Modified
dlib/dnn/tensor.h

Revision: 366ac2b61ecb646f
Author: Davis King
Date: Oct 21, 2015 (02:29:24 UTC)

Added missing const

Modified
dlib/dnn/gpu_data.cpp
dlib/dnn/gpu_data.h

Revision: 7ec6196444667e77
Author: Davis King
Date: Oct 21, 2015 (02:29:01 UTC)

Improve messages generated by cmake

Modified
dlib/CMakeLists.txt

Revision: fdbe99e16e742753
Author: Davis King
Date: Oct 20, 2015 (14:02:29 UTC)

Changed tensor layout from NHWC to NCHW since this layout is much faster for cuDNN.

Modified
dlib/dnn/core.h
dlib/dnn/cudnn_dlibapi.cpp
dlib/dnn/cudnn_dlibapi.h
dlib/dnn/input.h
dlib/dnn/layers.h
dlib/dnn/tensor.h

Revision: fb126da8f9b9dda3
Author: Davis King
Date: Oct 20, 2015 (04:44:05 UTC)

Added gpu_data spec and also optimized it a little bit.

Modified
dlib/dnn/gpu_data.cpp
dlib/dnn/gpu_data.h
Added
dlib/dnn/gpu_data_abstract.h

Revision: b2006ef74b7e6e39
Author: Davis King
Date: Oct 20, 2015 (04:43:22 UTC)

Added comments

Modified
dlib/dnn/cuda_errors.h

Revision: 9e7720830245d057
Author: Davis King
Date: Oct 19, 2015 (12:59:18 UTC)

clarified comments

Modified
dlib/dnn/cudnn_dlibapi.h

Revision: b5f5dce4ea53e543
Author: Davis King
Date: Oct 19, 2015 (12:44:42 UTC)

setup cuDNN forward convolution

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

Revision: 09368d608d680b21
Author: Davis King
Date: Oct 19, 2015 (11:40:16 UTC)

Hid the cuDNN context in a thread local variable so the user doesn't need to deal with it.

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

Revision: e13c2533902c2db9
Author: Davis King
Date: Oct 19, 2015 (11:29:02 UTC)

Added some of the cuDNN conv calls.

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

Revision: 2e709192d31a2398
Author: Davis King
Date: Oct 19, 2015 (11:24:45 UTC)

Changed compiler versions to ones that have thread_local.

Modified
dlib/use_cpp_11.cmake

Revision: 42018cf7f0293764
Author: Davis King
Date: Oct 19, 2015 (11:24:23 UTC)

Made the C++11 test check for thread_local support.

Modified
dlib/dnn/test_for_cpp11/cpp11_test.cpp

Revision: 5d8e4884c0bcf3bc
Author: Davis King
Date: Oct 19, 2015 (11:18:30 UTC)

Require the compiler to support the thread_local C++11 feature.

Modified
dlib/use_cpp_11.cmake

Revision: 94cbc516108b8209
Author: Davis King
Date: Oct 19, 2015 (10:02:06 UTC)

fixed comment

Modified
dlib/dnn/gpu_data.h

Revision: ab2662bd38e8355e
Author: Davis King
Date: Oct 18, 2015 (07:13:13 UTC)

fixed uninitialized variable.

Modified
dlib/dnn/layers.h

Revision: 1017647a9f60a3fb
Author: Davis King
Date: Oct 18, 2015 (07:09:33 UTC)

simplified code a little

Modified
dlib/dnn/cublas_dlibapi.h
dlib/dnn/cudnn_dlibapi.h

Revision: 3b8abce03375bded
Author: Davis King
Date: Oct 18, 2015 (06:54:44 UTC)

Improved C++11 check

Modified
dlib/use_cpp_11.cmake

Revision: b7178be69f8c92e2
Author: Davis King
Date: Oct 18, 2015 (06:32:18 UTC)

Renamed dlib-shared to dlib_shared because the - was causing nvcc to get confused when that name appeared on the command line.

Modified
dlib/CMakeLists.txt

Revision: 1a31e2f5ada45ad8
Author: Davis King
Date: Oct 18, 2015 (05:58:32 UTC)

Made the cmake test for C++11 support try to compile a C++11 project if we don't know what compiler we are dealing with. If the test compile works then we assume we have C++11.

Modified
dlib/use_cpp_11.cmake
Added
dlib/dnn/test_for_cpp11/CMakeLists.txt
dlib/dnn/test_for_cpp11/cpp11_test.cpp

Revision: 64285d34cd061bb9
Author: Davis King
Date: Oct 18, 2015 (05:27:39 UTC)

merged

Modified
dlib/dnn/core.h
dlib/dnn/loss.h
dlib/dnn/trainer.h
dlib/use_cpp_11.cmake

Revision: bc56b8ceafcc4163
Author: Davis King
Date: Oct 18, 2015 (05:26:49 UTC)

Made more move constructors use swap() just to be safe

Modified
dlib/dnn/core.h

Revision: e5e49466de40b5c6
Author: Davis King
Date: Oct 18, 2015 (05:16:19 UTC)

Fixed some warnings and errors from visual studio 2015

Modified
dlib/dnn/core.h
dlib/dnn/loss.h
dlib/dnn/trainer.h

Revision: 987497ab627ab197
Author: Davis King
Date: Oct 18, 2015 (05:15:57 UTC)

Added another required C++11 feature.

Modified
dlib/use_cpp_11.cmake

Revision: f8c2cae193c03838
Author: Davis King
Date: Oct 18, 2015 (05:12:32 UTC)

Tweaked move constructor to the form I will probably use.

Modified
dlib/dnn/cuda_dlib.h

Revision: 284400f9902ed74c
Author: Davis King
Date: Oct 18, 2015 (05:12:03 UTC)

Fixed tensor move constructor

Modified
dlib/dnn/tensor.h

Revision: d43804fa71c2b384
Author: Davis King
Date: Oct 18, 2015 (05:08:33 UTC)

fixed move constructor

Modified
dlib/dnn/gpu_data.h

Revision: f39461c76e213ba1
Author: Davis King
Date: Oct 17, 2015 (19:07:23 UTC)

Apparently you need gcc 4.7 or newer for this stuff.

Modified
dlib/CMakeLists.txt
dlib/use_cpp_11.cmake

Revision: fe9d79c1f863f481
Author: Davis King
Date: Oct 17, 2015 (18:54:03 UTC)

minor cleanup

Modified
dlib/CMakeLists.txt

Revision: 0f49d66b2a6ade58
Author: Davis King
Date: Oct 17, 2015 (18:51:09 UTC)

Made CMake try to compile a CUDA test project to see if the compiler the user is trying really supports the version of CUDA we found.

Modified
dlib/CMakeLists.txt
Added
dlib/dnn/test_for_cuda/CMakeLists.txt
dlib/dnn/test_for_cuda/cuda_test.cu

Revision: 80700c6ae42e7e40
Author: Davis King
Date: Oct 17, 2015 (18:08:23 UTC)

optimized code a little

Modified
dlib/dnn/gpu_data.cpp
dlib/dnn/gpu_data.h

Revision: 8b09f471f6f09221
Author: Davis King
Date: Oct 17, 2015 (18:02:04 UTC)

Moved gpu_data into its own file, fixed a few bugs, and cleaned up a few things.

Modified
dlib/CMakeLists.txt
dlib/dnn/cublas_dlibapi.h
dlib/dnn/cuda_errors.h
dlib/dnn/cuda_utils.h
dlib/dnn/cudnn_dlibapi.cpp
dlib/dnn/cudnn_dlibapi.h
dlib/dnn/tensor.h
Added
dlib/dnn/gpu_data.cpp
dlib/dnn/gpu_data.h

Revision: 5168bf3df425f328
Author: Davis King
Date: Oct 17, 2015 (17:21:36 UTC)

Fully implemented the gpu_data object and also cleaned up a few other minor details.

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
Added
dlib/dnn/cuda_errors.h
dlib/dnn/cuda_utils.h

Revision: 9f3b3f3489fe9336
Author: Davis King
Date: Oct 17, 2015 (08:46:27 UTC)

Fixed cmake script so nvcc doesn't freak out.

Modified
dlib/CMakeLists.txt
dlib/dnn/cuda_dlib.cu

Revision: 055a7480b08d0bb3
Author: Davis King
Date: Oct 17, 2015 (08:07:48 UTC)

renamed these files again

Modified
dlib/CMakeLists.txt
dlib/dnn/tensor.h
Added
dlib/dnn/cublas_dlibapi.cpp
dlib/dnn/cublas_dlibapi.h
dlib/dnn/cuda_dlib.cu
dlib/dnn/cuda_dlib.h
dlib/dnn/cudnn_dlibapi.cpp
dlib/dnn/cudnn_dlibapi.h
Deleted
dlib/dnn/cublas_api.cpp
dlib/dnn/cublas_api.h
dlib/dnn/cuda.cu
dlib/dnn/cuda.h
dlib/dnn/cudnn_api.cpp
dlib/dnn/cudnn_api.h

Revision: 524d2edb5f08d580
Author: Davis King
Date: Oct 17, 2015 (07:52:28 UTC)

cleaned up the cuda bindings a bit

Modified
dlib/CMakeLists.txt
dlib/dnn/cublas_api.h
dlib/dnn/cudnn_api.h
dlib/dnn/tensor.h
Added
dlib/dnn/cublas_api.cpp
dlib/dnn/cudnn_api.cpp

Revision: ce680f7f147a0bdb
Author: Davis King
Date: Oct 17, 2015 (06:39:54 UTC)

Renamed headers to avoid any chance of name conflict.

Added
dlib/dnn/cublas_api.h
dlib/dnn/cudnn_api.h
Deleted
dlib/dnn/cublas.h
dlib/dnn/cudnn.h

Revision: 81b0eaa7d5d99ec9
Author: Davis King
Date: Oct 15, 2015 (04:14:48 UTC)

Removed cruft

Modified
dlib/dnn/trainer.h

Revision: 816360990c713487
Author: Davis King
Date: Oct 15, 2015 (04:13:40 UTC)

Fixed a compile time error in clean()

Modified
dlib/dnn/core.h

Revision: c710b85d183dc358
Author: Davis King
Date: Oct 15, 2015 (04:04:17 UTC)

Added serialization support to everything.

Modified
dlib/dnn/core.h
dlib/dnn/core_abstract.h
dlib/dnn/input.h
dlib/dnn/input_abstract.h
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h
dlib/dnn/loss.h
dlib/dnn/loss_abstract.h
dlib/dnn/solvers.h
dlib/dnn/solvers_abstract.h
dlib/dnn/tensor.h
dlib/dnn/trainer.h
dlib/dnn/trainer_abstract.h

Revision: e752565f68d27557
Author: Davis King
Date: Oct 14, 2015 (13:18:21 UTC)

filled out the trainer spec

Modified
dlib/dnn/trainer_abstract.h

Revision: 3a7fd70b21de1afc
Author: Davis King
Date: Oct 14, 2015 (04:25:43 UTC)

Gave the dnn_trainer a nice verbose mode

Modified
dlib/dnn/trainer.h

Revision: 2d12c8b4b08efb0e
Author: Davis King
Date: Oct 14, 2015 (04:01:23 UTC)

Added the option to always print status when using the console_progress_indicator.

Modified
dlib/console_progress_indicator.h

Revision: cb4c113f98147c8e
Author: Davis King
Date: Oct 13, 2015 (04:56:21 UTC)

Further clarification

Modified
dlib/dnn/core_abstract.h

Revision: deb0511b2b1e2c48
Author: Davis King
Date: Oct 13, 2015 (04:55:13 UTC)

clarified spec

Modified
dlib/dnn/core_abstract.h

Revision: 953fcc1e9b85b4c0
Author: Davis King
Date: Oct 13, 2015 (04:13:10 UTC)

Minor cuda stuff

Modified
dlib/dnn/cudnn.h
dlib/dnn/tensor.h

Revision: e16cff2f5c47585a
Author: Davis King
Date: Oct 13, 2015 (04:02:32 UTC)

Added missing return statement.

Modified
dlib/dnn/tensor.h

Revision: 5ecfd8d1572c5b32
Author: Davis King
Date: Oct 11, 2015 (10:45:38 UTC)

Minor fix.

Modified
dlib/use_cpp_11.cmake

Revision: 0b2a73b6a8347a2e
Author: Davis King
Date: Oct 11, 2015 (10:34:42 UTC)

removed cruft

Modified
dlib/CMakeLists.txt

Revision: 597b3b7ce3da4829
Author: Davis King
Date: Oct 11, 2015 (10:30:43 UTC)

Made this script work with clang

Modified
dlib/use_cpp_11.cmake

Revision: 255c189a8e78301f
Author: Davis King
Date: Oct 11, 2015 (10:06:19 UTC)

Minor tweaks to scripts so they work on older cmake versions or without cuda.

Modified
dlib/CMakeLists.txt
dlib/use_cpp_11.cmake

Revision: eeb8c86ab06ab1ba
Author: Davis King
Date: Oct 11, 2015 (09:34:01 UTC)

Fixed cmake script so it detects C++ compiler type properly.

Modified
dlib/CMakeLists.txt

Revision: a491ff45fe489840
Author: Davis King
Date: Oct 11, 2015 (09:23:55 UTC)

saving some test code

Modified
dlib/dnn/cuda.cu

Revision: 83c9f1b4947c64ad
Author: Davis King
Date: Oct 11, 2015 (09:23:31 UTC)

Made the preprocessor definitions happen before calling the cuda_add_library() macro since otherwise they aren't used until cmake is run a second time. Also told nvcc to use C++11 and newer card architectures.

Modified
dlib/CMakeLists.txt

Revision: 92a26931f1d46829
Author: Davis King
Date: Oct 11, 2015 (09:21:18 UTC)

Made this macro work for switch strings that have what look like regular expressions in them to cmake.

Modified
dlib/add_global_compiler_switch.cmake

Revision: 3afca7dcc8c1b8ce
Author: Davis King
Date: Oct 11, 2015 (07:34:24 UTC)

Made cmake turn on C++11 automatically. Also disable trying to use CUDA if C++11 isn't available.

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

Revision: 85fceda2ef99ca22
Author: Davis King
Date: Oct 11, 2015 (04:52:31 UTC)

Made cmake scripts uniformly require cmake version 2.8.4.

Modified
dlib/CMakeLists.txt
dlib/cmake
dlib/tell_visual_studio_to_use_static_runtime.cmake

Revision: 5cf840ba473080de
Author: Davis King
Date: Oct 10, 2015 (09:00:03 UTC)

Setup CMake and related things to build dlib with CUDA support.

Modified
dlib/CMakeLists.txt
dlib/config.h
dlib/config.h.in
dlib/dnn/cuda.h
Added
dlib/dnn/cuda.cu

Revision: 66d5061679dadc21
Author: Davis King
Date: Oct 10, 2015 (08:35:31 UTC)

Just marked a variable as advanced so it doesn't show up in ccmake.

Modified
dlib/cmake_find_blas.txt

Revision: 929cdbcfc2950e4e
Author: Davis King
Date: Oct 09, 2015 (13:59:32 UTC)

Updated spec to say that the user defined layers must be copyable.

Modified
dlib/dnn/input_abstract.h
dlib/dnn/layers_abstract.h
dlib/dnn/loss_abstract.h

Revision: 571e4bbd00bdef14
Author: Davis King
Date: Oct 09, 2015 (13:56:45 UTC)

Made the tensor contain a cudnn tensor descriptor and also added a few other minor refinements.

Modified
dlib/dnn/cublas.h
dlib/dnn/cuda.h
dlib/dnn/cudnn.h
dlib/dnn/tensor.h

Revision: 2b229bed095ddc2d
Author: Davis King
Date: Oct 09, 2015 (13:29:59 UTC)

Added outline for the CUDA portion of the DNN toolkit.

Added
dlib/dnn/cublas.h
dlib/dnn/cuda.h
dlib/dnn/cudnn.h

Revision: 29f8eee778d60751
Author: Davis King
Date: Oct 08, 2015 (03:58:08 UTC)

Made the fc layer output 1x1 images with many feature maps.

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

Revision: 3870d2bdbbd2da18
Author: Davis King
Date: Oct 05, 2015 (03:58:27 UTC)

minor cleanup

Modified
dlib/dnn/trainer.h

Revision: 52ca940ae949a2c0
Author: Davis King
Date: Oct 03, 2015 (08:12:50 UTC)

Added a comment

Modified
dlib/dnn/core.h

Revision: 1c77a69dbaf11f57
Author: Davis King
Date: Oct 03, 2015 (07:54:06 UTC)

Moved dnn_trainer into its own file.

Modified
dlib/dnn.h
dlib/dnn/core.h
dlib/dnn/core_abstract.h
Added
dlib/dnn/trainer.h
dlib/dnn/trainer_abstract.h

Revision: 1859e06182d3ec92
Author: Davis King
Date: Oct 03, 2015 (05:52:46 UTC)

cleaned up trainer a bit

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

Revision: f92f5141aca075c4
Author: Davis King
Date: Sep 29, 2015 (17:08:27 UTC)

renamed a variable

Modified
dlib/dnn/core.h

Revision: 2ba443c4d3c84e53
Author: Davis King
Date: Sep 29, 2015 (17:05:22 UTC)

Added tensor valued member functions to the add_loss_layer.

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

Revision: b0c75f140aa66adb
Author: Davis King
Date: Sep 29, 2015 (05:12:15 UTC)

Filled out a bunch more of the core spec.

Modified
dlib/dnn/core_abstract.h

Revision: cd1e67c7ed5b162c
Author: Davis King
Date: Sep 28, 2015 (14:05:59 UTC)

removed cruft

Modified
dlib/dnn/core.h

Revision: 8067fc304b44b9a5
Author: Davis King
Date: Sep 28, 2015 (14:03:13 UTC)

clarified specs

Modified
dlib/dnn/layers_abstract.h
dlib/dnn/loss_abstract.h
dlib/dnn/solvers_abstract.h

Revision: cdc6f26a33dfcca3
Author: Davis King
Date: Sep 28, 2015 (04:49:15 UTC)

merged

Modified
dlib/array2d/array2d_kernel.h
dlib/dnn/core.h
dlib/dnn/core_abstract.h
dlib/dnn/input_abstract.h

Revision: b9262e1ff15c5dc5
Author: Davis King
Date: Sep 28, 2015 (04:48:12 UTC)

clarified spec

Modified
dlib/dnn/layers_abstract.h

Revision: 73e4adc2be2afa02
Author: Davis King
Date: Sep 28, 2015 (04:42:30 UTC)

Just removed the _ from sub_net.

Modified
dlib/dnn/core.h
dlib/dnn/core_abstract.h
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h
dlib/dnn/loss.h
dlib/dnn/loss_abstract.h

Revision: 0e3e79cebb8bb7da
Author: Davis King
Date: Sep 28, 2015 (04:36:32 UTC)

Made the subnetwork objects passed to layers non-copyable. Also filled out more of the layers_abstract.h file.

Modified
dlib/dnn/core.h
dlib/dnn/input_abstract.h
dlib/dnn/layers_abstract.h

Revision: 12c3175d462876e5
Author: Davis King
Date: Sep 26, 2015 (08:52:36 UTC)

fixed tabbing

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

Revision: 1777b78b303ce065
Author: Davis King
Date: Sep 26, 2015 (08:49:17 UTC)

clarified spec

Modified
dlib/dnn/input_abstract.h

Revision: b3edb1de31da26e0
Author: Davis King
Date: Sep 26, 2015 (08:46:34 UTC)

Fixed incorrect rvalue reference constructor.

Modified
dlib/array2d/array2d_kernel.h

Revision: eda94218ecee0476
Author: Davis King
Date: Sep 26, 2015 (08:41:00 UTC)

Cleanup and added loss spec file.

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

Revision: defdb6bc8c10bd11
Author: Davis King
Date: Sep 26, 2015 (08:40:41 UTC)

Added missing ;

Modified
dlib/dnn/input_abstract.h

Revision: 896374d7f04f6a3e
Author: Davis King
Date: Sep 26, 2015 (06:07:55 UTC)

fixed spec

Modified
dlib/dnn/input_abstract.h

Revision: 97c4480570e790db
Author: Davis King
Date: Sep 25, 2015 (13:58:22 UTC)

Renamed more variables

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

Revision: 4c3dca9a558ef8df
Author: Davis King
Date: Sep 25, 2015 (13:56:07 UTC)

Renamed some things for consistency.

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

Revision: 2f8fcf26ed1a7e3e
Author: Davis King
Date: Sep 25, 2015 (13:41:38 UTC)

clarified spec

Modified
dlib/dnn/input_abstract.h

Revision: 082f85afdb4c4d69
Author: Davis King
Date: Sep 25, 2015 (13:23:41 UTC)

Minor fixes and also made add_tag_layer work on input layers. This way you can have a tag that refers to the raw input given to a network.

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

Revision: 67ac06f72e1d4605
Author: Davis King
Date: Sep 25, 2015 (04:35:07 UTC)

Renamed stuff

Modified
dlib/dnn/core_abstract.h
dlib/dnn/input_abstract.h

Revision: ace3205b2e6434fd
Author: Davis King
Date: Sep 25, 2015 (04:29:07 UTC)

merged

Modified
dlib/algs.h
dlib/general_hash/random_hashing.h
dlib/gui_widgets/drawable.cpp
dlib/matrix/matrix.h
dlib/threads/multithreaded_object_extension.cpp
dlib/threads/threaded_object_extension.cpp

Revision: ebcdf6bff409bc14
Author: Davis King
Date: Sep 25, 2015 (04:28:41 UTC)

Finished the input interface and implementations. Also added docs about layer conversions.

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

Revision: 30697ff96fb3ae2c
Author: Davis King
Date: Sep 25, 2015 (04:05:02 UTC)

Yet more cleanup

Modified
dlib/dnn/loss.h

Revision: 2ddde4d5e79eef3f
Author: Davis King
Date: Sep 25, 2015 (04:04:12 UTC)

More cleanup

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

Revision: 48aaf9e54eae602e
Author: Davis King
Date: Sep 24, 2015 (14:08:34 UTC)

Gave array2d and matrix move constructors and move assignment operators.

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

Revision: 546a01e715f7ef78
Author: Davis King
Date: Sep 24, 2015 (14:07:34 UTC)

Added DLIB_HAS_RVALUE_REFERENCES macro

Modified
dlib/assert.h

Revision: b30dd3058cf31ebe
Author: Davis King
Date: Sep 24, 2015 (13:08:08 UTC)

Fixed bug in minibatch creation.

Modified
dlib/dnn/core.h

Revision: 1a33c05d2d8cd76e
Author: Davis King
Date: Sep 24, 2015 (04:40:34 UTC)

clarified spec

Modified
dlib/matrix/matrix_utilities_abstract.h

Revision: a90b16b59542be48
Author: Davis King
Date: Sep 23, 2015 (14:25:50 UTC)

Some more cleanup. Also filled out the solver spec.

Modified
dlib/dnn/core.h
dlib/dnn/input.h
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h
dlib/dnn/loss.h
dlib/dnn/solvers.h
Added
dlib/dnn/solvers_abstract.h

Revision: 1ec4ee30d15b2083
Author: Davis King
Date: Sep 23, 2015 (13:18:40 UTC)

renamed classes

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

Revision: 8a35cc1dbe1b62ee
Author: Davis King
Date: Sep 23, 2015 (05:07:45 UTC)

Fixed #includes.

Modified
dlib/dnn/core.h
dlib/dnn/core_abstract.h
dlib/dnn/input.h
dlib/dnn/layers.h
dlib/dnn/loss.h
dlib/dnn/tensor.h

Revision: 2408856d9880b99f
Author: Davis King
Date: Sep 23, 2015 (04:56:39 UTC)

Adding a rough initial version of a deep learning API.

Added
dlib/dnn.h
dlib/dnn/core.h
dlib/dnn/core_abstract.h
dlib/dnn/input.h
dlib/dnn/layers.h
dlib/dnn/layers_abstract.h
dlib/dnn/loss.h
dlib/dnn/solvers.h
dlib/dnn/tensor.h

Revision: 2bb6fb882d131b2d
Author: Davis King
Date: Mar 18, 2016 (08:12:02 UTC)

fixed typo in spec

Modified
dlib/vectorstream/unserialize_abstract.h

Revision: 086fa2ef1d442696
Author: Davis King
Date: Mar 12, 2016 (05:24:01 UTC)

fixed typo in spec

Modified
dlib/image_processing/scan_fhog_pyramid_abstract.h

Revision: b1b818b018e9a42d
Author: Chris Paprocki
Date: Mar 08, 2016 (20:42:26 UTC)

Fixed a minor typo in the spec.

Modified
dlib/bayes_utils/bayes_utils_abstract.h

Revision: 91cb3984c8893128
Author: Davis King
Date: Mar 07, 2016 (02:05:25 UTC)

Fixed some warnings and made the unit tests more robust.

Modified
dlib/optimization/optimization_solve_qp_using_smo.h
dlib/test/mpc.cpp

Revision: 5689207b4098944f
Author: Davis King
Date: Mar 05, 2016 (05:40:23 UTC)

Added solve_qp_box_constrained()

Modified
dlib/optimization/optimization_solve_qp_using_smo.h
dlib/optimization/optimization_solve_qp_using_smo_abstract.h
dlib/test/mpc.cpp

Revision: 773e01c72705cd77
Author: Davis King
Date: Feb 29, 2016 (03:34:58 UTC)

Minor change to avoid a compiler warning.

Modified
dlib/data_io/image_dataset_metadata.h

Revision: bec5a392f233b851
Author: Taylor Braun-Jones
Date: Feb 25, 2016 (07:51:13 UTC)

Support building dlib from a top-level CMakeLists file This follows convention which simplifies using dlib as a CMake ExternalProject.

Modified
dlib/CMakeLists.txt
Added
CMakeLists.txt

Revision: 9719bd2fa8eafbcc
Author: Taylor Braun-Jones
Date: Feb 25, 2016 (07:47:49 UTC)

Use FindThreads module to properly find pthreads for cross-builds

Modified
dlib/CMakeLists.txt

Revision: b82e2f46186bf963
Author: Davis King
Date: Feb 28, 2016 (02:31:08 UTC)

Fixed missing initializers.

Modified
dlib/data_io/image_dataset_metadata.h

Revision: 5f0de23b1f0e9782
Author: Davis King
Date: Feb 27, 2016 (14:48:20 UTC)

Added pose and detection scores to the box object.

Modified
dlib/data_io/image_dataset_metadata.cpp
dlib/data_io/image_dataset_metadata.h

Revision: 51194c82f754111b
Author: Davis King
Date: Feb 27, 2016 (14:47:56 UTC)

Made the rectangle have an operator< rather than overloading std::less since the former works with a wider range of tools in the STL.

Modified
dlib/geometry/rectangle.h
dlib/geometry/rectangle_abstract.h

Revision: fd3965b54f582ed3
Author: Davis King
Date: Feb 22, 2016 (12:12:48 UTC)

Fixed typo in spec

Modified
dlib/optimization/optimization_oca_abstract.h

Revision: 48dead5faa8650c8
Author: Davis King
Date: Feb 22, 2016 (12:08:54 UTC)

Added the option to use the elastic net regularizer to the OCA solver.

Modified
dlib/optimization/optimization_oca.h
dlib/optimization/optimization_oca_abstract.h
dlib/optimization/optimization_solve_qp_using_smo.h
dlib/optimization/optimization_solve_qp_using_smo_abstract.h
dlib/test/oca.cpp
dlib/test/opt_qp_solver.cpp

Revision: c52128a62e1dffae
Author: Davis King
Date: Feb 21, 2016 (06:12:42 UTC)

Changed cmake script to not try and link to gfortran when using openblas since sometimes gfortran isn't available and openblas should already be linked to gfortran if it was needed.

Modified
dlib/cmake_find_blas.txt

Revision: 21e49efa2521dab6
Author: Davis King
Date: Feb 21, 2016 (05:17:39 UTC)

Minor changes to avoid compiler warnings in newer versions of GCC.

Modified
dlib/matrix/matrix_assign_fwd.h
dlib/matrix/matrix_data_layout.h
dlib/server/server_iostream.h
dlib/smart_pointers/shared_ptr.h
dlib/smart_pointers/shared_ptr_thread_safe.h
dlib/test/least_squares.cpp
dlib/test/smart_pointers.cpp
dlib/threads/threads_kernel_shared.h

Revision: 15c424bfe7ca3713
Author: Davis King
Date: Feb 18, 2016 (05:21:50 UTC)

Made it so you can get the optimal alpha values.

Modified
dlib/svm/svm_c_linear_dcd_trainer.h
dlib/svm/svm_c_linear_dcd_trainer_abstract.h

Revision: 90aa85a47b07ed06
Author: Davis King
Date: Feb 18, 2016 (05:11:57 UTC)

Fixed initialization bug in the new SVM L2 mode.

Modified
dlib/svm/svm_c_linear_dcd_trainer.h

Revision: 9b4fc71013e06d3e
Author: Davis King
Date: Feb 17, 2016 (05:37:19 UTC)

Added an option to solve the L2-loss version of the SVM objective function.

Modified
dlib/svm/svm_c_linear_dcd_trainer.h
dlib/svm/svm_c_linear_dcd_trainer_abstract.h
dlib/test/svm_c_linear_dcd.cpp

Revision: a8d589237a629f05
Author: Ernesto Tapia
Date: Feb 12, 2016 (17:59:07 UTC)

Test orthogonalize.

Modified
dlib/test/matrix4.cpp

Revision: 8adbf29cebdc8275
Author: Ernesto Tapia
Date: Feb 12, 2016 (15:51:03 UTC)

Using general matrix type in the argument of qr_decomposition::get_q

Modified
dlib/matrix/matrix_qr.h

Revision: 644d71f7abf25f96
Author: Davis King
Date: Feb 06, 2016 (13:59:12 UTC)

Added probability_gradient_greater_than() and probability_gradient_less_than() global functions.

Modified
dlib/statistics/running_gradient.h
dlib/statistics/running_gradient_abstract.h

Revision: d483afd04ba113ae
Author: Davis King
Date: Feb 06, 2016 (13:53:10 UTC)

Added serialization support for std::deque.

Modified
dlib/serialize.h

Revision: 17ed1a45c6b79d73
Author: Davis King
Date: Feb 05, 2016 (10:40:52 UTC)

fixed compiler warnings in old gcc

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

Revision: 00a736ecca82ca14
Author: Davis King
Date: Feb 03, 2016 (03:32:59 UTC)

Made the python __version__ field come from the DLIB_VERSION macro set by CMake.

Modified
tools/python/src/dlib.cpp

Revision: b79f3c0747094d80
Author: Davis King
Date: Feb 03, 2016 (03:24:11 UTC)

Made the python build get a DLIB_VERSION macro defined. Also cleaned up cmake a little bit.

Modified
dlib/CMakeLists.txt
tools/python/CMakeLists.txt

Revision: 334f717f6d7efb44
Author: Patrick Snape
Date: Feb 03, 2016 (10:59:04 UTC)

Add __version__ to dlib module Only issue is that the strong is hardcoded - otherwise this is actually technically required by PEP 396

Modified
tools/python/src/dlib.cpp

Revision: d9121bbe78a8ed80
Author: Patrick Snape
Date: Feb 03, 2016 (10:58:21 UTC)

Allow serilization and printing of shape_predictor_training_options Add a simple print and serialization scheme for shape_predictor_training_options. This enables you to serialize your training options.

Modified
tools/python/src/shape_predictor.cpp
tools/python/src/shape_predictor.h

Revision: 2b0d774d3d1ff730
Author: Patrick Snape
Date: Feb 03, 2016 (10:57:39 UTC)

Propagate equality operators through to Python Easy change to allow comparisons on the Python side for both rectangle and drectangle

Modified
tools/python/src/rectangles.cpp

Revision: 761c9d0469302593
Author: Patrick Snape
Date: Feb 03, 2016 (10:56:59 UTC)

Add equality to drectangle This is in the main dlib source code (rather than specifically Python). Equality operators were missing for drectangles and so were copied from rectangle.

Modified
dlib/geometry/drectangle.h
dlib/geometry/drectangle_abstract.h

Revision: 1a7e28baaeec6bf8
Author: Davis King
Date: Jan 29, 2016 (10:22:41 UTC)

Made cmake avoid using the Intel MKL when building mex files since it will often create a conflict with MATLAB's copy of the MKL.

Modified
dlib/cmake_find_blas.txt
dlib/matlab/cmake_mex_wrapper

Revision: d1802d0840398798
Author: Davis King
Date: Jan 29, 2016 (05:44:14 UTC)

Added more Intel MKL search paths

Modified
dlib/cmake_find_blas.txt

Revision: fad1f1bf91fc9eb1
Author: Davis King
Date: Jan 28, 2016 (05:38:58 UTC)

Added struct support to matlab to C++ API

Modified
dlib/matlab/CMakeLists.txt
dlib/matlab/call_matlab.h
dlib/matlab/mex_wrapper.cpp
Added
dlib/matlab/example_mex_struct.cpp

Revision: 90bfa4aa4b4ee4cc
Author: Davis King
Date: Jan 23, 2016 (14:42:48 UTC)

Added unserialize.

Modified
dlib/vectorstream.h
Added
dlib/vectorstream/unserialize.h
dlib/vectorstream/unserialize_abstract.h

Revision: 98a9252879e3d49f
Author: Davis King
Date: Jan 22, 2016 (07:25:47 UTC)

Made the search for the installed matlab a little more robust.

Modified
dlib/matlab/cmake_mex_wrapper

Revision: 704b1faf59735392
Author: Davis King
Date: Jan 17, 2016 (07:06:53 UTC)

Improved error message you get about linking to libjpeg and libpng if you try to open a jpeg or png file.

Modified
dlib/image_loader/load_image.h

Revision: 50e246de759963f3
Author: Davis King
Date: Jan 17, 2016 (06:54:31 UTC)

Added some preprocessor stuff to check if the user is #including dlib/all/source.cpp into their own .cpp files. If so they will get a useful error message.

Modified
dlib/algs.h
dlib/all/source.cpp
dlib/bridge.h
dlib/gui_widgets.h
dlib/image_io.h
dlib/image_processing.h
dlib/image_transforms.h
dlib/opencv.h
dlib/platform.h
dlib/svm.h
dlib/svm_threaded.h
dlib/threads.h
Added
dlib/dlib_basic_cpp_build_tutorial.txt

Revision: e5b2ba9f6e332b1e
Author: Davis King
Date: Jan 16, 2016 (04:01:22 UTC)

Put guards around some GCC specific #pragma statements to avoid warnings in visual studio.

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

Revision: 85f65f35e29e6fa6
Author: Séverin Lemaignan
Date: Jan 14, 2016 (09:45:14 UTC)

Add pragma guards around deprecated auto_ptr to prevent GCC warnings Fixes #67

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

Revision: 911d056ea65c387f
Author: Davis King
Date: Jan 10, 2016 (13:31:49 UTC)

Made cmake use the built in find X11 scripts by default on OS X.

Modified
dlib/CMakeLists.txt

Revision: 26d5f771fb320df7
Author: Davis King
Date: Jan 08, 2016 (13:23:58 UTC)

Fixed compile time error I just introduced

Modified
dlib/statistics/running_gradient.h

Revision: d4b43fa4906265ae
Author: Davis King
Date: Jan 08, 2016 (13:15:15 UTC)

Made running_gradient serializable.

Modified
dlib/statistics/running_gradient.h
dlib/statistics/running_gradient_abstract.h

Revision: 244a9c660cfc3d23
Author: Davis King
Date: Jan 07, 2016 (13:24:49 UTC)

Added running_gradient

Added
dlib/statistics/running_gradient.h
dlib/statistics/running_gradient_abstract.h

Revision: a03937331957ffda
Author: Davis King
Date: Jan 02, 2016 (12:16:42 UTC)

Minor cleanup

Modified
dlib/cmake

Revision: 605f7e8a360bfd1a
Author: Davis King
Date: Nov 03, 2015 (13:31:09 UTC)

fixed tabbing

Modified
dlib/CMakeLists.txt

Revision: 27792741ed12e140
Author: Viktor Richter
Date: Nov 03, 2015 (15:44:30 UTC)

Change relative path of configure files in CMakeLists. Using CMAKE_PROJECT_DIR instead of CMAKE_SOURCE_DIR/../dlib makes the build process more portable.

Modified
dlib/CMakeLists.txt

Revision: a5b68dd2def7860f
Author: Davis King
Date: Oct 28, 2015 (16:27:41 UTC)

Record last changeset and set PATCH version to 99

Modified
dlib/CMakeLists.txt
docs/.logger_revnum

Revision: 7ae1775f61a44b7f
Author: Davis King
Date: Oct 28, 2015 (16:25:59 UTC)

Created release v18.18

Modified
dlib/CMakeLists.txt


Old Change Logs