我想重现Two-Stream Convolutional Networks for Action Recognition in Videos。
但感觉就像在向咖啡馆提供多帧输入时,我碰壁了。
单帧网络提供50%的准确度。 但是当我通过LMDB输入30 * 227 * 227时。 20(每帧10个,有3个通道)。 accuracy barely reaches 4%。
这让我相信我给caffe的输入不是所需的格式或模型是错误的(不太可能)。
我想以3 x 10 x 227 x 227的样式进行输入。 但是caffe LMDB只有一些变量作为输入。亦即 高度,widhth,信道,数据,标签
这让我只能在3个维度上写入数据,然后不能进行第4帧维度。
有没有人知道这方面的工作?
或者您知道在哪里可以找到任何使用多帧数据进行分类的caffe示例。
据我所知,Caffe使用4D blob处理数据,因此即使我开始工作也无法处理批次。因此,它一次只能使用一个样本。这也取决于滤波器的设计方式以及它们是否可以处理帧的相关性,因为它们位于第4维,通常用作批处理。
有关于此的任何想法吗?
P.s我也试过HDF5 similar results。
datum = caffe.proto.caffe_pb2.Datum()
datum.channels =3 #3 for a single image/ 30 for stacking them which I tried and get accuracy of 5%
datum.height = 227
datum.width = 227
datum.data = X[i].tostring() # or .tostring() if numpy < 1.9
datum.label = classlabel
str_id = '{:10}'.format(i+(counter))