裸机Ubuntu16.04配置Dlib19.4 (Python人脸检测例子)

来源:互联网 发布:iphone软件排行 编辑:程序博客网 时间:2024/05/19 12:39


Windows版本Dlib配置链接:  地址

1.准备工作

Dlib库下载链接: 地址


首先需要Cmake以及编译C++成python程序的工具【参考1】

sudo apt-get install libboost-python-dev cmake


如果没有setuptools工具的需要安装,指令如下:

python2.x:

wget https://bootstrap.pypa.io/ez_setup.py -O - | sudo python


python3.x

wget https://bootstrap.pypa.io/ez_setup.py -O - | sudo python3.4

2.安装dlib

接着cd到Dlib的目录运行,参考:地址

运行:(如果提示没权限记得 sudo su)

python setup.py install


3.测试

pythonimport dlib
无任何异常说明安装成功~


4.运行人脸检测

下面来运行经典的Dlib的landmark~


先安装下pip,参考链接:地址

sudo apt-get install python-pip python-dev build-essential sudo pip install --upgrade pip sudo pip install --upgrade virtualenv 

然后安装skimage.io模块,参考:地址

 sudo pip install scikit-image
或者

sudo apt-get install python-skimage


人脸检测


新建fr.py

#!/usr/bin/python# The contents of this file are in the public domain. See LICENSE_FOR_EXAMPLE_PROGRAMS.txt##   This example program shows how to find frontal human faces in an image.  In#   particular, it shows how you can take a list of images from the command#   line and display each on the screen with red boxes overlaid on each human#   face.##   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:#       ./face_detector.py ../examples/faces/*.jpg##   This face detector is made using the now classic Histogram of Oriented#   Gradients (HOG) feature combined with a linear classifier, an image#   pyramid, and sliding window detection scheme.  This type of object detector#   is fairly general and capable of detecting many types of semi-rigid objects#   in addition to human faces.  Therefore, if you are interested in making#   your own object detectors then read the train_object_detector.py example#   program.  ### 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#   if you have a CPU that supports AVX instructions, since this makes some#   things run faster.  ##   Compiling dlib should work on any operating system so long as you have#   CMake and boost-python installed.  On Ubuntu, this can be done easily by#   running the command:#       sudo apt-get install libboost-python-dev 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 sysimport dlibfrom skimage import iodetector = dlib.get_frontal_face_detector()win = dlib.image_window()for f in sys.argv[1:]:    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 = detector(img, 1)    print("Number of faces detected: {}".format(len(dets)))    for i, d in enumerate(dets):        print("Detection {}: Left: {} Top: {} Right: {} Bottom: {}".format(            i, d.left(), d.top(), d.right(), d.bottom()))    win.clear_overlay()    win.set_image(img)    win.add_overlay(dets)    dlib.hit_enter_to_continue()# Finally, if you really want to you can ask the detector to tell you the score# for each detection.  The score is bigger for more confident detections.# The third argument to run is an optional adjustment to the detection threshold,# where a negative value will return more detections and a positive value fewer.# Also, the idx tells you which of the face sub-detectors matched.  This can be# used to broadly identify faces in different orientations.if (len(sys.argv[1:]) > 0):    img = io.imread(sys.argv[1])    dets, scores, idx = detector.run(img, 1, -1)    for i, d in enumerate(dets):        print("Detection {}, score: {}, face_type:{}".format(            d, scores[i], idx[i]))

运行:

python fr.py 1.jpeg

效果如图:



之后再写一篇landmark的……



原创粉丝点击