vishwa91/pyimreg のインストールと動作確認(画像の位置合わせ)(Windows 上)
SIFT (Scale-Invariant Feature Transform) は David Lowe による.1999年発表.特徴点(key point)の抽出と,回転,スケール変化,照明変化に頑健な特徴量(特徴点ごとの特徴量).
vishwa91/pyimreg は, 次の手順で,モノクロ画像の位置合わせ(レジストレーション)を行うプログラム
- 2つの入力画像を,それぞれモノクロ画像に変換
- それら2つのモノクロ画像について,SIFTを使い,「画像の特徴点」を抽出.
- 2つのモノクロ画像の「画像の特徴点」の対応をとる
- RANSAC により,位置合わせを行う
位置合わせ前

RANSAC を用いた位置合わせ後

その位置合わせのために,位置合わせの対象として用いた画像

【関連する外部ページ】
vishwa91/pyimreg (Image registration using SIFT and RANSAC algorithm) の Web ページ: https://github.com/vishwa91/pyimreg
前準備
Python のインストール(Windows上)
注:既にPython(バージョン3.12を推奨)がインストール済みの場合は,この手順は不要である.
winget(Windowsパッケージマネージャー)を使用してインストールを行う
- Windowsで,コマンドプロンプトを管理者権限で起動する(例:Windowsキーを押し,「cmd」と入力し,「管理者として実行」を選択)
- winget(Windowsパッケージマネージャー)が利用可能か確認する:
winget --version
- Pythonのインストール(下のコマンドにより Python 3.12 がインストールされる).
- Python詳細ガイド:Pythonまとめ »
- Windows で SIFT のインストール のWebページの手順を参考に,インストールする
- 環境変数 PATH を設定してパスを通す
- プログラム のファイルを展開(解凍)するディレクトリ: E:\pyimg-master\pyimg-master
- ダウンロードしたいので,GitHub の vishwa91/pyimreg の Web ページを開く.
- 「Clone or download」を展開.「Download ZIP」をクリック
- .zip ファイルのダウンロードが始まるので確認する. ファイル名は pyimreg-master.zip
- ダウンロードした .zip ファイルを展開(解凍)し,分かりやすいディレクトリに置く.
この .zip ファイルは,E:\pyimg-master\pyimg-master に展開(解凍)したものとして,説明を続けるので,適切に読み替えてください.
- 次の 2つのテスト画像を lena_std.jpg をもとに作った(金子研究室が制作).
これら2つの画像を,分かりやすい名前で保存
◆ 画像1つめ (lena_std.jpg をビューワで表示して,スクリーンショット)
「右クリックメニュー」などを使って保存して下さい
◆ 画像2つめ (lena_std.jpg を回転させたものをビューワで表示して,スクリーンショット)
「右クリックメニュー」などを使って保存して下さい
- ransac.py を実行したいので,Windows コマンドプロンプト
を開き,次のようにカレントディレクトリを移動
E: cd E:\pyimg-master\pyimg-master
- ransac.py の実行
先ほど保存した2つの画像ファイルのファイル名が E:\7.png, E:\8.png のときは 次のように実行.
python ransac.py E:\7.png E:\8.png
- 表示を確認する
コンソール: 1.pgm, 2.pgm と表示されるので,内部ではいったん濃淡画像(モノクロ画像)に変換されて処理されていることが分かる.
画像表示:2つの画像の「画像の特徴点」の対応がとられたことが分かる.
- 画像表示の右上の「x」をクリックして,閉じる
- 画像が3つ表示されるので確認する.
それぞれ,次のようです(未確認情報)
- 1つめ: 8.png (入力画像の2番目)が確認のため,そのまま表示されたもの
- 2つめ: 入力画像の1番目を変換行列(回転,拡大・縮小)で変換したもの. 変換行列を求めるのに RANSAC を使用した.
- 3つめ: 入力画像の1番目を変換行列(回転,拡大・縮小)で変換したもの.変換行列を求めるのに RANSAC を使用しない.
【関連する外部サイト】
【サイト内の関連ページ】
vishwa91/pyimreg のインストールと動作確認(画像の位置合わせ)(Windows 上)
「David Lowe の SIFT キーポイント検出器」のインストール
動作に必要な Python パッケージのインストール
Windows のメニューで,コマンドプロンプトを管理者として実行
そして,次のコマンドを実行する.
python -m pip install -U scipy numpy pylab pillow
vishwa91/pyimreg のインストールと動作確認(画像の位置合わせ)(Windows 上)
GitHub の vishwa91/pyimreg の配布サイト (https://github.com/vishwa91/pyimreg)で公開されている プログラムを,ダウンロードし展開(解凍)する.
ここでの作業に使っているディレクトリ: