import torch
import torch.nn as nn
import torch.nn.functional as F
if __name__ == '__main__':
x = torch.randn(1, 3, 5, 5)
print(x)
output = F.unfold(x, [3, 3], padding=1)
print(output, output.size())
tensor([[[[ 0.6355, -1.7449, -0.1417, 2.7639, -0.7094],
[ 0.6342, -2.7050, -0.6332, 1.1187, -0.7882],
[ 0.9027, 0.0864, 0.0781, -0.9886, 1.2459],
[-0.7042, 1.0129, 0.0044, 0.3249, 0.7367],
[ 1.0695, 0.3068, 0.0306, 0.3125, -1.7379]],
[[-0.4521, -0.3601, 1.5153, -0.1056, -1.7330],
[-0.2078, -0.2476, 0.5120, 0.3215, -0.5475],
[-0.7312, -0.3561, 0.2800, -0.3449, -0.6668],
[-0.0132, -1.3868, -0.6101, -0.1316, 1.2194],
[-0.0468, 0.3087, 0.0622, 0.4266, -0.7321]],
[[ 0.0784, 0.4645, -1.9329, 0.6818, 1.3477],
[ 0.4170, 0.1470, 1.5329, -0.8186, -0.3433],
[-1.6386, 1.1872, -0.9104, -0.9699, 1.2272],
[ 0.9990, -0.4472, 0.6127, -0.9709, 1.5095],
[-0.0757, -0.5395, 1.6615, -0.9380, 0.9002]]]])
tensor([[[ 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.6355,
-1.7449, -0.1417, 2.7639, 0.0000, 0.6342, -2.7050, -0.6332,
1.1187, 0.0000, 0.9027, 0.0864, 0.0781, -0.9886, 0.0000,
-0.7042, 1.0129, 0.0044, 0.3249],
[ 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.6355, -1.7449,
-0.1417, 2.7639, -0.7094, 0.6342, -2.7050, -0.6332, 1.1187,
-0.7882, 0.9027, 0.0864, 0.0781, -0.9886, 1.2459, -0.7042,
1.0129, 0.0044, 0.3249, 0.7367],
[ 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, -1.7449, -0.1417,
2.7639, -0.7094, 0.0000, -2.7050, -0.6332, 1.1187, -0.7882,
0.0000, 0.0864, 0.0781, -0.9886, 1.2459, 0.0000, 1.0129,
0.0044, 0.3249, 0.7367, 0.0000],
[ 0.0000, 0.6355, -1.7449, -0.1417, 2.7639, 0.0000, 0.6342,
-2.7050, -0.6332, 1.1187, 0.0000, 0.9027, 0.0864, 0.0781,
-0.9886, 0.0000, -0.7042, 1.0129, 0.0044, 0.3249, 0.0000,
1.0695, 0.3068, 0.0306, 0.3125],
[ 0.6355, -1.7449, -0.1417, 2.7639, -0.7094, 0.6342, -2.7050,
-0.6332, 1.1187, -0.7882, 0.9027, 0.0864, 0.0781, -0.9886,
1.2459, -0.7042, 1.0129, 0.0044, 0.3249, 0.7367, 1.0695,
0.3068, 0.0306, 0.3125, -1.7379],
[-1.7449, -0.1417, 2.7639, -0.7094, 0.0000, -2.7050, -0.6332,
1.1187, -0.7882, 0.0000, 0.0864, 0.0781, -0.9886, 1.2459,
0.0000, 1.0129, 0.0044, 0.3249, 0.7367, 0.0000, 0.3068,
0.0306, 0.3125, -1.7379, 0.0000],
[ 0.0000, 0.6342, -2.7050, -0.6332, 1.1187, 0.0000, 0.9027,
0.0864, 0.0781, -0.9886, 0.0000, -0.7042, 1.0129, 0.0044,
0.3249, 0.0000, 1.0695, 0.3068, 0.0306, 0.3125, 0.0000,
0.0000, 0.0000, 0.0000, 0.0000],
[ 0.6342, -2.7050, -0.6332, 1.1187, -0.7882, 0.9027, 0.0864,
0.0781, -0.9886, 1.2459, -0.7042, 1.0129, 0.0044, 0.3249,
0.7367, 1.0695, 0.3068, 0.0306, 0.3125, -1.7379, 0.0000,
0.0000, 0.0000, 0.0000, 0.0000],
[-2.7050, -0.6332, 1.1187, -0.7882, 0.0000, 0.0864, 0.0781,
-0.9886, 1.2459, 0.0000, 1.0129, 0.0044, 0.3249, 0.7367,
0.0000, 0.3068, 0.0306, 0.3125, -1.7379, 0.0000, 0.0000,
0.0000, 0.0000, 0.0000, 0.0000],
[ 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, -0.4521,
-0.3601, 1.5153, -0.1056, 0.0000, -0.2078, -0.2476, 0.5120,
0.3215, 0.0000, -0.7312, -0.3561, 0.2800, -0.3449, 0.0000,
-0.0132, -1.3868, -0.6101, -0.1316],
[ 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, -0.4521, -0.3601,
1.5153, -0.1056, -1.7330, -0.2078, -0.2476, 0.5120, 0.3215,
-0.5475, -0.7312, -0.3561, 0.2800, -0.3449, -0.6668, -0.0132,
-1.3868, -0.6101, -0.1316, 1.2194],
[ 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, -0.3601, 1.5153,
-0.1056, -1.7330, 0.0000, -0.2476, 0.5120, 0.3215, -0.5475,
0.0000, -0.3561, 0.2800, -0.3449, -0.6668, 0.0000, -1.3868,
-0.6101, -0.1316, 1.2194, 0.0000],
[ 0.0000, -0.4521, -0.3601, 1.5153, -0.1056, 0.0000, -0.2078,
-0.2476, 0.5120, 0.3215, 0.0000, -0.7312, -0.3561, 0.2800,
-0.3449, 0.0000, -0.0132, -1.3868, -0.6101, -0.1316, 0.0000,
-0.0468, 0.3087, 0.0622, 0.4266],
[-0.4521, -0.3601, 1.5153, -0.1056, -1.7330, -0.2078, -0.2476,
0.5120, 0.3215, -0.5475, -0.7312, -0.3561, 0.2800, -0.3449,
-0.6668, -0.0132, -1.3868, -0.6101, -0.1316, 1.2194, -0.0468,
0.3087, 0.0622, 0.4266, -0.7321],
[-0.3601, 1.5153, -0.1056, -1.7330, 0.0000, -0.2476, 0.5120,
0.3215, -0.5475, 0.0000, -0.3561, 0.2800, -0.3449, -0.6668,
0.0000, -1.3868, -0.6101, -0.1316, 1.2194, 0.0000, 0.3087,
0.0622, 0.4266, -0.7321, 0.0000],
[ 0.0000, -0.2078, -0.2476, 0.5120, 0.3215, 0.0000, -0.7312,
-0.3561, 0.2800, -0.3449, 0.0000, -0.0132, -1.3868, -0.6101,
-0.1316, 0.0000, -0.0468, 0.3087, 0.0622, 0.4266, 0.0000,
0.0000, 0.0000, 0.0000, 0.0000],
[-0.2078, -0.2476, 0.5120, 0.3215, -0.5475, -0.7312, -0.3561,
0.2800, -0.3449, -0.6668, -0.0132, -1.3868, -0.6101, -0.1316,
1.2194, -0.0468, 0.3087, 0.0622, 0.4266, -0.7321, 0.0000,
0.0000, 0.0000, 0.0000, 0.0000],
[-0.2476, 0.5120, 0.3215, -0.5475, 0.0000, -0.3561, 0.2800,
-0.3449, -0.6668, 0.0000, -1.3868, -0.6101, -0.1316, 1.2194,
0.0000, 0.3087, 0.0622, 0.4266, -0.7321, 0.0000, 0.0000,
0.0000, 0.0000, 0.0000, 0.0000],
[ 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0784,
0.4645, -1.9329, 0.6818, 0.0000, 0.4170, 0.1470, 1.5329,
-0.8186, 0.0000, -1.6386, 1.1872, -0.9104, -0.9699, 0.0000,
0.9990, -0.4472, 0.6127, -0.9709],
[ 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.0784, 0.4645,
-1.9329, 0.6818, 1.3477, 0.4170, 0.1470, 1.5329, -0.8186,
-0.3433, -1.6386, 1.1872, -0.9104, -0.9699, 1.2272, 0.9990,
-0.4472, 0.6127, -0.9709, 1.5095],
[ 0.0000, 0.0000, 0.0000, 0.0000, 0.0000, 0.4645, -1.9329,
0.6818, 1.3477, 0.0000, 0.1470, 1.5329, -0.8186, -0.3433,
0.0000, 1.1872, -0.9104, -0.9699, 1.2272, 0.0000, -0.4472,
0.6127, -0.9709, 1.5095, 0.0000],
[ 0.0000, 0.0784, 0.4645, -1.9329, 0.6818, 0.0000, 0.4170,
0.1470, 1.5329, -0.8186, 0.0000, -1.6386, 1.1872, -0.9104,
-0.9699, 0.0000, 0.9990, -0.4472, 0.6127, -0.9709, 0.0000,
-0.0757, -0.5395, 1.6615, -0.9380],
[ 0.0784, 0.4645, -1.9329, 0.6818, 1.3477, 0.4170, 0.1470,
1.5329, -0.8186, -0.3433, -1.6386, 1.1872, -0.9104, -0.9699,
1.2272, 0.9990, -0.4472, 0.6127, -0.9709, 1.5095, -0.0757,
-0.5395, 1.6615, -0.9380, 0.9002],
[ 0.4645, -1.9329, 0.6818, 1.3477, 0.0000, 0.1470, 1.5329,
-0.8186, -0.3433, 0.0000, 1.1872, -0.9104, -0.9699, 1.2272,
0.0000, -0.4472, 0.6127, -0.9709, 1.5095, 0.0000, -0.5395,
1.6615, -0.9380, 0.9002, 0.0000],
[ 0.0000, 0.4170, 0.1470, 1.5329, -0.8186, 0.0000, -1.6386,
1.1872, -0.9104, -0.9699, 0.0000, 0.9990, -0.4472, 0.6127,
-0.9709, 0.0000, -0.0757, -0.5395, 1.6615, -0.9380, 0.0000,
0.0000, 0.0000, 0.0000, 0.0000],
[ 0.4170, 0.1470, 1.5329, -0.8186, -0.3433, -1.6386, 1.1872,
-0.9104, -0.9699, 1.2272, 0.9990, -0.4472, 0.6127, -0.9709,
1.5095, -0.0757, -0.5395, 1.6615, -0.9380, 0.9002, 0.0000,
0.0000, 0.0000, 0.0000, 0.0000],
[ 0.1470, 1.5329, -0.8186, -0.3433, 0.0000, 1.1872, -0.9104,
-0.9699, 1.2272, 0.0000, -0.4472, 0.6127, -0.9709, 1.5095,
0.0000, -0.5395, 1.6615, -0.9380, 0.9002, 0.0000, 0.0000,
0.0000, 0.0000, 0.0000, 0.0000]]]) torch.Size([1, 27, 25])