主要内容

このペ,ジの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

半精度でのソ,ベル法によるエッジ検出

この例では,MATLAB®関数から生成されたCUDA®墨西哥人関数を使用したイメージ内のエッジ検出について説明します。エッジ検出アルゴリズムは,半精度デ,タ型で実装されます。

サ,ドパ,ティの必要条件

必須

この例では,cuda mexを生成します。以下のサ,ドパ,ティ要件が適用されます。

  • 以6.0计算能力上のCUDA対応NVIDIA GPU®および互換性のあるドライバー。

オプション

スタティックライブラリ,ダイナミックライブラリ,または実行可能ファイルなどの墨西哥人以外のビルドについて,この例では以下の要件も適用されます。

Gpu環境の検証

この例を実行するのに必要なコンパイラおよびライブラリが正しく設定されていることを検証するために,関数coder.checkGpuInstallを使用します。

envCfg = code . gpuenvconfig (“主机”);envCfg。BasicCodegen = 1;envCfg。安静= 1;coder.checkGpuInstall (envCfg);

ソ,ベルエッジ検出アルゴリズム

ソ,ベルエッジ検出アルゴリズムsobelEdgeDetectionAlg.mでは,グレスケルメジで2次元の空間勾配演算が行われます。この演算は,。

类型sobelEdgeDetectionAlg
函数edgeImg = sobelEdgeDetectionAlg(img,thresh) %#codegen %sobelEdgeDetection示例MATLAB中的边缘检测函数。kern = half([1 2 1;0 0 0;-1 -2 -1]);%发现水平和垂直梯度。H = conv2(img(:,:,2),kern,'same');V = conv2(img(:,:,2),kern','same');求梯度的大小。E =根号下(h。*h + v *v); % Threshold the edges edgeImg = uint8((e > thresh) * 240); end

ソーベルエッジ検出アルゴリズムは,2つの直交フィルターカーネルmaskXmaskYを使用して,入力resXと垂直方向勾配resYを計算します。このアルゴリズムは,フィルター処理演算を実行した後,勾配の大きさを計算してしきい値を適用し,エッジと考えられるイメージの領域を見つけます。

@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @

標準のimreadコマンドを使用して▪▪メ▪▪ジを読み取ります。imreadは,etc / etc / etc / etc / etc / etc / etc / etc / etc / etc / etc / etc / etc / etc。整数の範囲は0 ~ 255です。単純に入力を一半型にキャストするだけでは,畳み込み時にオーバーフローになる可能性があります。この場合,メジを0 ~ 1リングできます。

Im = imread(“peppers.png”);图();图像(im);impacks = half(im)/255;Thresh = half(100)/255;

関数のcuda mexの生成

関数sobelEdgeDetectionAlgのcuda mexを生成するには,gpuコ,ド構成オブジェクトを作成し,codegenコマンドを実行します。半精度データ型を含むコードの生成と実行には,CUDA以6.0计算能力上が必要です。コ,ド構成オブジェクトのComputeCapabilityプロパティを“6.0”に設定します。半精度の場合,CUDAコードを生成するためのメモリ割り当て(malloc)モードは“离散”に設定しなければなりません。

cfg = code . gpuconfig (墨西哥人的);cfg.GpuConfig.ComputeCapability =“6.0”;cfg.GpuConfig.MallocMode =“离散”;codegen配置cfgarg游戏{imPacked,打}sobelEdgeDetectionAlg
代码生成成功。

墨西哥関数の実行

墨西哥人関数を生成した後に,その関数に元のMATLABエントリポイント関数と同じ機能があることを検証できます。生成されたsobelEdgeDetectionAlg_mexを実行し,結果をプロットします。

out_disp = sobelEdgeDetectionAlg_mex(impacks,thresh);显示亮度图像(out_disp);

墨西哥メモリのクリア

メモリに読み込まれた静的ネットワ,クオブジェクトをクリアします。

清晰的墨西哥人

参考

関数

オブジェクト

関連するトピック