在python中如何使用openCv绘制检测部分的矩形?

2024-06-02 05:20:42 发布

您现在位置:Python中文网/ 问答频道 /正文

我创建了一个模型,将普通车和警车分类

如果我把图像传递给model,它会给出一个正确的输出

但是当图像有很多对象时,如何在上面画一个矩形呢 这两者(标签-:normal_Carpolice_Car

我可以在每个对象的图像中绘制一个矩形(但不使用模型)

怎么做??在

提前谢谢


Tags: 对象模型图像model绘制分类标签car
1条回答
网友
1楼 · 发布于 2024-06-02 05:20:42

当您在图像中找到一个对象时,OpenCV会给出它的位置。你可以裁剪它并通过预先训练的模型预测。在

1)可以加载H5文件模型或冻结等

考试用: model = load_model("modelname.h5")

2)在图像中查找对象并提取对象位置(x,y,w,h)

(_, Contours ,_) = cv2.findContours(Image,cv2.RETR_LIST,cv2.CHAIN_APPROX_SIMPLE) for area in Contours: (x, y, w, h) = cv2.boundingRect(area) ObjROI = Image[y : y+h, x : x+w] p = model.predict(cv2.resize(ObjROI, (*Size of CNN input*)))

现在你已经有了所找到的对象和它的位置的精确性,画一个矩形并把它放在文本中

相关问题 更多 >