tensorflow处理图片时的维度不匹配问题

tensorflow处理图片时的维度不匹配问题,如下是报错信息

tensorflow.python.framework.errors_impl.InvalidArgumentError: Shape must be rank 4 but is rank 3 for 'Conv2D' (op: 'Conv2D') with input shapes: [1,1,3], [5,5,3,32].

源码如下所示:

train_data_node=tf.placeholder(tf.float32,shape=(None,IMG_PATCH_SIZE,IMG_PATCH_SIZE,NUM_CHANNEL))
train_label_node=tf.placeholder(tf.float32,shape=(BATCH_SIZE,NUM_LABEL))
train_all_data_node=tf.constant(train_data)

def extract_data():
imgs=[]
data_list=[]
training_size, img_train_array,img_train_map_array= read_train_from_txt_file(train_txt_filename)
for i in range(0,training_size):
    image_filename = img_train_array[i]
    if os.path.isfile(image_filename):
        print('Loading:'+ image_filename)
        img_file = cv.imread(image_filename)
        img_file=np.array(img_file)
        imgs.append(img_file)
    else:
        print('File' + image_filename + 'does not exist!')
num_img = len(imgs)
for j in range(num_img):
    img_patches = img_crop(imgs[j])
for k in range(len(img_patches)):
    for m in range(len(img_patches[k])):
        data=img_patches[k][m]
        data_list.append(data)
        data_list=np.asarray(data_list)
        data_list=np.float32(data_list)
# return  np.asarray(data)
return data_list

新手一个,求帮助!!!!!

你可以把输入的扩展为4维的