jpeg と量子化kikn/cdn/cdn3-jpegb.pdfjpeg圧縮アルゴリズム ! 1. 前処理 "...
TRANSCRIPT
JPEG と量子化�
コンテンツ配信技術3 菊池浩明�
ƒ’
情報損失�+1
–1
–1
+1
7/4F2
+1
–1
-5/4F3
11/4F1
ƒ= (3,6,2,0) = aF1+bF2+cF3
ƒ
逆DCT
DCT
JPEGの限界�_______ノイズ�
GIF (1136 byte) JPEG (6442 byte)
JPEG圧縮アルゴリズム�
n 1. 前処理�q RGBから輝度と色差�q 8x8ブロック化�
n 2. DCT n 3. _______�n 4. エントロピー符号化�
q DC成分/AC成分(ハフマン符号)
RGB成分�
R G B
輝度と色差�
輝度情報� 色差1� 色差2�
ブロック化�
n 8x8
直交基底�
0 1 2 3 x
+1
–1
–1
+1
F2
+1
–1
F3
F1
0 x
+1
–1
F1
1 2 3 4 5 6 7
–1
+1
F2
+1
–1
F3
8つの基底 �x = 0, 1,…, 7
q F0=cos 0
q F1=cos (2x+1)π/16
q F2=cos (2x+1)2π/16
q F3=cos (2x+1)3π/16
q F4=cos (2x+1)4π/16
q F5=cos (2x+1)5π/16
q F6=cos (2x+1)6π/16
q F7=cos (2x+1)7π/16
JPEGの原理�
n 離散コサイン変換�q Discrete Cosine Transform: DCT q _________ ƒ(x,y) (-128~+127) q インデックス x, y, u, v = 0,1,...,7
q C(0)=1/√2, C(1)=...=C(7)=1
F(u,v) =14C(u)C(v) f (x,y)cos
(2x + 1)uπ16
cos(2y +1)vπ16y=0
7
∑x=0
7
∑⎛
⎝ ⎜
⎞
⎠ ⎟
b = ƒ•F2/F2•F2
二次元への拡大�F2
F3
1 1 -1 -1 -1 -1 1 1 -1 -1 1 1 1 1 -1 -1
F23
1 1 1 1 1 1 1 1 -1 -1 -1 -1 -1 -1 -1 -1
F1
F2
F12
1 1 -1 -1 -1 -1 1 1 1 1 -1 -1 -1 -1 1 1
F23 •F12 = ___
DCT基底�
2次元のDCT F0
1 � 1 � 1 � 1 �
F1
F2 F3
1 � 1 � -1 � -1 �
4 4 0 0 4 4 0 0 -2 -2 6 6 -2 -2 6 6
原画像�ƒ=aF0+bF1+cF2+dF3
2次元のDCT F0 F1
4 4 0 0 4 4 0 0 -2 -2 6 6 -2 -2 6 6
原画像�ƒ=aF0+bF1+cF2+dF3
a=ĥF0/F02
=
2
2
DCT係数�F0 F1
4 4 0 0 4 4 0 0 -2 -2 6 6 -2 -2 6 6
原画像�ƒ=aF0+bF1+cF2+dF3
2
2 -1
-1 F2 F3 0
0 3
3 DCT係数�
______成分�
______成分�
G =2 −10 3⎛
⎝ ⎜
⎞
⎠ ⎟
人間の知覚�
n Fechnerの_____法則 q 感覚量 S, 刺激強度 I S = k log I + b S2 = k log 2 + b
I = 2 �
高周波成分の 感覚は鈍い�
低周波成分の 感覚は鋭い�
荒い量子化�
32レベル� 10レベル� 4レベル�
012345678910
0 5 10
量子化 quantization�
n cによる量子化�
q ����______ of x = xを超えない最大の整数
q q3(19) =floor(19/3)x3 =(6.333)x3 =18
q q3(20) = q q3(21) = q q3(22) =
qc(x) =xc⎢ ⎣ ⎢ ⎥ ⎦ ⎥ × c
⎣ ⎦x
量子化テーブル�F0 F1 2 -1
F2 F3 0 3
DCT係数�
2 -1
0 3
c 1 5
5 10
n 量子化する値 c q 低周波→________�q 高周波→________�
例) q5(3)=fl(0.6) x5= q5(-1)=fl(-0.2) x5=
圧縮率の違い�
n 低圧縮 (75%) q DCT係数
q 量子化テーブル
q 量子化された係数
n 高圧縮 (50%) q DCT係数
q 量子化テーブル
q 量子化された係数
⎟⎟⎠
⎞⎜⎜⎝
⎛=
3221
1C
⎟⎟⎠
⎞⎜⎜⎝
⎛ −=
3012
0G
⎣ ⎦ ⎣ ⎦⎣ ⎦ ⎣ ⎦
=⎟⎟⎠
⎞⎜⎜⎝
⎛
⋅⋅
⋅−⋅=
33/322/022/111/2
)( 01 GqC
⎟⎟⎠
⎞⎜⎜⎝
⎛=
10551
2C
=)( 02 GqC
⎟⎟⎠
⎞⎜⎜⎝
⎛ −=
3012
0G
逆DCT変換 (IDCT) �n 変換と逆変換
q 原画像�ƒ
q DCT係数�
5 � 5 � -1 � -1 �
5 � 5 � -1 � -1 �
-5 � -5 � 9 � 9 �
-5 � -5 � 9 � 9 �
4 4 0 0 4 4 0 0 -2 -2 6 6 -2 -2 6 6
ƒ=aF0+bF1+cF2+dF3
⎟⎟⎠
⎞⎜⎜⎝
⎛=
dcba
G0
DCT変換� _____________�3 � 3 � 1 � 1 �
3 � 3 � 1 � 1 �
-3 � -3 � 7 � 7 �
-3 � -3 � 7 � 7 �
⎟⎟⎠
⎞⎜⎜⎝
⎛ −=
0052
)( 01 GqC
⎟⎟⎠
⎞⎜⎜⎝
⎛ −=
5024
)( 02 GqC
ƒ1 �
ƒ2 �
ジグザグスキャン�
n DCT係数� n __________�q 0の個数�q 非0値�
n 例�q 12,0,0,0,3,0,2,0,0,0,0 q 0,12, 3,3, 1,2, 4,0 q 0,12, 3,3, 1,2, [EOB]
(End of Block)
高周波�
低周波�
演習�n 2次元の直交基底�
�DCT係数 を持つ画像ƒがある.�
1. Gを逆DCT変換(復元)したƒ1を求めよ�
2. Gを量子化テーブル で量子化したG2を求めよ.
3. G2を逆DCT変換したƒ2を求めよ.�
F0 =1 11 1⎛
⎝ ⎜
⎞
⎠ ⎟ , F1 =
1 −11 −1⎛
⎝ ⎜
⎞
⎠ ⎟ , F2 =
1 1−1 −1⎛
⎝ ⎜
⎞
⎠ ⎟ , F3 =
1 −1−1 1⎛
⎝ ⎜
⎞
⎠ ⎟ ,
G =5 3−2 1⎛
⎝ ⎜
⎞
⎠ ⎟
⎟⎟⎠
⎞⎜⎜⎝
⎛=
4331
2C