Мне нужно преобразовать изображение в текст или изображение, состоящее только из 0 и 1. Есть ли способ сделать это программно, желательно на Python?
Вот моя попытка:
Шаг 1: Открыть изображение:
from PIL import Image
srcImage = Image.open("src.jpg")
Шаг 2: Оттенки серого изображения:
grayImage = srcImage.convert('L')
Шаг 3: Бинаризация изображения:
binarizedImage = grayImage.point(lambda x: 0 if x<128 else 255, '1')
Теперь я застрял, конвертируя черные точки в 1, а белые - в 0, и сохраняю их в текстовый файл с высотой изображения, преобразованной в строки (в данном примере: от 174 пикселей до 174 строк) и шириной изображения, преобразованной в длину текста ( в этом примере: от 310 пикселей до 310 символов) или изображение большего размера с 0 вместо белых точек и 1 вместо черных точек.
Решение обоих случаев было бы высоко оценено.
Полный код бинаризации (модифицированная версия пути PIL бинаризация ):
from PIL import Image
srcImage = Image.open("src.jpg")
grayImage = srcImage.convert('L')
binarizedImage = grayImage.point(lambda x: 0 if x<128 else 255, '1')
binarizedImage.save("binarized.png")