การแปลงโคไซน์ไม่ต่อเนื่อง

การแปลงโคไซน์ไม่ต่อเนื่อง (อังกฤษ: discrete cosine transform - DCT) เป็นการแปลงออทอโกนัล ที่เป็นจำนวนจริง และมีฟังก์ชันโคไซน์ เป็นฐาน มีทั้งหมด 8 ชนิด คือ DCT-1 ถึง DCT-4 ความยาวคู่ (หรือ DCT-IE ถึง DCT-IVE) และ DCT-5 ถึง DCT-8 ความยาวคี่ (หรือ DCT-IO ถึง DCT-IVO)

การแปลงโคไซน์ ที่รู้จักกันมากที่สุด คือ DCT ชนิดที่สองความยาวคู่ ซึ่งมักจะเรียกสั้นๆว่า "การแปลง DCT" และ เรียกการแปลงกลับ ซึ่งเท่ากับการแปลง DCT-III ว่า "การแปลงกลับ DCT" หรือ "IDCT (Inverse DCT)"

การประยุกต์ใช้งาน แก้

DCT และ การแปลงที่สัมพันธ์ที่ใกล้ชิดกันคือ การแปลงไซน์ไม่ต่อเนื่อง(DST) นั้นมีการประยุกต์ใช้งานที่รู้จักกันดีใน การประมวลผลสัญญาณ และ การประมวลผลภาพ โดยเฉพาะอย่างยิ่งในการเข้ารหัสแบบแปลง(transform coding) เพื่อการบีบอัดข้อมูลแบบมีการสูญเสีย ทั้งตามมาตรฐานการบีบอัดภาพนิ่ง JPEG และ มาตรฐานการบีบอัดภาพเคลื่อนไหว MPEG ทั้งนี้เนื่องมาจากคุณสมบัติของ DCT ที่เรียกว่า energy compaction ที่ดี คือ สามารถอัดพลังงานส่วนใหญ่ของสัญญาณ โดยเฉพาะภาพ ไปไว้ในสัมประสิทธิ์ย่านความถี่ต่ำในโดเมนของการแปลง และ การคำนวณการแปลงในทางปฏิบัติสามารถกระทำได้อย่างมีประสิทธิภาพ

นอกจากการอธิบายด้วยเหตุผลข้างต้นแล้ว สาเหตุที่ การใช้ DCT เป็นที่นิยมในการบีบอัดข้อมูลสารสนเทศกว่าการใช้ DFT นั้น เป็นเพราะว่า เมื่อตัดสัมประสิทธิ์ของการแปลงที่มีค่าใกล้ศูนย์ออกไปเป็นจำนวนเท่าๆกัน ผลของการทำผกผันหรือ IDCT จะให้ข้อมูลสารสนเทศมีความใกล้เคียงกับข้อมูลต้นแบบ (orignal sequence) มากกว่า การตัดสัมประสิทธิ์จากการแปลง DFT

สำหรับ DCT-4 นั้นมักจะนิยมนำมาใช้เพื่อคำนวณ การแปลงที่มีความสัมพันธ์กันกับ DCT-4 เช่น Malvar Wavelet และ MDCT ซึ่งเป็นที่นิยมใช้ในการบีบอัดข้อมูลเสียง และด้วยเหตุที่ DCT-4 นั้นสามารถเป็น การแปลงผกผันได้โดยตรง (ไม่จำเป็นต้องคูณด้วยค่าชดเชยในบางรูปแบบของ DCT-1) จึงทำให้ลดความซับซอนในการออกแบบกระบวนการในทางปฏิบัติ

คำจำกัดความมาตรฐาน แก้

การแปลงในรูปเมทริกซ์ :

 

หมายเหตุ : ความยาวคี่(คู่) ของการแปลงในที่นี้หมายถึงส่วนความยาวของข้อมูล รวมกับส่วนขยายเสมือน ไม่ใช่ความยาวของตัวข้อมูลเอง ซึ่งในที่นี้ความยาวของข้อมูลสามารถเป็นได้ทั้งคู่ และคี่ ขึ้นกับ N

การแปลงความยาวคู่ แก้

การแปลงโคไซน์มาตรฐาน ความยาวคู่ ในรูปเมทริกซ์ ให้  

DCT-1 แก้

 

โดยที่  

DCT-2 แก้

 

DCT-3 แก้

 

โดยที่   สำหรับกรณี DCT-2, DCT-3

DCT-4 แก้

 

การแปลงความยาวคี่ แก้

การแปลงโคไซน์มาตรฐาน ความยาวคู่ ในรูปเมทริกซ์ ให้  

DCT-5 แก้

 

DCT-6 แก้

 

DCT-7 แก้

 

โดยที่   และ  

สำหรับกรณี DCT-5, DCT-6 และ DCT-7

DCT-8 แก้

 

การแปลงกลับ แก้

การแปลงกลับ DCT หรือ IDCT นั้น สามารถหาได้จาก ทรานสโพส ของการแปลง เนื่องมาจากคุณสมบัติ unitary ของเมทริกซ์การแปลง DCT ซึ่งการแปลงทั้งความยาวคู่ และ คี่ นั้นมีคุณสมบัติดังกล่าว เมทริกซ์การแปลงด้านล่างจึงใช้หมายถึงทั้งความยาวคู่ และ คี่

     
     
     
     

รายละเอียดอื่นๆ แก้

การแปลงโคไซน์ ไม่ต่อเนื่องนั้นถูกค้นพบครั้งแรกในปี ค.ศ. 1974 [1] โดยเวกเตอร์ฐาน DCT-2 ได้ถูกพัฒนาขึ้นมาเพื่อใช้ในการประมาณไอเก้นเวกเตอร์ ของเมทริกซ์โทปลิทซ์ (Toeplitz) โดยฐาน DCT นี้ จะมีค่าเข้าใกล้(asymptotically) ไอเก้นเวกเตอร์จริง(หรือ เวกเตอร์ฐาน Karhunen-Loève) ของเมทริกซ์โควาเรียนซ์ (covariance matrix) ของ first-order stationary Markov process เมื่อค่าสัมประสิทธิ์โครีเลชัน(correlation coefficient) มีค่าเข้าใกล้ 1 ดังนั้น ฐาน DCT นี้จึงเหมาะที่จะใช้แทนไอเก้นเวกเตอร์ซึ่งเป็นฐานที่ดีที่สุดในการบีบอัดสัญญาณประเภทนี้

ความสัมพันธ์ของ DCT ทั้ง 8 ชนิด แก้

เช่นเดียวกับการแปลงฟูริเยร์ไม่ต่อเนื่อง(DFT) DCT นี้ก็เป็นการวิเคราะห์ฮาร์โมนิก เพียงแต่ฐานที่ใช้ในการวิเคราะห์นั้นเป็นจำนวนจริง [2]ได้แสดงถึงชุดที่สมบูรณ์ทั้ง 8 ของ DCT และ DST โดยการวิเคราห์ฮาร์โมนิกที่เป็นจำนวนเต็ม(integer harmonics) และ ครึ่งจำนวนเต็ม(half integer harmonics)ของสัญญาณ

ในลักษณะเดียวกับที่ เมทริกซ์เซอร์คิวแลนท์(circulant matrix) ซึ่งมี เมทริกซ์ DFT เป็นไอเก้น เมทริกซ์ที่มีเมตริกซ์ DCT เป็นไอเก้นนั้นจะอยู่ในรูปของ เมทริกซ์โทปลิทซ์(Toeplitz matrix)+เมทริกซ์เฮงเคิล(Hankel matrix)(หรือ ใกล้เคียง)และคูณด้วยค่าสเกล ซึ่งแทนการกระทำ คอนโวลูชันแบบสมมาตร(symmetric convolution) จาก การคอนโวลูชัน และ เงื่อนไขความสมมาตรที่ขอบ (ในลักษณะเดียวกับ เซอร์คิวแลนท์เมทริกซ์ แทนการกระทำคอนโวลูชันเป็นวงรอบ(circular convolution)) ค่าสเกลนั้นใช้ในการจัดเมทริกซ์ให้อยู่ในรูปสมมาตร เพื่อจะได้ไอเก้นเวกเตอร์ ที่ออทอโกนัล :ดูเพิ่ม [4]

ภาพด้านล่างเป็นการแสดงสัญญาณเสมือน(ซึ่งเป็นการต่อสัญญาณดั้งเดิมออกไป เป็นสัญญาณคาบที่มีความยาวไม่จำกัด) ของสัญญาณดั้งเดิมซึ่งมีความยาวจำกัด N(จาก 0 ถึง N-1) และเป็นไปตามเงื่อนไขขอบ ที่ จุด (midpoint) หรือ กึ่งกลางระหว่างจุด (meshpoint) โดยเงื่อนไขขอบด้านซ้าย หรือ จุดต้น นั้นจะเป็นเงื่อนไขความสมมาตร และ เงื่อนไขขอบด้านขวา หรือ จุดปลาย นั้นจะเงื่อนไขเพื่อสร้างสัญญาณคาบ(เป็นได้ทั้ง สมมาตร(symmetry) และ สมมาตรกลับ(antisymmetry)) ซึ่งจะมีทั้งหมด 8 รูปแบบดังแสดงในรูป

สัญญาณเสมือน ซึ่งเป็นไปตามเงื่อนไข ขอบซ้าย(สมมาตร) และ ขอบขวา(คาบ)-ดัดแปลงจาก ภาพ2ใน[3]
ชนิด ความยาวคาบคู่ ชนิด ความยาวคาบคี่
DCT-I
 
DCT-V  
DCT-II DCT-VI  
DCT-III DCT-VII  
DCT-IV DCT-VIII  

อ้างอิง แก้

  • N.Ahmed, T. Natarajan, K. R. Rao, "Discrete cosine transform," IEEE Trans. Comput., C-23(1974), pp. 90-93.
  • Z. Wang and B. Hunt, "The discrete W-transform," Appl. Math. Comput., 16 (1985), pp. 19-48.
  • S. A. Martucci, "Symmetric convolution and the discrete sine and cosine transforms," IEEE Trans. Sig. Processing, SP-42, 1038-1051 (1994).
  • G. Strang, "The Discrete Cosine Transform," Siam Review, vol. 41, no.1, pp. 135-147.

แหล่งข้อมูลเถื่อน แก้