时代新宠儿——HEIF图像格式:节省50%空间
HEIF全称High Efficiency Image File Format(高效图像文件格式),是一种高效的图片封装格式,文件名通常为.heif或者.heic后缀。HEIF能够在保持画质不变的前提下缩减至少50%的文件体积,被誉为JPEG终结者。
使用iPhone的用户应该比较熟悉HEIF,苹果公司早在2017年全球开发者大会 WWDC 上详细介绍了HEIF的特点和优势,甚至将HEIF作为iOS系统默认的照片存储格式,并形容HEIF为“JPEG is ysy big but HEIF is brief."。(JPEG很大,HEIF却很精小)。在2018年Windows 10系统、Android 9系统以及三星Note9开始支持HEIF图像格式,今年发布的小米10系列、OPPO Find X2系列,也支持了HEIF图像格式,而对象存储COS近年来逐步集成了HEIF转码的高级图片压缩技术。
为什么HEIF如此备受关注呢?它和JPG相比优势点在哪里?
文件体积减少50%
HEIF采用了最先进的H.265视频编码技术,可以大幅度减少文件体积,在保证图像视觉效果不变的前提下,如下图对比,减少50%的图像大小。HEIF不单只比JPG有更小的体积,在较低体积时,JPG容易失真(如下图的蚊式噪声),而HEIF基本看不出失真。
画质更好,色深更高,颜色更丰富
JPG格式色深通常为8bit,而HEIF格式拥有最高16bit色深,大部分手机和电脑屏幕支持1600万色即8bit屏幕,HEIF格式则要求上亿色屏幕,这也是过去几年HEIF发展受限的原因。但近年来,随着图片拍摄性能的成倍增长,不少手机都支持10亿色屏幕的HEIF格式,如iPhone 12 Pro、小米骁龙855等,使图像可以展示更多的画面细节和色彩过渡。
记录内容更丰富,更灵活
相比JPG格式只能存储静态图像、EXIF和元数据等信息,HEIF格式还能存储景深、透明通道等,甚至可以存储动态图像、视频、音频等,所以有更丰富的后期处理空间。如HEIF支持透明图层、拍照的景深图像等都可以存储成数据作后期修改。随着手机性能越来越强大,可以在拍照时保存视频和录音,但因为文件容量和格式等限制,图像和音视频无法合成一个文件,而HEIF格式的照片、视频、音频可以封装成单一文件。
从90年代到现在,JPEG技术及标准被沿用了近三十年,虽然有许多工程化的优化,但核心思路及算法并没有本质的改变,也就是压缩率收益基本没太大提升。而这三十年间,数字图像从原来的240P、320P、480P,发展到现在动则1080P、2K、4K,图像数据翻了几十倍甚至上百倍,显然JPEG格式已经逐渐不能满足日新月异的图像需求。而HEIF早在2015年已开发完成,为什么直到近年来才开始展露头角,阻碍HEIF发展的关键问题之一便是算力。在HEIF提出的时代,常见的转码服务器,最多只能提供延时在200-300ms左右一张1080P图片的编码能力。在这种情况下,横向对比延时只在10ms级别的JPEG,HEIF可能就没那么香了。
但随着硬件能力的进步及工程算法的发展,HEIF在目前常见的服务器上已经缩减到150ms以内,考虑上动则几十核的服务器CPU,单台服务器的QPS已经可以达到120-500左右。如果考虑上GPU的硬件编码能力,单台异构服务器可能能达到上千QPS的能力。如今面临越来越强烈的HEIF诉求,也逐渐出现了包括ASIC、FPGA等实现,而这类实现已经可以将QPS提升到单卡轻松破千的水平。然而无论是购置专用服务器还是相应的硬件运维,对公司及企业来说,都是一笔不菲且风险较高的投资,且这还不说面临业务增长的横向扩容、冗余处理等问题,即使不考虑折旧率和运维等问题,如何充分发挥算力或最大化收益,依然是个艰巨问题。
因此,对于变革性的HEIF技术而言,最好的方法便是紧跟着上云的潮流,通过成熟的云服务供应商提供对应的PaaS能力,将运维、升级、扩容、冗余、均衡等问题统一交给可信可靠的大型云服务供应方。云服务商一方面有动则万核万卡的服务器阵列,提供高效稳定且可弹性伸缩的能力,另一方面由于云服务商本身接入海量的业务及客户,因此服务器采购、运营等成本最终均摊后到最后的使用者身上便可量化到极为廉价的按量收费或按次收费。这对云服务商和接入的公司企业来说,是一个双赢的局面。
截至目前,能提供成熟HEIF转码能力的云服务商仅有以腾讯云对象存储COS在列的寥寥几家。其中,在适用性、硬件投入、稳定性、性能等方面,COS的处理能力毫无疑问都是第一梯队。目前,以COS标准算力提供的HEIF转码图片压缩功能延时性能(不计算网络传输延时)大致如下:
如果采用COS更高主频的机器,响应的延时还会下降20%-40%,这还没考虑COS即将上线的硬件转码能力。
近年,越来越多的终端设备开始原生支持HEIF转码,如前面提到的苹果、小米等设备厂商,极大地推动了HEIF生态圈的完善,给软件开发者、业务方提供了便利,为HEIF格式的推广打下了坚实的基础。可能适配率只有10%、20%的时候,开发者、企业们仍然在纠结,但一旦超过50%,那不需要再做任何推广普及,在利益驱动下,只会一拥而上,拥抱HEIF。随着越来越高的适配率,以及终端高性能解码的支持,HEIF替代JPEG几乎是必然的趋势。
时代新宠儿——HEIF图像格式:节省50%空间的更多相关文章
- 人力节省 50%,研发效能提升 40%,阿里 Serverless 架构落地实践
作者 | 万佳 嘉宾 | 杨皓然(不瞋) 导读:云的下一波浪潮是什么?杨皓然称"是 Serverless".作为一名阿里老兵,他早在 2010 年即加入阿里云,曾深度参与阿里云飞天 ...
- 西安活动 | 4月20日「拥抱开源,又见.NET :云时代 • 新契机」
云计算日渐兴起,成为提升企业效率和生产力的最终解决方案,而云时代也为软件开发模式带来了翻天覆地的变化.可以说 .NET Core就是这个时代催生的产物.自2016年 .NET Core 1.0 发布以 ...
- 成本节省 50%,10 人团队使用函数计算开发 wolai 在线文档应用
作者: 马锐拉 我们的日常工作场景几乎离不开"云文档".目前,人们对于文档的需求再不仅仅是简单的记录,而扩展到办公协同.信息组织.知识分享等.在国内众多在线文档中,wolai 因为 ...
- JS高级---构造函数通过原型添加方法,原型的作用: 共享数据, 节省内存空间
JS高级---构造函数,通过原型添加方法,原型的作用: 共享数据, 节省内存空间 构造函数 //构造函数 function Person(sex, age) { this.sex = sex; thi ...
- Kubernetes 新时代的宠儿
本文首发于我的公众号 Linux云计算网络(id: cloud_dev),专注于干货分享,号内有 10T 书籍和视频资源,后台回复「1024」即可领取,欢迎大家关注,二维码文末可以扫. Kuberne ...
- iOS 影音新格式 HEIF HEVC
苹果在 iOS 11 的发布会上,推出了两种新的媒体格式 HEIF HEVC,都是为了保证画质的情况下,大大减少视频.照片的大小. 一.简介 HEVC全称 High Efficiency Video ...
- 推荐一款自己的软件作品[豆约翰博客备份专家],新浪博客,QQ空间,CSDN,cnblogs博客备份,导出CHM,PDF(转载)
推荐一款自己的软件作品[豆约翰博客备份专 豆约翰博客备份专家是完全免费,功能强大的博客备份工具,博客电子书(PDF,CHM和TXT)生成工具,博文离线浏览工具,软件界面美观大方,支持多个主流博客网站( ...
- 大数据量场景下storm自定义分组与Hbase预分区完美结合大幅度节省内存空间
前言:在系统中向hbase中插入数据时,常常通过设置region的预分区来防止大数据量插入的热点问题,提高数据插入的效率,同时可以减少当数据猛增时由于Region split带来的资源消耗.大量的预分 ...
- Cuckoo hash算法分析——其根本思想和bloom filter一致 增加hash函数来解决碰撞 节省了空间但代价是查找次数增加
基本思想: cuckoo hash是一种解决hash冲突的方法,其目的是使用简单的hash 函数来提高hash table的利用率,同时保证O(1)的查询时间 基本思想是使用2个hash函数来处理碰撞 ...
- 物联网时代-新基建-ThingsBoard调试环境搭建
前言 2020开年之际,科比不幸离世.疫情当道.经济受到了严重的损失.人们都不幸的感慨: 2020年真是太不真实的一年,可以重新来过就好了!国家和政府出台了拯救经济和加速建设的利好消息.3月份最热的词 ...
随机推荐
- 安装nginx-http-flv-module模块
简介 nginx-http-flv-module是什么 流程 注意事项 详细步骤 查看当前已经安装的nginx版本 下载对应版本的nginx源代码 下载nginx-http-flv-module模块源 ...
- Hive----基本概念
Hive 基本概念 1. Hive:由 Facebook 开源用于解决海量结构化日志的数据统计. 2. Hive 是基于 Hadoop 的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类 ...
- Flutter 实现骨架屏
什么是骨架屏 在客户端开发中,我们总是需要等待拿到服务端的响应后,再将内容呈现到页面上,那么在用户发起请求到客户端成功拿到响应的这段时间内,应该在屏幕上呈现点什么好呢? 答案是:骨架屏 那么什么是骨架 ...
- mmap映射类型
文件映射和匿名映射都是操作系统中对于内存映射的两种类型,主要应用于进程间的通信或者大量数据的处理. 文件映射,也就是内存映射文件,是把一个文件或者文件的一部分映射到进程的地址空间,它允许对文件进行随机 ...
- Diffusion系列-预备知识I -(一)
预备知识 范数 范数是一种函数,用来度量向量的大小1.在机器学习.信号处理等领域中,范数常常被用作正则化方法,通过对参数向量的范数进行约束,达到控制模型复杂度.防止过拟合等目的.常见的范数有0范数.1 ...
- 43.v-if和v-for的优先级
v-for 的优先级高 延申问题:v-for 和 v-if 为什么不能在一起使用 ? 会造成性能的浪费,因为v-for 的优先级高,所以每次渲染都会执行v-if 判断条件,浪费时间 :比如 渲染 10 ...
- Kali && Debain 防火墙规则
Kali && Debain 防火墙规则 查看防火墙规则 iptables -L -n -v iptables -L -n -v 增加防火墙规则:开放指定的端口 iptables -A ...
- 6.19 成都站云原生 Meetup,KubeSphere 和 APISIX 等你来!
以容器技术和容器编排为基础的云原生应用,被越来越多的企业用户接受和使用,并且在生产环境中使用容器技术的比例逐年增加.KubeSphere 作为一款面向应用的开源容器混合云,经过 3 年的发展和 10 ...
- 三步搞定 ARM64 离线部署 Kubernetess + KubeSphere
背景 随着我国对信息安全的愈发重视,国产化的趋势也越来越浓,包括国产操作系统.国产 CPU 等.由于 ARM 架构国产 CPU 在维持创新可信和先进性方面的潜在优势,其应用也将会越来越广泛. Kube ...
- KubeSphere 社区征稿说明
KubeSphere 社区一直致力于云原生技术的布道工作.通过组织线下 Meetup,线上的定期技术直播,KubeSphere 社区输出了颇多精彩的技术分享内容.此外,社区还产出了多篇优质的技术文章, ...