Neural network Caffe:vgg网络的可变输入图像大小
我尝试使用caffe从VGG网络中提取卷积层而不是FC层的特征。在这种情况下,理论输入图像大小可能是任意的。但据了解,VGG网络是在裁剪成224x224像素大小的图像上进行训练的。因此,我在deploy.prototext中定义了一个输入数据层:Neural network Caffe:vgg网络的可变输入图像大小,neural-network,deep-learning,computer-vision,caffe,vgg-net,Neural Network,Deep Learning,Computer Vision,Caffe,Vgg Net,我尝试使用caffe从VGG网络中提取卷积层而不是FC层的特征。在这种情况下,理论输入图像大小可能是任意的。但据了解,VGG网络是在裁剪成224x224像素大小的图像上进行训练的。因此,我在deploy.prototext中定义了一个输入数据层: layers{ name: "data" type: MEMORY_DATA top: "data" top: "label" transform_param{ mirror: false crop_size:224
layers{
name: "data"
type: MEMORY_DATA
top: "data"
top: "label"
transform_param{
mirror: false
crop_size:224
mean_value:129.1863
mean_value:104.7624
mean_value:93.5940
}
memory_data_param{
batch_size:1
channels:3
width:224
height:224
}
}
我试图修改宽度=500\height=500\crop\u size=500,但失败了。Caffe抛出了一些错误:“无法从层“fc6”复制参数0权重;形状不匹配。源参数形状为1 1 4096 25088(102760448);目标参数形状为4096 131072(536870912)。若要从头学习此层的参数,而不是从保存的网络复制,请重命名该层。”
我怎么可能在输入层太大的图像上运行而不进行裁剪?您应该首先将图像大小调整为224x224,因为VGG是根据该分辨率进行训练的。以更高的分辨率提取特征是没有意义的。
对于大小调整和裁剪,您可以使用我的专用图像数据层:您应该首先将图像大小调整为224x224,因为VGG是根据该分辨率进行训练的。以更高的分辨率提取特征是没有意义的。
对于大小调整和裁剪,您可以使用我的专用ImageData层:或者您对图像使用完全相同的大小,或者您对密集层进行重新训练以获得新的图像大小
您可以重复使用卷积核,但不能对不同的图像大小重复使用密集层。或者为图像使用完全相同的大小,或者为新的图像大小重新训练密集层
您可以重复使用卷积核,但不能为不同的图像大小重复使用密集层。请发布准确的错误。无法从层“fc6”复制参数0权重;形状不匹配。震源参数形状为1409625088(102760448);目标参数形状为4096131072(536870912)。若要从头开始学习该层的参数,而不是从保存的网络复制,请重命名该层。@Shai请帮助!请发布准确的错误。无法从层“fc6”复制参数0权重;形状不匹配。震源参数形状为1409625088(102760448);目标参数形状为4096131072(536870912)。若要从头开始学习该层的参数,而不是从保存的网络复制,请重命名该层。@Shai请帮助!