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.

SSD Model gives wrong results on Movidius NCS 1

Ezzat__Ahmed
Beginner
281 Views

Platform : Windows 10

SDK: OpenVino R4 2018

Device: Movidius Neural Compute Stick (Myriad 2)

Model: SSD_INCEPTION_V2 tensorflow

I am using the ssd_inception_v2 imported from the TensorFlow Detection model Zoo. I made some customization by removing the preprocessing , postprocessing and the ANCHOR Box generation to be done on CPU with OpenCV and Numpy. The model is working fine with me on TensorFlow.

I tested the model with OpenVINO on CPU and its is also working well. I used the following command for model conversion:

python3 mo_tf.py --input_model ssd_inception_v2.pb --input_shape [1,300,300,3] --model_name ssd_inception_v2

All preprocessing is done in OpenCV and Numpy (including BGR->RGB, scaling, mean,...etc).

 

When I tried using the NCS, I got wrong results for the bounding boxes (The confidence values are correct). I used the following command for model conversion:

python3 mo_tf.py --input_model ssd_inception_v2.pb --input_shape [1,300,300,3] --model_name ssd_inception_v2_ncs --data_type FP16

I got some warnings about clipping some weights to zero due to float16 conversion, could this be the source of error?

I attached the test package. 

0 Kudos
2 Replies
Ezzat__Ahmed
Beginner
281 Views

I found the problem. It was in the last concat layer. I removed it and consider two output layers, one for boxes and one for scores.

It seems the last concat layer is not working well on the NCS.

0 Kudos
Severine_H_Intel
Employee
281 Views

Good you found a solution!

0 Kudos
Reply