python实现opencv物体识别
时间: 2023-10-02 20:07:11 浏览: 158
在 Python 中,可以使用 OpenCV 库来实现物体识别。以下是一个简单的示例代码:
```python
import cv2
def object_detection(image_path, cascade_path):
# 加载物体识别级联分类器
cascade = cv2.CascadeClassifier(cascade_path)
# 读取图像
image = cv2.imread(image_path)
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
# 物体检测
objects = cascade.detectMultiScale(gray, scaleFactor=1.1, minNeighbors=5, minSize=(30, 30))
# 在图像上绘制检测到的物体框
for (x, y, w, h) in objects:
cv2.rectangle(image, (x, y), (x+w, y+h), (0, 255, 0), 2)
# 显示结果图像
cv2.imshow("Object Detection", image)
cv2.waitKey(0)
cv2.destroyAllWindows()
# 输入图像路径和级联分类器路径
image_path = "image.jpg"
cascade_path = "haarcascade_frontalface_default.xml"
object_detection(image_path, cascade_path)
```
在上述代码中,需要提供一个图像路径和一个级联分类器的路径。你可以使用不同的级联分类器来实现不同类型的物体识别,例如使用面部级联分类器进行人脸检测。这里使用的是 OpenCV 提供的默认面部级联分类器(haarcascade_frontalface_default.xml)。
运行代码后,将显示带有物体检测框的图像窗口,并等待按下任意键来关闭窗口。
阅读全文