我使用OpenCV
将图像读入numpy.array
,它们的形状如下。
import cv2
def readImages(path):
imgs = []
for file in os.listdir(path):
if file.endswith('.png'):
img = cv2.imread(file)
imgs.append(img)
imgs = numpy.array(imgs)
return (imgs)
imgs = readImages(...)
print imgs.shape # (100, 718, 686, 3)
每个图像都有718x686像素/维度。有100幅图像。
我不想在718x686上工作,我想把像素合并成一个一维。也就是说,形状应该像:(100,492548,3)
。OpenCV(或其他任何库)或Numpy中是否允许我这样做?
不修改阅读功能:
以防有人想要。这里有一个一般的方法
有了这个功能,您可以这样使用它:
诀窍是重塑并附加到numpy数组。对向量的长度(492548)进行硬编码是不好的做法,所以如果我是你,我还会添加一行来计算这个数字并将其放入变量中,以便在脚本的其余部分中使用。
相关问题 更多 >
编程相关推荐