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.

Failed to compile the VGG Face model

idata
Employee
809 Views

Failed to compile the VGG face model, always get this error: *** Error in `python3': free(): invalid pointer: 0x0000000002784b80 ***.

 

Using this command: mvNCCompile VGG_FACE_deploy.prototxt -w VGG_FACE.caffemodel -s 12 -in conv1_1 -on fc8 -is 224 224 -o VGGNet.graph

 

And here follows the prototxt file:

 

==========VGG_FACE_deploy.prototxt==========

 

name: "VGG_FACE_16_layers"

 

input: "data"

 

input_shape {

 

dim: 1

 

dim: 3

 

dim: 224

 

dim: 224

 

}

 

layers {

 

bottom: "data"

 

top: "conv1_1"

 

name: "conv1_1"

 

type: CONVOLUTION

 

convolution_param {

 

num_output: 64

 

pad: 1

 

kernel_size: 3

 

}

 

}

 

layers {

 

bottom: "conv1_1"

 

top: "conv1_1"

 

name: "relu1_1"

 

type: RELU

 

}

 

layers {

 

bottom: "conv1_1"

 

top: "conv1_2"

 

name: "conv1_2"

 

type: CONVOLUTION

 

convolution_param {

 

num_output: 64

 

pad: 1

 

kernel_size: 3

 

}

 

}

 

layers {

 

bottom: "conv1_2"

 

top: "conv1_2"

 

name: "relu1_2"

 

type: RELU

 

}

 

layers {

 

bottom: "conv1_2"

 

top: "pool1"

 

name: "pool1"

 

type: POOLING

 

pooling_param {

 

pool: MAX

 

kernel_size: 2

 

stride: 2

 

}

 

}

 

layers {

 

bottom: "pool1"

 

top: "conv2_1"

 

name: "conv2_1"

 

type: CONVOLUTION

 

convolution_param {

 

num_output: 128

 

pad: 1

 

kernel_size: 3

 

}

 

}

 

layers {

 

bottom: "conv2_1"

 

top: "conv2_1"

 

name: "relu2_1"

 

type: RELU

 

}

 

layers {

 

bottom: "conv2_1"

 

top: "conv2_2"

 

name: "conv2_2"

 

type: CONVOLUTION

 

convolution_param {

 

num_output: 128

 

pad: 1

 

kernel_size: 3

 

}

 

}

 

layers {

 

bottom: "conv2_2"

 

top: "conv2_2"

 

name: "relu2_2"

 

type: RELU

 

}

 

layers {

 

bottom: "conv2_2"

 

top: "pool2"

 

name: "pool2"

 

type: POOLING

 

pooling_param {

 

pool: MAX

 

kernel_size: 2

 

stride: 2

 

}

 

}

 

layers {

 

bottom: "pool2"

 

top: "conv3_1"

 

name: "conv3_1"

 

type: CONVOLUTION

 

convolution_param {

 

num_output: 256

 

pad: 1

 

kernel_size: 3

 

}

 

}

 

layers {

 

bottom: "conv3_1"

 

top: "conv3_1"

 

name: "relu3_1"

 

type: RELU

 

}

 

layers {

 

bottom: "conv3_1"

 

top: "conv3_2"

 

name: "conv3_2"

 

type: CONVOLUTION

 

convolution_param {

 

num_output: 256

 

pad: 1

 

kernel_size: 3

 

}

 

}

 

layers {

 

bottom: "conv3_2"

 

top: "conv3_2"

 

name: "relu3_2"

 

type: RELU

 

}

 

layers {

 

bottom: "conv3_2"

 

top: "conv3_3"

 

name: "conv3_3"

 

type: CONVOLUTION

 

convolution_param {

 

num_output: 256

 

pad: 1

 

kernel_size: 3

 

}

 

}

 

layers {

 

bottom: "conv3_3"

 

top: "conv3_3"

 

name: "relu3_3"

 

type: RELU

 

}

 

layers {

 

bottom: "conv3_3"

 

top: "pool3"

 

name: "pool3"

 

type: POOLING

 

pooling_param {

 

pool: MAX

 

kernel_size: 2

 

stride: 2

 

}

 

}

 

layers {

 

bottom: "pool3"

 

top: "conv4_1"

 

name: "conv4_1"

 

type: CONVOLUTION

 

convolution_param {

 

num_output: 512

 

pad: 1

 

kernel_size: 3

 

}

 

}

 

layers {

 

bottom: "conv4_1"

 

top: "conv4_1"

 

name: "relu4_1"

 

type: RELU

 

}

 

layers {

 

bottom: "conv4_1"

 

top: "conv4_2"

 

name: "conv4_2"

 

type: CONVOLUTION

 

convolution_param {

 

num_output: 512

 

pad: 1

 

kernel_size: 3

 

}

 

}

 

layers {

 

bottom: "conv4_2"

 

top: "conv4_2"

 

name: "relu4_2"

 

type: RELU

 

}

 

layers {

 

bottom: "conv4_2"

 

top: "conv4_3"

 

name: "conv4_3"

 

type: CONVOLUTION

 

convolution_param {

 

num_output: 512

 

pad: 1

 

kernel_size: 3

 

}

 

}

 

layers {

 

bottom: "conv4_3"

 

top: "conv4_3"

 

name: "relu4_3"

 

type: RELU

 

}

 

layers {

 

bottom: "conv4_3"

 

top: "pool4"

 

name: "pool4"

 

type: POOLING

 

pooling_param {

 

pool: MAX

 

kernel_size: 2

 

stride: 2

 

}

 

}

 

layers {

 

bottom: "pool4"

 

top: "conv5_1"

 

name: "conv5_1"

 

type: CONVOLUTION

 

convolution_param {

 

num_output: 512

 

pad: 1

 

kernel_size: 3

 

}

 

}

 

layers {

 

bottom: "conv5_1"

 

top: "conv5_1"

 

name: "relu5_1"

 

type: RELU

 

}

 

layers {

 

bottom: "conv5_1"

 

top: "conv5_2"

 

name: "conv5_2"

 

type: CONVOLUTION

 

convolution_param {

 

num_output: 512

 

pad: 1

 

kernel_size: 3

 

}

 

}

 

layers {

 

bottom: "conv5_2"

 

top: "conv5_2"

 

name: "relu5_2"

 

type: RELU

 

}

 

layers {

 

bottom: "conv5_2"

 

top: "conv5_3"

 

name: "conv5_3"

 

type: CONVOLUTION

 

convolution_param {

 

num_output: 512

 

pad: 1

 

kernel_size: 3

 

}

 

}

 

layers {

 

bottom: "conv5_3"

 

top: "conv5_3"

 

name: "relu5_3"

 

type: RELU

 

}

 

layers {

 

bottom: "conv5_3"

 

top: "pool5"

 

name: "pool5"

 

type: POOLING

 

pooling_param {

 

pool: MAX

 

kernel_size: 2

 

stride: 2

 

}

 

}

 

layers {

 

bottom: "pool5"

 

top: "fc6"

 

name: "fc6"

 

type: INNER_PRODUCT

 

inner_product_param {

 

num_output: 4096

 

}

 

}

 

layers {

 

bottom: "fc6"

 

top: "fc6"

 

name: "relu6"

 

type: RELU

 

}

 

layers {

 

bottom: "fc6"

 

top: "fc6"

 

name: "drop6"

 

type: DROPOUT

 

dropout_param {

 

dropout_ratio: 0.5

 

}

 

}

 

layers {

 

bottom: "fc6"

 

top: "fc7"

 

name: "fc7"

 

type: INNER_PRODUCT

 

inner_product_param {

 

num_output: 4096

 

}

 

}

 

layers {

 

bottom: "fc7"

 

top: "fc7"

 

name: "relu7"

 

type: RELU

 

}

 

layers {

 

bottom: "fc7"

 

top: "fc7"

 

name: "drop7"

 

type: DROPOUT

 

dropout_param {

 

dropout_ratio: 0.5

 

}

 

}

 

layers {

 

bottom: "fc7"

 

top: "fc8"

 

name: "fc8"

 

type: INNER_PRODUCT

 

inner_product_param {

 

num_output: 2622

 

}

 

}

 

layers {

 

bottom: "fc8"

 

top: "prob"

 

name: "prob"

 

type: SOFTMAX

 

}
0 Kudos
6 Replies
idata
Employee
536 Views

@fengping I would like to help you troubleshoot this issue further and to do so it would be helpful if you could provide a link to the caffe model weights file that you used to compile your graph file. Thanks.

0 Kudos
idata
Employee
536 Views

I met the same issue. It 's related to Python3 and OpenCV 3.3.

 

Please make your openCV again with this parameter as below again.

 

-D BUILD_opencv_cnn_3dobj=OFF

 

-D BUILD_opencv_dnn_modern=OFF

 

sudo cp cv2.cpython-35m-x86_64-linux-gnu.so /usr/local/lib/python3.5/dist-packages/cv2/

0 Kudos
idata
Employee
536 Views

@Tom_at_Intel I think it's about my Python environment, I can successfully compile the pre-trained model in a new installed machine. So, it's not such an emergency. And I will try to follow @rouyunpan 's suggestion to reinstall opencv.

 

I guess it may caused by Anaconda which is suggested when Caffe installation.
0 Kudos
idata
Employee
536 Views

@fengping In the past, there has been a compatibility issue with Anaconda. Try removing Anaconda and see if that helps and please let us know if you fixed your issue. Thanks.

0 Kudos
idata
Employee
536 Views

@Tome_at_Intel I didn't fixed this issue no matter using recompile opencv or uninstall Anaconda, but I noticed that the graph file had already generated. There maybe some confliction but I haven't found it out. I will let you know as soon as I figure it out. Thank you.

0 Kudos
idata
Employee
536 Views

@fengping I ran into the same issue and it's indeed related to Python and OpenCV.

 

I used another NUC to install everything fresh and I don't get this error anymore.

 

Let us know, if it's solved for you. Otherwise, I have a VGG graph file compiled without an error. So, if you need any help, just let me know! :)
0 Kudos
Reply