美文网首页
dlib和imglab数据集标签工具

dlib和imglab数据集标签工具

作者: cy247706243 | 来源:发表于2019-02-27 12:01 被阅读0次

首先从官网下载dlib,或者从gittub上:https://github.com/davisking/dlib

一、安装

安装dlib的时候遇到问题可能的原因:

1.conda环境不对,后面换为Anaconda3-5.2.0-Linux-x86_64.sh即py3.6版本。

2.dlib的版本不对,之前为19.17。后面换成了19.16.99。

3.之前折腾好久因为安装步骤不对,准确步骤如下:

cd dlib/tools/imglab

    mkdir build

    cd build

    cmake ..

    cmake --build . --config Release

然后 ../../,执行sudo pyrhon setup.py  install 

注意:注意看安装后的提示,比如:creating /home/ccy/anaconda3/lib/python3.6/site-packages/dlib-19.16.99-py3.6-linux-x86_64.egg(表示安装在了anaconda的python下,之前都是安装在ubantu自带的python下面,而terminal输入python又默认conda的python,一直不能导入dlib)

折腾好久就是因为默认不是使用的conda的python,而是ubantu自带的python,刚好第一次conda也是py3.5,ubantu自带的python3也是py3.5,一直查不出问题出在哪里。后来删除了ubantu自带的python2和python3:sudo rm /usr/bin/python3.5 /usr/bin/python3.5m /usr/lib/python2.7 /usr/lib/python3.5 /etc/python3.5 /usr/local/lib/python3.5 -r

当然最方便的方法是conda创建虚拟环境,或者制定conda的python为默认版本:sudo ln -s /home/wxl/anaconda3/bin/python   /usr/bin/python(通过新建链接的方式制定,也可以以覆盖的方式ln -f)

二、使用

1.在build文件目录下新建图片文件夹比如picture1或者images,把需要标签的图片放入文件夹(可以先对每张图片先进行重命名)

2.在images文件夹下生成名字为mydataset.xml文件,用命令:

./imglab -c ./images/mydataset.xml  images

3.打开标签窗口:

./imglab   ./images/mydataset.xml打开标签窗口

4.打标注,打标签,保存,退出软件

5.再次打开imglab mydataset.xml   

xml其实就是保存标注点的坐标信息了。注意:标注时应该所有标注框具有相似的长宽比,数据样本量不能过多,当前超过300张会报错!!

其中box是人脸框的坐标,part是特征点的坐标

备注:工具命令

shirt+左键 长方形的框

先选中长方形的框,再shirt+左键                  特征点标注

ctrl+滚动轴                                                      放大或者缩小

键盘的up和down                                            上/下一张图片

alt+d                                                                删除当前图片

选中框+del                                                      删除框

(选不中的时候记得双击)

当前疑问:怎样训练带特征点的检测器

dlib::shape_predictor , dlib::full_object_detection是dlib里面的两个两个类

经常的一个实例就是:

先用一个人脸检测模型得到bounding box, 比如rect;

然后用已经载入的shape模型pose_来得到full_object_detection对象

三、训练

训练的时候有多种方式:

1.dlib.train_simple_object_detector()表示训练一般的分类器

2.dlib.shape_predictor()表示训练带关键点的分类器

其调用方式也不同:

rects = dictor(gray, 1)

shape = predictor(image, d)

建议在dlib-master/python_examples文件夹中看源码修改

注意:训练之前应该先选好图片,中期不用alt+d对图片进行删除,更不能在文件夹中对图片进行直接删除,先跳过去不打标签,后期再根据错误排除

相关文章

网友评论

      本文标题:dlib和imglab数据集标签工具

      本文链接:https://www.haomeiwen.com/subject/iwyxuqtx.html