人脸检测基础
给出的程序的目标是在视频帧中检测感兴趣的对象(汽车)并保持跟踪同一对象。这是如何在Python检测车辆的示例。
为什么要进行车辆检测?
- 车辆事故造成的人员生命和财务损失令人震惊。
- 在从移动平台获取的图像中检测车辆是一个具有挑战性的问题。
下载要求的步骤如下:
- 下载Python 2.7.x 版本、numpy 和 OpenCV 2.4.x 版本。检查您的 Windows 是否兼容 32 位或 64 位并进行相应安装。
sudo apt-get install python pip install numpy
- 从这里安装 OpenCV
- 确保 numpy 正在您的Python运行,然后尝试安装 opencv。
- 将cars.xml 文件放在同一文件夹中。将其另存为 .xml 文件。
- 从此处下载此视频作为输入
# OpenCV Python program to detect cars in video frame # import libraries of python OpenCV import cv2 # capture frames from a video cap = cv2.VideoCapture('video.avi') # Trained XML classifiers describes some features of some object we want to detect car_cascade = cv2.CascadeClassifier('cars.xml') # loop runs if capturing has been initialized. while True: # reads frames from a video ret, frames = cap.read() # convert to gray scale of each frames gray = cv2.cvtColor(frames, cv2.COLOR_BGR2GRAY) # Detects cars of different sizes in the input image cars = car_cascade.detectMultiScale(gray, 1.1, 1) # To draw a rectangle in each cars for (x,y,w,h) in cars: cv2.rectangle(frames,(x,y),(x+w,y+h),(0,0,255),2) # Display frames in a window cv2.imshow('video2', frames) # Wait for Esc key to stop if cv2.waitKey(33) == 27: break # De-allocate any associated memory usage cv2.destroyAllWindows()
参考:
- YouTube
- OpenCV
- 谷歌网上论坛