caffe中,模型定义在.prototxt文件中,文件中定义了每层的结构信息.
定义输入:
input: "data"
input_shape {
dim: 1
dim: 3
dim: 900
dim: 900
}
也就是定义input名为data,batch_size=1, num_channels=3, input_height=900, input_width=900
定义网络层,以卷积层为例:
layer {
name: "conv1_1"
type: "Convolution"
bottom: "data"
top: "conv1_1"
convolution_param {
num_output: 64
kernel_size: 3
}
}
name为该层的名字,可以自己定义.type表示该层的特性,如relu,type=ReLU,pooling,type=Poolin,这里为卷积层,因此type=Convolution,bottom表述该层的输入,这里输入为input data. top表示该层的输出output data,*_param定义该层的参数信息,如
convolution_param {
num_output: 64
kernel_size: 3
}
表示该卷积层卷积核大小为