def _draw_on_image(img, objs, class_sets_dict):
colors = [(86, 0, 240), (173, 225, 61), (54, 137, 255),\
(151, 0, 255), (243, 223, 48), (0, 117, 255),\
(58, 184, 14), (86, 67, 140), (121, 82, 6),\
(174, 29, 128), (115, 154, 81), (86, 255, 234)]
font = cv2.FONT_HERSHEY_SIMPLEX
for ind, obj in enumerate(objs):
if obj['box'] is None: continue
x1, y1, x2, y2 = obj['box'].astype(int)
cls_id = class_sets_dict[obj['class']]
if obj['class'] == 'dontcare':
cv2.rectangle(img, (int(x1), int(y1)), (int(x2), int(y2)), (255, 0, 0), 1)
continue
cv2.rectangle(img, (int(x1), int(y1)), (int(x2), int(y2)), colors[cls_id % len(colors)], 1)
text = '{:s}*|'.format(obj['class'][:3]) if obj['difficult'] == 1 else '{:s}|'.format(obj['class'][:3])
text += '{:.1f}|'.format(obj['truncation'])
text += str(obj['occlusion'])
cv2.putText(img, text, (x1-2, y2-2), font, 0.5, (255, 0, 255), 1)
return img
评论列表
文章目录