写在前面:一个偶然的机会帮同学配置MIMAMO-Net添加链接描述的环境,接触到OpenFace添加链接描述这个工具包,里面的一些东西不太好找,于是把它记录到这里备忘。

OpenFace初识与使用

MIMAMO-Net中有一个步骤:

用到OpenFace来裁剪与对其人脸,这是OpenFace这个工具包可以完成的工作之一。
OpenFace是一个开源的人脸行为分析工具包,它可以完成的工作大致有以下几个:

  • facial landmark detection
  • head pose estimation
  • facial action unit recognition
  • eye-gaze estimation
安装OpenFace

Step 1:安装GCC(newest)

 sudo apt-get updatesudo apt-get install build-essentialsudo apt-get install g++-8#如果系统是ubuntu16.04或更低安装g++前需执行:sudo add-apt-repository ppa:ubuntu-toolchain-r/test -ysudo apt-get -y update

Step 2: Cmake

sudo apt-get install cmake#注意ubuntu16.04或更低,OpenFace要求的CMake版本至少为3.8,而Ubuntu 16.04的apt-get仅支持CMake 3.5,需要执行以下步骤:sudo apt-get --purge remove cmake-qt-gui -ysudo apt-get --purge remove cmake -ymkdir -p cmake_tmpcd cmake_tmpwget https://cmake.org/files/v3.10/cmake-3.10.1.tar.gztar -xzvf cmake-3.10.1.tar.gz -qqcd cmake-3.10.1/./bootstrapmake -j4sudo make installcd ../..sudo rm -rf cmake_tmp

Step 3:安装OpenBLAS

sudo apt-get install libopenblas-dev

Step 4:安装opencv 4.1.0

#1、安装依赖
sudo apt-get install git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libdc1394-22-dev
#2、下载opencv4.1.0
wget https://github.com/opencv/opencv/archive/4.1.0.zip
#3、解压与其他
sudo unzip 4.1.0.zip
cd opencv-4.1.0
mkdir build
cd build
#4、build
sudo cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_TIFF=ON -D WITH_TBB=ON ..
sudo make -j2
sudo make install
#5、下载与编译dlib
wget http://dlib.net/files/dlib-19.13.tar.bz2;
tar xf dlib-19.13.tar.bz2;
cd dlib-19.13;
mkdir build;
cd build;
cmake ..;
cmake --build . --config Release;
sudo make install;
sudo ldconfig;
cd ../..;
#6、安装boost
sudo apt-get install libboost-all-dev

Step 5:安装OpenFace

#1、下载
git clone https://github.com/TadasBaltrusaitis/OpenFace.git
#2、建立文件夹
cd OpenFace
mkdir build
cd build
#3、编译
cmake -D CMAKE_CXX_COMPILER=g++-8 -D CMAKE_C_COMPILER=gcc-8 -D CMAKE_BUILD_TYPE=RELEASE ..
make
#4、测试
#视频:
./bin/FaceLandmarkVid -f "../samples/changeLighting.wmv" -f "../samples/2015-10-15-15-14.avi"
#图像:
./bin/FaceLandmarkImg -fdir "../samples/" -wild
#存在多个人脸的视频:
./bin/FaceLandmarkVidMulti -f ../samples/multi_face.avi
#特征提取:
./bin/FeatureExtraction -verbose -f "../samples/default.wmv"
使用OpenFace

使用手册在这里

  • FeatureExtraction executable is used for sequence analysis that contain a single face
  • FaceLandmarkVidMulti is intended for sequence analysis that contain multiple faces
  • FaceLandmarkImg executable is for individual image analysis (can either contain one or more faces)
    有些命令是支持图片文件夹的,但还没找到支持视频文件夹的命令,并且实测也没成功。
    官网命令详细解释:








ubuntu18.04下实测:

./bin/FeatureExtraction -f “xxx/xxx/107.avi”


参考资料
1、MIMAMO-Net添加链接描述
2、OpenFace添加链接描述

OpenFace粗糙使用备忘相关推荐

  1. vim的一些快捷键,备忘

    vim的一些快捷键,备忘 快捷键                                            作用 ctrl+g                                ...

  2. 资源 | AI、神经网络、机器学习、深度学习以及大数据学习备忘单

    向AI转型的程序员都关注了这个号☝☝☝ 以下是关于神经网络.机器学习.深度学习以及大数据学习的备忘单,其中部分内容和此前发布的<资源 | 值得收藏的 27 个机器学习的小抄>有所重复,大家 ...

  3. 机器学习项目的备忘清单!

    ↑↑↑关注后"星标"Datawhale 每日干货 & 每月组队学习,不错过 Datawhale干货 作者:Harshit Tyagi,编译:机器之心 机器学习项目中含有众多 ...

  4. 备忘:C语言void *

    由于研究一段代码的时候,看到了 void *.故此进行了学习. 看了 http://www.doc88.com/p-894907672962.html  的说明,感觉写得太好了,已无话可说. 故此备忘 ...

  5. [译] Kotlin 标准方法备忘

    原文地址:Kotlin Standard Functions cheat-sheet 原文作者:Jose Alcérreca 译文出自:掘金翻译计划 本文永久链接:github.com/xitu/go ...

  6. Nancy之结合TinyFox调试备忘

    原文:Nancy之结合TinyFox调试备忘 最近把一个小项目的数据库换成MongoDB,同时用了MongoRepository 这个开源组件来对数据进行操作. 通过NuGet安装之后,它会自动在we ...

  7. CSP浏览器安全策略备忘

    挺久之前过了一遍CSP的安全策略,很多人把它喻为XSS攻击的终结者,因为这种策略不再像传统只靠各种正则和特征匹配来识别跨站攻击Payload,而是直接从协议层把一些存在安全隐患的用法默认给干掉了,把同 ...

  8. Cheat—— 给Linux初学者和管理员一个终极命令行备忘单

    当你不确定你所运行的命令,尤其是那些使用了许多选项的复杂命令时,你会怎么做?在这种情况下,我们使用man pages来获取帮助.还有一些其它的选择可能包括像'help','whereis'和'what ...

  9. 简单备忘一下Linux下的wget和curl如何使用http proxy

    简单备忘一下Linux下的wget和curl如何使用http proxy wget -e "http_proxy=porxyhost:port" www.baidu.com cur ...

最新文章

  1. Plotly_绘图画图作图交互
  2. delphi公共函数 UMyPubFuncFroc--版权所有 (C) 2008 勇者工作室
  3. 学习的本质在于触发了你的思考
  4. 【2012年终总结】之一 opencv + ds采集摄像头视频 MFC点点滴滴
  5. Matlab | 空间域水印技术:LSB(Least Significant Bit)嵌入(matlab源代码)
  6. 【Java】登录操作中随机生成验证码的工具类
  7. Weex Project (npm run android)-Error: Error: Command failed
  8. windows phone 8 使用页面传对象的方式 实现页面间的多值传递
  9. redis内存淘汰和持久化_redis 持久化
  10. 【Kafka】kafka Java api 获取 kafka topic 或者 partition 占用的磁盘大小
  11. 点击MSFlexGrid数据控件的标题进行数据排序
  12. 一个极其微小的优化想法
  13. 色彩专题——蓝色(blue)_8号招牌档
  14. 第7章—SpringMVC高级技术—不用web.xml,而使用java类配置SpringMVC
  15. 怎么轻松学JAVA(三个月拿实习Offer):小猿的JAVA后端之路(持续更新)
  16. 机器学习笔记(《统计学习方法》李航and《机器学习》周志华)
  17. Error:配置系统未能初始化
  18. 小米5s html,小米5S线刷MIUI9系统的方法_小米5S专用的MIUI9系统刷机包
  19. python barcode字符串生成条形码_python批量生成条形码的示例
  20. Allatori:代码混淆器的使用

热门文章

  1. 集合泛型不匹配导致的ClassCastException异常解决
  2. Please enable JavaScript to continue.
  3. Android 两个ListView联动,仿电影展示界面
  4. WEB前端入门知识及要点大全
  5. 2020牛客暑期多校训练营(第九场) Groundhog Chasing Death
  6. (七) 三维点云课程---ICP应用
  7. 索尼ea300c笔记本u盘装系统的教程
  8. linux wol 关机,Linux Wake-On-Lan(wol)
  9. layui常用的表单验证
  10. ubuntu20.04 服务器深度学习环境docker搭建