top of page
Writer's pictureyuwarat chanawongse

Chroma Subsampling - 4:4:4 vs 4:2:2 vs 4:2:0

Updated: Dec 15, 2022



โครมาซับแซมปลิง (Chroma Subsampling) คืออะไร?

Chroma subsampling คือ วิธีการในการบีบอัดข้อมูลสีในไฟล์วิดีโอ หรือสัญญาณวิดีโอ “chroma” ก็คือ “สี” นั่นเอง และ “subsampling” หมายถึง วิธีการและความถี่ในการสุ่มข้อมูลสีในระหว่าขั้นตอนการเข้ารหัส (encode) ระดับการบีบอัดข้อมูลจะขึ้นอยู่กับอัตราส่วน เช่น 4:4:4, 4:2:2 และ 4:2:0

อัตราส่วน 4:4:4 คือ ข้อมูลที่ไม่บีบอัดจริงๆ เนื่องจากปริมาณข้อมูลของสี เท่ากันกับปริมาณข้อมูลของแสง

อัตราส่วน 4:2:2 คือ ปริมาณข้อมูลสี เป็นครึ่งนึงของข้อมูลแสง เมื่อเปรียบเทียบกับอัตราส่วน 4:4:4

อัตราส่วน 4:2:0 คือ มีปริมาณข้อมูลสี เป็น 1 ใน 4 ของข้อมูลแสง เมื่อเปรียบเทียบกับอัตราส่วน 4:4:4



Chroma Subsampling Ratios



วิธีการ subsampling สีนี้ใช้ระบบการเข้ารหัสสีที่แตกต่างออกไป ซึ่งปกติ คือ YCbCr

ซึ่งทำให้สามารถแยกและเก็บข้อมูล luminace (brightness, ความสว่าง) จากสัญญาณวิดีโอได้ทั้งหมด ในหัวข้อนี้เราจะลงลึกเรื่องการบีบอัดสี (compressing colour) และอัตราส่วนข้างต้นจริงๆ หมายถึงอะไร



ทำไมต้องบีบอัดไฟล์

การมองเห็นของมนุษย์ละเอียดอ่อนต่อความแสง (luminace) และการเคลื่อนไหวมากกว่าสี (chroma) ทึ่จริงแล้วการ subsampling สีที่อัตราส่วน 4:2:2 (ครึ่งนึงของข้อมูลสีออริจินัล) แทบมองไม่เห็นด้วยตาเปล่าเมื่อเทียบกับอัตราส่วน 4:4:4 ที่ไม่บีบอัด ข้อมูลแสงจะเป็นตัวบรรจุรายละเอียดของภาพทั้งหมด ส่วนข้อมูลสีเป็นเพียงแค่การเติมสีเข้าไปในภาพ ลองนึกถึงวิดีโอหรือเครื่องรับโทรทัศน์ขาวดำที่บรรจุข้อมูลแสงเพียงอย่างเดียว นั่นแหละคือ ข้อมูลที่แสงมี

ดังนั้น เราจึงสามารถบีบอัดข้อมูลของสีในไฟล์หรือสัญญาณวิดีโอได้ เพื่อประหยัดเนื้อที่ในการจัดเก็บและส่งงานวิดีโอนั้น



4:2:2 และ 4:2:0 คืออะไร?

ในอดีตอัตราส่วน subsampling ของสีจะแตกต่างกับองค์ประกอบกับสัญญาณวิดีโอเล็กน้อย เพื่อไม่ให้สับสน เรามาดูขั้นตอนในการอ่านค่าอัตราส่วน subsampling สีที่อัพเดตแล้วดีกว่า

อัตราส่วน (เช่น 4:2:2) หมายถึง จำนวนพิกเซลที่บรรจุข้อมูลสีเฉพาะตัวในบริเวณพิกเซลที่กำหนดไว้ให้ สิ่งสำคัญคือต้องสังเกตว่า พิกเซลนั้นจะเก็บข้อมูลค่าแสงไว้ทั้งหมดและมีเฉพาะข้อมูลสี (chroma) เท่านั้นที่ถูกบีบอัด


เลขตัวแรกของอัตราส่วน หมายถึง ขนาดของ subsampling ในพิกเซลส์อ้างอิง

ตัวอย่างเช่น เลข ‘4’ คือ มี 4 พิกเซลส์ในพื้นที่ตัวอย่างมีความยาว 4 พิกเซลและสูง 2 พิกเซล เป็นแถวละ 4 พิกเซล 2 แถว (รวมทั้งหมด 8 พิกเซล) ขนาดของพื้นที่ตัวอย่าง คือ จุดอ้างอิงสำหรับการบีบอัดสี (compression) ในพื้นที่ที่กำหนด เลข 4 ตัวแรกจึงหมายถึงทั้งหมดของอัตราส่วน


ภาพแสดงการ subsampling สี


เลขตัวที่สอง บอกจำนวนพิกเซลที่บรรจุข้อมูลสีแถวบน ตัวเลขที่สามในอัตราส่วนจะบอกจำนวนพิกเซลที่บรรจุข้อมูลสีของแถวที่สอง

เช่น อัตราส่วน 4:2:2 ทั้งสองแถวจะบรรจุข้อมูลสี (chroma information) ทั้งสองแถวมีข้อมูลสี สองจากสี่ พิกเซล

อัตราส่วน 4:2:0 แถวบนจะมีข้อมูลสีสองจากสี่พิกเซลและไม่มีการสุ่มตัวอย่างข้อมูลสีที่แถวล่าง


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

เช่น ในอัตราส่วน 4:2:2 พิกเซลที่ไม่มีข้อมูลสีเป็นของตัวเองทั้งสองแถว จะใช้ข้อมูลจากพิกหน้าก่อนหน้าเป็นข้อมูลสีของตัวเอง

และในอัตราส่วน 4:2:0 พิกเซลแถวล่างที่ไม่มีข้อมูลสีใดเลย จะใช้ข้อมูลสีจากแถวบนแทน เห็นได้จากไดอะแกรมด้านล่างที่แสดงไว้ จากภาพนี้จะเห็นข้อมูลสีลดลงครึ่งนึงใน 4:2:2 และลดลงหนึ่งในสีเมื่อเป็น 4:2:2


4:4:4 Ratio (Uncompressed)



4:2:2 Ratio (50% Chroma)




4:2:0 Ratio (25% Chroma)




ดูข้อมูลเพิ่มเติมได้ที่

https://en.wikipedia.org/wiki/Chroma_subsampling

(This translated article is not for commercial)














1,396 views0 comments

Comments


bottom of page