一、批量按坐标裁剪图片代码
# -- coding: utf-8 --
import cv2
import os
def update(input_img_path, output_img_path):
image = cv2.imread(input_img_path)
# print(image.shape)
cropped = image[0:440, 0:440] # 裁剪坐标为[y0:y1, x0:x1]
cv2.imwrite(output_img_path, cropped)
dataset_dir = 'E:/1' # 需裁剪的图片存放文件夹
output_dir = 'E:/2' # 裁好图片输出文件夹
# 获得需要转化的图片路径并生成目标路径
image_filenames = [(os.path.join(dataset_dir, x), os.path.join(output_dir, x))
for x in os.listdir(dataset_dir)]
# 转化所有图片
for path in image_filenames:
update(path[0], path[1])
文件夹路径不要含中文字符,容易报错。
二、ImageJ批量修改图片格式
- 打开ImageJ,选择plugins中的Macros中的Record
- 再打开一张需要转换的图,将该图存为自己想要的格式,可以看到在record中的记录,复制这段记录。
- 打开Process——Batch——Macro
4.删掉单张保存的语句(saveas那句),然后input是需要批量改变图片的所在文件夹,output是存放的新文件夹,output format是想保存的格式。改好后点右下角的process。