动手实践:利用yolo v2 实现端到端的人脸识别

    利用的神经网络的人脸识别,一般的处理流程顺序是人脸检测->人脸对齐->CNN抽取特征->分类器(如SVM)处理->结果。人脸检测、人脸对齐属于预处理阶段,目的是提取图片中人脸的像素区域,然后送入CNN;CNN将图片处理成特征向量,最后输送给分类器进行训练或者识别。具体可以参考http://github.com/cmusatyalab/openface/。

        以上的人脸识别的过程,涉及到dlib人脸对齐、CNN卷积神经网络、sklearn的线性分类器等,如果是在PC机上,很容易安装相应的库来实现。但是如果要将人脸识别的过程在嵌入式板子上实现,就会发现以上过程繁琐,移植困难。

        yolo是一个端到端 、实时的、物体识别的神经网络,不仅可以检测物品类别,而且可以回归出物体位置(bounding box)。本例中正是利用yolo的这些特点,去掉预处理和后处理阶段,只需CNN神经网络,实现了端到端的人脸识别。

1.  首先搭建yolo v2,GPU版本,参考我的博客 https://mp.csdn.net/postedit/79452204。

2.  创建数据集合文件夹,结构参考VOC数据集,如VOC2007,目录结构如下:

你可能感兴趣的:(动手实践)