0
私はテンソルの流れを学んでおり、テンソルを操作する慣用的な方法は分かりません。私は、畳み込みで使用される、重なり合ったパッチに正方行列を読みたい。テンソルフローのNxN画像からMxMパッチを読み取る方法は?
私は例np.arange(9).reshape((,3))
のためのシンプルな正方行列を、持っている場合:
[[0 1 2]
[3 4 5]
[6 7 8]]
私はそれの上に窓を読み取ることによって、それを変換し、以下を与えるために使用する必要がありますどのような操作
?
[[0 0 0] [0 0 1] [0 3 4]]
[[0 0 0] [0 1 2] [3 4 5]]
[[0 0 0] [1 2 0] [4 5 0]]
[[0 0 1] [0 3 4] [0 6 7]]
[[0 1 2] [3 4 5] [6 7 8]]
[[1 2 0] [4 5 0] [7 8 0]]
[[0 3 4] [0 6 7] [0 0 0]]
[[3 4 5] [6 7 8] [0 0 0]]
[[4 5 0] [7 8 0] [0 0 0]]
Iが使用numpyのコードは次のとおり
pad = 3
X = np.arange(9).reshape((3, 3))
X_padded = np.pad(X, 3, mode='constant', constant_values=0)
for i in range(3):
for j in range(3):
row_a = pad + i - pad // 2
row_b = row_a + pad
col_a = pad + j - pad // 2
col_b = col_a + pad
print(X_padded[row_a:row_b, col_a:col_b])
@Rdgstv、私の答えはあなたを助けましたか? – hars