读取形状为 [n, height, width, channels] 的图片数据集
read dataSet of picture with shape of [n, height, width, channels]
我有一个 2100 图片格式的基础 .tif
我想加载它来生成一个形状为 [2100,256,256,3]
的数据集但是给了我 [2100,1]
我想要这个形状 [n, height, width, channels]
在 tesorflow train
中使用它
def datSetGenerator(path):
classes = os.listdir(path)
image_list = []
for classe in classes:
for filename in glob.glob(path+'/'+classe+'/*.tif'):
image_list.append(cv2.imread(filename))
return np.array(image_list)
我尝试了 np.reshape
和 matrix.reshape
但总是给我一个错误
获得数据集
的正确形状
如果所有图片的大小为[256,256,3]
,其中一张大小不同,则数据集的形状将为[n,]
所以我们需要将所有图片调整到相同的大小,得到 [n, height, weight, channels]
的形状
import numpy as np
import os
import glob
import cv2
def datSetGenerator(path):
classes = os.listdir(path)
image_list = []
for classe in classes:
for filename in glob.glob(path+'/'+classe+'/*.tif'):
image_list.append(cv2.resize(cv2.imread(filename),(224, 224)))
return np.array(image_list)
if __name__ == '__main__':
# for testing the generator
path = "C:/Users/[USERNAME]/Desktop/UCMerced_LandUse/Images/"
data = datSetGenerator(path)
print("\n data shape :",data.shape)
这是输出
data shape : (2100, 224, 224, 3)
我有一个 2100 图片格式的基础 .tif
我想加载它来生成一个形状为 [2100,256,256,3]
的数据集但是给了我 [2100,1]
我想要这个形状 [n, height, width, channels]
在 tesorflow train
def datSetGenerator(path):
classes = os.listdir(path)
image_list = []
for classe in classes:
for filename in glob.glob(path+'/'+classe+'/*.tif'):
image_list.append(cv2.imread(filename))
return np.array(image_list)
我尝试了 np.reshape
和 matrix.reshape
但总是给我一个错误
获得数据集
的正确形状
如果所有图片的大小为[256,256,3]
,其中一张大小不同,则数据集的形状将为[n,]
所以我们需要将所有图片调整到相同的大小,得到 [n, height, weight, channels]
import numpy as np
import os
import glob
import cv2
def datSetGenerator(path):
classes = os.listdir(path)
image_list = []
for classe in classes:
for filename in glob.glob(path+'/'+classe+'/*.tif'):
image_list.append(cv2.resize(cv2.imread(filename),(224, 224)))
return np.array(image_list)
if __name__ == '__main__':
# for testing the generator
path = "C:/Users/[USERNAME]/Desktop/UCMerced_LandUse/Images/"
data = datSetGenerator(path)
print("\n data shape :",data.shape)
这是输出
data shape : (2100, 224, 224, 3)