(test) test dataset
Browse files- tests/test_dataset.py +24 -0
tests/test_dataset.py
ADDED
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
from pathlib import Path
|
2 |
+
from wireseghr.data.dataset import WireSegDataset
|
3 |
+
|
4 |
+
|
5 |
+
def test_real_dataset_masks_ids_1_to_5_have_positive_pixels():
|
6 |
+
images_dir = "dataset/train/images"
|
7 |
+
masks_dir = "dataset/train/gts"
|
8 |
+
|
9 |
+
ds = WireSegDataset(images_dir, masks_dir)
|
10 |
+
|
11 |
+
# Map numeric id -> dataset index by inspecting dataset's indexed pairs
|
12 |
+
id_to_idx = {}
|
13 |
+
for idx, (_ip, mp) in enumerate(ds._items):
|
14 |
+
stem = Path(mp).stem
|
15 |
+
assert stem.isdigit(), f"Non-numeric mask filename encountered: {mp}"
|
16 |
+
id_to_idx[int(stem)] = idx
|
17 |
+
|
18 |
+
# Check masks 1..5 specifically
|
19 |
+
for i in range(1, 6):
|
20 |
+
assert i in id_to_idx, f"Missing mask for id {i} in {masks_dir}"
|
21 |
+
sample = ds[id_to_idx[i]]
|
22 |
+
mask = sample["mask"]
|
23 |
+
print(mask)
|
24 |
+
assert mask.any(), f"Mask {i}.png has no positive pixels"
|