是否存在可用於獲取數據校驗和的數據結束標誌位/ exif/end-of-xmp/end-of-iptc/start-of-一部分的JPG/JPEG(和其他圖像格式)?校驗和JPEG數據(不是整個文件)
回答
MediaTags有JPEG,MP3,M4A等
獲得像素數據散列和的一種簡單方法是將JPEG轉換爲32Bit BMP或者PNG格式,並從中計算出哈希值。這將從JPEG中去除所有相關信息,甚至可以匹配具有不同編碼的JPEG,從而產生相同的像素數據。當然,如果您有它,也可以直接使用生成的BMP中的內存像素數據(即Windows有幾個API函數可以從任何支持的圖像類型中獲取它)。
你必須看看每種格式。對於JPEG,它看起來像the structure意味着您可以對以FFEn開頭的部分(例如0xFFE1)執行校驗和,並校驗每個標記之後指定的字節(它看起來像標記後面的長度,並且是大字節中的2個字節) endian格式)。有關更多詳細信息,請參閱here。
從我能告訴0xFFE?標記是元數據。你讀到的是什麼讓你覺得呢? – CoolAJ86 2009-12-29 21:15:16
它看起來像是元數據的邊界(例如,從FFE1開始獲取長度,那麼該長度是EXIF數據)。見http://www.media.mit.edu/pia/Research/deepview/exif。html#ExifMarker – 2009-12-30 14:10:25
對於jpeg和exif,我不知道其他人。
我的JPEG規範叫做JFIF(JPEG文件交換格式),它來自ISO 10918-1的附錄B,和所有ISO規範一樣,它需要仔細閱讀才能弄清楚如何將規範轉換爲數據結構。我認爲this更容易遵循
EXIF格式很像TIFF格式解析。每個塊都有一個類型和一個大小,所以你只是走塊,直到你到達圖像數據塊。它有一個指向圖像數據的指針(實際上是指向條帶的指針,但是我非常肯定你可以假設在第一條圖像數據到文件末尾的所有內容都是圖像數據)
exif格式有its own website
哪個標記是指向圖像數據的指針? – CoolAJ86 2009-12-29 21:18:47
由於您想對各種圖像格式進行此操作,因此您應該只使用通用圖像解壓縮庫並對未壓縮數據運行校驗和,這樣即使編碼相同
如果你想限制自己JPEG,你可以校驗SOI和EOI之間的數據。This answer可以稍微適合做你需要的東西。
校驗和支持,我認爲這個問題是與此相關的一個Compute hash of only the core image data (excluding metadata) for an image,https://stackoverflow.com/a/10075170/890106給出答案的元素,如果你正在尋找的代碼。
雖然它可能不適用於所有JPG變體:其中一些可以嵌入多個圖像(MPF/CIPA多圖片格式,更多信息請登錄http://www.sno.phy.queensu.ca/~phil/exiftool/TagNames/MPF.html),您可能仍然有一些元數據。另外,某些軟件在文件末尾以 - [0-9A-F] +的形式放置UID,並且不應讀取它。如果可能對校驗像素進行最安全的解決方案(儘管您仍然可以對方向,顏色配置文件等有影響)。
- 1. JPEG內置校驗和/指紋?
- 2. 什麼校驗和技術會讓我從它的部件的校驗和中計算整個校驗和?
- 3. 文件MD5校驗和
- 4. 7zip文件的校驗和
- 5. 甲骨文的Linux:元數據文件不匹配校驗
- 6. HDFS中的數據完整性:哪些數據節點驗證校驗和?
- 7. 根據數據扭轉校驗和
- 8. 我的5字節數據校驗和不是
- 9. NTFS是否支持每個文件的校驗和
- 10. 如何強制UDP數據的完整校驗和?
- 11. bash的校驗值是整數和範圍
- 12. 如何校驗整個文件夾結構?
- 13. Fletchers16校驗和適合小數據嗎?
- 14. SQLite數據庫的校驗和?
- 15. 兩個大文件的python校驗和驗證
- 16. 匹配的Tcl文件校驗和
- 17. CRC64文件校驗和PHP實現
- 18. 只使用校驗和傳輸文件?
- 19. 上傳文件時計算校驗和
- 20. 多頁tiff文件的校驗和
- 21. Altera FPGA .jic文件中的校驗和
- 22. 創建NLog文件校驗和
- 23. 校驗和比較可以指示不同的2個文件是多少?
- 24. 檢索ReFS完整性流校驗和
- 25. 我們應該整個數據包(標題,校驗和等)使用netmap嗎?
- 26. SQLite校驗其數據嗎?
- 27. svk校驗和不匹配
- 28. Tensorflow InvalidArgumentError無效的JPEG數據,大小4096,不是Jpeg文件0x00 0x05
- 29. Jquery校驗和
- 30. 校驗和檢測重複文件和重命名文件
解碼後的JPEG可能因解碼器中使用的舍入而異。你通常不會看到差異,但它會改變校驗和。 – 2009-12-28 21:28:12