近些年人工智能的热度很高,人工智能在视频领域的应用已经逐渐走入人们的生活,人脸识别,行为分析,车牌识别等等。算法
传统视频应用的流程:安全
目前的人工智能还处于工具阶段,可以渗透包括预处理和后处理,超分辨率,机器视觉等等,人们在这些过程当中使用人工智能工具来提高开发效率或者处理效果。服务器
在移动直播的环境下,在编码前,不影响画质的前提下,自动检测是否为弱网环境从而判断是否选择性丢帧,以下降编码环节的功耗开销。另外一方面在弱网环境下带宽可能出现瓶颈,经过测速可进行动态码率切换,以保障网络推流流畅。网络
在播放前对视频中的人或物进行检测并处理,集成自动美颜、渲染等,以达到更好的观看效果。机器学习
近年来网络直播应用的兴起,出现了跟以往广播电视编解码不太同样的需求。那就是:函数
编码端,保证编码实时性和码率的要求的同时,保证尽可能高的图像质量;工具
发送,传输,缓冲,延时尽可能小;性能
解码器尽可能能输出最好的质量,最好能超分辨率。学习
业内一直在努力把人工智能技术跟编解码作更深的融合,用来解决传统方法一直很难解决的这几个问题。优化
当前编码器遇到的问题:硬件编码器性能好,可是图像质量差,码率高。软件编码器效率较低,遇到复杂视频,好比物体繁多,较大运动,闪光,旋转,既不能知足实时编码的需求,同时输出码率也出现较大抖动。对于网络应用来讲是很大的障碍。
不一样场景下编码保持恒定质量的码率:
编码时间和码率是正相关的,在码率暴涨的同时,编码时间也剧烈延长。对于低延时需求强烈的直播应用,会形成严重的卡顿。
通常就只好使用绝对不变码率ABR. 不一样场景下ABR的图像质量:
这样带来的结果就是图像质量不稳定。
咱们但愿是下图这样的曲线:
这就须要编码器可以提早断定大码率场景出现的可能性。须要断定的几种状况:
物体繁多且有摄像机运动;
背景不动可是有大量物体的大范围运动,包括快速运动,旋转,仿射,蠕变等;
出现闪光,风沙,粒子系统。
这就须要开发一种适用于高清晰度直播应用的面向场景的智能编码技术。该技术经过监督学习将常见视频编码卡顿场景分类并快速识别,提早预判视频场景的编码复杂度和码率抖动,使用动态参数配置来编码,保证编码的实时性和限定码率下最好的图像质量。
京东云基于业界领先的AI技术,提供对单人及多人的姿态预估技术,准确地判断出图片或视频中的人体14个主要关键点并给出相应的置信度,可应用于各个领域中的人体动做姿态分析、预估及检测。算法性能LIP Dataset(单人)mAP 90%;COCO val 2017(多人)mAP 80%,处于业内领先水平。
这里说的广告的自动植入问题。一种是在编码前合成到视频里面,这个过程跟编码关系不大。可是直接合成到视频以后,全部的观众看到的内容就都同样。
要作到个性化,精准的广告投放,就只有在播放端解码后合成。要作到这点,服务器不只要发送原始视频流,还要发送后期合成物体的定位方法和图像数据,以便客户端按照需求进行动态合成。
首先,自动植入的广告跟前贴片比起来优点很明显,能够植入的广告数量很是巨大,效果也更天然,用户也不会产生明显的反感。
其次,个性化精准投放,又进一步扩大了广告投放的总容量和效率。
京东云视频直播平台拥有领先的合成技术,除了字幕、广告外,还能够提供水印、静态或动态logo等功能,以加强视频的宣传力度和版权保护。
目前基本作法是图像识别后,与搜索引擎链接,产生一个内容连接。
针对视频和图像中的人物,京东云提供的AI能力可对人脸进行搜索和比对实现企业、商业、住宅等多种场景的刷脸进门等功能,提高安全性、效率和用户体验用。
同时还可快速检测并定位人脸,返回高精度的人脸框坐标,五官与轮廓关键点和三维坐标,而且可识别多达9种人脸天然属性和5种情绪属性。
当前解码器须要加强的点:你们都在构想能不能应用超分辨率技术,把较低分辨率的视频的播放质量提高一大块。目前有不少算法显示出巨大的潜力,好比谷歌的RAISR,处理图像时候效果很好。能不能实时用到视频上,或者硬件化,或者采用更快的能实时运行的算法。咱们在后面会讨论一种折中方案,在牺牲一点质量的前提下,可以实时运行的超分辨率算法。
天然图像基本上是平滑的纹理填充和较明显的边缘组合造成。
常规拉伸算法有双线性插值和双三次样条曲线差值。通常说来,三次曲线要比线性插值效果好。但实际简单的双线性插值的目视效果要好过三次曲线。
缘由有如下几个:
一、低分辨率下线条会变得模糊。
二、低分辨率图像在拉伸到高分辨率时候会在线条上引入额外的模糊。
三、噪音的存在。
第1点不用过多解释,分辨率低了天然会模糊
第2点:好比B样条,三次样条曲线有一个应用条件,那就是样本数据自己应该是光滑的,至少是分段光滑。可是在图像里面,物体的边界和背景的结合处,就不知足这个条件了。普通的三次样条曲线插值并无考虑图像内部各个物体的不一样,简单的把整个图像做为一个总体来计算。这样必然就在边界处引入了严重的模糊。
所以超分辨率主要从以上几个方面进行处理。
那么如何下降线条的拉伸效应,也就是线条的锐度保持。
好比一个4x4的像素块,比较常见的是以下的形态:
普通的三次b样条的滤波器参数矩阵为:
加入在4x4像素块中心插入一个点
第一种状况,插入点在边界上:
使用标准滤波器:
使用改进滤波器:
第二种状况,插入点在边界内:
标准滤波:
第三种状况,插入点在边界外:
使用标准滤波器:
使用改进滤波器:
第三种状况与第一种同样。因此只须要考虑插入点在边界上的状况。
因为每一个像素是8位的,因此一个4x4像素块可能的组合是大体128位整数。而现实中常出现的种类通常少于理论上限,所以须要考虑的组合每每不须要这么多。这种状况就须要使用统计方法,也就是经过机器学习来得到一个比较好的滤波器参数表。
机器学习过程一般是准备一些原始 HR 图象(2x2)和从采样生成的 LR(1x1)图象,做为配对数据。而后采用一些优化操做:
第一步,将复杂 4x4 梯度图象点阵处理成为简单的码本图象(HASH); 第二步,针对这个码本图象,使用考虑临近像素梯度权重的方法重构B样条滤波器参数,每次都和原始的 2x2 倍图象进行 SAD (COST函数)计算,寻找最接近的拟合曲线参数(下山法); 第三步,对上一步得到的大量参数计算几率分布,取最大几率的参数做为该码本的最优解; 第四步,对近似的码本进行合并处理,以减少码本的数量。
关于低分图像对边界形成的模糊,咱们能够尝试使用一个梯度变换的方法:
这种算法的思路就是计算出梯度的分布,而后适当把梯度收窄。不考虑实现速度的话,这个方法取得效果也是很惊人的。
可是这个算法的运算量很是庞大。所以须要把这个过程融合到寻找滤波器参数矩阵的过程当中。
上面是单个图像的超分辨率。视频的超分辨率和单个图像不一样。单个图像的超分辨率算法能够融合到视频超分辨率里面来。
视频的超分辨率是从连续的视频序列中从新建立高分辨率的图像,涉及到图像配准和子像素提取。研究方法和评价方法也存在很大差别。有些人用图像的超分辨率方法来套用的话就会出现一些疑惑:
首先视频编码是一个有损压缩过程,不一样分辨率的序列压缩退化过程是不一样的,所以找不到合适的HR/LR配对。视频质量的评估也是远比图像质量评估要复杂。所以目视质量是一个比较简易的评估标准。固然寻找一个HR/LR配对来计算PSNR(峰值信噪比)也是能够的,可是说服力远不如图像配对的状况。
评估模型:
在这个过程当中,由于原始视频(未经压缩)图像较大,因此HR(0)不适合用来作原始分辨率参照。咱们能够选取HR(1)和HSR来比较获取一个PSNR(0), 而后选取HR(1)和普通拉伸得到的HBR来比较获取一个PSNR(1). 若是PSNR(0)比PSNR(1)要高的话,就说明超分辨取得了效果。
在视频直播和人工智能的结合方面,京东云一直在不断探索,咱们但愿能够基于京东云平台优质底层资源和领先的实施转码技术,为客户提供更加专业的一站式服务。
欢迎点击“连接”了解京东云更多精彩内容
点击"京东云"了解更多详情