From b5f8ee61a7f7e9bd291dd26b0585d03eb686c941 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Sun, 5 May 2024 13:19:16 +0200 Subject: Adding upstream version 1.46.3. Signed-off-by: Daniel Baumann --- ml/dlib/python_examples/cnn_face_detector.py | 85 ---------------------------- 1 file changed, 85 deletions(-) delete mode 100755 ml/dlib/python_examples/cnn_face_detector.py (limited to 'ml/dlib/python_examples/cnn_face_detector.py') diff --git a/ml/dlib/python_examples/cnn_face_detector.py b/ml/dlib/python_examples/cnn_face_detector.py deleted file mode 100755 index 75357a62f..000000000 --- a/ml/dlib/python_examples/cnn_face_detector.py +++ /dev/null @@ -1,85 +0,0 @@ -#!/usr/bin/python -# The contents of this file are in the public domain. See LICENSE_FOR_EXAMPLE_PROGRAMS.txt -# -# This example shows how to run a CNN based face detector using dlib. The -# example loads a pretrained model and uses it to find faces in images. The -# CNN model is much more accurate than the HOG based model shown in the -# face_detector.py example, but takes much more computational power to -# run, and is meant to be executed on a GPU to attain reasonable speed. -# -# You can download the pre-trained model from: -# http://dlib.net/files/mmod_human_face_detector.dat.bz2 -# -# The examples/faces folder contains some jpg images of people. You can run -# this program on them and see the detections by executing the -# following command: -# ./cnn_face_detector.py mmod_human_face_detector.dat ../examples/faces/*.jpg -# -# -# 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 -# or -# python setup.py install --yes USE_AVX_INSTRUCTIONS --yes DLIB_USE_CUDA -# if you have a CPU that supports AVX instructions, you have an Nvidia GPU -# and you have CUDA installed since this makes things run *much* faster. -# -# 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 scikit-image which can be installed -# via the command: -# pip install scikit-image -# Or downloaded from http://scikit-image.org/download.html. - -import sys -import dlib -from skimage import io - -if len(sys.argv) < 3: - print( - "Call this program like this:\n" - " ./cnn_face_detector.py mmod_human_face_detector.dat ../examples/faces/*.jpg\n" - "You can get the mmod_human_face_detector.dat file from:\n" - " http://dlib.net/files/mmod_human_face_detector.dat.bz2") - exit() - -cnn_face_detector = dlib.cnn_face_detection_model_v1(sys.argv[1]) -win = dlib.image_window() - -for f in sys.argv[2:]: - print("Processing file: {}".format(f)) - img = io.imread(f) - # The 1 in the second argument indicates that we should upsample the image - # 1 time. This will make everything bigger and allow us to detect more - # faces. - dets = cnn_face_detector(img, 1) - ''' - This detector returns a mmod_rectangles object. This object contains a list of mmod_rectangle objects. - These objects can be accessed by simply iterating over the mmod_rectangles object - The mmod_rectangle object has two member variables, a dlib.rectangle object, and a confidence score. - - It is also possible to pass a list of images to the detector. - - like this: dets = cnn_face_detector([image list], upsample_num, batch_size = 128) - - In this case it will return a mmod_rectangless object. - This object behaves just like a list of lists and can be iterated over. - ''' - print("Number of faces detected: {}".format(len(dets))) - for i, d in enumerate(dets): - print("Detection {}: Left: {} Top: {} Right: {} Bottom: {} Confidence: {}".format( - i, d.rect.left(), d.rect.top(), d.rect.right(), d.rect.bottom(), d.confidence)) - - rects = dlib.rectangles() - rects.extend([d.rect for d in dets]) - - win.clear_overlay() - win.set_image(img) - win.add_overlay(rects) - dlib.hit_enter_to_continue() -- cgit v1.2.3