簡體   English   中英

keras后端conv2d錯誤

[英]keras backend conv2d error

我正在嘗試將keras.backend.conv2d函數與我自己的內核一起使用,並且出現以下錯誤。

img = data[0,:,0]
img = img.reshape(240, 320)

kernelX = np.array([[-1, 1], 
                    [-1, 1]])

img = K.constant(img)
kernelX = K.constant(kernelX)

I_x = K.conv2d(img, kernelX)

ValueError:輸入通道數與過濾器的相應尺寸不匹配,320!= 2

有人可以把我推向正確的方向嗎?

盡管您未指定使用哪個后端,但由於進行了重塑操作,因此會引發錯誤。 在這種情況下,keras會將形狀的最后一個元素解釋為通道數。 這意味着,假設您的圖像有240個像素,具有320個通道,而內核有兩個通道。 對於卷積,它們必須具有相同的大小。

因此,您應該以某種方式創建映像和內核,以使映像的形狀為(240,320,1),形狀的內核為(2,2,1)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM