Joh*_*len 5 multidimensional-array tensorflow
最近,Tensorflow增加了对3d卷积的支持.我正在尝试训练一些视频内容.
我有几个问题:
我的输入是每帧16帧,3通道.npy文件,所以它们的形状是:(128, 171, 48).
1) 该文档为tf.nn.max_pool3d()状态的输入的形状应该是:
Shape [batch, depth, rows, cols, channels]. 即使我的npy imgs是48个深度,我的频道维度仍为3,可以这么说吗?
2)下一个问题与最后一个问题相吻合:我的深度是48还是16?
3)(因为我在这里)批量维度与3d数组相同,对吗?图像就像任何其他图像一样,一次处理一个.
需要明确的是:在我的情况下,对于单个图像批量大小,上面的图像变暗,我的尺寸为:
[1(batch),16(depth), 171(rows), 128(cols), 3(channels)]
编辑:我把原始输入大小与池和内核大小混淆了.也许对这些3D东西的一些一般指导会有所帮助.我基本上坚持卷积和汇集的维度,正如原始问题中所清楚的那样.
Oli*_*rot 13
要回答您的问题,维度应该是(如您所述):
您拥有的时间范围[batch_size, depth, H, W, 3]在哪里depth.
例如,具有20帧/秒的5s视频将具有depth=100.
我最好的建议是首先从大约深度学习的视频CS231n读幻灯片在这里(如果你能看到的视频,它甚至更好).
基本上,3D卷积与2D卷积相同,但具有一个维度.我们来回顾一下:
[batch_size, 10, in_channels][3, in_channels, out_channels] in_channels[batch_size, 10, 10, in_channels][3, 3, in_channels, out_channels] in_channels=3[batch_size, T, 10, 10, in_channels][T_kernel, 3, 3, in_channels, out_channels] T=100框架的视频和尺寸为10x10的图像in_channels=3T_kernel(例如:T_kernel=10)卷积的目标是减少由于数据冗余而导致的参数数量.对于图像,您可以在左上角3x3框和右下角3x3框中提取相同的基本功能.
对于视频,这是相同的.您可以从图像的3x3框中提取信息,但是在一个时间范围内(例如:10帧).结果将在图像维度中具有3x3的感知域,并且在时间维度上具有10帧.
| 归档时间: |
|
| 查看次数: |
4109 次 |
| 最近记录: |