我试图通过利用dlib提供的imglab tool来创建一个XML文件。我有一个包含21张图像的数据集,每张图像只有一张脸。我必须在每个休闲地区加上68个地标。为dlib培训创建一个xml文件
使用我的地标创建的文件与dlib提供的XML文件不同:即每个记录被定义为单个框,并且应该被视为包含面部的主框的一部分。
帮帮我!
我试图通过利用dlib提供的imglab tool来创建一个XML文件。我有一个包含21张图像的数据集,每张图像只有一张脸。我必须在每个休闲地区加上68个地标。为dlib培训创建一个xml文件
使用我的地标创建的文件与dlib提供的XML文件不同:即每个记录被定义为单个框,并且应该被视为包含面部的主框的一部分。
帮帮我!
貌似你试图手动绘制周围的每一个面部特征框而不是使用“部分选择”模式
imglab -h会告诉你这一点:
--parts显示将允许图像部分标记为 。 允许部件的集合由其中的 应该是空格分隔的部件列表来定义。
试试这个:
一些images目录
imglab -c xml_file_name.xml /路径创建XML文件/到/图片/文件夹
运行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>
你是我的救恩!!!! –
我现在的问题如下: 我可以用小于68的数字进行训练吗? 在强烈斜面的情况下,我可以用唯一可见的地标注释我的图像吗?我会在训练过程中遇到问题吗? –
你的意思是一些面孔会有68个和其他67个featuers(例子)? 或者你想训练30个特征的所有面孔? – Evgeniy
叶夫根的答案是有用的,但与--parts参数运行imglab时,数值标签应该是这样的:
imglab --parts "01 02 03 04 05 06 07 08 09 10 11 12" xml_file_name.xml
否则,因为DLIB按名称排序XML部分,标签将被混淆,而预测。
要做到这一点,并从dlib/imglab的灵感,我已经创建它[网页](https://github.com/NaturalIntelligence/imglab)版本。您可以使用第三方库来确定img上的面部和地标点,您可以将其保存在dlib xml或pts文件中。您还可以调整点和框以提高准确性。 –