OpenCV 4.13.0
开源计算机视觉库 (Open Source Computer Vision)
正在加载...
正在搜索...
未找到匹配项
cv::gapi::ie::Params< Net > 类模板引用

此结构体提供用于填充“OpenVINO Toolkit”模型推理参数的函数。 更多...

#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)
 为 InferenceEngine 中的 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)
 指定 resize 插值算法。
 
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 Toolkit”模型推理参数的函数。

构造函数与析构函数说明

◆ Params() [1/2]

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

类构造函数。

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

参数
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 )
内联

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

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

成员函数说明

◆ backend()

template<typename Net >
GBackend cv::gapi::ie::Params< Net >::backend ( ) const
内联
此函数的调用图

◆ cfgBatchSize()

template<typename Net >
Params< Net > & cv::gapi::ie::Params< Net >::cfgBatchSize ( const size_t size (大小))
内联

指定推理批次大小。

此函数用于指定推理批次大小。请参阅 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)
内联

为 InferenceEngine 中的 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)
内联

这是一个重载的成员函数,为方便起见提供。它仅在接受的参数不同于上面的函数。带有右值参数的函数。

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

◆ cfgInferMode()

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

指定将使用哪个 API 来运行推理。

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

  1. 异步(使用 StartAsync:https://docs.openvinotoolkit.org/latest/classInferenceEngine_1_1InferRequest.html#doxid-class-inference-engine-1-1-infer-request-1a405293e8423d82a5b45f642a3bef0d24
  2. 同步(使用 Infer:https://docs.openvinotoolkit.org/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)
内联

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

此函数用于将 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)
内联

这是一个重载的成员函数,为方便起见而提供。它与上述函数的区别仅在于所接受的参数不同。

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

◆ cfgInputLayout() [2/2]

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

指定模型的输入布局。

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

参数
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)
内联

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

此函数用于指定网络输入的新的输入形状。请参阅 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 )
内联

这是一个重载的成员函数,为方便起见而提供。它与上述函数的区别仅在于所接受的参数不同。

参数
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)
内联

这是一个重载的成员函数,为方便起见而提供。它与上述函数的区别仅在于所接受的参数不同。

参数
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)
内联

这是一个重载的成员函数,为方便起见而提供。它与上述函数的区别仅在于所接受的参数不同。

◆ cfgInputReshape() [5/6]

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

这是一个重载的成员函数,为方便起见而提供。它与上述函数的区别仅在于所接受的参数不同。

◆ cfgInputReshape() [6/6]

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

这是一个重载的成员函数,为方便起见而提供。它与上述函数的区别仅在于所接受的参数不同。

参数
layer_names右值集合,所选层将根据其输入图像大小自动重塑。
返回
指向此参数结构的引用。

◆ cfgNumRequests()

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

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

参数
nireq异步推理请求的数量。
返回
指向此参数结构的引用。

◆ cfgOutputLayers()

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

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

此函数用于将 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)
内联

这是一个重载的成员函数,为方便起见而提供。它与上述函数的区别仅在于所接受的参数不同。

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

◆ cfgOutputLayout() [2/2]

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

指定模型的输出布局。

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

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

◆ cfgOutputPrecision() [1/2]

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

这是一个重载的成员函数,为方便起见而提供。它与上述函数的区别仅在于所接受的参数不同。

参数
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)
内联

指定模型的输出精度。

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

参数
precision将 OpenCV 格式的精度(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 )
内联
此函数的调用图

◆ cfgResize() [1/2]

template<typename Net >
Params< Net > & cv::gapi::ie::Params< Net >::cfgResize ( detail::AttrMap< int > interpolation)
内联

这是一个重载的成员函数,为方便起见而提供。它与上述函数的区别仅在于所接受的参数不同。

参数
interpolation键值对映射:对应输入层的名称及其 resize 算法。
返回
指向此参数结构的引用。

◆ cfgResize() [2/2]

template<typename Net >
Params< Net > & cv::gapi::ie::Params< Net >::cfgResize ( int interpolation)
内联

指定 resize 插值算法。

此函数用于配置输入层的 resize 预处理。

参数
interpolationResize 插值算法。支持的算法:INTER_LINEARINTER_AREA
返回
指向此参数结构的引用。

◆ constInput()

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

指定一个常量输入。

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

参数
layer_name网络层的名称。
data (数据)包含将与网络层关联的数据的 cv::Mat。
提示 (hint)输入类型
另请参阅
cv::gapi::ie::TraitAs.
返回
指向此参数结构的引用。

◆ params()

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

◆ pluginConfig() [1/2]

template<typename Net >
Params & cv::gapi::ie::Params< Net >::pluginConfig ( const IEConfig & cfg)
内联

指定 OpenVINO 插件配置。

此函数用于设置 OpenVINO 插件的配置。某些参数可能因插件而异。请参阅 https://docs.openvinotoolkit.org/latest/index.html 以查看特定插件的信息。

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

◆ pluginConfig() [2/2]

template<typename Net >
Params & cv::gapi::ie::Params< Net >::pluginConfig ( IEConfig && cfg)
内联

这是一个重载的成员函数,为方便起见提供。它仅在接受的参数不同于上面的函数。带有右值参数的函数。

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

◆ tag()

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

成员数据文档

◆ desc

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

该类的文档由以下文件生成: