0
import cv2
import matplotlib.pyplot as plt
import cvlib as cv
from cvlib.object_detection import draw_bbox
import tensorflow

load_p = cv2.imread('C:/Users/path/file.jpg')
bbox, label, conf = cv.detect_common_objects(load_p)


img_out= draw_bbox(im, bbox, label, conf)

plt.imshow(img_out)
plt.show()

这是我的代码,一旦我绘制了图像,它似乎确实可以工作,因为它将整个对象着色/着色为蓝色。但是,对象周围没有正方形/框,既没有标签也没有置信区间。即使我以前有它,我在加载软件包时也没有错误,卸载所有东西使它再次工作。

有什么想法可能是不给我列表中的坐标的潜在问题bboxlabelconf?应该存储标记对象的框的坐标。

顺便说一句:一旦我创建了一个如上所述的变量(img_out= draw_bbox(im, bbox, label, conf)),这些就是它的值,直到 2199。它可能与在传递给函数 object_detection 之前重塑图像有关吗?

在此处输入图像描述

4

1 回答 1

0

上面的代码确实可以正常工作我只是在另一个人使用它的同一张图片上尝试过,它确实标记并绘制了框。

我的问题是,显然它无法识别来自 Yolo 数据库的典型对象,无论哪种方式,它似乎都检测到了我在图像中寻找的对象。(但没有盒子和标签)

建议从这里找到一种解决方法来获取坐标或找到另一种更合适的方法来解决我的问题。

我的问题类型与不同图片的示例:(列表中没有坐标,但似乎检测到对象)

在此处输入图像描述

工作正常且坐标存储在列表中的那个。 在此处输入图像描述

我不关心标签,我关心的是找到图像中的所有对象。

于 2020-10-29T12:47:30.607 回答