shiningleo007

基于图片和摄像头的识别:

 

import cv2  #opencv库
 
#读取图片
image=cv2.imread(\'C:/Users/Pictures/mxhy.jpg\')
#显示图片窗口

#cv2.imshow(\'faces\',image)
#窗口暂停
#cv2.waitKey(0)
#销毁窗口资源

#销毁窗口

face_model=cv2.CascadeClassifier(\'D:/github/haarcascades/haarcascade_frontalface_alt2.xml\')
#图片进行灰度处理
gray = cv2.cvtColor(image,cv2.COLOR_RGB2GRAY)
#人脸检测
faces = face_model.detectMultiScale(gray)
#标记人脸
for (x,y,w,h) in faces:
    #1.原始图片;2坐标点;3.矩形宽高 4.颜色值(RGB);5.线框
    cv2.rectangle(image,(x,y),(x+w,y+h),(0,255,0),2)
#显示图片窗口
cv2.imshow(\'faces\',image)
#窗口暂停
cv2.waitKey(0)


cv2.destoryAllWindows()
import cv2
image=cv2.imread(\'C:/Users/Pictures/fbb.jpg\')
face_model=cv2.CascadeClassifier(\'D:/haarcascades/haarcascade_frontalcatface.xml\')
#打开摄像头
capcure=cv2.VideoCapture(0)
#获取摄像头实时画面
while True:
#    读取摄像头当前这一帧的画面  ret:True fase image:当前这一帧画面
   ret,image = capcure.read()
 
#  图片灰度处理
   gray = cv2.cvtColor(image,cv2.COLOR_RGB2GRAY)
# 检查人脸
   #faces=face_model.detectMultiScale(gray,1.1,3,0,(20.20))
   faces = face_model.detectMultiScale(gray,1.1,3,0,(100,100))
#标记人脸
   for (x,y,w,h) in faces:
       #矩形标记
       cv2.rectangle(image,(x,y),(x+w,y+h),(0,255,0),2)
       #显示图片
       cv2.imshow("faces in video",image)
       #暂停窗口
       if cv2.waitKey(5) & 0xFF ==ord(\'q\'):
           break
#释放资源
capcure.release()
#销毁窗口
cv2.destroyAllWindows()

分类:

技术点:

相关文章:

  • 2021-11-30
  • 2021-09-20
  • 2022-01-04
  • 2021-11-13
  • 2022-01-14
  • 2021-11-05
  • 2021-04-18
  • 2021-11-19
猜你喜欢
  • 2021-12-18
  • 2022-02-26
  • 2022-12-23
  • 2021-10-06
  • 2021-09-14
  • 2022-12-23
相关资源
相似解决方案