ディジタル画像の表現 - 東海大学 情報理工学部情報メディア学科

Download Report

Transcript ディジタル画像の表現 - 東海大学 情報理工学部情報メディア学科

画像処理・実習
第一回: ガイダンス,ディジタル画像の表現
東海大学
情報理工学部 情報メディア学科
濱本和彦
講義概要
テーマ

ディジタル画像の表現方法と各種画像処理技術につ
いて学習する。C言語による実習も行う。
関連科目



基礎数学,線形代数,ディジタル信号処理
プログラミング実習,アドバンストプログラミング
コンピュータグラフィックス・制作,バーチャルリアリ
ティ・制作,マルチメディア・実習
教科書,参考書


酒井「ディジタル画像処理入門」コロナ社
井上「C言語で学ぶ実践画像処理」オーム社
ディジタル画像の例
標準画像の一例
Airplane
Barbara
Girl
Lena
Boat
Cameraman
ディジタル画像の例
医用画像の一例
歯科X線画像
超音波 腎細胞癌
超音波 乳腺腫瘍(悪性)
X線CT 脳室(ボリュームレンダリング)
講義項目
ディジタル画像の表現(標本化(解像度))
256×256×8bits
32×32×8bits
65536画素
1024画素
標本化間隔が狭い
(高解像度)
標本化間隔が広い
(低解像度)
講義項目
ディジタル画像の表現(量子化)
256×256×8bits
256階調
256×256×3bits
8階調
講義項目
頻度
ディジタル画像の特徴(輝度分布)
600
400
200
0
0
100
200
画素値(輝度値)
Lena画像のヒストグラム
講義項目
頻度
濃度変換
600
400
200
0
0
100
200
画素値(輝度値)
ヒストグラムの変化
講義項目
空間フィルタ(平滑化フィルタ)
講義項目
空間フィルタ(画像の微分)
講義項目
2値化画像
講義項目
2値化画像(輪郭抽出)
講義項目
直交変換(二次元フーリエ変換)
原画像
二次元フーリエ変換
(パワースペクトル)
講義項目
直交変換(圧縮)
65,536 bytes
(非圧縮)
7,365 bytes
(JPEG圧縮)
講義項目
パターン認識(テンプレートマッチング)
テンプレート
成績評価
中間テスト(40%)

~空間フィルタ
定期試験(40%)

2値化画像~パターン認識
課題提出(20%)
中間,定期試験は矢澤先生クラスと共通
問題,共通日程で行います。
講義の進め方
授業支援システムi-collaboを利用します。
総合情報センターのHPからアクセスして下さ
い。
 出席確認,資料提示・配布,レポート提出など
はすべてこのシステムを利用します。

授業用web

http://www.dm.u-tokai.ac.jp/~hama
1.1 画像処理とは
画質改善


コントラストが悪い→濃度変換
雑音が多い→平滑化
画像解析(画像認識)

特徴抽出と理解→エッジ検出,領域分割,特徴量計
測,マッチングなど
画像圧縮

伝送や保存のためのデータ量(情報量)削減→直交
変換を用いたエントロピー符号化
画像再構成

物体からの投影データなどから物体形状を再構成す
る
1.2 ディジタル画像
二次元の平面に描かれた濃淡模様
二次元座標(x,y)の関数→f(x,y)
f(x,y)
印刷物:色の濃さ(濃度値)
 ディスプレイ上:明るさ(輝度値)

1.2 ディジタル画像
濃淡情報
を数値化
画素
100 110 108
98
ディジタル化
(x,y)座標のディジタル化→標本化(sampling)
濃度値のディジタル化→量子化(quantization)
1.2 ディジタル画像
標本化
アナログ→ディジタル(A/D)
ディジタル→アナログ(D/A)
1.2 ディジタル画像
<標本化定理>
信号の最大周波数がfmaxの時,2・fmax以上の周
波数でsamplingすれば,そのディジタルデータ
からオリジナルの信号を正確に再生できる。
画像に含まれる明暗の周期がdならば,d/2以下
の間隔でsamplingすれば,その画像を完全に再
現できる。
つまり,「1周期内に2点のサンプリング点」が最
低必要なサンプリングデータとなる。
十分なsamplingデータがない
→低周波のデータとして誤って再現される
→エイリアシング
1.2 ディジタル画像
<標本化定理>
2点のサンプリング点
一周期にサンプリング点1つ
一周期
OK!
不可能。。。
1.2 ディジタル画像
<画素数と解像度>
y方向にM個の画素,x方向にN個の画素
→ M×Nを「画素数」と呼ぶ
画素数 128×128
画素数 256×256
画素数 64×64
1.2 ディジタル画像
<画素数と解像度>
画像の面積が同じ時,画素数が多いほど高精細
であるため,画素数の事を「解像度」と呼ぶ
解像度 256×256
解像度 128×128
解像度 64×64
1.2 ディジタル画像
量子化
各画素の濃度値(輝度値)をディジタル化
量子化された整数値
→濃度レベル,gray level,輝度レベル
8bits量子化→256階調

0: 最も暗い, 255: 最も明るい
量子化誤差


量子化の段階で発生する近似誤差
階調数が高ければ小さい
一様量子化

画像のどの部分も同じ階調数で量子化する事
1.2 ディジタル画像
量子化
疑似輪郭
256階調
16階調
1.2 ディジタル画像
ディジタル画像の情報量
平均情報量
1画素あたりのデータ量(ビット数)[bits/pixel]
 「エントロピー」ともいう。
 圧縮の際の尺度としても用いられる

1.2 ディジタル画像
ディジタル画像の情報量
65,536 bytes
(非圧縮)
7,365 bytes
(JPEG圧縮)
8[bits/pixel]
0.9[bits/pixel]
1.2 ディジタル画像
ディジタル画像の情報量
演習1.2
½の領域→256階調→8[bits/pixel]
 ¼の領域→64階調→6[bits/pixel]
 ¼の領域→2階調→1[bits/pixel]

平均を求める

8×1/2+6×1/4+1×1/4=5.75[bits/pixel]
1.2 ディジタル画像
ディジタル画像の情報量
演習1.2 ~もう一つの考え方~


エントロピーは,全体のビット数を全体の画素数で
割った値
全体の画素数を100画素と仮定すると。。



½の領域=50画素,256階調=8ビット,→400ビット
¼の領域=25画素,64階調=6ビット,→150ビット
¼の領域=25画素,2階調=1ビット,→25ビット
1画素あたりの平均を求める

(400+150+25) / 100 = 5.75[ビット/画素]
1.2 ディジタル画像
画像の配列(行列)表現
f0,0
1
N画素=N行
fN-
f0,M-
M画素=M列
1,0
fN-1, M1
画像処理の基本プログラム
img.h
Input_Img[256][256]



入力画像(画素数256×256)を保存する配列
256階調に対応(unsigned char)
Input_Img[y:行][x:列]となるので注意
Output_Img[256][256]

処理後の出力データを保存する配列
tmp_Img[256][256]


実際に処理を行うデータ配列
入力画像をこの配列にコピーして利用する(入力画像
は変化させず保持しておけるように)。
画像処理の基本プログラム
img.h
void Initialize(void)

各配列の値を0に初期化する。
void Input_image(void)

画像のファイル名を入力して読み込み,その画像を
Input_Img[256][256]に保存し,tmp_Img[256][256]
にコピーする。
void Output_image(void)

処理後の画像tmp_Img[256][256]を出力用の配列
Output_Img[256][256]にコピーし,これにファイル名
を付けてファイル出力する。
void Inverse(void)

濃度反転関数。詳しい解説は次週。
実行してみよう
利用画像 Lena
256×256×8 bits
 rawファイルフォーマット(lena.raw)


単に画素の濃度情報だけが,行ごとにバイナリで
保存されている最も単純なフォーマット
input
output