我正在尝试通过利用dlib提供的imglab tool来创建XML文件。我有一个21个图像的数据集,每个图像都有一个面。在我闲暇时,我必须在每个68个地标上贴上标签。
使用我的地标创建的文件与dlib提供的XML文件不同:即每个记录都被定义为一个单独的框,应该被视为包含面的主框的一部分。
帮助我!
答案 0 :(得分:6)
看起来你试图在每个脸部特征周围手动绘制方框而不是使用"部分选择"模式
imglab -h 会告诉你:
- 部件显示屏将允许图像部件 标记。 允许部件的集合由哪个定义 应该是一个以空格分隔的零件清单。
试试这个:
为某些图像目录创建xml文件
imglab -c xml_file_name.xml / path / to / images / folder
使用--parts参数运行imglab:
imglab --parts" 1 2 3 4 5 6 7 8" xml_file_name.xml
这将使imglab知道可以在框区域中注释的8个特征
还可以考虑在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>
答案 1 :(得分:1)
Evgeniy的答案很有用但是当使用--parts参数运行imglab时,数字标签应该是这样的:
imglab --parts "01 02 03 04 05 06 07 08 09 10 11 12" xml_file_name.xml
否则,由于dlib在xml中按名称对部件进行排序,因此在预测时标签会令人困惑。