画像処理・実習 第一回:

画像処理・実習
第二回: ディジタル画像の特徴
東海大学
情報理工学部情報メディア学科
濱本和彦
今回の内容
前回の復習



画像の標本化と量子化
ディジタル画像の情報量
ディジタル画像の配列表現
1.3 パーソナルコンピュータによる画像処理


ディジタル画像とVRAM
カラー画像と白黒画像
実習


濃度反転
ヒストグラム
復習 : 1.2 ディジタル画像
濃淡情報
を数値化
画素
100 110 108
98
ディジタル化
(x,y)座標のディジタル化→標本化(sampling)
濃度値のディジタル化→量子化(quantization)
復習 : 1.2 ディジタル画像
<標本化定理>
画像のサンプリング間隔がdの時,再現で
きる最も細かい明暗の周期は2dである。
d
画素列
明
暗
明暗の周期 : 12d
復習 : 1.2 ディジタル画像
<標本化定理>
画像のサンプリング間隔がdの時,再現で
きる最も細かい明暗の周期は2dである。
d
画素列
明
暗
4d
復習 : 1.2 ディジタル画像
<標本化定理>
画像のサンプリング間隔がdの時,再現で
きる最も細かい明暗の周期は2dである。
d
画素列
明
暗
2d
復習 : 1.2 ディジタル画像
<標本化定理>
画像のサンプリング間隔がdの時,再現で
きる最も細かい明暗の周期は2dである。
d
画素列
明
暗
d
復習 : 1.2 ディジタル画像
<標本化定理>
十分なsamplingデータがない
→低周波のデータとして誤って再現される(エイリアシング)
256×256
64×64
復習 : 1.2 ディジタル画像
<標本化定理>
zone_plate.rawとPaint Shopを利用して,
エイリアシングを確認してみましょう。
復習 : 1.2 ディジタル画像
量子化
各画素の濃度値(輝度値)をディジタル化
量子化された整数値
→濃度レベル,gray level,輝度レベル
8bits量子化→256階調

0: 最も暗い, 255: 最も明るい
量子化誤差
量子化の段階で発生する近似誤差
 階調数が高ければ小さい

復習 : 1.2 ディジタル画像
量子化
明
ディジタル化前の
アナログな濃淡値
暗
標本化後データ
12階調
標本化・量子化後データ
復習 : 1.2 ディジタル画像
量子化
明
暗
標本化後データ
6階調
標本化・量子化後データ
復習 : 1.2 ディジタル画像
量子化
量子化誤差
(疑似輪郭)
256階調
16階調
復習 : 1.2 ディジタル画像
ディジタル画像の情報量
平均情報量
1画素あたりのデータ量(ビット数)[bits/pixel]
 「エントロピー」ともいう。
 圧縮の際の尺度としても用いられる

D
bit / pixel 
E
M N
D 画像全体のデータ量[bit]
M×N 全画素数[pixel]
復習 : 1.2 ディジタル画像
ディジタル画像の情報量
65,536 bytes
(非圧縮)
7,365 bytes
(JPEG圧縮)
65536/(256×256)
=8[bits/pixel]
7365/(256×256)
=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
f0,M-
M画素=M列
1
y
fN-
N画素=N行
x
1,0
y座標→行
x座標→列
f [y][x]
fN-1, M1
1.3 パーソナルコンピュータによる画像処理
-ディジタル画像とVRAM-
VRAM(Video Random Access Memory)
R,G,B三原色のデータを保存
 モニタへの画像の表示を担当するメモリ
 各色8bits(256階調)とすると,
256×256×256=16,777,216色が表現可能
 1024×768を実現するには,
1024×768×(8+8+8)=2,304KbytesのVRAMが
必要

1.3 パーソナルコンピュータによる画像処理
カラー画像と白黒画像
・実際にPaintShopを用
いてRGBに分解して
みましょう
青(B)の成分が一番
暗いということは・・?
R成分
G成分
B成分
1.3 パーソナルコンピュータによる画像処理
カラー画像と白黒画像
RGBの問題点

1つのカラー画像に対して,3つのデータが必要
効率の良いカラー画像の表現
RGBを輝度信号と色差信号に変換
 輝度信号と色差信号の多重化方式(NTSCなど)

1.3 パーソナルコンピュータによる画像処理
カラー画像と白黒画像
NTSC方式

輝度信号Y=0.299R+0.587G+0.114B


色差信号





ER=(R-Y)/1.14, EB=(B-Y)/2.03
I,Q信号


比率は人の目の感度による
ER,EBよりI,Q信号に変換
人の目の特性を利用して色信号の帯域を狭くする
Y: 4.2MHz, I: 1.5MHz, Q: 0.5MHz
I,Q信号より色信号Cをつくる
NTSC=Y+C (多重化により1つの信号で表現可能)
1.3 パーソナルコンピュータによる画像処理
カラー画像と白黒画像
【参考】
Y  0.59G  0.30R  0.11B
R Y
B Y
ER 
, EB 
1.14
2.03
I  ER cos33゜  EB sin 33゜
Q  ER sin 33  EB cos33
゜
゜
C  I cos(sc t  33 )  Q sin(sc t  33 )
゜
゜
実習 濃度反転
input
output
実習 濃度反転
Whatの定義
画像は256階調(0~255)
 0→255, 1→254, 2→253, …,127→128,
128→127, 129→126, …, 255→0

Whatに対する構造化プログラミング
変換前濃度と変換後濃度の和は255である。
 変換後濃度=255-変換前濃度

実習 濃度反転
i=0; i<N; i++
j=0; j<M; j++
tmp_Img[i][j]=
255-tmp_Img[i][j]
img2.hの,関数Inverse( )を確認しましょう。
頻度
実習 ヒストグラム
600
400
200
0
0
100
200
画素値(輝度値)
Lena画像のヒストグラム
実習 ヒストグラム
Whatの定義





画像は256階調(0~255)
階調数の要素を持つヒストグラムデータ用の配列
h[256]を用意
f[0][0]の濃度が100ならばh[100]+=1;
f[0][1]の濃度が50ならばh[50]+=1; …
f[N-1][M-1]の濃度が200ならばh[200]+=1;
Whatに対する構造化プログラミング

f[i][j]の濃度がcならば,h[c]+=1;
実習 ヒストグラム
i=0; i<N; i++
j=0; j<M; j++
c=tmp_Img[i][j]
histogram[c]+=1;
実習 ヒストグラム
img2.hの,関数Histogram( )を完成しましょう。
TSチャートを参考にして,処理を完成させてくだ
さい。
fprintfを用いて,ヒストグラムデータをファイル出
力して下さい。出力ファイルをエクセルなどで読
み込み,ヒストグラムを表示してください。
Lenaだけでなく,他の画像でもヒストグラムを求
めてみましょう。
airplane.raw, boat.raw, cameraman.raw
次回の講義項目
頻度
濃度変換
600
400
200
0
0
100
200
画素値(輝度値)
ヒストグラムの変化