Intel® Distribution of OpenVINO™ Toolkit
Community assistance about the Intel® Distribution of OpenVINO™ toolkit, OpenCV, and all aspects of computer vision-related on Intel® platforms.
6571 Discussions

Looks like the Caffe layer "Silence" is not supported... is this correct?

idata
Employee
2,850 Views

Hey Guys,

 

I am using a deploy.prototxt definition that has a "Silence" layer… as a result, I am seeing the following error with the example environment =>

 

mdouglas_95136:~/workspace/ncsdk/examples/caffe/GoogLeNet$ make run

 

making prereqs

 

(cd ../../data/ilsvrc12; make)

 

make[1]: Entering directory '/home/user/workspace/ncsdk/examples/data/ilsvrc12'

 

make[1]: Leaving directory '/home/user/workspace/ncsdk/examples/data/ilsvrc12'

 

making prototxt

 

Prototxt file already exists

 

making caffemodel

 

caffemodel file already exists

 

making compile

 

mvNCCompile -w deploy.caffemodel -s 12 deploy.prototxt

 

mvNCCompile v02.00, Copyright @ Movidius Ltd 2016

 

[Warning: 37] Output layer's name (instance_ignore_layer) must match its top (category_score)

 

[Error 4] Toolkit Error: Stage Type Not Supported: Silence

 

Anyone know if:

 

a) this is a legitimate error and "Silence" layer is not supported?

 

and

 

b) when is the support coming?

 

c) if it's in Beta, can I be a Beta tester? :-)

 

Thanks a bunch!

 

Mark Douglas
0 Kudos
24 Replies
idata
Employee
1,977 Views

@mdouglas_95136 Hi, in order to help us debug your issue, can you provide a link to your prototxt file? Thanks

0 Kudos
idata
Employee
1,977 Views

Tome! Thanks for asking.

 

I would need your email address for my SharePoint box.

 

my email is mark.douglas@nxp.com
0 Kudos
idata
Employee
1,977 Views

@ Tome_at_Intel

 

so my deploy.prototxt file is just too long and I get errors trying to place it in these postings.

 

mark.douglas@nxp.com

 

Thanks,

 

Mark D.
0 Kudos
idata
Employee
1,977 Views

@mdouglas_95136 When typing a comment, there is an option to link a URL or add a file attachment in the forum toolbar above the comment box.

0 Kudos
idata
Employee
1,977 Views

ok thanks @Tome_at_Intel

 

I need to open another discussion as if you look at the comment here there is no option to add a file… but I can from a "new" discussion.

 

Thanks,

 

Mark
0 Kudos
idata
Employee
1,977 Views

Getting "file not allowed" Argh…

 

when I try and add a file by either dropping in or by browsing. I can only see this option from a "new discussion" and even then it don't work. I tried under PaleMoon, FireFox, Chrome and IE browsers… no different.

 

So this is working for you guys?

 

MD
0 Kudos
idata
Employee
1,977 Views

here is a "try" to add the prototxt file that's stumbling on the "Silence" layer

0 Kudos
idata
Employee
1,977 Views
[file:///e:/Movidius/deploy_not_compile.prototxt](file:///e:/Movidius/deploy_not_compile.prototxt "file:///e:/Movidius/deploy_not_compile.prototxt")
0 Kudos
idata
Employee
1,977 Views

sorry… for me this feature is just not usable :-(

0 Kudos
idata
Employee
1,977 Views

@mdouglas_95136, alternatively you can copy paste the entire prototxt file within the Code formatting template (between ` symbol - it'll be on the same key as ~ tilde symbol). Like so:

 

input: "data" input_shape { dim: 1 dim: 3 dim: 227 dim: 227 }

0 Kudos
idata
Employee
1,977 Views

Thanks @AshwinVijayakumar ; however, same error about content length:

 

"Body is 3093 characters too long."

 

it's just too long or too many characters (multi-layered net config)

 

I may try in pieces

 

MD
0 Kudos
idata
Employee
1,977 Views

name: "pcd_parsing"

 

layer {

 

name: "input"

 

type: "Input"

 

top: "data"

 

input_param {

 

shape {

 

dim: 1

 

dim: 8

 

dim: 512

 

dim: 512

 

}

 

}

 

}

 

layer {

 

name: "slice_[dump, mask]"

 

type: "Slice"

 

bottom: "data"

 

top: "dump_blob"

 

top: "mask"

 

slice_param {

 

slice_point: 7

 

axis: 1

 

}

 

}

 

layer {

 

name: "Silence_[dump_blob]"

 

type: "Silence"

 

bottom: "dump_blob"

 

}

 

layer {

 

name: "conv1_1"

 

type: "Convolution"

 

bottom: "data"

 

top: "conv1_1"

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

convolution_param {

 

num_output: 48

 

pad: 1

 

kernel_size: 3

 

stride: 2

 

weight_filler {

 

type: "xavier"

 

}

 

bias_filler {

 

type: "constant"

 

value: 0.0

 

}

 

}

 

}

 

layer {

 

name: "relu1_1"

 

type: "ReLU"

 

bottom: "conv1_1"

 

top: "conv1_1"

 

relu_param {

 

negative_slope: 0.0

 

}

 

}

 

layer {

 

name: "conv1_2"

 

type: "Convolution"

 

bottom: "conv1_1"

 

top: "conv1_2"

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

convolution_param {

 

num_output: 48

 

pad: 1

 

kernel_size: 3

 

stride: 1

 

weight_filler {

 

type: "xavier"

 

}

 

bias_filler {

 

type: "constant"

 

value: 0.0

 

}

 

}

 

}

 

layer {

 

name: "relu1_2"

 

type: "ReLU"

 

bottom: "conv1_2"

 

top: "conv1_2"

 

relu_param {

 

negative_slope: 0.0

 

}

 

}

 

layer {

 

name: "conv2_1"

 

type: "Convolution"

 

bottom: "conv1_2"

 

top: "conv2_1"

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

convolution_param {

 

num_output: 64

 

pad: 1

 

kernel_size: 3

 

stride: 2

 

weight_filler {

 

type: "xavier"

 

}

 

bias_filler {

 

type: "constant"

 

value: 0.0

 

}

 

}

 

}

 

layer {
0 Kudos
idata
Employee
1,977 Views

name: "conv2_1_relu"

 

type: "ReLU"

 

bottom: "conv2_1"

 

top: "conv2_1"

 

relu_param {

 

negative_slope: 0.0

 

}

 

}

 

layer {

 

name: "conv2_2"

 

type: "Convolution"

 

bottom: "conv2_1"

 

top: "conv2_2"

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

convolution_param {

 

num_output: 64

 

pad: 1

 

kernel_size: 3

 

stride: 1

 

weight_filler {

 

type: "xavier"

 

}

 

bias_filler {

 

type: "constant"

 

value: 0.0

 

}

 

}

 

}

 

layer {

 

name: "conv2_2_relu"

 

type: "ReLU"

 

bottom: "conv2_2"

 

top: "conv2_2"

 

relu_param {

 

negative_slope: 0.0

 

}

 

}

 

layer {

 

name: "conv3_1"

 

type: "Convolution"

 

bottom: "conv2_2"

 

top: "conv3_1"

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

convolution_param {

 

num_output: 96

 

pad: 1

 

kernel_size: 3

 

stride: 2

 

weight_filler {

 

type: "xavier"

 

}

 

bias_filler {

 

type: "constant"

 

value: 0.0

 

}

 

}

 

}

 

layer {

 

name: "conv3_1_relu"

 

type: "ReLU"

 

bottom: "conv3_1"

 

top: "conv3_1"

 

relu_param {

 

negative_slope: 0.0

 

}

 

}

 

layer {

 

name: "conv4_1"

 

type: "Convolution"

 

bottom: "conv3_1"

 

top: "conv4_1"

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

convolution_param {

 

num_output: 128

 

pad: 1

 

kernel_size: 3

 

stride: 2

 

weight_filler {

 

type: "xavier"

 

}

 

bias_filler {

 

type: "constant"

 

value: 0.0

 

}

 

}

 

}

 

layer {

 

name: "conv4_1_relu"

 

type: "ReLU"

 

bottom: "conv4_1"

 

top: "conv4_1"

 

relu_param {

 

negative_slope: 0.0

 

}

 

}

 

layer {

 

name: "conv5_1"

 

type: "Convolution"

 

bottom: "conv4_1"

 

top: "conv5_1"

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

convolution_param {

 

num_output: 192

 

pad: 1

 

kernel_size: 3

 

stride: 2

 

weight_filler {

 

type: "xavier"

 

}

 

bias_filler {

 

type: "constant"

 

value: 0.0

 

}

 

}

 

}

 

layer {

 

name: "conv5_1_relu"

 

type: "ReLU"

 

bottom: "conv5_1"

 

top: "conv5_1"

 

relu_param {

 

negative_slope: 0.0

 

}

 

}

 

layer {

 

name: "refine5_deconv"

 

type: "Deconvolution"

 

bottom: "conv5_1"

 

top: "refine5_deconv"

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

convolution_param {

 

num_output: 128

 

pad: 1

 

kernel_size: 4

 

group: 1

 

stride: 2

 

weight_filler {

 

type: "xavier"

 

}

 

bias_filler {

 

type: "constant"

 

}

 

}

 

}

 

layer {

 

name: "refine5_deconv_relu"

 

type: "ReLU"

 

bottom: "refine5_deconv"

 

top: "refine5_deconv"

 

relu_param {

 

negative_slope: 0.0

 

}

 

}
0 Kudos
idata
Employee
1,977 Views

layer {

 

name: "refine4_concat"

 

type: "Concat"

 

bottom: "conv4_1"

 

bottom: "refine5_deconv"

 

top: "refine4_concat"

 

}

 

layer {

 

name: "refine4_conv_3x3_2"

 

type: "Convolution"

 

bottom: "refine4_concat"

 

top: "refine4_conv_3x3_2"

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

convolution_param {

 

num_output: 128

 

pad: 1

 

kernel_size: 3

 

stride: 1

 

weight_filler {

 

type: "xavier"

 

}

 

bias_filler {

 

type: "constant"

 

value: 0.0

 

}

 

}

 

}

 

layer {

 

name: "refine4_conv_3x3_2_relu"

 

type: "ReLU"

 

bottom: "refine4_conv_3x3_2"

 

top: "refine4_conv_3x3_2"

 

relu_param {

 

negative_slope: 0.0

 

}

 

}

 

layer {

 

name: "refine4_deconv"

 

type: "Deconvolution"

 

bottom: "refine4_conv_3x3_2"

 

top: "refine4_deconv"

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

convolution_param {

 

num_output: 96

 

pad: 1

 

kernel_size: 4

 

group: 1

 

stride: 2

 

weight_filler {

 

type: "xavier"

 

}

 

bias_filler {

 

type: "constant"

 

}

 

}

 

}

 

layer {

 

name: "refine4_deconv_relu"

 

type: "ReLU"

 

bottom: "refine4_deconv"

 

top: "refine4_deconv"

 

relu_param {

 

negative_slope: 0.0

 

}

 

}

 

layer {

 

name: "refine3_concat"

 

type: "Concat"

 

bottom: "conv3_1"

 

bottom: "refine4_deconv"

 

top: "refine3_concat"

 

}

 

layer {

 

name: "refine3_conv_3x3_2"

 

type: "Convolution"

 

bottom: "refine3_concat"

 

top: "refine3_conv_3x3_2"

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

convolution_param {

 

num_output: 96

 

pad: 1

 

kernel_size: 3

 

stride: 1

 

weight_filler {

 

type: "xavier"

 

}

 

bias_filler {

 

type: "constant"

 

value: 0.0

 

}

 

}

 

}

 

layer {

 

name: "refine3_conv_3x3_2_relu"

 

type: "ReLU"

 

bottom: "refine3_conv_3x3_2"

 

top: "refine3_conv_3x3_2"

 

relu_param {

 

negative_slope: 0.0

 

}

 

}

 

layer {

 

name: "refine3_deconv"

 

type: "Deconvolution"

 

bottom: "refine3_conv_3x3_2"

 

top: "refine3_deconv"

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

convolution_param {

 

num_output: 64

 

pad: 1

 

kernel_size: 4

 

group: 1

 

stride: 2

 

weight_filler {

 

type: "xavier"

 

}

 

bias_filler {

 

type: "constant"

 

}

 

}

 

}

 

layer {

 

name: "refine3_deconv_relu"

 

type: "ReLU"

 

bottom: "refine3_deconv"

 

top: "refine3_deconv"

 

relu_param {

 

negative_slope: 0.0

 

}

 

}

 

layer {

 

name: "refine2_concat"

 

type: "Concat"

 

bottom: "conv2_2"

 

bottom: "refine3_deconv"

 

top: "refine2_concat"

 

}

 

layer {

 

name: "refine2_conv_3x3_2"

 

type: "Convolution"

 

bottom: "refine2_concat"

 

top: "refine2_conv_3x3_2"

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

convolution_param {

 

num_output: 64

 

pad: 1

 

kernel_size: 3

 

stride: 1

 

weight_filler {

 

type: "xavier"

 

}

 

bias_filler {

 

type: "constant"

 

value: 0.0

 

}

 

}

 

}

 

layer {

 

name: "refine2_conv_3x3_2_relu"

 

type: "ReLU"

 

bottom: "refine2_conv_3x3_2"

 

top: "refine2_conv_3x3_2"

 

relu_param {

 

negative_slope: 0.0

 

}

 

}

 

layer {

 

name: "refine2_deconv"

 

type: "Deconvolution"

 

bottom: "refine2_conv_3x3_2"

 

top: "refine2_deconv"

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

convolution_param {

 

num_output: 48

 

pad: 1

 

kernel_size: 4

 

group: 1

 

stride: 2

 

weight_filler {

 

type: "xavier"

 

}

 

bias_filler {

 

type: "constant"

 

}

 

}

 

}

 

layer {

 

name: "refine2_deconv_relu"

 

type: "ReLU"

 

bottom: "refine2_deconv"

 

top: "refine2_deconv"

 

relu_param {

 

negative_slope: 0.0

 

}

 

}

 

layer {

 

name: "refine1_concat"

 

type: "Concat"

 

bottom: "conv1_2"

 

bottom: "refine2_deconv"

 

top: "refine1_concat"

 

}

 

layer {

 

name: "refine1_conv_3x3_2"

 

type: "Convolution"

 

bottom: "refine1_concat"

 

top: "refine1_conv_3x3_2"

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

convolution_param {

 

num_output: 48

 

pad: 1

 

kernel_size: 3

 

stride: 1

 

weight_filler {

 

type: "xavier"

 

}

 

bias_filler {

 

type: "constant"

 

value: 0.0

 

}

 

}

 

}

 

layer {

 

name: "refine1_conv_3x3_2_relu"

 

type: "ReLU"

 

bottom: "refine1_conv_3x3_2"

 

top: "refine1_conv_3x3_2"

 

relu_param {

 

negative_slope: 0.0

 

}

 

}

 

layer {

 

name: "predict"

 

type: "Deconvolution"

 

bottom: "refine1_conv_3x3_2"

 

top: "predict"

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

param {

 

lr_mult: 1.0

 

decay_mult: 0.0

 

}

 

convolution_param {

 

num_output: 12

 

pad: 1

 

kernel_size: 4

 

group: 1

 

stride: 2

 

weight_filler {

 

type: "xavier"

 

}

 

bias_filler {

 

type: "constant"

 

}

 

}

 

}
0 Kudos
idata
Employee
1,977 Views

layer {

 

name: "Slice_[\'category_pt\', \'instance_pt\', \'confidence_pt\', \'classify_pt\', \'heading_pt\', \'height_pt\']"

 

type: "Slice"

 

bottom: "predict"

 

top: "category_pt"

 

top: "instance_pt"

 

top: "confidence_pt"

 

top: "classify_pt"

 

top: "heading_pt"

 

top: "height_pt"

 

slice_param {

 

slice_point: 1

 

slice_point: 3

 

slice_point: 4

 

slice_point: 9

 

slice_point: 11

 

}

 

}

 

layer {

 

name: "all_category_score"

 

type: "Sigmoid"

 

bottom: "category_pt"

 

top: "all_category_score"

 

propagate_down: false

 

}

 

layer {

 

name: "instance_ignore_layer"

 

type: "Eltwise"

 

bottom: "all_category_score"

 

bottom: "mask"

 

top: "category_score"

 

eltwise_param {

 

operation: PROD

 

}

 

}

 

layer {

 

name: "confidence_score"

 

type: "Sigmoid"

 

bottom: "confidence_pt"

 

top: "confidence_score"

 

propagate_down: false

 

}

 

layer {

 

name: "class_score"

 

type: "Sigmoid"

 

bottom: "classify_pt"

 

top: "class_score"

 

propagate_down: false

 

}
0 Kudos
idata
Employee
1,977 Views

well… there it is boys… I like four(4) pieces.

 

--- I'm not sure this form tool is adequate in it's current capacity to accommodate files this size.

 

So you'd need to join each of these pieces and this is the file I can't see to get to build (with the error above)

 

Thanks!

 

Mark
0 Kudos
idata
Employee
1,977 Views

@mdouglas_95136 Do you have a specific purpose for the Silence layer? The Silence layer is useful in testing and training, however I'm not sure if it was meant for use with the deployment of a network.

0 Kudos
idata
Employee
1,977 Views

Thanks @Tome_at_Intel

 

I have asked about this layer… I've asked the owners if they could remove it. No response just yet.

 

--- do you know if the mvNCCompile supports "Silence" anyway? why is it barfing?

 

Thanks,

 

Mark
0 Kudos
idata
Employee
1,977 Views

@Tome_at_Intel Just checking in here :)

 

===> were you able to re-assemble this deploy.prototxt file (sorry I had to send in 4 pieces)

 

and give it a try with mvNCCompile?

 

Thanks so much for the help. If the SDK supports "Silence" then this should work.

 

well, keep me posted.

 

Mark Douglas
0 Kudos
idata
Employee
1,878 Views

@Tome_at_Intel just FYI: there are some known issues with your Caffe implementation listed sort of in your release notes (or this page)

 

https://movidius.github.io/ncsdk/Caffe.html

 

if you look down at

 

"Known Issues

 

Caffe Input Layer"

 

"Limitation: We don’t support this “input_param” format for the input layer"

 

so if I fix this to match the GoogLeNet same one you guys use ->

 

name: "pcd_parsing"

 

input: "data"

 

input_shape {

 

dim: 1

 

dim: 8

 

dim: 512

 

dim: 512

 

}

 

and… I remove the "Silence" layer I get different errors ->

 

____ start of make compile error ______*

 

user@user-PowerEdge-R720:~/workspace/ncsdk/examples/caffe/Apollo_GoogLeNet$ make compile

 

making prereqs

 

(cd ../../data/ilsvrc12; make)

 

make[1]: Entering directory '/home/user/workspace/ncsdk/examples/data/ilsvrc12'

 

make[1]: Leaving directory '/home/user/workspace/ncsdk/examples/data/ilsvrc12'

 

making prototxt

 

Prototxt file already exists

 

making caffemodel

 

caffemodel file already exists

 

making compile

 

mvNCCompile -w deploy.caffemodel -s 12 deploy.prototxt

 

mvNCCompile v02.00, Copyright @ Movidius Ltd 2016

 

[Warning: 37] Output layer's name (instance_ignore_layer) must match its top (category_score)

 

[Error 17] Toolkit Error: Internal Error: Could not build graph. Missing link: data

 

user@user-PowerEdge-R720:~/workspace/ncsdk/examples/caffe/Apollo_GoogLeNet$

 

______** end of "make compile" error ______***

 

So it looks like there is sufficient Caffe Input issues where you should have a guide to what might be the acceptable deploy.prototxt file.

 

please advise based on my last delopy.prototxt located here ->

 

https://github.com/ApolloAuto/apollo/blob/master/modules/perception/model/cnn_segmentation/deploy.prototxt

 

this happens to be the default Apollo deploy.prototxt file.

 

please advise.

 

Thanks,

 

Mark
0 Kudos
Reply