Netflix选择AVIF作为下一代图片压缩技术

简介: Netflix在情人节当天公开AVIF作为下一代图片压缩技术,同其宣布在Android端采用AV1视频编解码格式仅相隔一周时间。

编译 / Coco Liang


技术审校 / 蒋默邱泽


原文https://netflixtechblog.com/avif-for-next-generation-image-coding-b1d75675fe4


Netflix在今年情人节当天公布了下一代图片压缩编码格式——AVIF,采用AVIF替换目前正在使用的JPEG编码格式已经被Netflix正式提上了日程。


Netflix在自己的科技博客中表明,能够替代JPEG的图片编码格式必须满足以下三个条件:


  1. 可以被广泛的支持;


  1. 有更高的压缩效率;


  1. 有更多的特性。


通过对比其他几种同样为人熟知的图片编码格式:JPEG2000、WebP与HEVC,我们发现,AVIF在满足Netflix以上三个要求的同时,相比其他图片格式也确实是个better choice。


曾经JPEG 2000在标准推出并具体实现之后,并没有得到很好的市场推广(对比Google大力推崇的WebP、苹果IOS系统支持的 HEVC)。JPEG2000在数字影院、指纹鉴别等小范围内流行,但明显缺乏更加强大、大众化、商业化的软件生态支持,故而并没有实现真正的落地普及。


WebP 源于VP8,是Google 2010年开源出来的图像编解码算法,可以说是“含着金汤匙出生”,YouTube、Gmail、Google Play均应用WebP图片格式。2018年之后,浏览器Edge、Firefox也宣布支持WebP格式。但就目前来说,WebP仍只被看作PNG更高效快捷的替代方案,而且Google的一些非开源的技术总是能神奇地阻碍图片的分享。


HEVC是AVC(H.264)的后继产品,性能优秀,你可以在Apple设备上将HEIF玩出各种花样。可惜的是,这支大佬的“独苗”存在专利费用。HEIF是存储HEVC编码的静态图像的容器,类似的存储AV1编码的静态图像的容器就是本篇的主角——AVIF。


AVIF由开源组织AOMedia开发,Netflix、Google与Apple均是该组织的成员。AVIF是基于AV1的新图像格式,使用HEIF作为容器和AV1帧。


在图像编码格式领域, MPEG已将与编解码器无关的通用图像容器格式标准化,即ISO / IEC 23000-12标准(又称HEIF)。 HEIF已用于存储最著名的HEVC编码图像(以其HEIC变体形式),但也能够存储AVC编码图像甚至JPEG编码图像。


AOMedia最近扩展了此格式,以指定其AVIF格式的AV1编码图像的存储。


而基本的HEIF格式提供了图像格式所期望的所有典型功能,例如:支持任何图像编解码器,使用有损或无损模式进行压缩的能力,支持各种采样率和色彩深度等。此外,HEIF格式还允许一系列动画帧的存储(提供了人们期待已久且十分高效的GIF的的替代方法),以及指定Alpha通道的能力(在UI中得到了广泛使用)。此外,由于HEIF格式借鉴了下一代视频压缩的经验,因此该格式允许保留元数据,例如色域和高动态范围(HDR)信息。


Netflix目前已经开源了一个基于Docker的框架,用于比较各种图像编解码器。主要功能包括:


  1. 使用Python 3进行代码编排(具有并行化)和采用新一代注释


  1. 易于重现结果


  1. 轻松控制目标质量范围


最为人熟知的JPEG已经有近27年的历史了,在技术快速更迭的移动互联网时代,这个数字的使用年限已经可以被称为元老级别了。虽然JPEG已经非常成熟,但仍存在硬件限制、实际使用过于复杂、只支持8bit、解码过程相对复杂等劣势,且不适用于流量费用昂贵的当下。


Netflix官方提供了几组图,对比了JPEG与AVIF图片格式的实际效果。图片都被转换成了无损的PNG格式,以便于明显的区分。

image.png

原始图像

image.pngJPEG图片,图片大小20,429 bytes

image.png

AVIF图片,图片大小19,788 bytes


在第一组图片中,可以明显看出JPEG格式在天空,池塘以及屋顶上有非常明显的块状效应。尽管屋顶上有些模糊和纹理丢失,但AVIF呈现的效果要好很多,至少不会出现块阴影,且此时的AVIF有约59倍的压缩性能。

image.png

JPEG图片,图片大小40,276 bytes

image.png

AVIF图片,图片大小39,819 bytes


这一组图的图片质量都有所提升,两种编码的图片大小仍然接近。JPEG格式在天空中仍然有肉眼可见的遮挡伪像,并且在多个位置出现色度渗漏。而AVIF图像与原始图像相当,这里的压缩系数为29倍。


同时,Netflix还提供了自家原创剧集的海报图片,对比了JPEG和AVIF图片编码格式在实际应用中有何不同。

image.png

原始图像

image.png

JPEG图片,图片大小80,562 bytes

image.png

AVIF图片,图片大小80,432 bytes


从这组图中可以发现,JPEG编码下,图片中存在可见的条带、块状效应,而AVIF格式看起来则非常接近原图。


尽管AVIF提供了出色的压缩效率,但它仍处于早期部署阶段。AOMedia正在开发一个名为libavif的开源库,该库可以对AVIF图像进行编码和解码,目的是简化图像社区中软件的集成。类似的集成已经在各种浏览器(例如Google Chrome)中开始应用。同时,dav1d团队也在不断努力,希望AVIF图像解码尽可能快地落地。


毕竟,让一种编码标准通行起来从来都不是一朝一夕的事情,技术方向要考虑压缩比、效果、速度、计算复杂度,推广方面要考虑软硬件生态支持、专利障碍、开源实现、市场营销等等。


一周前,Netflix宣布了将在在Android上采用AV1视频编解码格式,现在他们也将很快在Android上测试AVIF图像格式。


与此同时,Netflix也正在为UI处理HDR图像,并计划使用AVIF对这些HDR图像资产进行编码,尝试使用JPEG 2000作为HDR图像的压缩格式,期待AVIF可以提供更出色的压缩效果。


在全球互联的时代,图片格式越来越被希望是一个灵活开放的容器,私有技术也越来越被看作是开源的对立面。要真正推广并普遍应用AVIF,可以说是道阻且长,但一个开放的图片格式环境,却永远都值得期待。


相关链接


————————————————

版权声明:本文为CSDN博主「LiveVideoStack_」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/vn9PLgZvnPs1522s82g/article/details/104404148


「视频云技术」你最值得关注的音视频技术公众号,每周推送来自阿里云一线的实践技术文章,在这里与音视频领域一流工程师交流切磋。

阿里云视频云@凡科快图的副本.png

相关文章
|
传感器 监控
基于STM32的智能公交站牌系统设计与实现
基于STM32的智能公交站牌系统设计与实现
407 0
|
Python
使用Python将文本转换成语音?
使用Python将文本转换成语音?
647 0
|
程序员 数据库 开发者
值得收藏!如何快速画出一幅漂亮的架构图
这篇文章总结了常用的架构图类型,可以借鉴笔者提供的模板,快速地产出符合业务需要的架构图。
162664 95
|
5月前
|
调度 Python
Python基于Fastapi与APScheduler的应用定时任务
基于FastAPI与APScheduler实现定时任务调度,通过lifespan管理生命周期,每分钟执行一次反馈任务,结合Uvicorn启动服务,构建高效异步任务处理系统。
334 3
|
8月前
|
存储 缓存 前端开发
《解锁前端数据持久化与高效查询:IndexedDB深度剖析》
本文深入剖析了前端开发中IndexedDB在数据持久化存储与高效查询方面的核心价值。首先对比传统存储方案的局限,凸显IndexedDB在大容量、复杂数据类型支持上的优势;接着阐述其异步操作、事务支持、索引系统、版本控制等核心特性;随后详解数据持久化策略,包括结构设计、读写更新、清理机制;还介绍了高效查询技巧,如索引优化、游标运用、复杂查询组合;并结合离线应用、数据缓存等案例说明实际价值,最后提及跨浏览器兼容等挑战及应对思路。全文为前端开发者提供了系统化的IndexedDB应用指南,助力提升数据管理能力。
239 2
|
12月前
|
运维 监控 搜索推荐
智慧医院系统,融合4级电子病历的云HIS系统,源码适合项目二开
智慧医院系统是一款融合4级电子病历的云HIS系统,采用云计算部署模式,支持无机房、无系统、无数据维护运行,大幅降低信息化成本。系统整合HIS与EMR功能,涵盖患者管理、电子病历、医嘱处理等核心业务,并支持与公卫、PACS等外部系统对接。其一体化电子病历设计提供丰富的模板、自动填充患者信息、结构化数据提取等功能,提升医生工作效率。同时,系统具备完善的审计日志、打印功能及病历质控管理,助力医疗机构实现高效、规范的信息化管理。
421 18
|
缓存 前端开发 网络协议
性能优化|几个方法让图片加载更快一些
对电商网页的性能而言,图片优化是至关重要的事情,本文就此探讨了一些简单、可靠的图片优化手段。
PACS系统,覆盖医院所有科室,实现了全院医学影像和报告的信息共享
PACS系统整合医院放射、CT、MR等检查设备,与HIS系统无缝对接,实现自动化申请与报告。支持DICOM及非DICOM影像获取与强大分析功能,覆盖多科室,促进全院影像资源共享,提升医疗服务效率。超声工作站支持灵活报告生成与管理,具备断网离线工作能力,优化病例检索与影像采集流程,配备统计模块以图表形式展示多维度数据分析,助力高效决策。
599 0
PACS系统,覆盖医院所有科室,实现了全院医学影像和报告的信息共享
|
缓存 PyTorch 算法框架/工具
Transformers 4.37 中文文档(四十五)(2)
Transformers 4.37 中文文档(四十五)
306 3
|
存储 Oracle 网络协议
医学影像系统PACS源码,综合医学影像浏览、处理和诊断工作站
综合医学影像工作站,支持放射、超声等科室的DICOM标准数字影像,具备专业的影像增强处理功能,兼容PACS网络。系统特点包括全面支持DICOM标准,与各种医学成像设备连接,支持图像发送、打印及动态影像流式传输,并支持多显示器。系统功能涵盖多模态影像浏览、常规及高端影像处理、多种标注测量工具。此外,工作站还支持DICOM协议通讯、数据自动路由、光盘备份及不同图像格式输出。PACS系统基于国际标准构建,支持Windows/Linux平台,采用Oracle数据库,具备双机热备及RAID功能,确保图像质量与数据传输满足行业需求,且易于与现有HIS系统集成,支持远程DICOM传输,具有分级权限管理功能。
312 0
医学影像系统PACS源码,综合医学影像浏览、处理和诊断工作站