We have trained a Mask R-CNN
model on a NVIDIA GPU
to do object instance segmentation and tested on some images with sufficient performance. Now we are looking into deploy the trained model on Neural Compute Stick 2
. I'm just getting started with OpenVINO toolkit
and here is what I have done:
I downloaded
mask_rcnn_inception_v2_coco.tar.gz
fromTensorFlow detection model zoo
and decompressed it.I used
ModelOptimizer
as follows to get anIntermediate Representation
:python3 mo_tf.py \ --input_model ./frozen_inference_graph.pb \ -- tensorflow_use_custom_operations_config extensions/front/tf/mask_rcnn_support.json \ --tensorflow_object_detection_api_pipeline_config ./pipeline.config \ --data_type FP16
(I used data type of FP16 as the default FP32 is not supported on VPU)
- Then I used Inference Engine in the
mask_rcnn_demo
as follows:
./mask_rcnn_demo -m ./frozen_graph.xml -i ./image.jpg -d MYRIAD
However, I got the following error:
[ ERROR ] [VPU] Softmax input or output
SecondStageBoxPredictor/ClassPredictor/BiasAdd/softmax has invalid batch
Could someone please point me to the source of this error?
I understand from the documentation that currently Mask RCNN is only supported on CPU and GPU, but I would like to know is there anything I can do to get it run on VPU (such as write custom layers for layers not supported in Model Optimizer?). I haven't found any explanation on why Mask RCNN is not supported on VPU in the documentation yet.
Thanks,