懶惰之最|GitHub 實測

傳照片原檔前,先清掉附帶的定位:mat2 兩張成功、一張失敗實測

2026-10-28|專案:jvoisin/mat2|Markdown 版

重點摘要

  • 在人工植入資料的JPEG示範圖中,mat2清理後的作者、拍攝時間與定位欄位未再被ExifTool讀到。
  • PNG示範圖清理後,作者與註記欄位未再被讀到。
  • JPEG與PNG兩張副本均可解碼,尺寸均為1000×720,原檔仍保留。
  • 本次WebP示範圖在圖片讀取階段失敗,沒有產生乾淨副本。
  • 結論: 本次JPEG與PNG完成指定欄位清理,WebP失敗;欄位未再讀到不等於完全匿名。
  • 適合: 常傳原始圖片、願意使用命令列清理附帶資訊的人
  • 不適合: 需要手機一鍵操作或自動遮蔽照片畫面個資的人
實測項目 結果
JPEG 清理後指定欄位未再讀到,副本可開啟
PNG 清理後指定欄位未再讀到,副本可開啟
WebP 格式讀取失敗,未完成清理
圖片尺寸 兩張成功副本皆1000×720

要把照片原檔傳給剛認識的合作對象,你可能先檢查有沒有拍到門牌,卻漏看圖片裡的其他資訊。圖片除了看得到的畫面,也可能夾帶拍攝時間、作者與定位。mat2 的用途,就是盡可能移除這些附帶資料;它不是修圖遮臉工具,也不能保證完全匿名。

這次不用真實住家照片,而是自己畫一張房屋示範圖,再人工寫入 DemoOwner、時間與示範座標。座標不是任何人的實際拍攝紀錄。測試設備為 Mac mini M4 Pro(12 核、64GB),實際程式執行環境是 Debian 12、Python 3.11;測試日期為 2026-10-28。

先把工具準備好

受測的是 mat2 0.15.0,來源提交為 bfa850a4fca5e03dbe326b227827fa9fb41573d0。本次先用 Debian 套件裝好依賴,再執行 GitHub 原始碼裡的程式。需要系統套件安裝權限,以下命令適用 Debian,不是讓你直接貼到 Windows 終端機:

apt-get update
apt-get install -y mat2 python3-pil
git clone https://github.com/jvoisin/mat2.git
cd mat2
git checkout bfa850a4fca5e03dbe326b227827fa9fb41573d0
/usr/bin/python3 ./mat2 --version

官方也提供其他系統的安裝說明。本篇驗證的是上述版本與圖片流程;別把它當成每個系統、每種格式都已經測過。

先看,再產生副本

把要處理的照片複製到工作資料夾。本例檔名是 share.jpg 和 share.png。第一個命令只看附帶資訊;第二個才清理:

/usr/bin/python3 ./mat2 -s share.jpg
/usr/bin/python3 ./mat2 share.jpg share.png
exiftool -s -Artist -GPSPosition -DateTimeOriginal share.jpg
exiftool -s -Artist -GPSPosition -DateTimeOriginal share.cleaned.jpg
exiftool -s -Author -Comment share.cleaned.png

清理前,示範姓名與座標仍能被讀出

預設會另外產生 share.cleaned.jpg、share.cleaned.png,原圖還在。傳檔時要選清理後的副本,別又把原檔送出去。本次沒有加 --inplace,也不建議第一次使用就覆蓋唯一原件。

這次真的跑出什麼

示範圖片 植入的資訊 實測結果
JPEG 示範作者、時間、定位 指定欄位未再讀到;副本可開啟
PNG 示範作者、註記 指定欄位未再讀到;副本可開啟
WebP 示範作者、定位 讀取格式失敗,沒有乾淨副本

兩張成功副本都經 Pillow 重新開啟並完整讀取,尺寸維持 1000 × 720。這只驗證圖片仍能解碼與尺寸,沒有宣稱每個像素完全相同;官方提醒,預設清理可能重新壓縮圖片。

清理後的指定欄位沒有列出,原件與副本分開保留

WebP 的錯誤是 Couldn’t recognize the image file format,來自圖片讀取元件。這表示本次環境沒有成功讀進這張 WebP,不代表所有 WebP 都不能清。遇到同樣狀況先保留原件、看清錯誤與檢查依賴,不要把沒有輸出當成成功;本篇也沒有驗證安裝額外元件後就能解決。

怎樣才算能放心傳

我會把它用在寄出原始圖片前的多一道整理,尤其是不想順帶交出作者、時間或位置資訊時。但「指定欄位沒有讀到」不等於沒有任何其他資訊,官方也明講偵測有其限制。照片裡可見的門牌、臉或車牌仍要另外遮蔽,副本也應打開確認。

適合願意照命令操作、常傳原始圖片的人;需要手機一鍵處理、或期待自動遮掉畫面個資的人,這個流程不直接滿足需求。先用可丟棄的圖片試一次,再處理自己的檔案。

專案與操作說明:mat2 GitHub。授權為 GNU LGPL 3.0 或更新版本(以專案 LICENSE 為準)。

測試設備:Mac mini M4 Pro(12 核、64GB)。內容依實際執行結果撰寫,數據為撰寫當時的實測值。

← 所有實測