Аннотации в xml конвертируются в json?

#python #tensorflow #machine-learning #keras #computer-vision

#python #tensorflow #машинное обучение #keras #компьютерное зрение

Вопрос:

Я использую MASK RCNN keras и tensorflow, и я хотел бы знать, смог ли кто-нибудь обучиться, используя файл аннотаций xml, или кто-то преобразовал xml в json. Может кто-нибудь показать мне пример, как использовать функцию load_(), если я изменю свой XML-файл на json?

Я сделал несколько аннотаций с помощью инструмента VIA, и это было правильно (обучение и обнаружение), но я действительно хотел бы использовать аннотации xml, потому что они сделаны, и требуется много времени, чтобы начать все сначала.

Я преобразовал свои XML-файлы в json, но у меня нет полигонов или областей в моих аннотациях, как я мог бы это использовать? Спасибо.

Я был бы признателен за это.

 annotations1 = json.load(open(os.path.join(dataset_dir, "dataset.json")))

        annotations = list(annotations1.values())  # don't need the dict keys

        annotations = [a for a in annotations if a['images']]

        for a in annotations:

            polygons = [r['shape_attributes'] for r in a['regions'].values()]

            image_path = os.path.join(dataset_dir, a['filename'])
            image = skimage.io.imread(image_path)
            height, width = image.shape[:2]

            self.add_image(
                "damage",  
                image_id=a['filename'],  
                path=image_path,
                width=width, height=height,
                polygons=polygons)
  

Ответ №1:

Вам нужно создать свой собственный скрипт для преобразования из XML в JSON или просто удалить load_mask() функцию.

Комментарии:

1. Спасибо, это я сделал, я создал свой собственный скрипт для преобразования из xml в json, а также мне пришлось создать точки между областью прямоугольника, потому что вам нужна форма многоугольника.