Задать вопрос
Oboymochka
@Oboymochka

Как исправить ошибку при выполнении кода с Tesseract-OCR (не видит русский язык)?

понадобилось извлечь текст из изображений (на русском языке). Вроде бы сделала все верно, но возникает ошибка при запуске. Никак не могу понять что сделала не так:
код
import pytesseract
from PIL import Image
import os

# Укажите полный путь к Tesseract
pytesseract.pytesseract.tesseract_cmd = r'C:\Program Files\Tesseract-OCR\tesseract.exe'

# Установите TESSDATA_PREFIX
os.environ['TESSDATA_PREFIX'] = r'C:\Program Files\Tesseract-OCR'

# Укажите путь к папке с изображениями
image_folder = r"D:\Новая папка\PythonProject1\.venv\frames\input_video1"
output_file = r"D:\Новая папка\PythonProject1\output.txt"

# Открываем файл для записи
with open(output_file, 'w', encoding='utf-8') as f:
    for filename in os.listdir(image_folder):
        if filename.lower().endswith(('.png', '.jpg', '.jpeg')):
            img_path = os.path.join(image_folder, filename)
            if not os.path.exists(img_path):
                print(f"Файл не найден: {img_path}")
                continue
            try:
                img = Image.open(img_path)
                text = pytesseract.image_to_string(img, lang='rus')
                if text.strip():  # Проверка, что текст не пустой
                    f.write(text + '\n')
                else:
                    print(f"Текст не извлечен из {filename}")
                print(f"Текст извлечен из {filename}")
            except pytesseract.pytesseract.TesseractError as e:
                print(f"Ошибка Tesseract при обработке {filename}: {e}")
            except Exception as e:
                print(f"Ошибка при обработке {filename}: {e}")

print("Текст успешно извлечен и сохранен в", output_file)


Текст ошибки:
Ошибка Tesseract при обработке output_0028.png: (1, 'Error opening data file C:\\Program Files\\Tesseract-OCR/rus.traineddata Please make sure the TESSDATA_PREFIX environment variable is set to your "tessdata" directory. Failed loading language \'rus\' Tesseract couldn\'t load any languages! Could not initialize tesseract.')


И так с каждым файлом. TESSDATA_PREFIX в среде есть. Файл с языком есть (установила все языки). Не понимаю что не так, помогите,пожалуйста.(

679febb1d8fec380642852.png679febb82a313077731426.png679febc2b1cc6925920808.png
  • Вопрос задан
  • 13 просмотров
Подписаться 1 Средний 1 комментарий
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы