yuqj1991 / caffe_train

caffe train face licenseplate reID action ocr centernet
23 stars 12 forks source link

CenterNet训练自己的数据集 #7

Closed xdg2016 closed 4 years ago

xdg2016 commented 4 years ago

您好大神,看了您caffe实现的centernet很厉害,我想用您的train.prototxt训练自己的多个类别的数据集,除了修改输出类别预测的featmap的通道数,还需要修改其他的地方吗?数据集标注和voc格式的标注可以用吗?希望大神能不吝赐教,谢谢!

yuqj1991 commented 4 years ago

你好,很感谢,你喜欢,我使用centernet是实现了centerface的训练。如果训练多个目标数据集,需要改通道数,还需要在最后损失层,修改num_class 类别数, 另为类别损失,我只实现了sigmoid,没有集成softmax。不过sigmoid,也可以做多分类预测。如果有些不同的,你可以直接修改 layer { name: "centernet_loss" type: "CenterObjectLoss" bottom: "conv_loc_1x1" bottom: "conf_heatmap_1x1" bottom: "label" top: "centernet_loss" include { phase: TRAIN } propagate_down: true propagate_down: true propagate_down: false loss_param { normalization: VALID } loss_weight: 1.0 center_object_loss_param { loc_loss_type: SMOOTH_L1 conf_loss_type: FOCALSIGMOID loc_weight: 1.0 num_class: 1 share_location: true } }

xdg2016 commented 4 years ago

谢谢大佬回复,我这边将您提供的层加入到我的caffe工程中重新编译各种报错,您可能修改了挺多地方的,方便给我一下您整个caffe工程吗,我整个用您的工程编译一下试试。我的邮箱1476263468@qq.com谢谢

yuqj1991 commented 4 years ago

我上传的就是完整的工程,我的是cuda-9.0版本的, cudnn7.15的吧,opencv3.4.1, prototuf 2.6的吧,你直接make,是可以成功的,另外没有windows版本

xdg2016 commented 4 years ago

好的,了解了,谢谢啊,我用的是windows,我再试试!

xdg2016 commented 4 years ago

大佬您好,我在windows下编译成功了,但是没法训练,报如下错误: image

提示这一层没有注册,请问这个要怎么修改呀

yuqj1991 commented 4 years ago

你要么需要把这个层添加到你的工程当中,要么在proto里面添加layer proto

xdg2016 commented 4 years ago

对不起,是我没看仔细,漏掉了这个层,现在可以正常训练了,谢谢大佬! 关于多类别,除了修改prototxt里面的通道数,还修改下cpp里面的代码,才能正常训练!