1. 程式人生 > 實用技巧 >深度學習中的檔案處理(一)

深度學習中的檔案處理(一)

批量調整影象尺寸並把豎直影象向右旋轉後重命名

import os

from PIL import Image

import cv2

import numpy as np

filename = os.listdir(r'C:\Users\xjj\Desktop\202009-35first\202009090d.200')
base_dir = r'C:\Users\xjj\Desktop\202009-35first\202009090d.200\'
new_dir = r'C:\Users\xjj\Desktop\202009-35first\202009090d.200\'
size_m = 640
size_n = 400
n=1
for img in filename:
src = os.path.join(base_dir , img)
image =cv2.imread(src)
image_size = cv2.resize(image,(size_m, size_n))

全部圖片尺寸調整為640*400

rows, cols = image_size.shape[:2]
if image_size.shape[0]>image_size.shape[1]:
    M=cv2.getRotationMatrix2D((cols/2,rows/2),90,1)
    image_size = cv2.warpAffine(image_size , M,(cols,rows))

若圖片的高大於寬,則將圖片向右轉90度,cv2.getRotationMatrix2D()中-90則向左轉90度

else:
    pass
if img.endswith('.JPG'):
    newname = '{}.jpg'.format(n)
    dst = os.path.join(new_dir,newname)
    os.rename(src,dst)
n+=1

圖片的檔名字尾為JPG,則將圖片重新命名為newname

cv2.imwrite(new_dir+img,image_size)

將處理後的圖片批量儲存到新路徑new_dir資料夾下