博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
01-人脸识别-基于MTCNN,框选人脸区域-detect_face_main
阅读量:5237 次
发布时间:2019-06-14

本文共 1492 字,大约阅读时间需要 4 分钟。

(本系列随笔持续更新)

搭建要求

详细的搭建过程在 参考资料1 中已经有啦。

TensorFlow 1.6.0

OpenCV 2.4.8 仅仅是加载和读取图片的需要

Ubuntu 14.04 64bits

 

代码:加载图片,找出人脸。运行依赖detect_face.py

import cv2import detect_faceimport matplotlib.pyplot as pltimport mathfrom scipy import miscimg = misc.imread('face_airplane.jpg')sess = tf.Session()pnet, rnet, onet = detect_face.create_mtcnn(sess, None)minsize = 20threshold = [0.6, 0.7, 0.7]factor = 0.709df_result, _ = detect_face.detect_face(img, minsize, pnet, rnet, onet, threshold, factor)n_face = df_result.shape[0]print('detected face number: {}'.format(n_face))print(df_result)fig = plt.figure('faces')i = 0plt_nrow = n_face/5plt_nrow = plt_nrow + int(n_face != plt_nrow*5)plt_ncol = 5crop_face = []for subfaceRec in df_result:  i = i+1    #ax = fig.subplot(plt_nrow, plt_ncol, i)  subfaceRec = subfaceRec.astype(int)  img_a_face = img[subfaceRec[1]:subfaceRec[3], subfaceRec[0]:subfaceRec[2]]  crop_face.append(img_a_face)  img_a_face = cv2.resize(img_a_face, (96, 96), interpolation = cv2.INTER_CUBIC)  #plt.imshow(img_a_face)  print('plt_nrow:{}, plt_ncol:{}, i:{}'.format(plt_nrow, plt_ncol, i))  plt.subplot(plt_nrow, plt_ncol, i)  plt.imshow(img_a_face)    cv2.rectangle(img, (subfaceRec[0], subfaceRec[1]), (subfaceRec[2], subfaceRec[3]), (0,255,0), 2)  plt.figure('img')plt.imshow(img)plt.show()sess.close()

  

显示效果:

 

参考资料:

1 https://blog.csdn.net/mr_evanchen/article/details/77650883

2 https://github.com/ShyBigBoy/face-detection-mtcnn

 

转载于:https://www.cnblogs.com/alexYuin/p/8820534.html

你可能感兴趣的文章
设计模式之桥接模式(Bridge)
查看>>
jquery的$(document).ready()和onload的加载顺序
查看>>
Python Web框架Django (五)
查看>>
.net学习之继承、里氏替换原则LSP、虚方法、多态、抽象类、Equals方法、接口、装箱拆箱、字符串------(转)...
查看>>
【codevs1033】 蚯蚓的游戏问题
查看>>
【程序执行原理】
查看>>
python的多行注释
查看>>
连接Oracle需要jar包和javadoc文档的下载
查看>>
UVA 10976 - Fractions Again?!
查看>>
Dreamweaver cc新版本css单行显示
查看>>
【android】安卓的权限提示及版本相关
查看>>
JavaScript可否多线程? 深入理解JavaScript定时机制
查看>>
IOS基础学习
查看>>
PHP 导出 Excell
查看>>
Java基础教程——网络基础知识
查看>>
自己到底要的是什么
查看>>
Kruskal基础最小生成树
查看>>
ubuntu 14.04 安装搜狗拼音输入法
查看>>
浅谈算法和数据结构: 一 栈和队列
查看>>
Java内部类详解
查看>>