รูปภาพ JPEG (.jpg)

ISO/IEC มาตรฐาน

JPEG คือมาตรฐานการบีบอัดแบบสูญเสียข้อมูลที่มีการใช้งานแพร่หลายที่สุดสำหรับการถ่ายภาพดิจิทัลและภาพบนเว็บ โดยอาศัยประโยชน์จากความไวต่อแสงสว่าง (Luminance) ของดวงตามนุษย์ที่มีมากกว่าความไวต่อสี (Chrominance)

แปลง PNG เป็น JPG

ตัวแปลงจาก PNG เป็น JPG ฟรีในเบราว์เซอร์ แปลงไฟล์ได้ทันทีบนอุปกรณ์ของคุณ

บีบอัด JPG ออนไลน์

เป็นส่วนตัว - ไฟล์จะไม่ออกจากอุปกรณ์ของคุณ

ตรวจสอบไฟล์และข้อมูลเมตา

ระบบปฏิบัติการและเครื่องมือวิเคราะห์ไฟล์จะระบุไฟล์ JPG โดยการตรวจสอบลำดับไบต์ไบนารีส่วนต้น:

เลือกหรือวางไฟล์ที่นี่

เป็นส่วนตัว - ไฟล์จะไม่ออกจากอุปกรณ์ของคุณ

หรือวาง Ctrl+V
รับประกันความเป็นส่วนตัวโดยไม่มีการส่งข้อมูลผ่านเครือข่าย: อัปโหลด 0 ไบต์ไปยังเซิร์ฟเวอร์ภายนอก การประมวลผลทั้งหมดเกิดขึ้นภายในแซนด์บ็อกซ์ของเบราว์เซอร์ของคุณ

ลายเซ็นส่วนหัวระดับไบต์

ระบบปฏิบัติการและเครื่องมือวิเคราะห์ไฟล์จะระบุไฟล์ JPG โดยการตรวจสอบลำดับไบต์ไบนารีส่วนต้น:

ลายเซ็น HEX (OFFSET 0):

FF D8 FF

การแสดงผลรูปแบบ ASCII: ÿØÿ

มาตรฐาน: ISO/IEC 10918-1 / ITU-T T.81

ข้อมูลจำเพาะทางเทคนิค

สถาปัตยกรรมคอนเทนเนอร์สตรีมไบนารีคั่นด้วยมาร์กเกอร์ (คำนำหน้า 0xFF) ห่อหุ้มด้วยส่วนหัว JFIF หรือ EXIF
การบีบอัดการแปลงโคไซน์ไม่ต่อเนื่องแบบสูญเสียข้อมูล (DCT) ร่วมกับการเข้ารหัสเอนโทรปีแบบ run-length และ Huffman
การจัดลำดับไบต์Big-Endian สำหรับความยาวมาร์กเกอร์และตารางควอนไทเซชัน ส่วน Exif ใช้ได้ทั้ง Little-Endian (II) และ Big-Endian (MM)
พื้นที่สีsRGB, Adobe RGB, CMYK, Y'CbCr, ระดับเทา
ช่องสัญญาณและโครงสร้าง8 บิตต่อช่องสัญญาณ (ทรูคัลเลอร์ 24 บิต) หรือเกรย์สเกล 8 บิต
ขนาดสูงสุด65,535 x 65,535 พิกเซล (เลขจำนวนเต็มไร้เครื่องหมาย 2 ไบต์)
ความโปร่งใสไม่มี (ทึบแสงเท่านั้น ไม่รองรับช่องสัญญาณอัลฟา)
การสตรีมและแบบโปรเกรสซีฟการเข้ารหัส JPEG แบบโปรเกรสซีฟจะจัดเก็บรอบสเปกตรัมหลายรอบตั้งแต่ความละเอียดต่ำไปจนถึงความละเอียดสูง

ตารางเปรียบเทียบทางเทคนิค: JPG กับคู่แข่ง

คุณลักษณะทางเทคนิคJPG (ปัจจุบัน)WebPAVIFPNG
แนวทางการบีบอัดDCT แบบสูญเสียข้อมูล + การเข้ารหัสฮัฟแมนสูญเสียข้อมูล (VP8) และไม่สูญเสียข้อมูลสูญเสียข้อมูล (AV1) และไม่สูญเสียข้อมูลแบบไม่สูญเสียข้อมูลด้วย Deflate
ความโปร่งใสอัลฟาไม่รองรับช่องสัญญาณอัลฟา (ทึบแสงเสมอ)ความโปร่งใสอัลฟา 8 บิตอัลฟา 8 บิต / 10 บิต / 12 บิตอัลฟา 8 บิต / 16 บิตเต็มรูปแบบ
การถอดรหัสด้วยฮาร์ดแวร์การรองรับการถอดรหัส JPEG ด้วยฮาร์ดแวร์เฉพาะขึ้นอยู่กับชิปและอุปกรณ์การถอดรหัสฮาร์ดแวร์แพร่หลายใน SoC สมัยใหม่การถอดรหัสฮาร์ดแวร์ที่ขยายตัวอย่างรวดเร็วใน GPU สมัยใหม่การถอดรหัสความเร็วสูงที่อาศัยซีพียู
ประสิทธิภาพการบีบอัดเกณฑ์มาตรฐานที่ดีสำหรับภาพถ่ายอาจมีขนาดเล็กกว่า JPEG ผลลัพธ์แตกต่างตามภาพและตัวเข้ารหัสอาจมีขนาดเล็กกว่า JPEG ผลลัพธ์แตกต่างตามภาพและตัวเข้ารหัสไม่มีประสิทธิภาพสำหรับเนื้อหาที่เป็นภาพถ่าย
ความลึกของสีมาตรฐาน 8 บิตต่อช่องสัญญาณ (ทรูคัลเลอร์ 24 บิต)8 บิตต่อช่องสัญญาณขอบเขตสีกว้าง HDR 10 บิตและ 12 บิต8 บิตและ 16 บิตต่อช่องสัญญาณ

รูปแบบความเสียหายทั่วไปและคู่มือการกู้คืน Hex

โปรแกรมดูภาพแสดงข้อความ 'Premature end of JPEG file' หรือส่วนล่างของภาพเป็นสีเทาทึบหรือมีแถบสีเพี้ยน

สาเหตุหลัก: การดาวน์โหลดถูกตัดตอนหรือการเขียนข้อมูลลงหน่วยความจำไม่สมบูรณ์ ขาดมาร์กเกอร์ส่วนท้าย 0xFFD9 (EOI) และเพย์โหลดสแกนภาพ

การกู้คืน: เติมมาร์กเกอร์ 0xFFD9 ต่อท้ายสตรีมที่ถูกตัดตอน เพื่อให้ตัวถอดรหัสสามารถแสดงส่วนบนที่สมบูรณ์ของภาพถ่ายได้

สีของภาพปรากฏว่าเพี้ยนอย่างหนัก กลับด้าน หรือเป็นสีแนวไซเคดอลิก

สาเหตุหลัก: ส่วนหัวพื้นที่สี CMYK กลับด้าน หรือโปรไฟล์ ICC ที่ฝังไว้ไม่ถูกต้อง

การกู้คืน: แปลงพื้นที่สีจาก CMYK เป็น sRGB โดยใช้ ImageMagick ('magick broken.jpg -colorspace sRGB fixed.jpg')

ไฟล์ไม่สามารถเปิดได้และรายงานข้อความ 'Invalid marker found'

สาเหตุหลัก: ข้อมูลเสียหายภายในส่วนหัวตารางควอนทิไทเซชัน (DQT 0xFFDB) หรือตารางฮัฟแมน (DHT 0xFFC4)

การกู้คืน: แทนที่มาร์กเกอร์ส่วนหัวที่เสียหายด้วยตารางฮัฟแมนและควอนทิไทเซชันมาตรฐานของ JFIF ที่ดึงมาจากไฟล์ JPEG ที่สมบูรณ์

การวิเคราะห์ความปลอดภัยและเวกเตอร์การโจมตีตัวแยกวิเคราะห์

ความปลอดภัยของ JPEG เกี่ยวข้องเป็นหลักกับการรั่วไหลของความเป็นส่วนตัวในข้อมูลเมตา (EXIF) และบัฟเฟอร์ล้นในตัวถอดรหัส C รุ่นเก่า (libjpeg)

เวกเตอร์การโจมตีที่ทราบ

  • การเปิดเผยข้อมูลเมตาที่ละเอียดอ่อน: ส่วนหัว EXIF ที่ไม่ได้ถูกลบออกซึ่งมีพิกัด GPS, หมายเลขซีเรียลของกล้อง และภาพตัวอย่างขนาดเล็ก
  • การอ่านข้อมูลเกินขอบเขตบัฟเฟอร์และจำนวนเต็มล้นในตัวแยกวิเคราะห์ libjpeg รุ่นเก่าที่ทำให้มาร์กเกอร์รีสตาร์ท (RST) หรือสคริปต์สแกนโปรเกรสซีฟเสียหาย
  • ไฟล์โพลีกล็อต (Polyglot) ที่รวมส่วนหัว JPEG เข้ากับคลังข้อมูล ZIP หรือ RAR ที่รันโค้ดได้

แนวทางปฏิบัติที่ดีที่สุดในการป้องกัน: ลบข้อมูลเมตา EXIF และพิกัดตำแหน่ง GPS ทุกครั้งเมื่อเผยแพร่ภาพถ่ายของผู้ใช้เพื่อปกป้องความเป็นส่วนตัว ใช้ตัวถอดรหัสที่ปลอดภัยต่อหน่วยความจำสมัยใหม่ (เช่น image-rs ในภาษา Rust) หรือตัวถอดรหัส WebAssembly ที่อยู่ในแซนด์บ็อกซ์

ประวัติความเป็นมาและเหตุการณ์สำคัญ

1998มาตรฐานคอนเทนเนอร์ JFIF และ EXIF วางรากฐานให้กล้องดิจิทัลครองตลาด
1992ข้อกำหนดของ JPEG ได้รับการอนุมัติเป็น ISO/IEC 10918-1
1986ก่อตั้งกลุ่มผู้เชี่ยวชาญด้านการถ่ายภาพร่วม (Joint Photographic Experts Group) ภายใต้ ISO และ CCITT

ข้อได้เปรียบและจุดเด่นสำคัญ

  • ซอฟต์แวร์และอุปกรณ์ด้านภาพจำนวนมากรองรับการถอดรหัส JPEG แต่ความเข้ากันได้ขึ้นอยู่กับอุปกรณ์และแอป
  • อัตราการบีบอัดยอดเยี่ยม (10:1 ถึง 20:1) สำหรับภาพถ่ายโทนต่อเนื่อง
  • ขนาดเพย์โหลดเล็กพร้อมความสามารถในการเรนเดอร์แบบโปรเกรสซีฟ

ข้อจำกัดทางเทคนิคและข้อควรพิจารณา

  • การบีบอัดแบบสูญเสียข้อมูลทำให้เกิดอาร์ติแฟกต์จากการบีบอัด (การสั่นพ้องและลักษณะเป็นบล็อก) ตามขอบที่คมชัด
  • ไม่รองรับช่องสัญญาณความโปร่งใส
  • การสูญเสียคุณภาพจากการบันทึกซ้ำ (Generation loss) จะเกิดขึ้นทุกครั้งที่มีการคลายการบีบอัด แก้ไข และบันทึกไฟล์ใหม่

เกร็ดความรู้ทางเทคนิคที่น่าสนใจ

  • ภาพทดสอบ 'Lenna' สุดคลาสสิกที่ใช้พัฒนาการบีบอัด JPEG ถูกสแกนมาจากนิตยสาร Playboy ฉบับเดือนพฤศจิกายน 1972
  • การลดความละเอียดสีแบบ JPEG 4:2:0 ลดความละเอียดของสีลงครึ่งหนึ่งทั้งในแนวนอนและแนวตั้ง โดยแทบไม่ทำให้คุณภาพที่รับรู้ได้ลดลง
  • JPEG มาตรฐานทุกไฟล์จะเริ่มต้นด้วยมาร์กเกอร์ 0xFFD8 (เริ่มต้นภาพ) และสิ้นสุดด้วย 0xFFD9 (สิ้นสุดภาพ)

คำถามทางเทคนิคที่พบบ่อย

ทำไมการบันทึกไฟล์ JPEG หลายครั้งจึงลดคุณภาพของภาพลง?

JPEG เป็นรูปแบบการบีบอัดแบบสูญเสียข้อมูลที่ไม่สามารถย้อนกลับได้ ทุกครั้งที่คุณคลายการบีบอัดและบันทึก JPEG ซ้ำ ขั้นตอนการควอนทิไทเซชัน DCT จะทิ้งรายละเอียดเชิงพื้นที่ความถี่สูงและประมาณค่าบล็อกพิกเซลขนาด 8x8 ใหม่ ส่งผลให้เกิดสิ่งประดิษฐ์จากการ 'สูญเสียคุณภาพตามรุ่น' สะสม

JPEG แบบโปรเกรสซีฟคืออะไร และมีประโยชน์อย่างไร?

JPEG มาตรฐานทั่วไปจะถอดรหัสทีละบรรทัดสแกนจากบนลงล่าง แต่ JPEG แบบโปรเกรสซีฟจะเข้ารหัสข้อมูลภาพในรอบสเปกตรัมหลายรอบ ช่วยให้เบราว์เซอร์สามารถเรนเดอร์ภาพเบลอความละเอียดต่ำของภาพทั้งหมดได้ทันที และทำให้คมชัดขึ้นเรื่อยๆ ขณะที่ไบต์กำลังดาวน์โหลด

Chroma Subsampling (4:2:0 เทียบกับ 4:4:4) คืออะไร?

จอประสาทตาของมนุษย์มีเซลล์รูปแท่ง (ความสว่าง) มากกว่าเซลล์รูปกรวย (สี) JPEG ใช้ประโยชน์จากจุดนี้โดยคงความละเอียดความสว่างเต็มรูปแบบ (Y) ไว้ ในขณะที่ลดความละเอียดของสีลงครึ่งหนึ่ง (Cb, Cr) ทั้งในแนวตั้งและแนวนอน (4:2:0) ซึ่งช่วยลดข้อมูลดิบลง 50% ก่อนการบีบอัดโดยที่แทบไม่มีการสูญเสียคุณภาพที่สังเกตได้

ภาพ JPEG สามารถมีพื้นหลังโปร่งใสได้หรือไม่?

ไม่ได้ ข้อกำหนดมาตรฐานของ JPEG ไม่มีแนวคิดเรื่องช่องสัญญาณอัลฟา หากจำเป็นต้องมีความโปร่งใส คุณต้องแปลงภาพเป็น WebP, AVIF หรือ PNG

คู่การแปลงไฟล์ JPG ที่เกี่ยวข้อง

PNG เป็น JPG

การแปลงภาพแรสเตอร์ PNG เป็นรูปแบบ JPEG จะช่วยลดขนาดไฟล์โดยใช้การบีบอัดแบบสูญเสียข้อมูล ซึ่งทำให้รูปภาพโหลดเร็วขึ้นบนเว็บไซต์และใช้พื้นที่จัดเก็บน้อยลง

JPG เป็น PNG

การแปลงภาพแรสเตอร์ JPEG แบบสูญเสียข้อมูลให้เป็นภาพแรสเตอร์ PNG แบบไม่สูญเสียข้อมูล ช่วยป้องกันการเสื่อมของคุณภาพซ้ำซ้อนและรองรับความโปร่งใสของช่องอัลฟา

JPG เป็น WEBP

การแปลงภาพ JPEG เป็น WebP อาจลดขนาดไฟล์ที่คุณภาพภาพใกล้เคียงกัน แต่ผลลัพธ์แตกต่างตามเนื้อหาภาพและการตั้งค่าการเข้ารหัส

WEBP เป็น JPG

การแปลง WebP เป็น JPEG อาจช่วยให้ใช้ภาพนิ่งในซอฟต์แวร์ที่ไม่รองรับ WebP ได้ง่ายขึ้น JPEG ไม่เก็บความโปร่งใสหรือภาพเคลื่อนไหว

HEIC เป็น JPG

การแปลงภาพถ่าย HEIC เป็นภาพ JPEG จะเปลี่ยนรูปแบบกล้องเริ่มต้นของ Apple ให้เป็นไฟล์แรสเตอร์ที่ซอฟต์แวร์และเว็บเบราว์เซอร์รุ่นเก่าอ่านได้ทั่วไป

AVIF เป็น JPG

การแปลงภาพ AVIF เป็น JPEG อาจช่วยกับซอฟต์แวร์รุ่นเก่าที่ไม่รองรับ AV1 Image File Format

JPG เป็น AVIF

การแปลงภาพ JPEG รุ่นเก่าเป็น AVIF ช่วยลดขนาดไฟล์ได้อย่างมาก พร้อมรักษาคุณภาพของภาพในระดับสูงด้วยเทคโนโลยีเข้ารหัสวิดีโอสมัยใหม่

PSD เป็น JPG

แปลงไฟล์งาน Adobe Photoshop PSD ขนาดใหญ่ให้เป็นภาพ JPEG ขนาดกะทัดรัดที่เปิดดูได้ทั่วไป