MobileNetv2-SSDLite icon indicating copy to clipboard operation
MobileNetv2-SSDLite copied to clipboard

Fails to compile with Movidius NCS

Open madhavajay opened this issue 6 years ago • 10 comments

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 avatar May 28 '18 23:05 madhavajay

@madhavajay v1 is here

chuanqi305 avatar May 31 '18 03:05 chuanqi305

@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])

ailihong avatar May 31 '18 12:05 ailihong

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 avatar May 31 '18 22:05 madhavajay

@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.

ailihong avatar Jun 01 '18 01:06 ailihong

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 avatar Jun 01 '18 15:06 madhavajay

@madhavajay Update to ncsdk2.0.5, the model above works well~

heliusshine avatar Jun 16 '18 02:06 heliusshine

@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 avatar Jun 20 '18 14:06 zserlin

@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 avatar Jun 22 '18 17:06 madhavajay

@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.

zserlin avatar Jun 27 '18 16:06 zserlin

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?

tringn avatar Aug 24 '18 07:08 tringn