第一章 光、影像、浮水印和抽樣原理
1.1 前言 1.2 光與顏色 1.3 人眼與照像機的關係 1.4 彩色模式的轉換 - RGB、YIQ、HSV和YUV 1.1 前言 1.2 光與顏色 1.3 人眼與照像機的關係 1.4 彩色模式的轉換 - RGB、YIQ、HSV和YUV 1.5 隱像術與浮水印 1.6 人臉的定位應用 1.7 影像抽樣原理 1.9 作業 1.5.1 影像的位元平面剖析 1.5.2 基本原理 1.6.1 形態學 1.6.2 離散餘弦轉換 1.7.1 傅利葉轉換 1.7.2 避免混疊效應
1.2 光與顏色 光(Light)是一種粒子,也是一種波。人的眼睛只能看到可見光的部份,卻不能看見頻率(Frequency)低於可見光的紅外線和微波,也無法看見頻率高於可見光的紫外線和加瑪射線。 在影像處理中,像素的亮度(Brightness)和頻率的關係,如圖1.2.1所示。低頻率的紅光和高頻率的紫光的亮度都不如比較中間頻率的黃綠光來的強。 圖1.2.1 亮度與頻率的關係
1.3 人眼與照像機的關係 除了利用掃描器(Scanner)外,影像處理前的輸入影像有很大的比例是由照像機(Camera)拍攝而得。 瞳孔的功能很像照像機的光圈,是用來調節進入人眼內部的光通量,光通量一般以流明(Luminance)為單位。 圖1.3.1 人眼示意圖
圖1.3.2為透鏡成像的中央投影(Central Projection)示意圖。圖中的f代表鏡頭的焦距; f1代表物距, f2而代表像距。f、 f1和f2會滿足下列式子 (1.3.1) Q1:令f1 = 3 cm和f2 = 6 cm,求算f。 ANS:根據式(1.3.1),我們得到 所以f = 2 cm。 EOA 圖1.3.2 透鏡成像原理
1.4 彩色模式的轉換 在影像的彩色模式中,比較常見的有下列幾種: (1)RGB, (2)YIQ,(3)HSV,(4)YUV。 (1.4.1) Q1:給一像素,其(R , G , B)為(100, 50, 30),試求其對應的灰階值。 ANS:由式(1.4.1)可得 故得灰階值63。 EOA
Q2:給一2×2 RGB影像 請將I由RGB 彩色影像轉換成YIQ影像,這裡(10,20,40)代表R=10,G=20和B=40。 ANS:利用式子(1.4.1)可得 經過四捨五入後,所得到的YIQ影像為 EOA
給一彩色 Lena影像,如圖1.4.1所示,利用式 (1.4.1) 中Y與RGB的關係,我們可得到圖1.4.2所示的高灰階影像。
RGBHSV (1.4.2) 在HSV系統中,H=0時代表紅色,H=120時代表綠色,H=240時代表藍色。當的S=0時,表示影像為灰階式的影像。當H = 0且S=1時,影像為紅色。當V=0時,表示黑色。反之,當V=1時,表示白色的亮光。
HSV彩色系統有時也稱作HSB彩色系統,這裡的B代表Brightness。 HSV有時更被稱作HIS,這裡的I代表Intensity,其實就是灰階值。 圖1.4.3 HSV彩色系統
YUVYIQ 在JPEG系統中,我們第一步輸入RGB彩色影像。第二步將RGB彩色轉換成YCbCr彩色系統。詳細的Cb和Cr可由下式獲得 (1.4.3) 的 代表“Blue Minus ‘Black and White’ ”; 代表“Red Minus ‘Black and White’ ”。
1.5 隱像術與浮水印 1.5.1 影像的位元平面剖析 將RGB分解成R平面、G平面和B平面 (a) R平面 (b) G平面 (a) B平面 圖1.5.1.1 彩色Lena影像的三張分解圖
將高灰階Lena影像中的灰階像素分解成八個位元平面 (a) 第一張位元平面 (b) 第二張位元平面 (e) 第五張位元平面 (f) 第六張位元平面 (c) 第三張位元平面 (d) 第四張位元平面 (g) 第七張位元平面 (h) 第八張位元平面 圖1.5.1.2 高灰階Lena影像的八張分解平面
我們把圖1. 6(e) ~ (h) 疊在一起可得到圖1. 5. 1. 3。圖1. 5. 1. 3中的Lena和圖1. 4 我們把圖1.6(e) ~ (h) 疊在一起可得到圖1.5.1.3。圖1.5.1.3中的Lena和圖1.4.2中的Lena在肉眼上幾乎分辨不出什麼差異。 圖1.5.1.3 圖1.5.1.2(e) ~ (h) 的合成影像
Q1:給一如下的44子影像,子影像的每一個像素之灰階值佔用 八個位元,請算出第三張位元平面。 8 7 6 5 32 31 30 29 10 11 12 13 1 2 3 ANS:我們首先將上面的子影像轉換成 00001000 00000111 00000110 00000101 00100000 00011111 00011110 00011101 00001010 00001011 00001100 00001101 00000000 00000001 00000010 00000011 將右邊第三位元全部收集起來,我們得到如下的第三位元平面: 1 EOA
Q2:前述的隱像術之優缺點為何? ANS: 滿足上圖的函數也叫單程函數(One Way Function)。利用位元平面來植入影像的最大缺點為:一旦經過壓縮後,所植入的影像很容易受到破壞,解壓後所取出的影像常常已遭到很嚴重的破損。 EOA
1.5.2 基本原理 隱像術 給二張影像A和B,所謂的隱像術就是把A影像隱藏在B影像並且讓人無法察覺B影像中藏了A影像。 PSNR 令B'為將A隱藏在B後的結果。PSNR (Peak Signal-to-Noise Ratio)很常被用來評估B'和B的相似性,PSNR的定義如下 浮水印 而所謂的浮水印,可把A看成標誌(Logo),通常這個標誌可想成一種版權。
一種SVD結合 VQ 的隱像術方法 已知有一 的灰階影像A,假設A的秩(Rank)為r, 則A的SVD可表示為 V和U為正交矩陣(Orthogonal Matrix)且 ,其中 滿足 和 。 這裏 等於 , 為矩陣At A的第i個特徵值(Eigenvalue)。
Q1:如何知道 ? ANS:利用 EOA
Q2:如何知道A可進行SVD分解?也就是,如何得到 (1.5.2.1) ANS:
的特徵值(Eigenvalues)為 和 。將特徵值開根號,A 例如,令 ,則 。 的特徵值(Eigenvalues)為 和 。將特徵值開根號,A 的奇異值為 和 。特徵值為16的特徵向量為 而特徵值為0的特徵向量為 ,利用這二個特徵向量可建構出 利用 可得 所以
又由 ,可得 。利用 可找出 和 來。所以A的SVD可表示為 我們可利用前人提出的結合SVD及VQ之方法,在壓縮效果和失真之間得到一個較好的平衡 。
圖1. 5. 2. 1(a)為待植入的F16影像,圖1. 5. 2. 1(b) 為將F16植入圖1. 4 圖1.5.2.1(a)為待植入的F16影像,圖1.5.2.1(b) 為將F16植入圖1.4.2後的結果。F16經隱像後,效果的確蠻好的,畢竟在圖1.5.2.1(b)中,用肉眼實在看不出F16隱藏其中。 (a) 待植入的F16 (b) 將F16植入圖1.4.2後的結果 圖1.5.2.1 隱像後的效果
Q3:一般而言,怎樣分辨浮水印和資料隱藏? ANS: 用浮水印所加入的影像,主要是想確定誰是影像的真 正所有者;而資料隱藏只是想透過隱像術的技巧將資 料隱藏起來。 EOA
1.6 人臉的定位應用 1.6.1 型態學 封閉(Closing)算子 開放(Opening)算子 圖1.6.1.1 輸入的影像 圖1.6.1.1 輸入的影像 圖1.6.1.2 皮膚色所在 封閉(Closing)算子 開放(Opening)算子
擴張(Dilation)和侵蝕 (Erosion) 令A為待處理的區塊集而B為結構化元素集(Structuring Elements) : 擴張運算 侵蝕運算 圖1.6.1.3 集合A和B 圖1.6.1.4 D(A,B) 圖1.6.1.5 E(A,B)
Q1:今將圖1.11的區塊集改成下圖所示的區塊: 試求D(A, B)和E(A, B)。 ANS:根據前面D(A, B)和E(A, B)的定義,我們有 EOA
Q1.1:給以下三區塊集,如下圖所示,延用圖1.6.1.3的結構化元素 集B,請分別算出此三區塊集經開放算子及封閉算子運算後 的結果,並加以說明。
ANS: 開放算子先進行擴張運算再進行侵蝕運算 ,經由擴張運算可以得到下圖的結果。 再將擴張運算所得區塊集進行侵蝕運算,最後可得下圖的結果。 封閉算子先進行侵蝕運算再進行擴張運算 ,經由侵蝕運算可以得到下圖 再將侵蝕運算所得區塊集進行擴張運算 ,最後可得下圖的結果。 此即為封閉算子運算後的結果。 EOA
Q2:如何利用擴張運算子D和侵蝕運算子E以求得影像中輪廓 的外圍? ANS:令I代表原影像,而B代表結構化元素集。D(I, B)將影像的輪 廓擴張;E(I, B)可將影像的輪廓侵蝕及縮減。因此D(I, B)- E(I, B)可得到影像中物體的輪廓外圍,這裏的‘-’代表兩影像 相減。下面的圖為測輪廓的示意圖: 介於D(I,B)和E(I,B)之間的環形區域可視為物體I的輪廓。 EOA
Q4:如何利用色調範圍來過濾皮膚色? ANS: 首先利用人工點選的方式,將所有訓練影像中的皮膚色予 以框出來,然後將色調抽取出來,並且將統計出來的平均 值 和標準差 用於濾波器的設計,下面為其示意圖:
1.6.2 離散餘弦轉換(Discrete Cosine Transform) DCT 令 f(x,y) 為框框內位於(x,y)的灰階值減去128,則DCT的計算公式如下 (1.3) IDCT f(x,y)也可透過IDCT(inverse DCT)得到,公式如下 透過式子(1.4)求得f(x,y)後再加上128即可得到位於影像中(x,y)位 置的原始灰階值。 (1.4)
DC(Direct Current、直流值) AC(Alternative Current、交流值) 圖1.6.2.1 8x8的灰階圖案及其灰階值 圖1.6.2.2 DCT後的結果
Q2:當D(0, 0)>1000時,原88灰階影像為何種影像? ANS:令全黑的灰階值為0,而全白的灰階值為255。已知 很容易推知原88灰階影像可能為一幾近全白的平滑影像。 不過,有時為保險起見,除了D(0, 0)的值外,還得看看其 餘的63個值。 EOA 圖1.6.2.3為DCT後的頻率域之紋理方向示意圖。通常若框住皮膚色的框框是臉部時,在高頻區會有一些較大的係數表現。當DC值過小時和AC值過大,可進一步判斷有臉部的框框。 圖1.6.2.3 DCT頻率域的紋 理方向示意圖
Q3:如何在臉部上找出眼睛和嘴巴的部位? ANS:假設找到的臉部如下所示: 利用水平投射法(Horizontal Projection) 我們可發現在(a, b)和(c, d)兩區間有頻率較高的波峰(Peak),依位置而言,可合理推估(a, b)區間為眼部所在,而(c, d)區間為嘴巴所在,畢竟這兩個部分的邊點數是較多的。 EOA
1.7 影像抽樣原理 1.7.1 傅利葉轉換 給一週期函數(Periodic Function) g(θ), ,傅利葉原先的想法是將g(θ)用有正交性(Orthogonality)的傅利葉基底(Basis)來表示。這些正交的基底為cosθ、cos2θ、cos3θ、…、sinθ、sin2θ、sin3θ, 。 正交性
求解傅利葉係數 有了傅利葉基底後,g(θ)可表示成 (1.5) 則從 可推得 從
Q1:我們來看個例子吧! ANS:令 EOA 只取第一項 只取前二項 只取前三項 圖1.7.1.1 g(θ)
FFT 令 為1的基本根(Primitive Root)且滿足 。若N=8時,傅利葉矩陣為 FFT可在 時間內完成,首先將 分成偶半部和奇半部,分別表示成
令 和 。利用算出的 和 ,可得 (1.5.1) 當 當
Q2:可否利用替代法證明 。 ANS:已知 ,可推得 EOA
分開性(Separability) 回到二維的FT,假設一張影像位於(x,y)的灰階值為 f(x,y),則二維的FT定義為 (1.7) IFT(Inverse FT)依下式求得 (1.8) 式子(1.7.1.4)可改寫成下列的型式 (1.9) 式子(1.7.1.5)中F(x,v)可看成先對y軸進行FT再對x軸進行FT。(1.1.7.1.5)式顯示的是FT的分開性(Separability) 。
Q3:假如我們想把FT後的結果從原點(Origin)移到中央(Center),該 如何辦到呢? ANS:首先將乘上 ,則 的FT如下所算 (1.10) 由f(x, y)(-1)x+y的FT等於 ,可得知已將FT的結果從原點移至中央處了。式 (1.10) 顯示了FT的平移性(Translation)。 EOA
和 。可推得 和 為傅利葉配對(Fourier Pair ),具有倒數放大性質(Reciprocal-Scaling)。 若將 乘上一個係數C,則 經FT作用後得 到 ,這個性質稱作放大性質。令 ,則 和 。可推得 和 為傅利葉配對(Fourier Pair ),具有倒數放大性質(Reciprocal-Scaling)。 f(x) F(u) f(2x) 1/2f(u/2)
迴積定理(Convolution Theorem) 兩函數 f(x) 和 g(x) 的迴積定義為 令 則所有 z(x) 經FT作用後得
1.7.2 避免混疊效應 取樣間距(Sampling Interval) 必須滿足 ,如此才不會造成混疊效應(Aliasing)。 某函數 取樣函數 F(u)和P(u)進行迴積運算 將T(u)乘上F(u)*P(u)可得F(u)
最後我們來看一個FT的實作結果。給一影像如圖1.7.2.1所示,經FT作用後,其傅利葉頻譜顯示於圖1.7.2.2。 圖1.7.2.1 輸入的影像 圖1.7.2.2 傅利葉頻譜圖
1.9 作業 習題一: 給一 影像如下所示 A= 另外給一 機密影像如下所示 B= 今打算將B隱藏在A,試問如何做且列出隱像後的結果。 給一 影像如下所示 100 101 A= 102 103 另外給一 機密影像如下所示 B= 15 16 今打算將B隱藏在A,試問如何做且列出隱像後的結果。 習題二: 利用XOR算子將十進位的數字轉換成二進位的位元字串,但 需滿足鄰近的二個十進位的數字經轉換後的二進位字串之漢明距離(Hamming Distance)為最小。