model.plot_model() model.print_summary() model_path = model.find_last() # model_path = os.path.join("log_frcnn", "shapes20201219T1642", # "weights", "faster_rcnn_shapes_0001.h5") # Load trained weights model.load_weights(model_path, by_name=True) #%% Test on a random image image_id = random.choice(dataset_val.image_ids) original_image, image_meta, gt_class_id, gt_bbox =\ data.load_image_gt(dataset_val, inference_config, image_id) log("original_image", original_image) log("image_meta", image_meta) log("gt_class_id", gt_class_id) log("gt_bbox", gt_bbox) visualize.display_instances(original_image, gt_bbox, gt_class_id, dataset_train.class_names, ax=get_ax()) results = model.detect([original_image], verbose=1) r = results[0] visualize.display_instances(original_image, r['rois'],
print("image ID: {}.{} ({}) {}".format(info["source"], info["id"], image_id, dataset.image_reference(image_id))) # Run object detection results = model.detect([image], verbose=1) # Display results ax = get_ax(1) r = results[0] visualize.display_instances(image, r['rois'], r['class_ids'], dataset.class_names, r['scores'], ax=ax, title="Predictions") log("gt_class_id", gt_class_id) log("gt_bbox", gt_bbox) #%% Precision-Recall # Draw precision-recall curve AP, precisions, recalls, overlaps = utils.compute_ap(gt_bbox, gt_class_id, r['rois'], r['class_ids'], r['scores']) visualize.plot_precision_recall(AP, precisions, recalls) #%% # Grid of ground truth objects and their predictions visualize.plot_overlaps(gt_class_id, r['class_ids'], r['scores'], overlaps, dataset.class_names)
dataset.image_reference(image_id))) print( "Original image shape: ", modellib.parse_image_meta(image_meta[np.newaxis, ...])["original_image_shape"][0]) # Run object detection results = model.detect_molded(np.expand_dims(image, 0), np.expand_dims(image_meta, 0), verbose=1) # Display results r = results[0] print(r) print(gt_bbox) log("gt_class_id", gt_class_id) log("gt_bbox", gt_bbox) # Compute AP over range 0.5 to 0.95 and print it utils.compute_ap_range(gt_bbox, gt_class_id, r['rois'], r['class_ids'], r['scores'], verbose=1) visualize.display_differences(image, gt_bbox, gt_class_id, r['rois'], r['class_ids'],