直播点播窄带高清之 JND 感知编码技术

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

作者:程玲 网易云信资深音视频引擎开发工程师

一、窄带高清技术概述

窄带高清技术实际上是一套以人眼的主观感受最优为基准的视频编码技术,代表的是一种成本与体验最合理配置、最佳性价比的视频服务理念。窄带是指节省不必要的比特,高清是把比特分配到更能产生价值的地方,从而实现在同样带宽条件下收获更加清晰优质的画质。在疫情的影响下,直播从传统秀场渗透到各个领域,全民直播时代到来,对窄带高清技术的需求也越来越大。本文将首先介绍下业界一些比较成熟的窄带高清方案,再分享网易云信在窄带高清技术上的探索实践,最后再分享其关键技术点 JND 感知编码技术。

二、业界窄带高清方案简介

1.淘宝直播

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

  • 音视频增强,采用基于 AI 的图像增强、美颜和语音增强来提高生产质量
  • 感知处理,采用信源信道联合自适应编码,包括 ROI 检测、根据场景分类设置不同的编码参数、智能码控等
  • S265 编码器,S265 编码器是业界领先的 HEVC 编码器

2.阿里窄带高清

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

3.腾讯极速高清

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

三、NE264 窄带高清技术

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

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

1.视频编码

视频编码都是利用数据间的冗余来进行压缩。早期视频编码依靠优化空域冗余、时域冗余、频域冗余等带来压缩效率的提升。从 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 倍以上。

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

2.人眼视觉系统(HVS)

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

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

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

直播点播窄带高清之 JND 感知编码技术

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

  • 亮度掩盖:人眼对较亮或者较暗区域感知更弱
  • 纹理掩盖:人眼对非均匀区域的可见性阈值为 明显高于均匀区域
  • Pattern 掩盖:人眼对规则物体的分辨力明显会高于不规则的物体
  • 运动掩盖:人眼对剧烈运动的场景分辨力会明显下降

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

  • 由外部激励驱动的自底向上 (Bottom-up)的处理过程。主要跟图像内容的显著性相关,与周围区域具有较大差异性的目标容易吸引观察者的视觉关注。
  • 由任务驱动的自上而下 (Top-down)的处理过程。意识支配、依赖于特定的命令,由人的“认知因素”决定, 比如知识、预期和当前的目标,如监控场景下的人体更容易引起注意。

3.视觉感知编码

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

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

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

  • 基于感兴趣区域(ROI)的编码方法的基本思想是在视频编码前,对输入的视频场景进行视觉感知分析确定感兴趣区域。在编码过程中通过调整编码参数,比如 QP,来分别控制感兴趣区域和非感兴趣区域的失真程度,进而改善感兴趣区域的编码质量。该技术提出已有多年,实际在使用时提升比较有限。
  • 基于人眼显著性检测 (Visual saliency detection)的编码方法指通过根据人的视觉特点,提取图像中的显著区域(即人类感兴趣的区域)。面对一个场景时,人类自动地对感兴趣区域进行处理而选择性地忽略不感兴趣区域,这些人们感兴趣区域被称之为显著性区域。该技术是人眼感知编码中比较常见的技术,通常和 JND 等技术配合达到更好的压缩效果,也是我们要优先研究的技术。

4.NE264 技术

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

  • 视频增强前处理技术:纹理增强,提升主观体验
  • 显著性检测技术:基于人眼视觉注意特性,区分显著性和非显著性区域,用于编码,提高压缩率
  • JND 感知编码技术:基于人眼视觉掩盖特性,作用于编码,提高压缩率

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

直播点播窄带高清之 JND 感知编码技术

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

直播点播窄带高清之 JND 感知编码技术

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

直播点播窄带高清之 JND 感知编码技术

四、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 计算公式如下:
直播点播窄带高清之 JND 感知编码技术

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

直播点播窄带高清之 JND 感知编码技术

五、总结

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

作者介绍

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

关于网易云信

网易云信:网易智企旗下融合通信云服务专家、通信与视频 PaaS 平台。集网易 24 年 IM 以及音视频技术打造的融合通信云服务专家,稳定易用的通信与视频 PaaS 平台。提供融合通信与视频的核心能力与组件,包含 IM 即时通讯、5G 消息平台、一键登录、信令、短信与号码隐私保护等通信服务,音视频通话、直播、点播、互动直播与互动白板等音视频服务,视频会议等组件服务,并联合网易易盾推出一站式安全通信方案「安全通」。目前,网易云信已经成功发送 1.6 万亿条消息,覆盖智能终端 SDK 数累计超过 186 亿,我们期待每个智能终端都有云信的融合通信能力。

文章标题:直播点播窄带高清之 JND 感知编码技术,发布者:网易智企,转载请注明出处:https://worktile.com/kb/p/5875

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022年3月16日 下午11:17
下一篇 2022年3月16日 下午11:28

相关推荐

  • 如何让 okr 与 kpi 真正有效结合

    让 okr 与 kpi 真正有效结合的方法有两个:1、承诺型OKR与挑战型OKR结合,打通OKR与KPI结合;2、考核体系中除了结果,再增加10%的权重用于关注过程。承诺型OKR是必须要达成的,或者是可以将它当做是短期内的KPI指标,可以沿用组织已经使用成熟的考核体系来进行管理。 1、承诺型OKR与…

    2023年1月6日
    2700
  • 大规模敏捷实践怎么从0-1

    大规模敏捷实践从0-1的方法:1、将团队协调放在首位;2、使用架构跑道来管理技术复杂性;3、协调基于特征的开发和系统分解;4、使用质量属性方案来阐明体系结构上重要的要求;5、使用测试驱动开发并持续关注。其中,团队协调是大规模敏捷实践的基础。 1、将团队协调放在首位 Scrum是当今最常用的敏捷项目管…

    2023年1月2日
    2000
  • 观点:成功推行OKR是否一定需要专业工具辅助?

    OKR落地管理一定需要专业工具吗?不一定。 但是表面上看来,一张公开透明的 Excel 表格已经足以实现整个 OKR 流程。实际上,它的局限性却让 OKR 难以发挥出真正的效用。 比如: 对齐过程繁琐低效:为了保证组织上下目标的一致性,在实施 OKR 的过程中「对齐」至关重要。员工既要承接上级目标,…

    2022年9月1日
    19000
  • Redis 概念以及底层数据结构

    Redis 简介 REmote DIctionary Server(Redis) 是一个由SalvatoreSanfilippo写的key-value存储系统。 Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多…

    2022年3月20日
    12000
  • 如何通过看板管理组织企业生产

    通过看板管理组织企业生产:1、设计并制作看板;2、正确使用看板;3、及时整理看板;4、整顿看板;5、清扫、清洁看板。其中,设计并制作看板是看板管理的基础和前提,看板是实现准时生产的工具,它具有计划和调度指令的作用。 1、设计并制作看板 看板是实现准时生产的工具,它具有计划和调度指令的作用,是联系企业…

    2023年1月2日
    1600
  • 敏捷看板有哪些好处

    敏捷看板的好处包括以下几点:1、看板卡可轻松检测低效率;2、看板卡有助于及时交付;3、看板卡⿎励团队之间的协作。在敏捷方法中,看板(Kanban)是一个动态的管理工具,可以显示项目中每项工作的流动性,并且可以识别瓶颈。 1.看板卡可轻松检测低效率 由于看板卡⾮常直观,因此只需看⼀看看板便可以很容易地…

    2022年11月16日
    10400
  • 动态开发技术有哪些

    目前主流的动态开发技术有:1、JSP;2、ASP.net;3、PHP。JSP(全称JavaServer Pages)是由Sun Microsystems公司主导创建的一种动态网页技术标准。JSP技术以Java语言作为脚本语言,为用户的HTTP请求提供服务,并能与服务器上的其它Java程序共同处理复杂…

    2023年1月4日
    600
  • 什么叫敏捷开发

    敏捷开发模式是一种新型软件开发方法,是一种应对快速变化的需求的一种软件开发能力。敏捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。在敏捷开发中,软件项目在构建初期被切分成多个子项目,各个子项目的成果都经过测试。 敏捷开发模式是一种从1990年代开始逐渐引起广泛关注的一些新型软件开…

    2023年1月9日
    800
  • 软件测试缺陷管理系统有哪些

    缺陷管理工具有:1、Jira;2、CoCode评审工具;3、Worktile;4、Bugzilla。软件缺陷管理是在软件生命周期中识别、管理、沟通任何缺陷的过程(从缺陷的识别到缺陷的解决关闭),确保缺陷被跟踪管理而不丢失。 1、Jira Jira是Atlassian公司开发的项目与实务跟踪工具,被广…

    2022年11月14日
    6300
  • SEO 网站优化的步骤和技巧有哪些

    SEO 网站优化的步骤:1、网站结构优化;2、网站页面优化;3、内容质量优化;4、网站外部链接优化;5、SEO效果检测。SEO 网站优化的技巧:1、网站域名选择;2、关键词选择;3、关键词挖掘5种方法;4、多研究百度算法;5、结合自媒体平台。 一、SEO 网站优化的步骤 1、网站结构优化 2、网站页…

    2023年1月4日
    1300

发表回复

登录后才能评论
联系我们
关注微信
关注微信
分享本页
返回顶部
PingCode 比 Jira 更好用的研发管理工具。免费试用