🤖
AIによる機械翻訳(非公式) — これは OpenCV 4.13.0 公式リファレンス(英語)を AI (Claude) で自動翻訳したものです。訳に誤りを含む場合があります。正確な情報は
公式英語版(原文) を参照してください。
#include <opencv2/core/cuda.hpp>
|
| | GpuMatND () |
| | デフォルトコンストラクタ
|
| |
| | GpuMatND (const GpuMatND &)=default |
| |
| | GpuMatND (GpuMatND &&) noexcept=default |
| |
| | GpuMatND (SizeArray size, int type) |
| |
| | GpuMatND (SizeArray size, int type, void *data, StepArray step=StepArray()) |
| |
| | ~GpuMatND () |
| | デストラクタ
|
| |
| GpuMatND | clone () const |
| | 配列と、その基盤となるデータの完全なコピーを作成する。このメソッドは配列の完全なコピーを作成する。Mat::clone() の挙動を模倣する。すなわち、元のステップは考慮されない。したがって、配列のコピーは total()*elemSize() バイトを占める連続配列となる。
|
| |
| GpuMatND | clone (Stream &stream) const |
| |
| void | create (SizeArray size, int type) |
| | GPUメモリを確保する。すでにいくらかのGPUメモリが確保されているとする。その場合、このメソッドは特定の条件下でそのGPUメモリを再利用することを選ぶことがある: それが同じサイズかつ同じ型であり、外部から確保されたものではなく、GPUメモリが連続している(すなわち isContinuous() が true)、かつ別の GpuMatND の部分行列ではない(すなわち isSubmatrix() が false)場合である。言い換えれば、このメソッドは、このメソッドによって確保されるGPUメモリが常に連続しており、別の GpuMatND の部分領域ではないことを保証する。
|
| |
| GpuMat | createGpuMatHeader () const |
| |
| GpuMat | createGpuMatHeader (IndexArray idx, Range rowRange, Range colRange) const |
| | n次元行列の2次元平面部分に対する GpuMat ヘッダを作成する。
|
| |
| void | download (OutputArray dst) const |
| |
| void | download (OutputArray dst, Stream &stream) const |
| |
| size_t | elemSize () const |
| | 要素のサイズをバイト単位で返す
|
| |
| size_t | elemSize1 () const |
| | 要素のチャンネルのサイズをバイト単位で返す
|
| |
| bool | empty () const |
| | データがnullの場合に true を返す
|
| |
| bool | external () const |
| | 空でなく、かつ外部(ユーザが確保した)GPUメモリを指している場合に true を返す
|
| |
| uchar * | getDevicePtr () const |
| | GPUメモリの先頭バイトへのポインタを返す
|
| |
| bool | isContinuous () const |
| |
| bool | isSubmatrix () const |
| | 行列が別の行列の部分行列である場合に true を返す
|
| |
| | operator GpuMat () const |
| | この GpuMatND が実質的に2次元である場合に、n次元行列の2次元平面部分を抽出する。この GpuMatND の一部を複製する点で createGpuMatHeader() とは異なる。
|
| |
| GpuMatND | operator() (const std::vector< Range > &ranges) const |
| | 部分行列を抽出する。この演算子は *this の指定された部分配列に対する新しいヘッダを作成する。この演算子はO(1)の操作であり、すなわち行列データはコピーされない。
|
| |
| GpuMat | operator() (IndexArray idx, Range rowRange, Range colRange) const |
| | n次元行列の2次元平面部分を抽出する。この GpuMatND の一部を、返される GpuMat に複製する点で createGpuMatHeader(IndexArray, Range, Range) とは異なる。
|
| |
| GpuMatND & | operator= (const GpuMatND &)=default |
| |
| GpuMatND & | operator= (GpuMatND &&) noexcept=default |
| |
| void | release () |
| |
| void | swap (GpuMatND &m) noexcept |
| |
| size_t | total () const |
| | 配列要素の総数を返す
|
| |
| size_t | totalMemSize () const |
| | 基盤となるメモリのサイズをバイト単位で返す
|
| |
| int | type () const |
| | 要素の型を返す
|
| |
| void | upload (InputArray src) |
| |
| void | upload (InputArray src, Stream &stream) |
| |
◆ IndexArray
◆ SizeArray
◆ StepArray
◆ ~GpuMatND()
| cv::cuda::GpuMatND::~GpuMatND |
( |
| ) |
|
◆ GpuMatND() [1/5]
| cv::cuda::GpuMatND::GpuMatND |
( |
| ) |
|
◆ GpuMatND() [2/5]
| cv::cuda::GpuMatND::GpuMatND |
( |
SizeArray | size, |
|
|
int | type ) |
これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。
- 引数
-
| size | n次元配列の形状を指定する整数の配列。 |
| type | 配列の型。1〜4チャンネルの行列を作成するには CV_8UC1, ..., CV_16FC4 を使い、マルチチャンネル(最大 CV_CN_MAX チャンネル)の行列を作成するには CV_8UC(n), ..., CV_64FC(n) を使う。 |
◆ GpuMatND() [3/5]
これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。
- 引数
-
| size | n次元配列の形状を指定する整数の配列。 |
| type | 配列の型。1〜4チャンネルの行列を作成するには CV_8UC1, ..., CV_16FC4 を使い、マルチチャンネル(最大 CV_CN_MAX チャンネル)の行列を作成するには CV_8UC(n), ..., CV_64FC(n) を使う。 |
| data | ユーザーデータへのポインタ。dataおよびstep引数を取る行列コンストラクタは行列データを確保しない。代わりに、指定されたデータを指す行列ヘッダを初期化するだけであり、データはコピーされない。この操作は非常に効率的で、OpenCVの関数を使って外部データを処理するために利用できる。外部データは自動的には解放されないため、自分で管理する必要がある。 |
| step | 多次元配列の場合の _size.size() 個または _size.size()-1 個のステップの配列(指定する場合、最後のステップは要素サイズと等しくなければならない。そうでなければそのように追加される)。指定しない場合、行列は連続であると見なされる。 |
◆ GpuMatND() [4/5]
| cv::cuda::GpuMatND::GpuMatND |
( |
const GpuMatND & | | ) |
|
|
default |
◆ GpuMatND() [5/5]
| cv::cuda::GpuMatND::GpuMatND |
( |
GpuMatND && | | ) |
|
|
defaultnoexcept |
◆ clone() [1/2]
| GpuMatND cv::cuda::GpuMatND::clone |
( |
| ) |
const |
配列とその基となるデータの完全なコピーを生成する。このメソッドは配列の完全なコピーを生成する。Mat::clone() の動作を模倣しており、すなわち元の step は考慮されない。したがって、配列のコピーは total()*elemSize() バイトを占有する連続した配列となる。
◆ clone() [2/2]
これはオーバーロードされたメンバ関数であり、利便性のために提供されている。受け取る引数が上記の関数と異なるだけである。このオーバーロードはノンブロッキングであるため、コピー操作が完了していなくても返ることがある。
◆ create()
| void cv::cuda::GpuMatND::create |
( |
SizeArray | size, |
|
|
int | type ) |
GPUメモリを確保する。すでにGPUメモリが確保されている場合を考える。その場合、このメソッドは特定の条件下でそのGPUメモリを再利用することを選択する可能性がある。条件とは、同じサイズおよび型であること、外部で確保されたものでないこと、GPUメモリが連続していること(すなわち isContinuous() が true であること)、および他の GpuMatND の部分行列でないこと(すなわち isSubmatrix() が false であること)である。言い換えれば、このメソッドは、このメソッドによって確保されるGPUメモリが常に連続しており、他の GpuMatND の部分領域でないことを保証する。
◆ createGpuMatHeader() [1/2]
| GpuMat cv::cuda::GpuMatND::createGpuMatHeader |
( |
| ) |
const |
これはオーバーロードされたメンバ関数であり、利便性のために提供されている。受け取る引数が上記の関数と異なるだけである。この GpuMatND が実質的に2次元である場合に、GpuMat ヘッダを生成する。
- 覚え書き
- 返される GpuMat は、ユーザが確保したデータ用のコンストラクタを用いて構築される。すなわち参照カウントを行わない。
- この関数は、この GpuMatND の参照カウンタをインクリメントしない。
◆ createGpuMatHeader() [2/2]
n次元行列の2次元平面部分に対する GpuMat ヘッダを生成する。
- 覚え書き
- 返される GpuMat は、ユーザが確保したデータ用のコンストラクタを用いて構築される。すなわち参照カウントを行わない。
- この関数は、この GpuMatND の参照カウンタをインクリメントしない。
◆ download() [1/2]
| void cv::cuda::GpuMatND::download |
( |
OutputArray | dst | ) |
const |
◆ download() [2/2]
◆ elemSize()
| size_t cv::cuda::GpuMatND::elemSize |
( |
| ) |
const |
◆ elemSize1()
| size_t cv::cuda::GpuMatND::elemSize1 |
( |
| ) |
const |
◆ empty()
| bool cv::cuda::GpuMatND::empty |
( |
| ) |
const |
◆ external()
| bool cv::cuda::GpuMatND::external |
( |
| ) |
const |
空でなく、かつ外部(ユーザが確保した)GPUメモリを指している場合に true を返す
◆ getDevicePtr()
| uchar * cv::cuda::GpuMatND::getDevicePtr |
( |
| ) |
const |
◆ isContinuous()
| bool cv::cuda::GpuMatND::isContinuous |
( |
| ) |
const |
GpuMatND のデータが連続している(すなわち連続する行の間に隙間がない)場合にのみ true を返す
◆ isSubmatrix()
| bool cv::cuda::GpuMatND::isSubmatrix |
( |
| ) |
const |
行列が他の行列の部分行列である場合に true を返す
◆ operator GpuMat()
| cv::cuda::GpuMatND::operator GpuMat |
( |
| ) |
const |
◆ operator()() [1/2]
| GpuMatND cv::cuda::GpuMatND::operator() |
( |
const std::vector< Range > & | ranges | ) |
const |
部分行列を抽出する。この演算子は *this の指定した部分配列に対する新しいヘッダを生成する。この演算子は O(1) の操作であり、すなわち行列データはコピーされない。
- 引数
-
◆ operator()() [2/2]
n次元行列の2次元平面部分を抽出する。この GpuMatND の一部を、返される GpuMat に複製する点で createGpuMatHeader(IndexArray, Range, Range) とは異なる。
- 覚え書き
- この演算子は、この GpuMatND の参照カウンタをインクリメントしない。
◆ operator=() [1/2]
◆ operator=() [2/2]
◆ release()
| void cv::cuda::GpuMatND::release |
( |
| ) |
|
◆ swap()
| void cv::cuda::GpuMatND::swap |
( |
GpuMatND & | m | ) |
|
|
noexcept |
◆ total()
| size_t cv::cuda::GpuMatND::total |
( |
| ) |
const |
◆ totalMemSize()
| size_t cv::cuda::GpuMatND::totalMemSize |
( |
| ) |
const |
◆ type()
| int cv::cuda::GpuMatND::type |
( |
| ) |
const |
◆ upload() [1/2]
◆ upload() [2/2]
◆ dims
| int cv::cuda::GpuMatND::dims |
◆ flags
| int cv::cuda::GpuMatND::flags |
いくつかのビットフィールドを含む:
- マジックシグネチャ
- 連続性フラグ
- ビット深度
- チャンネル数
◆ size
◆ step
step 値。その意味は Mat の step の意味と同一である。
このクラス詳解は次のファイルから抽出されました: