python3人脸识别的两种方法

yipeiwu_com6年前Python基础

本文实例为大家分享了python3实现人脸识别的具体代码,供大家参考,具体内容如下

第一种:

import cv2
import numpy as np

filename = 'test1.jpg'
path = r'D:\face'


def detect(filename):
  face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')
  face_cascade.load(path + '\haarcascade_frontalface_default.xml')

  img = cv2.imread(filename)
  gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
  faces = face_cascade.detectMultiScale(gray, 1.3, 5)
  for (x, y, w, h) in faces:
    img = cv2.rectangle(img, (x, y), (x + w, y + h), (255, 0, 0), 2)
  cv2.namedWindow("vikings detected")
  cv2.imshow("vikings detected", img)
  cv2.waitKey(0)


detect(filename)

结果:

第二种 参考贾志刚opencv教程

# -*- coding:utf-8 -*-
import cv2 as cv
import numpy as np

src = cv.imread('test1.jpg')
path = r'D:\face'

def face_detect_demo():
  gray = cv.cvtColor(src,cv.COLOR_BGR2GRAY)

  face_detector = cv.CascadeClassifier('haarcascade_frontalface_default.xml')
  face_detector.load(path + '\haarcascade_frontalface_default.xml')
  faces = face_detector.detectMultiScale(gray,1.3,5)
  for x,y,w,h in faces:
    cv.rectangle(src,(x,y),(x+w,y+h),(0,0,255),2)
  cv.imshow("result",src)

print("--------------python face detect-------------")
cv.namedWindow("input image",0)
cv.namedWindow("result",0)
cv.imshow("input image",src)
face_detect_demo()
cv.waitKey(0)
cv.destroyAllWindows()

结果:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python的math模块中的常用数学函数整理

在数学之中,除了加减乘除四则运算之外——这是小学数学——还有其它更多的运算,比如乘方、开方、对数运算等等,要实现这些运算,需要用到 Python 中的一个模块:Math 模块(modul...

python 读写excel文件操作示例【附源码下载】

本文实例讲述了python 读写excel文件操作。分享给大家供大家参考,具体如下: 对excel文件的操作,python有第三方的工具包支持,xlutils,在这个工具包中包含了xlr...

python并发编程之线程实例解析

python并发编程之线程实例解析

常用用法 t.is_alive() Python中线程会在一个单独的系统级别线程中执行(比如一个POSIX线程或者一个Windows线程) 这些线程将由操作系统来全权管理。线程一旦启动,...

对django中render()与render_to_response()的区别详解

render()与render_to_response()均是django中用来显示模板页面的,但是在django1.3之后,render()便比render_to_response()...

关于pip的安装,更新,卸载模块以及使用方法(详解)

在Python的学习过程中,肯定会遇到很多安装模块的地方,可以使用easy_install安装,但是easy_install相对于pip而言,最大的缺陷就是它所安装的模块是不能够卸载的,...