§

วางรูปภาพหรือคลิกเพื่อเลือก

วางรูปภาพหรือคลิกเพื่อเลือก

JPEG, TIFF — HEIC ขึ้นอยู่กับเบราว์เซอร์ของคุณ สูงสุด 30 MB ต่อไฟล์

นักข่าวและช่างภาพสารคดีไทยที่ทำงานภายใต้แนวปฏิบัติจริยธรรมมักลบ EXIF ก่อนส่งให้สำนักข่าว เพราะ GPS tag ที่ฝังอยู่อาจเปิดเผยที่อยู่ของแหล่งข่าวหรือตำแหน่งของเจ้าหน้าที่ที่ทำงานลับ นักกฎหมายคุ้มครองผู้แจ้งเบาะแสแนะนำให้ลบ metadata ก่อนส่งอีเมลหลักฐานภาพถ่าย เพื่อไม่ให้ไฟล์เปิดเผยว่าภาพนั้นถ่ายที่ไหน การทำขั้นตอนนี้ในแท็บเบราว์เซอร์หมายความว่ารูปภาพต้นฉบับไม่เคยแตะเซิร์ฟเวอร์ระยะไกล

การลบ EXIF ทำงานอย่างไร

ไฟล์ JPEG คือลำดับของ segment ที่มี tag เรียกว่า APP markers เริ่มต้นทันทีหลังจาก two-byte SOI signature (0xFFD8) ข้อมูล EXIF อยู่ใน APP1 GPS อยู่ภายใน APP1 เดียวกันเป็น sub-IFD และ IPTC อยู่ใน APP13 เครื่องมือจะเดิน marker ทุกอัน ระบุที่มี metadata ลบออก และประกอบ payload ที่เหลือเป็น JPEG ที่ถูกต้องใหม่

  1. Parse APP markers. เครื่องมืออ่าน ArrayBuffer ดิบและเดิน JFIF marker sequence ทีละ byte แต่ละ two-byte marker tag ระบุประเภท segment: APP0 (JFIF header), APP1 (EXIF และ XMP), APP13 (Photoshop และ IPTC) เป็นต้น parser บันทึก offset และความยาว byte ของแต่ละ segment ในตารางเล็ก ๆ ก่อนแตะอะไร เพื่อให้ buffer ต้นฉบับยังคงอยู่ในหน่วยความจำ
  2. ถอดรหัส EXIF tags. APP1 payload เป็นโครงสร้าง TIFF ขนาดเล็กที่มี Image File Directories สี่ชุด: 0th IFD (image attributes หลัก), Exif SubIFD (exposure, lens, focal length, ISO), GPS IFD (latitude, longitude, altitude, direction) และ 1st IFD (embedded thumbnail) แต่ละ tag มี numeric code, data type (byte, short, long, rational, ASCII string) และค่า เครื่องมือ map numeric codes เป็นชื่อที่อ่านได้โดยใช้ tag dictionary ของ piexifjs แล้วแสดงในแผง metadata จัดกลุ่มตาม IFD
  3. Flag GPS tags. แต่ละ tag ใน GPS IFD จะถูกไฮไลต์ด้วย privacy badge สีแดง Latitude และ longitude ถูกจัดเก็บเป็น rational numbers สามค่า (degrees, minutes, seconds) บวก reference direction (N หรือ S, E หรือ W) เครื่องมือแปลงเป็น signed decimal degrees ด้วยความแม่นยำหกหลัก (~11 ซม. ที่เส้นศูนย์สูตร) และแสดงผลในแผง GPS พร้อมลิงก์ OpenStreetMap ไม่มีคำขอ tile ออกไป — ลิงก์ถูกสร้างในเครื่องและเปิดเฉพาะเมื่อคุณคลิก
  4. ลบ metadata. สำหรับไฟล์ JPEG เส้นทางเริ่มต้นใช้ piexifjs ลบ APP1 segment ทั้งหมด คืน dataURL ใหม่โดย pixel data ไม่ถูกแตะ เมื่อเปิด "คงการหมุน" เครื่องมือหมุนรูปภาพบน <canvas> เพื่อให้ตรงกับค่า Orientation tag ต้นฉบับ (1–8) ก่อนลบ เพื่อให้ผลลัพธ์ภาพตรงกับที่กล้องตั้งใจ — การหมุนถูก bake เข้า pixels แทนการพึ่ง metadata flag
  5. เส้นทาง Canvas re-encode. เมื่อปิด "คง ICC color profile" เครื่องมือ draw รูปภาพลงใน <canvas> ที่ซ่อนอยู่และเรียก canvas.toBlob('image/jpeg', quality) เส้นทางนี้ลบทุกอย่าง (EXIF, XMP, IPTC, ICC profile, thumbnail) และให้คุณควบคุม JPEG quality slider จาก 60 ถึง 100 ค่าเริ่มต้นคือ 92 ซึ่งให้ไฟล์ที่มีขนาดภายในไม่กี่เปอร์เซ็นต์ของต้นฉบับที่คุณภาพแยกไม่ออกจากแหล่งในรูปถ่ายส่วนใหญ่
  6. ดาวน์โหลดไฟล์ที่สะอาด. Blob ที่ทำความสะอาดแล้วถูกเสนอเป็นการดาวน์โหลดชื่อ <original-name>-stripped.jpg เครื่องมือ re-parse ผลลัพธ์และยืนยันว่า EXIF GPS section ว่างเปล่าก่อนลิงก์ดาวน์โหลดปรากฏ เพื่อให้แน่ใจว่าคุณไม่ได้รับไฟล์ที่ระบุว่า "ลบแล้ว" แต่ยังมี location tag อยู่ ไฟล์ PNG และ WebP ไม่มี EXIF อยู่แล้ว เครื่องมือแสดงข้อความ "ไม่พบ EXIF" และข้ามขั้นตอนการลบสำหรับรูปแบบเหล่านั้น

ทำไมต้องลบ EXIF ก่อนแชร์

  • ความเป็นส่วนตัวของตำแหน่ง. สมาร์ทโฟนฝัง GPS coordinates ที่แม่นยำในทุกภาพโดยค่าเริ่มต้น JPEG จากร้านอาหาร สำนักงาน หรือบ้านพักพาที่อยู่นั้นใน metadata ที่ความแม่นยำประมาณ 5 เมตร ลบ GPS tag ก่อนโพสต์บนโซเชียลมีเดีย ส่งอีเมลให้คนแปลกหน้า หรือแนบในตั๋ว support สาธารณะ และคุณลบ location fingerprint นั้นออกไปทั้งหมด
  • ความไม่เปิดเผยตัวตนในสิ่งพิมพ์. นักข่าว นักเคลื่อนไหว และผู้แจ้งเบาะแสลบ EXIF ก่อนส่งรูปภาพเพราะ serial number ของกล้อง, เวอร์ชัน firmware ของเลนส์ และ timestamp การสร้างสามารถ cross-reference กับรูปภาพที่เผยแพร่อื่น ๆ เพื่อระบุตัวช่างภาพ การลบ tags เหล่านั้นเป็นขั้นตอน operational-security พื้นฐานสำหรับใครก็ตามที่ byline ไม่ควรผูกกับอุปกรณ์เฉพาะ
  • ขนาดไฟล์เล็กลง. JPEG ทั่วไปจากสมาร์ทโฟนมี metadata 5 ถึง 15 KB ใน APP1 segment รวม embedded thumbnail 160 × 120 นั่นเล็กน้อยเมื่อเทียบกับรูปถ่าย 5 MB แต่การลบในชุดรูปภาพสินค้า 1,000 รูปประหยัด 5 ถึง 15 MB ต่อรอบอัปโหลด — มีประโยชน์เมื่อตัด product catalogue, stock-photo library หรือ Pinterest export
  • ลบ fingerprint กล้อง. ยี่ห้อกล้อง, model, เวอร์ชัน firmware, identifier เลนส์ และจำนวน shutter-actuation สร้าง fingerprint ที่สามารถเชื่อมรูปภาพข้ามการอัปโหลดต่างกันแม้เมื่อ EXIF ปกติดูไม่น่าสงสัย ถ้าคุณแชร์รูปภาพโดยไม่เปิดเผยฮาร์ดแวร์ (รายงาน bug, ส่ง competition, portfolio ไม่เปิดเผยตัวตน) Exif SubIFD คือที่ที่ข้อมูลระบุตัวตนนั้นอยู่ ลบออกและการเชื่อมโยงจะถูกตัดขาด

การใช้งานทั่วไป

การลบ EXIF เกิดขึ้นทุกครั้งที่รูปภาพเปลี่ยนมือและ metadata ที่มีอยู่อาจทำให้เกิดปัญหาสำหรับผู้ส่งหรือผู้ถ่าย

  • การอัปโหลดโซเชียลมีเดีย: แพลตฟอร์มส่วนใหญ่ลบ EXIF ฝั่งเซิร์ฟเวอร์อยู่แล้ว แต่การลบฝั่ง client ก่อนหมายความว่าพิกัดต้นฉบับไม่ถูกส่งไปยังเซิร์ฟเวอร์แพลตฟอร์มเลย ถ้า pipeline ของพวกเขา leak (หรือถูกออกหมายเรียก) GPS ต้นฉบับไม่อยู่ใน log เพราะไม่เคยถูกส่ง
  • งานข่าวและถ่ายภาพสารคดี: สำนักข่าวและ photo desk ต้องการ metadata ที่สะอาดเพื่อให้การอ้างอิง byline และข้อมูล caption ถูกควบคุมโดย desk ไม่ใช่กล้อง บรรณาธิการภาพถ่ายที่สำนักข่าวชั้นนำทั่วโลกล้วนรัน metadata-scrub step กับรูปภาพขาเข้าก่อนออกสายข่าว
  • ประกาศอสังหาริมทรัพย์และสินค้า: ตัวแทนอสังหาริมทรัพย์และผู้ขาย e-commerce มักอัปโหลดรูปถ่ายที่ถ่ายที่ที่อยู่ทรัพย์สินหรือคลังสินค้า การลบ GPS ก่อนอัปโหลดป้องกันการประกาศจากการเผยแพร่ที่อยู่ธุรกิจที่แม่นยำในไฟล์ — มีประโยชน์เมื่อคลังสินค้าเป็นที่พักส่วนตัวหรือทรัพย์สินยังมีผู้อยู่อาศัย

ตัวอย่างการทำงานจริง

JPEG 3.5 MB จาก iPhone รุ่นล่าสุดมี APP1 metadata ประมาณ 12 KB: พิกัด GPS พร้อม bearing และ altitude, timestamp การถ่ายลงถึงมิลลิวินาที, model กล้องและ identifier เลนส์, การตั้งค่า white-balance และ embedded thumbnail 160 × 120 หลังลบด้วยเส้นทาง piexif เริ่มต้น ไฟล์ได้ 3.488 MB เบาลง 12 KB เหมือนต้นฉบับทุก pixel และไม่มี location ping แผง GPS ด้านบนจะแสดงพิกัดที่ถูกลบออกอย่างชัดเจนก่อนที่คุณจะดาวน์โหลด

EXIF metadata คืออะไร?

EXIF (Exchangeable Image File Format) คือมาตรฐานที่กำหนดวิธีที่กล้องดิจิทัลและสมาร์ทโฟนจัดเก็บ metadata ภายในไฟล์รูปภาพ JPEG ทั่วไปจากสมาร์ทโฟนมียี่ห้อและ model กล้อง, focal length เลนส์, ความเร็วชัตเตอร์, ISO, ตำแหน่ง GPS ที่แม่นยำ (ลงถึงไม่กี่เมตร), timestamp การสร้าง และ embedded thumbnail เล็ก ๆ — ทั้งหมดนี้มองไม่เห็นในรูปภาพที่แสดง แต่อ่านได้โดยแอปพลิเคชันที่รองรับ EXIF ใด ๆ รวมถึง OS file browser และเครื่องมือแก้ไขรูปภาพส่วนใหญ่

ทำไมต้องลบ EXIF ก่อนแชร์รูปภาพ?

GPS tag เปิดเผยว่าถ่ายภาพที่ไหน ลงถึงไม่กี่เมตร แชร์รูปภาพโดยไม่ลบและคุณแชร์ตำแหน่งนั้นกับทุกคนที่ได้รับไฟล์ Serial number กล้องและ identifier เลนส์ยังสามารถ fingerprint ช่างภาพข้ามการอัปโหลดต่างกัน ซึ่งสำคัญสำหรับใครก็ตามที่เผยแพร่ภายใต้นามแฝง การลบนำ metadata เหล่านี้ออกก่อนที่ไฟล์จะออกจากอุปกรณ์ของคุณ

สิ่งนี้ส่งผลต่อคุณภาพภาพหรือไม่?

เส้นทาง piexif เริ่มต้นลบ APP1 segment โดยไม่แตะ pixel รูปภาพ ดังนั้นคุณภาพเหมือนต้นฉบับทุก bit เส้นทาง canvas re-encode (ใช้เมื่อปิด "คง ICC color profile" หรือเมื่อ "คงการหมุน" เปิดสำหรับรูปภาพที่หมุน) re-encode pixels ที่ค่า JPEG quality slider ที่เลือก — ตั้ง slider เป็น 95 หรือสูงกว่าเพื่อให้ผลลัพธ์ที่มองเห็นใกล้เคียงกับแหล่งในรูปถ่ายส่วนใหญ่

ไฟล์ HEIC จาก iPhone ล่ะ?

การลบ HEIC ขึ้นอยู่กับการรองรับ HEIC ดั้งเดิมของเบราว์เซอร์ Safari 13+ ถอดรหัส HEIC ดั้งเดิม Chrome และ Firefox ไม่รองรับ ถ้าเบราว์เซอร์ของคุณไม่สามารถแสดง HEIC ให้ใช้ตัวเลือก "Export as JPEG" ของโทรศัพท์ก่อน (ใน iOS Photos: Share → Options → Most Compatible) แล้วอัปโหลด JPEG ที่นี่ ขั้นตอนการลบในไฟล์ที่แปลงแล้วทำงานเหมือน JPEG อื่น ๆ

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