博客
关于我
Ubuntu16.04 基于anaconda快速配置openface环境---完整过程版
阅读量:290 次
发布时间:2019-03-03

本文共 1672 字,大约阅读时间需要 5 分钟。

Ubuntu16.04 基于anaconda快速配置openface环境

openface是一个基于深度神经网络的开源人脸识别系统,基于谷歌FaceNet论文开发,由卡内基梅隆大学的Brandon Amos主导。以下是基于Anaconda快速配置openface环境的完整步骤指南。


一、Anaconda安装

如果你已经安装了Anaconda3,可以直接跳过安装步骤。

  • 下载Anaconda3

    访问Anaconda官方网站,根据你的Python版本和系统选择对应的安装包。

  • 安装Anaconda3

    执行以下命令进入下载目录:

    cd Downloads  bash Anaconda3-5.2.0-Linux-x86_64.sh

    按回车键逐步阅读并同意许可协议,最后输入yes确认安装路径。


  • 二、openface环境配置

  • 创建openface环境

    创建一个名为openface的conda环境,并指定Python版本:

    conda create -n openface python=2.7 -y
  • 激活openface环境

    source activate openface
  • 安装依赖项

    使用conda安装必要的Python库:

    conda config --add channels conda-forge  conda install opencv numpy pandas scipy scikit-learn scikit-image dlib txaio twisted autobahn OpenSSL pyopenssl imagehash service_identity
  • 退出激活状态

    source deactivate
  • 安装Torch

    克隆并安装Torch:

    git clone https://github.com/torch/distro.git ~/torch --recursive  cd ~/torch  bash install-deps; ./install.sh

    安装依赖项:

    for NAME in dpnn nn optim optnet csvigo cutorch cunn fblualib torchx tds; do luarocks install $NAME; done

    如果安装失败,重新安装luarocks:

    wget http://www.lua.org/ftp/lua-5.2.4.tar.gz  tar -zxvf lua-5.2.4.tar.gz  make linux  make install

    再次运行依赖项安装命令。

  • 重新激活openface环境

    source activate openface
  • 安装openface

    克隆并安装openface:

    git clone https://github.com/cmusatyalab/openface.git ~/openface  cd ~/openface  python setup.py install
  • 下载dlib模型

    使用脚本下载模型:

    ./models/get-models.sh

    下载完成后,模型文件位于models/目录下。


  • 三、测试openface

  • 运行示例程序

    测试分类器:

    ./demos/classifier.py infer models/openface/celeb-classifier.nn4.small2.v1.pkl ./images/examples/carell.jpg

    如果出现GridSearchCV错误,说明scikit-learn版本过新。降级至0.18:

    conda install scikit-learn=0.18
  • 验证结果

    成功运行后,会显示Steve Carell的自信度预测结果。注意:需要自己提供训练数据集。


  • 通过以上步骤,你可以快速在Ubuntu16.04上配置openface环境并进行人脸识别任务。如果有任何问题,欢迎在评论区留言,我们会尽力帮助你解决!

    转载地址:http://stgl.baihongyu.com/

    你可能感兴趣的文章
    Python:将列表与范围列表合并
    查看>>
    Python:将列表列表初始化为一定大小,
    查看>>
    Python:带有生成器的给定集合的幂集
    查看>>
    Python:按字符的位置拆分字符串
    查看>>
    Python:替换嵌套字典中的值
    查看>>
    Python:爬取数据出现response.status_code为403解决方法
    查看>>
    Python:爬取数据出现response.status_code为418解决方法
    查看>>
    Python:生成“元组集“;来自“元组列表“;不考虑顺序
    查看>>
    Python:生成具有趋势的随机时间序列数据(例如周期性、指数衰减等)
    查看>>
    Python:用渐进式数字重命名列表中的重复项而不对列表进行排序
    查看>>
    Python:矩形参数无效
    查看>>
    Python:语法进阶
    查看>>
    Python:调用复制函数时调用 Python 对象时超出了最大递归深度
    查看>>
    Python:这两个 import 语句有什么区别?
    查看>>
    Python:通过串口从 Velleman k8090 读取数据
    查看>>
    python:遍历具有列表值的字典
    查看>>
    Python:降低精度 pandas 时间戳数据帧
    查看>>
    python:非阻塞子进程,检查标准输出
    查看>>
    PythonABC多重继承
    查看>>
    Pythonargparse中的多个参数
    查看>>