Main Content

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

showMatchedFeatures

対応する特徴点を表示

説明

showMatchedFeatures(I1,I2,matchedPoints1,matchedPoints2) は、ラインで連結された対応する点の色分けされたプロットを使用して、イメージ I1I2 にフォールスカラーを重ねて表示します。matchedPoints1matchedPoints2 には、I1I2 の対応する点の座標が含まれます。

showMatchedFeatures(I1,I2,matchedPoints1,matchedPoints2,method) は、method パラメーターによって指定された可視化スタイルを使用して、イメージ I1I2 を表示します。

showMatchedFeatures(___,PlotOptions, {MarkerStyle1, MarkerStyle2, LineStyle}) では、3 つの値を含む cell 配列でカスタム プロット オプションを指定できます。MarkerStyle1MarkerStyle2 および LineStyle の値は、I1 のマーカー記号、I2 のマーカー記号、およびラインのスタイルと色に対応します。関数 plotLineSpec 構文は、それぞれの指定子を定義します。

showMatchedFeatures(___,Name=Value) は、前の構文にある引数の任意の組み合わせに加えて、名前と値の引数を 1 つ以上使用してオプションを指定します。たとえば、showMatchedFeatures(__,PlotOptions={"d","+","g"}) は、マーカー スタイルとして I1 にひし形を、I2 にプラス記号を、色を緑に設定します。

H = showMatchedFeatures(___) は、showMatchedFeatures によって返されるイメージ オブジェクトのハンドルを返します。

すべて折りたたむ

イメージの読み取り

I1 = im2gray(imread("parkinglot_left.png"));
I2 = im2gray(imread("parkinglot_right.png"));

SURF 特徴の検出

points1 = detectHarrisFeatures(I1);
points2 = detectHarrisFeatures(I2);

特徴の抽出

[f1,vpts1] = extractFeatures(I1,points1);
[f2,vpts2] = extractFeatures(I2,points2);

特徴のマッチング

indexPairs = matchFeatures(f1,f2) ;
matchedPoints1 = vpts1(indexPairs(1:20,1));
matchedPoints2 = vpts2(indexPairs(1:20,2));

マッチ候補の可視化

figure; ax = axes;
showMatchedFeatures(I1,I2,matchedPoints1,matchedPoints2,"montag",Parent=ax);
title(ax,"Candidate point matches");
legend(ax,"Matched points 1","Matched points 2");

Figure contains an axes object. The axes object with title Candidate point matches contains 4 objects of type image, line. These objects represent Matched points 1, Matched points 2.

イメージの読み取り

I1 = imread("cameraman.tif");
I2 = imresize(imrotate(I1,-20), 1.2);

SURF 特徴の検出

points1 = detectSURFFeatures(I1);
points2 = detectSURFFeatures(I2);

特徴の抽出

[f1,vpts1] = extractFeatures(I1,points1);
[f2,vpts2] = extractFeatures(I2,points2);

特徴のマッチング

indexPairs = matchFeatures(f1,f2) ;
matchedPoints1 = vpts1(indexPairs(:,1));
matchedPoints2 = vpts2(indexPairs(:,2));

マッチ候補の可視化

figure; ax = axes;
showMatchedFeatures(I1,I2,matchedPoints1,matchedPoints2,Parent=ax);
title(ax,"Putative point matches");
legend(ax,"Matched points 1","Matched points 2");

Figure contains an axes object. The axes object with title Putative point matches contains 4 objects of type image, line. These objects represent Matched points 1, Matched points 2.

入力引数

すべて折りたたむ

入力イメージ 1。数値配列として指定します。

入力イメージ 2。数値配列として指定します。

イメージ 1 の点の座標。M 個の [x y] 座標からなる M 行 2 列の行列、または特徴点のタイプで説明されている特徴点オブジェクトの 1 つとして指定します。

イメージ 1 の点の座標。M 個の [x y] 座標からなる M 行 2 列の行列、または特徴点のタイプで説明されている特徴点オブジェクトの 1 つとして指定します。

表示方法。次のいずれかとして指定します。

falsecolor:I1 を赤、I2 をシアンとして表示する赤とシアンの合成イメージを作成して、イメージを重ね合わせます。
blend: アルファ ブレンディングを使用して I1I2 を重ね合わせます。
montage:同じイメージで I1I2 を隣り合わせて配置します。

名前と値の引数

オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで、Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。

R2021a より前では、コンマを使用して名前と値の各ペアを区切り、Name を引用符で囲みます。

例: showMatchedFeatures(__,PlotOptions={"d","+","g"}) は、マーカー スタイルとして I1 にひし形を、I2 にプラス記号を、色を緑に設定します。

ラインのスタイルと色のオプション。文字ベクトルの cell 配列または string 配列として指定します。3 つの値 {MarkerStyle1, MarkerStyle2, LineStyle} は、I1 のマーカー記号、I2 のマーカー記号、ラインのスタイルと色に対応します。関数 plotLineSpec 構文は、それぞれの指定子を定義します。

可視化の表示のための出力座標軸。axes グラフィックス オブジェクトとして指定します。

出力引数

すべて折りたたむ

イメージ オブジェクトのハンドル。showMatchedFeatures によって返されるイメージ オブジェクトのハンドルとして返されます。

バージョン履歴

R2012b で導入