图片裁剪部分
"""
@author: Jerry
@address: Qingdao
"""
import cv2
import os
from PIL import Image
import numpy as np
crop_size = 256
savepath = ''
if os.path.exists('image_crop'):
savepath = './' + 'image_crop'
else:
os.mkdir('image_crop')
savepath = './' + 'image_crop'
def image_crop(image_path, filename_prefix, filename_suffix):
img = Image.open(image_path)
rows = img.size[0]
columns = img.size[1]
rows_count = int(rows / crop_size)
columns_count = int(columns / crop_size)
flag2 = 0
for i in range(rows_count):
flag = 0
for j in range(columns_count):
cropped = img.crop(box=(i * crop_size, flag * crop_size, (i + 1) * crop_size, (flag + 1) * crop_size))
# cropped = crop_size[i * crop_size, flag * crop_size, (i + 1) * crop_size, (flag + 1) * crop_size]
flag += 1
flag2 += 1
path = savepath + './' +filename_prefix + '_' + str(flag2) + '.' + filename_suffix
cropped.save(path)
# cv2.imwrite(path, cropped)
def image_acquire(directory_name):
for filename in os.listdir(directory_name):
print(filename)
image_path = directory_name + "/" + filename
filename_prefix = filename.split('.')[0]
filename_suffix = filename.split('.')[1]
image_crop(image_path, filename_prefix, filename_suffix)
if __name__ == '__main__':
filepath = r'C:\Users\Jerry\Desktop\sand_image\label'
image_acquire(filepath)
文件名称的获取
"""
@author: Jerry
@address: qingdao
"""
import os
import cv2
def read_directory(directory_name, savefilename):
array_of_img = []
for filename in os.listdir(directory_name):
# filename = filename.split('.')[0]
array_of_img.append(filename)
with open("%s.txt"%savefilename, "a") as f:
for i in range(len(array_of_img)):
f.write(array_of_img[i] + "\n")
f.close()
if __name__ == '__main__':
directory = r"./image_crop"
savefilename = "文件名称"
read_directory(directory, savefilename)
参考链接:
Python创建文件夹和子文件夹
python读取文件夹下所有图片
图片平均裁剪为固定大小以及运行python脚本时出现no module named cv2