Mosaic_Generator / src /config.py
Teoman21's picture
-done mosaic generator
4376584
from __future__ import annotations
from dataclasses import dataclass
from enum import Enum
from typing import List
class Implementation(Enum):
VECT = "Vectorised"
class MatchSpace(Enum):
LAB = "Lab (perceptual)"
RGB = "RGB (euclidean)"
@dataclass
class Config:
# Core
grid: int = 32
out_w: int = 768
out_h: int = 768
tile_size: int = 32
# Hugging Face tile source (always used)
hf_dataset: str = "Kratos-AI/KAI_car-images"
hf_split: str = "train"
hf_limit: int = 200 # Increased for better tile diversity
hf_cache_dir: str = None # Optional Hugging Face datasets cache directory
# Pipeline
impl: Implementation = Implementation.VECT
match_space: MatchSpace = MatchSpace.LAB
# Quantization
use_uniform_q: bool = False
q_levels: int = 8
use_kmeans_q: bool = False
k_colors: int = 8
# Creative
tile_norm_brightness: bool = False
allow_rotations: bool = False
# Caching
tiles_cache_dir: str = None # Optional on-disk cache for preprocessed tiles
# Benchmark
do_bench: bool = False
bench_grids: List[int] = None