5

我正在尝试通过利用 dlib提供的imglab 工具来创建 XML 文件。我有一个包含 21 张图像的数据集,每张图像都有一张脸。我必须在闲暇时贴上每 68 个地标。

使用我的地标创建的文件与 dlib 提供的 XML 文件不同:即每条记录都被定义为一个框,应被视为包含人脸的主框的一部分。

帮我!

4

2 回答 2

6

看起来您正在尝试在每个面部特征周围手动绘制框,而不是使用“部分选择”模式

imglab -h会告诉你这个:

--parts 显示将允许标记图像部分。允许部分的集合由它定义,应该是一个以空格分隔的部分列表。

尝试这个:

  1. 为某些图像目录创建 xml 文件

    imglab -c xml_file_name.xml /path/to/images/folder

  2. 使用 --parts 参数运行 imglab:

    imglab --parts "1 2 3 4 5 6 7 8" xml_file_name.xml

这将使 imglab 知道大约 8 个可以在框区域注释的特征

  1. 打开imglab后-绘制框,选择它(应该是蓝色的)并在里面右键单击-您将获得零件选择的弹出菜单

还可以考虑阅读 imglab 中的帮助/关于使用说明

保存 xml 文件后,您将得到如下内容:

  <image file='1\a1.jpg'>
    <box top='26' left='33' width='78' height='73'>
      <part name='1' x='67' y='68'/>
    </box>
  </image>
于 2016-05-13T06:47:46.057 回答
1

Evgeniy 的回答很有用,但是当使用 --parts 参数运行 imglab 时,数字标签应如下所示:

imglab --parts "01 02 03 04 05 06 07 08 09 10 11 12" xml_file_name.xml

否则,由于 dlib 在 xml 中按名称对部分进行排序,因此标签在预测时会令人困惑。

于 2017-12-05T11:40:13.177 回答