from PIL import Image
import numpy as np
import cv2
import matplotlib.pyplot as plt
import os
###############################################################批量修改图片格式bmp->png并量化
path_name = '/home/server109/ADAXI/code/PyCharm_Projects/train' #原图片所在路径
out_gray_HR = '/home/server109/ADAXI/code/PyCharm_Projects/train_gray_HR'
out_gray_LR = '/home/server109/ADAXI/code/PyCharm_Projects/train_gray_LR'
i = 0
for item in os.listdir(path=path_name):
new_item = str(i)+'.bmp' #元图片均为.bmp格式
os.rename(os.path.join(path_name,item), os.path.join(path_name,new_item))
file_path = os.path.join(path_name, new_item)
out_path = os.path.splitext((file_path))[0] + '.png'
print(out_path)
Image.open(file_path).save(out_path)
os.remove(os.path.join(path_name, new_item))
i+=1
print("finish rename")
for item in os.listdir(path_name):
image = cv2.imread(os.path.join(path_name, item))
img_gray = cv2.cvtColor(image, cv2.COLOR_RGB2GRAY)
img_array = np.array(img_gray)
rows, cols = img_array.shape
cv2.imwrite(os.path.join(out_gray_HR, item), img_array)
for i in range(rows):
for j in range(cols):
img_array[i, j] /= 64
for i in range(rows):
for j in range(cols):
img_array[i, j] *= 64
cv2.imwrite(os.path.join(out_gray_LR, item), img_array)
print(os.path.join(out_gray_LR, item))
print("finish transform")
Python批量修改图片名称,格式,并批量量化
最新推荐文章于 2024-02-02 22:02:05 发布