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

詳細説明

関数

GMat cv::gapi::Canny (const GMat &image, double threshold1, double threshold2, int apertureSize=3, bool L2gradient=false)
 Cannyアルゴリズムを用いて画像のエッジを検出する。
 
GArray< Point2fcv::gapi::goodFeaturesToTrack (const GMat &image, int maxCorners, double qualityLevel, double minDistance, const Mat &mask=Mat(), int blockSize=3, bool useHarrisDetector=false, double k=0.04)
 画像上の強いコーナーを決定する。
 

関数詳解

◆ Canny()

GMat cv::gapi::Canny ( const GMat & image,
double threshold1,
double threshold2,
int apertureSize = 3,
bool L2gradient = false )
Python:
cv.gapi.Canny(image, threshold1, threshold2[, apertureSize[, L2gradient]]) -> retval

#include <opencv2/gapi/imgproc.hpp>

Canny アルゴリズムを用いて画像中のエッジを検出する。

この関数は入力画像中のエッジを検出し、Canny アルゴリズムを用いて出力マップ edges にマークする。エッジの連結には threshold1 と threshold2 のうち小さい方の値が使われる。大きい方の値は強いエッジの初期セグメントを見つけるために使われる。http://en.wikipedia.org/wiki/Canny_edge_detector を参照。

覚え書き
関数のテキストID は "org.opencv.imgproc.feature.canny" である
引数
image8ビット入力画像。
threshold1ヒステリシス処理のための第1のしきい値。
threshold2ヒステリシス処理のための第2のしきい値。
apertureSizeSobel 演算子のアパーチャサイズ。
L2gradient画像の勾配の大きさを計算する際に、より正確な \(L_2\) ノルム \(=\sqrt{(dI/dx)^2 + (dI/dy)^2}\) を使用すべきか( L2gradient=true )、あるいはデフォルトの \(L_1\) ノルム \(=|dI/dx|+|dI/dy|\) で十分か( L2gradient=false )を示すフラグ。

◆ goodFeaturesToTrack()

GArray< Point2f > cv::gapi::goodFeaturesToTrack ( const GMat & image,
int maxCorners,
double qualityLevel,
double minDistance,
const Mat & mask = Mat(),
int blockSize = 3,
bool useHarrisDetector = false,
double k = 0.04 )
Python:
cv.gapi.goodFeaturesToTrack(image, maxCorners, qualityLevel, minDistance[, mask[, blockSize[, useHarrisDetector[, k]]]]) -> retval

#include <opencv2/gapi/imgproc.hpp>

画像上の強いコーナーを決定する。

この関数は、[254] に記載されているように、画像または指定された画像領域の中で最も顕著なコーナーを見つける

  • 関数は cornerMinEigenVal または cornerHarris を用いて、ソース画像の各ピクセルでコーナー品質尺度を計算する。
  • 関数は非最大抑制を行う(3 x 3 近傍内の局所最大値が保持される)。
  • 最小固有値が \(\texttt{qualityLevel} \cdot \max_{x,y} qualityMeasureMap(x,y)\) 未満のコーナーは棄却される。
  • 残りのコーナーは品質尺度の降順でソートされる。
  • 関数は、maxDistance より近い距離により強いコーナーが存在する各コーナーを破棄する。

この関数は、オブジェクトの点ベースのトラッカーを初期化するために使える。

覚え書き
  • 引数 qualityLevel の異なる値 A と B(A > B)で関数を呼び出した場合、qualityLevel=A で返されるコーナーのベクトルは、qualityLevel=B での出力ベクトルの先頭部分(プレフィックス)となる。
  • 関数のテキストID は "org.opencv.imgproc.feature.goodFeaturesToTrack"
引数
image8ビットまたは浮動小数点32ビットのシングルチャンネル入力画像。
maxCorners返すコーナーの最大数。見つかったコーナーがこの数より多い場合、最も強いものが返される。maxCorners <= 0 は最大数に上限を設けないことを意味し、検出されたすべてのコーナーが返される。
qualityLevel画像のコーナーの最低許容品質を特徴づける引数。この引数値は最良のコーナー品質尺度(最小固有値(cornerMinEigenVal を参照)または Harris 関数の応答(cornerHarris を参照))に乗算される。品質尺度がこの積より小さいコーナーは棄却される。例えば、最良のコーナーの品質尺度が1500で qualityLevel=0.01 の場合、品質尺度が15未満のすべてのコーナーが棄却される。
minDistance返されるコーナー間の最小ユークリッド距離。
mask省略可能な関心領域 (ROI)。画像が空でない場合(型が CV_8UC1 で image と同じサイズである必要がある)、コーナーを検出する領域を指定する。
blockSize各ピクセル近傍にわたって微分共変行列を計算するための平均化ブロックのサイズ。cornerEigenValsAndVecs を参照。
useHarrisDetectorHarris 検出器(cornerHarris を参照)を使うか、cornerMinEigenVal を使うかを示す引数。
kHarris 検出器の自由パラメータ。
戻り値
検出されたコーナーのベクトル。