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

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

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

公共成员函数

 Params (const std::string &model)
 类构造函数。
 
GBackend backend () const
 
Params< Net > & cfgAddExecutionProvider (ep::CoreML &&ep)
 添加运行时的执行提供程序。
 
Params< Net > & cfgAddExecutionProvider (ep::CUDA &&ep)
 添加运行时的执行提供程序。
 
Params< Net > & cfgAddExecutionProvider (ep::DirectML &&ep)
 添加运行时的执行提供程序。
 
Params< Net > & cfgAddExecutionProvider (ep::OpenVINO &&ep)
 添加运行时的执行提供程序。
 
Params< Net > & cfgAddExecutionProvider (ep::TensorRT &&ep)
 添加运行时的执行提供程序。
 
Params< Net > & cfgDisableMemPattern ()
 禁用内存模式优化。
 
Params< Net > & cfgInputLayers (const typename PortCfg< Net >::In &layer_names)
 指定推理的网络输入层名称序列。
 
Params< Net > & cfgMeanStd (const typename PortCfg< Net >::NormCoefs &m, const typename PortCfg< Net >::NormCoefs &s)
 指定预处理的均值和标准差。
 
Params< Net > & cfgNormalize (const typename PortCfg< Net >::Normalize &normalizations)
 指定预处理的归一化参数。
 
Params< Net > & cfgOptLevel (const int opt_level)
 配置ONNX Runtime的优化级别。
 
Params< Net > & cfgOutputLayers (const typename PortCfg< Net >::Out &layer_names)
 指定推理的输出层名称序列。
 
Params< Net > & cfgPostProc (const std::vector< cv::GMatDesc > &out_metas, const PostProc &remap_function)
 配置图输出并提供用户的后处理函数。
 
Params< Net > & cfgPostProc (const std::vector< cv::GMatDesc > &out_metas, const PostProc &remap_function, const std::vector< std::string > &names_to_remap)
 
Params< Net > & cfgPostProc (std::vector< cv::GMatDesc > &&out_metas, PostProc &&remap_function)
 
Params< Net > & cfgPostProc (std::vector< cv::GMatDesc > &&out_metas, PostProc &&remap_function, std::vector< std::string > &&names_to_remap)
 
Params< Net > & cfgSessionOptions (const std::map< std::string, std::string > &options)
 配置ONNX Runtime的会话选项。
 
Params< Net > & constInput (const std::string &layer_name, const cv::Mat &data, TraitAs hint=TraitAs::TENSOR)
 设置常量输入。
 
cv::util::any params () const
 
std::string tag () const
 

受保护的属性

detail::ParamDesc desc
 

详细描述

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

包含推理参数的描述和填充这些参数的函数集。

构造函数和析构函数文档

◆ Params()

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

类构造函数。

基于模型信息构造Params,并为其他推理描述参数设置默认值。

参数
model模型路径(.onnx 文件)。

成员函数文档

◆ backend()

template<typename Net >
GBackend cv::gapi::onnx::Params< Net >::backend ( ) const
inline
此函数的调用图如下所示

◆ cfgAddExecutionProvider() [1/5]

template<typename Net >
Params< Net > & cv::gapi::onnx::Params< Net >::cfgAddExecutionProvider ( ep::CoreML && ep)
inline

添加运行时的执行提供程序。

此函数用于添加ONNX Runtime CoreML执行提供程序选项。

参数
epCoreML 执行提供程序选项。
另请参见
cv::gapi::onnx::ep::CoreML.
返回值
对修改对象的引用。

◆ cfgAddExecutionProvider() [2/5]

template<typename Net >
Params< Net > & cv::gapi::onnx::Params< Net >::cfgAddExecutionProvider ( ep::CUDA && ep)
inline

添加运行时的执行提供程序。

此函数用于添加ONNX Runtime CUDA执行提供程序选项。

参数
epCUDA 执行提供程序选项。
另请参见
cv::gapi::onnx::ep::CUDA.
返回值
对修改对象的引用。

◆ cfgAddExecutionProvider() [3/5]

template<typename Net >
Params< Net > & cv::gapi::onnx::Params< Net >::cfgAddExecutionProvider ( ep::DirectML && ep)
inline

添加运行时的执行提供程序。

此函数用于添加ONNX Runtime DirectML执行提供程序选项。

参数
epDirectML 执行提供程序选项。
另请参见
cv::gapi::onnx::ep::DirectML.
返回值
对修改对象的引用。

◆ cfgAddExecutionProvider() [4/5]

template<typename Net >
Params< Net > & cv::gapi::onnx::Params< Net >::cfgAddExecutionProvider ( ep::OpenVINO && ep)
inline

添加运行时的执行提供程序。

此函数用于添加ONNX Runtime OpenVINO执行提供程序选项。

参数
epOpenVINO 执行提供程序选项。
另请参见
cv::gapi::onnx::ep::OpenVINO.
返回值
对修改对象的引用。

◆ cfgAddExecutionProvider() [5/5]

template<typename Net >
Params< Net > & cv::gapi::onnx::Params< Net >::cfgAddExecutionProvider ( ep::TensorRT && ep)
inline

添加运行时的执行提供程序。

此函数用于添加 ONNX Runtime TensorRT 执行提供程序选项。

参数
epTensorRT 执行提供程序选项。
另请参见
cv::gapi::onnx::ep::TensorRT.
返回值
对修改对象的引用。

◆ cfgDisableMemPattern()

template<typename Net >
Params< Net > & cv::gapi::onnx::Params< Net >::cfgDisableMemPattern ( )
inline

禁用内存模式优化。

返回值
对修改对象的引用。

◆ cfgInputLayers()

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

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

此函数用于将图输入的数据与网络拓扑的输入层关联。名称数量必须与网络输入数量匹配。如果网络只有一个输入层,则无需调用此函数,因为该层会自动与输入关联,但这并不妨碍您自己进行关联。名称计数必须与网络输入数量匹配。

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

◆ cfgMeanStd()

template<typename Net >
Params< Net > & cv::gapi::onnx::Params< Net >::cfgMeanStd ( const typename PortCfg< Net >::NormCoefs & m,
const typename PortCfg< Net >::NormCoefs & s )
inline

指定预处理的均值和标准差。

此函数用于设置输入数据预处理的均值和标准差。

参数
mstd::array<cv::Scalar, N>,其中 N 是在 G_API_NET 中定义的输入数量。包含均值。
sstd::array<cv::Scalar, N>,其中 N 是在 G_API_NET 中定义的输入数量。包含标准差值。
返回值
对修改对象的引用。

◆ cfgNormalize()

template<typename Net >
Params< Net > & cv::gapi::onnx::Params< Net >::cfgNormalize ( const typename PortCfg< Net >::Normalize & normalizations)
inline

指定预处理的归一化参数。

此函数用于设置输入数据预处理的归一化参数。

参数
normalizationsstd::array<cv::Scalar, N>,其中 N 是在 G_API_NET 中定义的输入数量。包含启用或禁用输入数据归一化的布尔值。
返回值
对修改对象的引用。

◆ cfgOptLevel()

template<typename Net >
Params< Net > & cv::gapi::onnx::Params< Net >::cfgOptLevel ( const int opt_level)
inline

配置ONNX Runtime的优化级别。

参数
opt_level[优化级别]:有效值为 0(禁用)、1(基本)、2(扩展)、99(全部)。有关所有优化级别的完整列表,请参阅 onnxruntime_c_api.h(枚举 GraphOptimizationLevel)。
返回值
对修改对象的引用。
此函数的调用图如下所示

◆ cfgOutputLayers()

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

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

此函数用于将图输出的数据与网络拓扑的输出层关联。如果网络只有一个输出层,则无需调用此函数,因为该层会自动与输出关联,但这并不妨碍您自己进行关联。名称计数必须与网络输出数量匹配,或者您可以设置自己的输出,但这种情况下必须额外使用 cfgPostProc 函数。

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

◆ cfgPostProc() [1/4]

template<typename Net >
Params< Net > & cv::gapi::onnx::Params< Net >::cfgPostProc ( const std::vector< cv::GMatDesc > & out_metas,
const PostProc & remap_function )
inline

配置图输出并提供用户的后处理函数。

当您使用具有动态输出的网络时,将使用此函数。由于我们无法知道推理结果的维度,因此需要为构建图输出提供这些维度。这些维度可能与推理结果不同。因此,您必须提供 PostProc 函数,该函数从推理结果获取信息并填充由 out_metas 中的维度构建的输出。

参数
out_metas输出的元信息(类型、维度)。
remap_function后处理函数,它有两个参数。第一个是 onnx 结果,第二个是图输出。两个参数都是 std::map,包含层名称和 cv::Mat 的 pair。
返回值
对修改对象的引用。

◆ cfgPostProc() [2/4]

template<typename Net >
Params< Net > & cv::gapi::onnx::Params< Net >::cfgPostProc ( const std::vector< cv::GMatDesc > & out_metas,
const PostProc & remap_function,
const std::vector< std::string > & names_to_remap )
inline

这是一个重载的成员函数,为了方便起见。它与上面的函数的区别仅在于它接受的参数。该函数具有附加参数 names_to_remap。此参数提供有关将用于推理和后处理函数的输出层的信息。

参数
out_metas输出元信息。
remap_function后处理函数。
names_to_remap输出层的名称。网络的推理将在这几层上进行。推理结果将使用这些名称在后处理函数中进行处理。
返回值
对修改对象的引用。

◆ cfgPostProc() [3/4]

template<typename Net >
Params< Net > & cv::gapi::onnx::Params< Net >::cfgPostProc ( std::vector< cv::GMatDesc > && out_metas,
PostProc && remap_function )
inline

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

参数
out_metas输出的右值元信息(类型、维度)。
remap_function右值后处理函数,它有两个参数。第一个是 onnx 结果,第二个是图输出。两个参数都是 std::map,包含层名称和 cv::Mat 的 pair。
返回值
对修改对象的引用。

◆ cfgPostProc() [4/4]

template<typename Net >
Params< Net > & cv::gapi::onnx::Params< Net >::cfgPostProc ( std::vector< cv::GMatDesc > && out_metas,
PostProc && remap_function,
std::vector< std::string > && names_to_remap )
inline

这是一个重载的成员函数,为了方便起见。它与上面的函数的区别仅在于它接受的参数。具有右值参数和附加参数 names_to_remap 的函数。

参数
out_metas输出的右值元信息。
remap_function右值后处理函数。
names_to_remap输出层的rvalue名称。网络推理将在这些层上进行。推理结果将使用这些名称在后处理函数中进行处理。
返回值
对修改对象的引用。

◆ cfgSessionOptions()

template<typename Net >
Params< Net > & cv::gapi::onnx::Params< Net >::cfgSessionOptions ( const std::map< std::string, std::string > & options)
inline

配置ONNX Runtime的会话选项。

此函数用于通过接受键值对映射来设置ONNX Runtime会话的各种会话选项。

参数
options要应用于ONNX Runtime会话的会话选项映射。
返回值
对修改对象的引用。

◆ constInput()

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

设置常量输入。

此函数用于设置常量输入。由于此情况下预处理已禁用,因此此输入必须是已准备好的张量。您应该提供将接收提供数据的网络层的名称。

参数
layer_name网络层名称。
data包含将与网络层关联的数据的cv::Mat
hint输入类型 (TENSOR)。
返回值
对修改对象的引用。

◆ params()

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

◆ tag()

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

成员数据文档

◆ desc

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

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