Method of Digital-Audio Watermarking Based on Cochlear Delay Characteristics
เนื้อหาตอนนี้ สรุปจากบทความชื่อเดียวกันของ Masashi Unoki กับ Daiki Hamada ตีพิมพ์ใน International Journal of Innovative Computaing, Information and Control Vol 6 No 3 (B) ปี 2010

จากการทดลองที่ผมเคยเขียนถึงใน Judgment of Perceptual Synchrony Between Two Pulses and Its Relation to the Cochlear Delays ผลลัพธ์ดังกล่าวนั่นแหละครับคือหัวใจสำคัญของเทคนิคนี้ รูปด้านล่างแสดงสมบัติของ cochlea ที่เคยพูดถึงไปตอนที่แล้ว ขอสรุปสั้น ๆ อีกที เริ่มจากลักษณะทางกายภาพก้นหอย ท่อมีขนาดเล็กลงจาก base ไปยัง apex ดังรูปบนซ้ายที่สมมติว่าเรายืด cochlea ออกให้เป็นเส้นตรง (โปรดระลึกว่า สิ่งนี้ไม่สามารถทำได้ในทางกายภาพ) และ basilar membrane (BM) กว้างขึ้นจาก base ไปยัง apex โดย base ของ BM แคบและแข็งทื่อ (stiff) ทำให้มันอ่อนไหวต่อความถี่สูง ขณะ apex กว้างและคลายตัว (loose) กว่า อ่อนไหวต่อความถี่ต่ำ ของเหลวใน cochlea มีสมบัติบีบอัดได้ยาก (almost incompressible) พอกระดูก stapes กระทุ้งเข้ามาที่หน้าต่างวงรี ทำให้ BM ถูกกดลง (หน้าต่างวงกลมเคลื่อนที่พุ่งออกจาก cochlea) การสั่นของ stapes จึงทำให้ BM สั่น แต่ตำแหน่งที่ BM สั่นนั้นขึ้นอยู่กับองค์ประกอบทางความถี่ (รูปล่าง) ยิ่งความถี่ต่ำ ตำแหน่งของ BM ที่สั่นจะยิ่งเข้าใกล้ apex นอกจากนี้ ยังมีการหน่วงเวลา (delay) เพิ่มมากขึ้นเมื่อความถี่ต่ำลง เราจึงเห็นการสั่นของ BM ประหนึ่งคลื่นที่เคลื่อนที่จาก base ไปยัง apex และเรียกมันว่า traveling wave โปรดระลึกว่า traveling wave นี้ไม่ใช่คลื่นเสียงนะ


ผลการทดลองจากเปเปอร์ Judgment of Perceptual Synchrony บอกเป็นนัยว่าเสียงปกติธรรมดากับเสียง enhanced delay นั้นแยกได้ยากจากการฟัง รูปด้านล่าง ขวามือแสดงการหน่วงเวลาทางกายภาพ ทางซ้ายมือแสดงองค์ประกอบความถี่ต่าง ๆ ที่ปรากฏบน BM


ไอเดียคือ เราจะ delay องค์ประกอบความถี่ต่ำด้วยค่า delay ที่แตกต่างกัน 2 ค่าสำหรับบิต 0 กับ 1 ที่จะใช้ฝังลงในเสียงต้นฉบับ โดยที่ เสียงต้นฉบับกับเสียงที่เกิดจากการ delay ค่าที่หนึ่งและค่าที่สองนั้น ควรจะแยกความแตกต่างโดยการฟังได้ยาก เพราะสมบัติ cochlear delay ในการ delay องค์ประกอบความถี่ต่ำของเสียง ผู้เขียนใช้ IIR all-pass filter ที่ H(z) = (-b + z-1)/(1 - bz-1) เมื่อ b เป็นพารามิเตอร์ที่จะทำให้ group-delay characteristics ของ IIR all-pass filter แตกต่างกัน ผู้เขียนใช้ b = 0.795 เพื่อให้ได้ delay characteristics ที่จะใช้แทนการฝังบิต 0 และ b = 0.865 เพื่อให้ได้ delay characteristics ที่จะใช้แทนการฝังบิต 1 รูปด้านล่างแสดง block diagram ของการฝังข้อมูล


เราจะฝังข้อมูล s(k) ลงในสัญญาณเสียงต้นฉบับ x(n) เริ่มต้นด้วยการแบ่งเป็น frame แต่ละเฟรมจะผ่าน all-pass filter สองตัวเพื่อเลื่อนองค์ประกอบความถี่ต่ำของ x(n) ให้ช้ากว่าเดิมกันคนละค่า จากสมบัติ cochlear delay และผลการทดลองที่บอกว่า หูคนเราไม่สามารถแยกเสียงธรรมดากับเสียง enhanced delay ดังนั้น w0 w1 และ x(n) จึงควรที่จะไม่สามารถฟังแล้วแยกความแตกต่างได้ จากนั้น y(n) จะมีค่าเท่ากับ w0 หรือ w1 ขึ้นอยู่กับค่า s(k) ถ้า s(k) = 1 ⇒ y(n) = w1 ถ้า s(k) = 0 ⇒ y(n) = w0 นั่นเท่ากับเราได้ฝัง s(k) ลงไปใน x(n) กลายเป็น y(n) และ x(n) กับ y(n) เป็นเสียงที่แยกด้วยหูได้ยาก

(หมายเหตุ รูปข้างบน รูปที่แสดงอาจชวนสับสนค่า s(k) นิดหน่อย เพราะบนฝัง diagram เขียน s(k) = 010010101100110 แต่รูปคลื่นเสียงที่ผมใส่เพิ่มลงไปนั้น เป็นรูปจากอีกส่วนหนึ่งของการทดลอง s(k) = 10101010 ตามตัวเลขที่เขียนบนรูปคลื่น สีแดงคือส่วนที่ฝังข้อมูล 0 และสีเหลืองคือส่วนที่ฝังข้อมูล 1)

รูปด้านล่างแสดง block diagram ของการดึง s(k) ออกมาจาก y(n) และตัวอย่างเฟรม 4 กับ 5 สังเกตว่าการในดึง s(k) หรือ watermark bit นั้น ต้องอาศัย x(n) ด้วย เราเรียก watermarking แบบนี้ว่าเป็นแบบ non-blind วิธีการ เริ่มจากแบ่ง y(n) และ x(n) ออกเป็นเฟรมเหมือนตอนฝังข้อมูล (จะแบ่งเป็นเฟรมที่มีส่วนซ้อนทับกัน overlapped segments โดยใช้ฟังก์ชั่นหน้าต่างอันหนึ่ง) จากนั้นหาความต่างเฟสหลังแปลงฟูริเยร์ตามสมการแรกในกรอบ คำนวณ ΔΦ0 กับ ΔΦ1 แล้วเปรียบเทียบค่าของพวกมันเพื่อระบุค่า s(k)


ผู้เขียนได้ทดสอบสมบัติ inaudibility กับ robustness ของระบบ โดยการทดสอบ inaudibility มีทั้ง subjective และ objective test รูปด้านล่างแสดงผลลัพธ์จาก subjective evaluation ใช้วิธี ABX หมายถึง ให้ฟังท่อนเพลงยาว 10 วินาที 3 ครั้ง คือ A B และ X ต่อเพลง (ทดสอบทั้งหมด 4 ชนิดของเพลง) คลิปเสียงแต่ละครั้งห่างกันครึ่งวินาที ผู้เข้าร่วมทดสอบจะต้องบอกว่า X เหมือน A หรือ B มากกว่ากัน ในที่นี้ A และ B คือ เสียงต้นฉบับ x(n) และเสียงหลังจากฝังข้อมูล y(n) ขณะที่ X อาจจะเป็น x(n) หรือ y(n) นั่นคือ ถ้าเราแยกระหว่าง A กับ B ไม่ออก โอกาสที่จะทาย X ถูกเท่ากับ 50% และผลลัพธ์ดังรูปด้านล่างแสดงให้เห็นว่า อัตราตอบถูกอยู่ใกล้กับ 50%



Figure 11 แสดงการให้ ODG ตาม PEAQ พล็อตในโดเมนของบิตเรต ถ้าเกรดต่ำกว่า -1 หมายถึงคุณภาพเสียงแย่ (ODG เคยพูดถึงตอนแนะนำเทคนิค SVD), Figure 12 แสดงผล LSD ในโดเมนบิตเรตเช่นกัน ถ้าค่า LSD เกิน 1 หมายถึงเกิด distortion ในสเปกตรัมเกินกว่าจะรับได้, Figure 13 แสดง bit-detection rate ในโดเมนของบิตเรตเช่นกัน โดยตั้งเงื่อนไขว่า ถ้า detection rate ต่ำกว่า 75% หมายถึง เริ่มดึง watermark bit ออกมาด้วยค่าที่ผิดมากเกินไป จากทั้งสามรูป จะเห็นขีดจำกัดด้านบิตเรตของวิธีการนี้อยู่ที่ 256 bps



รูปต่อมาแสดง bit-detection rate เมื่อผ่านการโจมตี 3 แบบ resampling, quantization และ compression



ตารางเปรียบเทียบ robustness กับอัลกอริทึ่มอื่นเมื่อผ่านการโจมตีทั้ง 3 แบบข้างต้น




Create Date : 26 เมษายน 2556
Last Update : 26 เมษายน 2556 21:16:12 น.
Counter : 1739 Pageviews.

0 comments
สวัสดีปีใหม่ ๒๕๖๗ มาช้ายังดีกว่าไม่มา
(2 ม.ค. 2567 07:30:30 น.)
อุ้มสีมาทำบุญ ๙ วัด ในวันขึ้นปีใหม่ที่จ.อุบลราชธานี อุ้มสี
(3 ม.ค. 2567 19:10:02 น.)
ไม่ลอดช่องโหว่ ปัญญา Dh
(2 ม.ค. 2567 13:44:30 น.)
สวัสดีปีใหม่ Rain_sk
(1 ม.ค. 2567 21:38:33 น.)
ชื่อ : * blog นี้ comment ได้เฉพาะสมาชิก
Comment :
 *ส่วน comment ไม่สามารถใช้ javascript และ style sheet
 

Zol.BlogGang.com

ศล
Location :
กรุงเทพ  Thailand

[ดู Profile ทั้งหมด]
 ผู้ติดตามบล็อก : 85 คน [?]

บทความทั้งหมด