OpenCV 5.0.0
Open Source Computer Vision
読み込み中...
検索中...
見つかりません
🤖 AIによる機械翻訳(非公式) — これは OpenCV 5.0.0 公式リファレンス(英語)を AI (Claude) で自動翻訳したものです。訳に誤りを含む場合があります。正確な情報は 公式英語版(原文) を参照してください。

異種のカーネル実装の集合とグラフ変換を格納するコンテナクラス。続きを読む...

#include <opencv2/gapi/gkernel.hpp>

Collaboration diagram for cv::GKernelPackage:

公開メンバ関数

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::gapi::combine (const GKernelPackage &lhs, const GKernelPackage &rhs)
 lhsrhs をもとに新しいパッケージを生成する。
 

詳細説明

異種のカーネル実装の集合とグラフ変換を格納するコンテナクラス。

GKernelPackage は、カーネル実装とグラフ変換を格納する特別なコンテナクラスである。このクラスのオブジェクトは生成され、コンパイルされたグラフでどのカーネルを使用しどの変換を適用するかを指定するために cv::GComputation::compile() に渡される。GKernelPackage は異なるバックエンドのカーネルを含むことができ、すなわち異種にできる。

カーネルパッケージを生成する最も簡単な方法は、cv::gapi::kernels() 関数を使うことである。このテンプレート関数は型リスト(可変引数テンプレート)の形でカーネル実装を受け取り、それをもとにカーネルパッケージを生成する。

カーネルパッケージはプログラム的にも生成できる。まず(デフォルトコンストラクタで生成された)空のパッケージから始め、GKernelPackage::include() を呼び出してカーネルを追加していく。なお、G-APIのカーネルおよび変換の実装はオブジェクトではなくであるため、このメソッドもテンプレートメソッドである点に注意。

最後に、2つのカーネルパッケージは cv::gapi::combine() 関数で新しい1つに結合できる。

メンバ関数詳解

◆ 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

新しいカーネル実装または新しい変換 KImpl をパッケージに追加する。

◆ 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)

指定したバックエンドに関連付けられたすべてのカーネルをパッケージから削除する。

パッケージにこのバックエンドのカーネルがない場合は何もしない。

引数
backend削除対象のカーネルが属するバックエンド

◆ size()

GAPI_WRAP std::size_t cv::GKernelPackage::size ( ) const
Python:
cv.GKernelPackage.size() -> retval

パッケージ内のカーネルの総数(含まれるすべてのバックエンドにわたる)を返す。

戻り値
パッケージ内のカーネル数

Friends And Related Symbol Documentation

◆ cv::gapi::combine

GKernelPackage cv::gapi::combine ( const GKernelPackage & lhs,
const GKernelPackage & rhs )
friend

lhsrhs をもとに新しいパッケージを生成する。

引数
lhs処理における「左辺」のパッケージ
rhs処理における「右辺」のパッケージ
戻り値
新しいカーネルパッケージ。

このクラス詳解は次のファイルから抽出されました: