加载图像并重塑生成的 numpy 数组

Loading images and reshaping resulting numpy array

您好,我正在尝试重塑一个数组,该数组充满了来自使用 OpenCv 加载的图像的像素数据。生成的组合数组的形状为 (100,28,28,3) 我正在尝试使其成形为 (100,28,28) 并且不能使用 np.delete 或重塑来完全删除它。任何帮助都会很棒!到目前为止,这是我的代码:

import cv2
import glob
import numpy as np

hand_dig = []
files = glob.glob ("C:/Users/xxx/Desktop/digits/hand/*.PNG")
for myFile in files:
    print(myFile)
    image = cv2.imread (myFile)
    hand_dig.append (image)

print('hand_digit shape:', np.array(hand_dig).shape)
hand_dig=np.reshape(hand_dig,(100,28,28))
print(hand_dig.shape)

根据您上面给出的内容,您似乎有 100 张形状为 (28,28) 的 RGB 图像。 不,您不能丢弃像素,因为它可能会导致您丢失大量信息。 更好的选择是将每个图像转换为灰色,然后将其堆叠。

读取图像后,添加以下行:

image=cv2.cvtColor(image,cv2.COLOR_BGR2GRAY)