#python #slice #glob #image-slicer
#python #нарезать #glob #image-slicer
Вопрос:
Я работаю с базой данных изображений с размерами 4000 x 3000 пикселей, и я хочу нарезать каждое изображение в каталоге на основе размера пикселя (1000 x 1000). В настоящее время я использую модули glob
и image_slicer
и в настоящее время выполняю метод проб и ошибок, чтобы получить изображения нужного размера в пикселях.
import glob, os
import image_slicer
for file in glob.glob('~\test_folder\*.jpg'):
image_slicer.slice(file, 15)
Фрагмент из 15 генерирует выходные фотографии размером 1000 x 750, что близко, но все еще не соответствует сигаре. Есть ли способ указать конкретные размеры?
Ответ №1:
Если вы посмотрите на исходный код для image_slicer.slice, там есть два параметра row
и col
, которые вы можете указать. Исходный код показывает, как они используются для вычисления количества плиток в горизонтальном и вертикальном направлениях. Вы можете работать в обратном направлении, чтобы увидеть, сколько строк и столбцов вам нужно, чтобы получить плитки размером 1000×1000 пикселей. В вашем случае (на основе получения изображений размером 4000×3000 на плитки размером 1000×1000) это row=3
и col=4
. т.е.
import glob, os
import image_slicer
for file in glob.glob('~\test_folder\*.jpg'):
image_slicer.slice(file, row=3, col=4)