inference_engine.hpp 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. // This file is part of OpenCV project.
  2. // It is subject to the license terms in the LICENSE file found in the top-level directory
  3. // of this distribution and at http://opencv.org/license.html.
  4. //
  5. // Copyright (C) 2018-2019, Intel Corporation, all rights reserved.
  6. // Third party copyrights are property of their respective owners.
  7. #ifndef OPENCV_DNN_UTILS_INF_ENGINE_HPP
  8. #define OPENCV_DNN_UTILS_INF_ENGINE_HPP
  9. #include "../dnn.hpp"
  10. namespace cv { namespace dnn {
  11. CV__DNN_INLINE_NS_BEGIN
  12. /* Values for 'OPENCV_DNN_BACKEND_INFERENCE_ENGINE_TYPE' parameter */
  13. /// @deprecated
  14. #define CV_DNN_BACKEND_INFERENCE_ENGINE_NN_BUILDER_API "NN_BUILDER"
  15. /// @deprecated
  16. #define CV_DNN_BACKEND_INFERENCE_ENGINE_NGRAPH "NGRAPH"
  17. /** @brief Returns Inference Engine internal backend API.
  18. *
  19. * See values of `CV_DNN_BACKEND_INFERENCE_ENGINE_*` macros.
  20. *
  21. * `OPENCV_DNN_BACKEND_INFERENCE_ENGINE_TYPE` runtime parameter (environment variable) is ignored since 4.6.0.
  22. *
  23. * @deprecated
  24. */
  25. CV_EXPORTS_W cv::String getInferenceEngineBackendType();
  26. /** @brief Specify Inference Engine internal backend API.
  27. *
  28. * See values of `CV_DNN_BACKEND_INFERENCE_ENGINE_*` macros.
  29. *
  30. * @returns previous value of internal backend API
  31. *
  32. * @deprecated
  33. */
  34. CV_EXPORTS_W cv::String setInferenceEngineBackendType(const cv::String& newBackendType);
  35. /** @brief Release a Myriad device (binded by OpenCV).
  36. *
  37. * Single Myriad device cannot be shared across multiple processes which uses
  38. * Inference Engine's Myriad plugin.
  39. */
  40. CV_EXPORTS_W void resetMyriadDevice();
  41. /* Values for 'OPENCV_DNN_IE_VPU_TYPE' parameter */
  42. #define CV_DNN_INFERENCE_ENGINE_VPU_TYPE_UNSPECIFIED ""
  43. /// Intel(R) Movidius(TM) Neural Compute Stick, NCS (USB 03e7:2150), Myriad2 (https://software.intel.com/en-us/movidius-ncs)
  44. #define CV_DNN_INFERENCE_ENGINE_VPU_TYPE_MYRIAD_2 "Myriad2"
  45. /// Intel(R) Neural Compute Stick 2, NCS2 (USB 03e7:2485), MyriadX (https://software.intel.com/ru-ru/neural-compute-stick)
  46. #define CV_DNN_INFERENCE_ENGINE_VPU_TYPE_MYRIAD_X "MyriadX"
  47. #define CV_DNN_INFERENCE_ENGINE_CPU_TYPE_ARM_COMPUTE "ARM_COMPUTE"
  48. #define CV_DNN_INFERENCE_ENGINE_CPU_TYPE_X86 "X86"
  49. /** @brief Returns Inference Engine VPU type.
  50. *
  51. * See values of `CV_DNN_INFERENCE_ENGINE_VPU_TYPE_*` macros.
  52. */
  53. CV_EXPORTS_W cv::String getInferenceEngineVPUType();
  54. /** @brief Returns Inference Engine CPU type.
  55. *
  56. * Specify OpenVINO plugin: CPU or ARM.
  57. */
  58. CV_EXPORTS_W cv::String getInferenceEngineCPUType();
  59. /** @brief Release a HDDL plugin.
  60. */
  61. CV_EXPORTS_W void releaseHDDLPlugin();
  62. CV__DNN_INLINE_NS_END
  63. }} // namespace
  64. #endif // OPENCV_DNN_UTILS_INF_ENGINE_HPP