下载链接:
<a href="http://mmlab.ie.cuhk.edu.hk/projects/WIDERFace/" rel="noopener noreferrer" target="_blank"> http://mmlab.ie.cuhk.edu.hk/projects/WIDERFace/</a>
<br>
<p></p>
<p></p>
<p></p>
<p>该数据集可用于进行人脸检测模型的训练</p>
<p><br></p>
<p>如果做训练,可以点击网页中的</p>
<p><img alt="" src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-48fb9150bdfabeea8292c875783bc3fc"></p>
<p>(国内还是百度吧,会快一些)</p>
<p><br></p>
<p>这个下载下来是按文件夹分好的,全都是图片。对于训练,还少label的信息,点这个下载:</p>
<p><img alt="" src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-91d93ebf271ee0480e636f570c3ee888"></p>
<div>
<br>
</div>
<div>
Label的部分下下来后会发现,测试、训练、验证的信息被分开存放。有mat和txt两个版本。如果txt直接通过windows自带的记事本打开会发现各种数据被拧在了一起。
</div>
<div>
但是你用MatLab打开txt之后会发现格式不太一样,如下:
</div>
<div>
<br>
</div>
<div>
<img alt="" src="https://beijingoptbbs.oss-cn-beijing.aliyuncs.com/cs/5606289-d90296de80959884288b6cf18b078dcd">
</div>
<div>
<br>
</div>
<div>
类似这种按行分割好的文档。可以在这里全选-复制-新建txt-粘贴。这时候就可以查看readme.txt的说明(在label那个压缩包里,被和数据打包在了一起)
</div>
<div>
发现数据分别的意义如下:
</div>
<div>
<br>
</div>
<div>
File name
<br> Number of bounding box
<br> x1, y1, w, h, blur, expression, illumination, invalid, occlusion, pose
</div>
<div>
<br>
</div>
<div>
也就是第一行是文件夹,文件名
</div>
<div>
第二行是图中人脸的数量
</div>
<div>
再下面是人脸信息的参数。
</div>
<div>
x1, y1, w, h, 代表人脸框的位置(检测算法一般都要画个框框把人脸圈出来)
</div>
<div>
blur:是模糊度,分三档:0,清晰;1:一般般;2:人鬼难分
</div>
<div>
express:表达(什么鬼也没弄明白,反正我训这个用不着)
</div>
<div>
illumination:曝光,分正常和过曝
</div>
<div>
occlusion:遮挡,分三档。0,无遮挡;1,小遮挡;2,大遮挡;
</div>
<div>
invalid:(没弄明白)
</div>
<div>
pose:(疑似姿态?分典型和非典型姿态)
</div>
<div>
<br>
</div>
<div>
那么这里我需要的数据就是人脸框的坐标位置,作为我的目标label。我需要知道某张图片里有多少张人脸,每张人脸分别在什么位置。
</div>
<div>
这就需要写一个脚本来让图片和这些数据配对。然后就坐下码了一个(FILEDIR根据自己实际情况修改啊):
<p></p>
<pre class="blockcode"><code class="language-python hljs"></code>
<ol class="hljs-ln"><li>
<div class="hljs-ln-numbers">
<div class="hljs-ln-line hljs-ln-n"></div>
</div>
<div class="hljs-ln-code">
<div class="hljs-ln-line">
<span class="hljs-keyword">import</span> re
</div>
</div></li><li>
<div class="hljs-ln-numbers">
<div class="hljs-ln-line hljs-ln-n"></div>
</div>
<div class="hljs-ln-code">
<div class="hljs-ln-line">
<span class="hljs-keyword">import</span> linecache
</div>
</div></li><li>
<div class="hljs-ln-numbers">
<div class="hljs-ln-line hljs-ln-n"></div>
</div>
<div class="hljs-ln-code">
<div class="hljs-ln-line">
<span class="hljs-keyword">import</span> os
</div>
</div></li><li>
<div class="hljs-ln-numbers">
<div class="hljs-ln-line hljs-ln-n"></div>
</div>
<div class="hljs-ln-code">
<div class="hljs-ln-line">
<span class="hljs-comment"># 本程序用于将widerface数据集中label部分分离出来并且重新保存</span>
</div>
</div></li><li>
<div class="hljs-ln-numbers">
<div class="hljs-ln-line hljs-ln-n"></div>
</div>
<div class="hljs-ln-code">
<div class="hljs-ln-line">
FILEDIR =
<span class="hljs-string">“E:\Python_Files\TryWiderFace\Dataset\labels\\”</span>
</div>
</div></li><li>
<div class="hljs-ln-numbers">
<div class="hljs-ln-line hljs-ln-n"></div>
</div>
<div class="hljs-ln-code">
<div class="hljs-ln-line">
file = open(FILEDIR+
<span class="hljs-string">‘wider_face_train_bbx_gt.txt’</span>,
<span class="hljs-string">‘r’</span>)
</div>
</div></li><li>
<div class="hljs-ln-numbers">
<div class="hljs-ln-line hljs-ln-n"></div>
</div>
<div class="hljs-ln-code">
<div class="hljs-ln-line">
</div>
</div></li><li>
<div class="hljs-ln-numbers">
<div class="hljs-ln-line hljs-ln-n"></div>
</div>
<di |
|