导读:本文整理自网易资深开发工程师程玲在线上直播 MCtalk Live#3:直播点播窄带高清之 JND 感知编码技术内容分享,文末也可查看直播回顾视频

文|程玲 网易云信资深音视频引擎开发工程师

直播点播已经与日常生活息息相关,这个过程中大家最关注的是什么,是更低的播放成本?还是更高的画质?这就涉及到了窄带高清技术,对于视频窄带高清技术,智能视频编码是其中最基础也是最重要的一个部分。

窄带高清技术概述

窄带高清技术实际上是一套以人眼的主观感受最优为基准的视频编码技术,代表的是一种成本与体验最合理配置、最佳性价比的视频服务理念。窄带是指节省不必要的比特,高清是把比特分配到更能产生价值的地方,从而实现在同样带宽条件下收获更加清晰优质的画质。

在疫情的影响下,直播从传统秀场渗透到各个领域,全民直播时代到来,对窄带高清技术的需求也越来越大。本文将首先介绍下业界一些比较成熟的窄带高清方案,再分享网易云信在窄带高清技术上的探索实践,最后再分享其关键技术点 JND 感知编码技术。

业界窄带高清方案简介

业界已经有比较成熟的窄带高清技术的应用,下面将介绍一些典型的技术方案。

 淘宝直播 

淘宝直播是采用 HEVC 编码实现了 720p/25fps,800kbps 的压缩,且 PSNR>43db/VMAF>90,其视频窄带高清技术主要应用有三个方面:

  • 音视频增强,采用基于 AI 的图像增强、美颜和语音增强来提高生产质量

  • 感知处理,采用信源信道联合自适应编码,包括 ROI 检测、根据场景分类设置不同的编码参数、智能码控等

  • S265 编码器,S265 编码器是业界领先的 HEVC 编码器

 阿里窄带高清 

阿里的窄带高清方案是从人眼视觉模型出发,将编码器的优化目标从经典的“保真度最高”调整为“主观体验最好”。凭借独有算法,弱化人眼易忽视的区域,强化人眼关注的细节,修复人眼厌恶的内容,突破当代视频编码器的能力上限,在节省码率的同时,也能提供更加清晰的观看体验。

 腾讯极速高清 

腾讯极速高清是采用视频智能类(视频分成游戏、秀场、体育、户外、动漫、美食、影视剧等十几个大类几十个小类场景)、智能编码参数(不同场景配置不同最优编码参数)、前置处理 (锐化、软模糊、去块、降噪)等技术尽可能解决转码失真、低分辨率模糊、镜头抖动、噪声大、低码率锯齿块等转码中存在的问题,应用在斗鱼、企鹅电竞、CCTV、新英体育等。

NE264 窄带高清技术

NE264 是网易云信自研的符合 H.264 标准的视频编码器,目前已在 RTC、直播点播中应用。针对直播点播,NE264 目标是在现有架构下实现更低的带宽、更高的画质,即 NE264 窄带高清。

下面我们将简单介绍下视频编码技术和根据人眼视觉特性提出的视觉感知编码技术,在此基础上提出和实现了 NE264 窄带高清技术。

 视频编码 

视频编码都是利用数据间的冗余来进行压缩。早期视频编码依靠优化空域冗余、时域冗余、频域冗余等带来压缩效率的提升。从 MPEG-1 发展到 MPEG-2,码率节省约 50%,编码效率翻倍,复杂度增长为 5% 左右。

2003年推出的 H.264 是视频压缩协议的经典,在 H.264 推出后,传统的编码方式优化效率越来越低。从 H.264(AVC) 到 H.265(HEVC),虽然编码效率提升了 40%,但其背后复杂度却增长了 5 倍,而从 H.265 到最新的 H.266(VVC) 标准,编码效率不到 40%,但复杂度增加了 10 倍以上。

随着编码标准的演进,收益越来越小。随着技术的发展,技术突破愈发困难,因此迫切需要一种编码压缩的新思路。

 人眼视觉系统(HVS) 

随着对人眼视觉系统(HVS)生理和心理研究的发展,我们发现,其实人脑处理视觉时有非常多的信息冗余,利用人眼视觉特性可以明显的改善视觉压缩效率,这就是人眼感知压缩的原理。

人眼视觉系统由眼球、神经系统及大脑视觉中枢三部分构成,当人眼注视视频场景时,入射光首先由瞳孔和水晶体调节、聚焦,使景物在视网膜上成像,然后由视网膜上的神经元将光信号转化为神经信号并发送到视皮层,经过视皮层以及脑部其他区域的进一步处理后形成对视频场景的感知。

近几年来,在视觉心理学、生理学的指导下,通过对人眼的某些视觉现象的观察和研究,人们发现了 HVS 的很多特性。目前在视觉感知编码中,一般应用到的 HVS 特性有视觉注意、视觉掩盖、视觉敏感、视觉统计学习机制等,HVS 的一些特性如下图:

视觉掩盖,人眼对单一视觉信号比较容易感知,当几个视觉信号同时存在时,HVS 会对其中一个或多个信号的感知能力下降甚至消失,感知阈值发生改变,包括:

  • 亮度掩盖:人眼对较亮或者较暗区域感知更弱

  • 纹理掩盖:人眼对非均匀区域的可见性阈值为 明显高于均匀区域

  • Pattern 掩盖:人眼对规则物体的分辨力明显会高于不规则的物体

  • 运动掩盖:人眼对剧烈运动的场景分辨力会明显下降

视觉注意,即当人眼注意视频场景时,人眼会快速将注意力集中在感兴趣的视频内容或者对象上。包括两种模式:

  • 由外部激励驱动的自底向上(Bottom-up)的处理过程。主要跟图像内容的显著性相关,与周围区域具有较大差异性的目标容易吸引观察者的视觉关注。

  • 由任务驱动的自上而下(Top-down)的处理过程。意识支配、依赖于特定的命令,由人的“认知因素”决定, 比如知识、预期和当前的目标,如监控场景下的人体更容易引起注意。

 视觉感知编码 

视觉感知编码的目的是利用已知的 HVS 特性,最大限度消除人眼无法感知的信息,用更少的比特资源提供视觉感知质量更理想的视频图像。为此,研究人员提出了大量的视觉感知编码方法。根据编码方法所利用的 HVS 特性不同,研究和应用比较多的是基于视觉掩盖的编码方法和基于视觉注意的编码方法。

关于视觉掩盖的编码方法,人眼多通道模型的特点,一个激励的存在将导致另一个激励探测阈值的改变,致使人眼对其中一种或多种激励的感知能力下降或消失,这就为消除视觉冗余提供了可能。目前,基于视觉掩盖的编码方法主要有:基于 JND 模型的编码方法基于 SSIM、VMAF 等主观评价机制的编码方法。其中 JND 模型的编码方法是人眼视觉编码目前广泛使用的技术,也是我们重点研究的技术。

关于视觉注意的编码方法,根据是否考虑 HVS 的中央凹特性,基于视觉注意的编码方法可以分为两类,基于感兴趣区域的编码方法基于人眼显著性检测的编码方法

  • 基于感兴趣区域(ROI)的编码方法的基本思想是在视频编码前,对输入的视频场景进行视觉感知分析确定感兴趣区域。在编码过程中通过调整编码参数,比如 QP,来分别控制感兴趣区域和非感兴趣区域的失真程度,进而改善感兴趣区域的编码质量。该技术提出已有多年,实际在使用时提升比较有限。

  • 基于人眼显著性检测(Visual saliency detection)的编码方法指通过根据人的视觉特点,提取图像中的显著区域(即人类感兴趣的区域)。面对一个场景时,人类自动地对感兴趣区域进行处理而选择性地忽略不感兴趣区域,这些人们感兴趣区域被称之为显著性区域。该技术是人眼感知编码中比较常见的技术,通常和 JND 等技术配合达到更好的压缩效果,也是我们要优先研究的技术。

 NE264 技术 

目前业界窄带高清技术已相对比较成熟,结合 NE264 编码特性以及想要达成的目标,我们的窄带高清技术主要分为三大部分:

  • 视频增强前处理技术:纹理增强,提升主观体验

  • 显著性检测技术:基于人眼视觉注意特性,区分显著性和非显著性区域,用于编码,提高压缩率

  • JND 感知编码技术:基于人眼视觉掩盖特性,作用于编码,提高压缩率

具体的流程我们可以结合下图看一下:对于输入视频,我们可以通过机器学习分析视频内容特性,然后进行视频增强前处理,以提升画质,再进行显著性检测区分显著性和非显著性区域,传递给 NE264 编码器,NE264 编码计算 JND 系数,再结合显著性检测结果,作用于编码,最终输出显示。

下图为增强前处理的对比效果图,其中左图为原图,右图为增强处理后的效果,可以发现经过视频增强处理后的图像主观得到明显提升。

视频增强效果

下图为显著性检测效果图,其中上面彩色图为原图,下面黑白图为显著性检测效果图,为 0-255 的值,越亮说明越是显著性区域。

显著性检测效果

JND 感知编码技术

下面我们就来看看上面提到的关键技术:JND 感知编码技术。

JND(Just Noticeable Distortion)为最小可觉察误差,用来度量人眼对图像中不同区域失真的敏感性,多用于基于视觉特性的图像/视频编码、数字水印、图像质量评价。目前已有多个 JND 模型被提出,主要分为两类,基于像素域的 JND 模型基于 DCT 域的 JND 模型

  • 基于像素域的 JND 模型能在像素域上更为直观的给出每一个像素点的 JND 阈值,不需要考虑频域特性,计算简单方便,但精度不高。

  • 基于 DCT 域的 JND 模型考虑频域特性,应用更广,通常包括三部分,亮度自适应(Luminance Adaptation, LA)、对比度掩蔽(Contrast Masking, CM)以及对比度敏感函数(Contrast Sensitivity Function, CSF)。我们主要采用的是基于 DCT 域的 JND 感知编码技术。JND 计算公式如下:

基于 NE264 的 JND 感知编码如下:对于输入的 YUV 图像,我们首先计算亮度敏感度、纹理敏感度和对比敏感度,从而得到 JND 系数,然后作用于 DCT 域,改变原有的  DCT系数,然后进行编码,输出码流。

总结

本文主要介绍了 NE264 窄带高清技术和 JND 感知编码技术,对于直播点播应用而言,如何在保证高清画质的基础上尽可能的减少带宽始终是追求的目标,视频编码是其中至关重要的环节,不管是传统编码技术,还是结合智能编码技术,我们都将持续努力,带来更低时延、更高画质的优质视频体验。

以上就是本次分享的全部内容,点击【阅读原文】即可查看本次分享的视频回顾。

 作者介绍 

程玲,网易云信资深音视频算法工程师,目前在网易云信主要从事视频编码算法研究相关的工作,对视频质量优化、码率控制算法有比较丰富的经验。

 延伸阅读 

  • 技术系列课回顾 | 浅谈 Serverless 开发和应用

  • 云信技术系列课 | RTC 系统音频弱网对抗技术发展与实践

  • 云信技术系列课回顾视频|视频直播关键技术和趋势

技术系列课回顾 | 直播点播窄带高清之 JND 感知编码技术相关推荐

  1. 直播app开发点播窄带高清之 JND 感知编码技术

    导语 直播点播已经与日常生活息息相关,这个过程中大家最关注的是什么,是更低的播放成本?还是更高的画质?这就涉及到了窄带高清技术,对于视频窄带高清技术,直播app开发智能视频编码是其中最基础也是最重要的 ...

  2. 技术系列课回顾 | 网易云信线上万人连麦技术大揭秘

    导读:本文根据网易云信资深音视频服务端开发工程师陈策在<MCtalk Live#5:网易云信线上万人连麦技术大揭秘>线上直播分享整理. 文|陈策 网易云信资深音视频服务端开发工程师 大家好 ...

  3. 技术系列课回顾 | 视频 QoE 的平衡之道

    导读:本文根据网易云信资深引擎工程师戚继跃在<MCtalk Live#4:视频 QoE 的平衡之道-揭秘网易云信 NERTC 视频质量控制系统>线上直播分享整理,文末有直播视频回顾以及 Q ...

  4. 技术系列课回顾 | 浅谈 Serverless 开发和应用

    导读:本文整理自网易云信后端开发工程师葛馨霓的线上直播,文末也可查看直播回顾视频,也欢迎关注今晚的线上直播. 文|葛馨霓 网易云信后端开发工程师 AWS Serverless 服务是一种对应用的工程师 ...

  5. 云信技术系列课 | RTC 系统音频弱网对抗技术发展与实践

    导读:本文整理自线上直播[MCtalk Live#2 :RTC 系统音频弱网对抗技术发展与实践]网易云信资深音视频引擎开发专家崔承宗分享内容,文末也可查看直播回顾视频. 文|崔承宗 网易云信资深音视频 ...

  6. 激光SLAM学习--移动机器人技术系列课(智东西)

    移动机器人技术系列课1:利用激光SLAM实现移动机器人在复杂环境下的自主导航 边旭,深圳优艾智合机器人科技有限公司CTO,西安交通大学机器人学博士 [提纲] 1.AMR机器人的关键技术解析 2.SLA ...

  7. NBA赛事直播超清画质背后:阿里云视频云「窄带高清2.0」技术深度解读

    在半月前结束的NBA总决赛中,百视TV作为全网唯一采用"主播陪你看NBA"模式的直播平台,以"陪看型"赛事解说来面对内容差异化竞争.与此同时,百视TV还运用了& ...

  8. 技术系列课|从NE264到NE265:视频编码技术缔造美好生活

    在网易,我们一直致力于用好的技术服务用户,为用户提供优质的体验,实现美好生活缔造者的愿景.而视频编码技术作为底层驱动技术,将如何改变我们的生活?如何通过视频将分隔两地的人连接起来?如何通过视频记录生活 ...

  9. 技术系列课|从0到1 构建实时音视频引擎

    随着5G和AI时代的到来,在线实时互动在越来越多的场景中被使用,支撑这一功能实现的关键性技术--RTC也受到了空前的关注.本节技术系列课,来自网易云信的讲师将以做菜的过程为比喻,深入浅出地讲述如何从0 ...

最新文章

  1. [Python图像处理] 八.图像腐蚀与图像膨胀
  2. 批量改名_手把手教你用Python批量给图片添加水印 | 知了干货分享
  3. linux 如何打包分区文件,Linux基础------文件打包解包---tar命令,文件压缩解压---命令gzip,vim编辑器创建和编辑正文件,磁盘分区/格式化,软/硬链接...
  4. 【洛谷P4315】月下“毛景树”(树链剖分)
  5. 雷凌linux车机升级_绿老师学堂:15万合资车谁更“聪明”?体验思域/福克斯/雷凌车机...
  6. php文章远程图片,php实现异步将远程链接上内容(图片或内容)写到本地的方法
  7. 【CDH】ClouderaManager集群报警,堆转储目录/tmp 或日志目录/var/log 可用空间小于 5.0 吉字节
  8. 【设计模式】11、享元模式
  9. 盛大易宝只是陈天桥的梦而已
  10. word文档被锁定,无法编辑怎么办?(…
  11. 872. 叶子相似的树 / 剑指 Offer 33. 二叉搜索树的后序遍历序列 / 剑指 Offer 34. 二叉树中和为某一值的路径 / 剑指 Offer 35. 复杂链表的复制
  12. 【Prometheus】PrometheusGrafana 监控
  13. 最新IOS xcode12真机调试步骤
  14. 曝大S汪小菲婚宴初定汪小菲三亚顶级酒店
  15. git 将暂存区文件提交_git基础命令之提交文件
  16. Django 2.2:模型M.定义模型
  17. docker安装_使用docker在带有SSL的Nginx反向代理后面部署Quarkus或任何基于Java的微服务...
  18. 数据仓库为何分层,各层作用?
  19. 数据增广(数据增强)方式
  20. 数据库-概念-优点-特点

热门文章

  1. Entity Framework 的小实例:在项目中添加一个实体类,并做插入操作
  2. 高效学习,战胜拖延症
  3. Asp.net之MsChart控件动态绑定温度曲线图
  4. [zz] C++智能指针循环引用解决
  5. 定制AjaxControlToolkit:给CalendarExtender增加清除功能
  6. prim算法求最小生成树_克鲁斯卡尔算法(Kruskal算法)求最小生成树
  7. Python DataFrame删除某一列中包含的特定元素所在的行
  8. c、c++、Java和gcc写Hello World
  9. 湖南铁路科技职业技术学院计算机等级,湖南铁路科技职业技术学院——高速铁路动车乘务专业...
  10. spring autowired idea都匹配上了_你清楚这几个Spring常用注解吗?