处理数据的时候,要对图片进行裁剪。下面是我按照老师规定将文件夹下的每个图片裁剪成512×512大小的python代码,多余的边边角角直接扔了。
- imgshape[0]是图片的高
- imgshape[1]是图片的长
from glob import glob
import cv2
from PIL.Image import Image
i = 1//i记录裁剪到哪个图片了
image_files = glob(r'./ceshiyou/*')//需要裁剪的图片的所在文件夹的相对路径
for image_file in sorted(image_files):
img = cv2.imread(image_file)
imshape = img.shape
for imgg in range(1,imshape[0]-512,512)://需要的高尺寸
for imgc in range(1,imshape[1]-512,512)://需要的长尺寸
cropped = img[imgg:imgg+512, imgc:imgc+512] # 裁剪坐标为[y0:y1, x0:x1]
outputfile = "./ceshiyou_caijian/"+str(i)+str(imgg)+str(imgc)+".png"
cv2.imwrite(outputfile, cropped)
i += 1