Merge pull request #16034 from Quantizs:irLoadFromBuffer
authorAlexander Alekhin <alexander.a.alekhin@gmail.com>
Thu, 19 Dec 2019 10:00:07 +0000 (10:00 +0000)
committerAlexander Alekhin <alexander.a.alekhin@gmail.com>
Thu, 19 Dec 2019 10:00:07 +0000 (10:00 +0000)
1  2 
modules/dnn/src/dnn.cpp

@@@ -2957,25 -2921,13 +2962,14 @@@ Net::Net() : impl(new Net::Impl
  {
  }
  
- Net Net::readFromModelOptimizer(const String& xml, const String& bin)
+ #ifdef HAVE_INF_ENGINE
+ /*static*/
+ Net Net::Impl::createNetworkFromModelOptimizer(InferenceEngine::CNNNetwork& ieNet)
  {
- #ifndef HAVE_INF_ENGINE
-     CV_Error(Error::StsError, "Build OpenCV with Inference Engine to enable loading models from Model Optimizer.");
- #else
- #if INF_ENGINE_VER_MAJOR_LE(INF_ENGINE_RELEASE_2019R3)
-     InferenceEngine::CNNNetReader reader;
-     reader.ReadNetwork(xml);
-     reader.ReadWeights(bin);
-     InferenceEngine::CNNNetwork ieNet = reader.getNetwork();
- #else
-     InferenceEngine::Core& ie = getCore();
-     InferenceEngine::CNNNetwork ieNet = ie.ReadNetwork(xml, bin);
- #endif
+     CV_TRACE_FUNCTION();
  
      std::vector<String> inputsNames;
 +    std::vector<MatShape> inp_shapes;
      for (auto& it : ieNet.getInputsInfo())
      {
          inputsNames.push_back(it.first);