资源简介
用Python+dlib,剪切出目标文件夹中人脸大头照以及坐标点文档;用Python+dlib,剪切出目标文件夹中人脸大头照以及坐标点文档
代码片段和文件信息
# -*- coding:utf-8 -*-
# -*- author:zzZ_CMing CSDN address:https://blog.csdn.net/zzZ_CMing
# -*- 2019/01/13; 17:38
# -*- python3.6
import os
import sys
import cv2
import time
import dlib
import shutil
import numpy as np
from PIL import Image
input_pic_path = “iuput_pic/“
output_pic_data_path = “output_pic_data/“
output_dict_data_path = “output_dict_data/“
error_pic_path = “no_face/“
predictor_model = ‘shape_predictor_68_face_landmarks.dat‘
face_detector = dlib.get_frontal_face_detector()
face_pose_predictor = dlib.shape_predictor(predictor_model)
def get_face_points(dict_A):
“““
:param dict_A: 传入一个字典A,内容是包含一张人脸的所有标记点坐标
:return: 返回人脸上、下、左、右的索引值
“““
x_max = y_max = 0
x_min = y_min = 2000
for k_1 v_1 in dict_A.items():
for k_2 v_2 in v_1.items():
if k_2 == “x“:
if int(v_2) < x_min:
x_min = int(v_2)
if int(v_2) > x_max:
x_max = int(v_2)
else:
if int(v_2) < y_min:
y_min = int(v_2)
if int(v_2) > y_max:
y_max = int(v_2)
return x_min x_max y_min y_max
def get_68_points(img_data face_detector face_pose_predictor):
“““
用 dlib 获取面部68个特征点
:param img_data: 输入的是一张图片详细地址
:return: 将面部68个特征点坐标存入dict中返回
“““
detected_face = face_detector(img_data 0)
if len(detected_face) == 0:
print(‘No face detected in image‘)
return len(detected_face) None None None
if len(detected_face) == 1:
dd = ““
faces_all_data = {}
points_data_all = np.matrix([[p.x p.y] for p in face_pose_predictor(img_data detected_face[0]).parts()])
for idx point in enumerate(points_data_all):
“““
# 68点的坐标处理
if point[0 0] < 0:
point[0 0] = 0
if point[0 1] < 0:
point[0 1] = 0
“““
pos = (point[0 0] point[0 1])
# tuple转str并得到x、y的值
data_XY = pos.__str__()
dict_points = {“x“: data_XY.split(““)[0][1:] “y“: data_XY.split(““)[1][1:-1]}
cc = str(idx) + “:“ + str(dict_points) + ““ + dd
dd = cc
output_dict = eval(“{“ + cc[:-1] + “}“)
if len(output_dict) == 0:
err = 404
else:
err = 0
# 根据人脸框四个索引求取人脸四个坐标,左上点横、纵坐标、宽度、长度
x_min x_max y_min y_max = get_face_points(output_dict)
left top width height = x_min y_min x_max - x_min y_max - y_min
# print(left top width height)
face_rectangle = {“left“: left “top“: top “width“: width “height“: height}
faces_all_data[“landmark“] = output_dict
faces_all_data[“face_rectangle“] = face_rectangle
faces_all_data[“points_data_all“] = points_data_all.tolist()
return len(detected_f
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-01-13 18:03 dlib_get_face\.idea\
文件 188 2018-12-28 10:36 dlib_get_face\.idea\misc.xm
文件 271 2018-12-28 10:36 dlib_get_face\.idea\modules.xm
文件 12019 2019-01-13 18:03 dlib_get_face\.idea\workspace.xm
文件 408 2018-12-28 10:36 dlib_get_face\.idea\wuyong.iml
文件 6329 2019-01-13 17:36 dlib_get_face\dlib_get_face.py
文件 2202968 2019-01-13 17:48 dlib_get_face\dlib-19.7.0-cp36-cp36m-win_amd64.whl
文件 1198 2019-01-13 17:56 dlib_get_face\dlib人脸绘点.py
目录 0 2019-01-13 17:12 dlib_get_face\iuput_pic\
文件 92043 2019-01-13 14:55 dlib_get_face\iuput_pic\0.jpg
文件 104812 2019-01-11 19:03 dlib_get_face\iuput_pic\45.jpg
文件 103017 2019-01-13 15:11 dlib_get_face\iuput_pic\60.jpg
文件 113797 2019-01-13 15:14 dlib_get_face\iuput_pic\90.jpg
目录 0 2019-01-13 17:32 dlib_get_face\no_face\
文件 113797 2019-01-13 17:32 dlib_get_face\no_face\90.jpg
目录 0 2019-01-13 17:32 dlib_get_face\output_dict_data\
文件 3001 2019-01-13 17:32 dlib_get_face\output_dict_data\0.txt
文件 3075 2019-01-13 17:32 dlib_get_face\output_dict_data\45.txt
文件 2967 2019-01-13 17:32 dlib_get_face\output_dict_data\60.txt
目录 0 2019-01-13 17:32 dlib_get_face\output_pic_data\
文件 14934 2019-01-13 17:32 dlib_get_face\output_pic_data\0.jpg
文件 12917 2019-01-13 17:32 dlib_get_face\output_pic_data\45.jpg
文件 10673 2019-01-13 17:32 dlib_get_face\output_pic_data\60.jpg
文件 469157 2019-01-13 17:56 dlib_get_face\result.png
文件 99693937 2019-01-07 20:17 dlib_get_face\shape_predictor_68_face_landmarks.dat
相关资源
- Python程序设计基础 习题答案与分析
- 基于python的django框架实现的小说网站
- 人脸情绪识别VS2015python工程
- tensorflow-1.14.0-cp37-cp37m-win_amd64.whl
- tensorflow1.8.0+python35 绿色版
- PYTHON编程 第4版 上 mark lutz(著) 邹
- python实现基本正则匹配、贝叶斯预测
- 机器学习通用代码XGboost、LightGBM、C
- 股吧评论抓取及分析
- Python-TheElementsofStatisticalLearningESL的中
- 《量化投资:以python为工具》课后习
- 数据结构与算法 Python语言描述-裘宗燕
- Python-基于Tensorflow和Keras实现端到端的
- 《Python QT GUI快速编程 编程指南》书
- Python神经网络编程.pdf(英文版)+代码
- 真实世界的Python仪器监控 数据采集与
- python信号处理
- 22个python项目
- PYTHON数据可视化编程实战书籍+代码
- Python程序设计教程 江红
- 我的python世界--玩《Minecraft我的世界》
- OpenCV 3计算机视觉 Python语言实现第二
- 《Python Spark2.0 Hadoop机器学习与大数据
- laview_and_python_face_recognition.zip
- ABAQUS PYTHON二次开发攻略(完整版
- Python从入门到项目实践全彩版PDF+源码
- python项目学习
- 《python机器学习》
- 黑马程序员python原版教材
- 传智播客&黑马程序员PYTHON教程课件汇
评论
共有 条评论