[32/64bit] 以下のコードは,2 次元の行列に対する使用例です.
core_Mat_checkVector p1,p2,p3,p4,p5
p1 = sptr : IntPtr self p2 = int : int elemChannels p3 = int : int depth p4 = int : int requireContinuous p5 = var : out int returnValue
(プラグイン / モジュール : OpenCvSharpExtern.dll)
cv::Mat mat(20, 1, CV_32FC2); int n = mat.checkVector(2); CV_Assert(n == 20); // mat は 20 個の要素を持ちます mat.create(20, 2, CV_32FC1); n = mat.checkVector(1); CV_Assert(n == -1); // mat は,列ベクトルでも行ベクトルでもありません n = mat.checkVector(2); CV_Assert(n == 20); // 2 列を 1 つの要素と見なすfragment次のコードは,3 次元の行列に対する使い方を示しています: int dims[] = {1, 3, 5}; // 1 つの平面,すべての平面は 3 行 5 列である mat.create(3, dims, CV_32FC1); // 3-d の行列では,1つのチャンネルのみを持たなければいけません n = mat.checkVector(5); // 5つの列は1つの要素とみなされます CV_Assert(n == 3); int dims2[] = {3, 1, 5}; // 3つの平面,各平面は1つの行と5つの列を持ちます mat.create(3, dims2, CV_32FC1); n = mat.checkVector(5); // 5 つの列を 1 つの要素と見なす CV_Assert(n == 3);fragment 元関数名(C#): core_Mat_checkVector 元DLLエクスポート名: core_Mat_checkVector 参照元CSファイル: Internal\PInvoke\NativeMethods\core\NativeMethods_core_Mat.cs ▼ C言語側関数定義
CVAPI(ExceptionStatus) core_Mat_checkVector(cv::Mat *self, int elemChannels, int depth, int requireContinuous, int *returnValue) { BEGIN_WRAP *returnValue = self->checkVector(elemChannels, depth, requireContinuous != 0); END_WRAP }
プラグイン / モジュール | OpenCvSharpExtern.dll |
バージョン | 1.00 |
作成日 | 2021/11/30 |
著作者 | inovia |
URL | https://hsp.moe/ |
備考 | #include "OpenCvSharpExtern32.as"
#include "OpenCvSharpExtern64.as" 使用するHSPランタイムのビット数に合わせたインクルードファイルを使用すること |
タイプ | OpenCVSharpラッパーDLL |
グループ | NativeMethods_core_Mat |
対応環境 |
|
hs ファイル | hsphelp\OpenCvSharpExtern.hs |