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.
6482 Discussions

Not able to compile Variable sized image as input.

idata
Employee
2,410 Views

I have made a Object Detector using Keras.

 

input_1 (InputLayer) (None, None, None, 3)

 

fcn_conv0 (Conv2D) (None, None, None, 32)

 

fcn_conv1 (Conv2D) (None, None, None, 64)

 

fcn_conv2 (Conv2D) (None, None, None, 128)

 

max_pooling2d_1 (MaxPooling2 (None, None, None, 128)

 

fcn_conv3 (Conv2D) (None, None, None, 64)

 

max_pooling2d_2 (MaxPooling2 (None, None, None, 64)

 

fcn_conv4 (Conv2D) (None, None, None, 32)

 

max_pooling2d_3 (MaxPooling2 (None, None, None, 32)

 

fcn_conv5 (Conv2D) (None, None, None, 32)

 

fcn_conv6 (Conv2D) (None, None, None, 512)

 

fcn_conv7 (Conv2D) (None, None, None, 6)

 

global_max_pooling2d_1 (Glob (None, 6)

 

Since I am dealing with variable sized object, I have kept the input as None and made a custom loss.

 

But after converting my Keras model to Tensorflow model and compiling using mvNCCompile command line tool it throws an error that

 

input_data = np.random.uniform(0, 1, shape)

 

File "mtrand.pyx", line 1307, in mtrand.RandomState.uniform

 

File "mtrand.pyx", line 242, in mtrand.cont2_array_sc

 

TypeError: 'NoneType' object cannot be interpreted as an integer

 

Command I am using is:

 

mvNCCompile tf_model.meta -in=input_1 -on=fcn_conv11/BiasAdd

 

I've the TF_Model folder which contains checkpoint file, .meta file, .data file, .index file.

 

Kindly help. I am stuck with these for the past one week

 

Thanks

0 Kudos
6 Replies
idata
Employee
2,015 Views

@bumzo The NCSDK doesn't support models that use variable input sizes. For reference, the NCSDK takes a model and compiles a version of that model in the form of a static Movidius graph file. The input size is set for the graph file and cannot be changed. You can always resize input images to a set input size resolution, but I understand that based on what you are doing, it may not be suitable. Currently there isn't a workaround for implementing variable input sizes.

0 Kudos
idata
Employee
2,015 Views

@Tome_at_Intel But then how it is supporting Yolo?

 

Even it works on the principle of R-FCN and variable size.
0 Kudos
idata
Employee
2,015 Views

@bumzo The input size for Tiny Yolo is set at 448x448. This doesn't change. When using input images that are of a different resolution, the images are resized and passed through the model.

0 Kudos
idata
Employee
2,015 Views

@Tome_at_Intel thanks for the information.

0 Kudos
idata
Employee
2,015 Views

Hi, I am getting the same exact problem but I took a Resnet Inception V2 model from TensorFlow Zoo which should be supported and I retrained it on my custom dataset. After retraining, I took the weights from inference folder and tried to use the mvncCompile on them and got the same exact error. How can I change the input size to 1 in this case? @bumzo @Tome_at_Intel

0 Kudos
idata
Employee
2,015 Views

Hi @ali18997

 

I've answered your question on your other thread here.

 

Best Regards,

 

Sahira
0 Kudos
Reply