金子邦彦研究室プログラミングOctave の活用画像の拡大

画像の拡大

画像の拡大を行うような Octave のプログラム例を示す.

Octave の次の関数を使う.

前準備

Octave のインストールが済んでいること.

必見 Web ページ: http://www.csse.uwa.edu.au/~pk/Research/MatlabFns/

必見 Web ページ: http://www.eecs.berkeley.edu/Research/Projects/CS/vision/bsds/

※ プロンプトを変えたいときは,次のように操作する.

PS1('> ')

※ Octave のインストールによっては,Octave の起動時に毎回次の操作を行う必要があるかもしれない

pkg load image

説明に使う濃淡画像  

画像ファイルを変数 rgb に読み込み,RGB 画像を濃淡画像に変換

※ 「/tmp/lena_std.jpg」の部分は画像ファイル名に書き換えて使ってください.

[rgb, immap, alpha] = imread("lena_std.jpg");
mono = rgb2gray( rgb );

Windows では「imread("t:/lena_std.jpg");」のようにしてください.

画像の拡大

◆ 濃淡画像の場合

「"pchip"」のところは 「"linear"」などが選べる.

[XX, YY] = meshgrid(1:512, 1:480);
[XX2, YY2] = meshgrid(100:0.1:151.1, 100:0.1:147.9);
imshow(interp2( XX, YY, mono, XX2, YY2, "pchip" );

[image]

◆ カラー画像の場合

rgb2(:,:,1) = interp2( XX, YY, rgb(:,:,1), XX2, YY2, "pchip"):
rgb2(:,:,2) = interp2( XX, YY, rgb(:,:,2), XX2, YY2, "pchip"):
rgb2(:,:,3) = interp2( XX, YY, rgb(:,:,3), XX2, YY2, "pchip"):

[image]