bipolaroidbipolaroid/editor/utils/compute_histogram.py
2024-04-12 20:11:56 +01:00

19 lines
437 B
Python

from PIL import Image
import numpy as np
def compute_histogram(
image: Image, bins: int, value_range=(0, 256), normalize: bool = True
):
image = np.array(image)
histogram, _ = np.histogramdd(
image.reshape(-1, 3), bins=bins, range=[value_range, value_range, value_range]
)
histogram = histogram.astype(np.float32)
if normalize:
histogram = histogram / np.sum(histogram)
return histogram