| from typing import List, Dict, Optional | |
| from .ImageMetadata import ImageMetadata | |
| class AnnotatedData: | |
| def __init__(self, data: Dict): | |
| self.image_ids = data.get("_via_image_id_list", []) | |
| self.metadata = { | |
| img_id: ImageMetadata( | |
| data["_via_img_metadata"][img_id]["filename"], | |
| data["_via_img_metadata"][img_id]["size"], | |
| data["_via_img_metadata"][img_id].get("regions", []) | |
| ) for img_id in self.image_ids if img_id in data["_via_img_metadata"] | |
| } | |
| def __repr__(self): | |
| return f"AnnotatedData(Images={list(self.metadata.keys())})" |