records.py 577 B

12345678910111213141516171819202122232425
  1. from __future__ import annotations
  2. from dataclasses import dataclass, field
  3. from pathlib import Path
  4. @dataclass(slots=True)
  5. class SegSampleRecord:
  6. """
  7. 统一的分割样本记录格式。
  8. 这一层只负责“索引”,不负责真正读取图像。
  9. """
  10. dataset_name: str
  11. image_path: Path
  12. mask_path: Path | None = None
  13. annotation_path: Path | None = None
  14. split: str | None = None
  15. sample_id: str | None = None
  16. class_name: str | None = None
  17. meta: dict[str, str] = field(default_factory=dict)
  18. __all__ = ["SegSampleRecord"]