最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

航空写真から正射写真へレジスタリング

この例では、航空写真から正射写真へのレジストレーションを行う方法を示します。2 つの同じ風景のイメージは、同じ座標系にある場合にのみ直接比較できます。イメージのレジストレーションは、1 つのイメージを別のイメージの座標系に変換するプロセスです。

手順 1: イメージの読み取り

イメージ westconcordorthophoto.png は地上にレジストレーションされた正射写真です。イメージ westconcordaerial.png は、飛行機から撮影され正射写真と比較して変形されているためレジストレーションされません。

unregistered = imread('westconcordaerial.png');
imshow(unregistered)
text(size(unregistered,2),size(unregistered,1)+15, ...
    'Image courtesy of mPower3/Emerge', ...
    'FontSize',7,'HorizontalAlignment','right');

ortho = imread('westconcordorthophoto.png');
imshow(ortho)
text(size(ortho,2),size(ortho,1)+15, ...
    'Image courtesy of Massachusetts Executive Office of Environmental Affairs', ...
    'FontSize',7,'HorizontalAlignment','right');

手順 2: コントロール ポイントの読み込みと追加

4 組のコントロール ポイントが選択されています。MAT ファイルからこれらのポイントを読み込みます。これらのポイントで処理を続行する場合は、「手順 3: 幾何学的変換の推測」に進みます。

load westconcordpoints

オプションで、コントロール ポイント選択ツール (cpselect) を使用して事前に選択されたポイントを編集または追加します。関数 cpselect は、対応するコントロール ポイントのペアを選択するのに役立ちます。コントロール ポイントは、道路の立体交差や地勢など 2 つのイメージで識別できるランドマークです。レジストレーションされていないイメージは RGB イメージですが、cpselect はグレースケールイメージに対してのみ利用できるので、この関数に RGB イメージの 1 つの平面を渡します。

cpselect(unregistered(:,:,1),'westconcordorthophoto.png',movingPoints,fixedPoints)

[ファイル] メニュー、[ポイントをワークスペースへ保存] オプションを選択して、コントロール ポイントを保存します。ポイントを保存して変数 movingPointsfixedPoints を上書きします。

手順 3: 幾何学的変換の推測

レジストレーションされていないイメージは飛行機から撮影されており、地形が比較的平坦なため、歪みの大部分は射影になる可能性が大きくなります。fitgeotrans は、選択した散在する movingPointsfixedPoints に最適な射影歪みのパラメーターを見つけます。

t_concord = fitgeotrans(movingPoints,fixedPoints,'projective');

手順 4: レジストレーションされていないイメージの変換

レジストレーションされていないイメージの 1 つの平面でポイントを選択した場合でも、RGB イメージ全体を変換できます。imwarp は、各平面に同じ変換を適用します。'OutputView' を指定すると、レジストレーションされたイメージは要素ごとの比較で確実に正射写真と位置合わせします。

Rfixed = imref2d(size(ortho));
registered = imwarp(unregistered,t_concord,'OutputView',Rfixed);

手順 5: 正射写真のコンテキストでレジストレーションされたイメージの表示

imshowpair(ortho,registered,'blend')

レジストレーションされたイメージが正射写真にどのように重ね合わされているかを視覚的に比較します。まずは「手順 2: コントロール ポイントの選択」に戻り、5 組以上のポイントを使用してみます。結果は改善されましたか。ポイントを凝集するとどうなるでしょう。

より大きなイメージで実験する場合は、上記の手順を実行して concordaerial.pngconcordorthophoto.png にレジストレーションします。

参考

| | |

関連するトピック