Hi,
I am creating .dlc file for the mobilenet-SSD from https://github.com/chuanqi305/MobileNet-SSD
snpe-caffe-to-dlc -c ~/tmp/mobilenet-ssd/MobileNet-SSD/MobileNetSSD_deploy.prototxt -b ~/tmp/mobilenet-ssd/caffe-ssd/caffe/MobileNetSSD_deploy.caffemodel
MobileNetSSD_deploy.caffemodel comes from: https://drive.google.com/open?id=0B3gersZ2cHIxVFI1Rjd5aDgwOG8
Error is below.
This caffe model uses "permte_param". Is this supported by SNPE?
-------
snpe_caffe_to_dlc.py:1474: RuntimeWarning: error_code=803; error_message=Layer parameters combination is invalid in GPU Layer conv1/dw: input depth must be divisible by 4 * number of groups; error_component=GPU Runtime; line_no=53; thread_id=139621265012544
groups = groups)
snpe_caffe_to_dlc.py:1474: RuntimeWarning: error_code=803; error_message=Layer parameters combination is invalid in GPU Layer conv2/dw: input depth must be divisible by 4 * number of groups; error_component=GPU Runtime; line_no=53; thread_id=139621265012544
groups = groups)
snpe_caffe_to_dlc.py:1474: RuntimeWarning: error_code=803; error_message=Layer parameters combination is invalid in GPU Layer conv3/dw: input depth must be divisible by 4 * number of groups; error_component=GPU Runtime; line_no=53; thread_id=139621265012544
groups = groups)
snpe_caffe_to_dlc.py:1474: RuntimeWarning: error_code=803; error_message=Layer parameters combination is invalid in GPU Layer conv4/dw: input depth must be divisible by 4 * number of groups; error_component=GPU Runtime; line_no=53; thread_id=139621265012544
groups = groups)
snpe_caffe_to_dlc.py:1474: RuntimeWarning: error_code=803; error_message=Layer parameters combination is invalid in GPU Layer conv5/dw: input depth must be divisible by 4 * number of groups; error_component=GPU Runtime; line_no=53; thread_id=139621265012544
groups = groups)
snpe_caffe_to_dlc.py:1474: RuntimeWarning: error_code=803; error_message=Layer parameters combination is invalid in GPU Layer conv6/dw: input depth must be divisible by 4 * number of groups; error_component=GPU Runtime; line_no=53; thread_id=139621265012544
groups = groups)
snpe_caffe_to_dlc.py:1474: RuntimeWarning: error_code=803; error_message=Layer parameters combination is invalid in GPU Layer conv7/dw: input depth must be divisible by 4 * number of groups; error_component=GPU Runtime; line_no=53; thread_id=139621265012544
groups = groups)
snpe_caffe_to_dlc.py:1474: RuntimeWarning: error_code=803; error_message=Layer parameters combination is invalid in GPU Layer conv8/dw: input depth must be divisible by 4 * number of groups; error_component=GPU Runtime; line_no=53; thread_id=139621265012544
groups = groups)
snpe_caffe_to_dlc.py:1474: RuntimeWarning: error_code=803; error_message=Layer parameters combination is invalid in GPU Layer conv9/dw: input depth must be divisible by 4 * number of groups; error_component=GPU Runtime; line_no=53; thread_id=139621265012544
groups = groups)
snpe_caffe_to_dlc.py:1474: RuntimeWarning: error_code=803; error_message=Layer parameters combination is invalid in GPU Layer conv10/dw: input depth must be divisible by 4 * number of groups; error_component=GPU Runtime; line_no=53; thread_id=139621265012544
groups = groups)
snpe_caffe_to_dlc.py:1474: RuntimeWarning: error_code=803; error_message=Layer parameters combination is invalid in GPU Layer conv11/dw: input depth must be divisible by 4 * number of groups; error_component=GPU Runtime; line_no=53; thread_id=139621265012544
groups = groups)
snpe_caffe_to_dlc.py:1474: RuntimeWarning: error_code=803; error_message=Layer parameters combination is invalid in GPU Layer conv12/dw: input depth must be divisible by 4 * number of groups; error_component=GPU Runtime; line_no=53; thread_id=139621265012544
groups = groups)
snpe_caffe_to_dlc.py:1474: RuntimeWarning: error_code=803; error_message=Layer parameters combination is invalid in GPU Layer conv13/dw: input depth must be divisible by 4 * number of groups; error_component=GPU Runtime; line_no=53; thread_id=139621265012544
groups = groups)
Encountered Error: 'LayerParameter' object has no attribute 'ssd_permute_param'
Stack Trace:
Traceback (most recent call last):
File "snpe-caffe-to-dlc", line 74, in <module>
converter_command)
File "snpe_caffe_to_dlc.py", line 952, in convert
self.convert_caffe_new(self.spec)
File "snpe_caffe_to_dlc.py", line 1068, in convert_caffe_new
self.add_permute_layer(layer)
File "snpe_caffe_to_dlc.py", line 1750, in add_permute_layer
permute_param = layer.ssd_permute_param
Hello,
Did you happen to get solution on this?
Is anyone from Qualcomm NPE team please reply on this as QC NPE do say that they support MobileNet SSD but we encountered issue of converting them to DLC.
Thanks,
Jinay
The actual error is : Encountered Error: 'LayerParameter' object has no attribute 'ssd_permute_param'
Looks like the problem has to do with SNPE improperly converting permute_param. When I fix permute_param, it still fails with :
Could you help me? How to fix permute_param?
Could you help me? How to fix permute_param?
Hi, Rex
I know SNPE does not support type: "PriorBox" . Can you tell me how to add a PriorBox UDL type to fix this?
@liuqinglong110 - adding UDL support is non-trivial. Your best bet is to follow the SDK instructions.
Just to echo and add to what Rex said... Some of the layers used in many of the SSD models (e.g. prior box) are not currently natively supported in SNPE. They can be implemented as UDLs and work reaosnably well as CPU UDLs as they are not computationally very expensive. The details on creating UDLs can be found in the SDK documentation (as Rex points out). Feel free to ask additional questions if you run into problems following the documentation. You might also search the forums as several people have already asked questions about issues they've encountered in creating UDLs.
While I can't give a timeline, we are looking into adding native support for several of these layers that are common in SSD style models.
Hi omniengr77,
You may installed caffe from BVLC. paramute_param layer is not supported in this implementation of BVLC/Caffe. Please install the weiliu89/caffe from given link which having the extension to ssd implementation.
Follow the below instruction to install caffe.
Hope this will fix your issue.