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

Some blobs for myriad cannot be compiled using myriad-compile.

y-fuku
Novice
1,540 Views

I have two questions about converting a model using myriad-compile.exe.

1)
I'm trying to convert a model to blob format for OAK-D using myriad-compile according to the following page.

https://docs.luxonis.com/en/latest/pages/tutorials/local_convert_openvino/

Specifically, I'm trying to convert human-pose-estimation-0002/0003/0004.

https://docs.openvinotoolkit.org/latest/omz_models_intel_human_pose_estimation_0004_description_human_pose_estimation_0004.html

However, when I run myiad-compile, I get the following error message.
Apparently, myriad-compile cannot convert Swish layers. Is there a solution?
(I was able to compile human-pose-estimation-0001.)

 

myriad_compile.exe -m D:\Downloads\human-pose-estimation-0002\FP16\human-pose-estimation-0002.xml -ip U8 -VPU_MYRIAD_PLATFORM VPU_MYRIAD_2480 -VPU_NUMBER_OF_SHAVES 14 -VPU_NUMBER_OF_CMX_SLICES 14
Inference Engine:
API version ............ 2.1
Build .................. 37988
Description ....... API
Cannot create Swish layer 1252 id:9

 

2)
OAK-D can perform "Stereo Neural Inference" if I prepare the appropriate blob, but does myriad-compile support this?

This means that I want to use two NCEs.

https://docs.luxonis.com/en/latest/pages/faq/?highlight=NCE#how-to-increase-nce-shaves-and-cmx-parameters

 

My development environment is Win10 + openvino_2021.2.185

If the current version of myriad-comple does not support these issues, I hope it will in the next version.

 

best-regards

fukuhara

 

0 Kudos
1 Solution
Peh_Intel
Moderator
1,467 Views

Hi Fukuhara,


Greetings to you.

 

From the tutorial you shared, please note that the OpenVINO version used is 2020.1, and the limit for SHAVE and CMX is 4.


The reason why I mentioned the limit for SHAVE and CMX is 8, this is because VPU_THROUGHPUT_STREAMS was defaulted to 2, starting from OpenVINO version 2020.2. It means when user requests compilation for N shaves, the model will be compiled for N*2 shaves.


For more explanation, you may refer to this GitHub thread:

https://github.com/openvinotoolkit/openvino/pull/2946


For your second question, OpenVINO’s current compile tool does not have additional parameters to specify the number of NCE/S into myriad blobs. However, you can compile for more than 8 shaves with the addition compile.txt file that specifies the MYRIAD_THROUGHPUT_STREAMS 1.


For more detailed information about the limit for SHAVE and CMX, you may refer to this thread.


Let’s go back to the discussion of converting IR formats to blob. I’ve validated on my side that the human-pose-estimation-0002,0003 and 004 models can be successfully converted to blob using OpenVINO version 2021.2. If you are still facing issue with the conversion using myriad_compile, perhaps you could try converting using compile_tool.exe.


Note: You have to add a parameter, -d MYRIAD when using compile_tool.exe and compile_tool.exe is located in this directory:

<install_dir>\deployment_tools\tools\compile_tool



Regards,

Peh


View solution in original post

5 Replies
Peh_Intel
Moderator
1,502 Views

Hi Fukuhara,


Greetings to you. For your information, human-pose-estimation-0002,0003 and 004 models are the new models that were added to the latest OpenVINO™ Toolkit which is version 2021.2. For the previous versions of OpenVINO™ Toolkit, human-pose-estimation-0001 model is the only available model for human pose estimation.


I’ve validated the myriad_compile using NCS2 with OpenVINO 2021.2 in Windows 10 with the command line:

myriad_compile.exe -VPU_NUMBER_OF_SHAVES 8 -VPU_NUMBER_OF_CMX_SLICES 8 -ip U8 -m "<install_dir>\deployment_tools\tools\model_downloader\intel\human-pose-estimation-0002\FP16\human-pose-estimation-0002.xml"


Note: For NCS2, 8 is the limit for both SHAVE and CMX parameters.

Note: For OpenVINO 2021.2, -VPU_MYRIAD_PLATFORM is not required.


You may refer to the document: https://docs.openvinotoolkit.org/2021.2/openvino_inference_engine_tools_compile_tool_README.html#run_the_compile_tool


However, I also faced the error of cannot create Swish layer 1252 id:9 when using OpenVINO 2020.1.


Note: For OpenVINO 2020.1, -VPU_MYRIAD_PLATFORM is optional.

https://docs.openvinotoolkit.org/2020.1/_inference_engine_tools_compile_tool_README.html#run_the_compile_tool


Can you reconfirm which versions of OpenVINO and VPU platform you’re using?


For the second question, we will come back to you.



Regards,

Peh


0 Kudos
y-fuku
Novice
1,490 Views

Hi, Peh

Thank you for kindly reply!!

I want to use OAK-D camera. This camera has built-in MyriadX VPU.

https://docs.luxonis.com/en/latest/pages/products/bw1098obc/

And I tried to compile models by referring to the following page. In the following instructions,  -VPU_MYRIAD_PLATFORM is used. and also 14 is the limit for SHAVE and CMX.

https://docs.luxonis.com/projects/api/en/latest/tutorials/local_convert_openvino/?highlight=myriad_compile#run-myriad-compile

I'm using openvino_2021.2.185, and I've successfully compiled human-pose-estimation-0001.

 

best,

fukuhara

 

 

 

 

0 Kudos
Peh_Intel
Moderator
1,468 Views

Hi Fukuhara,


Greetings to you.

 

From the tutorial you shared, please note that the OpenVINO version used is 2020.1, and the limit for SHAVE and CMX is 4.


The reason why I mentioned the limit for SHAVE and CMX is 8, this is because VPU_THROUGHPUT_STREAMS was defaulted to 2, starting from OpenVINO version 2020.2. It means when user requests compilation for N shaves, the model will be compiled for N*2 shaves.


For more explanation, you may refer to this GitHub thread:

https://github.com/openvinotoolkit/openvino/pull/2946


For your second question, OpenVINO’s current compile tool does not have additional parameters to specify the number of NCE/S into myriad blobs. However, you can compile for more than 8 shaves with the addition compile.txt file that specifies the MYRIAD_THROUGHPUT_STREAMS 1.


For more detailed information about the limit for SHAVE and CMX, you may refer to this thread.


Let’s go back to the discussion of converting IR formats to blob. I’ve validated on my side that the human-pose-estimation-0002,0003 and 004 models can be successfully converted to blob using OpenVINO version 2021.2. If you are still facing issue with the conversion using myriad_compile, perhaps you could try converting using compile_tool.exe.


Note: You have to add a parameter, -d MYRIAD when using compile_tool.exe and compile_tool.exe is located in this directory:

<install_dir>\deployment_tools\tools\compile_tool



Regards,

Peh


y-fuku
Novice
1,456 Views

Hi Peh

 

Thank you for the very helpful information!

I've not yet tested it on OAK-D, but I was able to compile a recent model by using compile_tool.exe with config.txt.

>compile_tool.exe -d MYRIAD -m human-pose-estimation-0004.xml -ip U8 -c config.txt

 

Thank you very much!!

sincerely

fukuhara

0 Kudos
Peh_Intel
Moderator
1,420 Views

Hi Fukuhara,


This thread will no longer be monitored since this issue has been resolved. If you need any additional information from Intel, please submit a new question.



Regards,

Peh


Reply