def __call__()

in src/pixparse/data/transforms.py [0:0]


    def __call__(self, img):
        if isinstance(img, torch.Tensor):
            assert False
        else:
            data = np.array(img.convert("L"))
            data = data.astype(np.uint8)
            max_val = data.max()
            min_val = data.min()
            if max_val == min_val:
                return img
            data = (data - min_val) / (max_val - min_val) * 255
            gray = 255 * (data < 200).astype(np.uint8)

            coords = cv2.findNonZero(gray)  # Find all non-zero points (text)
            a, b, w, h = cv2.boundingRect(coords)  # Find minimum spanning bounding box
            return img.crop((a, b, w + a, h + b))