SIPを使ってみよう!

ここでは,簡単な使い方のみを説明する。さらに,高度な使い方を行いたいときには,次の二つを参照するとよい。

関数の使い方のリファランスマニュアル
http://siptoolbox.sourceforge.net/の[Documentation]->[SIP Functions]->(pdf)に"sip-0.3.0-reference.pdf"

初歩的な使い方マニュアル
http://genie-optique.chez-alice.fr/SIP/index.html->[documentation]に"A_SIP_UserManual.pdf"


使用例1

JPEGフォーマットのカラー画像データを読込み,これをグレースケールに変換して,さらに,適当なしきい値で2値化処理を行う。

処理を行う前に,例題用画像データを準備する。ココをクリックすると"fig-example1.jpg"がダウンロードされるので,これを適当なフォルダに保存する。今,この場所を"C:\home\taro"とする。

Step1:Scilabを起動し,Scilabのメニュー[toolboxes]の"siptoolbox"を選び,SIPを使える状態にする

Step2:Scilabは画像データを扱うため,大きなスタックメモリを必要とする。このため,次のコマンドによりスタックメモリのサイズを大きくする。

-->stacksize(3e7)

引数の3e7は,搭載メモリによるので,各自で適当な値に変更されたい。また,この命令をScilab起動時に自動的に実行したい場合には,

C:\Program FIles\scilab-4.0\scilab.star

をエディタで開いて,最終行に上記のコマンドを追加すればよい。

Step3:

画像データを変数imgに読み込む。

-->img=imread('fig-example1.jpg');

末尾にセミコロンをつけないと,画像データがASCIIコードとして画面に出力され冗長となる。

上記のコマンドの結果は

Size: 612 rows x 799 colums
Truecolor Image

すなわち,この画像データは,612x799ピクセル,トゥルーカラー(1ピクセルを24ビット表現)である,という表示が現れる。ただし,格納されたデータのレンジは[0,1]の範囲である。

Step4:

グレースケール画像に変換する。

-->gimg=im2gray(img);
-->xset('window',1);xbasc();imshow(gimg);

1行目で変換,2行目では新たなウィンドウを生成して,xbasc()で現在アクティブなウィンドウをクリアした後に,グレースケール画像を描画する。

Step5:

2値化処理を行う。

--> bimg=im2bw(gimg,0.7);
--> xset('window',2);xbasc();imshow(bimg);

1行目では,しきい値を0.7(画像データの範囲は[0,1])で2値化して,0,1のデータをbimgに代入する。2行目では新たなウィンドウを生成して,xbasc()で現在アクティブなウィンドウをクリアした後に,2値化された白黒画像を描画する。