| Old Change LogsDate: Nov 06, 2011 (05:38:52 UTC) Minor changes to avoid compiler warnings from clang++ Modified dlib/matrix/matrix_expressions.h dlib/svm/sparse_kernel.h Revision: 6036e5aaf6e3 Date: Nov 06, 2011 (04:20:57 UTC) Minor changes to avoid compiler warnings in gcc Modified dlib/svm/structural_object_detection_trainer.h dlib/svm/structural_sequence_labeling_trainer.h dlib/test/matrix2.cpp dlib/test/object_detector.cpp dlib/test/sequence_labeler.cpp Revision: f2e63fc53e17 Date: Nov 06, 2011 (04:09:32 UTC) Added the histogram intersection kernel for sparse and dense vectors. Modified dlib/svm/kernel.h dlib/svm/kernel_abstract.h dlib/svm/sparse_kernel.h dlib/svm/sparse_kernel_abstract.h Revision: e17a6fd636ea Date: Nov 05, 2011 (08:15:36 UTC) The last dlib release added a max_iterations parameter to the svm_c_linear_trainer and svm_c_ekm_trainer objects. However, there was a bug which made them only ever do at most 16 iterations, which is too few to solve many problems. This has been fixed. Modified dlib/svm/svm_c_linear_trainer.h Revision: d90fd0c07532 Date: Nov 04, 2011 (13:43:40 UTC) added more tests Modified dlib/test/sequence_labeler.cpp Revision: 5600b587cc96 Date: Nov 03, 2011 (19:28:07 UTC) Clarified spec Modified dlib/svm/cross_validate_sequence_labeler_abstract.h dlib/svm/sequence_labeler_abstract.h Revision: 4c454900e1cc Date: Nov 03, 2011 (17:54:48 UTC) Added unit tests for the new sequence labeling stuff Modified dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/test/sequence_labeler.cpp Revision: b9126442230f Date: Nov 03, 2011 (16:42:40 UTC) Simplified the sequence_labeler interface a bit. Modified dlib/svm/sequence_labeler.h dlib/svm/sequence_labeler_abstract.h examples/sequence_labeler_ex.cpp Revision: 2fe3ecc5dbc0 Date: Nov 03, 2011 (13:50:22 UTC) Made unit test a little more robust. Modified dlib/test/least_squares.cpp Revision: 01b6183cc1d7 Date: Nov 03, 2011 (13:28:12 UTC) Minor change to avoid a compiler error in clang Modified dlib/image_processing/scan_image_pyramid.h Revision: 99f9a7551332 Date: Nov 03, 2011 (-04:06:31 UTC) Changed a little to work around a bug in visual studio 2005 Modified dlib/svm/sequence_labeler.h Revision: 804d2736a66a Date: Sep 22, 2011 (-03:31:02 UTC) changed to avoid a compiler error Modified dlib/svm/sequence_labeler.h Revision: 65cbc5ebbb61 Date: Nov 02, 2011 (19:21:05 UTC) Changed code a little to make the reject_labeling() routine optional. Now if you don't define it you get a reasonable default behavior rather than a compiler error. Modified dlib/svm/sequence_labeler.h dlib/svm/sequence_labeler_abstract.h examples/sequence_labeler_ex.cpp Revision: f054bcadaca3 Date: Nov 01, 2011 (18:08:39 UTC) Filled in the rest of the interface for the structural_sequence_labeling_trainer and cleaned up a few other related things. Modified dlib/svm/cross_validate_sequence_labeler.h dlib/svm/sequence_labeler.h dlib/svm/structural_sequence_labeling_trainer.h dlib/svm/structural_sequence_labeling_trainer_abstract.h dlib/svm/structural_svm_sequence_labeling_problem.h dlib/svm/structural_svm_sequence_labeling_problem_abstract.h Revision: 490344fd6c0d Date: Nov 01, 2011 (17:51:18 UTC) fixed grammar Modified dlib/svm/structural_object_detection_trainer_abstract.h Revision: 68cc415725ec Date: Oct 31, 2011 (16:58:44 UTC) Refactoring and spec improvement. Still some work left to do though. Modified dlib/svm/cross_validate_sequence_labeler.h dlib/svm/cross_validate_sequence_labeler_abstract.h dlib/svm/sequence_labeler.h dlib/svm/structural_sequence_labeling_trainer.h dlib/svm/structural_sequence_labeling_trainer_abstract.h Revision: d2e4c9d9c47b Date: Oct 31, 2011 (15:39:10 UTC) fleshed out the spec Modified dlib/svm/sequence_labeler_abstract.h Revision: 8fa891f83acb Date: Oct 30, 2011 (11:39:11 UTC) minor cleanup Modified dlib/svm/cross_validate_sequence_labeler_abstract.h Revision: 80afc8635b7b Date: Oct 30, 2011 (10:50:31 UTC) Refactored code a little and added more comments to spec. Modified dlib/svm/sequence_labeler.h dlib/svm/sequence_labeler_abstract.h dlib/svm/structural_sequence_labeling_trainer.h dlib/svm/structural_sequence_labeling_trainer_abstract.h dlib/svm/structural_svm_sequence_labeling_problem.h Revision: 72d16a7b737c Date: Oct 30, 2011 (10:23:44 UTC) Made this object inherit from noncopyable Modified dlib/svm/structural_svm_sequence_labeling_problem.h dlib/svm/structural_svm_sequence_labeling_problem_abstract.h Revision: 2e3aca303a90 Date: Oct 30, 2011 (10:10:57 UTC) setup serialization for the sequence_labeler. Modified dlib/svm/sequence_labeler.h dlib/svm/sequence_labeler_abstract.h Revision: dd86c65d97aa Date: Oct 30, 2011 (10:01:07 UTC) Added a set of tools to allow a user to easily learn to do sequence labeling using dlib's structural SVM implementation. Modified dlib/svm.h dlib/svm_threaded.h Added dlib/svm/cross_validate_sequence_labeler.h dlib/svm/cross_validate_sequence_labeler_abstract.h dlib/svm/sequence_labeler.h dlib/svm/sequence_labeler_abstract.h dlib/svm/structural_sequence_labeling_trainer.h dlib/svm/structural_sequence_labeling_trainer_abstract.h dlib/svm/structural_svm_sequence_labeling_problem.h dlib/svm/structural_svm_sequence_labeling_problem_abstract.h Revision: f777c3273491 Date: Oct 30, 2011 (09:05:58 UTC) Added the is_sequence_labeling_problem() routine. Modified dlib/svm/svm.h dlib/svm/svm_abstract.h Revision: 129c551c9454 Date: Oct 30, 2011 (07:51:49 UTC) Added some missing validation of the user supplied number of folds to the cross_validate_multiclass_trainer() routine. Not it will throw an exception if the number of folds is too big rather than just producing a confusing result. Modified dlib/svm/cross_validate_multiclass_trainer.h dlib/svm/cross_validate_multiclass_trainer_abstract.h Revision: 8bf5930df8d6 Date: Oct 30, 2011 (05:22:41 UTC) Clarified the spec regarding the type of sparse vector supported by these two objects. Modified dlib/image_keypoint/hashed_feature_image_abstract.h dlib/svm/structural_svm_problem_abstract.h Revision: e1df4ccc7183 Date: Oct 30, 2011 (05:13:07 UTC) Clarified the sparse vector spec and formally introduced the concept of unsorted sparse vectors. Modified dlib/svm/sparse_vector_abstract.h Revision: 9070ae7b6db4 Date: Oct 27, 2011 (19:47:50 UTC) Fixed a bug in find_max_factor_graph_viterbi() which occurred when a zero order model had negative factor values. Modified dlib/optimization/find_max_factor_graph_viterbi.h dlib/test/find_max_factor_graph_viterbi.cpp Revision: 65aec8d30603 Date: Oct 27, 2011 (19:46:46 UTC) Clarified spec Modified dlib/optimization/find_max_factor_graph_viterbi_abstract.h Revision: c4c7e2f1ddf6 Date: Oct 27, 2011 (19:17:53 UTC) Changed find_max_factor_graph_viterbi() so you can use run-time defined order and num_states parameters. Modified dlib/optimization/find_max_factor_graph_viterbi.h dlib/optimization/find_max_factor_graph_viterbi_abstract.h dlib/test/find_max_factor_graph_viterbi.cpp Revision: 850795a3e68f Date: Oct 20, 2011 (14:29:25 UTC) Fixed a bug in the statement::get_column_as_text() routine. It didn't work right if the column contained a NULL. Modified dlib/sqlite/sqlite.h Revision: aa7f932dbeb9 Date: Oct 19, 2011 (18:03:12 UTC) Minor change to avoid a warning in gcc Modified dlib/svm/structural_svm_problem.h Revision: f80bb2691faa Date: Oct 19, 2011 (17:57:56 UTC) Removed unused variables. Modified dlib/optimization/optimization_bobyqa.h Revision: 32939738245f Date: Oct 19, 2011 (17:42:32 UTC) Changed makefile slightly so it compiles in Ubuntu 11.10 Modified dlib/test/makefile Revision: 73c5592593e9 Date: Oct 13, 2011 (14:56:04 UTC) Added the is_array2d template. Modified dlib/array2d/array2d_kernel_1.h dlib/is_kind.h dlib/test/array2d.cpp Revision: e0cc42754ae7 Date: Oct 13, 2011 (14:46:38 UTC) Fixed a bug in is_const_type. It didn't work right for reference types. Modified dlib/algs.h Revision: cb00b9ff8d0e Date: Oct 10, 2011 (17:07:57 UTC) Added unit tests and fixed a few issues. Modified dlib/matrix/matrix_conv.h dlib/test/matrix4.cpp Revision: 8625d7e3a850 Date: Oct 10, 2011 (16:38:37 UTC) Clarified spec Modified dlib/image_transforms/spatial_filtering_abstract.h Revision: cd108bd851a3 Date: Oct 10, 2011 (15:55:24 UTC) Improved spec Modified dlib/matrix/matrix_conv_abstract.h Revision: 53968cfb2f81 Date: Oct 10, 2011 (15:53:13 UTC) Added functions for computing the convolution and cross-correlation between two matrices. Modified dlib/matrix.h Added dlib/matrix/matrix_conv.h dlib/matrix/matrix_conv_abstract.h Revision: 40a5e66259dc Date: Oct 10, 2011 (08:35:42 UTC) Added flip() Modified dlib/matrix/matrix_utilities.h dlib/matrix/matrix_utilities_abstract.h Revision: 4455b371dc43 Date: Oct 09, 2011 (05:00:25 UTC) fixed typo in spec Modified dlib/image_transforms/segment_image_abstract.h Revision: 68f7575cb49c Date: Oct 08, 2011 (16:29:56 UTC) Fixed invalid assert Modified dlib/image_transforms/segment_image.h Revision: 7b69ed8b4745 Date: Oct 08, 2011 (16:25:55 UTC) Added the segment_image() routine. Modified dlib/image_transforms.h Added dlib/image_transforms/segment_image.h dlib/image_transforms/segment_image_abstract.h Revision: 945f7aff8819 Date: Oct 08, 2011 (15:20:56 UTC) Added randomly_color_image() Modified dlib/image_transforms.h Added dlib/image_transforms/randomly_color_image.h dlib/image_transforms/randomly_color_image_abstract.h Revision: d2e3b7b5bfa7 Date: Oct 08, 2011 (15:05:05 UTC) improved spec Modified dlib/geometry/border_enumerator_abstract.h Revision: 347860a75a5d Date: Oct 08, 2011 (15:03:21 UTC) Added an object to help iterate over the border elements of a rectangle. Modified dlib/geometry.h dlib/test/geometry.cpp Added dlib/geometry/border_enumerator.h dlib/geometry/border_enumerator_abstract.h Revision: 55c546309986 Date: Oct 08, 2011 (14:00:27 UTC) Added an implementation of the union-find algorithm. Modified dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/disjoint_subsets.h dlib/disjoint_subsets/disjoint_subsets.h dlib/disjoint_subsets/disjoint_subsets_abstract.h dlib/test/disjoint_subsets.cpp Revision: 2d5a914f0168 Date: Oct 08, 2011 (04:25:25 UTC) Added missing requirement to the equalize_histogram() and get_histogram() routines. Modified dlib/image_transforms/equalize_histogram.h dlib/image_transforms/equalize_histogram_abstract.h Revision: 88fad198c50d Date: Oct 07, 2011 (16:03:59 UTC) fixed typo Modified dlib/image_transforms/label_connected_blobs_abstract.h Revision: b4c7331c4de6 Date: Oct 02, 2011 (14:34:38 UTC) clarified spec Modified dlib/optimization/find_max_factor_graph_nmplp_abstract.h Revision: 3d0b45f8948f Date: Oct 01, 2011 (12:04:20 UTC) Optimized the trust region solver a little bit. Modified dlib/optimization/optimization_trust_region.h Revision: a94f6c50ab00 Date: Oct 01, 2011 (12:02:38 UTC) Changed LAPACK bindings so that really small matrices don't use LAPACK for eigenvalue_decomposition or the triangular solver. Modified dlib/matrix/matrix_eigenvalue.h dlib/matrix/matrix_trsm.h Revision: 2181abb86fd4 Date: Oct 01, 2011 (11:37:53 UTC) Changed chol() so it only calls LAPACK if the matrix is big enough to benefit from LAPACK. Modified dlib/matrix/matrix_la.h Revision: b1935700246e Date: Oct 01, 2011 (05:11:56 UTC) Added a constructor to array2d that lets you set its size. Modified dlib/array2d/array2d_kernel_1.h dlib/array2d/array2d_kernel_abstract.h Revision: 73b01d531b49 Date: Oct 01, 2011 (04:40:24 UTC) clarified spec Modified dlib/image_transforms/label_connected_blobs_abstract.h Revision: f332e6f85bad Date: Sep 29, 2011 (15:19:32 UTC) Changed the behavior of gaussian_blur() to make it a little more user friendly. Modified dlib/image_transforms/spatial_filtering.h dlib/image_transforms/spatial_filtering_abstract.h Revision: fa7d63018139 Date: Sep 28, 2011 (13:47:13 UTC) Added a parameter to control the maximum number of iterations for the two OCA based svm optimizers. Modified dlib/svm/svm_c_ekm_trainer.h dlib/svm/svm_c_ekm_trainer_abstract.h dlib/svm/svm_c_linear_trainer.h dlib/svm/svm_c_linear_trainer_abstract.h Revision: 03888435db27 Date: Sep 26, 2011 (16:04:51 UTC) Fixed a bug pointed out by Justin Solomon which could cause the svr_trainer and svm_c_trainer to produce incorrect results in certain unusual cases. Also added unit tests to make sure the bug stays fixed. Modified dlib/svm/svm_c_trainer.h dlib/svm/svr_trainer.h dlib/test/svm.cpp Revision: a3e23f12ceeb Date: Sep 25, 2011 (08:36:33 UTC) Fixed typo in spec Modified dlib/sqlite/sqlite_abstract.h Revision: 6f7a6ca1f0a5 Date: Sep 25, 2011 (08:26:26 UTC) Added a cast to avoid compiler errors in visual studio. Modified dlib/image_transforms/edge_detector.h Revision: fa74342ba40d Date: Sep 25, 2011 (07:36:36 UTC) Added missing assert and made minor refinements to spec. Modified dlib/image_transforms/label_connected_blobs.h dlib/image_transforms/label_connected_blobs_abstract.h Revision: 08d28e976075 Date: Sep 24, 2011 (19:03:43 UTC) Added some tests for the label_connected_blobs() function. Modified dlib/test/image.cpp Revision: 983caa5dcbb1 Date: Sep 24, 2011 (18:44:39 UTC) Added the label_connected_blobs() routine. Modified dlib/image_transforms.h Added dlib/image_transforms/label_connected_blobs.h dlib/image_transforms/label_connected_blobs_abstract.h Revision: 1f61e86ac58e Date: Sep 24, 2011 (14:13:56 UTC) updated spec Modified dlib/image_transforms/edge_detector_abstract.h Revision: 5d7bcb2e9ff7 Date: Sep 24, 2011 (13:59:45 UTC) Changed suppress_non_maximum_edges() to use the L2 norm instead of L1 norm for measuring the strength of an edge since this produces a slightly better result. Modified dlib/image_transforms/edge_detector.h Revision: 32fdba64fb91 Date: Sep 24, 2011 (13:35:43 UTC) Removed an unneeded cast. Modified dlib/image_transforms/edge_detector.h Revision: 7dbe7db4846c Date: Sep 24, 2011 (12:56:03 UTC) Added a convenience routine for blurring an image with a Gaussian filter. Modified dlib/image_transforms/spatial_filtering.h dlib/image_transforms/spatial_filtering_abstract.h Revision: 678b9995cd2f Date: Sep 24, 2011 (12:38:51 UTC) Added is_float_type. Modified dlib/algs.h Revision: d04f13d17279 Date: Sep 24, 2011 (08:26:37 UTC) Fixed a bug in the matrix class. Expressions of the form mat *= mat(0) would evaluate incorrectly because the *= operator took the right hand side by reference and thus experienced an aliasing problem. The other op= operators had similar problems and have also been fixed. Modified dlib/matrix/matrix.h dlib/test/matrix.cpp Revision: 282890e9056b Date: Sep 24, 2011 (-04:11:14 UTC) Increased usability of the dlib CMakeLists.txt file slightly. Modified dlib/CMakeLists.txt Revision: 915028a21b20 Date: Sep 23, 2011 (19:41:05 UTC) setup cmake file to link against sqlite3 if it can find it. Modified dlib/CMakeLists.txt Revision: 6752cd49b512 Date: Sep 23, 2011 (19:16:15 UTC) Just removed the sqlite namespace and unindended everything. Modified dlib/sqlite/sqlite.h dlib/sqlite/sqlite_abstract.h dlib/sqlite/sqlite_tools.h dlib/sqlite/sqlite_tools_abstract.h Revision: 568e36846900 Date: Sep 23, 2011 (18:52:40 UTC) Added missing asserts and clarified spec. Modified dlib/sqlite/sqlite.h dlib/sqlite/sqlite_abstract.h Revision: 23d22db49740 Date: Sep 23, 2011 (18:35:07 UTC) Added a C++ wrapper for SQLite. Added dlib/sqlite.h dlib/sqlite/sqlite.h dlib/sqlite/sqlite_abstract.h dlib/sqlite/sqlite_tools.h dlib/sqlite/sqlite_tools_abstract.h Revision: b1c9f4ea0cda Date: Sep 22, 2011 (16:25:33 UTC) Changed shared_ptr slightly to avoid warnings from gcc. Modified dlib/smart_pointers/shared_ptr.h Revision: 3239de3a8f7c Date: Sep 21, 2011 (18:59:30 UTC) Changed find_max_factor_graph_nmplp() to use a simple hash table instead of std::map. This is significantly faster. I also added some missing asserts to validate that the map problems supplied by the user are valid. Modified dlib/optimization/find_max_factor_graph_nmplp.h dlib/optimization/find_max_factor_graph_nmplp_abstract.h Revision: 5e48625626d2 Date: Sep 21, 2011 (14:15:31 UTC) Changed the suppress_non_maximum_edges() routine so that it is more robust to a wider range of pixel types. Modified dlib/image_transforms/edge_detector.h dlib/image_transforms/edge_detector_abstract.h Revision: e7eb3d460021 Date: Sep 19, 2011 (14:56:57 UTC) Another minor change to avoid a bug in visual studio 2005. Modified dlib/geometry/rectangle.h Revision: ac1dbbeb9878 Date: Sep 19, 2011 (14:46:08 UTC) Changed code to avoid a bug in visual studio 2005 Modified dlib/svm/sparse_vector.h Revision: 26a8fcf6b6ae Date: Sep 19, 2011 (14:21:30 UTC) Previously, when using spatially_filter_image(), the intermediate filter computations were carried out using variables of the same basic type as the input image's pixels. I changed this to use the scalar type used by the actual filter given to this function since this should result in fewer surprises (since the filter usually determines what type is appropriate, not the input image). Modified dlib/image_transforms/spatial_filtering.h dlib/image_transforms/spatial_filtering_abstract.h Revision: 7fb047aa7bcf Date: Sep 18, 2011 (17:11:20 UTC) Minor change to avoid a compiler warning from gcc. Modified dlib/statistics/statistics.h Revision: 2cbd2c002cf5 Date: Aug 07, 2011 (13:24:51 UTC) Added some casts and a few other minor changes to get the code compiling in gcc 4.1.1. Modified dlib/image_keypoint/hog.h dlib/image_processing/detection_template_tools.h dlib/optimization/find_max_factor_graph_viterbi.h dlib/test/find_max_factor_graph_viterbi.cpp dlib/test/object_detector.cpp Revision: fba1ee1da791 Date: Sep 18, 2011 (13:15:30 UTC) Fixed some corner cases in find_max_factor_graph_viterbi() and also added unit tests. Modified dlib/optimization/find_max_factor_graph_viterbi.h dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/test/find_max_factor_graph_viterbi.cpp Revision: 3028dd922f34 Date: Sep 18, 2011 (12:01:30 UTC) Added missing requirement Modified dlib/optimization/find_max_factor_graph_viterbi_abstract.h Revision: 148c48ed6637 Date: Sep 18, 2011 (11:46:39 UTC) Minor clarification. Modified dlib/optimization/find_max_factor_graph_viterbi_abstract.h Revision: 293b7bc7eb0c Date: Sep 18, 2011 (11:19:22 UTC) Added the find_max_factor_graph_viterbi() routine for performing MAP inference in chain-structured factor graphs. Modified dlib/optimization.h Added dlib/optimization/find_max_factor_graph_viterbi.h dlib/optimization/find_max_factor_graph_viterbi_abstract.h Revision: 862732eb8798 Date: Sep 18, 2011 (04:48:32 UTC) Renamed a function so auto complete in Vim works more conveniently. Modified dlib/test/find_max_factor_graph_nmplp.cpp Revision: 26dd9a2bbfce Date: Sep 18, 2011 (04:34:45 UTC) Changed code slightly to avoid a bug in visual studio 2005. Modified dlib/image_keypoint/hog.h Revision: b5a156be504d Date: Sep 17, 2011 (13:20:03 UTC) Added unit tests for the new object detection tools Modified dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/test/object_detector.cpp Revision: 4fd3365fe139 Date: Sep 17, 2011 (13:02:08 UTC) Minor changes to avoid compiler warnings Modified dlib/image_processing/scan_image_pyramid.h dlib/svm/cross_validate_object_detection_trainer.h Revision: 62dd369ff1a8 Date: Sep 17, 2011 (12:13:54 UTC) Fixed grammar. Modified dlib/svm/structural_svm_object_detection_problem.h Revision: 67056ff3ecf4 Date: Sep 17, 2011 (10:46:15 UTC) Fixed spelling error. Modified dlib/image_processing/scan_image_pyramid_abstract.h Revision: 3f8cba2ac34e Date: Sep 17, 2011 (09:21:24 UTC) Just renamed get_scales() to get_hash_bin_sizes() to make things more clear. Modified dlib/image_keypoint/hashed_feature_image.h dlib/image_keypoint/hashed_feature_image_abstract.h Revision: 3c19cb5ea886 Date: Sep 17, 2011 (07:35:55 UTC) Just renamed find_map_nmplp() to find_max_factor_graph_nmplp() Modified dlib/optimization.h dlib/test/CMakeLists.txt dlib/test/makefile docs/docs/optimization.xml docs/docs/term_index.xml Added dlib/optimization/find_max_factor_graph_nmplp.h dlib/optimization/find_max_factor_graph_nmplp_abstract.h dlib/test/find_max_factor_graph_nmplp.cpp Deleted dlib/optimization/find_map_nmplp.h dlib/optimization/find_map_nmplp_abstract.h dlib/test/find_map_nmplp.cpp Revision: 3a766da959c1 Date: Sep 17, 2011 (-04:16:51 UTC) Minor change to avoid a linker error. Modified dlib/svm/cross_validate_object_detection_trainer.h Revision: 5205e95922e8 Date: Sep 15, 2011 (18:36:51 UTC) Changed scan_image() so that once the max number of detections is reached it begins randomly subsampling possible detection locations rather than just stopping the detection procedure. Modified dlib/image_processing/scan_image.h dlib/image_processing/scan_image_abstract.h Revision: ffc7ff4f0b61 Date: Sep 15, 2011 (17:58:59 UTC) clarified the spec Modified dlib/image_processing/object_detector_abstract.h Revision: 49e9f1a220be Date: Sep 15, 2011 (17:16:51 UTC) Added some comments. Modified dlib/svm/structural_object_detection_trainer.h Revision: 99be57ec3d3f Date: Sep 15, 2011 (16:59:00 UTC) Fleshed out the spec. Modified dlib/svm/structural_object_detection_trainer_abstract.h Revision: 45164ffd76bb Date: Sep 15, 2011 (16:21:08 UTC) Fixed bugs in asserts. Modified dlib/image_processing/object_detector.h dlib/svm/cross_validate_object_detection_trainer.h Revision: f0041c604d9f Date: Sep 15, 2011 (15:58:49 UTC) Added the cross_validate_object_detection_trainer() and test_object_detection_function() routines. Modified dlib/svm.h Added dlib/svm/cross_validate_object_detection_trainer.h dlib/svm/cross_validate_object_detection_trainer_abstract.h Revision: 058a3f36cc1d Date: Sep 15, 2011 (15:32:35 UTC) Improved the error messages generated by the structural_svm_object_detection_problem. Modified dlib/svm/structural_svm_object_detection_problem.h Revision: c0d0d3213aa9 Date: Sep 15, 2011 (15:09:46 UTC) Increased the default max detections per template from 2000 to 10000 since setting this value too low can sometimes result in the failure of the structural_svm_object_detection_problem. Modified dlib/image_processing/scan_image_pyramid.h dlib/image_processing/scan_image_pyramid_abstract.h Revision: 990e2910d650 Date: Sep 14, 2011 (19:03:16 UTC) clarified spec Modified dlib/optimization/find_map_nmplp_abstract.h Revision: fec66d01e53d Date: Sep 11, 2011 (08:14:31 UTC) Added an initial version of the structural_object_detection_trainer. This is a tool for learning the parameters for an object like scan_image_pyramid. Modified dlib/svm_threaded.h Added dlib/svm/structural_object_detection_trainer.h dlib/svm/structural_object_detection_trainer_abstract.h Revision: fd427530b336 Date: Sep 11, 2011 (08:03:08 UTC) Defaulted the overlap tester type to test_box_overlap. Modified dlib/image_processing/object_detector.h dlib/image_processing/object_detector_abstract.h Revision: e971018e2266 Date: Sep 11, 2011 (07:00:06 UTC) added missing requirement. Modified dlib/svm/structural_svm_object_detection_problem_abstract.h Revision: d0e82f553988 Date: Sep 11, 2011 (06:50:37 UTC) Fixed the width_step() member functions. They weren't defined in quite the way they should have been. Modified dlib/array2d/array2d_kernel_1.h dlib/array2d/array2d_kernel_abstract.h dlib/opencv/cv_image_abstract.h dlib/test/array2d.cpp Revision: 453759317437 Date: Sep 11, 2011 (06:49:57 UTC) Minor change to avoid a compiler warning. Modified dlib/svm/cross_validate_regression_trainer.h Revision: 75326bd426ab Date: Sep 11, 2011 (06:19:17 UTC) Improved the error messages output when a set of truth rectangles can't be represented by an image scanner. Modified dlib/svm/structural_svm_object_detection_problem.h dlib/svm/structural_svm_object_detection_problem_abstract.h Revision: 57168db39341 Date: Sep 10, 2011 (17:24:08 UTC) Changed the test_regression_function() and cross_validate_regression_trainer() routines so they return both the MSE and R-squared values rather than just the MSE. Modified dlib/svm/cross_validate_regression_trainer.h dlib/svm/cross_validate_regression_trainer_abstract.h dlib/test/svm.cpp examples/svr_ex.cpp Revision: 30537902ff0d Date: Sep 09, 2011 (19:39:17 UTC) - Renamed spatially_filter_image() for the separable case to spatially_filter_image_separable() - Changed the behavior of spatially_filter_image(). Now it won't truncate signed pixel values to 0 if they go negative. Modified dlib/image_transforms/spatial_filtering.h dlib/image_transforms/spatial_filtering_abstract.h dlib/test/image.cpp Revision: 1b3b32d9fe1a Date: Sep 09, 2011 (18:59:03 UTC) Changed the interface for the spatially_filter_image() routines to take the filter as a matrix rather than C-array. I also fixed a bug which showed up when using non-square filters. The bug would cause the edges of the output image to be incorrect. Modified dlib/image_transforms/spatial_filtering.h dlib/image_transforms/spatial_filtering_abstract.h dlib/test/image.cpp Revision: 2810ffc8fa57 Date: Sep 09, 2011 (18:50:05 UTC) Increased the max size matrix which will allocate its memory on the stack from 128 bytes to 256 bytes. Modified dlib/matrix/matrix_data_layout.h Revision: a9d22f7badbd Date: Sep 09, 2011 (17:22:07 UTC) changed to avoid a compiler warning Modified dlib/test/image.cpp Revision: 7ff4667b8e15 Date: Sep 09, 2011 (17:16:49 UTC) Added an overload of spatially_filter_image() that uses a separable filter. Modified dlib/image_transforms/spatial_filtering.h dlib/image_transforms/spatial_filtering_abstract.h dlib/test/image.cpp Revision: 1cb1a12cf287 Date: Sep 09, 2011 (15:29:21 UTC) Added functions to the interface that allow a user to control the relative loss from a false alarm vs. a missed detection. Modified dlib/svm/structural_svm_object_detection_problem.h dlib/svm/structural_svm_object_detection_problem_abstract.h Revision: 50d34af9571d Date: Sep 09, 2011 (14:59:16 UTC) setup separate measures of loss for false alarms and missed truth boxes. Modified dlib/svm/structural_svm_object_detection_problem.h Revision: ff9a1f723e83 Date: Sep 08, 2011 (19:25:07 UTC) Added comments clarifying the thread safety requirements of the new object detection tools. Modified dlib/image_keypoint/hashed_feature_image_abstract.h dlib/image_keypoint/hog_abstract.h dlib/image_processing/box_overlap_testing_abstract.h dlib/image_processing/scan_image_pyramid_abstract.h Revision: 2af85e977a3f Date: Sep 08, 2011 (19:10:43 UTC) Removed some testing/debugging code like internal asserts, cout statements, and other cruft. Modified dlib/image_processing/object_detector.h dlib/image_processing/scan_image_pyramid.h dlib/svm/structural_svm_object_detection_problem.h Revision: bce33257672c Date: Sep 08, 2011 (18:29:52 UTC) Added yet more missing asserts Modified dlib/svm/structural_svm_object_detection_problem.h dlib/svm/structural_svm_object_detection_problem_abstract.h Revision: c8518b8a523b Date: Sep 08, 2011 (18:19:48 UTC) Added a missing assert Modified dlib/image_processing/box_overlap_testing.h Revision: 04ff7993d430 Date: Sep 08, 2011 (18:16:44 UTC) Added a missing assert and fixed some typos. Modified dlib/image_processing/object_detector.h dlib/image_processing/object_detector_abstract.h dlib/svm/structural_svm_object_detection_problem_abstract.h Revision: d9ebc2df50bc Date: Sep 08, 2011 (18:08:23 UTC) Added missing assert Modified dlib/image_processing/scan_image_pyramid.h Revision: bdee89aa3b79 Date: Sep 08, 2011 (18:01:31 UTC) simplified this object a little bit. Modified dlib/image_keypoint/hashed_feature_image.h dlib/image_keypoint/hashed_feature_image_abstract.h Revision: c0d1eb6c45f0 Date: Sep 08, 2011 (16:15:41 UTC) Fixed a bug in the cpp_tokenizer that only shows up on newer versions of gcc. It wasn't tokenizing double quoted strings right. Modified dlib/cpp_tokenizer/cpp_tokenizer_kernel_1.h Revision: 125e8b3d0843 Date: Sep 08, 2011 (15:14:26 UTC) filled out spec Modified dlib/image_processing/box_overlap_testing_abstract.h Revision: 86ff210bdd7d Date: Sep 08, 2011 (14:48:28 UTC) improved the spec Modified dlib/svm/structural_svm_object_detection_problem_abstract.h Revision: 87780317e74c Date: Sep 07, 2011 (19:45:14 UTC) Added some comments. Still need to complete the spec. Modified dlib/svm/structural_svm_object_detection_problem_abstract.h Revision: 0e188c0429cc Date: Sep 07, 2011 (19:32:09 UTC) filled in the spec Modified dlib/image_processing/object_detector_abstract.h Revision: 3b4c63ca693e Date: Sep 07, 2011 (19:12:50 UTC) Added a functor for testing if two rectangles overlap. Modified dlib/image_processing.h Added dlib/image_processing/box_overlap_testing.h dlib/image_processing/box_overlap_testing_abstract.h Revision: 99dbae40f2ec Date: Sep 07, 2011 (18:59:21 UTC) Added the structural_svm_object_detection_problem object. Modified dlib/svm_threaded.h Added dlib/svm/structural_svm_object_detection_problem.h dlib/svm/structural_svm_object_detection_problem_abstract.h Revision: 3a13107d244d Date: Sep 07, 2011 (18:33:40 UTC) Added the object_detector object. Modified dlib/image_processing.h Added dlib/image_processing/object_detector.h dlib/image_processing/object_detector_abstract.h Revision: a147caf67fca Date: Sep 07, 2011 (18:22:53 UTC) Added some functions for creating detection templates. Modified dlib/image_processing.h Added dlib/image_processing/detection_template_tools.h dlib/image_processing/detection_template_tools_abstract.h Revision: 9aecb59d0165 Date: Sep 07, 2011 (18:09:35 UTC) Added the scan_image_pyramid object. Modified dlib/image_processing.h Added dlib/image_processing/scan_image_pyramid.h dlib/image_processing/scan_image_pyramid_abstract.h Revision: 81e7482880d7 Date: Sep 07, 2011 (17:59:23 UTC) Added the hashed_feature_image object. Modified dlib/image_keypoint.h Added dlib/image_keypoint/hashed_feature_image.h dlib/image_keypoint/hashed_feature_image_abstract.h Revision: 7ac20171eb6c Date: Sep 07, 2011 (16:16:18 UTC) Fixed typos in spec. Modified dlib/array2d/array2d_kernel_abstract.h dlib/opencv/cv_image_abstract.h Revision: 13e62ddef65a Date: Sep 07, 2011 (16:07:21 UTC) Added missing requirement. Modified dlib/image_transforms/spatial_filtering_abstract.h Revision: eef387b5b9b4 Date: Sep 07, 2011 (14:56:28 UTC) Added some optimized serialization overloads for std::vectors of characters to take advantage of the fact that you can just write the contents of memory out in this case. Modified dlib/serialize.h dlib/test/serialize.cpp Revision: 4a8ecc5a2c48 Date: Sep 07, 2011 (14:40:48 UTC) Fixed typo Modified dlib/optimization/find_map_nmplp.h dlib/optimization/find_map_nmplp_abstract.h docs/docs/optimization.xml Revision: ab2e9f8b1d6b Date: Sep 05, 2011 (07:27:20 UTC) Fixed grammar in comment. Modified dlib/image_keypoint/hog_abstract.h Revision: 6202c9606caf Date: Sep 04, 2011 (06:27:57 UTC) Added a copy_configuration() routine to the hog_image. Modified dlib/image_keypoint/hog.h dlib/image_keypoint/hog_abstract.h Revision: af75e0c2b226 Date: Sep 04, 2011 (06:05:34 UTC) Added a get_num_dimensions() method to the hog_image. Modified dlib/image_keypoint/hog.h dlib/image_keypoint/hog_abstract.h Revision: 2981c2f687ea Date: Sep 02, 2011 (18:00:22 UTC) Changed the set_current_dir() implementation so that it compiles in visual studio even when compiling with unicode strings enabled. Modified dlib/misc_api/misc_api_kernel_1.cpp Revision: 8c121937db50 Date: Sep 01, 2011 (13:49:33 UTC) Added cast to avoid compiler warning in visual studio 2010 Modified dlib/console_progress_indicator.h Revision: f23f0f01b8ed Date: Aug 31, 2011 (15:07:48 UTC) Added the scan_image() routine. It is a tool for sliding a set of rectangles over an image space and finding the locations where the sum of pixels in the rectangles exceeds a threshold. Modified dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/image_processing.h dlib/image_processing/scan_image.h dlib/image_processing/scan_image_abstract.h dlib/test/scan_image.cpp Revision: 4d57ef1cc200 Date: Aug 30, 2011 (14:36:43 UTC) clarified spec Modified dlib/string/string_abstract.h Revision: b0206ffb6423 Date: Aug 29, 2011 (16:13:53 UTC) Added a missing requires clause Modified dlib/optimization/find_map_nmplp.h dlib/optimization/find_map_nmplp_abstract.h Revision: 642ad590ad80 Date: Aug 29, 2011 (15:44:23 UTC) clarified the spec Modified dlib/optimization/find_map_nmplp_abstract.h Revision: 88a5389b0cff Date: Aug 28, 2011 (18:27:47 UTC) updated the spec Modified dlib/optimization/find_map_nmplp_abstract.h Revision: 4dd51e139a9f Date: Aug 28, 2011 (17:58:50 UTC) Added some unit tests for the find_map_nmplp() routine. Modified dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/test/find_map_nmplp.cpp Revision: d26703730594 Date: Aug 28, 2011 (16:55:57 UTC) clarified spec Modified dlib/optimization/find_map_nmplp_abstract.h Revision: ef392e462a75 Date: Aug 28, 2011 (14:37:00 UTC) Added the find_map_nmplp() function for performing approximate MAP inference. Modified dlib/optimization.h Added dlib/optimization/find_map_nmplp.h dlib/optimization/find_map_nmplp_abstract.h Revision: f06204810262 Date: Aug 25, 2011 (16:30:54 UTC) Fixed a bug in the png_loader. If you loaded an image with an alpha channel into something without an alpha channel there were uninitialized values being alpha blended into the image. Modified dlib/image_loader/png_loader.h dlib/test/image.cpp Revision: 8e9bae970d64 Date: Aug 25, 2011 (16:20:17 UTC) Added some overloads of serialize/deserialize for array2d objects which contain simple 8bit POD pixel types. This makes the serialize routines much faster in these cases. Modified dlib/array2d.h dlib/test/array2d.cpp Added dlib/array2d/serialize_pixel_overloads.h Revision: ae7cdc7b0f9a Date: Aug 25, 2011 (16:19:08 UTC) - Formally defined how array2d objects must lay their components out in memory - Added width_step() to array2d to help define the memory layout. Also added it to cv_image to keep the interfaces compatible. - Fixed a typo in the deserialize for array2d objects. The template wasn't declared properly. Modified dlib/array2d/array2d_kernel_1.h dlib/array2d/array2d_kernel_abstract.h dlib/opencv/cv_image.h dlib/opencv/cv_image_abstract.h Revision: 62c202fdaa10 Date: Aug 25, 2011 (15:50:13 UTC) Changed the serialization routine for bgr_pixels to store the pixels in BGR order rather than RGB. Modified dlib/pixel.h Revision: a93d0fceaa64 Date: Aug 25, 2011 (14:36:17 UTC) Added a mem_manager_type typedef so the interface better matches array2d. Modified dlib/opencv/cv_image.h dlib/opencv/cv_image_abstract.h Revision: fee8ca4e04fc Date: Aug 24, 2011 (17:45:19 UTC) Fixing incorrect print statement. Modified dlib/svm/rr_trainer.h Revision: ddf47f7389a3 Date: Aug 24, 2011 (17:35:55 UTC) Moved the docs for some functions to the top so that htmlify links to them right. Modified dlib/statistics/statistics_abstract.h Revision: 8064f9c61d52 Date: Aug 24, 2011 (17:34:28 UTC) Changed the interface to the ridge regression trainer objects so that they report the entire set of LOO prediction values rather than a summary statistic like mean squared error. Modified dlib/svm/krr_trainer.h dlib/svm/krr_trainer_abstract.h dlib/svm/rr_trainer.h dlib/svm/rr_trainer_abstract.h Revision: b7f05ed37f59 Date: Aug 24, 2011 (17:26:54 UTC) Added the following functions for computing statistics on vectors: mean_sign_agreement(), correlation(), covariance(), r_squared(), and mean_squared_error() Modified dlib/statistics/statistics.h dlib/statistics/statistics_abstract.h Revision: 3bc941c00ca0 Date: Aug 24, 2011 (15:41:06 UTC) Fixed typo in spec Modified dlib/image_transforms/draw_abstract.h Revision: cdb429f3840f Date: Aug 24, 2011 (15:38:59 UTC) Cleaned up the interface to draw_line() Modified dlib/image_transforms/draw.h dlib/image_transforms/draw_abstract.h Revision: e831473a2699 Date: Aug 24, 2011 (15:27:02 UTC) Added missing inline to avoid compiler errors. Modified dlib/geometry/rectangle.h Revision: 1a918243d71d Date: Aug 24, 2011 (15:24:38 UTC) Added a function for computing the center of a rectangle. Modified dlib/geometry/rectangle.h dlib/geometry/rectangle_abstract.h dlib/test/geometry.cpp Revision: d85e85a25b9c Date: Aug 23, 2011 (18:52:51 UTC) Added a test that the pyramid down objects do the coordinate mapping correctly. Modified dlib/test/pyramid_down.cpp Revision: 7b37df7ec767 Date: Aug 22, 2011 (18:33:25 UTC) Fixed a minor bug in the list_box. It's behavior was a little awkward when using the multiple selection feature. Modified dlib/gui_widgets/widgets.cpp Revision: bea794310388 Date: Aug 21, 2011 (-03:40:43 UTC) Changed the pyramid down objects so that they make better use of the available image data. Previously, more pixels on the right and bottom of the image were cropped than was necessary. Modified dlib/image_transforms/image_pyramid.h Revision: 9fc687f85043 Date: Aug 21, 2011 (-04:27:32 UTC) Updated the block spatial filtering functions so they can operate on rectangular areas instead of just square areas. Modified dlib/image_transforms/spatial_filtering.h dlib/image_transforms/spatial_filtering_abstract.h Revision: 27b136347a74 Date: Aug 20, 2011 (18:55:14 UTC) Fixed a bug pointed out by Martin Müllenhaupt which caused the windows socket code to not compile when used with the mingw-cross-env project. Modified dlib/sockets/sockets_kernel_1.cpp Revision: 80a6ea5aab17 Date: Aug 20, 2011 (17:38:25 UTC) Made the behavior of the image_window a little more convenient. Now it will automatically size itself properly when a zoom is in effect and you place a new image into it. Modified dlib/gui_widgets/widgets.cpp dlib/gui_widgets/widgets.h dlib/gui_widgets/widgets_abstract.h Revision: 236be88a5b48 Date: Aug 17, 2011 (18:29:41 UTC) The image_display didn't display overlay rectangles quite right. If you zoomed in you could see that some of the pixels which are inside the rectangle were outside the overlay. Specifically, the right column and bottom row was outside the overlay rectangle. This has been fixed. Now all pixels which are supposed to be part of a rectangle are drawn as being inside the overlay rectangle. Modified dlib/gui_widgets/widgets.cpp dlib/test/gui/main.cpp Revision: d2c7e2a6f600 Date: Aug 17, 2011 (14:04:10 UTC) Made the integral_image more general by making it templated on the type of scalar used to store the sums. Modified dlib/image_transforms/integral_image.h dlib/image_transforms/integral_image_abstract.h dlib/test/image.cpp Revision: 8934983bbae5 Date: Aug 14, 2011 (-04:16:48 UTC) Added a global operator+ for rectangle+point to make this kind of operation compile in more contexts. Modified dlib/geometry/rectangle.h dlib/geometry/rectangle_abstract.h dlib/test/geometry.cpp Revision: be314f404cac Date: Aug 13, 2011 (11:50:38 UTC) fixed minor typo in comment Modified dlib/algs.h Revision: 392c724b93d1 Date: Aug 11, 2011 (18:26:51 UTC) Made hog_image clearable and serializable. Modified dlib/image_keypoint/hog.h dlib/image_keypoint/hog_abstract.h dlib/test/hog_image.cpp Revision: dfd3cee1375f Date: Aug 11, 2011 (17:37:10 UTC) Made running_stats serializable. Modified dlib/statistics/statistics.h dlib/statistics/statistics_abstract.h dlib/test/statistics.cpp Revision: 0ed77648879d Date: Aug 09, 2011 (18:37:42 UTC) Clarified spec. Modified dlib/image_keypoint/hog_abstract.h Revision: 667d73dfafe0 Date: Aug 09, 2011 (13:06:01 UTC) added more unit tests for hog coordinate transforms Modified dlib/test/hog_image.cpp Revision: 1a7652facadc Date: Aug 09, 2011 (12:48:55 UTC) Removed unneeded code. Modified dlib/test/pyramid_down.cpp Revision: 2392b6467de7 Date: Aug 08, 2011 (19:50:34 UTC) Added a more complete set of functions for converting between image space and the downsampled hog grid. So now you can convert from image to hog instead of just hog to image. Also added some related unit tests. Modified dlib/image_keypoint/hog.h dlib/image_keypoint/hog_abstract.h dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/test/hog_image.cpp Revision: c79392b523d9 Date: Aug 08, 2011 (15:35:09 UTC) Added fill_rect() for images. Modified dlib/image_transforms/draw.h dlib/image_transforms/draw_abstract.h Revision: bbfdf43a5046 Date: Jul 18, 2011 (08:54:22 UTC) Clarified spec Modified dlib/image_transforms/spatial_filtering_abstract.h Revision: ede21bcc8e0b Date: Jul 13, 2011 (14:10:16 UTC) Added some tests for the new versions of pyramid_down. Modified dlib/test/pyramid_down.cpp Revision: 851b5affb11f Date: Jul 13, 2011 (13:11:09 UTC) Updated image pyramid spec to include new pyramid functions. Modified dlib/image_transforms/image_pyramid_abstract.h Revision: 6e48b6fe9714 Date: Jul 13, 2011 (13:01:49 UTC) Added a version of pyramid_down which scales at a ratio of 5:4 Modified dlib/image_transforms/image_pyramid.h Revision: fc0723938ff1 Date: Jul 13, 2011 (11:32:45 UTC) Added a 4:3 pyramid down tool. Modified dlib/image_transforms/image_pyramid.h Revision: 623b9eec3da6 Date: Jul 13, 2011 (11:24:32 UTC) Moved the /256 from the spatial filtering routine to it's proper place in the pyramid code. Modified dlib/image_transforms/image_pyramid.h dlib/image_transforms/spatial_filtering.h Revision: 1a9d095a0871 Date: Jul 13, 2011 (10:47:32 UTC) Made code a little easier to read. Modified dlib/image_transforms/image_pyramid.h Revision: fe270123354e Date: Jul 13, 2011 (10:33:14 UTC) Adding initial version of a 3:2 pyramid Modified dlib/image_transforms/image_pyramid.h Revision: f59114890688 Date: Jul 13, 2011 (07:21:47 UTC) Added some functions for running a 3x3 separable filter on part of an image. Modified dlib/image_transforms/spatial_filtering.h dlib/image_transforms/spatial_filtering_abstract.h Revision: 992b85a1f714 Date: Jul 08, 2011 (15:59:25 UTC) Fixed grammar in comment. Modified dlib/image_transforms/image_pyramid_abstract.h Revision: 5525ad9e6802 Date: Jul 08, 2011 (11:39:05 UTC) Added a file_exists() function. Modified dlib/dir_nav/dir_nav_extensions.cpp dlib/dir_nav/dir_nav_extensions.h dlib/dir_nav/dir_nav_extensions_abstract.h Revision: 662d4282a332 Date: Jul 08, 2011 (11:19:39 UTC) Fixed spelling error in comment. Modified dlib/dir_nav/dir_nav_kernel_1.cpp Revision: 00d6272e570b Date: Jul 05, 2011 (15:58:04 UTC) Changed code around so that the save_png.h header file doesn't need to #include png.h. I did this because png.h will cause the compile to fail if the user #includes setjmp.h along with png.h. Modified dlib/all/source.cpp dlib/image_saver/save_png.h Added dlib/image_saver/save_png.cpp Revision: 3859b46d123a Date: Jun 20, 2011 (16:45:23 UTC) Added an event handler for when the user selects an overlay rectangle. Modified dlib/gui_widgets/widgets.cpp dlib/gui_widgets/widgets.h dlib/gui_widgets/widgets_abstract.h Revision: cf9fdf3f9a24 Date: Jun 20, 2011 (16:24:11 UTC) Added the ability for the user to delete overlay rectangles from the image_display. Also added interface functions to programmatically observe what is happening to the overlays. Modified dlib/gui_widgets/widgets.cpp dlib/gui_widgets/widgets.h dlib/gui_widgets/widgets_abstract.h Revision: 69d589c0d2c4 Date: Jun 20, 2011 (14:14:22 UTC) Fixed a bug in the svm_struct test. The test would always fail if run more than once. Modified dlib/test/svm_struct.cpp Revision: 254511c14559 Date: Jun 20, 2011 (13:45:30 UTC) Simplified the CMakeLists.txt file for the unit tests. Also made it use Release mode by default. Modified dlib/test/CMakeLists.txt Revision: 52243c30548d Date: Jun 20, 2011 (12:55:19 UTC) Minor change to suppress a compiler warning. Modified dlib/bridge/bridge.h Revision: 0e3e1978612e Date: Jun 20, 2011 (12:54:33 UTC) removed tabs Modified dlib/test/hash.cpp Revision: f77654f7ff35 Date: Jun 19, 2011 (19:05:30 UTC) Added support for user drawn rectangle overlays and selectable overlays to the image_display widget. Modified dlib/gui_widgets/widgets.cpp dlib/gui_widgets/widgets.h Revision: b418558fbcdc Date: Jun 19, 2011 (18:55:51 UTC) Added the distance_to_rect_edge() routine. Modified dlib/geometry/rectangle.h dlib/geometry/rectangle_abstract.h Revision: 29fc1c9e63e6 Date: Jun 19, 2011 (14:39:01 UTC) Made a minor change which apparently avoids a bug in gcc 5.4.2 on Ubuntu 11.04. Modified dlib/cmd_line_parser/cmd_line_parser_kernel_1.h Revision: 9cab37c678c8 Date: Jun 19, 2011 (14:12:46 UTC) Simplified the cmake files by putting the stuff to make Release the default build into a single file. Modified examples/CMakeLists.txt tools/htmlify/CMakeLists.txt tools/imglab/CMakeLists.txt tools/mltool/CMakeLists.txt Added dlib/release_build_by_default Revision: caf878a09f78 Date: Jun 19, 2011 (10:43:32 UTC) Fixed a bug in the image_display widget. If you switched it between images of a different size while any kind of zoom was in effect it could cause a segmentation fault. Modified dlib/gui_widgets/widgets.h Revision: bb356e5f56fb Date: Jun 19, 2011 (10:02:31 UTC) Made the global mutex construction for the get_current_dir() and set_current_dir() routines more robust. Modified dlib/misc_api/misc_api_kernel_1.cpp Revision: 71d5525f5762 Date: Jun 19, 2011 (09:11:21 UTC) Fixed the code so it compiles on windows. Modified dlib/misc_api/misc_api_kernel_1.cpp Revision: 3d43c7cb2e8d Date: Jun 19, 2011 (09:03:11 UTC) Added a set_current_dir() function. Modified dlib/misc_api/misc_api_kernel_1.cpp dlib/misc_api/misc_api_kernel_1.h dlib/misc_api/misc_api_kernel_2.cpp dlib/misc_api/misc_api_kernel_2.h dlib/misc_api/misc_api_kernel_abstract.h Revision: 37cafd756968 Date: Jun 19, 2011 (06:23:04 UTC) Made the horizontal scroll speed for the list_box more reasonable. Modified dlib/gui_widgets/widgets.cpp Revision: 255d6e44a74f Date: Jun 18, 2011 (13:39:21 UTC) Added match_endings to the dir_nav utils. Modified dlib/dir_nav/dir_nav_extensions.h dlib/dir_nav/dir_nav_extensions_abstract.h Revision: 95fba8585c57 Date: Jun 18, 2011 (11:44:14 UTC) Added the check_sub_option() method to the command line parser check object. Modified dlib/cmd_line_parser/cmd_line_parser_check_1.h dlib/cmd_line_parser/cmd_line_parser_check_abstract.h dlib/cmd_line_parser/cmd_line_parser_check_c.h Revision: edd267ed0a89 Date: Jun 11, 2011 (13:30:52 UTC) Minor change to avoid a compile time error in visual studio 2008. Modified dlib/type_safe_union/type_safe_union_kernel.h Revision: b85fd04afbfd Date: Jun 11, 2011 (12:44:47 UTC) I improved the way calls to the separation oracle get dispatched to the thread_pool. Previously, each separation oracle call was dispatched to a thread individually. This is inefficient when there are a whole lot of samples (and thus separation oracle calls which need to be made). So now entire batches of separation oracle calls are dispatched to each thread. This minimizes the thread switching and synchronization overhead. Modified dlib/svm/structural_svm_distributed.h dlib/svm/structural_svm_problem_threaded.h dlib/test/svm_struct.cpp Revision: d866b24643de Date: Jun 10, 2011 (12:08:39 UTC) Added extra #include for image_io.h so that future linker errors from this component will be caught by the unit tests. Modified dlib/test/pixel.cpp Revision: 228d050fef19 Date: Jun 10, 2011 (11:51:49 UTC) Added a bunch of overloads for add_task_by_value() Modified dlib/test/thread_pool.cpp dlib/threads/thread_pool_extension.h dlib/threads/thread_pool_extension_abstract.h Revision: 4712d167c972 Date: Jun 09, 2011 (15:08:14 UTC) Removed spurious statement. Modified dlib/image_transforms/integral_image.h Revision: 3434a8933144 Date: Jun 09, 2011 (14:56:03 UTC) Moved the serialize and deserialize function definitions outside the body of the type_safe_union class to avoid a compiler bug in an older version of gcc. Modified dlib/type_safe_union/type_safe_union_kernel.h Revision: 6fc6d63cf016 Date: Jun 09, 2011 (14:23:32 UTC) Fixed a bug which caused multiply defined symbol errors during linking if the PNG saving routine was #included. Modified dlib/image_saver/save_png.h Revision: 981d2a004b38 Date: Jun 08, 2011 (12:50:05 UTC) Clarified spec and docs Modified dlib/threads/thread_pool_extension_abstract.h docs/docs/api.xml Revision: 52945f6fea20 Date: Jun 08, 2011 (12:43:48 UTC) The structural SVM optimizers had checks that the risk never became negative. This only happens if the user implements the separation oracle wrong. In this case I had the code setup to force the risk to zero but this just ends up obscuring the fact that the user's separation oracle is incorrect. So I'm removing this check. This should make debugging separation oracles a little easier. Modified dlib/svm/structural_svm_distributed.h dlib/svm/structural_svm_problem.h Revision: 2b738eb7471e Date: Jun 07, 2011 (14:02:40 UTC) Added some tests for the new add_task_by_value() methods of the thread_pool. Modified dlib/test/thread_pool.cpp Revision: 92b89929fbb3 Date: Jun 07, 2011 (13:39:12 UTC) added a test Modified dlib/test/any.cpp Revision: 8655816dfcc0 Date: Jun 06, 2011 (18:47:32 UTC) Added an add_task_by_value() function to the thread_pool. Modified dlib/threads/thread_pool_extension.cpp dlib/threads/thread_pool_extension.h dlib/threads/thread_pool_extension_abstract.h Revision: 6975179076d8 Date: Jun 06, 2011 (17:32:14 UTC) Clarified spec again Modified dlib/any/any_abstract.h Revision: 4036a3c5122e Date: Jun 06, 2011 (17:16:56 UTC) clarified docs Modified dlib/any/any_abstract.h Revision: 8631b8c8d84d Date: Jun 05, 2011 (13:32:18 UTC) Switched some member_function_pointers from checking mode to non-checking mode. Modified dlib/threads/thread_pool_extension.h Revision: 03ddfba9b691 Date: Jun 05, 2011 (13:26:22 UTC) Fixed comment Modified dlib/any/any_function.h Revision: ccd12b6ae85b Date: Jun 04, 2011 (12:22:50 UTC) Removed cruft Modified dlib/array2d.h Revision: 03ed24ffa0e9 Date: Jun 04, 2011 (11:46:38 UTC) Made the conversion to and from HSI a little more robust. Modified dlib/pixel.h Revision: 222f8d3c6387 Date: Jun 04, 2011 (11:40:50 UTC) Removed time based seed to make test more repeatable. Modified dlib/test/matrix_qr.cpp Revision: 542f5806b741 Date: Jun 04, 2011 (11:39:26 UTC) Changed code slightly to avoid compiler error in visual studio 2005 Modified dlib/test/hash.cpp Revision: ce8ce57dedf8 Date: Jun 04, 2011 (07:15:04 UTC) Added another test Modified dlib/test/image.cpp Revision: 1a3901c3f7a4 Date: Jun 04, 2011 (07:11:56 UTC) updated spec Modified dlib/gui_widgets/widgets_abstract.h Revision: edae769aa361 Date: Jun 02, 2011 (17:42:28 UTC) Made find_clusters_using_kmeans() work with dlib::vector objects. Modified dlib/svm/kkmeans.h dlib/test/kmeans.cpp Revision: 1c62c7870cc7 Date: Jun 02, 2011 (17:36:40 UTC) Added a kmeans test Modified dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/test/kmeans.cpp Revision: 079c2d060164 Date: May 31, 2011 (13:46:31 UTC) Changed code so that an error message is always printed if we run out of memory while cross_validate_trainer_threaded() is executing. Modified dlib/svm/svm_threaded.h Revision: ee938bf4bee9 Date: May 30, 2011 (06:59:58 UTC) Increased the hysteresis_threshold() recursion depth a bit. Modified dlib/image_transforms/thresholding.h Revision: 2f542ae155d8 Date: May 30, 2011 (06:58:53 UTC) Made threshold_image() handle signed pixels properly. Modified dlib/image_transforms/thresholding.h dlib/image_transforms/thresholding_abstract.h Revision: 6770f4cee46a Date: May 30, 2011 (06:51:20 UTC) Changed hysteresis_threshold() so it properly handles signed pixel types. Modified dlib/image_transforms/thresholding.h dlib/image_transforms/thresholding_abstract.h Revision: 5d8382c064dd Date: May 29, 2011 (14:51:41 UTC) Added comments explaining the conversion that might happen when images are saved to disk by the various save_*() functions. Modified dlib/image_saver/image_saver_abstract.h dlib/image_saver/save_png_abstract.h Revision: 9a91d0a2acd2 Date: May 29, 2011 (13:44:33 UTC) Fixed a bug in assign_pixel_intensity() that happened when the target pixel was an RGB pixel with an alpha channel. Modified dlib/pixel.h dlib/test/pixel.cpp Revision: dcdc884ec5e2 Date: May 29, 2011 (12:14:37 UTC) Added more tests Modified dlib/test/pixel.cpp Revision: b76c86e49b82 Date: May 29, 2011 (12:13:51 UTC) Made get_pixel_intensity() more efficient. Modified dlib/pixel.h Revision: 3283cc0984c8 Date: May 28, 2011 (16:20:34 UTC) Minor change to avoid a compiler error in visual studio 2010 Modified dlib/test/hash.cpp Revision: 8f93f5cafdbd Date: May 28, 2011 (15:55:06 UTC) Switched the default hash function for std::strings (when used with hash tables) to dlib::hash(). Modified dlib/general_hash/general_hash.h Revision: 61f908bf74c5 Date: May 28, 2011 (15:46:48 UTC) minor cleanup Modified dlib/test/hash.cpp Revision: a4713f67b9a0 Date: May 28, 2011 (15:36:18 UTC) Added another test Modified dlib/test/hash.cpp Revision: 830e8f3e4545 Date: May 28, 2011 (14:42:57 UTC) Improved hashing tests and clarified spec. Modified dlib/general_hash/hash_abstract.h dlib/matrix/matrix_utilities_abstract.h dlib/test/hash.cpp Revision: 16cb3f9f07d9 Date: May 28, 2011 (14:14:05 UTC) Clarified spec Modified dlib/general_hash/murmur_hash3_abstract.h Revision: e31edff566ad Date: May 28, 2011 (14:06:32 UTC) Added comments regarding endianness and hashing. Modified dlib/general_hash/hash_abstract.h dlib/matrix/matrix_utilities_abstract.h Revision: 2393dc2ed267 Date: May 28, 2011 (13:59:58 UTC) Added a hash() for matrices. Modified dlib/matrix/matrix_utilities.h dlib/matrix/matrix_utilities_abstract.h dlib/test/hash.cpp Revision: a3272d742a22 Date: May 28, 2011 (13:59:15 UTC) Fixed a linker error that happens on gcc. Modified dlib/general_hash/murmur_hash3.h Revision: f36ed64b41c0 Date: May 28, 2011 (13:44:52 UTC) Added a unit test for the new hashing functions. Modified dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/test/hash.cpp Revision: c591c74b4dcd Date: May 28, 2011 (13:33:07 UTC) Added Austin Appleby's excellent MurmurHash3 hashing code and setup some additional convenience functions. Added dlib/general_hash/hash.h dlib/general_hash/hash_abstract.h dlib/general_hash/murmur_hash3.h dlib/general_hash/murmur_hash3_abstract.h dlib/hash.h Revision: 793133635d8e Date: May 28, 2011 (13:23:09 UTC) Changed comment so htmlify will put an anchor on it. Modified dlib/assert.h Revision: e60f07f63e13 Date: May 28, 2011 (13:19:20 UTC) Changed code to use the new DLIB_ASSERT_HAS_STANDARD_LAYOUT to check if a type can be swapped rather than the explicit union trick. Modified dlib/byte_orderer/byte_orderer_kernel_1.h Revision: 1ae9a080d305 Date: May 28, 2011 (13:07:06 UTC) Moved DLIB_ASSERT_HAS_STANDARD_LAYOUT into assert.h. Modified dlib/algs.h dlib/assert.h Revision: b377e8036f53 Date: May 28, 2011 (13:00:56 UTC) Added a macro to assert on a type being a POD or a standard layout type. This way I can change just this one macro to use the better C++0x method of doing this check once C++0x becomes available. Modified dlib/algs.h Revision: 77067c30a055 Date: May 28, 2011 (08:00:57 UTC) Added some unit tests for the save_png() and load_png() functions. Modified dlib/test/image.cpp Revision: 13c61638f68a Date: May 28, 2011 (07:10:50 UTC) Switched all the uses of array2d to not use the array2d<type>::kernel_1a syntax but to use the array2d<type> syntax. Modified dlib/gui_widgets/base_widgets.h dlib/gui_widgets/fonts.cpp dlib/gui_widgets/fonts.h dlib/gui_widgets/style.h dlib/gui_widgets/widgets.h dlib/image_keypoint/hessian_pyramid.h dlib/image_keypoint/hog.h dlib/image_saver/save_png.h dlib/image_transforms/image_pyramid.h dlib/image_transforms/integral_image.h dlib/test/array2d.cpp dlib/test/gui/main.cpp dlib/test/image.cpp dlib/test/matrix.cpp dlib/test/pyramid_down.cpp Revision: 70bb2d136e1e Date: May 28, 2011 (06:26:29 UTC) Changed the array2d object so you don't have to say array2d<type>::kernel_1a anymore to declare it. Now you just say array2d<type>. Modified dlib/array2d.h dlib/array2d/array2d_kernel_1.h docs/docs/containers.xml examples/image_ex.cpp examples/surf_ex.cpp Deleted dlib/array2d/array2d_kernel_c.h Revision: aa9b13f54b82 Date: May 28, 2011 (05:44:52 UTC) Removed debugging cout statement. Modified dlib/image_loader/png_loader.cpp Revision: 38ff8f6cad45 Date: May 28, 2011 (05:43:01 UTC) Fixed incorrect exception being thrown. Modified dlib/image_loader/image_loader.h Revision: 509a49a20d22 Date: May 28, 2011 (05:18:09 UTC) Fixed compile time test Modified dlib/image_saver/save_png.h Revision: 2a707fb8c5e1 Date: May 27, 2011 (15:19:11 UTC) Added the load_image() function which just looks at a file's extension and then calls the appropriate image loading function. Modified dlib/image_io.h Added dlib/image_loader/load_image.h dlib/image_loader/load_image_abstract.h Revision: daef8ad2c7e0 Date: May 27, 2011 (15:04:46 UTC) Added a bunch of overloads for all the various save_*() and load_*() image I/O options dlib supports. Also added ones which can work directly with a string file name. Modified dlib/image_loader/image_loader.h dlib/image_loader/image_loader_abstract.h dlib/image_loader/jpeg_loader.h dlib/image_loader/jpeg_loader_abstract.h dlib/image_loader/png_loader.h dlib/image_loader/png_loader_abstract.h dlib/image_saver/image_saver.h dlib/image_saver/image_saver_abstract.h Revision: b2e9859519d4 Date: May 27, 2011 (14:44:58 UTC) Fixed code so it throws the right type of exception. Modified dlib/image_saver/save_png.h Revision: e40ba31d504c Date: May 27, 2011 (14:38:33 UTC) Added a function for saving to the PNG image format. Modified dlib/image_io.h Added dlib/image_saver/save_png.h dlib/image_saver/save_png_abstract.h Revision: f7efdddb2c80 Date: May 27, 2011 (12:54:00 UTC) updated png_loader so it can load 16bit data. Modified dlib/image_loader/png_loader.cpp dlib/image_loader/png_loader.h dlib/image_loader/png_loader_abstract.h Revision: 4c7d89e6edb7 Date: May 27, 2011 (11:52:37 UTC) Made the png_loader::get_image() function a little faster. Modified dlib/image_loader/png_loader.h Revision: a82525d75960 Date: May 27, 2011 (11:40:23 UTC) Updated png_loaded so it can handle paletted images. Modified dlib/image_loader/png_loader.cpp Revision: 76d8df9461d2 Date: May 27, 2011 (11:18:21 UTC) setup proper error handling for libpng in the png_loader. Now if the PNG file is corrupted in the middle it won't just print a message and abort the program. Modified dlib/image_loader/png_loader.cpp Revision: 2b9e30c393f9 Date: May 27, 2011 (08:32:02 UTC) Added missing requires clause to hysteresis_threshold() Modified dlib/image_transforms/thresholding.h dlib/image_transforms/thresholding_abstract.h Revision: 3276c9a73d0e Date: May 27, 2011 (08:18:11 UTC) fixed typo in spec Modified dlib/image_transforms/thresholding_abstract.h Revision: 4b2ff7003850 Date: May 26, 2011 (12:52:55 UTC) Fixed a spelling error. Modified dlib/server/server_kernel_1.h Revision: 68cecaddf014 Date: May 25, 2011 (14:00:29 UTC) Fixed spelling error in a comment. Modified dlib/byte_orderer/byte_orderer_kernel_1.h Revision: 5341030ec4da Date: May 23, 2011 (12:49:27 UTC) Added a few more tests Modified dlib/test/svm_struct.cpp Revision: dea5cfded60d Date: May 23, 2011 (12:46:46 UTC) removed tabs Modified dlib/svm/structural_svm_distributed.h Revision: 335dcefe5a12 Date: May 22, 2011 (06:03:12 UTC) Added a matrix_type typedef to structural_svm_problem_threaded so it matches the interface of the structural_svm_problem. Modified dlib/svm/structural_svm_problem_threaded.h dlib/svm/structural_svm_problem_threaded_abstract.h Revision: 64e633a50690 Date: May 21, 2011 (11:05:49 UTC) Minor change to avoid compiler warning in gcc. Modified dlib/type_safe_union/type_safe_union_kernel.h Revision: eb9481f9c986 Date: May 21, 2011 (11:02:40 UTC) Changed the type_safe_union a little bit to avoid the C4503 warnings you sometimes get from visual studio about "decorated name length exceeded, name was truncated". What I did was introduce a new type called _void as the deafult template parameter for the type_safe_union rather than use the T1 type as the default for the 19 other parameters. Since _void is always a short word it helps keep the warning from showing up. Modified dlib/type_safe_union/type_safe_union_kernel.h dlib/type_safe_union/type_safe_union_kernel_abstract.h Revision: bb9685f5fb73 Date: May 21, 2011 (04:44:57 UTC) Removed random seed to make the test more repeatable. Modified dlib/test/matrix_eig.cpp Revision: 3ef094f227bc Date: May 20, 2011 (17:04:45 UTC) Changed code to avoid compiler error in visual studio. Modified dlib/svm/structural_svm_distributed.h Revision: ed5d5aeffb75 Date: May 20, 2011 (16:40:59 UTC) Added a bunch of unit tests for the various forms of structured svm. Modified dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/test/svm_struct.cpp Revision: 926c8582d9eb Date: May 20, 2011 (15:22:44 UTC) Clarified spec Modified dlib/svm/structural_svm_distributed_abstract.h Revision: d290aa71e549 Date: May 20, 2011 (15:07:11 UTC) Worked on the spec and cleaned up the code a little. Modified dlib/svm/structural_svm_distributed.h dlib/svm/structural_svm_distributed_abstract.h Revision: 350893d09276 Date: May 20, 2011 (13:49:09 UTC) clarified spec Modified dlib/threads/threads_kernel_abstract.h Revision: 75607b08b878 Date: May 19, 2011 (18:52:10 UTC) Added initial version of a distributed structural svm solver. Modified dlib/svm_threaded.h Added dlib/svm/structural_svm_distributed.h dlib/svm/structural_svm_distributed_abstract.h Revision: 9d6eca7b8d7c Date: May 19, 2011 (18:16:04 UTC) Added some requirements and asserts. Modified dlib/bridge/bridge.h dlib/bridge/bridge_abstract.h Revision: 4c135f09b12b Date: May 19, 2011 (16:26:51 UTC) Added a function to determine how many threads a structural_svm_problem_threaded object is going to use. Modified dlib/svm/structural_svm_problem_threaded.h dlib/svm/structural_svm_problem_threaded_abstract.h Revision: 9afe7644f613 Date: May 19, 2011 (16:12:39 UTC) Simplified code a little bit. Modified dlib/svm/structural_svm_problem.h Revision: 44d08b191507 Date: May 19, 2011 (15:51:54 UTC) Made caching object a little more robust. Modified dlib/svm/structural_svm_problem.h Revision: c2f32910e96a Date: May 17, 2011 (13:15:06 UTC) Added some more comments. Modified dlib/svm/svm_multiclass_linear_trainer.h Revision: bcff8d3d2094 Date: May 16, 2011 (18:56:19 UTC) Cleaned up the code a little by pulling the caching logic out into its own class. Modified dlib/svm/structural_svm_problem.h dlib/svm/structural_svm_problem_abstract.h Revision: fb8c7e2b5bc0 Date: May 15, 2011 (17:22:14 UTC) Minor change to avoid a compiler warning. Modified dlib/bridge/bridge.h Revision: c7e27aeab8b0 Date: May 15, 2011 (03:04:13 UTC) Fixed a bug in the DLIB_TEST_MSG macro for the unit testing suite. This bug was introduced a few days ago. Modified dlib/test/tester.cpp dlib/test/tester.h Revision: 92690edfb711 Date: May 14, 2011 (22:52:51 UTC) Clarified recent change to the spec Modified dlib/pipe/pipe_kernel_abstract.h Revision: c8bae6a9fb98 Date: May 14, 2011 (21:21:39 UTC) Made the bridge code a little more robust. Modified dlib/bridge/bridge.h Revision: 8b32c86e35e8 Date: May 14, 2011 (21:17:07 UTC) Made test more robust Modified dlib/test/bridge.cpp Revision: b51dab203804 Date: May 14, 2011 (17:06:18 UTC) Added a clear() to the bridge and improved some comments and tests. Modified dlib/bridge/bridge.h dlib/bridge/bridge_abstract.h dlib/test/bridge.cpp Revision: 169ee09315f2 Date: May 14, 2011 (14:48:50 UTC) Added tests for the bridge. Modified dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/test/bridge.cpp Revision: de3fa03b012b Date: May 14, 2011 (14:10:57 UTC) Polished the bridge object a bit. Modified dlib/bridge/bridge.h dlib/bridge/bridge_abstract.h Revision: 2c005353242f Date: May 13, 2011 (21:52:27 UTC) Yet more code cleanup Modified dlib/bridge/bridge.h Revision: 1a0af62b4c8b Date: May 13, 2011 (21:46:51 UTC) minor cleanup Modified dlib/bridge/bridge.h Revision: 7c5d534e8af1 Date: May 13, 2011 (21:21:23 UTC) Added initial version of the bridge object. It is a tool for bridging pipe objects from one computer to another. Added dlib/bridge.h dlib/bridge/bridge.h dlib/bridge/bridge_abstract.h Revision: d635183055b9 Date: May 13, 2011 (19:50:42 UTC) Updated the unit test application so that it prints the number of individual testing statements which were executed. Modified dlib/test/main.cpp dlib/test/tester.cpp dlib/test/tester.h Revision: f7a8046830b6 Date: May 13, 2011 (19:31:03 UTC) Upgraded the type_safe_union with a constructor and assignment operator which can copy an object into the type safe union. Modified dlib/test/type_safe_union.cpp dlib/type_safe_union/type_safe_union_kernel.h dlib/type_safe_union/type_safe_union_kernel_abstract.h Revision: 6d8a00666dd8 Date: May 13, 2011 (14:15:13 UTC) Gave the pipe the ability to disable dequeue operations. Modified dlib/pipe/pipe_kernel_1.h dlib/pipe/pipe_kernel_abstract.h dlib/test/pipe.cpp Revision: a34687fae6c8 Date: May 10, 2011 (20:42:04 UTC) Fixed a bug which caused the structural_svm_problem_threaded object to crash when caching was used. Modified dlib/svm/structural_svm_problem.h Revision: e4bf011f067c Date: May 10, 2011 (02:37:18 UTC) Added a version of the structural_svm_problem which can use multiple threads to call the separation_oracle() function. Modified dlib/svm/structural_svm_problem.h dlib/svm_threaded.h Added dlib/svm/structural_svm_problem_threaded.h dlib/svm/structural_svm_problem_threaded_abstract.h Revision: 2256ff22cb60 Date: May 10, 2011 (02:35:34 UTC) Added a missing #include Modified dlib/svm/svm_multiclass_linear_trainer.h Revision: ac89fbf609a6 Date: May 07, 2011 (12:42:16 UTC) Increased the default values for the initial basis size and basis size increment a little. Modified dlib/svm/svm_c_ekm_trainer.h dlib/svm/svm_c_ekm_trainer_abstract.h Revision: 3c438a65c41f Date: May 05, 2011 (22:41:33 UTC) Added more comments. Modified dlib/svm/structural_svm_problem_abstract.h Revision: c30105612df4 Date: May 04, 2011 (21:31:56 UTC) Fixed typo in spec Modified dlib/array2d/array2d_kernel_abstract.h Revision: 65f07aaf1b4f Date: May 04, 2011 (21:15:35 UTC) Renamed all the rand::kernel_1a and rand::float_1a declarations to just say rand. Modified dlib/bayes_utils/bayes_utils.h dlib/manifold_regularization/graph_creation.h dlib/mlp/mlp_kernel_1.h dlib/statistics/random_subset_selector.h dlib/statistics/random_subset_selector_abstract.h dlib/svm/linearly_independent_subset_finder.h dlib/svm/pegasos.h dlib/svm/svm.h dlib/svm/svm_c_ekm_trainer.h dlib/test/array.cpp dlib/test/checkerboard.h dlib/test/discriminant_pca.cpp dlib/test/ekm_and_lisf.cpp dlib/test/empirical_kernel_map.cpp dlib/test/geometry.cpp dlib/test/image.cpp dlib/test/linear_manifold_regularizer.cpp dlib/test/matrix.cpp dlib/test/matrix2.cpp dlib/test/matrix3.cpp dlib/test/matrix4.cpp dlib/test/matrix_chol.cpp dlib/test/matrix_eig.cpp dlib/test/matrix_lu.cpp dlib/test/matrix_qr.cpp dlib/test/max_cost_assignment.cpp dlib/test/max_sum_submatrix.cpp dlib/test/one_vs_all_trainer.cpp dlib/test/one_vs_one_trainer.cpp dlib/test/opt_qp_solver.cpp dlib/test/optimization.cpp dlib/test/rand.cpp dlib/test/sldf.cpp dlib/test/statistics.cpp dlib/test/svm.cpp dlib/test/symmetric_matrix_cache.cpp dlib/test/trust_region.cpp Revision: b3b9d5ef7d98 Date: May 04, 2011 (21:09:22 UTC) Changed the rand object so you don't have to say rand::kernel_1a or rand::float_1a anymore to declare it. Now you just say rand. Modified dlib/rand.h dlib/rand/rand_kernel_1.h dlib/rand/rand_kernel_abstract.h Deleted dlib/rand/rand_float_1.h dlib/rand/rand_float_abstract.h Revision: 6511f85bbf53 Date: May 04, 2011 (20:36:44 UTC) Changed the stopping condition for the structured svm to the one suggested by the Joachims paper. I also added another useful reference to the docs. Modified dlib/svm/structural_svm_problem.h dlib/svm/structural_svm_problem_abstract.h Revision: 111f3816f4aa Date: May 04, 2011 (02:19:23 UTC) Improved the feature vector caching in the structural_svm_problem object. Modified dlib/svm/structural_svm_problem.h Revision: 0ae1037283e4 Date: May 03, 2011 (23:39:47 UTC) Changed the oca_problem interface to the oca optimizer. Now the optimization_status() function reports back the current risk and risk gap in addition to just the overall objective value and objective gap. Note that this change breaks backwards compatibility with the previous interface (but only slightly). Modified dlib/optimization/optimization_oca.h dlib/optimization/optimization_oca_abstract.h dlib/svm/structural_svm_problem.h dlib/svm/svm_c_linear_trainer.h Revision: 03ee60092806 Date: May 01, 2011 (17:02:50 UTC) Made assign_image() and assign_image_scaled() a little more general. Now they can use source images which are matrices in addition to array2d objects. This change also enables the image_window to display matrices. Modified dlib/image_transforms/assign_image.h dlib/image_transforms/assign_image_abstract.h Revision: 15ad7d34793e Date: Apr 29, 2011 (20:43:27 UTC) Added missing #includes Modified dlib/image_transforms/image_pyramid.h dlib/image_transforms/image_pyramid_abstract.h Revision: fb089ae9c366 Date: Apr 29, 2011 (20:32:27 UTC) Added a unit test for the pyramid_down object. Modified dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/test/pyramid_down.cpp Revision: db81bacb5faf Date: Apr 29, 2011 (19:05:07 UTC) Upgraded the pyramid_down function object so it can create color pyramids. Not just grayscale ones. Modified dlib/image_transforms/image_pyramid.h dlib/image_transforms/image_pyramid_abstract.h Revision: 3a2a3d654ecc Date: Apr 29, 2011 (18:09:06 UTC) Added some functions which define the coordinate transforms between different layers in an image pyramid. Modified dlib/image_transforms/image_pyramid.h dlib/image_transforms/image_pyramid_abstract.h Revision: 6a020f8ec607 Date: Apr 29, 2011 (18:08:18 UTC) A minor change to avoid getting a compiler error about functions being ambiguous when the rectangle is used with floating point vectors. Modified dlib/geometry/rectangle.h dlib/geometry/rectangle_abstract.h Revision: 147ee9b39aab Date: Apr 29, 2011 (13:31:42 UTC) Added a missing const keyword. Modified dlib/image_transforms/image_pyramid.h dlib/image_transforms/image_pyramid_abstract.h Revision: 56c2beeff857 Date: Apr 29, 2011 (13:29:46 UTC) Added some comments to clarify what exactly is a valid loss function. Modified dlib/svm/structural_svm_problem_abstract.h Revision: 15612f2764f4 Date: Apr 29, 2011 (13:25:20 UTC) The deserialize() for std::string was written under the assumption that std::string doesn't store it's data in a contiguous block. However, that isn't quite the case. See this discussion: http://stackoverflow.com/questions/1986966/does-s0-point-to-contiguous-characters-in-a-stdstring Anyway, I changed deserialize() for std::string to be more efficient and read directly into the string rather than into a contiguous buffer and then do a copy. Modified dlib/serialize.h Revision: 904cdeda3d1e Date: Apr 29, 2011 (13:05:50 UTC) A minor usability improvement, I defaulted the feature_vector_type_ to matrix_type. Modified dlib/svm/structural_svm_problem.h dlib/svm/structural_svm_problem_abstract.h Revision: 1dce9b655161 Date: Apr 23, 2011 (13:49:33 UTC) Cleaned up tests and added some additional ones. Modified dlib/test/max_sum_submatrix.cpp Revision: 7b539071e8f1 Date: Apr 23, 2011 (13:48:53 UTC) A minor optimization. Modified dlib/optimization/max_sum_submatrix.h Revision: 53693bacabf1 Date: Apr 22, 2011 (22:37:50 UTC) Fixed grammar. Modified dlib/optimization/max_sum_submatrix_abstract.h Revision: 481947f3da56 Date: Apr 22, 2011 (22:31:11 UTC) Added the max_sum_submatrix() function. Modified dlib/optimization.h dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/optimization/max_sum_submatrix.h dlib/optimization/max_sum_submatrix_abstract.h dlib/test/max_sum_submatrix.cpp Revision: b30f23996e66 Date: Apr 18, 2011 (18:48:20 UTC) Changed the config_reader object so you don't have to say config_reader::kernel_1a anymore to declare it. Now you just say config_reader. Modified dlib/config_reader.h dlib/config_reader/config_reader_kernel_1.h dlib/config_reader/config_reader_thread_safe_abstract.h dlib/test/config_reader.cpp Revision: 35727d60f329 Date: Apr 18, 2011 (18:22:33 UTC) Changed the base64 object so you don't have to say base64::kernel_1a anymore to declare it. Now you just say base64. Modified dlib/base64.h dlib/base64/base64_kernel_1.cpp dlib/base64/base64_kernel_1.h dlib/test/base64.cpp Revision: 87972749b912 Date: Apr 18, 2011 (15:02:29 UTC) You can now declare byte_orderer by saying just byte_orderer rather than byte_orderer::kernel_1a. Modified dlib/byte_orderer.h dlib/byte_orderer/byte_orderer_kernel_1.h dlib/test/byte_orderer.cpp Revision: 6ec2661b7a7d Date: Apr 18, 2011 (14:58:27 UTC) Added a unit test for the byte orderer component Modified dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/test/byte_orderer.cpp Revision: 034c9a3bde4d Date: Apr 18, 2011 (13:59:27 UTC) Changed the pipe so you don't have to say pipe<type>::kernel_1a anymore. Now you just say pipe<type>. Modified dlib/pipe.h dlib/pipe/pipe_kernel_1.h dlib/test/pipe.cpp Revision: e0e0976c5f17 Date: Apr 18, 2011 (13:47:43 UTC) Changed the crc32 object so you don't have to say crc32::kernel_1a anymore to declare it. You just say crc32. I also added some unit tests for it as well as a few minor convenience functions. Modified dlib/crc32.h dlib/crc32/crc32_kernel_1.h dlib/crc32/crc32_kernel_abstract.h dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/test/crc32.cpp Revision: 19a164e1053a Date: Apr 17, 2011 (21:50:56 UTC) Made it so you can reset a console_progress_indicator and use it more than once. Modified dlib/console_progress_indicator.h Revision: e6a7e746d3e9 Date: Apr 09, 2011 (01:21:10 UTC) The last commit left something in checking (i.e. _c mode). Just switching it back to non-checking mode. Modified dlib/image_transforms/integral_image.h Revision: bb8c2c8e5db9 Date: Apr 08, 2011 (01:11:31 UTC) Added a missing requires clause to the get_sum_of_area() function in the integral_image. I also made the integral_image work with signed pixel types. Modified dlib/image_transforms/integral_image.h dlib/image_transforms/integral_image_abstract.h Revision: ae6a51c23736 Date: Apr 07, 2011 (00:37:55 UTC) Modified the probabilistic() trainer adapter (and the train_probabilistic_decision_function() routine) so that they work with objects which have an interface compatible with std::vector rather than strictly just std::vector objects. For example, random_subset_selector objects can be used (as was the case in some previous versions of dlib). Modified dlib/svm/svm.h dlib/svm/svm_abstract.h dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/test/probabilistic.cpp Revision: dac132fafbe0 Date: Apr 07, 2011 (00:35:22 UTC) Added a value_type to the random_subset_selector so that it is more compatible with the std::vector interface. Modified dlib/statistics/random_subset_selector.h dlib/statistics/random_subset_selector_abstract.h Revision: c949c61aa338 Date: Mar 24, 2011 (23:42:41 UTC) Fixed a compile time error that happens on debian's gcc 4.1.2 Modified dlib/svm/function.h dlib/svm/svm_c_linear_trainer.h dlib/svm/svm_multiclass_linear_trainer.h Revision: e839f94d7f2a Date: Mar 24, 2011 (22:20:43 UTC) fixed grammar Modified dlib/svm/structural_svm_problem_abstract.h Revision: ca1787c3e764 Date: Mar 24, 2011 (02:55:06 UTC) minor change to avoid compiler warning in visual studio. Modified dlib/svm/svm_multiclass_linear_trainer.h Revision: 1ea34d54c898 Date: Mar 24, 2011 (02:34:54 UTC) Added a unit test for the new svm_multiclass_linear_trainer. Modified dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/test/svm_multiclass_linear.cpp Revision: 1e27287f1124 Date: Mar 24, 2011 (02:23:59 UTC) Filled out spec and cleaned up code. Modified dlib/svm/svm_multiclass_linear_trainer.h dlib/svm/svm_multiclass_linear_trainer_abstract.h Revision: 01d5e9b0e642 Date: Mar 24, 2011 (02:08:31 UTC) Added some missing DLIB_ASSERT statements. Modified dlib/svm/one_vs_all_trainer.h dlib/svm/one_vs_one_trainer.h Revision: 49fde9f1b1b7 Date: Mar 24, 2011 (01:52:44 UTC) Moved the new multiclass svm trainer into dlib. Still need to clean up the code and setup the abstract file. Modified dlib/svm.h Added dlib/svm/svm_multiclass_linear_trainer.h dlib/svm/svm_multiclass_linear_trainer_abstract.h Revision: dd3a04515bee Date: Mar 24, 2011 (01:51:56 UTC) Fixed compile time error Modified dlib/svm/structural_svm_problem.h Revision: d23a2278b679 Date: Mar 23, 2011 (23:43:56 UTC) improved spec Modified dlib/svm/structural_svm_problem_abstract.h Revision: eff72b81846f Date: Mar 23, 2011 (17:40:22 UTC) updated spec Modified dlib/svm/structural_svm_problem_abstract.h Revision: 9235f475fece Date: Mar 23, 2011 (16:13:25 UTC) Fixed grammar Modified dlib/svm/svm_c_linear_trainer_abstract.h Revision: 504c014fbe32 Date: Mar 23, 2011 (02:00:53 UTC) Added a structural SVM solver. Modified dlib/svm.h Added dlib/svm/structural_svm_problem.h dlib/svm/structural_svm_problem_abstract.h Revision: a7e5cf8542a2 Date: Mar 23, 2011 (01:08:55 UTC) Minor cleanup, I removed unnecessary code. Modified dlib/svm/function.h dlib/svm/function_abstract.h Revision: 87eecac6ad9d Date: Mar 23, 2011 (00:39:39 UTC) Removed inappropriate uses of const on the be_verbose() functions. Modified dlib/optimization/optimization_stop_strategies.h dlib/optimization/optimization_stop_strategies_abstract.h Revision: 0af2e65d2bab Date: Mar 23, 2011 (00:32:15 UTC) Added some more tests for the max_cost_assignment() function. Modified dlib/test/max_cost_assignment.cpp Revision: 2a6f7e2b81af Date: Mar 23, 2011 (00:24:39 UTC) Minor change to avoid a compiler warning in gcc. Modified dlib/gui_core/gui_core_kernel_2.cpp Revision: 45d70c368e5c Date: Mar 22, 2011 (02:38:46 UTC) Added the multiclass_linear_decision_function object. Modified dlib/svm/function.h dlib/svm/function_abstract.h Revision: 0ab68a514206 Date: Mar 22, 2011 (00:56:08 UTC) It occurred to me that in some cases it is very easy to end up with dense vectors which are slightly smaller than their corresponding sparse vectors. So I changed the requires clause of the dot(sparse,dense) and dot(dense,sparse) functions to not require that the dense vector's size > sparse vector's size. Now any combination of sizes is legal. Modified dlib/svm/sparse_vector.h dlib/svm/sparse_vector_abstract.h dlib/test/svm_c_linear.cpp Revision: b1e4209970d5 Date: Mar 20, 2011 (18:36:53 UTC) Renamed assign_dense_to_sparse() to assign() and made it capable of also assigning from sparse to sparse. Modified dlib/svm/sparse_vector.h dlib/svm/sparse_vector_abstract.h dlib/svm/svm_c_linear_trainer.h dlib/test/svm_c_linear.cpp Revision: f0dacdb018c1 Date: Mar 20, 2011 (18:12:48 UTC) Clarified spec. Modified dlib/svm/sparse_vector_abstract.h Revision: 03ccf92694ca Date: Mar 20, 2011 (14:13:32 UTC) Added a dot() function which can dot a sparse vector with a dense vector. Modified dlib/svm/sparse_vector.h dlib/svm/sparse_vector_abstract.h dlib/svm/svm_c_linear_trainer.h dlib/test/svm_c_linear.cpp Revision: b77474edbee3 Date: Mar 18, 2011 (18:42:53 UTC) This change is mainly about adding a result_type typedef to the various function objects. Prior to this change, different function objects declared their return type in different ways, now this has all been reconciled. Now they all declare it as a public typedef named result_type. I also simplified the cross_validate_multiclass_trainer(), cross_validate_trainer(), test_binary_decision_function(), and test_multiclass_decision_function(). They now always return double matrices regardless of any other consideration. Modified dlib/any/any_decision_function.h dlib/any/any_decision_function_abstract.h dlib/statistics/statistics.h dlib/statistics/statistics_abstract.h dlib/svm/cross_validate_multiclass_trainer.h dlib/svm/cross_validate_multiclass_trainer_abstract.h dlib/svm/cross_validate_regression_trainer.h dlib/svm/function.h dlib/svm/function_abstract.h dlib/svm/one_vs_all_decision_function.h dlib/svm/one_vs_all_decision_function_abstract.h dlib/svm/one_vs_one_decision_function.h dlib/svm/one_vs_one_decision_function_abstract.h dlib/svm/svm.h dlib/svm/svm_abstract.h dlib/test/data_io.cpp dlib/test/one_vs_all_trainer.cpp dlib/test/one_vs_one_trainer.cpp Revision: d0fe41a9a8ac Date: Mar 18, 2011 (14:35:35 UTC) Added some tests for the LIBSVM formatted data IO functions and related routines. Modified dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/test/create_iris_datafile.cpp dlib/test/create_iris_datafile.h dlib/test/data_io.cpp Revision: cf1cf90a85ee Date: Mar 18, 2011 (13:31:52 UTC) Added the fix_nonzero_indexing() function. Modified dlib/data_io/libsvm_io.h dlib/data_io/libsvm_io_abstract.h Revision: dbd5300ab4d2 Date: Mar 16, 2011 (23:42:57 UTC) made test more robust Modified dlib/test/empirical_kernel_map.cpp Revision: 99bfb49293b9 Date: Mar 16, 2011 (23:33:25 UTC) Simplified the oca implementation slightly. It no longer keeps track of the best point seen so far. This change will allow me to use the optimizer in conjunction with methods for quickly approximating subgradients and risk values without needing to worry about the optimizer permanently fixating on what it erroneously thinks is the best point. Now the optimizer will just keep solving the cutting plane subproblem and will use that solution as the current iterate and best known solution. Modified dlib/optimization/optimization_oca.h Revision: b48517011334 Date: Mar 15, 2011 (22:42:33 UTC) Renamed max_index_value_plus_one() (a function for working with graphs) to max_index_plus_one() so that it uses the same name as the essentially identical function for working with sparse vectors. Modified dlib/manifold_regularization/graph_creation.h dlib/manifold_regularization/graph_creation_abstract.h dlib/manifold_regularization/linear_manifold_regularizer.h dlib/manifold_regularization/linear_manifold_regularizer_abstract.h Revision: 940f614d376d Date: Mar 15, 2011 (22:38:36 UTC) Moved some functions for dealing with sparse vectors out of the svm_c_linear_trainer implementation and into the sparse_vector.h header. These are the add_to(), subtract_from(), and max_index_plus_one() functions. Modified dlib/data_io/libsvm_io.h dlib/svm/sparse_vector.h dlib/svm/sparse_vector_abstract.h dlib/svm/svm_c_linear_trainer.h dlib/test/svm_c_linear.cpp Revision: f1519dc3ef9f Date: Mar 15, 2011 (02:03:06 UTC) Added a value_type typedef to matrix_exp so it's easier to write templates which operate on STL containers and matrix objects. Modified dlib/matrix/matrix_exp.h dlib/matrix/matrix_exp_abstract.h Revision: 50a94f83d8a6 Date: Mar 13, 2011 (18:21:50 UTC) Removed some old comments Modified dlib/svm/one_vs_one_trainer.h Revision: f147dea86d5e Date: Mar 13, 2011 (17:19:56 UTC) Fixed a bug in the kernel_matrix() function. It didn't compile when used with sparse samples which were of type std::vector<std::pair<> >. Moreover, some of the trainers have a dependency on kernel_matrix() so this fix makes those trainers also work with this kind of sparse sample. Modified dlib/svm/kernel_matrix.h Revision: cc7889a80c91 Date: Mar 13, 2011 (17:13:01 UTC) Added an is_pair template for telling if a type is a std::pair object. Modified dlib/is_kind.h Revision: ff9a5a55e64a Date: Mar 10, 2011 (01:14:26 UTC) Fixed a bug in load_libsvm_formatted_data(). Forgot to clear the contents of the labels output vector before adding the loaded label data. Modified dlib/data_io/libsvm_io.h Revision: 15282a608256 Date: Mar 03, 2011 (22:06:02 UTC) Fixed typo in spec Modified dlib/compress_stream/compress_stream_kernel_abstract.h Revision: b4a913f085d5 Date: Mar 02, 2011 (02:24:11 UTC) Changed the oca optimizer so that it warm starts the QP subproblem rather than resolving it from scratch during each iteration. This improves the speed and stability of the algorithm. Modified dlib/optimization/optimization_oca.h dlib/optimization/optimization_oca_abstract.h Revision: f2b3c1469be0 Date: Feb 22, 2011 (23:34:52 UTC) Changed code slightly to avoid a warning from gcc. Modified dlib/any/any_function_impl.h Revision: f655dd805642 Date: Feb 15, 2011 (22:48:12 UTC) Made max_cost_assignment() take a matrix expression rather than an actual matrix. Modified dlib/optimization/max_cost_assignment.h dlib/optimization/max_cost_assignment_abstract.h Revision: 6b96ad95496e Date: Feb 14, 2011 (03:52:38 UTC) Fixed bug in assert. Modified dlib/optimization/max_cost_assignment.h Revision: 619200e873f8 Date: Feb 14, 2011 (03:24:29 UTC) Added an implementation of the Hungarian algorithm for solving the optimal assignment problem (in the new max_cost_assignment() routine). Modified dlib/optimization.h dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/optimization/max_cost_assignment.h dlib/optimization/max_cost_assignment_abstract.h dlib/test/max_cost_assignment.cpp Revision: 776899e74844 Date: Feb 13, 2011 (14:46:05 UTC) Fixed typo in comment. Modified dlib/cmd_line_parser/cmd_line_parser_kernel_1.h Revision: 6293e380c837 Date: Feb 11, 2011 (02:10:12 UTC) Fixed a problem which prevented the any_function unit test from compiling in visual studio 2008. Modified dlib/test/any_function.cpp Revision: 5f83bbec52c0 Date: Feb 10, 2011 (23:56:50 UTC) Added a test for split() Modified dlib/test/string.cpp Revision: 21cf47bb2d0e Date: Feb 09, 2011 (22:57:14 UTC) Added a function for splitting up strings which contain a sequence of delimited tokens. Modified dlib/string/string.h dlib/string/string_abstract.h Revision: 60dce63175c3 Date: Feb 08, 2011 (23:37:54 UTC) Added a unit test for the any_function. Modified dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/test/any_function.cpp Revision: 2f4156e756f4 Date: Feb 08, 2011 (23:37:29 UTC) Fixed a bug in any_function which prevented the .get() function from compiling. Modified dlib/any/any_function_impl.h Revision: bb33f46f48f9 Date: Feb 08, 2011 (23:36:42 UTC) Made the is_function template work with functions of up to 10 arguments. Previously it only worked up to 5 arguments. Modified dlib/algs.h Revision: 2c674ffb70ac Date: Feb 07, 2011 (23:32:28 UTC) Fixed a typo in the spec. Modified dlib/gui_widgets/fonts_abstract.h Revision: 12f517d4690e Date: Feb 07, 2011 (02:36:58 UTC) Added overloads of all the GUI event handlers so that now you can use general functions as callbacks (via any_function). This way, if you have a C++0x compiler, you can use lambda functions with the event handlers. Modified dlib/gui_widgets/base_widgets.h dlib/gui_widgets/base_widgets_abstract.h dlib/gui_widgets/widgets.h dlib/gui_widgets/widgets_abstract.h Revision: 1bb62545c72f Date: Feb 07, 2011 (00:58:02 UTC) Switched the event handlers in the gui_widgets from member_function_pointers to any_functions. Modified dlib/gui_widgets/base_widgets.h dlib/gui_widgets/widgets.cpp dlib/gui_widgets/widgets.h Revision: 4cf63f46360b Date: Feb 06, 2011 (21:31:53 UTC) Fixed a typo in the spec for the is_empty() functions. I also added an is_set() to the any_function so that it's interface is similar to the member_function_pointer. Modified dlib/any/any_abstract.h dlib/any/any_decision_function_abstract.h dlib/any/any_function_abstract.h dlib/any/any_function_impl.h dlib/any/any_trainer_abstract.h Revision: 4c545ad8fa0e Date: Feb 06, 2011 (21:16:17 UTC) Added a factory function to easily create temporary member function pointers. Modified dlib/member_function_pointer.h Added dlib/member_function_pointer/make_mfp.h dlib/member_function_pointer/make_mfp_abstract.h Revision: c4b48168689d Date: Feb 06, 2011 (21:04:20 UTC) Added an any_function which supports the same functionality as std::function from the upcoming C++0x standard. I added this so dlib can be modified to easily support lambda functions while still being compilable on compilers which don't support the new std::function. Modified dlib/any.h Added dlib/any/any_function.h dlib/any/any_function_abstract.h dlib/any/any_function_impl.h dlib/any/any_function_impl2.h Revision: 88be53883aea Date: Feb 06, 2011 (15:03:07 UTC) Added tests for the new features of the distance_function object. Modified dlib/test/empirical_kernel_map.cpp Revision: 6518ccc7d275 Date: Feb 06, 2011 (15:02:20 UTC) Fixed a runtime bug in the distance_function's + and - operators which triggered when distance_functions with no basis vectors in them were added or subtracted. Modified dlib/svm/function.h Revision: 32a8406c3d62 Date: Feb 05, 2011 (20:29:44 UTC) Made the interface to the approximate_distance_function() a little cleaner and improved its specification a bit. Modified dlib/svm/reduced.h dlib/svm/reduced_abstract.h Revision: 91ee17b4b318 Date: Feb 05, 2011 (18:29:57 UTC) Refactored the code in the reduced_decision_function_trainer2. Part of it has been turned into a global function called approximate_distance_function() which performs the main optimization. The reduced_decision_function_trainer2 now depends on this global function. This changes makes this function optimizer available for other purposes besides use in the reduced_decision_function_trainer2 object. Modified dlib/svm/reduced.h dlib/svm/reduced_abstract.h Revision: 25c0dba1b7b8 Date: Feb 05, 2011 (18:26:47 UTC) Improved the distance_function object by turning it into a properly encapsulated class rather than just a simple struct. I also added overloaded +, -, *, and / operators for this object so you can do the kind of arithmetic you would expect on an object which represents a point in a vector space. This breaks backwards compatibility with the previous interface though as the member variables are now private. Modified dlib/svm/function.h dlib/svm/function_abstract.h dlib/svm/kcentroid_overloads.h dlib/svm/pegasos.h dlib/test/empirical_kernel_map.cpp Revision: 16f5a816b3d5 Date: Feb 04, 2011 (14:27:24 UTC) Fixed a few more compile time errors when dlib is compiled with clang. Modified dlib/cmd_line_parser/cmd_line_parser_check_1.h Revision: ad46abcb9415 Date: Feb 04, 2011 (14:21:48 UTC) I made some minor changes in a few places so that dlib compiles with the clang compiler. Modified dlib/bayes_utils/bayes_utils.h dlib/binary_search_tree/binary_search_tree_kernel_c.h dlib/cmd_line_parser/cmd_line_parser_check_1.h dlib/hash_map/hash_map_kernel_c.h dlib/hash_set/hash_set_kernel_c.h dlib/hash_table/hash_table_kernel_c.h dlib/map/map_kernel_c.h dlib/matrix/matrix_la.h dlib/matrix/matrix_utilities.h dlib/set/set_kernel_c.h dlib/string/string.h dlib/svm/one_vs_all_decision_function.h dlib/svm/one_vs_one_decision_function.h dlib/svm/rbf_network.h dlib/test/matrix3.cpp Revision: 2be6e37ee759 Date: Feb 04, 2011 (13:59:57 UTC) The any unit test was broken in a way which prevented it from actually running. This has been fixed. Modified dlib/test/any.cpp Revision: 32ff5824be03 Date: Feb 03, 2011 (22:45:24 UTC) Applied a patch from Nils Labugt which fixes a bug in the gui_core component (Bug ID: 3171720).
The bug details are below:
dlib GUI applications don't work anymore after I upgraded to Ubuntu 10.10 (AMD64). They
consistently crash in base_window::set_title. XwcTextListToTextProperty returns
XLocaleNotSupported instead of initializing 'property', but dlib ignores the return value,
resulting in a crash in XLib when XSetWMName is called with garbage input or when
property.value is XFreed without having been allocated.Modified dlib/gui_core/gui_core_kernel_2.cpp Revision: c4f006995d99 Date: Feb 03, 2011 (00:23:04 UTC) Fixed a bug in an assert Modified dlib/image_transforms/spatial_filtering.h Revision: ecc2d3d1cc16 Date: Jan 22, 2011 (22:49:08 UTC) Fixed errors in the spec Modified dlib/svm/rr_trainer_abstract.h Revision: ea6f3bef5c0d Date: Jan 22, 2011 (22:45:42 UTC) Fixed some comments. Modified dlib/svm/rr_trainer.h Revision: e78e959900ea Date: Jan 22, 2011 (21:19:27 UTC) Fixed the typo in the last commit which prevented compilation when ENABLE_ASSERTS was defined. Modified dlib/svm/krr_trainer.h Revision: 0d87a3e496d6 Date: Jan 22, 2011 (21:18:03 UTC) Refactored the krr_trainer into two objects. A rr_trainer which just does linear ridge regression and the krr_trainer which uses the empirical_kernel_map to do non-linear ridge regression. No changes were made to the behavior of the krr_trainer. This update is just to allow the use of linear ridge regression without a superfluous empirical_kernel_map running at the beginning of the training process. Modified dlib/svm/krr_trainer.h dlib/svm/rr_trainer.h Added dlib/svm/rr_trainer_abstract.h Revision: 0f0fa369e5a6 Date: Jan 22, 2011 (20:16:03 UTC) Adding a copy of the krr_trainer that will be just for use with linear kernels. Modified dlib/svm/krr_trainer.h Added dlib/svm/rr_trainer.h Revision: aa6714ccea87 Date: Jan 22, 2011 (18:40:16 UTC) Added an overloaded operator/ to allow you to say things like 3.0/my_matrix Modified dlib/matrix/matrix.h dlib/matrix/matrix_abstract.h dlib/test/matrix4.cpp Revision: 7df57ab008f1 Date: Jan 22, 2011 (18:17:09 UTC) Removed the requirement that the lisf be non-empty when used to load an EKM. Instead, the load() function now will accept non-empty lisf objects and throw a non-fatal exception. This behavior should be slightly less surprising to users, especially since certain degenerate datasets can give rise to empty lisf objects when you might not expect it. Modified dlib/svm/empirical_kernel_map.h dlib/svm/empirical_kernel_map_abstract.h Revision: 707dca9f1143 Date: Jan 22, 2011 (18:13:47 UTC) Minor fix to avoid a compile time error when using the kernel_matrix() function. Modified dlib/svm/kernel_matrix.h dlib/test/kernel_matrix.cpp Revision: f295131e986f Date: Jan 18, 2011 (01:51:18 UTC) Updated the image_display widget so that you can zoom in and out using the mouse wheel. Modified dlib/gui_widgets/widgets.cpp dlib/gui_widgets/widgets.h dlib/gui_widgets/widgets_abstract.h Revision: 611af0fde901 Date: Jan 04, 2011 (22:10:20 UTC) Made test more robust Modified dlib/test/matrix4.cpp Revision: f36be5059f4f Date: Jan 02, 2011 (21:02:58 UTC) clarified a comment Modified dlib/svm/function_abstract.h Revision: 77943a1cdd6c Date: Jan 02, 2011 (15:43:27 UTC) Added wrappers for the new overloads which take std::string. Modified dlib/config_reader/config_reader_thread_safe_1.h Revision: 8e3eae473f65 Date: Jan 01, 2011 (23:12:51 UTC) Added overloads to the config_reader's methods to allow it to load directly from a file name given as a string in addition to taking istream objects. Modified dlib/config_reader/config_reader_kernel_1.h dlib/config_reader/config_reader_kernel_abstract.h Revision: 8bde874041ed Date: Jan 01, 2011 (23:05:33 UTC) Accidentally removed a needed #include yesterday. Just putting it back. Modified dlib/xml_parser.h Revision: 33c824557cf4 Date: Dec 31, 2010 (22:12:54 UTC) Removed the ASSERT that the B matrix be symmetric since compiler optimizations can sometimes cause B to be very slightly non-symmetric. Modified dlib/optimization/optimization_trust_region.h Revision: 0217fef98a16 Date: Dec 31, 2010 (21:49:54 UTC) Added a comment Modified dlib/algs.h Revision: b8681e5258dd Date: Dec 31, 2010 (21:45:37 UTC) All I did in this change was rename memory_manager<char>::kernel_1a to default_memory_manager. default_memory_manager is way more readable and clear. Modified dlib/any/any_decision_function.h dlib/any/any_decision_function_abstract.h dlib/any/any_trainer.h dlib/any/any_trainer_abstract.h dlib/array.h dlib/array/array_kernel_1.h dlib/array/array_kernel_2.h dlib/array/array_kernel_abstract.h dlib/array2d.h dlib/array2d/array2d_kernel_1.h dlib/array2d/array2d_kernel_abstract.h dlib/binary_search_tree.h dlib/binary_search_tree/binary_search_tree_kernel_abstract.h dlib/directed_graph.h dlib/directed_graph/directed_graph_kernel_1.h dlib/directed_graph/directed_graph_kernel_abstract.h dlib/graph.h dlib/graph/graph_kernel_1.h dlib/graph/graph_kernel_abstract.h dlib/hash_map.h dlib/hash_map/hash_map_kernel_1.h dlib/hash_map/hash_map_kernel_abstract.h dlib/hash_set.h dlib/hash_set/hash_set_kernel_1.h dlib/hash_set/hash_set_kernel_abstract.h dlib/hash_table.h dlib/hash_table/hash_table_kernel_1.h dlib/hash_table/hash_table_kernel_2.h dlib/hash_table/hash_table_kernel_abstract.h dlib/map.h dlib/map/map_kernel_1.h dlib/map/map_kernel_abstract.h dlib/matrix/matrix_abstract.h dlib/matrix/matrix_expressions.h dlib/matrix/matrix_fwd.h dlib/matrix/matrix_utilities.h dlib/queue.h dlib/queue/queue_kernel_1.h dlib/queue/queue_kernel_2.h dlib/queue/queue_kernel_abstract.h dlib/sequence.h dlib/sequence/sequence_kernel_1.h dlib/sequence/sequence_kernel_2.h dlib/sequence/sequence_kernel_abstract.h dlib/set.h dlib/set/set_kernel_1.h dlib/set/set_kernel_abstract.h dlib/stack.h dlib/stack/stack_kernel_1.h dlib/stack/stack_kernel_abstract.h dlib/statistics/random_subset_selector.h dlib/statistics/random_subset_selector_abstract.h dlib/svm/sparse_kernel.h dlib/svm/sparse_kernel_abstract.h dlib/test/kcentroid.cpp dlib/test/matrix2.cpp dlib/test/matrix_chol.cpp dlib/test/matrix_lu.cpp dlib/test/matrix_qr.cpp dlib/timer.h Revision: fa1914941dcd Date: Dec 31, 2010 (21:38:32 UTC) Added a default_memory_manager typedef at the top of algs.h. Modified dlib/algs.h dlib/memory_manager_stateless/memory_manager_stateless_kernel_1.h Revision: 1153cf8cec5f Date: Dec 31, 2010 (21:05:15 UTC) fixed typo in spec Modified dlib/svm/svm_abstract.h Revision: afbb2f73e872 Date: Dec 31, 2010 (20:40:10 UTC) Added a test to make sure the probabilistic() trainer adapter works right and also that it works with the one_vs_all_trainer without issue. Modified dlib/test/one_vs_all_trainer.cpp Revision: ec5e24321f7e Date: Dec 31, 2010 (20:34:02 UTC) Added a probabilistic trainer adapter. Modified dlib/svm/svm.h dlib/svm/svm_abstract.h Revision: 68d1e9bae835 Date: Dec 31, 2010 (20:19:05 UTC) Renamed generic_probabilistic_decision_function to probabilistic_function. Modified dlib/svm/function.h dlib/svm/function_abstract.h dlib/svm/svm.h Revision: 55a4e113482d Date: Dec 31, 2010 (20:13:07 UTC) - Made the train_probabilistic_decision_function() more general by making it work with any kind of trainer object rather than only ones which produce dlib::decision_function objects. I also made it work with trainers that only take std::vectors. - train_probabilistic_decision_function() no longer accepts column vectors of samples and labels. Now it only accepts std::vectors of samples and labels. - Added a new generic_probabilistic_decision_function object which is returned by the train_probabilistic_decision_function(). The old probabilistic_decision_function still exists and can be constructed from a generic_probabilistic_decision_function. This way backwards compatibility is maintained with older code so long as that code used std::vectors to hold samples and labels. Modified dlib/svm/function.h dlib/svm/function_abstract.h dlib/svm/svm.h dlib/svm/svm_abstract.h Revision: 8d7ed7af6c17 Date: Dec 31, 2010 (16:20:21 UTC) Added a one vs. all multiclass trainer. Modified dlib/svm.h dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/svm/one_vs_all_decision_function.h dlib/svm/one_vs_all_decision_function_abstract.h dlib/svm/one_vs_all_trainer.h dlib/svm/one_vs_all_trainer_abstract.h dlib/test/one_vs_all_trainer.cpp Revision: a0fabf195309 Date: Dec 31, 2010 (16:11:13 UTC) clarified spec Modified dlib/svm/one_vs_one_trainer_abstract.h Revision: 52dec267fce4 Date: Dec 31, 2010 (16:08:14 UTC) Moved null_df into its own file. Modified dlib/svm/one_vs_one_decision_function.h dlib/svm/one_vs_one_decision_function_abstract.h Added dlib/svm/null_df.h Revision: eff2651f865e Date: Dec 31, 2010 (15:34:45 UTC) minor cleanup Modified dlib/svm/one_vs_one_decision_function.h Revision: 1202c63d39c1 Date: Dec 31, 2010 (15:22:54 UTC) Added a test for the cross_validate_regression_trainer() function. Modified dlib/test/svm.cpp Revision: dbf6c4d0ae5b Date: Dec 31, 2010 (15:00:19 UTC) Added cross_validate_regression_trainer() and test_regression_function() Modified dlib/svm.h Added dlib/svm/cross_validate_regression_trainer.h dlib/svm/cross_validate_regression_trainer_abstract.h Revision: c64ccea1953c Date: Dec 31, 2010 (05:05:36 UTC) Removed svn:executable from some files. Modified dlib/dir_nav/dir_nav_extensions.cpp dlib/dir_nav/dir_nav_extensions.h dlib/dir_nav/dir_nav_extensions_abstract.h dlib/image_keypoint.h dlib/string/cassert dlib/string/iomanip dlib/string/iosfwd dlib/string/iostream dlib/string/locale dlib/test/kcentroid.cpp Revision: 809791d8239c Date: Dec 30, 2010 (20:38:09 UTC) Minor change to avoid compile time error in gcc. Modified dlib/svm/one_vs_one_trainer.h Revision: 42962c536589 Date: Dec 30, 2010 (19:51:13 UTC) Added some unit tests for the one_vs_one multiclass training code. Modified dlib/test/CMakeLists.txt Added dlib/test/one_vs_one_trainer.cpp Revision: e103a8c4a0c7 Date: Dec 30, 2010 (17:50:13 UTC) clarified spec Modified dlib/svm/cross_validate_multiclass_trainer_abstract.h Revision: c579d3418fec Date: Dec 30, 2010 (17:38:51 UTC) minor change to avoid warning in gcc Modified dlib/svm/one_vs_one_decision_function.h Revision: 4db4417028da Date: Dec 29, 2010 (15:59:26 UTC) minor cleanup Modified dlib/svm/one_vs_one_trainer_abstract.h Revision: e2ffd484bf73 Date: Dec 28, 2010 (15:11:57 UTC) Added a bunch of new multiclass classification tools. Modified dlib/svm.h Added dlib/svm/cross_validate_multiclass_trainer.h dlib/svm/cross_validate_multiclass_trainer_abstract.h dlib/svm/multiclass_tools.h dlib/svm/multiclass_tools_abstract.h dlib/svm/one_vs_one_decision_function.h dlib/svm/one_vs_one_decision_function_abstract.h dlib/svm/one_vs_one_trainer.h dlib/svm/one_vs_one_trainer_abstract.h Revision: 64a2d73f8159 Date: Dec 28, 2010 (03:57:00 UTC) clarified spec Modified dlib/svm/svm_abstract.h Revision: 1ec6779ef1f3 Date: Dec 27, 2010 (03:48:12 UTC) Removed an unused variable. Modified dlib/svm/svm.h Revision: f2f37d26f8fd Date: Dec 26, 2010 (18:46:44 UTC) Fixed a minor bug in unordered_pair Modified dlib/unordered_pair.h Revision: 57b03c2b4b9b Date: Dec 26, 2010 (18:23:26 UTC) I just retabbed this file Modified dlib/pixel.h Revision: fca4441022dd Date: Dec 26, 2010 (17:55:46 UTC) Added two new any object. One for containing just decision function style objects and another for trainers. Modified dlib/any.h Added dlib/any/any_decision_function.h dlib/any/any_decision_function_abstract.h dlib/any/any_trainer.h dlib/any/any_trainer_abstract.h Revision: 2073315abfdd Date: Dec 26, 2010 (17:13:08 UTC) Fixed grammar Modified dlib/algs.h Revision: 7822b8b1cffd Date: Dec 26, 2010 (17:09:07 UTC) Moved basic_type out of any and made it a first class object with proper documentation. Modified dlib/algs.h dlib/any/any.h Revision: a3a867ab4e69 Date: Dec 26, 2010 (17:03:08 UTC) Removed the kernel_type typedef from the normalized function since this meta-object should be capable of working with non-kernel decision functions. Modified dlib/svm/function.h dlib/svm/function_abstract.h Revision: 712b5ed7fed4 Date: Dec 26, 2010 (16:50:48 UTC) Added the unordered_pair object. Added dlib/unordered_pair.h Revision: bf02e38f8a30 Date: Dec 26, 2010 (04:02:27 UTC) Added typedefs for each of the template arguments to the type_safe_union. Modified dlib/type_safe_union/type_safe_union_kernel.h dlib/type_safe_union/type_safe_union_kernel_abstract.h Revision: 81dba258a5fa Date: Dec 24, 2010 (23:53:06 UTC) Fixed a bug in the deserialization code for the sparse kernels. The bug prevented code which used the deserialization routine from compiling. Modified dlib/svm/sparse_kernel.h Revision: eddbd666aa86 Date: Dec 24, 2010 (23:51:44 UTC) Added serialization support for std::pair objects. Modified dlib/serialize.h Revision: 8bb318f057a7 Date: Dec 24, 2010 (16:17:14 UTC) Modified the type_safe_union so that you can call apply_to_contents() on const type_safe_unions. Modified dlib/test/type_safe_union.cpp dlib/type_safe_union/type_safe_union_kernel.h dlib/type_safe_union/type_safe_union_kernel_abstract.h Revision: e00138a11c45 Date: Dec 23, 2010 (23:43:36 UTC) Added unit tests for the svr_trainer and svm_one_class_trainer. Modified dlib/test/svm.cpp Revision: 2cac6ceedfd4 Date: Dec 23, 2010 (22:56:15 UTC) Added an epsilon-insensitive support vector regression class. Modified dlib/svm.h Added dlib/svm/svr_trainer.h dlib/svm/svr_trainer_abstract.h Revision: 7d06aa06b6ad Date: Dec 23, 2010 (22:55:45 UTC) Clarified spec Modified dlib/svm/krr_trainer_abstract.h Revision: 13504162d62e Date: Dec 23, 2010 (20:58:22 UTC) Simplified requires clause of train() function. Modified dlib/svm/rvm.h dlib/svm/rvm_abstract.h Revision: 35a489574035 Date: Dec 23, 2010 (20:57:49 UTC) Added the is_learning_problem() predicate and used it to make a few requires clauses more straight forward. Modified dlib/svm/krr_trainer.h dlib/svm/krr_trainer_abstract.h dlib/svm/rbf_network.h dlib/svm/rbf_network_abstract.h dlib/svm/svm.h dlib/svm/svm_abstract.h Revision: 14f5f69416bf Date: Dec 23, 2010 (04:27:15 UTC) made spec clearer Modified dlib/matrix/symmetric_matrix_cache_abstract.h Revision: 5a09c23b9694 Date: Dec 23, 2010 (00:12:28 UTC) Added a missing #include Modified dlib/svm.h Revision: 2f6b7eb8afd6 Date: Dec 23, 2010 (00:02:14 UTC) fixed grammar Modified dlib/optimization/optimization_solve_qp3_using_smo_abstract.h Revision: 1fd296b7a2f9 Date: Dec 23, 2010 (00:00:31 UTC) Added another citation Modified dlib/optimization/optimization_solve_qp3_using_smo_abstract.h Revision: e8b942425751 Date: Dec 22, 2010 (23:12:06 UTC) moved calculate_rho_and_b back into the svm_nu_trainer Modified dlib/svm/svm_nu_trainer.h Deleted dlib/svm/calculate_rho_and_b.h Revision: 29a2cc6ae838 Date: Dec 22, 2010 (23:06:55 UTC) Fixed a minor bug and did some cleanup Modified dlib/svm/svm_c_trainer.h Revision: cfe2922b7693 Date: Dec 22, 2010 (22:39:42 UTC) Added the svm_one_class_trainer object. Added dlib/svm/svm_one_class_trainer.h dlib/svm/svm_one_class_trainer_abstract.h Revision: 76a2327117e6 Date: Dec 22, 2010 (22:18:54 UTC) Made alpha initialization a little more robust. Modified dlib/optimization/optimization_solve_qp3_using_smo.h Revision: ad0cffae5ec2 Date: Dec 22, 2010 (20:31:38 UTC) Removed a bit of code that didn't actually do anything. Modified dlib/optimization/optimization_solve_qp2_using_smo.h Revision: 8a7e07cbe72f Date: Dec 22, 2010 (19:42:23 UTC) Fixed typo in comment Modified dlib/svm/sparse_vector_abstract.h Revision: 42f99a50bd6c Date: Dec 22, 2010 (18:54:16 UTC) Added missing #include Modified dlib/optimization.h Revision: d35fe69d57e3 Date: Dec 22, 2010 (18:45:52 UTC) Added some tests for the svm_c_trainer Modified dlib/test/svm.cpp Revision: de765b0a4037 Date: Dec 22, 2010 (18:29:34 UTC) Added the svm_c_trainer. It uses the solve_qp3_using_smo optimizer I just added. Modified dlib/svm.h Added dlib/svm/svm_c_trainer.h dlib/svm/svm_c_trainer_abstract.h Revision: c2ca24b59f84 Date: Dec 22, 2010 (18:25:50 UTC) Moved calculate_rho_and_b() into it's own file since it will be used by other tools. I also clarified the spec slightly. Modified dlib/svm/svm_nu_trainer.h dlib/svm/svm_nu_trainer_abstract.h Added dlib/svm/calculate_rho_and_b.h Revision: ee6e0875f331 Date: Dec 22, 2010 (18:24:41 UTC) Added another version of the quadratic solver. It's basically a copy of solve_qp2_using_smo but this one solves the problem associated with C-SVMs and a few other things. Added dlib/optimization/optimization_solve_qp3_using_smo.h dlib/optimization/optimization_solve_qp3_using_smo_abstract.h Revision: 5d85d796e28d Date: Dec 22, 2010 (18:05:22 UTC) Made the solver return the number of iterations performed. Modified dlib/optimization/optimization_solve_qp2_using_smo.h dlib/optimization/optimization_solve_qp2_using_smo_abstract.h Revision: 1d7ec01c6246 Date: Dec 22, 2010 (00:26:50 UTC) fixed minor bug in unit tests Modified dlib/test/matrix2.cpp Revision: 4ea7e3bf8a18 Date: Dec 22, 2010 (00:25:19 UTC) Clarified spec Modified dlib/optimization/optimization_solve_qp2_using_smo_abstract.h Revision: 60b6517bee86 Date: Dec 21, 2010 (22:59:21 UTC) A minor change to avoid a compiler warning from gcc. Modified dlib/svm/svm_nu_trainer.h Revision: 95a010fc88d5 Date: Dec 21, 2010 (22:39:28 UTC) Clarified some comments Modified dlib/matrix/symmetric_matrix_cache.h dlib/optimization/optimization_solve_qp2_using_smo_abstract.h Revision: bba4ff4c636d Date: Dec 21, 2010 (22:21:57 UTC) Refactored the svm_nu_trainer. Specifically, I pulled the quadratic solver out and made it a separate class. The kernel_matrix_cache has also been removed in favor of the new symmetric_matrix_cache. Finally, the remaining bits of the svm_nu_trainer have been moved into svm_nu_trainer.h Also note that invalid_svm_nu_error has been renamed to invalid_nu_error. Modified dlib/optimization.h dlib/svm/svm.h dlib/svm/svm_abstract.h dlib/svm/svm_threaded.h Added dlib/optimization/optimization_solve_qp2_using_smo.h dlib/optimization/optimization_solve_qp2_using_smo_abstract.h dlib/svm/svm_nu_trainer.h dlib/svm/svm_nu_trainer_abstract.h Revision: d3c2c7f66119 Date: Dec 21, 2010 (20:53:23 UTC) updated spec Modified dlib/matrix/symmetric_matrix_cache_abstract.h Revision: 498af639eccc Date: Dec 21, 2010 (18:26:56 UTC) removed some cruft Modified dlib/matrix/symmetric_matrix_cache_abstract.h Revision: f7fafe79f270 Date: Dec 21, 2010 (18:22:43 UTC) More code cleanup and spec refinement. I also added a unit test for the symmetric_matrix_cache. Finally, I put the new structs for determining the return types from colm/rowm/diag into the proper places. Modified dlib/matrix.h dlib/matrix/matrix_subexp.h dlib/matrix/matrix_subexp_abstract.h dlib/matrix/matrix_utilities.h dlib/matrix/matrix_utilities_abstract.h dlib/matrix/symmetric_matrix_cache.h dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/test/symmetric_matrix_cache.cpp Revision: 8386e1eb3a94 Date: Dec 21, 2010 (17:55:53 UTC) code cleanup Modified dlib/matrix/symmetric_matrix_cache.h dlib/matrix/symmetric_matrix_cache_abstract.h Revision: c5b571e6f0c4 Date: Dec 21, 2010 (16:51:22 UTC) Added rough version of the new symmetric_matrix_cache() function. Added dlib/matrix/symmetric_matrix_cache.h dlib/matrix/symmetric_matrix_cache_abstract.h Revision: 3730ea544212 Date: Dec 21, 2010 (00:54:36 UTC) Changed the kernel_matrix() function a little so it is easier for compilers to optimize. Modified dlib/svm/kernel_matrix.h dlib/test/kernel_matrix.cpp Revision: eb0a3341592b Date: Dec 18, 2010 (20:28:40 UTC) Removed a pair of unused variables. Modified dlib/svm/svm.h Revision: a9c2411a238b Date: Dec 15, 2010 (00:52:44 UTC) Changed the check for the radius being zero a little more robust against floating point weirdness. Modified dlib/optimization/optimization_trust_region.h Revision: b2c86ae2da1a Date: Dec 15, 2010 (00:51:53 UTC) Minor change to avoid a compiler warning in gcc Modified dlib/pixel.h Revision: 8e92d668c7f9 Date: Dec 15, 2010 (00:50:42 UTC) made tests a little more robust Modified dlib/test/matrix2.cpp dlib/test/matrix4.cpp Revision: dc5df6d3f640 Date: Dec 14, 2010 (01:38:04 UTC) Made the requirement that the two images be different objects a little more clear. Modified dlib/image_transforms/spatial_filtering.h dlib/image_transforms/spatial_filtering_abstract.h Revision: 6a8f1f58f8c9 Date: Dec 14, 2010 (01:18:57 UTC) Improved the behavior of assign_image_scaled() Modified dlib/image_transforms/assign_image.h dlib/image_transforms/assign_image_abstract.h Revision: 79033c60e1d7 Date: Dec 14, 2010 (00:29:26 UTC) Fixed typo in comment Modified dlib/algs.h Revision: 04f0531e3260 Date: Dec 13, 2010 (03:36:47 UTC) Fixed a bug in the signed/unsigned comparison code in the assign_pixel function. Modified dlib/pixel.h dlib/test/pixel.cpp Revision: 0523c30bfe33 Date: Dec 13, 2010 (03:08:27 UTC) Added a function called assign_image_scaled() which copies an image but also does an intelligent scaling if the source and destination images have differing dynamic ranges. I also modified the image display widgets to use assign_image_scaled() instead of assign_image(). Modified dlib/gui_widgets/base_widgets.h dlib/gui_widgets/widgets.h dlib/image_transforms/assign_image.h dlib/image_transforms/assign_image_abstract.h Revision: 33eecafd8261 Date: Dec 13, 2010 (01:52:12 UTC) I went through the image transforms and updated their specs and a few other things so that they still make sense now that I'm letting pixels be signed as well as unsigned. Modified dlib/image_transforms/edge_detector.h dlib/image_transforms/edge_detector_abstract.h dlib/image_transforms/equalize_histogram.h dlib/image_transforms/equalize_histogram_abstract.h dlib/image_transforms/image_pyramid.h dlib/image_transforms/image_pyramid_abstract.h dlib/image_transforms/integral_image.h dlib/image_transforms/integral_image_abstract.h dlib/image_transforms/spatial_filtering.h dlib/image_transforms/thresholding.h dlib/image_transforms/thresholding_abstract.h Revision: c54a163acfd3 Date: Dec 13, 2010 (01:31:08 UTC) Added missing requirement Modified dlib/image_transforms/assign_image_abstract.h Revision: 0d44322bc28b Date: Dec 13, 2010 (01:30:08 UTC) Changed promote so that 8bit integers promote to 32bit integers. Modified dlib/algs.h Revision: 5a7fcba211e7 Date: Dec 13, 2010 (01:26:38 UTC) changed to avoid compiler warnings in visual studio Modified dlib/pixel.h Revision: 2dc1500dcc0b Date: Dec 13, 2010 (00:15:08 UTC) Added the promote template which is a tool for converting from a smaller scalar type to a bigger one. The change in vector.h is just renaming to avoid a naming conflict. Modified dlib/algs.h dlib/geometry/vector.h Revision: c70c706120cc Date: Dec 12, 2010 (23:15:52 UTC) Changed the pixel_traits so that signed grayscale pixel types are allowed. This involved adding a few new fields to pixel_traits. I also changed the get_pixel_intensity() function so that its return value is of the same type as the basic pixel type rather than always being unsigned long. Modified dlib/gui_core/gui_core_kernel_1.h dlib/gui_core/gui_core_kernel_2.h dlib/pixel.h dlib/test/pixel.cpp Revision: 36f5d4059bed Date: Dec 12, 2010 (21:22:14 UTC) Added missing declaration for int64 in the is_built_in_scalar_type template. Modified dlib/algs.h Revision: 3106e5b7d92e Date: Dec 05, 2010 (19:16:39 UTC) Fixed typo Modified dlib/README.txt Revision: b859ff3394df Date: Dec 05, 2010 (16:18:53 UTC) made timer test more robust Modified dlib/test/timer.cpp Revision: a78e307e59ee Date: Dec 05, 2010 (15:25:43 UTC) Fixed spelling in a comment Modified dlib/test/timer.cpp Revision: 7b2b8ec92a93 Date: Dec 05, 2010 (05:37:35 UTC) minor fix to a test Modified dlib/test/matrix3.cpp Revision: feb7e41ee08a Date: Dec 05, 2010 (05:33:41 UTC) previous checkin broke some ASSERT statements. Fixing this problem Modified dlib/assert.h dlib/matrix/matrix_utilities.h Revision: 55158c88bb5a Date: Dec 05, 2010 (05:26:48 UTC) made tests more robust Modified dlib/test/matrix4.cpp Revision: b9e32ad7dc60 Date: Dec 05, 2010 (05:24:45 UTC) made test a little more reasonable Modified dlib/test/trust_region.cpp Revision: 691ded1d6e43 Date: Dec 05, 2010 (05:24:19 UTC) minor change to avoid a compiler warning in gcc Modified dlib/matrix/matrix_utilities.h Revision: 7a914beed0ca Date: Dec 04, 2010 (21:31:45 UTC) Changed code for the LM/quasi-newton model around a little to avoid repeated calculation of things and also added some checks for division by zero. Modified dlib/optimization/optimization_least_squares.h Revision: f85838e640c2 Date: Dec 04, 2010 (21:02:51 UTC) Changed the LM function model so that it computes the gradient and hessian without creating an explicit Jacobian matrix. Modified dlib/optimization/optimization_least_squares.h Revision: a41ff443c38e Date: Dec 04, 2010 (17:18:21 UTC) Added a test for the any object. Modified dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/test/any.cpp Revision: e07eeed9b200 Date: Dec 04, 2010 (17:00:17 UTC) Added an any container object. Added dlib/any.h dlib/any/any.h dlib/any/any_abstract.h Revision: 7f605069a16e Date: Dec 04, 2010 (14:53:42 UTC) Cleaned up a comment slightly. Modified dlib/type_safe_union/type_safe_union_kernel_abstract.h Revision: 258ac79b82f7 Date: Dec 04, 2010 (03:08:17 UTC) Clarified spec Modified dlib/smart_pointers/scoped_ptr_abstract.h Revision: f0855ea34a45 Date: Dec 03, 2010 (21:20:05 UTC) minor changes to avoid a compiler bug in visual studio 2005 Modified dlib/test/least_squares.cpp Revision: bbd9fd42353a Date: Dec 03, 2010 (04:16:40 UTC) Told the eigenvalue decomposition to always use the symmetric eigen solver. Modified dlib/optimization/optimization_trust_region.h Revision: 7738701e84ac Date: Dec 02, 2010 (23:57:32 UTC) Fixed a compiler warning and also a runtime bug in sort_basis_vectors(). The bug triggered when all the basis vectors were included in the final answer. Modified dlib/svm/sort_basis_vectors.h Revision: ad9c9dc8eeab Date: Dec 02, 2010 (23:49:07 UTC) Replaced a funny character with the normal ASCII one. Modified dlib/optimization/optimization_least_squares_abstract.h Revision: dcb44e42ba54 Date: Dec 02, 2010 (23:41:22 UTC) Added a spec for the least squares stuff Modified dlib/optimization/optimization_least_squares.h Added dlib/optimization/optimization_least_squares_abstract.h Revision: 87222820086a Date: Dec 02, 2010 (23:22:13 UTC) Minor cosmetic changes to spec Modified dlib/optimization/optimization_trust_region_abstract.h Revision: 9406432baabe Date: Dec 02, 2010 (23:15:54 UTC) - Added a missing operator*() for diagonal by diagonal matrix multiplication. Without it you would get an error about multiplication being ambiguous in this case. - Added an overload to catch expressions of the form diag_matrix*regular_matrix*diag_matrix and turn them into a form which is slightly more numerically stable in some cases. Modified dlib/matrix/matrix_utilities.h dlib/test/matrix4.cpp Revision: 3f43d8040622 Date: Dec 02, 2010 (03:49:48 UTC) Fixed grammar in a comment. Modified dlib/matrix/matrix_cholesky.h Revision: 98591a68cb3f Date: Dec 02, 2010 (03:26:27 UTC) Made the rosen test a little more reasonable. Modified dlib/test/trust_region.cpp Revision: eb95f3abac91 Date: Dec 01, 2010 (23:48:16 UTC) Minor change to avoid compiler warning. Modified dlib/test/optimization_test_functions.h Revision: 18f2c9a951ce Date: Dec 01, 2010 (02:48:41 UTC) Added tests for the least squares code. Modified dlib/test/CMakeLists.txt dlib/test/makefile dlib/test/optimization_test_functions.h Added dlib/test/least_squares.cpp Revision: 6a00c31120b8 Date: Dec 01, 2010 (01:51:27 UTC) Added some more optimization tests. Modified dlib/test/CMakeLists.txt dlib/test/makefile dlib/test/trust_region.cpp Added dlib/test/optimization_test_functions.cpp dlib/test/optimization_test_functions.h Revision: e15e15623b17 Date: Dec 01, 2010 (01:13:27 UTC) Added an #include for the least squares stuff Modified dlib/optimization.h Revision: 1bb6510aaed6 Date: Dec 01, 2010 (01:10:59 UTC) Added an initial version of some least squares solvers. Added dlib/optimization/optimization_least_squares.h Revision: cadd04b11601 Date: Dec 01, 2010 (00:57:50 UTC) Minor changes to make code more robust. Modified dlib/optimization/optimization_trust_region.h Revision: 664d39cc4b4f Date: Nov 28, 2010 (21:13:41 UTC) added missing public: qualifier. Modified dlib/optimization/optimization_trust_region_abstract.h Revision: 8024fc10024f Date: Nov 28, 2010 (19:22:52 UTC) Made the trust region solver more robust. Modified dlib/optimization/optimization_trust_region.h Revision: 483d111f8f2e Date: Nov 28, 2010 (19:13:30 UTC) Upgraded the derivative() function so it can work on functions with two arguments. Modified dlib/optimization/optimization.h dlib/optimization/optimization_abstract.h Revision: 206d3a7be1cc Date: Nov 26, 2010 (22:23:09 UTC) Added a trust region optimizer. Modified dlib/optimization.h dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/optimization/optimization_trust_region.h dlib/optimization/optimization_trust_region_abstract.h dlib/test/trust_region.cpp Revision: bd2771593f54 Date: Nov 26, 2010 (18:49:03 UTC) Added some comments to the spec. Modified dlib/optimization/optimization_abstract.h Revision: f77e9e457ae5 Date: Nov 21, 2010 (13:46:21 UTC) Added some comments about how chol() behaves. Modified dlib/matrix/matrix_la_abstract.h Revision: f8c229734a4a Date: Nov 21, 2010 (02:34:07 UTC) Added a bunch of overloads to catch operations on diagonal matrices and use more efficient code paths for them. For example, inv(diagm(d)) turns into diagm(reciprocal(d)). Modified dlib/matrix/matrix_exp.h dlib/matrix/matrix_la.h dlib/matrix/matrix_op.h dlib/matrix/matrix_utilities.h dlib/test/matrix4.cpp Revision: 6392759a40d2 Date: Nov 20, 2010 (14:03:42 UTC) Fixed tabbing Modified dlib/rand/mersenne_twister.h Revision: a61b74a95f1a Date: Nov 19, 2010 (00:44:26 UTC) Added missing comment about the QP needing to be convex. Modified dlib/optimization/optimization_solve_qp_using_smo.h dlib/optimization/optimization_solve_qp_using_smo_abstract.h Revision: aef68283dcaa Date: Nov 18, 2010 (01:28:16 UTC) Added the ability to add/subtract scalar values to/from all the elements of a matrix using the - and + operators. Modified dlib/matrix/matrix.h dlib/matrix/matrix_abstract.h dlib/test/matrix4.cpp Revision: 02be1516be89 Date: Nov 18, 2010 (01:05:28 UTC) Moved serialize definition outside class since some compilers will fail to compile friend functions when they aren't declared in this way. Modified dlib/rand/rand_kernel_1.h dlib/test/rand.cpp Revision: 083b971e44ea Date: Nov 18, 2010 (00:44:01 UTC) Updated a comment. Modified dlib/is_kind.h Revision: 5789a4861af9 Date: Nov 17, 2010 (01:49:54 UTC) Added missing *= operator Modified dlib/matrix/matrix.h dlib/test/matrix4.cpp Revision: b6adeb3a1425 Date: Nov 13, 2010 (19:38:14 UTC) Updated makefile Modified dlib/test/makefile Revision: 875eddf7dfb9 Date: Nov 13, 2010 (19:02:36 UTC) Increased the number of MCMC rounds so that the bayes nets test is less likely to indicate failure. Modified dlib/test/bayes_nets.cpp Revision: b3a327c9849e Date: Nov 13, 2010 (18:30:44 UTC) Made the cmake file for finding blas more robust. Modified dlib/cmake_find_blas.txt Revision: 89ca0eef585b Date: Nov 13, 2010 (17:05:52 UTC) Added some code to avoid a bug in an older LAPACK implementation on Debian Etch. Modified dlib/matrix/lapack/gesdd.h Revision: 255ad7364fd4 Date: Nov 13, 2010 (03:48:23 UTC) Added flipud() and fliplr() matrix functions. I also renamed the scale_rows_columns.cpp test file to matrix4.cpp. Modified dlib/matrix/matrix_utilities.h dlib/matrix/matrix_utilities_abstract.h dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/test/matrix4.cpp Deleted dlib/test/scale_rows_columns.cpp Revision: cfa83ccfe324 Date: Nov 12, 2010 (23:36:56 UTC) Added a missing requirement to sort_basis_vectors() Modified dlib/svm/sort_basis_vectors.h dlib/svm/sort_basis_vectors_abstract.h Revision: c6333964d440 Date: Nov 12, 2010 (23:13:56 UTC) - Renamed the linearly_independent_subset_finder's dictionary_size() member function to size(). This way, linearly_independent_subset_finder objects can be used in many templated functions which expect objects which look like arrays. - Generalized the kernel_matrix() function slightly so that it can work with anything that looks like an array. This now includes linearly_independent_subset_finder objects. Modified dlib/svm/empirical_kernel_map.h dlib/svm/kernel_matrix.h dlib/svm/kernel_matrix_abstract.h dlib/svm/linearly_independent_subset_finder.h dlib/svm/linearly_independent_subset_finder_abstract.h dlib/svm/rbf_network.h dlib/svm/reduced.h dlib/svm/svm_c_ekm_trainer.h dlib/test/ekm_and_lisf.cpp Revision: 5167c502589b Date: Nov 12, 2010 (18:16:08 UTC) Removed the old is_same_object function from set_utils since it conflicts with the new one in some cases. Modified dlib/set_utils/set_utils.h Revision: 61fafdd6f99c Date: Nov 12, 2010 (18:07:24 UTC) Made this function capable of accepting anything that can be converted to a matrix via vector_to_matrix() Modified dlib/svm/sort_basis_vectors.h Revision: 5f34bc16ede6 Date: Nov 12, 2010 (17:45:25 UTC) made spec more clear Modified dlib/svm/sort_basis_vectors_abstract.h Revision: 1662e2866c5e Date: Nov 12, 2010 (17:37:15 UTC) Added a function for performing supervised basis selection. Modified dlib/svm.h Added dlib/svm/sort_basis_vectors.h dlib/svm/sort_basis_vectors_abstract.h Revision: 7de351feec29 Date: Nov 12, 2010 (14:15:54 UTC) Added the is_same_object() function. Modified dlib/algs.h dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/test/is_same_object.cpp Revision: 5e69e3c81a48 Date: Nov 10, 2010 (01:51:26 UTC) Updated spec to reference the correct LAPACK routine. Modified dlib/matrix/matrix_la_abstract.h Revision: ea19647cb900 Date: Nov 10, 2010 (01:44:59 UTC) Clarified spec Modified dlib/string/string_abstract.h Revision: b7c09242e417 Date: Nov 10, 2010 (01:33:00 UTC) Added some tests for the string_assign object. Modified dlib/test/string.cpp Revision: bdc2a2fe2808 Date: Nov 10, 2010 (01:08:13 UTC) Improved the string_assign utility. Modified dlib/string/string.h dlib/string/string_abstract.h Revision: a387dd8b78ef Date: Nov 10, 2010 (00:45:33 UTC) Added the string_assign tool Modified dlib/string/string.h dlib/string/string_abstract.h Revision: d6b827f8d060 Date: Nov 07, 2010 (13:25:15 UTC) Added a tool for measuring how long a task will take. Added dlib/console_progress_indicator.h Revision: 3ba090a75951 Date: Nov 04, 2010 (23:49:08 UTC) Switched the eigenvalue_decomposition from using syev to syevr since syevr is supposed to be better. Modified dlib/matrix/matrix_eigenvalue.h Revision: c17117480919 Date: Nov 04, 2010 (23:22:43 UTC) Improved the way we link to the Intel MKL. Now it will link right against newer versions. Modified dlib/cmake_find_blas.txt Revision: 2e7418969e3d Date: Nov 04, 2010 (00:16:47 UTC) Minor change to avoid compiler warning. Modified dlib/svm/kernel_matrix.h Revision: 6e3e18b43906 Date: Oct 31, 2010 (20:02:23 UTC) Added missing std::abs() calls. Modified dlib/matrix/matrix_la.h Revision: a08bcf31bab5 Date: Oct 31, 2010 (19:43:25 UTC) Made the code in chol() more robust to indefinite matrices. Modified dlib/matrix/matrix_la.h dlib/test/matrix_chol.cpp Revision: 91992af5b130 Date: Oct 31, 2010 (18:22:45 UTC) Removed two cout statements I used for testing but forgot to remove before committing code to subversion. Oops. Modified dlib/matrix/matrix_utilities.h Revision: cc5ff1f12c3f Date: Oct 31, 2010 (18:20:15 UTC) Added a new scale_rows() function. I also overloaded the * operator so that the expressions mat*diagm(v) and diagm(v)*mat get bound to calls to scale_columns() and scale_rows() respectively. Modified dlib/matrix/matrix_utilities.h dlib/matrix/matrix_utilities_abstract.h dlib/test/CMakeLists.txt dlib/test/makefile Added dlib/test/scale_rows_columns.cpp Revision: 703915a6a9c2 Date: Oct 31, 2010 (16:56:42 UTC) Added a comment about aliasing and the kernel_matrix expression. Modified dlib/svm/kernel_matrix_abstract.h Revision: fedc731c78e2 Date: Oct 31, 2010 (14:59:51 UTC) Improved the alias detection capability of kernel_matrix() expressions. Now statements of the form: sample = kernel_matrix(kern, *, sample) can be used since the aliasing of sample will be handled. Modified dlib/svm/kernel_matrix.h dlib/test/kernel_matrix.cpp Revision: 457754bd6125 Date: Oct 28, 2010 (22:32:09 UTC) Changed the assert macros so that they don't use __PRETTY_FUNCTION__ with gcc 4.4.5 since, on Ubuntu at least, this version of gcc segfaults when __PRETTY_FUNCTION__ is used within certain template constructs. Modified dlib/assert.h Revision: 691468eb5fae Date: Sep 26, 2010 (14:16:20 UTC) Added get_parent_directory() Modified dlib/dir_nav/dir_nav_extensions.cpp dlib/dir_nav/dir_nav_extensions.h dlib/dir_nav/dir_nav_extensions_abstract.h dlib/dir_nav/dir_nav_kernel_abstract.h Revision: 23b9e44097da Date: Sep 25, 2010 (20:23:11 UTC) Made X11 code a little more robust (I think). Modified dlib/gui_core/gui_core_kernel_2.cpp Revision: dc08898a9969 Date: Sep 25, 2010 (20:22:06 UTC) Fixed file headers Modified dlib/image_loader/jpeg_loader.cpp dlib/image_loader/jpeg_loader.h dlib/image_loader/jpeg_loader_abstract.h Revision: 481281d6845c Date: Sep 25, 2010 (20:21:22 UTC) Added a class for reading JPEG image files. Modified dlib/CMakeLists.txt dlib/all/source.cpp dlib/image_io.h Added dlib/image_loader/jpeg_loader.cpp dlib/image_loader/jpeg_loader.h dlib/image_loader/jpeg_loader_abstract.h Revision: 2dd222e3e65c Date: Sep 25, 2010 (14:01:13 UTC) Improved the way we look for available BLAS and LAPACK libraries. Modified dlib/cmake_find_blas.txt Revision: 97e8949d215c Date: Sep 19, 2010 (12:55:58 UTC) Added a compile time assert which makes sure you don't accidentally give a non-linear kernel to the svm_c_linear_trainer. Modified dlib/svm/svm_c_linear_trainer.h Revision: 1ce8b7717419 Date: Sep 15, 2010 (22:15:35 UTC) Adjusted the lambda search code so that when two lambdas give the same leave-one-out-error we always pick the bigger lambda. This should be slightly better since, all other things equal, bigger lambda usually gives better generalization. Modified dlib/svm/krr_trainer.h Revision: f0e09f53ef7e Date: Sep 15, 2010 (22:01:10 UTC) Added a test for make_symmetric() Modified dlib/test/matrix3.cpp Revision: 35de032ed81e Date: Sep 14, 2010 (22:12:01 UTC) Added some tests to exercise the column major code paths. Modified dlib/test/matrix2.cpp dlib/test/matrix_chol.cpp dlib/test/matrix_eig.cpp dlib/test/matrix_lu.cpp dlib/test/matrix_qr.cpp Revision: d1d39d89e085 Date: Sep 14, 2010 (01:35:34 UTC) Minor change to avoid compiler warning in visual studio. Modified dlib/matrix/matrix_utilities.h Revision: 29315fab0a70 Date: Sep 14, 2010 (01:33:56 UTC) Setup the qr_decomposition to use LAPACK when available. Also removed the qr_decomposition::get_householder() function since I don't currently have any way to test it or precisely define what it does. Modified dlib/matrix/matrix_la_abstract.h dlib/matrix/matrix_qr.h dlib/matrix/matrix_trsm.h Added dlib/matrix/lapack/ormqr.h Revision: bc699f46e9fe Date: Sep 13, 2010 (03:06:28 UTC) Added some static_casts to avoid compiler warnings. Modified dlib/matrix/lapack/gees.h dlib/matrix/lapack/geev.h dlib/matrix/lapack/geqrf.h dlib/matrix/lapack/gesdd.h dlib/matrix/lapack/gesvd.h dlib/matrix/lapack/syev.h dlib/matrix/lapack/syevr.h Revision: 81d37cbba4a2 Date: Sep 13, 2010 (02:51:44 UTC) Added an overloaded matrix_assign() that handles symmetric kernel_matrix() expressions more efficiently by only evaluating the upper triangular part of the matrix. Modified dlib/svm/kernel_matrix.h Revision: c1b44366a402 Date: Sep 13, 2010 (01:56:42 UTC) Changed code to make sure it always calls the symmetric eigenvalue solver. Modified dlib/svm/krr_trainer.h Revision: fab28e954bce Date: Sep 13, 2010 (01:06:45 UTC) Made cholesky_decomposition use the triangular solver Modified dlib/matrix/matrix_cholesky.h dlib/matrix/matrix_trsm.h Revision: d11054dccd00 Date: Sep 13, 2010 (00:51:05 UTC) Added file headers Modified dlib/matrix/cblas_constants.h dlib/matrix/lapack/fortran_id.h dlib/matrix/lapack/gees.h dlib/matrix/lapack/geev.h dlib/matrix/lapack/geqrf.h dlib/matrix/lapack/gesdd.h dlib/matrix/lapack/gesvd.h dlib/matrix/lapack/potrf.h dlib/matrix/lapack/syev.h dlib/matrix/lapack/syevr.h Revision: 01600b734a19 Date: Sep 13, 2010 (00:49:06 UTC) Setup the LU decomposition code to use LAPACK when available. I also removed the older version from numerical recipes and made everything depend on the lu_decomposition object instead. Finally, I added in a triangular solver that uses BLAS when available and made the lu_decomposition object us it. Modified dlib/matrix/lapack/getrf.h dlib/matrix/matrix_blas_bindings.h dlib/matrix/matrix_la.h dlib/matrix/matrix_la_abstract.h dlib/matrix/matrix_lu.h dlib/test/matrix2.cpp dlib/test/matrix_eig.cpp Added dlib/matrix/cblas_constants.h dlib/matrix/matrix_trsm.h Revision: 94a56b329b6d Date: Sep 12, 2010 (20:34:58 UTC) Fixed typo in comment Modified dlib/matrix/matrix_lu.h Revision: a65c1595db8a Date: Sep 12, 2010 (19:19:15 UTC) Changed pinv() so it uses svd3() so that it can use LAPACK when available. Modified dlib/matrix/matrix_la.h Revision: a7910fdff96d Date: Sep 12, 2010 (18:56:31 UTC) Changed code to avoid compile time bug. Modified dlib/matrix/matrix_la.h Revision: 0589dc5bb8f6 Date: Sep 12, 2010 (13:08:59 UTC) Various minor fixes to the LAPACK bindings. Modified dlib/matrix/lapack/gees.h dlib/matrix/lapack/geev.h dlib/matrix/lapack/gesdd.h dlib/matrix/lapack/gesvd.h dlib/matrix/lapack/syev.h dlib/matrix/lapack/syevr.h Revision: 8539a96fccd9 Date: Sep 12, 2010 (13:08:06 UTC) Added a make_symmetric() statement so that the most efficient eigenvalue_decomposition method is used. Modified dlib/statistics/dpca.h Revision: f8c09b4ced1d Date: Sep 12, 2010 (13:06:46 UTC) Made tests slightly more reasonable. Modified dlib/test/discriminant_pca.cpp dlib/test/matrix2.cpp Revision: 9d70a53811ce Date: Sep 12, 2010 (03:04:18 UTC) Setup the SVD routines to use LAPACK when available. I also changed the svd functions so that you can't supply output matrices which use both column and row major layouts. Now all the output matrices need to use the same memory layout. Modified dlib/matrix/matrix_la.h dlib/matrix/matrix_la_abstract.h Revision: 087ea4e27cce Date: Sep 12, 2010 (02:44:44 UTC) Made bindings more robust Modified dlib/matrix/lapack/gesdd.h dlib/matrix/lapack/gesvd.h Revision: 3f9b3f72a3b0 Date: Sep 12, 2010 (01:18:34 UTC) Made the cholesky decomposition code use the xPOTRF routines in LAPACK Modified dlib/matrix/matrix_cholesky.h dlib/matrix/matrix_la.h dlib/matrix/matrix_la_abstract.h dlib/test/matrix_chol.cpp Revision: 4d7e6a5fb689 Date: Sep 11, 2010 (22:53:25 UTC) Pushed all the work variables into the LAPACK binding functions. Modified dlib/matrix/lapack/gees.h dlib/matrix/lapack/geev.h dlib/matrix/lapack/geqrf.h dlib/matrix/lapack/gesdd.h dlib/matrix/lapack/gesvd.h dlib/matrix/lapack/syev.h dlib/matrix/lapack/syevr.h dlib/matrix/matrix_eigenvalue.h Revision: 5a1d97d6f39c Date: Sep 11, 2010 (22:32:55 UTC) Setup the eigenvalue_decomposition to use LAPACK Modified dlib/matrix/matrix_eigenvalue.h dlib/matrix/matrix_la_abstract.h dlib/test/matrix_eig.cpp Revision: fa73c70ce58c Date: Sep 11, 2010 (22:07:59 UTC) Added some logic to find and link LAPACK libraries. Modified dlib/CMakeLists.txt dlib/cmake_find_blas.txt Revision: b5e19662b764 Date: Sep 11, 2010 (20:58:37 UTC) polished LAPACK bindings Modified dlib/matrix/lapack/gees.h dlib/matrix/lapack/geev.h dlib/matrix/lapack/gesdd.h dlib/matrix/lapack/gesvd.h dlib/matrix/lapack/syev.h dlib/matrix/lapack/syevr.h Revision: c85b20ff65e8 Date: Sep 11, 2010 (20:25:20 UTC) Fixed misnamed function. Modified dlib/matrix/lapack/potrf.h Revision: 539de2955e13 Date: Sep 11, 2010 (14:49:11 UTC) Added a bunch of LAPACK bindings. Added dlib/matrix/lapack/fortran_id.h dlib/matrix/lapack/gees.h dlib/matrix/lapack/geev.h dlib/matrix/lapack/geqrf.h dlib/matrix/lapack/gesdd.h dlib/matrix/lapack/gesvd.h dlib/matrix/lapack/getrf.h dlib/matrix/lapack/potrf.h dlib/matrix/lapack/syev.h dlib/matrix/lapack/syevr.h Revision: 2f8a1f479e93 Date: Sep 11, 2010 (14:44:04 UTC) Added the make_symmetric() function and modified the eigenvalue decomposition code so that it uses the more optimized paths when this matrix operator is present. Modified dlib/matrix/matrix_eigenvalue.h dlib/matrix/matrix_la.h dlib/matrix/matrix_la_abstract.h dlib/matrix/matrix_utilities.h dlib/matrix/matrix_utilities_abstract.h Revision: 0612effe9ec2 Date: Aug 28, 2010 (00:57:52 UTC) Added a cast to avoid a compiler warning. Modified dlib/svm/svm.h Revision: 73bd511bf879 Date: Aug 27, 2010 (21:37:43 UTC) Changed code around a little to avoid problems in gcc when used with mingw. One of the problems was that assign_pixel() would sometimes give the wrong output when optimizations were enabled. This seems to be a bug in mingw's gcc and these code changes avoid triggering it. Modified dlib/gui_widgets/nativefont.h dlib/pixel.h Revision: ab5830a50a0b Date: Aug 15, 2010 (13:09:59 UTC) Added another overload to kernel_matrix() so it can work with random_subset_selector objects. Modified dlib/svm/kernel_matrix.h dlib/svm/kernel_matrix_abstract.h Revision: 5489fbbebcd7 Date: Aug 15, 2010 (13:09:17 UTC) Added a missing cast. Modified dlib/svm/krr_trainer.h Revision: e21652f32079 Date: Aug 14, 2010 (18:42:40 UTC) Added the running_scalar_covariance object. Modified dlib/statistics/statistics.h dlib/statistics/statistics_abstract.h dlib/test/statistics.cpp Revision: 46c6d86ab494 Date: Aug 14, 2010 (03:48:06 UTC) Fixed compile time bug. Modified dlib/error.h Revision: af0be3f2e32c Date: Aug 14, 2010 (03:32:47 UTC) Changed a few things to avoid compiler errors in visual studio 10. In particular, I removed the EOTHER constant since it conflicts with a #define. Modified dlib/error.h dlib/server/server_kernel_1.h dlib/test/smart_pointers.cpp Revision: 0abfcc69c209 Date: Jul 28, 2010 (23:50:20 UTC) Minor change to get better cache locality. Gives a nice speedup though. Modified dlib/svm/krr_trainer.h Revision: 369af8ffb925 Date: Jul 28, 2010 (23:24:23 UTC) Made the krr_trainer print the EKM projection error when in verbose mode. Modified dlib/svm/krr_trainer.h Revision: 6edadbcaa8e7 Date: Jul 28, 2010 (23:11:47 UTC) Optimized the cost values for a few matrix expressions. Modified dlib/matrix/matrix.h dlib/matrix/matrix_conj_trans.h dlib/matrix/matrix_math_functions.h dlib/matrix/matrix_utilities.h dlib/test/blas_bindings/blas_bindings_gemm.cpp dlib/test/matrix.cpp Revision: f00ec110a2b3 Date: Jul 28, 2010 (23:09:33 UTC) Fixed a compile time bug. Modified dlib/matrix/matrix_blas_bindings.h Revision: ee2c033e5da3 Date: Jul 28, 2010 (21:48:42 UTC) Changed the stopping strategy for the optimization inside the train_probabilistic_decision_function() because it could potentially never stop due to large rounding error when working with very large datasets. Modified dlib/svm/svm.h Revision: 65f559151940 Date: Jul 26, 2010 (02:09:15 UTC) Made specs more clear. Modified dlib/svm/krr_trainer_abstract.h dlib/svm/svm_c_ekm_trainer_abstract.h Revision: f4f85424fad2 Date: Jul 24, 2010 (22:23:46 UTC) Added some missing "explicit" keywords. Modified dlib/optimization/optimization_search_strategies.h dlib/optimization/optimization_search_strategies_abstract.h dlib/optimization/optimization_stop_strategies.h dlib/optimization/optimization_stop_strategies_abstract.h Revision: e64113f651b8 Date: Jul 24, 2010 (21:58:04 UTC) made spec more clear Modified dlib/optimization/optimization_search_strategies_abstract.h Revision: 8ebcb2815905 Date: Jul 24, 2010 (21:28:46 UTC) Added missing get/set epsilon functions to the RVM training objects. I also changed the default epsilon from 0.0005 to 0.001. Modified dlib/svm/rvm.h dlib/svm/rvm_abstract.h Revision: 57227bb5a448 Date: Jul 24, 2010 (21:07:49 UTC) Changed the train_probabilistic_decision_function() routine so that it uses a more numerically stable method to perform its maximum likelihood optimization. Modified dlib/svm/svm.h Revision: ce16c774cbf0 Date: Jul 24, 2010 (21:04:18 UTC) Changed print statement so the output is slightly less confusing. Modified dlib/optimization/optimization_stop_strategies.h Revision: cd604f189c19 Date: Jul 24, 2010 (19:49:12 UTC) Added a simple newton search strategy. Modified dlib/optimization/optimization_search_strategies.h dlib/optimization/optimization_search_strategies_abstract.h Revision: a0d96d0d8a41 Date: Jul 24, 2010 (19:46:41 UTC) Added be_verbose() functions to the stop strategies. Now you can tell them to print the progress of an optimization algorithm to standard out. Modified dlib/optimization/optimization_stop_strategies.h dlib/optimization/optimization_stop_strategies_abstract.h Revision: b29cb7d29a3e Date: Jul 24, 2010 (17:53:51 UTC) Added a max iterations parameter to the line_search() function. Modified dlib/optimization/optimization.h dlib/optimization/optimization_line_search.h dlib/optimization/optimization_line_search_abstract.h dlib/optimization/optimization_search_strategies.h dlib/optimization/optimization_search_strategies_abstract.h Revision: 5333d6fc6c32 Date: Jul 24, 2010 (03:23:01 UTC) Optimized the krr_trainer a bit. It's now twice as fast as it was before. I also increased the default number of lambdas in the search list. Modified dlib/svm/krr_trainer.h dlib/svm/krr_trainer_abstract.h Revision: a78417a95902 Date: Jul 24, 2010 (02:22:38 UTC) Made spec more clear Modified dlib/svm/function_abstract.h Revision: 5e40fbf662d6 Date: Jul 24, 2010 (00:37:57 UTC) Just renamed some things and made the spec more clear. Modified dlib/svm/krr_trainer.h dlib/svm/krr_trainer_abstract.h dlib/test/svm.cpp Revision: 54eeb4cd7261 Date: Jul 23, 2010 (21:46:51 UTC) Added citation Modified dlib/svm/krr_trainer_abstract.h Revision: bb3821c71b70 Date: Jul 23, 2010 (21:36:40 UTC) Added a missing const. Its absence was causing a compile time error. Modified dlib/svm/krr_trainer.h dlib/svm/krr_trainer_abstract.h Revision: f32b3c315e6a Date: Jul 23, 2010 (21:36:06 UTC) Added some tests for the new krr_trainer. I also simplified the checkers board dataset used to test the classifiers a little so that the test runs faster. Modified dlib/test/svm.cpp Revision: 41f148420664 Date: Jul 23, 2010 (20:50:37 UTC) Added an implementation of kernel ridge regression. Modified dlib/svm.h Added dlib/svm/krr_trainer.h dlib/svm/krr_trainer_abstract.h Revision: 60d8afb27109 Date: Jul 23, 2010 (20:20:34 UTC) Changed code slightly to avoid a warning from gcc. Modified dlib/svm/kernel_matrix.h Revision: 403bb1b0a0b0 Date: Jul 18, 2010 (20:04:38 UTC) Added a comment Modified dlib/matrix/matrix_op.h Revision: b6afe34c885b Date: Jul 17, 2010 (16:22:17 UTC) added missing #include Modified dlib/rand/mersenne_twister.h Revision: 77cedc505e44 Date: Jul 17, 2010 (15:10:12 UTC) minor change to avoid compiler error in visual studio. Modified dlib/rand/mersenne_twister.h Revision: 698404d65bc8 Date: Jul 17, 2010 (15:01:11 UTC) Made the random_subset_selector serializable. Modified dlib/statistics/random_subset_selector.h dlib/statistics/random_subset_selector_abstract.h dlib/test/statistics.cpp Revision: 7971d7bda0f1 Date: Jul 17, 2010 (14:54:06 UTC) Fixed typo Modified dlib/rand/rand_kernel_abstract.h Revision: 28c980cd1050 Date: Jul 17, 2010 (14:31:22 UTC) updated spec Modified dlib/rand/rand_kernel_abstract.h Revision: 08ad2d9b4623 Date: Jul 17, 2010 (14:24:41 UTC) - Made the random number generator serializable - Fixed a bug in the random number generator where setting the seed back to "" didn't result in the object going back to it's initial state. Modified dlib/rand/mersenne_twister.h dlib/rand/rand_kernel_1.h dlib/test/rand.cpp Revision: c2aa629af9e4 Date: Jul 17, 2010 (13:33:29 UTC) Changed the configure_loggers_from_file() function so that it throws a specific exception rather than dlib::error upon encountering a problem. Modified dlib/logger/logger_config_file.cpp dlib/logger/logger_config_file.h Revision: f470125bd0c6 Date: Jul 08, 2010 (00:24:12 UTC) Added some missing commas Modified dlib/bound_function_pointer/bound_function_pointer_kernel_abstract.h |