INNER CODE UNIT · Python
compute_cmmd
jayin92/Skyfall-GS · cmmd_pytorch/main.py:33
def compute_cmmd(ref_dir, eval_dir, ref_embed_file=None, batch_size=32, max_count=-1):
"""Calculates the CMMD distance between reference and eval image sets.
Args:
ref_dir: Path to the directory containing reference images.
eval_dir: Path to the directory containing images to be evaluated.
ref_embed_file: Path to the pre-computed embedding file for the reference images.
batch_size: Batch size used in the CLIP embedding calculation.
max_count: Maximum number of images to use from each directory. A
non-positive value reads all images available except for the images
dropped due to batching.
Returns:
The CMMD value between the image sets.
"""
if ref_dir and ref_embed_file:
raise ValueError("`ref_dir` and `ref_embed_file` both cannot be set at the same time.")
embedding_model = embedding.ClipEmbeddingModel()