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.

Support for OpenVino Inference Engine on Windows

Yeoh__Ru_Sern1
Beginner
1,617 Views

Hi,

I am having troubles when  running Openvino inference engine for Windows platform. I have run the inference engine successfully on Linux based systems, and I am try to compile my existing C++ code which I developed on Ubuntu 18 on windows. I have set the necessary headers and libraries. However, when I am running I am getting this error:

 

Main Error: OpenCV(4.1.2-openvino) C:\jenkins\workspace\OpenCV\OpenVINO\build\opencv\modules\dnn\src\op_inf_engine.cpp:704: error: (-215:Assertion failed) Failed to initialize Inference Engine backend: Error loading xmlfile: D:\Documents\Projects\AIUI\InspectionSystem\SMLLeadInspection\x64\Release\plugins.xml, File was not found at line: 1 pos: 0 in function 'cv::dnn::InfEngineBackendNet::initPlugin'

 

This happens after I have loaded the network from xml and bin files, and am trying to get the inference from the network. The code that is the same runs fine on linux.

0 Kudos
8 Replies
JesusE_Intel
Moderator
1,617 Views

Hi Yeoh, Ru Sern,

  • Which OpenVINO version are you using?
  • Which Python, CMake and Microsoft Visual Studio are you using?
  • Could you share the code/model to reproduce from our end?

Regards,

Jesus

0 Kudos
Yeoh__Ru_Sern
Novice
1,617 Views

OpenVino 2019.3.379

Python 3.7

CMake 3.14

VS 2019

We are using the OpenCV interface for inferencing.

0 Kudos
Maksim_S_Intel
Employee
1,617 Views

Make sure you have plugins.xml file installed along with Inference Engine libraries, it should contain list of enabled plugins.

For example:

$ cat ~/intel/openvino/deployment_tools/inference_engine/lib/intel64/plugins.xml 
<ie>
    <plugins>
        <plugin name="CPU" location="libMKLDNNPlugin.so">
        </plugin>
        <plugin name="GPU" location="libclDNNPlugin.so">
        </plugin>
        <plugin name="MYRIAD" location="libmyriadPlugin.so">
        </plugin>
    </plugins>
</ie>

 

0 Kudos
Nair__Alka
Beginner
1,617 Views

Maksim S. (Intel) wrote:

Make sure you have plugins.xml file installed along with Inference Engine libraries, it should contain list of enabled plugins.

For example:

$ cat ~/intel/openvino/deployment_tools/inference_engine/lib/intel64/plugins.xml 
<ie>
    <plugins>
        <plugin name="CPU" location="libMKLDNNPlugin.so">
        </plugin>
        <plugin name="GPU" location="libclDNNPlugin.so">
        </plugin>
        <plugin name="MYRIAD" location="libmyriadPlugin.so">
        </plugin>
    </plugins>
</ie>

 

How to install plugins.xml along with inference engine libraries?

0 Kudos
Yeoh__Ru_Sern
Novice
1,617 Views

Hi, 

 

Yes, why isn't the plugins.xml file available upon installation in windows? And in your plugins.xml file, they are pointing to .so files, which belong to linux. Does that mean that the inference engine will not work in windows?

0 Kudos
Luis_at_Intel
Moderator
1,617 Views

Hi Ru Sern Yeoh,

The plugins.xml should be available in Windows* 10 under "C:\Program Files (x86)\IntelSWTools\openvino_2019.3.379\deployment_tools\inference_engine\bin\intel64\Debug" and/or "C:\Program Files (x86)\IntelSWTools\openvino_2019.3.379\deployment_tools\inference_engine\bin\intel64\Release". The contents of the xml point to .dll files for Windows* not .so files (see contents below). Inference Engine should work just fine on Windows* 10.

<ie>
    <plugins>
        <plugin name="GNA" location="GNAPlugind.dll">
        </plugin>
        <plugin name="HETERO" location="HeteroPlugind.dll">
        </plugin>
        <plugin name="CPU" location="MKLDNNPlugind.dll">
        </plugin>
        <plugin name="MULTI" location="MultiDevicePlugind.dll">
        </plugin>
        <plugin name="GPU" location="clDNNPlugind.dll">
        </plugin>
        <plugin name="FPGA" location="dliaPlugind.dll">
        </plugin>
        <plugin name="MYRIAD" location="myriadPlugind.dll">
        </plugin>
        <plugin name="HDDL" location="HDDLPlugind.dll">
        </plugin>
    </plugins>
</ie>

Regards,

Luis

0 Kudos
Yeoh__Ru_Sern1
Beginner
1,617 Views

I've tried it, and I have solved the missing plugins.xml problem. However, now I have an unhandled exception when reading the bin and xml file:

 Net net = readNetFromModelOptimizer(xml, bin);

This line throws an exception. Which is quite strange. It is only reading the xml and bin files from the openvino IR.

0 Kudos
Yeoh__Ru_Sern1
Beginner
1,617 Views

Hi, 

 

Could the source of my problems be because I am not sourcing the setup.vars file properly? For example, in Ubuntu I source the setup.vars file and open my IDE from the same terminal, doing that would have all the right environment variables set up in the IDE, and I can run my C++ code from there just fine.

 

Is it the same for Visual Studio 2019 in windows 10? How do I ensure that I have the right environment variables set up when I am developing in Visual Studio 2019?

Thanks.

0 Kudos
Reply