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

詳細説明

クラス

class  cv::cuda::BufferPool
 CUDAストリームで使用するBufferPool続きを読む...
 
class  cv::cuda::Event
 
struct  cv::cuda::EventAccessor
 cuda::EventからcudaEvent_tを取得できるようにするクラス。 続き...
 
struct  cv::cuda::GpuData
 
class  cv::cuda::GpuMat
 参照カウント付きのGPUメモリの基底ストレージクラス。 続き...
 
class  cv::cuda::GpuMatND
 
class  cv::cuda::HostMem
 CUDAの特殊なメモリ型の確保関数をラップし、参照カウントを備えたクラス。 続き...
 
class  cv::cuda::Stream
 このクラスは非同期呼び出しのキューをカプセル化する。 続き...
 
struct  cv::cuda::StreamAccessor
 cuda::StreamからcudaStream_tを取得できるようにするクラス。 続き...
 

関数

void cv::cuda::createContinuous (int rows, int cols, int type, OutputArray arr)
 連続した行列を生成する。
 
GpuMat cv::cuda::createGpuMatFromCudaMemory (int rows, int cols, int type, size_t cudaMemoryAddress, size_t step=Mat::AUTO_STEP)
 既存のGPUメモリから GpuMat を生成するためのバインディング用オーバーロード。
 
GpuMat cv::cuda::createGpuMatFromCudaMemory (Size size, int type, size_t cudaMemoryAddress, size_t step=Mat::AUTO_STEP)
 
void cv::cuda::ensureSizeIsEnough (int rows, int cols, int type, OutputArray arr)
 行列のサイズが十分に大きく、かつ適切な型を持つことを保証する。
 
void cv::cuda::registerPageLocked (Mat &m)
 行列のメモリをページロックし、デバイス向けにマッピングする。
 
void cv::cuda::setBufferPoolConfig (int deviceId, size_t stackSize, int stackCount)
 
void cv::cuda::setBufferPoolUsage (bool on)
 BufferPool の管理(Stream の生成前に呼び出す必要がある)
 
void cv::cuda::unregisterPageLocked (Mat &m)
 行列のメモリのマッピングを解除し、再びページング可能にする。
 
Stream cv::cuda::wrapStream (size_t cudaStreamMemoryAddress)
 既存のCUDA Runtime APIストリームポインタ (cudaStream_t) に格納されたアドレスから Stream オブジェクトを生成するためのバインディング用オーバーロード。
 

関数詳解

◆ createContinuous()

void cv::cuda::createContinuous ( int rows,
int cols,
int type,
OutputArray arr )
Python:
cv.cuda.createContinuous(rows, cols, type[, arr]) -> arr

#include <opencv2/core/cuda.hpp>

連続した行列を作成する。

引数
rows行数。
cols列数。
type行列の型。
arr出力行列。この引数は、適切な型と領域 ( \(\texttt{rows} \times \texttt{cols}\) ) を持つ場合にのみ変更される。

行列は、その要素が連続して、すなわち各行の末尾に隙間なく格納されている場合に連続している(continuous)と呼ばれる。

◆ createGpuMatFromCudaMemory() [1/2]

GpuMat cv::cuda::createGpuMatFromCudaMemory ( int rows,
int cols,
int type,
size_t cudaMemoryAddress,
size_t step = Mat::AUTO_STEP )
inline
Python:
cv.cuda.createGpuMatFromCudaMemory(rows, cols, type, cudaMemoryAddress[, step]) -> retval
cv.cuda.createGpuMatFromCudaMemory(size, type, cudaMemoryAddress[, step]) -> retval

#include <opencv2/core/cuda.hpp>

既存のGPUメモリからGpuMatを作成するためのバインディング用オーバーロード。

引数
rows行数。
cols列数。
type行列の型。
cudaMemoryAddressデバイス上に確保されたGPUメモリのアドレス。これは行列データの確保は行わない。代わりに、指定されたcudaMemoryAddressを指す行列ヘッダを初期化するだけであり、データはコピーされない。この操作は非常に効率的で、OpenCVの関数を使って外部データを処理するために利用できる。外部データは自動的には解放されないため、自分で管理する必要がある。
step各行列の行が占めるバイト数。この値には、各行の末尾にあるパディングバイト(もしあれば)を含めるべきである。この引数が省略された場合(Mat::AUTO_STEP に設定された場合)、パディングはないものとみなされ、実際のステップは cols*elemSize() として計算される。GpuMat::elemSize を参照。
覚え書き
バインディング生成専用のオーバーロードであり、エクスポートされておらず、C++から内部的に使用することを意図したものではない。

◆ createGpuMatFromCudaMemory() [2/2]

GpuMat cv::cuda::createGpuMatFromCudaMemory ( Size size,
int type,
size_t cudaMemoryAddress,
size_t step = Mat::AUTO_STEP )
inline
Python:
cv.cuda.createGpuMatFromCudaMemory(rows, cols, type, cudaMemoryAddress[, step]) -> retval
cv.cuda.createGpuMatFromCudaMemory(size, type, cudaMemoryAddress[, step]) -> retval

#include <opencv2/core/cuda.hpp>

これは利便性のために提供されているオーバーロードされたメンバ関数である。上記の関数とは、受け取る引数のみが異なる。

引数
size2D配列のサイズ: Size(cols, rows)Size() コンストラクタでは、行数と列数は逆の順序で指定する。
type行列の型。
cudaMemoryAddressデバイス上に確保されたGPUメモリのアドレス。これは行列データの確保は行わない。代わりに、指定されたcudaMemoryAddressを指す行列ヘッダを初期化するだけであり、データはコピーされない。この操作は非常に効率的で、OpenCVの関数を使って外部データを処理するために利用できる。外部データは自動的には解放されないため、自分で管理する必要がある。
step各行列の行が占めるバイト数。この値には、各行の末尾にあるパディングバイト(もしあれば)を含めるべきである。この引数が省略された場合(Mat::AUTO_STEP に設定された場合)、パディングはないものとみなされ、実際のステップは cols*elemSize() として計算される。GpuMat::elemSize を参照。
覚え書き
バインディング生成専用のオーバーロードであり、エクスポートされておらず、C++から内部的に使用することを意図したものではない。

◆ ensureSizeIsEnough()

void cv::cuda::ensureSizeIsEnough ( int rows,
int cols,
int type,
OutputArray arr )
Python:
cv.cuda.ensureSizeIsEnough(rows, cols, type[, arr]) -> arr

#include <opencv2/core/cuda.hpp>

行列のサイズが十分に大きく、かつ行列が適切な型を持つことを保証する。

引数
rows必要な最小の行数。
cols必要な最小の列数。
type必要な行列の型。
arr出力行列。

行列がすでに適切な属性を持っている場合、この関数はメモリを再確保しない。

◆ registerPageLocked()

void cv::cuda::registerPageLocked ( Mat & m)
Python:
cv.cuda.registerPageLocked(m) -> None

#include <opencv2/core/cuda.hpp>

行列のメモリをページロックし、デバイスにマッピングする。

引数
m入力行列。

◆ setBufferPoolConfig()

void cv::cuda::setBufferPoolConfig ( int deviceId,
size_t stackSize,
int stackCount )
Python:
cv.cuda.setBufferPoolConfig(deviceId, stackSize, stackCount) -> None

◆ setBufferPoolUsage()

void cv::cuda::setBufferPoolUsage ( bool on)
Python:
cv.cuda.setBufferPoolUsage(on) -> None

#include <opencv2/core/cuda.hpp>

BufferPoolの管理(Streamの作成前に呼び出す必要がある)

◆ unregisterPageLocked()

void cv::cuda::unregisterPageLocked ( Mat & m)
Python:
cv.cuda.unregisterPageLocked(m) -> None

#include <opencv2/core/cuda.hpp>

行列のメモリのマッピングを解除し、再びページング可能にする。

引数
m入力行列。

◆ wrapStream()

Stream cv::cuda::wrapStream ( size_t cudaStreamMemoryAddress)
Python:
cv.cuda.wrapStream(cudaStreamMemoryAddress) -> retval

#include <opencv2/core/cuda.hpp>

既存のCUDA Runtime APIストリームポインタ(cudaStream_t)に格納されたアドレスからStreamオブジェクトを作成するためのバインディング用オーバーロード。

引数
cudaStreamMemoryAddressCUDA Runtime APIのストリームポインタ(cudaStream_t)に格納されたメモリアドレス。作成されたStreamオブジェクトは確保や解放を一切行わず、既存の生のCUDA Runtime APIストリームポインタを単にラップするだけである。
覚え書き
バインディング生成専用のオーバーロードであり、エクスポートされておらず、C++から内部的に使用することを意図したものではない。