frame

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Sign In

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

compile LightCNN net model failed

luoy@TTlyN:~/ncsdk/bin$ make example0Face
example0Face - FaceNet generation
python3 ./mvNCCompile.pyc data/LightenedCNN_B_deploy.prototxt -s 12
mvNCCompile v02.00, Copyright @ Movidius Ltd 2016

Traceback (most recent call last):
File "../../src/./mvNCCompile.py", line 99, in
File "../../src/./mvNCCompile.py", line 81, in create_graph
File "../../src/./Controllers/CaffeParser.py", line 523, in parse_caffe
IndexError: list index (0) out of range
Makefile:39: recipe for target 'example0Face' failed
make: *** [example0Face] Error 1

here is my prototxt file

Comments

  • 2 Comments sorted by Votes Date Added
  • name: "DeepFace_set003_net"
    input: "data"
    input_shape {
    dim: 1
    dim: 1
    dim: 128
    dim: 128
    }

    layers{
    name: "conv1"
    type: CONVOLUTION
    blobs_lr: 1
    blobs_lr: 2
    weight_decay: 1
    weight_decay: 0
    convolution_param {
    num_output: 96
    kernel_size: 5
    stride: 1
    pad: 2
    weight_filler {
    type: "xavier"
    }
    bias_filler {
    type: "constant"
    value: 0.1
    }
    }
    bottom: "data"
    top: "conv1"
    }
    layers{
    name: "slice1"
    type:SLICE
    slice_param {
    slice_dim: 1
    }
    bottom: "conv1"
    top: "slice1_1"
    top: "slice1_2"
    }
    layers{
    name: "etlwise1"
    type: ELTWISE
    bottom: "slice1_1"
    bottom: "slice1_2"
    top: "eltwise1"
    eltwise_param {
    operation: MAX
    }
    }
    layers{
    name: "pool1"
    type: POOLING
    pooling_param {
    pool: MAX
    kernel_size: 2
    stride: 2
    }
    bottom: "eltwise1"
    top: "pool1"
    }

    layers{
    name: "conv2a"
    type: CONVOLUTION
    blobs_lr: 1
    blobs_lr: 2
    weight_decay: 1
    weight_decay: 0
    convolution_param {
    num_output: 96
    kernel_size: 1
    stride: 1
    weight_filler {
    type: "xavier"
    }
    bias_filler {
    type: "constant"
    value: 0.1
    }
    }
    bottom: "pool1"
    top: "conv2a"
    }
    layers{
    name: "slice2a"
    type:SLICE
    slice_param {
    slice_dim: 1
    }
    bottom: "conv2a"
    top: "slice2a_1"
    top: "slice2a_2"
    }
    layers{
    name: "etlwise2a"
    type: ELTWISE
    bottom: "slice2a_1"
    bottom: "slice2a_2"
    top: "eltwise2a"
    eltwise_param {
    operation: MAX
    }
    }

    layers{
    name: "conv2"
    type: CONVOLUTION
    blobs_lr: 1
    blobs_lr: 2
    weight_decay: 1
    weight_decay: 0
    convolution_param {
    num_output: 192
    kernel_size: 3
    stride: 1
    pad: 1
    weight_filler {
    type: "xavier"
    }
    bias_filler {
    type: "constant"
    value: 0.1
    }
    }
    bottom: "eltwise2a"
    top: "conv2"
    }
    layers{
    name: "slice2"
    type:SLICE
    slice_param {
    slice_dim: 1
    }
    bottom: "conv2"
    top: "slice2_1"
    top: "slice2_2"
    }
    layers{
    name: "etlwise2"
    type: ELTWISE
    bottom: "slice2_1"
    bottom: "slice2_2"
    top: "eltwise2"
    eltwise_param {
    operation: MAX
    }
    }
    layers{
    name: "pool2"
    type: POOLING
    pooling_param {
    pool: MAX
    kernel_size: 2
    stride: 2
    }
    bottom: "eltwise2"
    top: "pool2"
    }

    layers{
    name: "conv3a"
    type: CONVOLUTION
    blobs_lr: 1
    blobs_lr: 2
    weight_decay: 1
    weight_decay: 0
    convolution_param {
    num_output: 192
    kernel_size: 1
    stride: 1
    weight_filler {
    type: "xavier"
    }
    bias_filler {
    type: "constant"
    value: 0.1
    }
    }
    bottom: "pool2"
    top: "conv3a"
    }
    layers{
    name: "slice3a"
    type:SLICE
    slice_param {
    slice_dim: 1
    }
    bottom: "conv3a"
    top: "slice3a_1"
    top: "slice3a_2"
    }
    layers{
    name: "etlwise3a"
    type: ELTWISE
    bottom: "slice3a_1"
    bottom: "slice3a_2"
    top: "eltwise3a"
    eltwise_param {
    operation: MAX
    }
    }

    layers{
    name: "conv3"
    type: CONVOLUTION
    blobs_lr: 1
    blobs_lr: 2
    weight_decay: 1
    weight_decay: 0
    convolution_param {
    num_output: 384
    kernel_size: 3
    stride: 1
    pad: 1
    weight_filler {
    type: "xavier"
    }
    bias_filler {
    type: "constant"
    value: 0.1
    }
    }
    bottom: "eltwise3a"
    top: "conv3"
    }
    layers{
    name: "slice3"
    type:SLICE
    slice_param {
    slice_dim: 1
    }
    bottom: "conv3"
    top: "slice3_1"
    top: "slice3_2"
    }
    layers{
    name: "etlwise3"
    type: ELTWISE
    bottom: "slice3_1"
    bottom: "slice3_2"
    top: "eltwise3"
    eltwise_param {
    operation: MAX
    }
    }
    layers{
    name: "pool3"
    type: POOLING
    pooling_param {
    pool: MAX
    kernel_size: 2
    stride: 2
    }
    bottom: "eltwise3"
    top: "pool3"
    }

    layers{
    name: "conv4a"
    type: CONVOLUTION
    blobs_lr: 1
    blobs_lr: 2
    weight_decay: 1
    weight_decay: 0
    convolution_param{
    num_output: 384
    kernel_size: 1
    stride: 1
    weight_filler{
    type:"xavier"
    }
    bias_filler{
    type: "constant"
    value: 0.1
    }
    }
    bottom: "pool3"
    top: "conv4a"
    }
    layers{
    name: "slice4a"
    type:SLICE
    slice_param {
    slice_dim: 1
    }
    bottom: "conv4a"
    top: "slice4a_1"
    top: "slice4a_2"
    }
    layers{
    name: "etlwise4a"
    type: ELTWISE
    bottom: "slice4a_1"
    bottom: "slice4a_2"
    top: "eltwise4a"
    eltwise_param {
    operation: MAX
    }
    }
    layers{
    name: "conv4"
    type: CONVOLUTION
    blobs_lr: 1
    blobs_lr: 2
    weight_decay: 1
    weight_decay: 0
    convolution_param{
    num_output: 256
    kernel_size: 3
    stride: 1
    pad: 1
    weight_filler{
    type:"xavier"
    }
    bias_filler{
    type: "constant"
    value: 0.1
    }
    }
    bottom: "eltwise4a"
    top: "conv4"
    }
    layers{
    name: "slice4"
    type:SLICE
    slice_param {
    slice_dim: 1
    }
    bottom: "conv4"
    top: "slice4_1"
    top: "slice4_2"
    }
    layers{
    name: "etlwise4"
    type: ELTWISE
    bottom: "slice4_1"
    bottom: "slice4_2"
    top: "eltwise4"
    eltwise_param {
    operation: MAX
    }
    }

    layers{
    name: "conv5a"
    type: CONVOLUTION
    blobs_lr: 1
    blobs_lr: 2
    weight_decay: 1
    weight_decay: 0
    convolution_param{
    num_output: 256
    kernel_size: 1
    stride: 1
    weight_filler{
    type:"xavier"
    }
    bias_filler{
    type: "constant"
    value: 0.1
    }
    }
    bottom: "eltwise4"
    top: "conv5a"
    }
    layers{
    name: "slice5a"
    type:SLICE
    slice_param {
    slice_dim: 1
    }
    bottom: "conv5a"
    top: "slice5a_1"
    top: "slice5a_2"
    }
    layers{
    name: "etlwise5a"
    type: ELTWISE
    bottom: "slice5a_1"
    bottom: "slice5a_2"
    top: "eltwise5a"
    eltwise_param {
    operation: MAX
    }
    }
    layers{
    name: "conv5"
    type: CONVOLUTION
    blobs_lr: 1
    blobs_lr: 2
    weight_decay: 1
    weight_decay: 0
    convolution_param{
    num_output: 256
    kernel_size: 3
    stride: 1
    pad: 1
    weight_filler{
    type:"xavier"
    }
    bias_filler{
    type: "constant"
    value: 0.1
    }
    }
    bottom: "eltwise5a"
    top: "conv5"
    }
    layers{
    name: "slice5"
    type:SLICE
    slice_param {
    slice_dim: 1
    }
    bottom: "conv5"
    top: "slice5_1"
    top: "slice5_2"
    }
    layers{
    name: "etlwise5"
    type: ELTWISE
    bottom: "slice5_1"
    bottom: "slice5_2"
    top: "eltwise5"
    eltwise_param {
    operation: MAX
    }
    }

    layers{
    name: "pool4"
    type: POOLING
    pooling_param {
    pool: MAX
    kernel_size: 2
    stride: 2
    }
    bottom: "eltwise5"
    top: "pool4"
    }

    layers{
    name: "fc1"
    type: INNER_PRODUCT
    blobs_lr: 1
    blobs_lr: 2
    weight_decay: 1
    weight_decay: 0
    inner_product_param {
    num_output: 512
    weight_filler {
    type: "xavier"
    }
    bias_filler {
    type: "constant"
    value: 0.1
    }
    }
    bottom: "pool4"
    top: "fc1"
    }
    layers{
    name: "slice_fc1"
    type:SLICE
    slice_param {
    slice_dim: 1
    }
    bottom: "fc1"
    top: "slice_fc1_1"
    top: "slice_fc1_2"
    }
    layers{
    name: "etlwise_fc1"
    type: ELTWISE
    bottom: "slice_fc1_1"
    bottom: "slice_fc1_2"
    top: "eltwise_fc1"
    eltwise_param {
    operation: MAX
    }
    }

    layers{
    name: "drop1"
    type: DROPOUT
    dropout_param{
    dropout_ratio: 0.75
    }
    bottom: "eltwise_fc1"
    top: "eltwise_fc1"
    }
    layers{
    name: "fc2"
    type: INNER_PRODUCT

    inner_product_param{
    num_output: 10575
    weight_filler {
    type: "xavier"
    }
    bias_filler {
    type: "constant"
    value: 0.1
    }
    }
    bottom: "eltwise_fc1"
    top: "fc2"
    }

    layers {
    name: "softmax"
    type: SOFTMAX
    bottom: "fc2"
    top: "prob"
    }

  • @youngluoyang A possible cause could be the missing slice point parameters from your Slice layers. Slice layers should have at least one slice_point per Slice layer. Referring to (http://caffe.berkeleyvision.org/tutorial/layers/slice.html), it seems the slice_points aren't optional. Let us know if this fixes your problem.

Sign In or Register to comment.