zoukankan      html  css  js  c++  java
  • windows环境下安装配置dlib

    最近一个project要用到人脸检测(face detection),发现一个叫dlib的toolkit很好用,detect的灵敏度和marker点的准确度都比较高。

    dlib在Ubuntu上安装编译比较方便,但因为我这个project的前半部分都在windows环境上,所以想要在windows上配置。

    中途遇到了挺多问题,做个记录。

    1、在GitHub上可以下载dlib(https://github.com/davisking/dlib);或者去dlib的主页上也可以下载(http://dlib.net/)。

    2、dlib是一个C++ toolkit,包含很多machine learning的算法,我这里要用到的是里面python_examples下的face_landmark_detection.py。

    3、首先要安装Boost,这是一个C++库(http://www.boost.org/users/history/),我下载的是Version 1.59.0。我电脑上已经安装了VS 2013,因此它会用VS 2013进行编译,在C:Program Files (x86)Microsoft Visual Studio 12.0Common7目录下可以找到VS2013开发人员命令提示,可以在这里编Boost。

    但是双击打开后,却提示找不到安装位置:

    我的VS2013安装的是64位的,安装位置在C:Program FilesMicrosoft Visual Studio 12.0,但是系统变量中的VS120COMNTOOLS值是:

    而64位的Common7目录下并没有Tools的文件夹

    所以即使将系统变量中的VS120COMNTOOLS的值改为Program Files路径下,仍然找不到Tools,所以我直接把Program Files (x86)目录下的Common 7中的Tools文件夹拷到了Program Files目录下的Common 7中,然后再打开VS2013开发人员命令提示就不会报错了:

    然后在这个cmd界面中进入之前下载的Boost目录,执行bootstrap.bat,没有报错:

    按照它的提示,运行 .2 进行编译,这一步要运行10分钟左右,没有报错,编译完成。

    4、安装Python:我下载的是32位的Python 2.7.10(试过64位的Python,后面的步骤会出问题),安装完之后记得将安装路径加入到Path中:

    新开一个命令行,在cmd中输入python,出现以下输出说明安装成功了。

    5、按照dlib官网上的步骤,编译dlib的python接口:

     
    在命令行中进入dlib目录,然后运行python setup.py install
     
    发现错误,没有安装cmake。去官网上下载一个编译好的二进制cmake:
     
    注意在安装的时候勾选“自动添加路径到环境变量”,或者安装完之后自己手动添加以下路径到path:
     
    这样再新开一个cmd(原来的cmd不会及时更新设置,所以要重新打开一个cmd),输入:
     
    原先cmake的错误就没有了,但是有新的错误:找不到Boost。解决办法可以按照error提示的那样操作:
     
    首先,添加系统变量 BOOST_ROOT = D:oost_1_59_0 和 BOOST_LIBRARYDIR = D:oost_1_59_0stagelib。
    然后打开cmd,进入到boost目录,输入以下指令编译python library(我的python是32位,因此address-model=32):
     
    接下来,新开一个cmd,然后进入dlib,运行python setup.py install,就不会报错了,成功编译:
     

    接下来要运行dlib/python_examples里面的face_landmark_detection.py.

    1、face_landmark_detection.py需要两个参数,“模型路径”和“图片目录路径”。

    2、直接在cmd中运行的话,会出现报错:

    缺少一个scikit-image的包,可以直接安装一个pip来下载。

    3、安装pip:网上有get-pip.py的代码(http://download.csdn.net/detail/u012572945/8249275),直接用Python运行它就可以安装成功。

    然后要记得把安装路径加到环境变量path中:

    接下来新打开一个cmd,然后输入pip,出现如下结果说明配置成功:

    4、然后可以直接用pip来下载scikit-image:

    会有报错说缺少另一个包:numpy。

    5、继续用pip安装:pip install numpy,然后又会提示缺少一个工具,并且提供了下载地址:

    下载下来之后,按提示安装成功,再运行pip install numpy,这一步要等待一段时间,会出现如下输出:

    说明安装成功。

    6、继续pip install scikit-image:

    又缺少一个scipy的python库。可以去下载一个scipy-0.10.0-win32-superpack-python2.7.exe(http://download.csdn.net/download/shiniantianlang/8007045)。

    7、安装的时候会提示找不到python路径,但是环境变量中明明已经加了python路径,看到网上资料说可以先运行一个注册程序register.py(http://www.ithao123.cn/content-8406933.html):

    然后再安装scipy就不会报错了。

    8、这样就可以成功运行face_landmark_detection.py了,它会标记出68个marker点:

    图片来自:http://tupian.baike.com/a0_68_18_16300001051406137869184233456_jpg.html?prd=zhengwenye_left_futu_miaoshu

     
     
    转自:http://blog.csdn.net/tina_zhou3/article/details/50595636
  • 相关阅读:
    leetcode_question_67 Add Binary
    几种常用控件的使用方法
    JavaBean讲解 规范
    [置顶] JDK-CountDownLatch-实例、源码和模拟实现
    恋人分手后需要做的不是挽回而是二次吸引
    leetcode_question_70 Climbing Stairs
    偶然碰到的Win7 64位下CHM 的问题解决
    FTP中各文件目录的说明
    深入理解line-height与vertical-align(1)
    行内元素和块级元素
  • 原文地址:https://www.cnblogs.com/syqlp/p/6137380.html
Copyright © 2011-2022 走看看