38
Hiding Visual Patterns in Halftone Images 在在在在在在在在在在在在 在在在在在在 在在在在 在在 在在在 在在在在 在在在 , 在在在 在在在在 99 在

Hiding Visual Patterns in Halftone Images

Embed Size (px)

DESCRIPTION

Hiding Visual Patterns in Halftone Images. 在半色調圖中隱藏視覺圖案. 國立台北大學 碩士論文 作者:張淑貞 指導教授:張仁俊 , 吳信龍 中華民國 99 年. 半色調技術. 將 dither matrix 排列成和連續圖像相同大小的矩陣,連續圖像 ( i,j ) 的位置跟門檻值做比對 ,比門檻值高就輸出 255( 白點 ) ,反之輸出 0( 黑點 ). 誤差擴散法. 誤差擴散法在半色調的過程中,將處理過的像素值誤差,分散到其他未處理的點上,使半色調圖上與原始圖的亮度相近。常用的 filter. 誤差擴散法. - PowerPoint PPT Presentation

Citation preview

Page 1: Hiding Visual Patterns in Halftone Images

Hiding Visual Patterns in Halftone Images

在半色調圖中隱藏視覺圖案

國立台北大學 碩士論文作者:張淑貞指導教授:張仁俊 , 吳信龍中華民國 99 年

Page 2: Hiding Visual Patterns in Halftone Images

半色調技術• 將 dither matrix 排列成和連續圖像相同大小

的矩陣,連續圖像 (i,j) 的位置跟門檻值做比對 ,比門檻值高就輸出 255( 白點 ) ,反之輸出 0( 黑點 )

Page 3: Hiding Visual Patterns in Halftone Images

誤差擴散法誤差擴散法在半色調的過程中,將處理過的像素值

誤差,分散到其他未處理的點上,使半色調圖上與原始圖的亮度相近。常用的 filter

Page 4: Hiding Visual Patterns in Halftone Images

誤差擴散法

1.Pi(i,j) 是原始影像灰階值2.Po(i,j) 是處理後的輸出值3.v(i,j)= Pi(i,j)+ 誤差修正值 ( 即誤差擴散濾波器之輸出 )

4.e(i,j)= v(i,j)-Po(i,j) 也就是誤差值5.t 是門檻值6. 若 v(i,j)>t 則 Po(i,j)=255( 即輸出白點 ) ,反之 Po(i,j)=0( 即輸出

黑點 )

7.h(i,j) 以加權的方式將誤差值 e(i,j) 分散至鄰近像素的影像值

Page 5: Hiding Visual Patterns in Halftone Images

誤差擴散法

1.Pi(i,j) 是原始影像灰階值2.Po(i,j) 是處理後的輸出值3.v(i,j)= Pi(i,j)+ 誤差修正值 ( 即誤差擴散濾波器之輸出 )

4.e(i,j)= v(i,j)-Po(i,j) 也就是誤差值5.t 是門檻值6. 若 v(i,j)>t 則 Po(i,j)=255( 即輸出白點 ) ,反之 Po(i,j)=0( 即輸出

黑點 )

7.h(i,j) 以加權的方式將誤差值 e(i,j) 分散至鄰近像素的影像值

Page 6: Hiding Visual Patterns in Halftone Images

峰值訊號雜訊比 PSNR

1.Xn 表示為原始圖案的像素值2.Gn 為經過處理的像素值3. 兩張圖案經過 PSNR 計算過後的值越大

表示相似程度越高。

Page 7: Hiding Visual Patterns in Halftone Images

Noise-Balanced Error Diffusion

NBED 的方法是在兩張以上的半色調圖像中影藏二進位視覺圖案。

步驟一:用 TED 的方式產生第一張半色調圖案

步驟二: A. 假設欲隱藏的圖案 H(i,j) 的像素值為黑

色像素,當 TEDij 為白色像素,則使用 v(i,j)= Pi(i,j)+ h(i,j)-Nb

e(i,j)= v(i,j)-Po(i,j)+Nb

Page 8: Hiding Visual Patterns in Halftone Images

Noise-Balanced Error Diffusion

步驟二: B. 假設欲隱藏的圖案 H(i,j) 的像素值同

於 TEDij 的像素值,且都圍為黑色就使用 TED的方式產生 NBEDij

C. 假設欲隱藏的圖案 H(i,j) 的像素值為白像素則 NBEDij 的像素值等於 TEDij 的像素值。

步驟三: 當兩張圖像重疊就可看出影藏的圖像。

Page 9: Hiding Visual Patterns in Halftone Images

Noise-Balanced Error Diffusion

NBED 這方法 Nb 值是使用者自行調整的,當其值越高,可隱約看出影藏的圖案,視覺效果就會降低,但將 TED 和 NBED 疊合時隱藏的圖案效果較佳,反之視覺效果會提升,但將 TED 和 NBED 疊合時隱藏的圖案效果較差。

且此方法無法在純黑或純白的圖像中隱藏圖案。

Page 10: Hiding Visual Patterns in Halftone Images

NBED 改善法為了能讓欲隱藏的圖

案,在疊合時更為清晰,我們則再將TED 和 NBED 疊合後用 overlapping algorithm 加以計算,使疊合後的背景圖像消除,透過人的視覺就更能看清楚隱藏的圖案。

Page 11: Hiding Visual Patterns in Halftone Images

ANBED1此種方法不需人工介入久可自行調整適合自己

的 Nb 值

Page 12: Hiding Visual Patterns in Halftone Images

ANBED1

步驟一:輸入一灰階圖像,使用傳統的誤差擴散法輸出第一張半色調圖像。

先計算 v(i,j) , v(i,j)= Pi(i,j)+ 誤差修正值 ( 即誤差擴散濾波器之輸出 ) 然後再把 v(i,j) 跟門檻值 t 做比對,若v(i,j)>t 則 Po(i,j)=255( 即輸出白點 ) ,反之 Po(i,j)=0( 即輸出黑點 ) ,此時算出新的 e(i,j) , e(i,j)= v(i,j)-Po(i,j) ,再把 e(i,j) 透過 h(i,j) 以加權的方式將其誤差值分散到鄰近的像素影像值,以此不斷重複直到像素值全部處理完。

上述步驟完成即可輸出 TED

      

Page 13: Hiding Visual Patterns in Halftone Images

ANBED1步驟二:產生第二張半色調圖像。   A . 將裕隱藏的的圖像用 3*3 的區塊切

割 B . 假設裕隱藏的的圖像位置 (i,j) 像素

值為黑且 TED 為白則使用 ANBED 1的方法來生成圖片,

   v(i,j)= Pi(i,j)+ h(i,j)-Nb

  e(i,j)= v(i,j)-Po(i,j)+Nb

    Nb 值是自動調整的, Nb 值公式為Nb(i,j)=(N/3*3)*NbMax , Nb=2N

Page 14: Hiding Visual Patterns in Halftone Images

ANBED1

C. 假設裕隱藏的的圖像位置 (i,j) 像素值和TEDij 像素值皆為黑像素,則用傳統的誤差擴散法來產生 ANBED 1圖像位置 (i,j) 的像素值

D. 假設裕隱藏的的圖像位置 (i,j) 像素值為白色像素,則 ANBED 1圖像位置 (i,j) 的像素值和 TEDij 像素值相同。

以上步驟完成後,輸出一張隱藏式決圖案的ANBED 1圖像。

Page 15: Hiding Visual Patterns in Halftone Images

TED

ANBED1

Page 16: Hiding Visual Patterns in Halftone Images

ANBED2

• ANBED1 雖然 Nb 值可自行調整,且所輸出的圖案效果較 NBED 好,不過不明顯而且方法和 NBED 相同,也無法在純黑或白的圖像中隱藏視覺圖案,因此提出了 ANBED2 來解決無法在純黑或白的圖像中隱藏視覺圖案的問題。

Page 17: Hiding Visual Patterns in Halftone Images

ANBED2

流程圖

Page 18: Hiding Visual Patterns in Halftone Images

ANBED2

步驟一: A. 輸入一張灰階圖像,將其用 TED 執

行,輸出一張 TED 圖像。 B. 將 TED 圖像以 2*2 個像素是為一個

區塊,針對全黑全白的區塊做調整,如果區塊黑色像素為 0/4 ,則檢查此區上方跟左側這兩塊區塊是否為 1/4 ,如不為輒將此區跨設定為 1/4 。

Page 19: Hiding Visual Patterns in Halftone Images

ANBED2

B. 如果區塊黑色像素為 4/4 ,則檢查此區上方跟左側這兩塊區塊是否為 3/4 ,如不為輒將此區跨設定為 3/4 ,依此將整張 TED圖調整完畢。

上敘步驟完成後,便可輸出一張像素調整後的半色調圖像 (TED*) 。

Page 20: Hiding Visual Patterns in Halftone Images

ANBED2步驟二:     A. 假設裕隱藏的的圖像位置 (i,j) 像素值

為白色像素,則產生的像素值和 TED* 相同。 B. . 假設裕隱藏的的圖像位置 (i,j) 像素值

為黑色像素,則選擇和 TED* 區塊黑色像素相反的位置,設為黑色像素。

以上步驟完成後,可輸出一張隱藏視覺圖案

Page 21: Hiding Visual Patterns in Halftone Images

ANBED2

Page 22: Hiding Visual Patterns in Halftone Images

ANBED3流程圖

Page 23: Hiding Visual Patterns in Halftone Images

ANBED3步驟一:    A. 輸入一張灰階圖像,使用 TED 產生 TED 圖

像。 B. 將 TED 圖像以 2*2 個像素是為一個區塊,

使用 ANBED2 的步驟一來調整全黑跟全白的區塊在用隨機調整的方式將這些區塊的黑色像素進行調整,產生 TED*

以上步驟完成後,可輸出一張半色調視覺圖案。

Page 24: Hiding Visual Patterns in Halftone Images

ANBED3

步驟二: 產生第二張半色調圖像的方法與

ANBED2 相同。步驟三: 將 TED* 和 ANBED3 重疊即可看到隱

‘ˊ的視覺圖案。

Page 25: Hiding Visual Patterns in Halftone Images

ANBED3

Page 26: Hiding Visual Patterns in Halftone Images

NBED 跟 ANBED1 比較

Page 27: Hiding Visual Patterns in Halftone Images

NBED 跟 ANBED 比較

Page 28: Hiding Visual Patterns in Halftone Images

NBED 跟 ANBED1 比較

重視覺上雖然差異不大但是 ANBED1 透過PSNR 的計算,會比 NBED 來的好。

Page 29: Hiding Visual Patterns in Halftone Images
Page 30: Hiding Visual Patterns in Halftone Images
Page 31: Hiding Visual Patterns in Halftone Images
Page 32: Hiding Visual Patterns in Halftone Images
Page 33: Hiding Visual Patterns in Halftone Images
Page 34: Hiding Visual Patterns in Halftone Images
Page 35: Hiding Visual Patterns in Halftone Images
Page 36: Hiding Visual Patterns in Halftone Images
Page 37: Hiding Visual Patterns in Halftone Images
Page 38: Hiding Visual Patterns in Halftone Images