我看到你在线上使用了一个过滤器 b = [x for x in classes if x == 1] 只是得到所有的人检测。 (在标签地图中,人的身份正好是1)。但它没有用,因为你需要改变 boxes , scores 和 classes 因此。试试这个 :
b = [x for x in classes if x == 1]
boxes
scores
classes
首先删除该行
然后添加以下内容 sess.run() 功能
sess.run()
boxes = np.squeeze(boxes) scores = np.squeeze(scores) classes = np.squeeze(classes) indices = np.argwhere(classes == 1) boxes = np.squeeze(boxes[indices]) scores = np.squeeze(scores[indices]) classes = np.squeeze(classes[indices])
然后调用可视化功能
vis_util.visualize_boxes_and_labels_on_image_array( image_np, boxes, classes, scores, category_index, use_normalized_coordinates=True, line_thickness=8)
这个想法是模型可以产生多个类的检测,但只选择类人来对图像进行可视化。