Weights Mismatch with saved model

I am using the following configuration file in deepstream objectDetector_Yolo app. There seems to be a mismatch in the size of weights and the params loaded from the configuration file. Can you look this in greater detail.

https://github.com/AlexeyAB/darknet/files/4213821/yoloV3_pan3_changes1_leaky.txt

Here is the output:

root@ashutosh-GL553VE:/opt/nvidia/deepstream/deepstream-4.0/sources/objectDetector_Yolo# deepstream-app -c deepstream_app_config_yoloV3_pan3.txt
Creating LL OSD context new
0:00:00.326109565 32071 0x5568c1741e90 INFO                 nvinfer gstnvinfer.cpp:519:gst_nvinfer_logger:<primary_gie_classifier> NvDsInferContext[UID 1]:initialize(): Trying to create engine from model files
Loading pre-trained weights...
Loading complete!
Total Number of weights read : 12014020
      layer               inp_size            out_size       weightPtr
(1)   conv-bn-leaky     3 x 544 x 544      16 x 544 x 544    496   
(2)   maxpool          16 x 544 x 544      16 x 272 x 272    496   
(3)   conv-bn-leaky    16 x 272 x 272      32 x 272 x 272    5232  
(4)   maxpool          32 x 272 x 272      32 x 136 x 136    5232  
(5)   conv-bn-leaky    32 x 136 x 136      64 x 136 x 136    23920 
(6)   maxpool          64 x 136 x 136      64 x  68 x  68    23920 
(7)   conv-bn-leaky    64 x  68 x  68     128 x  68 x  68    98160 
(8)   maxpool         128 x  68 x  68     128 x  34 x  34    98160 
(9)   conv-bn-leaky   128 x  34 x  34     256 x  34 x  34    394096
(10)  maxpool         256 x  34 x  34     256 x  17 x  17    394096
(11)  conv-bn-leaky   256 x  17 x  17     512 x  17 x  17    1575792
(12)  maxpool         512 x  17 x  17     512 x  17 x  17    1575792
(13)  conv-bn-leaky   512 x  17 x  17    1024 x  17 x  17    6298480
(14)  conv-bn-leaky  1024 x  17 x  17     256 x  17 x  17    6561648
(15)  conv-bn-leaky   256 x  17 x  17     512 x  17 x  17    7743344
(16)  conv-bn-leaky   512 x  17 x  17     128 x  17 x  17    7809392
(17)  upsample        128 x  17 x  17     128 x  34 x  34        - 
(18)  route                  -            384 x  34 x  34    7809392
(19)  conv-bn-leaky   384 x  34 x  34     128 x  34 x  34    7859056
(20)  conv-bn-leaky   128 x  34 x  34     256 x  34 x  34    8154992
(21)  conv-bn-leaky   256 x  34 x  34     128 x  34 x  34    8188272
(22)  upsample        128 x  34 x  34     128 x  68 x  68        - 
(23)  route                  -            256 x  68 x  68    8188272
(24)  conv-bn-leaky   256 x  68 x  68      64 x  68 x  68    8204912
(25)  conv-bn-leaky    64 x  68 x  68     128 x  68 x  68    8279152
(26)  route                  -             32 x 272 x 272    8279152
(27)  maxpool          32 x 272 x 272      32 x  17 x  17    8279152
(28)  conv-bn-leaky    32 x  17 x  17      64 x  17 x  17    8281456
(29)  route                  -             64 x 136 x 136    8281456
(30)  maxpool          64 x 136 x 136      64 x  17 x  17    8281456
(31)  conv-bn-leaky    64 x  17 x  17      64 x  17 x  17    8285808
(32)  route                  -             64 x 136 x 136    8285808
(33)  maxpool          64 x 136 x 136      64 x  33 x  33    8285808
(34)  conv-bn-leaky    64 x  33 x  33      64 x  17 x  17    8290160
(35)  route                  -             64 x 136 x 136    8290160
(36)  maxpool          64 x 136 x 136      64 x  17 x  17    8290160
(37)  conv-bn-leaky    64 x  17 x  17      64 x  17 x  17    8294512
(38)  route                  -             64 x 136 x 136    8294512
(39)  maxpool          64 x 136 x 136      64 x  17 x  17    8294512
(40)  conv-bn-leaky    64 x  17 x  17      64 x  17 x  17    8298864
(41)  route                  -            128 x  68 x  68    8298864
(42)  maxpool         128 x  68 x  68     128 x  17 x  17    8298864
(43)  conv-bn-leaky   128 x  17 x  17      64 x  17 x  17    8307312
(44)  route                  -            128 x  68 x  68    8307312
(45)  maxpool         128 x  68 x  68     128 x  33 x  33    8307312
(46)  conv-bn-leaky   128 x  33 x  33      64 x  17 x  17    8315760
(47)  route                  -            128 x  68 x  68    8315760
(48)  maxpool         128 x  68 x  68     128 x  17 x  17    8315760
(49)  conv-bn-leaky   128 x  17 x  17      64 x  17 x  17    8324208
(50)  route                  -            256 x  34 x  34    8324208
(51)  maxpool         256 x  34 x  34     256 x  17 x  17    8324208
(52)  conv-bn-leaky   256 x  17 x  17      64 x  17 x  17    8340848
(53)  route                  -            512 x  17 x  17    8340848
(54)  conv-bn-leaky   512 x  17 x  17      64 x  17 x  17    8373872
(55)  route                  -            128 x  17 x  17    8373872
(56)  maxpool         128 x  17 x  17     128 x  17 x  17    8373872
(57)  upsample        128 x  17 x  17     128 x  68 x  68        - 
(58)  route                  -            256 x  68 x  68    8373872
(59)  conv-bn-leaky   256 x  68 x  68     128 x  68 x  68    8669296
(60)  conv-linear     128 x  68 x  68      30 x  68 x  68    8673166
(61)  yolo             30 x  68 x  68      30 x  68 x  68    8673166
(62)  route                  -            128 x  17 x  17    8673166
(63)  upsample        128 x  17 x  17     128 x  34 x  34        - 
(64)  route                  -            384 x  34 x  34    8673166
(65)  conv-bn-leaky   384 x  34 x  34     256 x  34 x  34    9558926
(66)  conv-linear     256 x  34 x  34      30 x  34 x  34    9566636
(67)  yolo             30 x  34 x  34      30 x  34 x  34    9566636
(68)  route                  -            128 x  17 x  17    9566636
(69)  route                  -            640 x  17 x  17    9566636
(70)  conv-bn-leaky   640 x  17 x  17     512 x  17 x  17    12517804
(71)  conv-linear     512 x  17 x  17      24 x  17 x  17    12530116
(72)  yolo             24 x  17 x  17      24 x  17 x  17    12530116
Number of unused weights left : 18446744073709035520
deepstream-app: yolo.cpp:349: nvinfer1::INetworkDefinition* Yolo::createYoloNetwork(std::vector<float>&, std::vector<nvinfer1::Weights>&): Assertion `0' failed.
Aborted (core dumped)

Moving this to Deepstream forum so that Deepstream team can take a look

Hello Deepstream Team…waiting for your findings.

This model should be 20% more accurate than yolov3 and 10-20% faster than yolov3-tiny.

Thanks for share. We will check it.

The Yolo sample provided in DeepStream supports only the standard Yolo models and user will have to make changes to the probes based on their custom network architecture. User can refer to the training framework - https://github.com/pjreddie/darknet