Exemple #1
0
def predict(frozen_model, training_cnf, predict_dir, image_size, output_path,
            num_classes, gpu_memory_fraction):
    cnf = util.load_module(training_cnf).cnf
    standardizer = cnf['standardizer']
    graph = util.load_frozen_graph(frozen_model)
    preprocessor = convert_preprocessor(image_size)
    predictor = SegmentPredictor(graph, standardizer, preprocessor)
    # images = data.get_image_files(predict_dir)
    image_names = [
        filename.strip() for filename in os.listdir(predict_dir)
        if filename.endswith('.jpg')
    ]
    hist = np.zeros((num_classes, num_classes))
    for image_filename in image_names:
        final_prediction_map = predictor.predict(
            os.path.join(predict_dir, image_filename))
        final_prediction_map = final_prediction_map.transpose(0, 2,
                                                              1).squeeze()
        gt_name = os.path.join(predict_dir,
                               image_filename[:-4] + '_final_mask' + '.png')
        gt = convert(gt_name, image_size)
        gt = np.asarray(gt)
        gt = convert_labels(gt, image_size, image_size)
        hist += compute_hist(gt, final_prediction_map, num_classes=num_classes)
    iou = np.diag(hist) / (hist.sum(1) + hist.sum(0) - np.diag(hist))
    meaniou = np.nanmean(iou)
    print('Mean IOU %5.5f' % meaniou)
Exemple #2
0
def predict(frozen_model, training_cnf, image_path, image_size, output_path, gpu_memory_fraction):
  cnf = util.load_module(training_cnf).cnf
  standardizer = cnf['standardizer']
  graph = util.load_frozen_graph(frozen_model)
  preprocessor = convert_preprocessor(448)
  predictor = SegmentPredictor(graph, standardizer, preprocessor)
  final_prediction_map = predictor.predict(image_path)
  final_prediction_map = final_prediction_map.transpose(0, 2, 1).squeeze()
  image = data.load_image(image_path, preprocessor=preprocessor)
  img = image.transpose(2, 1, 0)
  img = Image.fromarray(img.astype('uint8'), 'RGB')
  img.save('/tmp/test.png')
  image_filename = image_path.split('/')[-1]
  plot_masks('/tmp/test.png', final_prediction_map, output_path)
  """
Exemple #3
0
def predict(frozen_model, training_cnf, predict_dir, image_size, output_path,
            num_classes, gpu_memory_fraction):
    cnf = util.load_module(training_cnf).cnf
    standardizer = cnf['standardizer']
    graph = util.load_frozen_graph(frozen_model)
    preprocessor = convert_preprocessor(image_size)
    predictor = SegmentPredictor(graph, standardizer, preprocessor)
    # images = data.get_image_files(predict_dir)
    image_names = [
        filename.strip() for filename in os.listdir(predict_dir)
        if filename.endswith('.jpg')
    ]

    iou = IOU()
    per_class_iou = iou.per_class_iou(predictor, predict_dir, image_size)
    meaniou = iou.meaniou(predictor, predict_dir, image_size)
    print(per_class_iou)
    print('Mean IOU %5.5f' % meaniou)