| ilyaf Модератор раздела
Сообщений: 208 На сайте с 2023 г. Рейтинг: 270 | Наверх ##
9 ноября 2025 18:49 10 ноября 2025 0:11 Долго искал программу для максимально быстрой обрезки экранок (снимков архивных дел на телефон). Работать с исходными экранками не очень удобно, потому что сам документ нередко занимает лишь малую часть изображения, а сам файл занимает много места.
Я перепробовал несколько "интеллектуальных" резалок для обрезки фона, но все они сотворили какую-то дичь. В итоге я нашёл оптимальную для себя программу, которая открывает картинку, после чего ты выделяешь нужную область изображения, жмёшь z — она автоматически сохраняет эту и открывает следующую. Т.е. два клика на картинку. Практически, пара сотен снимков обрабатывается за 15 минут.
Сама программа на python и ставится (после установки самого питона) через встроенный менеджер пакетов:
pip3 install --user inbac
После запуска программа предлагает выбрать папку для работы. Она будет показывать по очереди изображения, на которых мышкой выделяется прямоугольник и с нажатием на клавишу z текущая картинка сохраняется в подпапку в обрезанном виде и загружается следующее изображение.
Перед обрезкой изображений цифровые названия всех файлов лучше привести к унифицированному формату с лидирующими нулями вида 001.jpg, 002.jpg, ... 998.jpg, 999.jpg
Ключевым параметром для самой программы, определяющим успешность её использования, является выходное качество изображения. Сама она сохраняет по умолчанию с качеством 100%, что может привести к записи обрезанного файла, который будет занимать даже больше места, чем необрезанный оригинал.
Качество исходного изображения может быть установлено, в частности, из метаданных. На linux оно может быть получено с помощью команды:
identify -verbose 0.jpg | grep 'Quality'
Хотя JPEG -- это формат с потерями, в котором даже последовательная перезапись изображения со 100% качеством будет приводить к ухудшению изображения, понятно, что качество записи обрезанного изображения не должно быть выставлено сильно выше качества исходного файла; также следует оставить и "пространство" для последующих правок, например, поворота или сжатия линейных размеров картинки.
При запуске программы тогда можно передать параметр с качеством в процентах:
inbac --image_quality 85
Так достигается итоговое сжатие в 2-4 раза по сравнению с исходным рамером.
Полагаю, что 85% можно считать условно-оптимальным компромиссом для экранок, которые изначально не ставят собой цели быть образом архивных документов высочайшего качества. |