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实现textrank关键词提取

用python写了一个简单版本的textrank,实现提取关键词的功能。 import numpy as np import jieba import jieba.posseg...

Django 自动生成api接口文档教程

Django 自动生成api接口文档教程

最近在写测试平台,需要实现一个节点服务器的api,正好在用django,准备使用djangorestframework插件实现。 需求 实现一个接口,在调用时,通过传递的参数,直接运行对...

简单了解python反射机制的一些知识

反射 反射机制就是在运行时,动态的确定对象的类型,并可以通过字符串调用对象属性、方法、导入模块,是一种基于字符串的事件驱动。 解释型语言:程序不需要编译,程序在运行时才翻译成机器语言,每...

Python中内置数据类型list,tuple,dict,set的区别和用法

Python语言简洁明了,可以用较少的代码实现同样的功能。这其中Python的四个内置数据类型功不可没,他们即是list, tuple, dict, set。这里对他们进行一个简明的总结...

使用 Python 写一个简易的抽奖程序

使用 Python 写一个简易的抽奖程序

不知道有多少人是被这个头图骗进来的:) 事情的起因是这样的,上周有同学问小编,看着小编的示例代码敲代码,感觉自己也会写了,如果不看的话,七七八八可能也写的出来,但是一旦自己独立写一段程...