代码之家  ›  专栏  ›  技术社区  ›  mans

为什么在用OpenVino推理编译OpenCv时会出现这个错误

  •  0
  • mans  · 技术社区  · 7 年前

    我试图用OpenVino推理编译OpenCV,如下所述:

    https://github.com/opencv/opencv/wiki/Intel's-Deep-Learning-Inference-Engine-backend

    但是当我试图在windows上生成MSVC(2017)项目时,我得到了一个错误:

    CMake Error at C:/local/Intel/computer_vision_sdk_2018.5.445/deployment_tools/inference_engine/src/extension/cmake/CPUID.cmake:324 (file):
      file STRINGS file "C:/local/opencv-build/cpuid.txt" cannot be read.
    Call Stack (most recent call first):
      C:/local/Intel/computer_vision_sdk_2018.5.445/deployment_tools/inference_engine/src/extension/cmake/feature_defs.cmake:17 (include)
      C:/local/Intel/computer_vision_sdk_2018.5.445/deployment_tools/inference_engine/src/extension/CMakeLists.txt:9 (include)
    

    使用的工具:

    • OpenCV 4.0.0源代码
    • OpenVino 5.0.1版
    • 视觉工作室2017
    • CMake图形用户界面3.13
    0 回复  |  直到 7 年前
        1
  •  0
  •   Rahila T - Intel    7 年前

    我认为你为一些工具安装了不合适的版本。 请尝试使用CMake 3.4或更高版本,这是构建OpenVINO的Intel发行版所必需的。

    请按照“中的步骤操作” https://software.intel.com/en-us/articles/OpenVINO-Install-Windows “用于安装并验证您是否能够使用OpenVino推理编译OpenCV。

        2
  •  0
  •   Mat Colleen    7 年前

    有一个 forum post 在OpenVino上,它指出了解决这个问题的方法。以下是建议的解决方案:

    ...\Intel\computer_vision_sdk_2018.5.456\deployment_tools\inference_engine\src\extension\cmake\CPUID.cmake (假设您遵循默认的OpenVino工具包安装,否则您需要首先从安装文件的位置找到该文件),请尝试在第251行进行以下更改:

    // std::ofstream fo(\"cpuid.txt\"); old line
    std::ofstream fo(\"${CMAKE_BINARY_DIR}/cpuid.txt\");
    

    *确保变量名 fo 与后面的代码一致。

    这可能避免不一致的路径,因为同一文件的319行获取如下文本文件:

    set(_CPUID_INFO "${CMAKE_BINARY_DIR}/cpuid.txt")
    

    从堆栈的痕迹来看 ${CMAKE_BINARY_DIR} 变量设置为 C:/local/opencv-build ,所以你应该期待 cpuid.txt 在那里生成。

        3
  •  0
  •   AS Mackay Kushan Gowda    7 年前

    我也遇到了这个错误,但是我改变了 CPUID.cmake公司 如下图所示:

    if(HAVE_CPUID_INFO)
        set(_CPUID_INFO "/home/huihui/intel/computer_vision_sdk_2018.4.420/inference_engine/build/cpuid.txt")
    

    现在这个错误被修正了。