(debug) fix eval loop not selecting randomly
Browse files
train.py
CHANGED
|
@@ -670,13 +670,14 @@ def validate(
|
|
| 670 |
t0 = time.time()
|
| 671 |
total_tiles = 0
|
| 672 |
target_n = min(len(dset_val), max_images)
|
|
|
|
| 673 |
print(
|
| 674 |
f"[Eval] Started: N={target_n}/{len(dset_val)} coarse={coarse_size} patch={fine_patch_size} overlap={fine_overlap} stride={fine_patch_size - fine_overlap} fine_batch={fine_batch}",
|
| 675 |
flush=True,
|
| 676 |
)
|
| 677 |
-
for i in
|
| 678 |
-
if (
|
| 679 |
-
print(f"[Eval] Running... {
|
| 680 |
item = dset_val[i]
|
| 681 |
img = item["image"].astype(np.float32) / 255.0 # HxWx3
|
| 682 |
mask = item["mask"].astype(np.uint8)
|
|
|
|
| 670 |
t0 = time.time()
|
| 671 |
total_tiles = 0
|
| 672 |
target_n = min(len(dset_val), max_images)
|
| 673 |
+
idxs = random.sample(range(len(dset_val)), k=target_n)
|
| 674 |
print(
|
| 675 |
f"[Eval] Started: N={target_n}/{len(dset_val)} coarse={coarse_size} patch={fine_patch_size} overlap={fine_overlap} stride={fine_patch_size - fine_overlap} fine_batch={fine_batch}",
|
| 676 |
flush=True,
|
| 677 |
)
|
| 678 |
+
for j, i in enumerate(idxs):
|
| 679 |
+
if (j % 2) == 0:
|
| 680 |
+
print(f"[Eval] Running... {j}/{target_n}", flush=True)
|
| 681 |
item = dset_val[i]
|
| 682 |
img = item["image"].astype(np.float32) / 255.0 # HxWx3
|
| 683 |
mask = item["mask"].astype(np.uint8)
|