Удаление наземных аннотаций правды создает черный файл PNG - PullRequest
0 голосов
/ 06 ноября 2019

Я создаю свой собственный набор данных для обучения на модели Deeplab. В настоящее время я использую LabelMe для аннотирования изображений. Как только изображения преобразуются из сегментированных PNG в необработанный PNG, изображение становится полностью черным. Я не уверен, должно ли изображение быть черным или на нем должен быть контур объекта, который я выбрал в LabelMe.

Я использую этот сценарий, который основан на remove_gt_colormap из репозитория deeplab github.


def _remove_colormap(filename):
  return np.array(Image.open(filename))


def _save_annotation(annotation, filename):

  pil_image = Image.fromarray(annotation.astype(dtype=np.uint8))
  with tf.compat.v1.gfile.Open(filename, mode='w') as f:
    pil_image.save(f, 'PNG')


def main(unused_argv):
  # Create the output directory if not exists.
  if not tf.compat.v1.gfile.IsDirectory(FLAGS.output_dir):
      tf.compat.v1.io.gfile.makedirs(FLAGS.output_dir)

  annotations = glob.glob(os.path.join(FLAGS.original_gt_folder,
                                       '*.' + FLAGS.segmentation_format))
  for annotation in annotations:
    raw_annotation = _remove_colormap(annotation)
    filename = os.path.basename(annotation)[:-4]
    _save_annotation(raw_annotation,
                     os.path.join(
                         FLAGS.output_dir,
                         filename + '.' + FLAGS.segmentation_format))


if __name__ == '__main__':
    tf.compat.v1.app.run()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...