| #!/usr/bin/python | |
| # | |
| # This example shows how to use find_candidate_object_locations(). The | |
| # function takes an input image and generates a set of candidate rectangles | |
| # which are expected to bound any objects in the image. | |
| # It is based on the paper: | |
| # Segmentation as Selective Search for Object Recognition by Koen E. A. van de Sande, et al. | |
| # | |
| # Typically, you would use this as part of an object detection pipeline. | |
| # find_candidate_object_locations() nominates boxes that might contain an | |
| # object and you then run some expensive classifier on each one and throw away | |
| # the false alarms. Since find_candidate_object_locations() will only generate | |
| # a few thousand rectangles it is much faster than scanning all possible | |
| # rectangles inside an image. | |
| # | |
| # | |
| # COMPILING/INSTALLING THE DLIB PYTHON INTERFACE | |
| # You can install dlib using the command: | |
| # pip install dlib | |
| # | |
| # Alternatively, if you want to compile dlib yourself then go into the dlib | |
| # root folder and run: | |
| # python setup.py install | |
| # | |
| # Compiling dlib should work on any operating system so long as you have | |
| # CMake installed. On Ubuntu, this can be done easily by running the | |
| # command: | |
| # sudo apt-get install cmake | |
| # | |
| # Also note that this example requires Numpy which can be installed | |
| # via the command: | |
| # pip install numpy | |
| import dlib | |
| image_file = '../examples/faces/2009_004587.jpg' | |
| img = dlib.load_rgb_image(image_file) | |
| # Locations of candidate objects will be saved into rects | |
| rects = [] | |
| dlib.find_candidate_object_locations(img, rects, min_size=500) | |
| print("number of rectangles found {}".format(len(rects))) | |
| for k, d in enumerate(rects): | |
| print("Detection {}: Left: {} Top: {} Right: {} Bottom: {}".format( | |
| k, d.left(), d.top(), d.right(), d.bottom())) | |