1 Star 0 Fork 0

elise / unet

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
train_val.prototxt 12.18 KB
一键复制 编辑 原始数据 按行查看 历史
wangbin 提交于 2018-04-19 10:49 . 修改参数
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845
name:"UNET"
layer {
name: "data"
type: "Python"
top: "img"
top: "mask"
python_param{
module: 'mydatalayer'
layer: 'DataLayer'
}
}
layer {
name: "conv1_1"
type: "Convolution"
bottom: "img"
top: "conv1_1"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 64
pad: 0
kernel_size: 3
weight_filler{
type:"gaussian"
std:0.01
}
}
}
layer{
name:"relu1"
type:"ReLU"
bottom:"conv1_1"
top:"conv1_1"
}
layer {
name: "conv1_2"
type: "Convolution"
bottom: "conv1_1"
top: "conv1_2"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 64
pad: 0
kernel_size: 3
weight_filler{
type:"gaussian"
std:0.01
}
}
}
layer{
name:"relu2"
type:"ReLU"
bottom:"conv1_2"
top:"conv1_2"
}
layer {
name: "pool1"
type: "Pooling"
bottom: "conv1_2"
top: "pool1"
pooling_param {
pool: MAX
kernel_size: 2
stride: 2
}
}
layer {
name: "conv2_1"
type: "Convolution"
bottom: "pool1"
top: "conv2_1"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 128
pad: 0
kernel_size: 3
weight_filler{
type:"gaussian"
std:0.01
}
}
}
layer{
name:"relu3"
type:"ReLU"
bottom:"conv2_1"
top:"conv2_1"
}
layer {
name: "conv2_2"
type: "Convolution"
bottom: "conv2_1"
top: "conv2_2"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 128
pad: 0
kernel_size: 3
weight_filler{
type:"gaussian"
std:0.01
}
}
}
layer{
name:"relu4"
type:"ReLU"
bottom:"conv2_2"
top:"conv2_2"
}
layer {
name: "pool2"
type: "Pooling"
bottom: "conv2_2"
top: "pool2"
pooling_param {
pool: MAX
kernel_size: 2
stride: 2
}
}
layer {
name: "conv3_1"
type: "Convolution"
bottom: "pool2"
top: "conv3_1"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 256
pad: 0
kernel_size: 3
weight_filler{
type:"gaussian"
std:0.01
}
}
}
layer{
name:"relu5"
type:"ReLU"
bottom:"conv3_1"
top:"conv3_1"
}
layer {
name: "conv3_2"
type: "Convolution"
bottom: "conv3_1"
top: "conv3_2"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 256
pad: 0
kernel_size: 3
weight_filler{
type:"gaussian"
std:0.01
}
}
}
layer{
name:"relu6"
type:"ReLU"
bottom:"conv3_2"
top:"conv3_2"
}
layer {
name: "pool3"
type: "Pooling"
bottom: "conv3_2"
top: "pool3"
pooling_param {
pool: MAX
kernel_size: 2
stride: 2
}
}
layer {
name: "conv4_1"
type: "Convolution"
bottom: "pool3"
top: "conv4_1"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 512
pad: 0
kernel_size: 3
weight_filler{
type:"gaussian"
std:0.01
}
}
}
layer{
name:"relu7"
type:"ReLU"
bottom:"conv4_1"
top:"conv4_1"
}
layer {
name: "conv4_2"
type: "Convolution"
bottom: "conv4_1"
top: "conv4_2"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 512
pad: 0
kernel_size: 3
weight_filler{
type:"gaussian"
std:0.01
}
}
}
layer{
name:"relu8"
type:"ReLU"
bottom:"conv4_2"
top:"conv4_2"
}
layer {
name: "drop4"
type: "Dropout"
bottom: "conv4_2"
top: "conv4_2"
dropout_param {
dropout_ratio: 0.5
}
}
layer {
name: "pool4"
type: "Pooling"
bottom: "conv4_2"
top: "pool4"
pooling_param {
pool: MAX
kernel_size: 2
stride: 2
}
}
layer {
name: "conv5_1"
type: "Convolution"
bottom: "pool4"
top: "conv5_1"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 1024
pad: 0
kernel_size: 3
weight_filler{
type:"gaussian"
std:0.01
}
}
}
layer{
name:"relu9"
type:"ReLU"
bottom:"conv5_1"
top:"conv5_1"
}
layer {
name: "conv5_2"
type: "Convolution"
bottom: "conv5_1"
top: "conv5_2"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 1024
pad: 0
kernel_size: 3
weight_filler{
type:"gaussian"
std:0.01
}
}
}
layer{
name:"relu10"
type:"ReLU"
bottom:"conv5_2"
top:"conv5_2"
}
layer {
name: "drop5"
type: "Dropout"
bottom: "conv5_2"
top: "conv5_2"
dropout_param {
dropout_ratio: 0.5
}
}
layer {
name: "upscore1"
type: "Deconvolution"
bottom: "conv5_2"
top: "upscore1"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 512
bias_term: false
kernel_size: 2
stride: 2
weight_filler{
type:"gaussian"
std:0.01
}
}
}
layer{
name:"relu11"
type:"ReLU"
bottom:"upscore1"
top:"upscore1"
}
layer {
name: 'crop1'
type: 'Crop'
bottom: 'conv4_2'
bottom: 'upscore1'
top: 'crop1'
crop_param {
axis: 2
offset: 4
offset: 4
}
}
layer {
name: "concat1"
type: "Concat"
bottom: "crop1"
bottom: "upscore1"
top: "concat1"
concat_param {
axis: 1
}
}
layer {
name: "conv6_1"
type: "Convolution"
bottom: "concat1"
top: "conv6_1"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 512
pad: 0
kernel_size: 3
weight_filler{
type:"gaussian"
std:0.01
}
}
}
layer{
name:"relu12"
type:"ReLU"
bottom:"conv6_1"
top:"conv6_1"
}
layer {
name: "conv6_2"
type: "Convolution"
bottom: "conv6_1"
top: "conv6_2"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 512
pad: 0
kernel_size: 3
weight_filler{
type:"gaussian"
std:0.01
}
}
}
layer{
name:"relu13"
type:"ReLU"
bottom:"conv6_2"
top:"conv6_2"
}
layer {
name: "upscore2"
type: "Deconvolution"
bottom: "conv6_2"
top: "upscore2"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 256
bias_term: false
kernel_size: 2
stride: 2
weight_filler{
type:"gaussian"
std:0.01
}
}
}
layer{
name:"relu14"
type:"ReLU"
bottom:"upscore2"
top:"upscore2"
}
layer {
name: 'crop2'
type: 'Crop'
bottom: 'conv3_2'
bottom: 'upscore2'
top: 'crop2'
crop_param {
axis: 2
offset: 16
offset: 16
}
}
layer {
name: "concat2"
type: "Concat"
bottom: "crop2"
bottom: "upscore2"
top: "concat2"
concat_param {
axis: 1
}
}
layer {
name: "conv7_1"
type: "Convolution"
bottom: "concat2"
top: "conv7_1"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 256
pad: 0
kernel_size: 3
weight_filler{
type:"gaussian"
std:0.01
}
}
}
layer{
name:"relu15"
type:"ReLU"
bottom:"conv7_1"
top:"conv7_1"
}
layer {
name: "conv7_2"
type: "Convolution"
bottom: "conv7_1"
top: "conv7_2"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 256
pad: 0
kernel_size: 3
weight_filler{
type:"gaussian"
std:0.01
}
}
}
layer{
name:"relu16"
type:"ReLU"
bottom:"conv7_2"
top:"conv7_2"
}
layer {
name: "upscore3"
type: "Deconvolution"
bottom: "conv7_2"
top: "upscore3"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 128
bias_term: false
kernel_size: 2
stride: 2
weight_filler{
type:"gaussian"
std:0.01
}
}
}
layer{
name:"relu17"
type:"ReLU"
bottom:"upscore3"
top:"upscore3"
}
layer {
name: 'crop3'
type: 'Crop'
bottom: 'conv2_2'
bottom: 'upscore3'
top: 'crop3'
crop_param {
axis: 2
offset: 40
offset: 40
}
}
layer {
name: "concat3"
type: "Concat"
bottom: "crop3"
bottom: "upscore3"
top: "concat3"
concat_param {
axis: 1
}
}
layer {
name: "conv8_1"
type: "Convolution"
bottom: "concat3"
top: "conv8_1"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 128
pad: 0
kernel_size: 3
weight_filler{
type:"gaussian"
std:0.01
}
}
}
layer{
name:"relu18"
type:"ReLU"
bottom:"conv8_1"
top:"conv8_1"
}
layer {
name: "conv8_2"
type: "Convolution"
bottom: "conv8_1"
top: "conv8_2"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 128
pad: 0
kernel_size: 3
weight_filler{
type:"gaussian"
std:0.01
}
}
}
layer{
name:"relu19"
type:"ReLU"
bottom:"conv8_2"
top:"conv8_2"
}
layer {
name: "upscore4"
type: "Deconvolution"
bottom: "conv8_2"
top: "upscore4"
param {
lr_mult: 1
decay_mult: 1
}
convolution_param {
num_output: 64
bias_term: false
kernel_size: 2
stride: 2
weight_filler{
type:"gaussian"
std:0.01
}
}
}
layer{
name:"relu20"
type:"ReLU"
bottom:"upscore4"
top:"upscore4"
}
layer {
name: 'crop4'
type: 'Crop'
bottom: 'conv1_2'
bottom: 'upscore4'
top: 'crop4'
crop_param {
axis: 2
offset: 88
offset: 88
}
}
layer {
name: "concat4"
type: "Concat"
bottom: "crop4"
bottom: "upscore4"
top: "concat4"
concat_param {
axis: 1
}
}
layer {
name: "conv9_1"
type: "Convolution"
bottom: "concat4"
top: "conv9_1"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 64
pad: 0
kernel_size: 3
weight_filler{
type:"gaussian"
std:0.01
}
}
}
layer{
name:"relu21"
type:"ReLU"
bottom:"conv9_1"
top:"conv9_1"
}
layer {
name: "conv9_2"
type: "Convolution"
bottom: "conv9_1"
top: "conv9_2"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 64
pad: 0
kernel_size: 3
weight_filler{
type:"gaussian"
std:0.01
}
}
}
layer{
name:"relu22"
type:"ReLU"
bottom:"conv9_2"
top:"conv9_2"
}
layer {
name: "score"
type: "Convolution"
bottom: "conv9_2"
top: "score"
param {
lr_mult: 1
decay_mult: 1
}
param {
lr_mult: 2
decay_mult: 0
}
convolution_param {
num_output: 2
pad: 0
kernel_size: 1
weight_filler{
type:"gaussian"
std:0.01
}
}
}
layer{
name:"sigmoid1"
type:"Sigmoid"
bottom:"score"
top:"score"
}
layer {
name: 'crop5'
type: 'Crop'
bottom: 'mask'
bottom: 'score'
top: 'crop5'
crop_param {
axis: 2
offset: 92
offset: 92
}
}
layer {
name: "loss"
type: "SoftmaxWithLoss"
bottom: "score"
bottom: "crop5"
top: "loss"
propagate_down: true
propagate_down: false
loss_param {
normalize: false
}
}
Python
1
https://gitee.com/eliseyang/unet.git
git@gitee.com:eliseyang/unet.git
eliseyang
unet
unet
master

搜索帮助