Commit Graph

4909 Commits

Author SHA1 Message Date
Davis King a7e55c79e8 Added the option to force the last weight to 1 to the assignment learning
tools.
2015-01-05 08:20:27 -05:00
Davis King 097354f7ed Fixed assign_border_pixels(img, rect) so that it correctly zeros
an image when an empty rectangle is supplied.  Previously, it just
did nothing to the image in this case.
2015-01-04 09:11:34 -05:00
Davis King 7f7a93a21d A minor change to allow a wider variety of output image types to be used. In
particular, this change allows complex valued images to be the output of
extract_image_chips().
2015-01-03 23:39:38 -05:00
Davis King 5b1fc42a82 updated docs 2015-01-03 23:35:52 -05:00
Davis King 5b5393f6ac clarified example 2015-01-03 23:33:46 -05:00
Davis King c335bf6756 Fixed the python doc string so that it's correct relative to the python
API.  Also made find_candidate_object_locations() correctly include any
input boxes in the call to the C++ version of the function.
2015-01-03 23:26:28 -05:00
Davis King ab424628dc Made this file executable 2015-01-03 23:26:02 -05:00
Vinh Khuc 173bb97f33 Explained the difference between pykvals in the Python API and kvals in C++ code 2015-01-03 15:03:05 -05:00
Vinh Khuc 067e36b505 Added a Python example for find_candidate_object_locations 2015-01-03 14:45:46 -05:00
Vinh Khuc bf06ce7185 Added Python-binding for find_candidate_object_locations 2015-01-03 01:11:52 -05:00
Davis King 132b1abd1f Made cmake not use the installed libjpeg on apple systems because it's broken
on some newer OS X installs.
2015-01-01 19:08:06 -05:00
Davis King 01f030dda1 Made cmake check that libpng and libjpeg actually contain the link symbols they
are supposed to since, on some systems, these libraries aren't installed
correctly and will cause linker errors if used.
2014-12-29 19:50:05 -05:00
Davis King fa60632d28 Fixed a bug in extract_image_chips() and get_mapping_to_chip() that caused
incorrect outputs when the requested chip stretched the image unevenly
vertically or horizontally.  This is because we used the best similarity
transform rather than affine transform between the image and the output chip.
2014-12-29 17:55:40 -05:00
Davis King 201c1601c8 Added image_traits specializations for const types because it makes
certain compiler errors you get when accidentally trying to mutate
a const image a little easier to understand.
2014-12-29 17:26:14 -05:00
Davis King 7cc653deda Added a link to dlib on github 2014-12-28 07:45:43 -05:00
Davis King 44e3d6b817 cleaned up cmake file a little 2014-12-28 07:31:28 -05:00
Davis King a093553e1d updated docs 2014-12-27 18:15:18 -05:00
Davis King ef06f0e8d5 Fixed grammar 2014-12-27 18:15:07 -05:00
Davis King ad6c87b054 Merge github.com:davisking/dlib 2014-12-27 15:32:29 -05:00
Davis King 1ab3482597 Clarified a few comments and simplified the serialization code a bit.
Also just cleaned up a few minor details.
2014-12-27 15:30:56 -05:00
Davis King 773fe59a34 Fixed grammar 2014-12-27 15:05:25 -05:00
Davis King 3a5b4e5f25 Fixed typo in assert I introduced a moment ago. 2014-12-27 14:56:22 -05:00
Davis King 96f3016a23 The nu parameter of the shape_predictor must be in the range (0,1].
I changed the spec to reflect this.
2014-12-27 14:10:59 -05:00
Davis King d4cbaecdcf Created release v18.12 2014-12-20 16:24:33 -05:00
Davis King 4ec7f020fa Added tag v18.12 for changeset 4e3941b13ca8 2014-12-20 16:24:33 -05:00
Davis King 09d154f725 Fixed policy setting so it works on old cmakes 2014-12-20 16:21:54 -05:00
Davis King 014f1d1654 Minor change to avoid warnings from newer cmake 2014-12-20 16:01:02 -05:00
Davis King 493c713acd Removed quoting from path strings 2014-12-20 15:44:35 -05:00
Davis King d502fc6f54 Fixed finding of boost python 2014-12-20 09:25:49 -05:00
Davis King aa2c718cb2 updated docs 2014-12-20 09:07:58 -05:00
Davis King f3bdbf3be8 Added license statements and also converted line endings to unix format 2014-12-19 21:47:47 -05:00
Davis King d8dc5965a2 updated docs 2014-12-19 21:37:45 -05:00
Davis King ce14edcb9e added skeleton unit test 2014-12-19 20:18:55 -05:00
Davis King 0f24b1ff02 updated docs 2014-12-19 18:03:04 -05:00
Davis King 8bf02e3b47 Slightly improved skeleton output 2014-12-19 17:58:42 -05:00
Davis King 7f5b85a0f7 Added skeleton() 2014-12-19 08:02:31 -05:00
Davis King f16022e2a5 updated docs 2014-12-15 16:18:40 -05:00
Davis King da48facb19 Changed extract_image_chips() slightly so that it can take non-resizable images
like cv_image as input.
2014-12-15 16:13:53 -05:00
Davis King 02c377e91e merged 2014-12-14 19:37:48 -05:00
Davis King 53c5dd35f2 minor cleanup 2014-12-14 12:01:08 -05:00
Patrick Snape 37af35b55e Re-add the cached object detector
A little bit hacky, but should be fine. Supports both fhog
detectors and the "cached" simple_object_detector. Also, maintains
the upscale parameter for testing
2014-12-12 16:22:57 +00:00
Patrick Snape fbe597be03 Add facial landmark prediction examples for Python 2014-12-11 15:01:08 +00:00
Patrick Snape 30869fbe03 Change logic for upsampling printing 2014-12-11 15:00:39 +00:00
Patrick Snape dd19ce846e Update the interface to be more Pythonic
This is the biggest change so far. Now, there are two different
classes of interface. One where you pass ONLY file paths,
and one where you pass ONLY Python objects.

The file paths are maintained to keep a matching interface with
the C++ examples of dlib. So shape predicition and object
detection can be trained using the dlib XML file paths and then
serialize the detectors to disk.

Shape prediction and object detection can also be trained using
numpy arrays and in-memory objects. In this case, the predictor
and detector objects are returned from the training functions.
To facilitate serializing these objects, they now have a 'save'
method.

Tetsing follows a similar pattern, in that it can take either XML
files are or in-memory objects. I also added back the concept of
upsampling during testing to make amends for removing the
simple_object_detector_py struct.
2014-12-11 14:06:05 +00:00
Davis King e4bc15fa9d Made gaussian_blur return a rectangle that defines which part of the image
has valid outputs.
2014-12-11 08:00:00 -05:00
Patrick Snape 8db3f4e572 Add a save method to detectors and predictors
Also, removed the saving of the upsample which I missed from
before (since I'm not using the struct now). I understand why
the upsample was being saved, but I don't necessarily agree it
is particularly useful as you should really be upsampling on
a case by case basis at test time.
2014-12-11 12:34:20 +00:00
Patrick Snape 5b485a628b Properly handle turning the GUI off 2014-12-11 12:05:10 +00:00
Patrick Snape e801bd6ab5 Refactor the GUI code out
I also cleaned up a bunch of code. I'm not sure why the
simple_object_detector was keeping track of the upsample amount,
since it can't even be passed as an argument to the constructor.
Therefore, I removed the simple_object_detector_py and the second
declaration of the hog object detector. I also changed the
view code to optionally take keyword args of color and added
a single view of a rectangle.

Finally, I added viewing of the shape parts.
2014-12-11 11:46:01 +00:00
Patrick Snape 697aecb420 Add rendering of faces (lines)
Can either be a list of full_object_detections or a single
full_object_detection. I couldn't get the vector type to work
for full_object_detection due to a template error.
2014-12-11 10:28:14 +00:00
Patrick Snape af82bc402f Sort out PEP8 issues in the examples 2014-12-11 09:44:50 +00:00