OpenCv+cascade 进行图像识别——python

本文介绍了如何使用OpenCV和Cascade在Python中进行图像识别,通过XML文件建立模型,并展示了如何载入图片、设置参数、在图像上画出识别区域的方框。同时,文章还讲解了如何利用OpenCV对摄像头进行实时获取,控制摄像头读取帧,转换图像色彩,显示或保存图像,并提供了在检测到特定输入时退出循环的机制。

1.传入XML文件建立模型

import cv2

face_cascade=cv2.CascadeClassifier("haarcascade_frontalface_default.xml")

2.载入图片

传入为BGR图,转为Grey图后进行识别;

#识别模型
img = cv2.imread("photo.jpg")  #不传入参数 默认1
grey_img = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)    #将BGR转为gray

#cascade XML model

3.参数

得到的face为numpyarray,为监测到的左上角坐标与宽高参数;

#numpy_array
faces = face_cascade.detectMultiScale(grey_img,
scaleFactor=1.05,#每次放大1.05去找更大的face  越接近1,每次寻找约精确
minNeighbors=5)  #每次找5个neighbor

4.在图像上画出方框

cv2.rectangle(img,顶点1(,),顶点2(,),颜色,宽度)

#print(faces)  #给出左上角的点坐标,以及长款

for x,y,w,h in faces:
    img = cv2.rectangle(img,(x
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值