a&s专业的自动化&安全生态服务平台
公众号
安全自动化

安全自动化

安防知识网

安防知识网

手机站
手机站

手机站

大安防供需平台
大安防供需平台

大安防供需平台

资讯频道横幅A1
首页 > 资讯 > 正文

Android平台上基于H.265的视频测评软件开发

针对全新编解码技术H.265,研究并实现了基于Android平台的视频质量评估软件开发。首先通过分析H.265编解码标准的特点和VLC多媒体播放器的解码方式,获取了VLC播放器解码后的YUV数据。再针对YUV数据进行了分辨率、帧率、清晰度、亮度、色度等五个方面的评估分析,并结合主观分析对该五项建立了合理的视频评分体系。最后基于简洁明了的UI界面设计,为用户清晰地展示了评分结果。
资讯频道文章B

  摘要:针对全新编解码技术H.265,研究并实现了基于Android平台的视频质量评估软件开发。首先通过分析H.265编解码标准的特点和VLC多媒体播放器的解码方式,获取了VLC播放器解码后的YUV数据。再针对YUV数据进行了分辨率、帧率、清晰度、亮度、色度等五个方面的评估分析,并结合主观分析对该五项建立了合理的视频评分体系。最后基于简洁明了的UI界面设计,为用户清晰地展示了评分结果。

  引言

  随着H.265视频压缩标准的出现,其压缩效率与错误恢复能力的提高,以及实时的时延和信道获取时间的减少等特点,为互联网高清视频带来了巨大变化。同时4G网络的逐渐覆盖使得移动客户端上的视频载入率日渐提高,因此流媒体视频评测软件的开发具有意义重大。

  本文基于如今用户群最大的Android平台实现流媒体视频评测软件的开发,软件主要从分辨率和帧率两方面来测评视频流畅度,同时从视频质量的亮度、色度和清晰度三个方面来评估视频画质,并将评估结果以分数的形式直观呈现于手机上。此结果方便用户选择视频质量更好的流媒体,同时也方便运营商针对视频存在的问题进行测评维修,这将推动整个流媒体服务器的发展。

  1 技术平台介绍

  1.1 H.265发展优势

  H.265标准围绕着现有的视频编码标准H.264,保留原来的某些技术,同时对一些相关的技术加以改进。新技术使用先进的技术用以改善码流、编码质量、延时和算法复杂度之间的关系,达到最优化设置。具体的研究内容包括:提高压缩效率、提高鲁棒性和错误恢复能力、减少实时的时延、减少信道获取时间和随机接入时延、降低复杂度等[1]。

  H.265的技术亮点包括以下几点:第一,灵活的编码结构,在H.265中将宏块的大小从H.264的16×16扩展到了64×64,以便于高分辨率视频的压缩。同时,采用了更加灵活的编码结构来提高编码效率,包括编码单元、预测单元和变换单元;第二,使用新的MV(运动矢量)预测方式,区别于H.264基于空间域的运动矢量预测方式,H.265扩充更加多的方向进行帧内预测,同时将预测块的集合由原来的空间域扩展到时间域及空时混合域,通过率失真准则计算后选择最佳的预测块;第三,更低的码流,多项质量比较测试已经表明,在相同的图像质量下,相比于H.264,通过H.265编码的视频码流大小比H.264减少大约39%-44%。通过主观视觉测试得出的数据显示,在码率减少51%-74%的情况下,H.265编码视频的质量还能与H.264编码视频近似甚至更好,其本质上说是比预期的信噪比(PSNR)要好。

  1.2 Android平台开发的优越性

  广泛使用性:Android软件拥有广泛且稳定的使用人群。

  开放性:Android具有开源系统可供用户自行设计更改。

  丰富的硬件选择:从性能一般的低端机到高配置的高端机一应俱全,可满足不同阶层用户的不同需求。

  不受限制的软件开发:Android平台开发周期短,应用的发布简单,只需要通过Eclipse引导签署开发出的应用,开发者即拥有一个可以在任何Android平台运行的APK文件。将这个APK文件发布到各种平台上进行推广,用户安装即可使用。如果应用在使用中出现了问题,出现代码错误,开发者也能立刻上传修复的版本供用户下载。

  1.3 方案总述

  选择Android平台上基于H.265进行视频测评。具体方案流程图如图1所示。

  

 

  首先利用VLC流媒体播放器接收流媒体数据流,再在 Linux环境下使用 Android NDK 将 HM10.0的解码库进行移植,与VLC各模块共同封装成SO库移植到 Android 平台上,再通过JNI本地调用的方式在 Java 层调用来完成对HEVC 码流的解析。在播放视频的第三阶段通过C语言来编写解码模块,由之解出的码流分为两路,其中一路按照正常播放流程由播放器输出以实现正常播放的功能。另外一路则先导出至sdcard中,当视频播放结束后重新读入YUV数据并利用Opencv设计算法进行分析,最终结果以txt文本的形式存储至sdcard中。

  2 视频流畅度测评

  2.1 分辨率测评

  2.1.1 分辨率简介

  视频分辨率指视频的高/宽像素值,用来度量图像内数据量。通常将分辨率表示成ppi(每英寸像素Pixel per inch),一般说的分辨率指图像的高/宽像素值,严格意义上的分辨率是指单位长度内的有效像素值ppi。如图2所示,分别是分辨率为72ppi和300ppi的图像示例。

  2.1.2 分辨率算法

  本测评软件采用一般定义,即视频的高/宽像素值。

  (1)首先利用Android自带功能遍历手机SD卡中的所有视频,为视频测评做准备。

  (2)通过搜索视频媒体自带的信息,获取手机视频的分辨率,并且根据获取的分辨率为视频评分。

  (3)依据手机分辨率的屏幕参数,我们选取480×270作为标定值。高于此值,则分辨率这一项为满分;反之,则为零分。

  2.2 帧率

  2.2.1 帧率简介

  帧率是用来测量显示帧数的量度,单位一般为fps(frames per second),表示图形处理去处理场景时每秒钟能够更新的次数。高的帧率可以得到更流畅、更逼真的动画。根据人眼的特殊生理结构,如果所看画面帧率高于16fps,则会认为画面连续。然而当帧率超过屏幕刷新率时,只会浪费图像处理能力。一般最合适的人眼接受帧率为25fps。

  

 

  同时,帧率影响画面流畅度,与画面流畅度成正比。帧率越大,画面越流畅;帧率越小,画面越有跳动感。

  2.2.2 帧率评分标定

  本项目采用一边播放视频一边导出视频转换成YUV文件形式,再利用YUV文件的大小以及每一帧图像的分辨率大小,计算出一段视频的平均帧率。由于采用的是YUV420的形式,所以每一帧图像的大小为length*width*1.5 bit,由此得出平均帧率计算公式如下:

  帧率 = 一段时间内YUV文件大小/length*width*1.5 bit*时间 (1)

  具体实现函数如下:

  (fram/(mVideoHeight*mVideoWidth*1.5*times))

  由于人眼最适合的帧率为25fps,本文选取帧率大于20fps为流畅,即为满分;选取小于5fps的帧率为不合格,即为零分。具体评分准则如表1。

  3 视频画质测评

  3.1 清晰度

  3.1.1 清晰度研究背景

  随着各类数字成像技术的飞速发展,数字图像的清晰度日益成为衡量数字成像系统优劣的重要指标。一幅数字图像质量的好坏与其清晰度直接相关,清晰度也指模糊度或粗糙度,是指人眼能感觉出的相邻影像间的明显程度[2]。导致图像清晰度下降的原因是图像模糊,在图像采集、传输、压缩等处理过程中都有可能产生模糊。

  目前,对数字图像清晰度的评价方法主要有空域参数方差、熵、以及频域调制传递函数等,但由于这些方法各有优缺点,如空域参数虽评价简洁、快速,但对图像清晰度的细小变化不敏感;频域参数虽对图像清晰度变化敏感,但计算较慢,不依程序运算的自动化[3 。

  本项目通过对图像进行边缘提取,计算其梯度数据,建立清晰度评判标准,从而进行单帧图像的清晰度判定。

  3.1.2 图像边缘特征

  图像边缘是指其周围像素灰度有阶跃性变化或屋顶型变化的像素的集合,是图像最基本的特征之一,可以反映目标的清晰度[4]。

  一条理想的边缘具有如图3所示(a)模型的特征,这个模型生成的理想边缘是一组相连像素的集合,每个像素都处在灰度级跃变的一个垂直台阶上。实际系统中,由于各种原因导致图像模糊后,实际边缘如3所示,(b)是一个过度的斜面。

  

 

  从人眼视觉特性上,观测目标是否清晰,关键在于目标与背景的边缘上,如果边缘锐利,图像就比较清晰;如果边缘过渡平缓,图像就模糊。

  3.1.3 清晰度算法

  (1)先将图片转换为灰度图,并申明为IplImage对象。核心代码如下:

  cvtColor(Input,gray,CV_BGR2GRAY);

  IplImage tmp_image= IplImage(gray);

  IplImage *img = &tmp_image;

  (2)求梯度

  公式及算法思路:

  令:平均梯度为X,位宽为s,总梯度为Y,总像素点为N。

  则:

  

 

  (2)

  

 

  (3)

  (3)分析数据可知,过渡区上的最大梯度值,与图像的清晰度呈正比关系。并且,梯度的陡峭程度与清晰度呈正比关系[5]。

  (4)清晰度评价算法

  第一,为达到客观的评判,避免误判视频本身的模糊需求,在开始评测之前会进行主观失焦评断。结合人的主观评断和标准视频流的清晰度标准来刻画,这样的评断更客观公正。具体实现界面如图4。

  

 

  第二,结合是否主动失焦以及标准流的判断确定满分标准,之后进行归一化处理。处理后最终的评判标准如表2。

  3.2 亮度

  3.2.1 亮度简介

  亮度是指发光体(反光体)表面发光(反光)强弱的物理量,是人对光的强度的感受。我们认为的亮度参数都是指白色的参数,然而想要更好地体现视频的亮度,就不能只用白色的参数来表示亮度,故而引入了色彩亮度的概念。

  3.2.2 亮度评分算法

  (1)将每一帧的图片灰度化,并以mat矩阵存储以方便刻画行列,统计图片中每个亮度值出现的个数,求出平均亮度。根据前期的主观评测,选定动态阈值作为平均比较值。

  (2)将每一个像素点的值与动态阈值作方差,计算出来的值即可在一定程度上表示图片的平均亮度。

  令动态阈值为

,每一个像素点的灰度值为x,则平均亮度的公式如下:

 

  

(4)

 

  核心代码如下:

  for(int i=0;i<256;i++)

  {

  Ma+=abs(i-128-dac)*Hist[i]; }

  Ma/=float((GRAYimg.rows*GRAYimg.cols));//

  float M=abs(Ma);

  float K=D/M;//正常时这个值是小于1的

  avr = K;

  }

  (3)最终亮度评断标准如表3所示。

  

 

  3.3 色度

  3.3.1 色度简介

  色度的测量是对颜色的一种客观评价,将色度这种度量最终以值的形式表示,有常见的几种表现模型:CIE、RGB等。

  在颜色感知的研究中,CIE 1931 XYZ色彩空间是其中一个最先采用数学方式来定义的色彩空间。其中,色彩空间指的是用一种客观的方式叙述颜色在人眼上的感觉,通常需要三色刺激值,即首先定义三种主要颜色,再利用颜色叠加模型来叙述各种颜色。CIE 1931色彩空间通常用XYZ三个值来表示三色刺激值[6]。

  CIE XYZ和CIE RGB可以相互转换,具体转换方式如下:

  

(5)

 

  

(6)

 

  

(7)

 

  

(8)

 

  转换按照等能白点转换,即有约束:RGB(0.333,0.333,0.333)对应XYZ(0.333,0.333,0.333)。

  3.3.2 色度评分算法

  (1)调用以下Opencv函数将RGB按照以上公式转换成CIE形式。

  cvtColor(Input,LABimg,CV_BGR2Lab)

  (2)同样调用Opencv里函数,得到a、b的值。其中a表示图像的红绿分量,b表示黄蓝分量,根据这两个分量可以判断出图像的色偏,为评分做准备。核心代码如下:

  dac=a/float(LABimg.rows*LABimg.cols);//a*表示图像红/绿分量,计算红绿分量的平均值

  dbc=b/float(LABimg.rows*LABimg.cols);//b*表示图像黄/蓝分量,计算黄蓝分量的平均值

  (3)最终利用a、b的值计算出L,根据L的大小来对色度进行评分。L的计算方式如下:

  float D =sqrt(dac*dac+dbc*dbc);

  Ma/=float((LABimg.rows*LABimg.cols));

  Mb/=float((LABimg.rows*LABimg.cols));

  float M=sqrt(Ma*Ma+Mb*Mb);

  float K=D/M;

  avr = K;

  (4)通过rda,rdb得出整体色彩偏向,然后根据L得出最后得分如表4所示。

  4 结语

  本文在Android移动平台上基于H.265视频标准,开发了安卓手机本地视频质量评测软件。该测评软件从视频流畅度和视频画质两个方面对视频质量做出了测评,其中视频流畅度包括视频分辨率和帧率两个部分,视频画质测评包括视频清晰度、亮度和色度等三个部分。本文还分析了视频测评体系建立过程,并阐述了五项评分的核心算法。本文还通过设计开发一个Android移动平台软件,方便用户选择视频质量更好的流媒体,同时也利于运营商针对视频存在的问题进行测评维修。这推动了整个流媒体服务器的发展,并且推广了新一代视频编解码技术H.265。

  参考文献:

  [1]Ting-Yu Huang,Guo-An Jian,Jui-Chin Chu,Joint Algorithm/Code-Level Optimization of H.264 Video Decoder For Mobile MultiMedia Applications[J], Acoustics, Speech and Signal Processing,pp.2189- 2192.March 2008

  [2]范媛媛,沈湘衡,桑英军.基于对比度敏感度的无参考图像清晰度评价[J].光学精密仪器, 2011, 19(10): 2485-2493

  [3]王鸿南,钟文,汪静,等. 图像清晰度评价方法研究[J]. 中国图像图形学报, 2004, 9(7): 828-831

  [4]杨斯涵. 基于边缘特征的单帧图像清晰度判定[J]. 计算机工程与应用, 2009, 45(30): 198-203

  [5]李奇,冯华君,徐之海,等. 数字图像清晰度评价函数研究[J]. 光子学报,2002,31(6):736-738

  [6]ATIS Teehnical Report T1.TR.PP.74. Objective video quality measurement using a Peak-Signal-to-Noise-Ratio(PSNR) full reference technique.2004

参与评论
回复:
0/300
文明上网理性发言,评论区仅供其表达个人看法,并不表明a&s观点。
0
关于我们

a&s是国际知名展览公司——德国法兰克福展览集团旗下专业的自动化&安全生态服务平台,为智慧安防、智慧生活、智能交通、智能建筑、IT通讯&网络等从业者提供市场分析、技术资讯、方案评估、行业预测等,为读者搭建专业的行业交流平台。

免责声明:本站所使用的字体和图片文字等素材部分来源于互联网共享平台。如使用任何字体和图片文字有冒犯其版权所有方的,皆为无意。如您是字体厂商、图片文字厂商等版权方,且不允许本站使用您的字体和图片文字等素材,请联系我们,本站核实后将立即删除!任何版权方从未通知联系本站管理者停止使用,并索要赔偿或上诉法院的,均视为新型网络碰瓷及敲诈勒索,将不予任何的法律和经济赔偿!敬请谅解!
© 2020 Messe Frankfurt (Shenzhen) Co., Ltd, All rights reserved.
法兰克福展览(深圳)有限公司版权所有 粤ICP备12072668号 粤公网安备 44030402000264号
用户
反馈