MobileNetv2-SSDLite
MobileNetv2-SSDLite copied to clipboard
Fails to compile with Movidius NCS
I followed the instructions to convert the weights from ssd_mobilenet_v2_coco_2018_03_29 to a Caffe model.
When I try to convert using: mvNCCompile -w deploy.caffemodel -o graph -s 12 deploy.prototxt
I get the error: [Error 17] Toolkit Error: Internal Error: Could not build graph. Missing link: conv_2
caffemodel and prototxt here: https://ufile.io/sysdx
If Mobilenetv2 is not supported then where can I get a full 90 class COCO of the original Mobilenet v1? I tried running the conversion tools against ssd_mobilenet_v1_coco_2017_11_17 but the layer names must not match because it doesn't dump any data.
@madhavajay v1 is here
@madhavajay Since the name(conv_2/sum) and top(conv_2) of the Eltwise layer are inconsistent, you need to add the following in line 86 of the file /usr/local/bin/ncsdk/Models/NetworkStage.py. if '/sum' in name: self.alias.append(name[0:-4])
Yes that fixed the compilation great!! :) Thanks @ailihong !
Now I have a new problem, when I run the model on the NCS I get:
[ 9.00000000e+01 nan nan nan
nan nan nan 0.00000000e+00
1.00000000e+00 nan nan nan
nan nan 0.00000000e+00 2.00000000e+00
nan nan nan nan
nan 0.00000000e+00 3.00000000e+00 nan
nan nan nan nan
0.00000000e+00 4.00000000e+00 nan nan
nan nan nan 0.00000000e+00
5.00000000e+00 nan nan nan
nan nan 0.00000000e+00 6.00000000e+00
nan nan nan nan
nan 0.00000000e+00 7.00000000e+00 nan
nan nan nan nan
0.00000000e+00 8.00000000e+00 nan nan
nan nan nan 0.00000000e+00
9.00000000e+00 nan nan nan
nan nan 0.00000000e+00 1.00000000e+01
nan nan nan nan
nan 0.00000000e+00 1.10000000e+01 nan
nan nan nan nan
0.00000000e+00 1.20000000e+01 nan nan
nan nan nan 0.00000000e+00
1.30000000e+01 nan nan nan
nan nan 0.00000000e+00 1.40000000e+01
nan nan nan nan
nan 0.00000000e+00 1.50000000e+01 nan
nan nan nan nan
0.00000000e+00 1.60000000e+01 nan nan
nan nan nan 0.00000000e+00
1.70000000e+01 nan nan nan
nan nan 0.00000000e+00 1.80000000e+01
nan nan nan nan
nan 0.00000000e+00 1.90000000e+01 nan
nan nan nan nan
0.00000000e+00 2.00000000e+01 nan nan
nan nan nan 0.00000000e+00
2.10000000e+01 nan nan nan
nan nan 0.00000000e+00 2.20000000e+01
nan nan nan nan
nan 0.00000000e+00 2.30000000e+01 nan
nan nan nan nan
0.00000000e+00 2.40000000e+01 nan nan
nan nan nan 0.00000000e+00
2.50000000e+01 nan nan nan
nan nan 0.00000000e+00 2.60000000e+01
nan nan nan nan
nan 0.00000000e+00 2.70000000e+01 nan
nan nan nan nan
0.00000000e+00 2.80000000e+01 nan nan
nan nan nan 0.00000000e+00
2.90000000e+01 nan nan nan
nan nan 0.00000000e+00 3.00000000e+01
nan nan nan nan
nan 0.00000000e+00 3.10000000e+01 nan
nan nan nan nan
0.00000000e+00 3.20000000e+01 nan nan
nan nan nan 0.00000000e+00
3.30000000e+01 nan nan nan
nan nan 0.00000000e+00 3.40000000e+01
nan nan nan nan
nan 0.00000000e+00 3.50000000e+01 nan
nan nan nan nan
0.00000000e+00 3.60000000e+01 nan nan
nan nan nan 0.00000000e+00
3.70000000e+01 nan nan nan
nan nan 0.00000000e+00 3.80000000e+01
nan nan nan nan
nan 0.00000000e+00 3.90000000e+01 nan
nan nan nan nan
0.00000000e+00 4.00000000e+01 nan nan
nan nan nan 0.00000000e+00
4.10000000e+01 nan nan nan
nan nan 0.00000000e+00 4.20000000e+01
nan nan nan nan
nan 0.00000000e+00 4.30000000e+01 nan
nan nan nan nan
0.00000000e+00 4.40000000e+01 nan nan
nan nan nan 0.00000000e+00
4.50000000e+01 nan nan nan
nan nan 0.00000000e+00 4.60000000e+01
nan nan nan nan
nan 0.00000000e+00 4.70000000e+01 nan
nan nan nan nan
0.00000000e+00 4.80000000e+01 nan nan
nan nan nan 0.00000000e+00
4.90000000e+01 nan nan nan
nan nan 0.00000000e+00 5.00000000e+01
nan nan nan nan
nan 0.00000000e+00 5.10000000e+01 nan
nan nan nan nan
0.00000000e+00 5.20000000e+01 nan nan
nan nan nan 0.00000000e+00
5.30000000e+01 nan nan nan
nan nan 0.00000000e+00 5.40000000e+01
nan nan nan nan
nan 0.00000000e+00 5.50000000e+01 nan
nan nan nan nan
0.00000000e+00 5.60000000e+01 nan nan
nan nan nan 0.00000000e+00
5.70000000e+01 nan nan nan
nan nan 0.00000000e+00 5.80000000e+01
nan nan nan nan
nan 0.00000000e+00 5.90000000e+01 nan
nan nan nan nan
0.00000000e+00 6.00000000e+01 nan nan
nan nan nan 0.00000000e+00
6.10000000e+01 nan nan nan
nan nan 0.00000000e+00 6.20000000e+01
nan nan nan nan
nan 0.00000000e+00 6.30000000e+01 nan
nan nan nan nan
0.00000000e+00 6.40000000e+01 nan nan
nan nan nan 0.00000000e+00
6.50000000e+01 nan nan nan
nan nan 0.00000000e+00 6.60000000e+01
nan nan nan nan
nan 0.00000000e+00 6.70000000e+01 nan
nan nan nan nan
0.00000000e+00 6.80000000e+01 nan nan
nan nan nan 0.00000000e+00
6.90000000e+01 nan nan nan
nan nan 0.00000000e+00 7.00000000e+01
nan nan nan nan
nan 0.00000000e+00 7.10000000e+01 nan
nan nan nan nan
0.00000000e+00 7.20000000e+01 nan nan
nan nan nan 0.00000000e+00
7.30000000e+01 nan nan nan
nan nan 0.00000000e+00 7.40000000e+01
nan nan nan nan
nan 0.00000000e+00 7.50000000e+01 nan
nan nan nan nan
0.00000000e+00 7.60000000e+01 nan nan
nan nan nan 0.00000000e+00
7.70000000e+01 nan nan nan
nan nan 0.00000000e+00 7.80000000e+01
nan nan nan nan
nan 0.00000000e+00 7.90000000e+01 nan
nan nan nan nan
0.00000000e+00 8.00000000e+01 nan nan
nan nan nan 0.00000000e+00
8.10000000e+01 nan nan nan
nan nan 0.00000000e+00 8.20000000e+01
nan nan nan nan
nan 0.00000000e+00 8.30000000e+01 nan
nan nan nan nan
0.00000000e+00 8.40000000e+01 nan nan
nan nan nan 0.00000000e+00
8.50000000e+01 nan nan nan
nan nan 0.00000000e+00 8.60000000e+01
nan nan nan nan
nan 0.00000000e+00 8.70000000e+01 nan
nan nan nan nan
0.00000000e+00 8.80000000e+01 nan nan
nan nan nan 0.00000000e+00
8.90000000e+01 nan nan nan
nan nan 0.00000000e+00 9.00000000e+01
nan nan nan nan
nan 8.53125000e+01 8.53125000e+01 8.13125000e+01
8.50625000e+01 1.25312500e+02 8.53125000e+01 8.11219215e-05
8.53125000e+01 6.93125000e+01 8.50625000e+01 8.53125000e+01
8.53125000e+01 8.53125000e+01 1.30176544e-03 1.05390625e+01
2.18400000e+04 8.54375000e+01 1.28650665e-03 8.53125000e+01
8.53125000e+01 3.33251953e-01 8.50625000e+01 2.18400000e+04
1.36500000e+03 1.70625000e+02 1.54590607e-03 1.29795074e-03
8.53125000e+01 1.24073029e-03 8.53125000e+01 8.13125000e+01
8.54375000e+01 2.18400000e+04 1.17312500e+02 2.18400000e+04
8.43125000e+01 8.50625000e+01 5.26953125e+00 9.30625000e+01
8.53125000e+01 4.66562500e+01 2.18400000e+04 8.13125000e+01
1.30176544e-03 1.07265625e+01 1.17312500e+02 1.30176544e-03
8.53125000e+01 8.53125000e+01 1.24073029e-03 8.50625000e+01
4.26562500e+01 8.43125000e+01 8.53125000e+01 9.53125000e+01
2.18720000e+04 8.43125000e+01 8.13125000e+01 3.41250000e+02
8.43125000e+01 8.53125000e+01 2.70751953e-01 1.29795074e-03
8.52500000e+01 1.24073029e-03 8.53125000e+01 8.53125000e+01
8.52500000e+01 8.73125000e+01 3.33251953e-01]
total num boxes: 90
box at index: 0 has nonfinite data, ignoring it
box at index: 1 has nonfinite data, ignoring it
box at index: 2 has nonfinite data, ignoring it
box at index: 3 has nonfinite data, ignoring it
box at index: 4 has nonfinite data, ignoring it
box at index: 5 has nonfinite data, ignoring it
box at index: 6 has nonfinite data, ignoring it
box at index: 7 has nonfinite data, ignoring it
box at index: 8 has nonfinite data, ignoring it
box at index: 9 has nonfinite data, ignoring it
box at index: 10 has nonfinite data, ignoring it
box at index: 11 has nonfinite data, ignoring it
box at index: 12 has nonfinite data, ignoring it
box at index: 13 has nonfinite data, ignoring it
box at index: 14 has nonfinite data, ignoring it
box at index: 15 has nonfinite data, ignoring it
box at index: 16 has nonfinite data, ignoring it
box at index: 17 has nonfinite data, ignoring it
box at index: 18 has nonfinite data, ignoring it
box at index: 19 has nonfinite data, ignoring it
box at index: 20 has nonfinite data, ignoring it
box at index: 21 has nonfinite data, ignoring it
box at index: 22 has nonfinite data, ignoring it
box at index: 23 has nonfinite data, ignoring it
box at index: 24 has nonfinite data, ignoring it
box at index: 25 has nonfinite data, ignoring it
box at index: 26 has nonfinite data, ignoring it
box at index: 27 has nonfinite data, ignoring it
box at index: 28 has nonfinite data, ignoring it
box at index: 29 has nonfinite data, ignoring it
box at index: 30 has nonfinite data, ignoring it
box at index: 31 has nonfinite data, ignoring it
box at index: 32 has nonfinite data, ignoring it
box at index: 33 has nonfinite data, ignoring it
box at index: 34 has nonfinite data, ignoring it
box at index: 35 has nonfinite data, ignoring it
box at index: 36 has nonfinite data, ignoring it
box at index: 37 has nonfinite data, ignoring it
box at index: 38 has nonfinite data, ignoring it
box at index: 39 has nonfinite data, ignoring it
box at index: 40 has nonfinite data, ignoring it
box at index: 41 has nonfinite data, ignoring it
box at index: 42 has nonfinite data, ignoring it
box at index: 43 has nonfinite data, ignoring it
box at index: 44 has nonfinite data, ignoring it
box at index: 45 has nonfinite data, ignoring it
box at index: 46 has nonfinite data, ignoring it
box at index: 47 has nonfinite data, ignoring it
box at index: 48 has nonfinite data, ignoring it
box at index: 49 has nonfinite data, ignoring it
box at index: 50 has nonfinite data, ignoring it
box at index: 51 has nonfinite data, ignoring it
box at index: 52 has nonfinite data, ignoring it
box at index: 53 has nonfinite data, ignoring it
box at index: 54 has nonfinite data, ignoring it
box at index: 55 has nonfinite data, ignoring it
box at index: 56 has nonfinite data, ignoring it
box at index: 57 has nonfinite data, ignoring it
box at index: 58 has nonfinite data, ignoring it
box at index: 59 has nonfinite data, ignoring it
box at index: 60 has nonfinite data, ignoring it
box at index: 61 has nonfinite data, ignoring it
box at index: 62 has nonfinite data, ignoring it
box at index: 63 has nonfinite data, ignoring it
box at index: 64 has nonfinite data, ignoring it
box at index: 65 has nonfinite data, ignoring it
box at index: 66 has nonfinite data, ignoring it
box at index: 67 has nonfinite data, ignoring it
box at index: 68 has nonfinite data, ignoring it
box at index: 69 has nonfinite data, ignoring it
box at index: 70 has nonfinite data, ignoring it
box at index: 71 has nonfinite data, ignoring it
box at index: 72 has nonfinite data, ignoring it
box at index: 73 has nonfinite data, ignoring it
box at index: 74 has nonfinite data, ignoring it
box at index: 75 has nonfinite data, ignoring it
box at index: 76 has nonfinite data, ignoring it
box at index: 77 has nonfinite data, ignoring it
box at index: 78 has nonfinite data, ignoring it
box at index: 79 has nonfinite data, ignoring it
box at index: 80 has nonfinite data, ignoring it
box at index: 81 has nonfinite data, ignoring it
box at index: 82 has nonfinite data, ignoring it
box at index: 83 has nonfinite data, ignoring it
box at index: 84 has nonfinite data, ignoring it
box at index: 85 has nonfinite data, ignoring it
box at index: 86 has nonfinite data, ignoring it
box at index: 87 has nonfinite data, ignoring it
box at index: 88 has nonfinite data, ignoring it
box at index: 89 has nonfinite data, ignoring it
Any ideas?
@madhavajay I found that the network that merged the bn layer does not predict output box, so I haven't tested it yet and I haven't encountered the problem you mentioned.
Right so it might be a problem with the conversion then? I am back on the MobileNetv1 repo doing some transfer learning there for now but im very interested in this for the future.
@madhavajay Update to ncsdk2.0.5, the model above works well~
@madhavajay Could I ask how you went about interpreting the outputs from the NCS? I've only done this with the TinyYOLO caffe models and am unsure how to go about it with this model.
Also, I had updated my ncsdk to the latest version (2.04.0) and every time I run mvNCCompile the resulting graph is incompatible with the device (Exception: mvncStatus.UNSUPPORTED_GRAPH_FILE ). Any ideas on how to remedy this?
@zserlin I havent interpreted them I switched to a Caffe based model because the NCSDK v2 tools don't compile on my Tinkerboard.
Did you try the above mention of using ncsdk 2.0.5? Also what about modifying the NetworkStage python file as above?
@madhavajay Since the name(conv_2/sum) and top(conv_2) of the Eltwise layer are inconsistent, you need to add the following in line 86 of the file /usr/local/bin/ncsdk/Models/NetworkStage.py.
if '/sum' in name:
self.alias.append(name[0:-4])
@madhavajay I've modified the NetworkStage python file, but I haven't tried the 2.0.5 version (couldn't find it at the time I tried). I'll try with that version rather than the 2.04.0 version and see if that helps.
Hi @ailihong, I encountered an error when trying to convert to Movidius graph as below:
[Error 17] Toolkit Error: Internal Error: Could not build graph. Missing link: Conv/pad
Can you suggest any solution?