python 用opencv调用训练好的模型进行识别的方法

yipeiwu_com6年前Python基础

此程序为先调用opencv自带的人脸检测模型,检测到人脸后,再调用我自己训练好的模型去识别人脸,使用时更改模型地址即可

#!usr/bin/env python
import cv2
font=cv2.FONT_HERSHEY_SIMPLEX
cascade1 = cv2.CascadeClassifier("D:\\opencv249\\opencv\\sources\\data\\haarcascades\\haarcascade_frontalface_alt_tree.xml")
cascade2 = cv2.CascadeClassifier("D:\\opencv249\\opencv\\sources\\data\\haarcascades\\xml.xml")
cap = cv2.VideoCapture(0)
while True:
 ret,frame = cap.read()
 gray = cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)
 rect = cascade1.detectMultiScale(gray,scaleFactor=1.3,minNeighbors=9,minSize=(50,50),flags = cv2.cv.CV_HAAR_SCALE_IMAGE)
 if not rect is (): 
  for x,y,z,w in rect:
   roiImg = gray[y:y+w,x:x+z]
   rect1 = cascade2.detectMultiScale(roiImg,scaleFactor=1.3,minNeighbors=9,minSize=(50,50),flags = cv2.cv.CV_HAAR_SCALE_IMAGE)
   if not rect1 is ():
    for (a,b,c,d) in rect1:
     print "rect",rect1
     cv2.putText(frame,'Chenym',(x,y), font, 2,(0,0,255),2)
     cv2.rectangle(frame,(x+a,y+b),(x+a+c,y+b+d),(0,0,255),2)
 cv2.imshow('frame',frame)
 if cv2.waitKey(1) &0xFF == ord('q'):
  break
cap.release()
cv2.destroyAllWindows()

以上这篇python 用opencv调用训练好的模型进行识别的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

解决python测试opencv时imread导致的错误问题

解决python测试opencv时imread导致的错误问题

如下所示: import cv2 import numpy as np img = cv2.imread("1.jpg")//图片和代码在同个目录,改为相对路径,解决由imrea...

Python字符串的修改方法实例

这篇文章主要介绍了Python字符串的修改方法实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 我们在修改字符串时 通常遇到报错:...

使用beaker让Facebook的Bottle框架支持session功能

bottle是一个小型web框架,很小只有一个文件,但功能确很强大,学起来也简单,简单和小巧的同时也有很多不足,某些功能支持还不是很完善,比如session.但是也有它自身的好处,我们可...

详解python的几种标准输出重定向方式

一. 背景 在Python中,文件对象sys.stdin、sys.stdout和sys.stderr分别对应解释器的标准输入、标准输出和标准出错流。在程序启动时,这些对象的初值由sys...

Python编写一个闹钟功能

音频文件放入和.py文件同级的目录下 import winsound # 导入此模块实现声音播放功能 import time # 导入此模块,获取当前时间 # 提示用户设置时间和分钟...