- 前言:相对较简单的车辆检测,将网上原有的复杂代码进行了缩减,只保留最为关键的代码部分,输入为图像,输出也为图像,代码简洁明了,适合初学者。
- 开发环境:win10+64bit 、opencv4.2.0、python 3.6.4、vscode
- 分类器下载地址
- 代码段:
import cv2
#上传分类器
carCascade = cv2.CascadeClassifier('myhaar.xml')
#读取图像
image = cv2.imread("1.jpg")
WIDTH = 1280
HEIGHT = 720
#规定大小
image = cv2.resize(image, (WIDTH, HEIGHT))
#灰度化
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
cv2.imshow("gray",gray)
cv2.waitKey(0)
#车辆检测
cars = carCascade.detectMultiScale(gray, 1.1, 13, 18, (24, 24))
#绘制矩形框
for (x,y,w,h) in cars:
cv2.rectangle(image,(x,y),(x+w,y+h),(0,255,0),2)
#显示结果
cv2.imshow("image",image)
cv2.waitKey(0)
原始图像为: