Presentation is loading. Please wait.

Presentation is loading. Please wait.

画像処理プログラミング 知的画像処理研究室 M2 小林 佳奈美.

Similar presentations


Presentation on theme: "画像処理プログラミング 知的画像処理研究室 M2 小林 佳奈美."— Presentation transcript:

1 画像処理プログラミング 知的画像処理研究室 M2 小林 佳奈美

2 サンプルプログラムのダウンロード http://iipl.is.ritsumei.ac.jp/ - 授業関連
ファイルの解凍方法、コンパイル&実行方法などは、上記ページに全て書いてあります。

3 各ファイルの説明 ImageFileIO.c ImageFileIO.h ImageFilter.c ImageFilter.h
画像の読み込み、出力データの書き出しなどを行う関数の定義 ImageFileIO.h ImageFileIO.c内の関数の宣言 ImageFilter.c データを画像処理する関数の定義 ImageFilter.h ImageFilter.c内の関数の宣言

4 各ファイルの説明 main.c ○○○.ppm ○○○.pgm ImageTools.c ImageTools.h メインプログラム
カラー画像ファイル ○○○.pgm モノクロ画像ファイル ImageTools.c ImageTools.h 今回関係なし

5 各ファイルの説明 Makefike makeコマンドを実行し、コンパイルとリンクを自動的に行う imgfilterという実行ファイルが作成

6 サンプルプログラムの説明 main.c main()関数からNegativeImage()関数が呼び出されている
int main(void) { // 画像処理を行う関数の呼び出し // 例1)PPM形式の入力データをネガ画像に変換 NegativeImage(); // 例2)PGM形式のデータに線を描く // DrawLines(); // 正常終了 return 0; } main()関数からNegativeImage()関数が呼び出されている

7 ImageFilter.c void NegativeImage(void) PPM形式の入力データをネガ画像に変換
・・・ // PPM形式の入力データの読み込み pRGBInputData = ReadPpm(&iWidth, &iHeight, &iMaxValue); }

8 ImageFileIO.c ReadPpm(int * iWidth, int * iHeight, int * iMaxValue)
WritePpm(struct RGB * pRGBOutputData, int iWidth, int iHeight, int iMaxValue) PPMファイルへ書き出し GetAxisFromIndex(int iWidth, int iIndex, int * iX, int * iY) 1次元のインデックスから2次元座標を取得 など・・・

9 新しく関数を作成 ImageFilter.cに関数を追加する ImageFilter.h内で関数の宣言を行う
BinaryImage(void) ImageFilter.h内で関数の宣言を行う main.c内のmain()関数から呼び出す makeコマンドでコンパイル

10 ヒント (周辺画素を処理するプログラムを作成する際の注意)
注目画素 端の画素の例外処理を忘れずに行うこと

11 注意 画像の表示が上手くいかない場合 Netscapeのキャッシュの削除 ディスク容量がいっぱいじゃないですか?
% du –sh     ・・・ディスク使用量の確認 Netscapeのキャッシュの削除 Netscapeを立ち上げ、 編集→設定→詳細→キャッシュ キャッシュのクリアを行い、保存するキャッシュ容量も減らすことをオススメします(デフォルトは50MB)


Download ppt "画像処理プログラミング 知的画像処理研究室 M2 小林 佳奈美."

Similar presentations


Ads by Google