Commit Graph

576 Commits

Author SHA1 Message Date
Davis King ee2a0070db Added comment to show how to deserialize a network. 2016-05-15 14:52:33 -04:00
Davis King ba0f7c5c53 Added a function to dnn_trainer that lets you query the "steps without
progress" estimate.  I also renamed the get/set functions for the shrink amount
to have a consistent name and use the word "factor" instead of "amount".
2016-05-15 14:48:06 -04:00
Davis King 13cc545da3 clarified comments. 2016-05-15 14:31:06 -04:00
Davis King 66166c674d Changed the solver interface to take the learning rate and the layer details
object as an input.  This allows the solvers to exhibit a more complex behavior
that depends on the specific layer.  It also removes the learning rate from the
solver's parameter set and pushes it entirely into the core training code.
This also removes the need for the separate "step size" which previously was
multiplied with the output of the solvers.

Most of the code is still the same, and in the core and trainer the step_size
variables have just been renamed to learning_rate.  The dnn_trainer's relevant
member functions have also been renamed.

The examples have been updated to reflect these API changes.  I also cleaned up
the resnet definition and added better downsampling.
2016-05-14 20:30:45 -04:00
Davis King 1e70c721a4 Made example use the "everything" version of avg pooling. 2016-05-07 14:30:42 -04:00
Davis King 4a7633056c Fixed avg pooling filter sizes to avoid errors with the new rules about
non-one based strides.
2016-05-04 21:40:29 -04:00
Davis King 1f0705ae92 clarified example 2016-04-28 19:41:27 -04:00
Davis King d31723ff45 Fixed typo in example 2016-04-19 06:44:31 -04:00
Davis King b16cc99e8f Added comments about using multiple GPUs 2016-04-18 22:48:07 -04:00
Davis King 603d474352 - Renamed network_type::num_layers to network_type::num_computational_layers.
- Made layer() recurse into repeat objects so that the index given to layer()
  does what you would expect.
- Added an operator<< for network objects that prints the network architecture.
2016-04-16 10:50:15 -04:00
Davis King 61591b13e2 Seeded random number generator with the clock since that's generally a good
thing to do for this kind of training.
2016-04-11 23:11:18 -04:00
Davis King 02c27ff916 fixed formatting 2016-04-11 23:06:32 -04:00
Davis King 423cd85594 renamed a file
--HG--
rename : examples/dnn_mnist_resnet_ex.cpp => examples/dnn_mnist_advanced_ex.cpp
2016-04-11 22:57:11 -04:00
Davis King 902a2beeaf Fleshed out these examples more. 2016-04-11 22:55:49 -04:00
Davis King 02b844ea5c Fixed grammar and clarified a few things. 2016-04-11 21:18:14 -04:00
Davis King 7d7c932f29 Added a narrative to this example. 2016-04-10 17:30:45 -04:00
Davis King 67a81c1c51 Made examples work with new fc<> template. 2016-04-10 12:11:19 -04:00
Davis King f9cb3150d0 upgraded to cudnn v5. Also changed the affine_ layer to not be templated but
to automatically select the right mode.  The serialization format for bn_
layers has also changed, but the code will still be able to deserialize older
bn_ objects.
2016-04-10 10:52:40 -04:00
Davis King fe168596a2 Moved most of the layer parameters from runtime variables set in constructors
to template arguments.  This way, the type of a network specifies the entire
network architecture and most of the time the user doesn't even need to do
anything with layer constructors.
2016-04-08 23:12:53 -04:00
Davis King 030f5a0a76 A bit more cleanup 2016-03-27 10:50:52 -04:00
Davis King 47bdf95fbe added more stuff to example 2016-03-27 10:29:30 -04:00
Davis King 8f0bda5f82 Changed this example to be another mnist example so it runs in a non-insane
amount of time.

--HG--
rename : examples/dnn_mit67_ex.cpp => examples/dnn_mnist_resnet_ex.cpp
2016-03-26 23:16:43 -04:00
Davis King 8d3ec0f9d3 Removed cruft 2016-03-26 23:07:38 -04:00
Davis King 517858adf5 changed to run on image net 2016-02-27 09:23:18 -05:00
Davis King 0ecff0e6a4 Removed gif filtering 2016-02-08 09:13:02 -05:00
Davis King d1b307a8ee Added some dnn examples. 2016-02-06 22:39:43 -05:00
Davis King ab4920a4cb added missing #include 2015-08-11 06:51:35 -04:00
Davis King 0c561f2b89 Switched more URLs to dlib.net rather than sourceforge.net. 2015-07-24 08:15:40 -04:00
Davis King 1294d6d398 fleshed out this example with comments 2015-06-02 17:47:46 -04:00
Fabio Perez 5fb4c584bd Revise help message 2015-05-30 22:00:36 -03:00
Davis King 52f3e558a4 Added initial version of model predictive control example program. 2015-05-30 19:04:50 -04:00
Davis King 0d6830a48d added comments about using imglab 2015-03-29 16:47:37 -04:00
Davis King a80553612a cleaned up examples 2015-03-22 19:33:17 -04:00
Davis King 76230b9971 Added an example program for the new perspective_window object. 2015-03-22 19:22:07 -04:00
Davis King 5694fada70 Added spectral_cluster() example 2015-02-11 07:55:42 -05:00
Davis King 27510c8a09 Added comments 2015-02-03 15:33:11 -05:00
Davis King 35aba916d3 Added an example for the correlation_tracker 2015-02-03 14:01:37 -05:00
Davis King 4d223d4d54 Made example's CMakeLists.txt file a little more tutorial like. 2015-01-31 09:43:57 -05:00
Davis King de37509455 added a SQLite example program 2015-01-29 20:53:01 -05:00
Davis King a9c5c98d56 Added sqlite example. Needs comments 2015-01-27 23:40:53 -05:00
Davis King 7596c094a6 fixed spelling error in comment 2015-01-26 17:58:35 -05:00
Davis King afa4fe0c23 Fixed some grammar and added a note about the bias term. 2015-01-05 17:39:37 -05:00
Davis King 773fe59a34 Fixed grammar 2014-12-27 15:05:25 -05:00
Davis King f3da116159 Added an example for svm_c_trainer. 2014-12-09 18:13:45 -05:00
Davis King ad99a6668e Added an example program for the new hough_transform object. 2014-12-09 17:40:19 -05:00
Davis King bb673f4099 Added example of accessing individual pixels 2014-12-09 08:08:02 -05:00
Davis King f00c7e0f42 Added max cost assignment example program 2014-12-07 12:11:13 -05:00
Davis King 664ea355f4 Another minor cmake change to avoid warnings 2014-12-06 08:34:19 -05:00
Davis King ae826a408f Increased min required cmake version to avoid warnings
from OpenCV cmake scripts.
2014-11-15 12:10:31 -05:00
Davis King dac39d2b95 Added an example showing how to use OpenCV's frame grabber
for face pose estimation.
2014-11-15 11:39:26 -05:00
Davis King 3eae0bcb00 Changed example to avoid tying a stream to itself since some iostream libraries
have a bug that causes them to crash when you do this.
2014-09-30 19:21:38 -04:00
Davis King f4f395975e Added scope qualifiers to some mutex objects to avoid a name collision
in newer versions of clang.
2014-09-27 09:57:28 -04:00
Davis King 5c78a9c3a6 Updated style sheet so face parts aren't all smashed together when viewed in a
browser.
2014-09-17 20:37:26 -04:00
Davis King bd4056346b Added code to show how to chip out the faces. 2014-09-06 15:44:09 -04:00
Davis King 5e4aaf2e53 improved examples 2014-08-24 10:37:19 -04:00
Davis King b191400a00 Added initial version of shape training example 2014-08-21 22:42:48 -04:00
Davis King 5ae170c461 Added a face landmarking example program 2014-08-21 22:11:55 -04:00
Davis King dd3bf1f2c5 Changed the example to recommend using something like the f1-score when using
BOBYQA for model selection.
2014-06-23 16:06:23 -04:00
Davis King e3af40d5a5 Updated example to use evaluate_detectors() 2014-05-26 18:46:35 -04:00
Davis King c6d778eaf9 Made the examples use the new simplified file serialization API. 2014-05-08 21:07:56 -04:00
Davis King be7457770e Fixed minor typos 2014-04-26 19:56:18 -04:00
Davis King d763696f68 Added an example program showing how to setup a logger hook 2014-04-26 17:32:06 -04:00
Davis King 2821926236 merged changes and updated abstract file. 2014-04-22 20:13:47 -04:00
Davis King 137b7f80c8 Simplified example program. 2014-04-05 16:56:48 -04:00
Csaba Kertesz 31078adee9 Add maximal iterations option for relevance vector machine trainer 2014-03-16 12:19:19 +01:00
Davis King 8e1e548a70 Updated this example to use the scan_fhog_pyramid version of the object
detector since it is much more user friendly.
2014-03-08 13:12:48 -05:00
Davis King 1e9a6297dc fixed grammar 2014-01-12 10:15:46 -05:00
Davis King e66fa51ebe clarified examples 2014-01-11 22:40:43 -05:00
Davis King 4f8a93975f clarified example 2014-01-11 14:52:28 -05:00
Davis King 015727cd5f clarified example 2014-01-11 11:30:52 -05:00
Davis King ba37c88fbf Clarified examples now that we have more object detectors in the library. 2014-01-11 10:40:39 -05:00
Davis King 20afefd79b clarified example 2014-01-09 23:23:04 -05:00
Davis King c7346758d8 improved example program documentation 2014-01-09 23:19:44 -05:00
Davis King f698db9cb5 Slightly improved example. Still needs a lot of work though. 2014-01-05 20:01:49 -05:00
Davis King 20dde81bd1 Added comments to this example program 2014-01-05 13:53:21 -05:00
Davis King 417c5578e1 Added face detection example program 2014-01-02 20:53:28 -05:00
Davis King 101e316fd1 Added comments about the source of the face images 2014-01-02 18:49:05 -05:00
Davis King f12921390a A minor change to avoid compiler warnings. 2013-04-22 08:23:24 -04:00
Davis King 5000b9f0ac Added more comments about how to pack multiple detectors into a single
object_detector.
2014-03-07 19:45:18 -05:00
Davis King f5a717a5fa Fixed warning on visual studio. 2014-03-01 21:38:47 -05:00
Davis King c7227d8f41 Added more comments 2014-02-22 17:49:33 -05:00
Davis King 114f677d74 Fixing grammar in comments. 2014-02-22 16:07:17 -05:00
Davis King f9d3da11d0 Fleshed out example program. 2014-02-22 15:52:28 -05:00
Davis King 5bcfa6853e added more comments 2014-02-20 22:45:46 -05:00
Davis King 8296869bed Added initial version of the learning to track example program. 2014-02-20 22:39:48 -05:00
Davis King 746f4282dd Fixed awkward wording 2014-02-05 18:16:11 -05:00
Davis King 43ce7908b9 Added skeleton of fhog object detection example. 2014-01-01 19:12:06 -05:00
Davis King 1cff4030b9 fixed #include 2013-11-17 20:26:37 -05:00
Davis King 8c89480d1b Fixed broken #include 2013-11-17 19:18:52 -05:00
Davis King 46bb6dc8f5 Added code showing how to get the individual decision functions out of a
multiclass decision function object.
2013-11-17 13:47:26 -05:00
Davis King 49f8b2860f Clarified matrix usage in the examples 2013-11-17 12:42:41 -05:00
Davis King 8fc2f43607 Fixed grammar/confusing sentence. 2013-11-16 09:15:52 -05:00
Davis King 3fa470e809 Added missing #include to example 2013-11-05 18:31:29 -05:00
Davis King 7eadede7ae Clarified some things in the example and also added code showing how to use the
new bounds constrained solver.
2013-10-04 22:13:03 -04:00
Davis King e0a6e30581 Refactored the image pyramid code. Now there is just one templated object,
pyramid_down and you give it the downsampling amount as a template argument.
2013-10-03 21:36:51 -04:00
Davis King c9339b7934 Fixed grammar and added minor clarifications 2013-10-01 23:05:46 -04:00
Davis King cd431a5bb0 Added an example for the new HOG feature extractor.
--HG--
rename : examples/image_ex.cpp => examples/fhog_ex.cpp
2013-10-01 22:58:56 -04:00
Davis King fdd035f451 Removed a bunch of checks that prevented users from using references to
functions with the optimization code and forced the use of function pointers.
This was to avoid triggering a bug in gcc 4.0.  Since that compiler is no
longer officially supported by dlib I've removed these checks to increase
usability.
2013-09-21 14:37:54 -04:00
Davis King 47dbb7b8cd removed unneeded #includes 2013-09-10 19:35:55 -04:00
Davis King c72f709bbc Fixed incorrect type used for iterator in example program. 2013-08-10 09:21:01 -04:00
Davis King c87571ce4e clarified example 2013-08-08 19:37:29 -04:00
Davis King e20a2190e2 Added structural svm solver example program 2013-08-08 19:07:50 -04:00
Davis King 36d5677a26 Updated example program to work best with the new code 2013-08-06 00:33:50 -04:00
Davis King 1b23bb13e9 Updated comments in examples to account for recent code change. 2013-07-25 20:38:23 +10:00
Davis King 06d1331c4d Fixed incorrect comment in example program. 2013-07-13 16:30:22 -04:00
Davis King 5dace981d8 Updated matrix example to show how to print in csv format. 2013-07-08 22:19:44 -04:00
Davis King f74ccbdabc Improved instructions for avoiding the black console window when using visual studio. 2013-06-22 22:49:36 -04:00
Davis King c3909170e8 updated example 2013-06-16 12:07:32 -04:00
Davis King c1c6fb505a improved sequence segmentation examples 2013-06-06 20:27:29 -04:00
Davis King 51d291a8c3 clarified example program 2013-06-04 21:33:59 -04:00
Davis King 3330d34fd1 Added an example for the sequence_segmenter 2013-06-03 21:26:56 -04:00
Davis King e8276602c1 Removed non-standard header which wasn't compiling in visual studio 2005 2013-06-03 07:03:02 -04:00
Davis King caf93adea1 fixed grammar 2013-06-01 19:29:40 -04:00
Davis King dc24bef443 fixed some typos 2013-06-01 19:20:03 -04:00
Davis King 94d3cf86d5 Added a one class classifier example program 2013-06-01 19:14:31 -04:00
Davis King d93a02e803 Minor cleanup 2013-05-24 21:52:44 -04:00
Davis King 7897b163e5 updated examples cmake file 2013-05-24 21:42:40 -04:00
Davis King de48f60106 minor cleanup and formatting 2013-05-24 21:34:24 -04:00
Davis King ad427072d5 merged 2013-05-24 21:16:50 -04:00
Steve Taylor e032a77ed4 Renamed numerical integration header to dlib/numerical_integration.h. Changed relevant headers to include numerical_integration.h Fixed documentation in integrate_function_adapt_simpson_abstract.h 2013-05-24 01:02:20 -04:00
Steve Taylor 6ca3a9f2e9 Implemented a numerical quadrature method based on an adaptive
Simpson rule.  Added unit tests and supporting examples for this
function.
2013-05-22 22:36:33 -04:00
Steve Taylor bf38cba574 Implemented a numerical quadrature method based on an adaptive
Simpson rule.  Added unit tests and supporting examples for this
function.
2013-05-19 20:52:19 -04:00
Davis King 6be288652a Made example slightly clearer. 2013-05-18 08:37:19 -04:00
Davis King 13b8c5f3d5 Simplified example and added a call to jet() 2013-05-14 20:29:05 -04:00
Steve Taylor 691e1ab17a Updated numeric_constants.h. Added a first version of
a numerical integration method to /examples/adapt_simp.cpp
2013-05-04 19:39:57 -04:00
Davis King adf0bc4f0a clarified examples 2013-04-12 20:52:05 -04:00
Davis King fc6d6744d8 updated comments 2013-04-09 17:45:42 -04:00
Davis King 50b636c131 Added notes that the object detector validation methods also output MAP values. 2013-03-31 15:45:56 -04:00
Davis King 7ff4f6f485 clarified example 2013-03-30 21:57:54 -04:00
Davis King 9f530e06f7 Removed unneeded #include 2013-03-17 14:00:50 -04:00
Steve Taylor a75645b1af Added a numerical constants file numeric_constants.h. Expanded the
running_stats object in statistics.h by including two functions that
compute the unbiased empirical skewness and kurtosis of a set
of real numbers.  Added unit tests for these functions in statistics.cpp.
2013-03-17 13:32:30 -04:00
Davis King a97a2c90f2 simplified SURF example program 2013-03-03 17:25:10 -05:00
Davis King 26639d629b minor change to avoid compiler warning 2013-03-03 16:33:35 -05:00
Davis King 94d1e7874f Changed code slightly to avoid a bug in gcc 4.1.2 2013-03-03 16:27:49 -05:00
Davis King a3b6df3ef3 Added get_next_double_click() to the image_ex example. 2013-03-03 12:46:07 -05:00
Davis King ce6bdde581 improved comments 2013-03-03 12:13:05 -05:00
Davis King 649ed2f160 updated example 2013-03-03 12:05:14 -05:00
Davis King 1f8f1261e3 Added scope qualifiers to dlib::array so there isn't a name conflict
on C++11 compilers.
2013-03-03 10:40:33 -05:00
Davis King 67c7ebd5d6 Added initial version of parallel for loop example 2013-03-02 23:43:46 -05:00
Davis King f52f4522b1 Added a comment. 2013-02-18 09:14:25 -05:00
Davis King 0a39006dea Simplified cmake scripts 2013-02-10 14:14:33 -05:00
Davis King 596201e72d clarified print statements 2013-01-26 16:44:46 -05:00
Davis King cd8ba14ff0 Added an example showing how to use second derivative information
when using the optimization tools.
2013-01-26 16:37:38 -05:00
Davis King 03ec260cb3 reformatted comments. 2013-01-17 19:20:38 -05:00
Davis King 91e8594b23 made examples slightly clearer 2013-01-17 19:18:35 -05:00
Davis King 64a5789fdf simplified code 2013-01-08 20:54:35 -05:00
Davis King d7df21a8e1 switched examples over to the new mat() method. 2012-12-23 09:25:22 -05:00
Davis King afdb28f073 updated comment 2012-12-16 09:06:56 -05:00
Davis King 962ba9ae94 Added a discussion of the parser's set_group_name() method. 2012-12-12 21:01:05 -05:00
Davis King 34f28d4ad6 Minor cleanup 2012-12-12 19:58:18 -05:00
Davis King d84b5d822e Added a comment telling the user that there are higher level threading
tools they would probably prefer to use.
2012-12-08 16:14:26 -05:00
Davis King 7b43a3c6ac All I did in this change was switch from using #include "" syntax
to #include <> syntax.
2012-12-08 09:32:13 -05:00
Davis King 3956330d1f simplified examples 2012-12-05 19:36:39 -05:00
Davis King bad30bcf86 Fixed grammar 2012-11-23 22:41:09 -05:00
Davis King cc2de0e9c0 Improved the ranking example 2012-11-23 18:15:56 -05:00
Davis King 5e8da51849 Added initial version of svm rank example 2012-11-23 16:09:41 -05:00
Davis King 259a4542a8 Simplified example 2012-11-18 13:20:49 -05:00
Davis King bfb25b68ec Simplified code 2012-11-18 13:01:08 -05:00
Davis King e7baa76655 added a comment 2012-11-18 00:34:21 -05:00
Davis King 0b7e3020de Added the parse_xml() routines 2012-11-18 00:29:51 -05:00
Davis King b3254eaf0c simplified code 2012-11-17 23:53:22 -05:00
Davis King 0eb9fb52f5 simplified example 2012-11-17 23:17:17 -05:00
Davis King 93a232d3e0 Fixed bugs in examples. 2012-11-17 14:55:49 -05:00
Davis King 37a8bfebc9 Added an example for the iosockstream and server_iostream objects. Also
reorganized the sockets example programs a little.

--HG--
rename : examples/sockstreambuf_ex.cpp => examples/server_iostream_ex.cpp
rename : examples/sockets_ex_2.cpp => examples/sockstreambuf_ex.cpp
2012-11-17 14:48:42 -05:00
Davis King 06501db2e8 simplified examples 2012-11-17 12:07:04 -05:00
Davis King 0f300f703b fixed grammar 2012-11-15 18:24:21 -05:00
Davis King 64539e6530 fixed grammar 2012-11-12 20:09:03 -05:00
Davis King c495350d53 added comments to this example program 2012-11-12 19:26:28 -05:00
Davis King e9e0b65d6f simplified example program 2012-11-12 16:07:13 -05:00
Davis King f7165919bf Simplified example programs 2012-11-12 15:25:35 -05:00
Davis King 1493769dee removed cruft 2012-11-12 09:46:20 -05:00
Davis King 46cbfba856 Added a reference to a useful book 2012-11-08 20:46:35 -05:00
Davis King 943874c5a7 fixed spacing 2012-11-07 21:45:06 -05:00
Davis King 35d390282f Updated examples to use simpler syntax. 2012-11-07 21:41:50 -05:00
Davis King 444dd70d34 Removed try/catch block since it is now redundant 2012-11-07 18:11:28 -05:00
Davis King 4c3578dd7f updated http example 2012-11-06 22:36:24 -05:00
Davis King 655d3e1f74 updated example #include 2012-11-04 20:46:31 -05:00
Davis King ac4598aeaa Made example show how to use connect_to() 2012-10-24 23:05:33 -04:00
Davis King 6bf4a648b0 Minor cleanup 2012-10-22 21:25:07 -04:00
Davis King 8319811880 Simplified example programs slightly 2012-10-21 22:08:48 -04:00
Davis King 12a393f3a8 code cleanup 2012-10-21 19:40:19 -04:00
Davis King 6a05573ec8 Added a BSP example. 2012-10-21 19:22:42 -04:00
Davis King 2c1332b382 Updated examples to use the simpler start_async() to start the servers. 2012-08-31 21:48:34 -04:00
Davis King e19f5d65fe updated docs and specs 2012-08-26 15:07:28 -04:00
Davis King 3bcab68a3e Fully qualified some more dlib set objects. 2012-08-24 23:16:01 -04:00
Davis King d1b579f09e Added try/catch block to main(). 2012-07-29 20:18:00 -04:00
Davis King 8656a2d0be Fixed spelling errors in comments. 2012-07-10 21:50:17 -04:00
Davis King f3310e68e5 Polished the example a little. 2012-05-20 22:10:25 -04:00
Davis King 371e3f397a Simplified code slightly. 2012-05-20 20:25:01 -04:00
Davis King 3243bbfd15 Added an example program for the new graph labeling stuff. 2012-05-20 18:25:49 -04:00
Davis King 08a95a42ed Flipped the order of two commands so that the selected object boxes
are printed immediately.
2012-04-04 20:19:55 -04:00
Davis King 1d3b429f40 improved comments 2012-03-22 18:44:47 -04:00
Davis King 33939c4990 fixed comment 2012-03-21 21:37:27 -04:00
Davis King c42a26be9d updated cmakelists 2012-03-21 21:09:01 -04:00
Davis King 2668d1baa2 updated due to name change 2012-03-21 21:08:33 -04:00
Davis King f477c84261 renamed this file
--HG--
rename : examples/object_detector_ex_2.cpp => examples/train_object_detector.cpp
2012-03-21 21:07:51 -04:00
Davis King fa58967115 Added another object detection example program
--HG--
rename : examples/object_detector_ex.cpp => examples/object_detector_ex_2.cpp
2012-03-21 21:07:05 -04:00
Davis King 62f4f823e0 Made this example use the verbose version of setup_grid_detection_templates(). 2012-03-20 18:12:37 -04:00
Davis King 3432108e46 Added an example use of heatmap() 2012-03-18 16:38:11 -04:00
Davis King ad1c665ab4 All I did in this commit was remove any of the ::kernel_1a, ::expand_1a,
qualifiers from any uses of dlib::array.
2012-03-10 14:51:55 -05:00