【问题标题】:jpeg image compression : byte order issuejpeg 图像压缩:字节顺序问题
【发布时间】:2017-09-15 13:28:46
【问题描述】:

如果 jpeg 图像是 little-endian,那么它的格式会有什么不同?我在 jpeg 中有两种类型的图像 - 一种是 little-endian,另一种是使用 jpegsnoop 应用程序的 big-endian,但是在十六进制格式中,我发现一切都一样,完全没有变化。但是在压缩它时,我遇到了 little-endian jpeg 图像的问题。

请查看两个图像的应用标记 (0xFFE1)

图片1(有压缩错误)

JPEGsnoop 1.7.3 by Calvin Hass
  http://www.impulseadventure.com/photo/
  -------------------------------------

  Filename: [D:\New folder\PICT0001.JPG]
  Filesize: [2700154] Bytes

Start Offset: 0x00000000
*** Marker: SOI (xFFD8) ***
  OFFSET: 0x00000000

*** Marker: APP1 (xFFE1) ***
  OFFSET: 0x00000002
  Length          = 15358
  Identifier      = [Exif]
  Identifier TIFF = 0x[49492A00 08020000]

  ***Endian          = Intel (little)***

TAG Mark x002A  = 0x002A




/***********************************************************/
**image 2** (ok image )

JPEGsnoop 1.7.3 by Calvin Hass
  http://www.impulseadventure.com/photo/
  -------------------------------------

  Filename: [D:\Trailing_Project\OBSERVATION\12-09-2017\original jpeg\MFDC0058.JPG]
  Filesize: [1398695] Bytes

Start Offset: 0x00000000
*** Marker: SOI (xFFD8) ***
  OFFSET: 0x00000000


    *** Marker: APP1 (xFFE1) ***
      OFFSET: 0x00000002
      Length          = 3556
      Identifier      = [Exif]
      Identifier TIFF = 0x[4D4D002A 00000008]

      ***Endian          = Motorola (big)***

      TAG Mark x002A  = 0x002A

【问题讨论】:

  • 要么你有一个有效的 jpeg 要么你没有。标准中定义了 jpeg 的字节顺序!
  • 您说这两个文件以十六进制格式查看时看起来相同,但名为 jpegsnoop 的实用程序不同意?你到底是什么意思:关于这两个文件,我发现一切都一样。很难相信如果文件相同,它们的显示方式或压缩方式会有任何不同。
  • 这显然与 C 语言或图像处理无关。不要垃圾邮件标签!甚至不确定这是否算作编程问题。它是关于一种有据可查的数据格式。

标签: jpeg image-compression


【解决方案1】:

JPEG 中的所有整数都是 BIG ENDIAN(网络顺序)。如果您有小端整数,则它不是 JPEG。

【讨论】:

  • 我正在添加图像的两个 jpeg 起始细节。请查看它,它显示小端和大端,由“jpegsnoop”应用程序显示。注意:-我没有添加图像的完整细节.
猜你喜欢
  • 2013-02-22
  • 1970-01-01
  • 2011-11-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-16
  • 2010-12-18
  • 2016-04-30
相关资源
最近更新 更多