Clear Filters
Clear Filters

対応点のマッチングする関数を教えてください.

3 views (last 30 days)
koji Akano
koji Akano on 16 Jan 2017
Commented: Tohru Kikawada on 20 Jan 2017
二つの異なった画像のコーナー検出を行いました. この後,二つの異なった画像の対応点のマッチングをしたいのですが,matlab内の関数でどのようなものが相応しいでしょうか. basic matching(http://www.vlfeat.org/overview/sift.html)のような処理を行いたいのですが,処理に相応しい関数を存じ上げませんので,どなたかご存知の方はいらっしゃいませんか. vl_siftという関数は未定義と表記され実行できませんので別の関数を実行する必要があります.
私は救いようの無い馬鹿ですが,なにとぞよろしくお願いします. 誰か救ってください.
知識がなさ過ぎてすみません.
ーーーーーーーーーーーーーーーコーナー検出ーーーーーーーーーーーーーーーーーー
I = imread('DSC07471.JPG');
I= rgb2gray(I);
corners = detectFASTFeatures(I,'MinContrast',0.1);
J = insertMarker(I,corners,'circle');
figure;
imshow(J);
I2 = imread('DSC07472.JPG');
I2= rgb2gray(I2);
corners = detectFASTFeatures(I2,'MinContrast',0.1);
J = insertMarker(I2,corners,'circle');
figure;
imshow(J);

Accepted Answer

Tohru Kikawada
Tohru Kikawada on 16 Jan 2017
対応点のマッチングをする関数はComputer Vision System Toolboxの matchFeatures になります。
下記の例が分かりやすいかと思いますのでご参照ください。
  4 Comments
koji Akano
koji Akano on 18 Jan 2017
木川田さま
( 'DSC07475.JPG')から( 'DSC07410.JPG')のマッチングを行うのですが、処理を繰り返すしたいのですが、メソッドが分からないです。が07475,07476,07477,07478,07479の画像ファイルを自動的に処理されたのですが、どうせればよいでしょうか。
I1 = rgb2gray(imread( 'DSC07471.JPG')); I2 = rgb2gray(imread( 'DSC07475.JPG'));%k
例えば、k = 1:9の場合I1 = rgb2gray(imread( 'DSC07471.JPG')); I2 = rgb2gray(imread( 'DSC0747k.JPG'));%kを置く自動置き換え
points1 = detectHarrisFeatures(I1); points2 = detectHarrisFeatures(I2);
[フィーチャ1、有効ポイント1] =抽出フィーチャ(I1、ポイント1); [features2、valid_points2] =抽出フィーチャ(I2、points2);
indexPairs = matchFeatures(フィーチャー1、フィーチャー2);
matchedPoints1 = valid_points1(indexPairs(:, 1)、:); matchedPoints2 = valid_points2(indexPairs(:, 2)、:);
図。showMatchedFeatures(I1、I2、matchedPoints1、matchedPoints2); 終わり
お願いします
Tohru Kikawada
Tohru Kikawada on 20 Jan 2017
下記などをご参考にされるとよろしいかもしれません。

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!