Скрипт автоматической нарезки фрагментов изображений
есть файл 1.csv, в нем список из 5-ти колонок:
1. f_in - имя исходника, который находится в папке IN (104137.tif, 108060.tif, 141005.tif и т.д.)
2. f_out - результат выполнения скрипта сохраняем в папку OUT под этим именем (040.tif, 147.tif, 148.tif, и т.д.)
3. x - значение смещения по оси x, в пикселях (px)
4. w - ширина фрагмента, в пикселях (px)
5. m - флаг, требуется ли отразить изображение зеркально (1 - требуется, 0 - не требуется)
Параметры исходных изображений
формат изображений: tif, без компрессии
цветовой профиль: Adobe RGB (1998), 8bpc
разрешение 150 ppi
высота 3543 px (600мм)
ширина:
17894 px (3030мм),
18898 px (3200мм),
21260 px (3600мм),
23622 px (4000мм),
26811 px (4540мм)
Задача:
перебираем все строки из файла 1.csv и выполняем последовательность действий:
1. открываем изображение f_in из папки IN
2. вырезаем фрагмент изображения с точки x до точки x+w, шириной w пикселей
3. в зависимости от значения m отражаем фрагмент зеркально или оставляем как есть
4. растягиваем изображение на 24 px по ширине и на 24 px по высоте (непропорционально!)
Интерполяция bicubic smoother (for enlargemeent) (adobe) или hermite. с минимальным сглаживанием, не искажающий градиенты и без шума.
5. сохраняем под именем из f_out в папку OUT. Сохранение в tif - без слоев, без компрессии, interleaved, ibm pc.
Очень важно цветовой профиль и разрешение не менять!
6. если что-то пошло не так (нет исходника или x+w больше ширины исходника), то пишем в log.txt и уведомляем об этом.
Желательно работу с изображением произвести силами photoshop (CS6, CC). или другим способом без искажения цвета, отделения профиля или смены разрешения.
примеры, csv и исходники: https://yadi.sk/d/2lnxZB7YXnF8sQ
ТЗ продублировано здесь