Working compression example with binary ANS

This commit is contained in:
2024-12-01 17:46:32 -08:00
parent 211c4a511b
commit d789388f55
2 changed files with 412 additions and 0 deletions
+7
View File
@@ -1,3 +1,4 @@
from typing import Generator
from PIL import Image
from pathlib import Path
import numpy as np
@@ -74,3 +75,9 @@ def _squared_quantization_error(img_np: np.ndarray, palette: np.ndarray):
sq_distances = np.sum((pixels[:, None, :] - pal[None, :, :]) ** 2, axis=2)
min_errs = np.min(sq_distances, axis=1)
return np.sum(min_errs)
def walk_corpus(quantized=True) -> Generator[Path, None, None]:
if quantized:
return Path('../corpus/quantized/').glob('*.png')
else:
return Path('../corpus/').glob('*.*')