openface命令行参数

小豆苗 4月前 ⋅ 524 阅读

FeatureExtraction可执行文件用于包含单个面孔,FaceLandmarkVidMulti的序列分析,旨在用于包含多个面孔的序列分析,FaceLandmarkImg可执行文件用于单个图像分析(可以包含一个或多个面孔)。下面概述了一些常见的示例用法。对于Ubuntu或Mac OS X,请省略.exe。为了使命令起作用,当前目录必须与可执行文件位于同一目录中,或者您需要指定可执行文件的完整路径。
  如果要从C:\my videos\video.avi位置中的视频文件中提取OpenFace功能(按功能,我们指的是OpenFace提取的所有功能:面部标志,头部姿势,眼睛凝视,面部动作单位,相似性对齐的脸部和HOG),假定仅一个人出现在该视频文件中,在命令行上执行以下命令:

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

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

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

  这将在与featureextract或FaceLandmarkVidMulti相同的目录(工作目录)中创建一个“processed”目录,该目录将包含已处理的特性。
  如果你想从多个视频文件提取OpenFacet特征,如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

  如果目录中有一系列图像而不是视频文件,而每个图像都代表一个帧(例如,目录"C:\my videos\sequence1"中的001.jpg,002.jpg,003.jpg … 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"

  这将processed在与FaceLandmarkImg包含已处理功能的目录相同的目录(工作目录)中创建一个目录。
  如果你想从多个图像文件提取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/,它说明了每个模型是如何被调用的。

 

1. FaceLandmarkImg

(1)单张图像分析
-f < filename >:输入的图像文件可以有多个-f标志;
-out_dir < directory >:输出目录的名称,处理过的要素将放置在该目录中(例如,特征、视线和AUs的CSV文件,HOG功能文件,具有检测到的特征的图像和一个元文件);
-root < dir > :根目录,因此-f可以相对于它指定;
-inroot < dir > :输入根目录,因此-f可以相对于它指定;

(2)批量图像分析
-fdir < directory > :-对目录中的所有图像(.jpg,.jpeg,.png和.bmp)进行特征检测;
-bboxdir:包含.txt文件(image_name.txt)和边界框(min_x min_y max_x max_y)的可选目录,它将使用这些文件进行初始化,而不是内部人脸检测器;
-out_dir < directory > :输出目录的名称,处理过的要素将放置在该目录中(例如,特征,凝视和aus的CSV文件,HOG功能文件,具有检测到的特征的图像和一个元文件);
有关输出格式的更多详细信息,请参见此处

2. FeatureExtraction和FaceLandmarkVidMulti

(1)输入参数
-f < filename > :输入的视频文件,可以指定多个 -f;
-fdir < directory > :对目录中的每个图像(.jpg,.jpeg,.png和.bmp)运行特征提取(输出将存储在整个目录的单个文件中);
-device < device id >: 网络摄像头的设备ID,用于从实时Feed中提取特征;
-cam_width :输入的摄像头分辨率(默认为640),仅在设置了设备的情况下有效;
-cam_height :输入的网络摄像头高度分辨率(默认为480),仅在设置了设备时有效;
-root < dir >: 输入的根;
-inroot < dir >: 输入的根;
-au_static:如果指定了此标志,则将在静态图像而非视频上执行AU预测,请参见此处以获取更详细的说明,这是FaceLandmarkVidMulti的默认行为;

(2)输出参数(有关输出格式的更多详细信息,请参见此处
-out_dir < dir > :与创建输出文件相关的根目录;
-of < filename >:输出的文件名(如果未指定,将使用原始文件名,如果使用,则使用目录名;如果使用-fdir网络摄像头,则使用网络摄像头+时间戳);
-oc < FOURCC_CODE >:输出的视频文件的编解码器(FOURCC的代码列表可以在这里找到- https://www.fourcc.org/codecs.php);

(3)输出的附加参数(适用于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 输出具有检测到的特征的视频;

3. FaceLandmarkVid

(1)输入参数
-f < filename > 输入的视频文件可以通过具有多个-f标志来指定多个文件;
-device < device_num > 从中读取图像的网络摄像头(默认为0);
-cam_width 输入网络摄像头的分辨率(默认为640);
-cam_height 输入的摄像头高度分辨率(默认为480);
-inroot < directory > 输入的根目录,因此-f可以相对于它指定;

4. 所有通用参数

(1)使用参数的模型

-mloc <the location of landmark detection models>
  • 1

选项:
1. “model/main_ceclm_general.txt”(默认)-接受有关各种姿势和照明的Multi-PIE以及野外数据(300W和Menpo)的训练。最准确,但最慢且最占用内存的方法。适用于大多数条件;
2. “model/main_clnf_general.txt”-受过多种PIE的训练,这些PIE具有不同的姿势和照明以及实时数据。在很多情况下都可以正常工作,但无法用于侧面轮廓和非常大的表情;
3. “model/main_clnf_wild.txt” -如上所述,但仅针对300W数据集(Helen和LFPW)进行了训练;
4. “model/main_clnf_multi_pie.txt” -受过CMU Multi-PIE数据集的培训,在光线充足的环境下效果很好;
5. “model/main_clm_general.txt”-最不准确,但是最快的型号;

(2)型号参数
-wild 标志指定图像何时更难处理,模型考虑扩展的搜索区域;
-multi_view <0/1> 应该使用多视图初始化(更健壮,但更慢),默认情况下关闭;

(3)可选的相机参数,用于正确的头部姿势和视线计算
-fx < focal length in x >
-fy < focal length in y >
-cx < optical centre in x >
-cy < optical centre in y >


全部评论: 0

    我有话说: