I want to use Sauvola for multiple iteration of the same image with different parameters. However it doenst work, because the image doenst change at all in the second binarization as seen in the pictureNot working iteration of images with sauvola
It might be because sauvola cant be used for an monochromatic image as there is nothing to change, but i couldnt find an actual statement to support or condradict that.
My code:
`import os
import cv2
import numpy as np
import matplotlib.pyplot as plt
from skimage import filters
to_binarize_images_path = “../Data/shabby-images/to-binarize/”
binarized_images_path = “../Data/shabby-images/binarized-images-i1/”
for file in os.listdir(to_binarize_images_path):
if file.endswith(“.txt”):
break
image = cv2.imread(to_binarize_images_path + file, cv2.IMREAD_GRAYSCALE)
thresh_sauvola = filters.threshold_sauvola(image, window_size=0.2, k=13)
mono_image = image > thresh_sauvola
mono_image = (mono_image * 255).astype(np.uint8)
thresh_sauvola2 = filters.threshold_sauvola(mono_image, window_size=301, k=0.9)
mono_image2 = mono_image > thresh_sauvola2
mono_image2 = (mono_image2 * 255).astype(np.uint8)
fig, axes = plt.subplots(1, 3, figsize=(15, 5))
axes[0].imshow(image, cmap=plt.cm.gray)
axes[0].set_title('Original')
axes[1].imshow(mono_image, cmap=plt.cm.gray)
axes[1].set_title('Binarisiert')
axes[2].imshow(mono_image2, cmap=plt.cm.gray)
axes[2].set_title('Binarisiert 2')`
Prometheus is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.