0

當使用conv_2d層TersorFlow執行二維卷積,它期望的像素上排列爲TersorFlow如何預期展平圖像?

[ 
    [img[i].red, img[i].green, img[i].blue], 
    [img[i+1].red, etc.], 
] 

或者

[ 
    [mg[i].red, img[i+1].red, etc.], 
    [mg[i].green, img[i+1].green, etc.], 
] 

或一些其他的方式?

回答

1

2D卷積期望的4張量d爲具有以下形狀輸入:

[batch_size時,IMAGE_HEIGHT,IMAGE_WIDTH,channel_size]

在RGB圖像的情況下,信道是三種顏色。因此,像素應當排列爲:

[ 
    [ 
    [img[i,j].red, img[i,j].green, img[i,j].blue], 
    [img[i, j+1].red, img[i, j+1].green, img[i, j+1].blue], 
    etc 
    ], 
    [ 
    [img[i+1,j].red, img[i+1,j].green, img[i+1,j].blue], 
    [img[i+1, j+1].red, img[i+1, j+1].green, img[i+1, j+1].blue], 
    etc 
    ], 
    etc 
] 

(與img[y_coordinate, x_coordinate]img[i,j] = img[i*image_width + j]