SURF特徴量を使っ​たマッチングで処理領​域を限定することはで​きますか?

조회 수: 16 (최근 30일)
daisuke shuugisono
daisuke shuugisono 2018년 2월 1일
댓글: daisuke shuugisono 2018년 2월 4일
画像処理で処理をする領域を限定したいのですが、処理をする領域が斜めになっている場合、ROIを使ってのx,y,w,hの指定では対応できませんでした。 特徴量を抽出したり、画を位置合わせするときなどで処理をする領域を限定する方法はありますか?

채택된 답변

Kei Otsuka
Kei Otsuka 2018년 2월 2일
ROI外の領域の輝度値をクリップしてしまう方法はどうでしょうか。 例えば、
img = imread('coins.png');
figure, imshow(img)
このようなコインの図があったとして、面積が大きいコインに着目したい場合、
%2値化&穴埋め
bw = imfill(imbinarize(img), 'holes');
%面積2700pix以上の領域抽出
bw = bwpropfilt(bw, 'Area', [2700, 3000]);
%元画像をコピー
img2 = img;
%ROI外の輝度値を255にクリップ
img2(~bw) = 255;
figure, imshow(img2)
とすると以下のような画像が得られ、
この画像に対して抽出した特徴点を元画像にオーバーレイ表示すると以下のようになります。
%特徴点検出
Points = detectSURFFeatures(img2);
%上位20ポイントをプロット
figure, imshow(img); hold on;
plot(Points.selectStrongest(20));
クリップした領域も含めての特徴点になりますので、ROIに限定した特徴点とは意味合いが異なりますが アプリケーションによってはこのようなアプローチも使えると思います。
  댓글 수: 1
daisuke shuugisono
daisuke shuugisono 2018년 2월 4일
回答ありがとうございます。

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Takuji Fukumoto
Takuji Fukumoto 2018년 2월 2일
편집: Takuji Fukumoto 2018년 2월 2일
もし任意の形状のROIを作成したいということであれば、impolyで長方形以外のROIを指定することができます。
もし、違う角度でとられたリファレンスの画像があり、そこと合う領域をROIとしたい場合には、 レジストレーション(位置合わせ)を使うことになります。
レジストレーションの手法は 明るさを用いた方法 https://www.mathworks.com/help/releases/R2017b/images/examples/registering-multimodal-mri-images.html
特徴点を使った方法
様々ありますので、ためしながら良い方法を選択いただくと良いかと思います。
  댓글 수: 1
daisuke shuugisono
daisuke shuugisono 2018년 2월 2일
回答ありがとうございます。 >>もし、違う角度でとられたリファレンスの画像があり、そこと合う領域をROIとしたい場合には、 レジストレーション(位置合わせ)を使うことになります。 とありますが、レジストレーションをする計算をする範囲をROIで限定し、レジストレーションさせることは可能なのでしょうか。 例えば、背景の違うが同じオブジェクトが写っている画像でレジストレーションをする際に、オブジェクトのみをROIで指定しオブジェクトで位置合わせをする。といったようなイメージです。

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 イメージ에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!