Faster RCNN训练出现问题:ValueError: operands could not be broadcast together with shapes

来源:互联网 发布:淘宝招工 编辑:程序博客网 时间:2024/05/18 01:46
ss = 0.0154733 (* 1 = 0.0154733 loss)I1017 02:21:18.817603 16224 solver.cpp:245]     Train net output #3: rpn_loss_bbox = 0.101269 (* 1 = 0.101269 loss)I1017 02:21:18.817608 16224 sgd_solver.cpp:106] Iteration 9800, lr = 0.001I1017 02:21:19.844008 16224 solver.cpp:229] Iteration 9820, loss = 0.605604I1017 02:21:19.844032 16224 solver.cpp:245]     Train net output #0: loss_bbox = 0.258967 (* 1 = 0.258967 loss)I1017 02:21:19.844036 16224 solver.cpp:245]     Train net output #1: loss_cls = 0.179147 (* 1 = 0.179147 loss)I1017 02:21:19.844041 16224 solver.cpp:245]     Train net output #2: rpn_cls_loss = 0.0545008 (* 1 = 0.0545008 loss)I1017 02:21:19.844060 16224 solver.cpp:245]     Train net output #3: rpn_loss_bbox = 0.11299 (* 1 = 0.11299 loss)I1017 02:21:19.844065 16224 sgd_solver.cpp:106] Iteration 9820, lr = 0.001I1017 02:21:20.869732 16224 solver.cpp:229] Iteration 9840, loss = 0.59657I1017 02:21:20.869755 16224 solver.cpp:245]     Train net output #0: loss_bbox = 0.125047 (* 1 = 0.125047 loss)I1017 02:21:20.869760 16224 solver.cpp:245]     Train net output #1: loss_cls = 0.221004 (* 1 = 0.221004 loss)I1017 02:21:20.869765 16224 solver.cpp:245]     Train net output #2: rpn_cls_loss = 0.0261099 (* 1 = 0.0261099 loss)I1017 02:21:20.869783 16224 solver.cpp:245]     Train net output #3: rpn_loss_bbox = 0.22441 (* 1 = 0.22441 loss)I1017 02:21:20.869787 16224 sgd_solver.cpp:106] Iteration 9840, lr = 0.001I1017 02:21:21.898542 16224 solver.cpp:229] Iteration 9860, loss = 0.566665I1017 02:21:21.898564 16224 solver.cpp:245]     Train net output #0: loss_bbox = 0.217061 (* 1 = 0.217061 loss)I1017 02:21:21.898571 16224 solver.cpp:245]     Train net output #1: loss_cls = 0.205798 (* 1 = 0.205798 loss)I1017 02:21:21.898574 16224 solver.cpp:245]     Train net output #2: rpn_cls_loss = 0.0281926 (* 1 = 0.0281926 loss)I1017 02:21:21.898593 16224 solver.cpp:245]     Train net output #3: rpn_loss_bbox = 0.115613 (* 1 = 0.115613 loss)I1017 02:21:21.898598 16224 sgd_solver.cpp:106] Iteration 9860, lr = 0.001I1017 02:21:22.924695 16224 solver.cpp:229] Iteration 9880, loss = 0.596356I1017 02:21:22.924718 16224 solver.cpp:245]     Train net output #0: loss_bbox = 0.280685 (* 1 = 0.280685 loss)I1017 02:21:22.924724 16224 solver.cpp:245]     Train net output #1: loss_cls = 0.163881 (* 1 = 0.163881 loss)I1017 02:21:22.924729 16224 solver.cpp:245]     Train net output #2: rpn_cls_loss = 0.0350983 (* 1 = 0.0350983 loss)I1017 02:21:22.924734 16224 solver.cpp:245]     Train net output #3: rpn_loss_bbox = 0.116692 (* 1 = 0.116692 loss)I1017 02:21:22.924738 16224 sgd_solver.cpp:106] Iteration 9880, lr = 0.001I1017 02:21:23.953996 16224 solver.cpp:229] Iteration 9900, loss = 0.538847I1017 02:21:23.954020 16224 solver.cpp:245]     Train net output #0: loss_bbox = 0.206076 (* 1 = 0.206076 loss)I1017 02:21:23.954026 16224 solver.cpp:245]     Train net output #1: loss_cls = 0.175002 (* 1 = 0.175002 loss)I1017 02:21:23.954046 16224 solver.cpp:245]     Train net output #2: rpn_cls_loss = 0.057081 (* 1 = 0.057081 loss)I1017 02:21:23.954049 16224 solver.cpp:245]     Train net output #3: rpn_loss_bbox = 0.100688 (* 1 = 0.100688 loss)I1017 02:21:23.954054 16224 sgd_solver.cpp:106] Iteration 9900, lr = 0.001I1017 02:21:24.981950 16224 solver.cpp:229] Iteration 9920, loss = 0.688178I1017 02:21:24.981978 16224 solver.cpp:245]     Train net output #0: loss_bbox = 0.215188 (* 1 = 0.215188 loss)I1017 02:21:24.981983 16224 solver.cpp:245]     Train net output #1: loss_cls = 0.363008 (* 1 = 0.363008 loss)I1017 02:21:24.981988 16224 solver.cpp:245]     Train net output #2: rpn_cls_loss = 0.0116421 (* 1 = 0.0116421 loss)I1017 02:21:24.982007 16224 solver.cpp:245]     Train net output #3: rpn_loss_bbox = 0.0983393 (* 1 = 0.0983393 loss)I1017 02:21:24.982012 16224 sgd_solver.cpp:106] Iteration 9920, lr = 0.001I1017 02:21:26.007951 16224 solver.cpp:229] Iteration 9940, loss = 0.532088I1017 02:21:26.007973 16224 solver.cpp:245]     Train net output #0: loss_bbox = 0.270666 (* 1 = 0.270666 loss)I1017 02:21:26.007979 16224 solver.cpp:245]     Train net output #1: loss_cls = 0.0925087 (* 1 = 0.0925087 loss)I1017 02:21:26.007984 16224 solver.cpp:245]     Train net output #2: rpn_cls_loss = 0.00594117 (* 1 = 0.00594117 loss)I1017 02:21:26.007988 16224 solver.cpp:245]     Train net output #3: rpn_loss_bbox = 0.162972 (* 1 = 0.162972 loss)I1017 02:21:26.007993 16224 sgd_solver.cpp:106] Iteration 9940, lr = 0.001I1017 02:21:27.034415 16224 solver.cpp:229] Iteration 9960, loss = 0.553832I1017 02:21:27.034436 16224 solver.cpp:245]     Train net output #0: loss_bbox = 0.221964 (* 1 = 0.221964 loss)I1017 02:21:27.034441 16224 solver.cpp:245]     Train net output #1: loss_cls = 0.20358 (* 1 = 0.20358 loss)I1017 02:21:27.034446 16224 solver.cpp:245]     Train net output #2: rpn_cls_loss = 0.0315744 (* 1 = 0.0315744 loss)I1017 02:21:27.034466 16224 solver.cpp:245]     Train net output #3: rpn_loss_bbox = 0.0967139 (* 1 = 0.0967139 loss)I1017 02:21:27.034469 16224 sgd_solver.cpp:106] Iteration 9960, lr = 0.001I1017 02:21:28.060611 16224 solver.cpp:229] Iteration 9980, loss = 0.488194I1017 02:21:28.060633 16224 solver.cpp:245]     Train net output #0: loss_bbox = 0.222793 (* 1 = 0.222793 loss)I1017 02:21:28.060639 16224 solver.cpp:245]     Train net output #1: loss_cls = 0.183032 (* 1 = 0.183032 loss)I1017 02:21:28.060644 16224 solver.cpp:245]     Train net output #2: rpn_cls_loss = 0.00902992 (* 1 = 0.00902992 loss)I1017 02:21:28.060662 16224 solver.cpp:245]     Train net output #3: rpn_loss_bbox = 0.0733386 (* 1 = 0.0733386 loss)I1017 02:21:28.060667 16224 sgd_solver.cpp:106] Iteration 9980, lr = 0.001speed: 0.051s / iterTraceback (most recent call last):  File "./tools/train_net.py", line 112, in <module>    max_iters=args.max_iters)  File "/home/py-faster-rcnn/tools/../lib/fast_rcnn/train.py", line 160, in train_net    model_paths = sw.train_model(max_iters)  File "/home/py-faster-rcnn/tools/../lib/fast_rcnn/train.py", line 108, in train_model    model_paths.append(self.snapshot())  File "/home/py-faster-rcnn/tools/../lib/fast_rcnn/train.py", line 73, in snapshot    self.bbox_stds[:, np.newaxis])ValueError: operands could not be broadcast together with shapes (84,1024) (8,1) 
./experiments/scripts/faster_rcnn_alt_opt.sh 0 VGG16 pascal_voc
NETS = {'vgg16': ('VGG16',                  'VGG16_Caltech_faster_rcnn_final.caffemodel'), #这里需要修改为训练后得到的模型的名称        'zf': ('ZF',                  'ZF_Caltech_faster_rcnn_final.caffemodel')} #这里需要修改为训练后得到的模型的名称

修改:

VGG16 Train.prototxt

Line 530行:

        num_classes:”2‘’修改成 类型数+1(背景算一类);

Line 620

        num_output  同上;

Line 643

        num_output: 8  

(类别数+1)* 4 ,“4”是指bbox的四个角

解决:

@-PC:~/py-faster-rcnn$ cd ..

@-PC:~$ geditpy-faster-rcnn/models/pascal_voc/VGG16/faster_rcnn_alt_opt/stage1_fast_rcnn_train.pt

@-PC:~$ gedit py-faster-rcnn/models/pascal_voc/VGG16/faster_rcnn_alt_opt/stage1_rpn_train.pt

@-PC:~$ geditpy-faster-rcnn/models/pascal_voc/VGG16/faster_rcnn_alt_opt/stage2_fast_rcnn_train.pt

@-PC:~$ geditpy-faster-rcnn/models/pascal_voc/VGG16/faster_rcnn_alt_opt/stage2_rpn_train.pt

@-PC:~$ geditpy-faster-rcnn/models/pascal_voc/VGG16/faster_rcnn_alt_opt/faster_rcnn_test.pt

@-PC:~$


转载请注明:http://blog.csdn.net/forest_world