17 lines
893 B
Python
17 lines
893 B
Python
"""Fresh cats/dogs test: CIFAR-10 JPEG mirror test 0700–0999 per class (600 images never used before).
|
||
|
||
usage: ~/anvenv/bin/python prepare_fresh_test.py → /home/int/run/cats-dogs/data-v3/fresh_test.npz
|
||
"""
|
||
from pathlib import Path
|
||
|
||
import numpy as np
|
||
from PIL import Image
|
||
|
||
cache = Path('/home/int/run/cats-dogs/data/github-jpeg-cache')
|
||
items = [(label, cls, i) for cls, label in enumerate(('cat', 'dog')) for i in range(700, 1000)]
|
||
order = np.random.default_rng(20261015).permutation(len(items))
|
||
items = [items[j] for j in order]
|
||
rgb = np.stack([np.asarray(Image.open(cache / f'test-{l}-{i:04d}.jpg').convert('RGB')).transpose(2, 0, 1) for l, _, i in items])
|
||
np.savez_compressed('/home/int/run/cats-dogs/data-v3/fresh_test.npz', rgb=rgb,
|
||
labels=np.array([c for _, c, _ in items], np.uint8), names=np.array([f'test/{l}/{i:04d}' for l, _, i in items]))
|
||
print(rgb.shape)
|