用于异构内核实现集合和图形转换的容器类。更多…
#include <opencv2/gapi/gkernel.hpp>
|
std::vector< cv::gapi::GBackend > | backends () const |
| 列出包含在包中的所有后端。
|
|
std::vector< std::string > | get_kernel_ids () const |
| 返回包中包含的内核 ID 向量。
|
|
const std::vector< GTransform > & | get_transformations () const |
| 返回包中包含的转换向量。
|
|
template<typename KImpl > |
void | include () |
| 将新的内核实现或新的转换 KImpl 放入包中。
|
|
void | include (const cv::gapi::GBackend &backend, const std::string &kernel_id) |
| 根据其后端和 ID 将新的内核添加到内核包中。
|
|
void | include (const cv::gapi::GFunctor &functor) |
|
template<typename KImpl > |
bool | includes () const |
| 测试此内核包中是否包含特定的内核实现 KImpl。
|
|
template<typename KAPI > |
bool | includesAPI () const |
|
template<typename KAPI > |
cv::gapi::GBackend | lookup () const |
| 查找内核(按其 API)
|
|
template<typename KAPI > |
void | remove () |
| 从包中移除所有实现给定 API 的内核。
|
|
void | remove (const cv::gapi::GBackend &backend) |
| 从包中移除与给定后端关联的所有内核。
|
|
GAPI_WRAP std::size_t | size () const |
| 返回包中内核的总数(包含所有后端)。
|
|
用于异构内核实现集合和图形转换的容器类。
GKernelPackage 是一个特殊的容器类,它存储内核实现和图形转换。此类的对象被创建并传递给 cv::GComputation::compile() 以指定要使用的内核以及在编译后的图形中要应用的转换。GKernelPackage 可能包含不同后端的内核,例如异构。
创建内核包最简单的方法是使用函数 cv::gapi::kernels()。此模板函数采用类型列表(可变参数模板)形式的内核实现,并在其之上生成内核包。
也可以通过编程方式生成内核包,从空包(使用默认构造函数创建)开始,然后通过调用 GKernelPackage::include() 来填充内核。请注意,此方法也是模板方法,因为 G-API 内核和转换实现是类型,而不是对象。
最后,可以使用函数 cv::gapi::combine() 将两个内核包组合成一个新的包。
◆ backends()
std::vector< cv::gapi::GBackend > cv::GKernelPackage::backends |
( |
| ) |
const |
◆ get_kernel_ids()
std::vector< std::string > cv::GKernelPackage::get_kernel_ids |
( |
| ) |
const |
返回包中包含的内核 ID 向量。
- 返回
- 包中包含的内核 ID 向量
◆ get_transformations()
const std::vector< GTransform > & cv::GKernelPackage::get_transformations |
( |
| ) |
const |
◆ include() [1/3]
template<typename KImpl >
void cv::GKernelPackage::include |
( |
| ) |
|
|
inline |
◆ include() [2/3]
void cv::GKernelPackage::include |
( |
const cv::gapi::GBackend & | backend, |
|
|
const std::string & | kernel_id ) |
根据其后端和 ID 将新的内核添加到内核包中。
- 参数
-
backend | 与内核关联的后端 |
kernel_id | 内核的名称/ID |
◆ include() [3/3]
void cv::GKernelPackage::include |
( |
const cv::gapi::GFunctor & | functor | ) |
|
◆ includes()
template<typename KImpl >
bool cv::GKernelPackage::includes |
( |
| ) |
const |
|
inline |
测试此内核包中是否包含特定的内核实现 KImpl。
- 另请参见
- includesAPI()
- 注意
- 不能应用于转换
- 返回
- 如果存在这样的内核,则为 true,否则为 false。
◆ includesAPI()
template<typename KAPI >
bool cv::GKernelPackage::includesAPI |
( |
| ) |
const |
|
inline |
检查包是否按 API 类型包含内核 API 的任何实现。
◆ lookup()
template<typename KAPI >
cv::gapi::GBackend cv::GKernelPackage::lookup |
( |
| ) |
const |
|
inline |
查找内核(按其 API)
返回与 ID 对应的实现。如果找不到任何内容则抛出异常。
- 返回
- 托管匹配内核实现的后端。
◆ remove() [1/2]
template<typename KAPI >
void cv::GKernelPackage::remove |
( |
| ) |
|
|
inline |
从包中移除所有实现给定 API 的内核。
如果没有任何内核实现给定的接口,则不执行任何操作。
◆ remove() [2/2]
void cv::GKernelPackage::remove |
( |
const cv::gapi::GBackend & | backend | ) |
|
从包中移除与给定后端关联的所有内核。
如果包中没有此后端的内核,则不执行任何操作。
- 参数
-
◆ size()
GAPI_WRAP std::size_t cv::GKernelPackage::size |
( |
| ) |
const |
Python |
---|
| cv.GKernelPackage.size( | | ) -> | retval |
返回包中内核的总数(包含所有后端)。
- 返回
- 包中内核的数量
◆ cv::gapi::combine
基于lhs
和 rhs
创建一个新的包。
- 参数
-
lhs | 流程中的“左侧”包 |
rhs | 流程中的“右侧”包 |
- 返回
- 一个新的内核包。
此类的文档是从以下文件生成的