OpenCV 4.11.0
开源计算机视觉
加载中…
搜索中…
无匹配项
cv::gapi::ie::Params< Net > 类模板参考

此结构提供用于填充“OpenVINO 工具包”模型的推理参数的函数。更多…

#include <opencv2/gapi/infer/ie.hpp>

cv::gapi::ie::Params< Net > 的协作图

公共成员函数

 Params (const std::string &model, const std::string &device)
 
 Params (const std::string &model, const std::string &weights, const std::string &device)
 类构造函数。
 
GBackend backend () const
 
Params< Net > & cfgBatchSize (const size_t size)
 指定推理批大小。
 
ParamscfgContextParams (const cv::util::any &ctx_cfg)
 指定 Inference Engine 中 RemoteContext 的配置。
 
ParamscfgContextParams (cv::util::any &&ctx_cfg)
 
Params< Net > & cfgInferMode (InferMode mode)
 指定将用于运行推理的 API。
 
Params< Net > & cfgInputLayers (const typename PortCfg< Net >::In &layer_names)
 指定推理的网络输入层名称序列。
 
Params< Net > & cfgInputLayout (detail::AttrMap< std::string > layout_map)
 
Params< Net > & cfgInputLayout (std::string layout)
 指定模型的输入布局。
 
Params< Net > & cfgInputReshape (const std::map< std::string, std::vector< std::size_t > > &reshape_table)
 指定网络输入的新输入形状。
 
Params< Net > & cfgInputReshape (const std::string &layer_name, const std::vector< size_t > &layer_dims)
 
Params< Net > & cfgInputReshape (const std::unordered_set< std::string > &layer_names)
 
Params< Net > & cfgInputReshape (std::map< std::string, std::vector< std::size_t > > &&reshape_table)
 
Params< Net > & cfgInputReshape (std::string &&layer_name, std::vector< size_t > &&layer_dims)
 
Params< Net > & cfgInputReshape (std::unordered_set< std::string > &&layer_names)
 
ParamscfgNumRequests (size_t nireq)
 指定异步推理请求的数量。
 
Params< Net > & cfgOutputLayers (const typename PortCfg< Net >::Out &layer_names)
 指定推理的网络输出层名称序列。
 
Params< Net > & cfgOutputLayout (detail::AttrMap< std::string > layout_map)
 
Params< Net > & cfgOutputLayout (std::string layout)
 指定模型的输出布局。
 
Params< Net > & cfgOutputPrecision (detail::ParamDesc::PrecisionMapT precision_map)
 
Params< Net > & cfgOutputPrecision (detail::ParamDesc::PrecisionT precision)
 指定模型的输出精度。
 
Params< Net > & cfgPreprocessingParams (const cv::gapi::wip::onevpl::Device &device, const cv::gapi::wip::onevpl::Context &ctx)
 
Params< Net > & cfgResize (detail::AttrMap< int > interpolation)
 
Params< Net > & cfgResize (int interpolation)
 指定调整大小插值算法。
 
Params< Net > & constInput (const std::string &layer_name, const cv::Mat &data, TraitAs hint=TraitAs::TENSOR)
 指定常量输入。
 
cv::util::any params () const
 
ParamspluginConfig (const IEConfig &cfg)
 指定 OpenVINO 插件配置。
 
ParamspluginConfig (IEConfig &&cfg)
 
std::string tag () const
 

受保护的属性

detail::ParamDesc desc
 

详细描述

template<typename Net>
class cv::gapi::ie::Params< Net >

此结构提供用于填充“OpenVINO 工具包”模型的推理参数的函数。

构造函数和析构函数文档

◆ Params() [1/2]

template<typename Net >
cv::gapi::ie::Params< Net >::Params ( const std::string & model,
const std::string & weights,
const std::string & device )
inline

类构造函数。

基于模型信息构造 Params,并为其他推理描述参数指定默认值。模型使用“OpenVINO 工具包”加载和编译。

参数
model拓扑 IR 的路径(.xml 文件)。
weights权重的路径(.bin 文件)。
device要使用的目标设备。

◆ Params() [2/2]

template<typename Net >
cv::gapi::ie::Params< Net >::Params ( const std::string & model,
const std::string & device )
inline

这是一个重载的成员函数,为了方便提供。它与上面的函数的不同之处仅在于它接受的参数。使用此构造函数可处理预编译的网络。模型从预编译的 blob 导入。

参数
model模型路径。
device要使用的目标设备。

成员函数文档

◆ backend()

template<typename Net >
GBackend cv::gapi::ie::Params< Net >::backend ( ) const
inline
以下是此函数的调用图

◆ cfgBatchSize()

template<typename Net >
Params< Net > & cv::gapi::ie::Params< Net >::cfgBatchSize ( const size_t size)
inline

指定推理批大小。

此函数用于指定推理批大小。有关更多信息,请参阅 https://docs.openvinotoolkit.org/latest/classInferenceEngine_1_1CNNNetwork.html#a8e9d19270a48aab50cb5b1c43eecb8e9

参数
size将使用的批大小。
返回值
对该参数结构的引用。
以下是此函数的调用图

◆ cfgContextParams() [1/2]

template<typename Net >
Params & cv::gapi::ie::Params< Net >::cfgContextParams ( const cv::util::any & ctx_cfg)
inline

指定 Inference Engine 中 RemoteContext 的配置。

当配置 RemoteContext 时,后端使用该上下文导入网络。它还期望 cv::MediaFrames 实际上是远程的,以便通过上下文操作 Blob。

参数
ctx_cfg包含 InferenceEngine::ParamMap 的 cv::util::any 值。
返回值
对该参数结构的引用。

◆ cfgContextParams() [2/2]

template<typename Net >
Params & cv::gapi::ie::Params< Net >::cfgContextParams ( cv::util::any && ctx_cfg)
inline

这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。

参数
ctx_cfg包含 InferenceEngine::ParamMap 的 cv::util::any 值。
返回值
对该参数结构的引用。

◆ cfgInferMode()

template<typename Net >
Params< Net > & cv::gapi::ie::Params< Net >::cfgInferMode ( InferMode mode)
inline

指定将用于运行推理的 API。

该函数用于指定 OpenVINO 推理的模式。OpenVINO 有两种运行推理的选项:

  1. 异步 (使用 StartAsync: https://docs.openvino.ai/latest/classInferenceEngine_1_1InferRequest.html#doxid-class-inference-engine-1-1-infer-request-1a405293e8423d82a5b45f642a3bef0d24)
  2. 同步 (使用 Infer: https://docs.openvino.ai/latest/classInferenceEngine_1_1InferRequest.html#doxid-class-inference-engine-1-1-infer-request-1a3391ce30894abde730523e9ca9371ce8) 默认情况下使用异步模式。
参数
mode将使用的推理模式。
返回值
对该参数结构的引用。

◆ cfgInputLayers()

template<typename Net >
Params< Net > & cv::gapi::ie::Params< Net >::cfgInputLayers ( const typename PortCfg< Net >::In & layer_names)
inline

指定推理的网络输入层名称序列。

该函数用于将 cv::gapi::infer<> 的输入与模型输入关联。名称数量必须与 G_API_NET() 中定义的网络输入数量匹配。如果网络只有一个输入层,则无需手动指定名称。

参数
layer_namesstd::array<std::string, N>,其中 N 是在 G_API_NET 中定义的输入数量。包含输入层的名称。
返回值
对该参数结构的引用。

◆ cfgInputLayout() [1/2]

template<typename Net >
Params< Net > & cv::gapi::ie::Params< Net >::cfgInputLayout ( detail::AttrMap< std::string > layout_map)
inline

这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。

参数
layout_map键值对映射:对应输入层的名称及其字符串表示的布局(“NCHW”、“NHWC”等)。
返回值
对该参数结构的引用。

◆ cfgInputLayout() [2/2]

template<typename Net >
Params< Net > & cv::gapi::ie::Params< Net >::cfgInputLayout ( std::string layout)
inline

指定模型的输入布局。

该函数用于设置模型的输入布局。

参数
layout字符串表示的布局(“NCHW”、“NHWC”等)将应用于所有输入层。
返回值
对该参数结构的引用。

◆ cfgInputReshape() [1/6]

template<typename Net >
Params< Net > & cv::gapi::ie::Params< Net >::cfgInputReshape ( const std::map< std::string, std::vector< std::size_t > > & reshape_table)
inline

指定网络输入的新输入形状。

该函数用于指定网络输入的新输入形状。更多信息请参考 https://docs.openvinotoolkit.org/latest/classInferenceEngine_1_1networkNetwork.html

参数
reshape_table键值对映射:对应数据的名称及其维度。
返回值
对该参数结构的引用。

◆ cfgInputReshape() [2/6]

template<typename Net >
Params< Net > & cv::gapi::ie::Params< Net >::cfgInputReshape ( const std::string & layer_name,
const std::vector< size_t > & layer_dims )
inline

这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。

参数
layer_name层的名称。
layer_dims该层的新的维度。
返回值
对该参数结构的引用。

◆ cfgInputReshape() [3/6]

template<typename Net >
Params< Net > & cv::gapi::ie::Params< Net >::cfgInputReshape ( const std::unordered_set< std::string > & layer_names)
inline

这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。

参数
layer_names将用于网络重塑的网络层名称集合。
返回值
对该参数结构的引用。

◆ cfgInputReshape() [4/6]

template<typename Net >
Params< Net > & cv::gapi::ie::Params< Net >::cfgInputReshape ( std::map< std::string, std::vector< std::size_t > > && reshape_table)
inline

这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。

◆ cfgInputReshape() [5/6]

template<typename Net >
Params< Net > & cv::gapi::ie::Params< Net >::cfgInputReshape ( std::string && layer_name,
std::vector< size_t > && layer_dims )
inline

这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。

◆ cfgInputReshape() [6/6]

template<typename Net >
Params< Net > & cv::gapi::ie::Params< Net >::cfgInputReshape ( std::unordered_set< std::string > && layer_names)
inline

这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。

参数
layer_names右值集合,所选层将自动调整其输入图像大小。
返回值
对该参数结构的引用。

◆ cfgNumRequests()

template<typename Net >
Params & cv::gapi::ie::Params< Net >::cfgNumRequests ( size_t nireq)
inline

指定异步推理请求的数量。

参数
nireq异步推理请求的数量。
返回值
对该参数结构的引用。

◆ cfgOutputLayers()

template<typename Net >
Params< Net > & cv::gapi::ie::Params< Net >::cfgOutputLayers ( const typename PortCfg< Net >::Out & layer_names)
inline

指定推理的网络输出层名称序列。

该函数用于将 cv::gapi::infer<> 的输出与模型输出关联。名称数量必须与 G_API_NET() 中定义的网络输出数量匹配。如果网络只有一个输出层,则无需手动指定名称。

参数
layer_namesstd::array<std::string, N>,其中 N 是在 G_API_NET 中定义的输出数量。包含输出层的名称。
返回值
对该参数结构的引用。

◆ cfgOutputLayout() [1/2]

template<typename Net >
Params< Net > & cv::gapi::ie::Params< Net >::cfgOutputLayout ( detail::AttrMap< std::string > layout_map)
inline

这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。

参数
layout_map键值对映射:对应输出层的名称及其字符串表示的布局(“NCHW”、“NHWC”等)。
返回值
对该参数结构的引用。

◆ cfgOutputLayout() [2/2]

template<typename Net >
Params< Net > & cv::gapi::ie::Params< Net >::cfgOutputLayout ( std::string layout)
inline

指定模型的输出布局。

该函数用于设置模型的输出布局。

参数
layout字符串表示的布局(“NCHW”、“NHWC”等)将应用于所有输出层。
返回值
对该参数结构的引用。

◆ cfgOutputPrecision() [1/2]

template<typename Net >
Params< Net > & cv::gapi::ie::Params< Net >::cfgOutputPrecision ( detail::ParamDesc::PrecisionMapT precision_map)
inline

这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。

参数
precision_map键值对映射:对应输出层的名称及其 OpenCV 格式的精度 (CV_8U、CV_32F 等)。
返回值
对该参数结构的引用。

◆ cfgOutputPrecision() [2/2]

template<typename Net >
Params< Net > & cv::gapi::ie::Params< Net >::cfgOutputPrecision ( detail::ParamDesc::PrecisionT precision)
inline

指定模型的输出精度。

该函数用于设置模型的输出精度。

参数
precisionOpenCV 格式的精度 (CV_8U、CV_32F 等) 将应用于所有输出层。
返回值
对该参数结构的引用。

◆ cfgPreprocessingParams()

template<typename Net >
Params< Net > & cv::gapi::ie::Params< Net >::cfgPreprocessingParams ( const cv::gapi::wip::onevpl::Device & device,
const cv::gapi::wip::onevpl::Context & ctx )
inline
以下是此函数的调用图

◆ cfgResize() [1/2]

template<typename Net >
Params< Net > & cv::gapi::ie::Params< Net >::cfgResize ( detail::AttrMap< int > 插值算法)
inline

这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。

参数
插值算法键值对映射:对应输入层的名称及其调整大小算法。
返回值
对该参数结构的引用。

◆ cfgResize() [2/2]

template<typename Net >
Params< Net > & cv::gapi::ie::Params< Net >::cfgResize ( int 插值算法)
inline

指定调整大小插值算法。

该函数用于配置输入层的调整大小预处理。

参数
插值算法调整大小插值算法。支持的算法:INTER_LINEARINTER_AREA
返回值
对该参数结构的引用。

◆ constInput()

template<typename Net >
Params< Net > & cv::gapi::ie::Params< Net >::constInput ( const std::string & layer_name,
const cv::Mat & 数据,
TraitAs hint = TraitAs::TENSOR )
inline

指定常量输入。

该函数用于设置常量输入。如果其类型为 TENSOR,则此输入必须是预处理的张量。需要提供接收提供数据的网络层的名称。

参数
layer_name网络层名称。
数据包含将与网络层关联的数据的 cv::Mat
提示输入类型
参见
cv::gapi::ie::TraitAs.
返回值
对该参数结构的引用。

◆ params()

template<typename Net >
cv::util::any cv::gapi::ie::Params< Net >::params ( ) const
inline

◆ pluginConfig() [1/2]

template<typename Net >
Params & cv::gapi::ie::Params< Net >::pluginConfig ( const IEConfig & 配置)
inline

指定 OpenVINO 插件配置。

该函数用于设置 OpenVINO 插件的配置。某些参数对于每个插件可能不同。请访问 https://docs.openvinotoolkit.org/latest/index.html 查看有关特定插件的信息。

参数
配置键值对映射:(配置参数名称,配置参数值)。
返回值
对该参数结构的引用。

◆ pluginConfig() [2/2]

template<typename Net >
Params & cv::gapi::ie::Params< Net >::pluginConfig ( IEConfig && 配置)
inline

这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅在于它接受的参数。带右值参数的函数。

参数
配置右值键值对映射:(配置参数名称,配置参数值)。
返回值
对该参数结构的引用。

◆ tag()

template<typename Net >
std::string cv::gapi::ie::Params< Net >::tag ( ) const
inline

成员数据文档

◆ desc

template<typename Net >
detail::ParamDesc cv::gapi::ie::Params< Net >::desc
受保护的

此类的文档是从以下文件生成的