渐进式 JPEG 的完整缩略图需要多少字节?

2024-04-25

我正在尝试构建一个上传器,它分两步上传渐进式文件:

  1. 上传创建缩略图所需的最小字节数 (0-10%)
  2. 上传缩略图的其余字节。 (11%-100%)

我希望这样做可以更早地提供缩略图,而无需上传单独的缩略图。 拍摄使用以下命令创建的图像(3426398 字节)jpegtran -copy all -progressive -outfile progressive.jpg original.jpg然后取出前 350000 字节dd if=progressive.jpg of=thumb.jpg bs=1 count=350000我得到了一个可以使用的缩略图。

  • 原来的:https://dl.dropbox.com/u/5910/thumbtest/progressive.jpg https://dl.dropbox.com/u/5910/thumbtest/progressive.jpg
  • 缩略图:https://dl.dropbox.com/u/5910/thumbtest/thumb.jpg https://dl.dropbox.com/u/5910/thumbtest/thumb.jpg

有没有办法找出我必须传输多少字节才能获得所有行都可用的图像?因此只会损失图像质量?


渐进式 JPEG 图像由一系列“扫描”组成。每次扫描为每个 MCU 块提供逐渐更多的信息(更多 A/C 系数)。第一次扫描通常只是每个 MCU 的 DC 值。这恰好是获得 1/8 大小缩略图的完美信息量。

在 JPEG 文件中,每次扫描均以 FFDA 的 SOS(扫描开始)标记开始。为了了解完全保存第一次扫描需要多少数据,只需搜索第二次扫描开始的文件数据(第二个 FFDA 标记)即可得到答案。由于标记字节规则,2 字节序列 FF DA 只能是 SOS 标记。需要对值 FF 后跟 DA 进行编码的压缩数据必须编码为 FF 00 DA。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

渐进式 JPEG 的完整缩略图需要多少字节? 的相关文章

  • Jpeg 重新开始标记

    我制作了 jpeg 解码器 但没有实现重启标记逻辑 这就是为什么我的程序无法处理某些图像 例如使用 Photoshop 保存的图像 文件 gt 另存为 gt jpeg 的原因 我想实现重启标记逻辑 但是网上没有详细的解释重启标记逻辑如何工作
  • 如何在Android上更快地将RGB565转换为YUV420SP?

    我需要显示一张jpeg图片 并将其转换为YUV420SP 首先我使用SkBitmap解析jpeg并显示它 然后我使用下面的代码在android上将RGB565转换为YUV420SP 但是转换640 480 RGB565图片花费了75ms 所
  • C# 中无损图像压缩的最佳格式

    我需要单独保存视频帧并无损压缩它们 我正在寻找 c 中的最佳方法和格式 我所说的最佳是指实现简单性 良好压缩和合理处理要求之间的最佳平衡 我知道 PNG 是无损的 但它的压缩对于照片风格的图像来说不太好 我知道有无损 Jpeg 格式 但是这
  • 如何递归地使用JpegTran(命令行)来优化子目录中的所有文件?

    我在多个目录中有照片 我想使用 jpegtran 命令行工具 递归地遍历每一个 优化它 然后保存它 覆盖它 如果它们都在一个文件夹中我使用这个 for JPEG in jpg do jpegtran optimize JPEG gt JPE
  • 为什么 Google 建议使用 JPEG 2000 和 JPEG XR,而 Google Chrome 却不支持它们?

    谷歌推荐 以下一代格式提供图像 https developers google com web tools lighthouse audits webp 并特别提到了 WebP JPEG 2000 和 JPEG XR 但它不提供对其中 2
  • 如何构建 libjpeg 9b 的 DLL 版本?

    我想构建 libjpeg 9b 的 DLL 版本 根据文件here https msdn microsoft com en us library ms235636 aspx 看来我们需要添加一个预处理器 declspec dllexport
  • 从 TIFF 文件中提取 JPEG

    背景我有一个大的 TIFF 文件 它是用 JPEG 压缩的 TIFF 标准中的新压缩率为 7 并且是平铺的 我需要做的是将这些图块提取到单独的 jpg 文件中 我需要能够在不解压缩 重新压缩图像数据的情况下完成此操作 因为这将需要太多的计算
  • Android 将多个位图图块流式传输到单个 jpeg 文件

    我正在开发一个图像处理应用程序 它必须能够处理大图像 例如对于那些由相机拍摄的图像 我采用的方法是将源图像分割成多个适当大小的图块 以便这些图块可以作为位图单独加载到内存中 而不会超过可怕的 VM 限制 下一个图像操作是在逐个图块地进行 这
  • Django OS X 错误的 JPEG 库版本:库是 80,调用者期望 62 sorl.thumbnail

    我在 Mac 上本地使用 sorl thumbnail for django 并且在使用 PIL 时遇到了问题 但今天我终于成功安装了它 libjpeg 遇到了一些问题 我现在可以上传和使用图像 但我无法使用 sorl thumbnail
  • 如何向图像添加 JPEG 注释 (COM)?

    我正在尝试使用 WPF 将 JPEG 注释添加到图像文件 尝试下面的代码让我ArgumentOutOfRangeException 设置其他属性没有问题 using Stream read File OpenRead my jpeg Jpe
  • libjpeg 版本6b jpeg_stdio_src 与 jpeg_mem_src

    我正在使用 Libjpeg 版本 6b 在版本 8 中 他们有一个很好的函数 可以从内存中读取数据 称为jpeg mem src 不幸的是版本 6b没有这个功能 我可以使用什么来直接从内存读取压缩数据 我所看到的只是jpeg stdio s
  • 带有 base64 字符串的 HTML 图像标签(数据 URI)

    我大约每 50 200 毫秒从一系列 httprequests 获取 jpeg 图像的二进制数据 我将此数据转换为 base64 字符串 并使用 javascript 将字符串插入到 img 标记中 var img document get
  • 调用 GetObject() 后,Graphics.TBitmap 成功从 JPEG 帧解码导致空 TDibSection

    我正在使用 FastJpeg 库 jpegdec pas 将 JPEG 帧解码为 Graphics TBitmap 对象 解码工作正常 我使用 TBitmap SaveToFile 方法将位图打印到文件以进行目视检查 它看起来很棒 然后 我
  • 在 C# 中使用 jpegtran、jpegoptim 或其他 jpeg 优化/压缩

    我在网上商店收集了 100 种 也许是 1000 种 产品 其中每种产品都有 10 30 张图片 我需要在不损失图像质量的情况下尽可能优化图像的文件大小 我没有直接使用 jpegtran jpegoptim 或任何其他 jpeg 优化器 但
  • 如何在 Windows 上使用 ImageMagick 命令行?

    我的目标是确定我拥有的 jpeg 图像的压缩参数 据我了解这个答案 https stackoverflow com questions 2024947 is it possible to tell the quality level of
  • 如何在 Java 中从 JPEG 创建缩略图?

    有人可以帮忙编写一些用 Java 创建 JPEG 缩略图的代码吗 我对此很陌生 因此将不胜感激逐步的解释 Image img ImageIO read new File test jpg getScaledInstance 100 100
  • 测量 jpeg 中的空白

    我想测量白色 黄色的 jpeg 数量 在可以调整的容差范围内 我正在尝试开发一种质量控制工具来测量杏仁的缺陷 缺陷是棕色杏仁皮上的划痕 见下图 由于这些缺陷是白色 黄色的 我想要一种简单地将图像加载到 R 中并让它测量白色图像的量的方法 然
  • iPhone 中的 jpg 图像和 2x 图像

    我正在开发 iphone 应用程序并定位iOS 4 0或稍后 我正在尝试将图像添加到 UIImageView 并且图像位于jpeg格式 这就是我到目前为止所做的 UIImageView bgImageView UIImageView all
  • Http PUT 请求到 jpeg

    我收到了如下 HTTP PUT PUT photo HTTP 1 1 X Apple AssetKey F92F9B91 954E 4D63 BB9A EEC771ADE6E8 X Apple Transition Dissolve Con
  • 在 py2exe 编译的 Python 脚本中启用 QImage 的 JPEG 支持?

    我正在尝试通过 PyQt4 在 Python 脚本的 QImage 对象中使用 JPEG 图像 脚本本身工作完美 图像加载并且可以操作和渲染等等 但是 当我尝试使用 py2exe 编译 此脚本时 除了 JPEG 图像之外 一切正常 用等效的

随机推荐

  • int q = {1,2};特殊的初始化列表

    我遇到了下面的初始化 可以看出VS2012 显示一个错误 抱怨初始化程序太多 在海湾合作委员会看来 返回第一个元素作为值 为什么 GCC 支持这种特殊的初始化 include
  • Git 日志仅获取特定分支的提交

    我想列出仅属于特定分支的所有提交 通过以下内容 它列出了来自分支的所有提交 也列出了来自父级 主 的所有提交 git log mybranch 我发现的另一个选项是排除 master 可到达的提交并给我我想要的东西 但我想避免需要知道其他分
  • 如何交换“NSMutableDictionary”键和值?

    我有一个NSMutableDictionary我想交换值和键 即 交换值后成为键 并且其对应的键成为值 所有键和值都是唯一的 寻找就地解决方案 因为尺寸非常大 此外 键和值是NSString物体 NSMutableDictionary d
  • C# 中“dynamic”和“object”关键字有什么区别? [复制]

    这个问题在这里已经有答案了 谁能简单解释一下 C 中 dynamic 和 object 关键字之间的区别 object 让我们先快速浏览一下 object 关键字 我不会谈论太多 因为它从 C 1 0 就已经存在了 该关键字只不过是 Sys
  • 如何检查单个精灵帧期间的重叠情况?并在玩家与帧重叠的每个循环中仅从玩家生命值中减去 1?

    我有一个尖峰精灵 其循环中有 4 个帧 当玩家与尖峰精灵的第三帧重叠时 我想从健康变量中减去 1 目前 on 函数无法正确加载 我的游戏可以运行 但重叠功能根本无法运行 我编辑了收到的代码 并删除了我认为不需要的方面 测试了原始代码示例以检
  • Pygame 弹力球穿过地板下沉

    下面的代码会弹起一个球 但由于某种原因 球在完成弹跳后会穿过地面 有人知道为什么吗 代码的想法是一个球从左上角开始 然后下落并弹起 然后向上和向下移动 依此类推 直到它停止弹跳 但是当它停止弹跳时 它开始抖动并慢慢下沉到地面 我不知道为什么
  • 如何删除已发布的 wmi 架构?

    我已经发布了架构 并且不再拥有包含发布该架构的 wmi 提供程序的 dll 如何删除架构 如果您正在谈论其他问题中的程序集 您可以简单地使用 wbemtest exe 连接到根命名空间 枚举实例 按钮 超类 名称 命名空间 删除名为 Tes
  • Visual Studio 2013 Shell(独立)安装失败并出现错误 997:重叠 I/O 操作正在进行

    我正在尝试在 Windows 7 Pro 计算机上安装 Visual Studio 2013 Express for Desktop 我已经下载了 ISO 文件并在本地运行它 我运行安装程序并收到有关未安装某些先决条件 其中之一是 C 运行
  • 局部变量隐藏字段是什么意思?

    所以这只是我代码的一部分 整个程序编译并运行 但我不断在以 GameBoard myBoard this getGameBoard 开头的三行旁边看到 局部变量隐藏字段 我 我只是好奇这实际上意味着什么 以及从长远来看它是否对我的程序有任何
  • 从 .csv 文件读取值并将其转换为浮点数组

    我偶然发现了一个小编码问题 我基本上必须从 csv 文件中读取数据 该文件看起来很像这样 2011 06 19 17 29 00 000 72 44 56 0 4772 0 3286 0 8497 31 3587 0 3235 0 9147
  • 更改模态视图控制器的大小

    一旦用户点击一个按钮 我希望我的 modalViewController 在屏幕中间显示为一个小正方形 您仍然可以在后台看到原始视图控制器 我在 stackoverflow 上找到的几乎每个答案都使用故事板来创建模态视图控制器 但我已经找到
  • 如何追踪正在修改 DOM 中 div 内联样式的 JavaScript?

    我正在搞乱 WordPress 插件 当我从顶部向下滚动大约 50 像素时 div 标签的内联样式属性正在发生变化 我怎样才能找出造成这种变化的原因 有 Chrome 功能或开发工具可以指向它吗 Try the Chrome 开发工具时间轴
  • Vim:如何交换两个字符?

    有没有快速更改的命令 Cnotrol to Control While in normal mode with your cursor on top of the first character to swap you can type x
  • python 2.7编码解码

    我有一个涉及编码 解码的问题 我从文件中读取文本并将其与数据库 Postgres 中的文本进行比较 比较在两个列表内完成 从文件中我得到 jo 的 jo x9a 从数据库中我得到相同值的 jo xc5 xa1 common a for a
  • 在过滤器Javascript中添加两个条件

    我试图在过滤器中添加两个条件 但只有一个有效 第一个条件检查单词之间是否有空格 第二个条件检查words length 是否大于给定的最小长度 如果字符串是 hello world 然后我需要在分割它时得到 hello world 相反 我
  • 使用 jQuery 替换 XMLHttpRequest

    我对 JavaScript 库还很陌生 我想用 jQuery 替换我当前的代码 我当前的代码如下所示 var req function createRequest var key document getElementById key va
  • 这是 Oracle 可能的错误还是我遗漏了什么?

    数据库是 Oracle 10 2 0 1 0 64 位 在 Red Hat Enterprise Linux ES 第 4 版 Nahant 更新 8 上运行 在 SQL Plus 中 以下代码可以完美运行 var comment id n
  • 即使在客户端设置 Access-Control-Allow-Origin 或其他 Access-Control-Allow-* 标头后,仍会出现 CORS 错误

    我有一个使用以下命令生成的 Vue 应用程序webpack simple选项 我正在尝试做一个GET请求https api forismatic com api 1 0 method getQuote format json lang en
  • 如何在 R 中设置一个包含自身的类(对于树)?

    我需要一个可能包含也可能不包含自身的类 以用作 R 中的树 每个节点都有 Side Analytical Matrix MaxChi2 P 和 Sons 也是节点类型 第一次创建节点时 我需要子节点为空或 NULL 但后来我创建了它们并将它
  • 渐进式 JPEG 的完整缩略图需要多少字节?

    我正在尝试构建一个上传器 它分两步上传渐进式文件 上传创建缩略图所需的最小字节数 0 10 上传缩略图的其余字节 11 100 我希望这样做可以更早地提供缩略图 而无需上传单独的缩略图 拍摄使用以下命令创建的图像 3426398 字节 jp