Главная цель — максимально сохранить качество изображения для последующего OCR.
Без явного требования пользователя не выполнять:
Использовать OpenCV только там, где это действительно необходимо.
Если задачу проще решить средствами NumPy — использовать NumPy.
Например:
разрезание изображения выполняется исключительно срезами массива NumPy.
Не выполнять преобразований, ухудшающих изображение.
Избегать лишнего копирования изображений.
Предпочитать NumPy views вместо копирования данных.
Формат выходного изображения должен совпадать с входным.
Цветовое пространство должно сохраняться.
Все операции должны быть обратимыми либо явно управляться параметрами CLI.