会员
周边
众包
新闻
博问
闪存
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
躺柒
博客园
首页
新随笔
联系
订阅
管理
随笔 - 787
文章 - 0
评论 - 17
阅读 -
49008
读数据压缩入门笔记09_多媒体数据压缩
多媒体算法
合集 - 读数据压缩入门(11)
1.
读数据压缩入门笔记
01_数据压缩导读
2023-05-29
2.
读数据压缩入门笔记
02_二进制和熵
2023-05-30
3.
读数据压缩入门笔记
03_VLC
2023-05-31
4.
读数据压缩入门笔记
04_统计编码
2023-06-07
5.
读数据压缩入门笔记
05_字典转换
2023-06-16
6.
读数据压缩入门笔记
06_上下文转换
2023-06-17
7.
读数据压缩入门笔记
07_自适应统计编码
2023-07-15
8.
读数据压缩入门笔记
08_评价数据压缩
2023-07-22
9.
读数据压缩入门笔记
09_多媒体数据压缩
2023-07-23
10.
读数据压缩入门笔记
10_通用压缩和序列化
2023-07-24
11.
读数据压缩入门笔记
11_读后总结与感想兼导读
2023-07-26
1. 压缩分类
1.1. 多媒体数据压缩(media-specific compression)
1.2. 通用压缩(general purpose compression)
2. 有损压缩算法
2.1. 为了使数据压缩得更小,可以牺牲多媒体的质量这样的数据转换
2.2. 针对特定的多媒体文件
2.2.1. 针对图像文件的算法就不太适用于音频文件
2.3. 针对内容类型
2.3.1. 灰度图像与全彩图像使用的压缩算法不同
2.4. 有损压缩工具通常会被首先应用,以减少数据的动态变化范围,从而为进一步的无损压缩做准备
2.5. 有损压缩工具其实有无限多种,选择哪一种取决于需要处理的数据类型、你的需求以及用户愿意容忍多大范围的失真
3. 一图胜千言
3.1. 图像是通过二维网格中的像素来显示的,这些像素表示的是图像本身的颜色
3.2. 一张1024×1024的RGB色彩模式的图片,其大小就有3 MB
3.3. 用ASCII码来表示字母的话,同样的空间能用来表示3145728个字母
3.4. 《霍比特人》一书只有95022个单词
3.4.1. 假定平均每个单词由5个字母组成,那么这本书大约有475 110个字母
3.5. 一张1024×1024的图片所占用的空间,可以用来存放约6本《霍比特人》这样篇幅的书
3.6. 当你考虑减少应用程序的数据所占用的空间时,图像应该是你最先关注的
3.6.1. 这是最容易实现的目标,而且常常是小的改变就能带来大的收获
4. 图像质量与文件大小
4.1. 图像压缩工具会提供一个整数参数,让你来决定图像的质量
4.2. 对于级别在75~100的JPG压缩,通常用户只能感受到很小的质量差别
4.3. 当质量值为75时对普通用户来说很多图片看着挺好,但是其文件大小只有质量值为95时的一半
4.4. 当质量值低于75时,图片看起来就变差很多,并且节省的空间也在逐渐递减
4.5. 导致图像压缩出现视觉问题的最常见的两种形式
4.5.1. 量化(quantization)
4.5.2. 区块化(blocking)
4.6. 评价图像数据指标
4.6.1. 峰值信噪比(peak signal-to-noise ratio,PSNR)
4.6.1.1. 表示一个信号的最大可能功率与影响它的表示精度的破坏性噪声功率的比值(以对数分贝为单位)
4.6.1.2. 这一度量的基础是压缩图片的均方误差(mean-square error,MSE)
4.6.1.2.1. PSNR与MSE之间,存在着反比关系
4.6.1.3. 原始图像的值与压缩后的值差别有多大
4.6.2. 结构相似性(structural similarity index,SSIM)
4.6.2.1. 在比较图像的压缩质量时考虑了人眼的感知情况
4.6.2.2. 通过比较源图像与压缩后图像的边缘相似性来实现的
5. 图像的尺寸
5.1. 将全分辨率的图像发送到设备上,在渲染前再调整大小,对开发人员来说,这样做肯定最省事
5.2. 缺点也很明显,我们将用户不需要(也不会看)的数据发给了他们
5.3. 发送合适大小的图像给用户
5.3.1. 发送的数据量更少了,这会更快,也会节省用户的套餐费用
5.3.2. 可以节省用户的设备空间
5.3.3. 无须再调整图像的大小
5.3.4. 解码会更快,加载会更快,显示也会更快
5.3.5. 向小屏幕发送小尺寸的图像
6. 正确的图像格式
6.1. PNG
6.1.1. 1995年由7名工程师组成,开发了PNG这种全新的、无专利权的数据格式
6.1.2. 便携式网络图像格式(Portable Network Graphics format,PNG)
6.1.3. 无损图像格式
6.1.4. 使用GZIP这样的压缩工具使数据量变小
6.1.5. 在图像保存为PNG格式之前,进行一些有损的预处理,来提高图像的压缩率
6.1.6. 你想压缩的是颜色比较少的图像,比如手绘的卡通画,那么PNG对应的无损压缩工具表现得会更好
6.2. JPG
6.2.1. 用于摄影图像的格式
6.2.2. 不支持alpha透明度
6.2.3. 分块过程只对摄影图像(即照片)适用
6.2.4. 大多数移动设备现在有系统可用的JPG编码和解码的硬件
6.2.4.1. 解码一个JPG文件需要的时间要比解码同样大小的PNG文件短很多
6.3. GIF
6.3.1. 第一步是有损的色彩数量压缩,将整个图像的颜色数量减少到只有256种
6.3.2. 第二步则是无损的LZW压缩
6.4. WebP
6.4.1. 2013年,谷歌和其他开源贡献者开发了一种新的图像编解码算法
6.4.2. 介于PNG和JPG之间的中间地带
6.4.3. 既支持无损模式和透明度,同时也支持有损模式
6.4.4. 在有损压缩模式下的高压缩率,也就意味着在解压时它要比JPG或者PNG格式慢一些
6.4.5. 即使某个算法在技术上是先进的,它还是会受到与此相关的同类技术产品偏见的影响,同时它也必须获得具有普遍怀疑精神的工程师的承认和认同
6.4.5.1. Mozilla的抵制
7. GPU纹理格式
7.1. 计算机不能直接利用压缩格式的数据绘制图像,而是需要先将压缩的数据加载到内存中,然后再解压为系统可以直接渲染的格式
7.2. 图像会被当作纹理传输到GPU中
7.2.1. 生成的每一个位图都会同时需要CPU和GPU内存
7.3. GPU能直接渲染的像素压缩格式是存在的
7.3.1. DXT、ETC和PVR就是几种这样的有损像素压缩格式
8. 光栅格式图像
8.1. raster format image
8.2. 当从远处观察图像时,像素之间的边缘就会消失,这样人的眼睛(被欺骗了)看到的就是平滑的颜色渐变。这种类型的图像通常被称为光栅格式图像
8.3. 可以(比较直接地)在屏幕上渲染
8.4. 光栅格式则适用于相片以及其他信息密集的图像
9. 矢量格式
9.1. SVG是一种常用的矢量图像格式
9.1.1. 无论源数据多大,有了它,我们就能用很少的内存来描述图像,并在客户端生成高质量的与分辨率无关的图像
9.2. 矢量格式适用于标志、技术图纸以及简单的图像样式
合集:
读数据压缩入门
好文要顶
关注我
收藏该文
微信分享
躺柒
粉丝 -
50
关注 -
0
+加关注
0
0
升级成为会员
«
上一篇:
读数据压缩入门笔记08_评价数据压缩
»
下一篇:
读数据压缩入门笔记10_通用压缩和序列化
posted @
2023-07-23 07:19
躺柒
阅读(
57
) 评论(
0
)
编辑
收藏
举报
刷新页面
返回顶部
登录后才能查看或发表评论,立即
登录
或者
逛逛
博客园首页
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
相关博文:
·
读数据压缩入门笔记08_评价数据压缩
·
读改变未来的九大算法笔记01_数据压缩
·
多媒体基础
·
图像处理技术之图像分辨率与压缩基本知识
·
初识图像处理技术:数字图像压缩 ----- 图像冗余、无损压缩、有损压缩、图像压缩标准
阅读排行:
·
一个费力不讨好的项目,让我损失了近一半的绩效!
·
清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
·
实操Deepseek接入个人知识库
·
CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
·
Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
公告
昵称:
躺柒
园龄:
2年1个月
粉丝:
50
关注:
0
+加关注
<
2025年2月
>
日
一
二
三
四
五
六
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
1
2
3
4
5
6
7
8
搜索
常用链接
我的随笔
我的评论
我的参与
最新评论
我的标签
合集
学信息系统项目管理师第4版(35)
学系统集成项目管理工程师(中项)(43)
读高性能MySQL(第4版)(21)
读发布!设计与部署稳定的分布式系统(第2版)(34)
随笔及总结(26)
读改变未来的九大算法(10)
读数据压缩入门(11)
读C#代码整洁之道(8)
读编程与类型系统(12)
读函数式编程思维(6)
读Java8函数式编程(9)
读Java实战(第二版)(20)
读Java性能权威指南(第2版)(31)
读SQL进阶教程(17)
选读SQL经典实例(23)
读SQL学习指南(第3版)(13)
读图数据库实战(11)
读程序员的制胜技(15)
读像火箭科学家一样思考(16)
读程序员的README(19)
读算法霸权(13)
读元宇宙改变一切(14)
读AI3.0(10)
读千脑智能(13)
读十堂极简人工智能课(9)
读人工不智能:计算机如何误解世界(10)
读算法的陷阱:超级平台、算法垄断与场景欺骗(20)
读所罗门的密码(21)
读天才与算法:人脑与AI的数学思维(26)
读人工智能时代与人类未来(19)
读AI未来进行式(12)
读AI新生:破解人机共存密码(18)
读人工智能全传(16)
读写给大家的AI极简史(7)
读零信任网络:在不可信网络中构建安全系统(21)
读软件开发安全之道:概念、设计与实施(17)
读软件设计的要素(7)
读构建可扩展分布式系统:方法与实践(16)
读数据湖仓(9)
读数据工程之道:设计和构建健壮的数据系统(34)
读数据质量管理:数据可靠性与数据质量问题解决之道(20)
读数据保护:工作负载的可恢复性(31)
读量子霸权(18)
读算法简史:从美索不达米亚到人工智能时代(15)
读当我点击时,算法在想什么?(7)
读DAMA数据管理知识体系指南(3)
更多
随笔档案
2025年2月(24)
2025年1月(31)
2024年12月(31)
2024年11月(30)
2024年10月(31)
2024年9月(30)
2024年8月(31)
2024年7月(31)
2024年6月(30)
2024年5月(31)
2024年4月(30)
2024年3月(31)
2024年2月(29)
2024年1月(31)
2023年12月(31)
2023年11月(30)
2023年10月(31)
2023年9月(30)
2023年8月(31)
2023年7月(31)
2023年6月(30)
2023年5月(31)
2023年4月(31)
2023年3月(36)
2023年2月(28)
2023年1月(26)
阅读排行榜
1. C#代码整洁之道读后总结与感想(599)
2. 选读SQL经典实例笔记01_检索和排序(369)
3. 读C#代码整洁之道笔记01_C#的编码标准和原则(311)
4. 读C#代码整洁之道笔记04_重构C#代码识别代码坏味道(309)
5. 学信息系统项目管理师第4版系列02_法律法规(268)
评论排行榜
1. 2023年1月随笔(11)
2. 2023年10月随笔之婚宴趣事多(2)
3. 读高性能MySQL(第4版)笔记12_查询性能优化(下)(2)
4. 读Java性能权威指南(第2版)笔记18_垃圾回收E(2)
推荐排行榜
1. 读高性能MySQL(第4版)笔记01_MySQL架构(上)(2)
2. 选读SQL经典实例笔记01_检索和排序(2)
3. 读软件设计的要素01概念(1)
4. 读AI未来进行式笔记01深度学习(1)
5. 读所罗门的密码笔记01_当人类遇见机器(1)
最新评论
1. Re:2023年10月随笔之婚宴趣事多
@gz4621 wondershare mindmaster...
--躺柒
2. Re:2023年10月随笔之婚宴趣事多
大神 思维导图用的什么软件制作的?
--gz4621
3. Re:读高性能MySQL(第4版)笔记12_查询性能优化(下)
@东围居士 建议读新版。...
--躺柒
4. Re:读高性能MySQL(第4版)笔记12_查询性能优化(下)
第4版相比第3版好像缩减了好多内容?楼主推荐第3版还是第4版
--东围居士
5. Re:读Java性能权威指南(第2版)笔记18_垃圾回收E
@屠炉 没有用第三方工具,手动的。 有几个平台直接支持markdown导入,只是要调整一下图片上传即可。...
--躺柒
点击右上角即可分享
支持DeepSeek的编程助手
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库