我有一个数据集,我正在其中检查内部人员是否戴着口罩。我想可视化地面真值边界框,通过查找图像的借条来评估模型性能。为此,我需要绘制地面真相边界框。到目前为止,我只找到了一种手动绘制边界框的方法。有没有一种算法可以自动绘制地面真值边界框。
from d2l import mxnet as d2l
from mxnet import image, npx
d2l.set_figsize()
img = image.imread('face-mask-detector/dataset/with_mask/0-with-mask.jpg').asnumpy()
d2l.plt.imshow(img)
cat_bbox = [358, 75, 150, 100]
#@save
def bbox_to_rect(bbox, color):
"""Convert bounding box to matplotlib format."""
# Convert the bounding box (top-left x, top-left y, bottom-right x,
# bottom-right y) format to matplotlib format: ((upper-left x,
# upper-left y), width, height)
return d2l.plt.Rectangle(
xy=(bbox[0], bbox[1]), width=bbox[2]-bbox[0], height=bbox[3]-bbox[1],
fill=False, edgecolor=color, linewidth=2)
fig = d2l.plt.imshow(img)
fig.axes.add_patch(bbox_to_rect(cat_bbox, 'blue'))
d2l.plt.show()