OpenFace使用文档-命令行

参考链接:https://github.com/TadasBaltrusaitis/OpenFace/wiki/Command-line-arguments

考虑到GitHub访问有难度,且原文为英文,故写下此篇


命令行参数

示例用途

与 OpenFace 交互的一种方式是通过命令行参数(例如,Windows 中的命令提示符或 PowerShell 以及 Unix 系统中的 xterm)。为此,您需要首先编译 OpenFace 代码或下载可执行文件(适用于 Windows)。

FeatureExtraction 可执行文件用于包含单个人脸的序列分析,FaceLandmarkVidMulti 用于包含多个人脸的序列分析,FaceLandmarkImg 可执行文件用于单个图像分析(可以包含一个或多个人脸)。下面概述了一些常见的示例用途。对于 Ubuntu 或 Mac OS X,请省略 .exe。要使命令正常工作,当前目录必须与可执行文件位于同一目录中,或者您需要指定可执行文件的完整路径。

如果要从位置 C:\my 的视频文件中提取 OpenFace 特征(我们指的是 OpenFace 提取的所有特征:面部标志、头部姿势、眼睛注视、面部动作单元、相似度对齐的面部和 HOG) videos\video.avi,假设该视频文件中只出现一个人,在命令行执行如下命令:

FeatureExtraction.exe -f "C:\my videos\video.avi"

如果视频中有多人,请使用:

FaceLandmarkVidMulti.exe -f "C:\my videos\video.avi"

这将在与 FeatureExtraction 或 FaceLandmarkVidMulti 相同的目录(工作目录)中创建一个已处理的目录,其中将包含已处理的特征 (more details).

如果您想从多个视频文件中提取 OpenFace 特征,例如C:\my videos\video1.avi, C:\my videos\video2.avi, C:\my videos\video3.avi,在命令行执行如下命令:

FeatureExtraction.exe -f "C:\my videos\video1.avi" -f "C:\my videos\video2.avi" -f "C:\my videos\video3.avi"

或者

FaceLandmarkVidMulti.exe -f "C:\my videos\video1.avi" -f "C:\my videos\video2.avi" -f "C:\my videos\video3.avi"

如果您只想从C:\my videos\video1.avi中的视频文件中提取头部姿势,请在命令行中执行以下命令:

FeatureExtraction.exe -f "C:\my videos\video1.avi" -pose

如果不是视频文件,而是在一个目录中有一系列图像,每个图像代表一帧(例如001.jpg、002.jpg、003.jpg...目录“C:\my videos\sequence1”)中的200.jpg,您可以从该序列中提取特征:

FeatureExtraction.exe -fdir "C:\my videos\sequence1"

或者

FaceLandmarkVidMulti.exe -fdir "C:\my videos\sequence1"

如果要从位置 C:\my images\img.jpg(可以包含多人)的图像文件中提取 OpenFace 特征,请在命令行中执行以下命令:

FaceLandmarkImg.exe -f "C:\my images\img.jpg"

这将在与FaceLandmarkImg相同的目录(工作目录)中创建一个包含已处理要素的已处理目录 (more details ).

如果您想从多个图像文件中提取 OpenFace 特征,例如C:\my images\img1.jpg、C:\my images\img2.jpg、C:\my images\img3.jpg,在命令行执行如下命令:

FaceLandmarkImg.exe -f "C:\my images\img1.jpg" -f "C:\my images\img2.jpg" -f "C:\my images\img3.jpg"

或者,如果要处理目录 C:\my images 中的所有图像,可以使用:

FaceLandmarkImg.exe -fdir "C:\my images"

这将处理目录中的所有图像(.jpg、jpeg、.bmp、.png 文件)。

注意,在 FeatureExtraction 和 FaceLandmarkImg 之间使用 -fdir 标志之间的区别在于,FeatureExtraction 假定来自仅包含一张脸的视频的图像序列,而 FaceLandmarkImg 假定它们之间没有关系的随机图像集合,可以包含多个面孔.

另一种了解命令行参数如何工作的好方法是查看 ./matlab_runners/Demos/,它说明了如何调用每个模型。

文档

FaceLandmarkImg

单一图像分析

-f <filename> 正在输入的图像文件,可以有多个 -f 标志

-out_dir <directory> 输出目录的名称,处理后的特征将在其中放置(即地标、注视和 aus 的 CSV 文件、HOG 特征文件、检测到地标的图像和元文件)

-root <dir> 根目录,所以 -f 可以相对于它指定

-inroot <dir> 输入根目录,因此 -f 可以相对于它指定

批量图像分析

-fdir <directory> - 对目录中的所有图像(.jpg、.jpeg、.png 和 .bmp)运行地标检测

-bboxdir 可选目录,包含带有边界框 (min_x min_y max_x max_y) 的 .txt 文件 (image_name.txt),它将使用这些文件进行初始化,而不是内部人脸检测器

-out_dir <directory> 输出目录的名称,处理后的特征将在其中放置(即地标、注视和 aus 的 CSV 文件、HOG 特征文件、检测到地标的图像和元文件)

有关输出格式的更多详细信息,请参见此处:here

FeatureExtraction and FaceLandmarkVidMulti

输入参数

-f <filename> 正在输入的视频文件,可以指定多个 -f

-fdir <directory> 对目录中的每个图像(.jpg、.jpeg、.png 和 .bmp)运行特征提取(输出将存储在整个目录的单个文件中)

-device <device id> 网络摄像头的设备 ID,用于从实时提要中提取特征

-cam_width 输入网络摄像头的分辨率(默认为 640),仅在设置设备时有效

-cam_height 输入网络摄像头高度分辨率(默认 480),仅在设置设备时有效

-root <dir> 输入的根目录

-inroot <dir> 输入的根目录

-au_static 如果指定了此标志,则 AU 预测将像在静态图像而不是视频上一样执行,请参阅此处以获得更详细的说明,这是 FaceLandmarkVidMulti 的默认行为

输出参数(有关输出格式的更多详细信息,请参见此处: here

-out_dir <dir> 与创建输出文件相关的根目录

-of <filename> 输出的文件名(如果未指定将使用原始文件名,如果是 -fdir 则使用目录名称,如果是网络摄像头则使用网络摄像头 + 时间戳)

-oc <FOURCC_CODE> 输出视频文件的编解码器(FOURCC 代码列表可以在这里找到 -Video Codecs by FOURCC - fourcc.org)

输出的附加参数(适用于 FaceLandmarkImg 和 FeatureExtraction)

-verbose 实时可视化处理步骤:带有注视的跟踪面部、动作单元、相似度对齐的面部和 HOG 特征(默认情况下不可视化),此标志将所有这些都打开,下面的标志允许更细粒度的控制。可视化这些输出将降低处理速度,可能会显着降低。

-vis-track 可视化跟踪的人脸

-vis-hog 可视化 HOG 特征

-vis-align 可视化相似度对齐的面

-vis-aus 可视化操作单元

-simscale <float> 相似度对齐的人脸比例(默认 0.7)

-simsize <int> 相似度对齐时图像的宽度和高度(默认 112)

-format_aligned <format> 对齐面的输出图像格式(例如 png 或 jpg),OpenCV 支持的任何格式

-format_vis_image <format> 可视化图像的输出图像格式(例如 png 或 jpg),OpenCV 支持的任何格式。仅适用于 FaceLandmarkImg

-nomask 强制对齐的人脸输出图像不被屏蔽

-g 输出图像应该是灰度的(为了节省空间)

默认情况下,可执行文件将输出所有特征(跟踪的视频、HOG 文件、相似度对齐的图像和带有地标、动作单元和凝视的 .csv 文件)。您可能并不总是想要提取所有输出特征,您可以使用以下标志指定所需的输出:

-2Dfp 以像素为单位输出 2D 地标

-3Dfp 以毫米为单位输出 3D 地标

-pdmparams 输出刚性和非刚性形状参数

-pose 输出头部姿势(位置和旋转)

-aus 输出面部动作单元

-gaze 输出凝视和相关特征(眼睛标志的 2D 和 3D 位置)

-hogalign 输出提取的 HOG 特征文件

-simalign 输出被跟踪人脸的相似度对齐图像

-nobadaligned 如果输出相似度对齐的图像,不要从检测失败或不可靠的帧输出(从而节省一些磁盘空间)

-tracked 带有检测到的地标的跟踪输出视频

FaceLandmarkVid

输入参数

-f <filename> 正在输入的视频文件,可以通过具有多个 -f 标志来指定多个文件

-device <device_num> 从中读取图像的网络摄像头(默认为 0)

-cam_width 输入网络摄像头的分辨率(默认 640)

-cam_height 输入网络摄像头高度分辨率(默认 480)

-inroot <directory> 输入的根目录,因此 -f 可以相对于它指定

Common parameters for all

模型使用参数

-mloc <the location of landmark detection models>

选项:

  • “model/main_ceclm_general.txt”(默认)- 在不同姿势和光照的 Multi-PIE 以及野外数据(300W 和 Menpo)上进行训练。最准确,但最慢和最占用内存的方法。适用于大多数情况。
  • “model/main_clnf_general.txt” - 在不同姿势和光照的 Multi-PIE 以及 In-the-wild 数据上进行训练。在很多情况下都能很好地工作,但对于轮廓面和非常大的表情则失败了
  • “model/main_clnf_wild.txt” - 同上,但仅在 300W 数据集(Helen 和 LFPW)上训练
  • “model/main_clnf_multi_pie.txt” - 在 CMU Multi-PIE 数据集上训练,在光线充足的环境中运行良好
  • “model/main_clm_general.txt”——最不准确的。但最快的模型

型号参数

-wild 标志指定图像何时更难,模型考虑扩展搜索区域

-multi_view <0/1> 应该使用多视图初始化(更健壮,但更慢),默认关闭

用于正确头部姿势和眼睛注视计算的可选相机参数

-fx <focal length in x>
-fy <focal length in y>
-cx <optical centre in x> 
-cy <optical centre in y>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值