生成一个使用python的目标检测代码
时间: 2024-05-02 15:20:59 浏览: 156
以下是一个使用Python的目标检测代码示例:
```
import cv2
# 加载预训练模型
model = cv2.dnn.readNetFromTensorflow('model.pb')
# 加载图像
image = cv2.imread('image.jpg')
# 创建blob
blob = cv2.dnn.blobFromImage(image, scalefactor=1.0, size=(300, 300), mean=(104.0, 177.0, 123.0))
# 运行模型
model.setInput(blob)
output = model.forward()
# 遍历输出,找到置信度大于0.5的物体
for detection in output[0, 0, :, :]:
confidence = detection[2]
if confidence > 0.5:
x1 = int(detection[3] * image.shape[1])
y1 = int(detection[4] * image.shape[0])
x2 = int(detection[5] * image.shape[1])
y2 = int(detection[6] * image.shape[0])
cv2.rectangle(image, (x1, y1), (x2, y2), (0, 255, 0), 2)
# 显示结果
cv2.imshow('image', image)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
这个代码使用OpenCV的dnn模块加载了一个预训练的TensorFlow模型,然后用它来检测一张图像中的物体。它通过创建一个blob,将其设置为模型的输入,然后运行模型来获取输出。最后,它遍历输出,找到置信度大于0.5的物体,并在图像中绘制矩形框来标记它们。
阅读全文