[32bit] 画像の周りに境界線を形成します。
core_copyMakeBorder p1,p2,p3,p4,p5,p6,p7,p8
p1 = sptr : IntPtr src p2 = sptr : IntPtr dst p3 = int : int top p4 = int : int bottom p5 = int : int left p6 = int : int right p7 = int : int borderType p8 = ARGS_SCALAR : Scalar value
(プラグイン / モジュール : OpenCvSharpExtern.dll)
この関数は,入力画像を出力画像の中央にコピーします.コピーされたソース画像の左、右、上、下の領域は、外挿されたピクセルで埋められます。これは,この関数を基にしたフィルタリング関数が行っていること(オンザフライでピクセルを外挿すること)とは異なりますが,あなた自身の関数を含む他のより複雑な関数が,画像の境界処理を簡単にするために行っていることもあります. この関数は,src が既に dst の中央にある場合のモードをサポートしています.この場合,この関数は src 自身をコピーせず,単に境界を作成します.例えば,次のようにします: // 境界はすべての方向で同じであるとするint border=2;// 画像と境界の両方に合うように,より大きな画像を作成するMat gray_buf(rgb.rows + border*2, rgb.cols + border*2, rgb.depth());// dataMat gray(gray_canvas, Rect(border, border, rgb.cols, rgb.rows));// 画像を RGB からグレースケールに変換するecvtColor(rgb, gray, COLOR_RGB2GRAY);// その場で境界線を形成するcopyMakeBorder(gray, gray_buf, border, border, border, BORDER_REPLICATE);// 独自のフィルタリングを行う ......fragment注:入力画像が大きな画像の一部(ROI)である場合、この関数は ROI の外側のピクセルを使って境界線を形成しようとします。この機能を無効にして、あたかもsrcがROIでないかのように常に外挿するには、 borderType | BORDER_ISOLATEDを使用してください。他にもborderInterpolateExamples: samples/cpp/tutorial_code/ImgTrans/copyMakeBorder_demo.cppを参照してください。 元関数名(C#): core_copyMakeBorder 元DLLエクスポート名: core_copyMakeBorder 参照元CSファイル: Internal\PInvoke\NativeMethods\core\NativeMethods_core.cs ▼ C言語側関数定義
CVAPI(ExceptionStatus) core_copyMakeBorder( cv::_InputArray* src, cv::_OutputArray* dst, int top, int bottom, int left, int right, int borderType, MyCvScalar value) { BEGIN_WRAP cv::copyMakeBorder(*src, *dst, top, bottom, left, right, borderType, cpp(value)); 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 |
対応環境 |
|
hs ファイル | hsphelp\OpenCvSharpExtern.hs |