把图片按照定义的patchsize切块,然后按照z轴顺序叠放小块,如下图(仅考虑灰度图像)
import cv2
import numpy as np
im=cv2.imread('0.jpg',cv2.IMREAD_GRAYSCALE)
im = cv2.resize(im,(300,300),cv2.INTER_CUBIC)
h,w= im.shape
patchsize_h=75
d_h=int(h/patchsize_h)
patchsize_w=75
d_w=int(w/patchsize_w)
im_s = im.reshape((d_h, h//d_h, d_w, w//d_w))#这个顺序不能改哦
结果:
im2_0=im_s[0,:,0,:]
cv2.imwrite('im2_0.jpg',im2_0)
im2_0=im_s[0,:,1,:]
cv2.imwrite('im3_0.jpg',im2_0)
im2_0=im_s[1,:,0,:]
cv2.imwrite('im4_0.jpg',im2_0)
im2_0=im_s[1,:,1,:]
cv2.imwrite('im5_0.jpg',im2_0)
cv2.imwrite('im1_0.jpg',im)
im1_0.jpg
im2_0.jpg
im3_0.jpg
im4_0.jpg
im5_0.jpg
参考:https://blog.csdn.net/u014722627/article/details/55259617
torch与numpy基本可以一一对应