精华内容
下载资源
问答
  • H265H264编码效率的一个比较
    千次阅读
    2020-12-23 11:55:19

    H265已经发布很长一段时间了,市面上也出现了很多H265的产品,主流的手机都支持H265的硬解码,但从内容来看,支持H265的并不多,H265的推广明显落后于同期的H264,个人认为这其中最主要的原因是专利的因素而非技术的原因。H265的专利是一言难尽,简而言之就是有几家专利钉子户,搞不定,目前也没有判例出来,所以很多内容商都是在回避H265。今天这篇文章不谈专利的问题,主要是从技术面拿两者做一个比较。

    H265作为H264的下一代,压码效率有所提升那是必然的(不然还出个毛线的下一代),但好多少?这个问题是一个比较难量化的问题,笼统的讲法就是H265能够比H264节约大概一半的码率,但实际表现到底如何呢?让我们来做一组测试把,用数据说话!

    测试环境:

    某主流SoC厂商的芯片,同时支持H264/H265的codec,基于同样的YUV source(1080P),分别做H264 HP/H265的编码,然后使用Elecard StreamEye来计算两者平均的PSNR,以此来比较codec的性能。

    测试结果:

    结果分析:

    Fix QP mode: 同样的QP(Quality Parameter)下H265的PSNR要高于H264.

    CBR mode:  如果采用H264一半的bitrate,H265的PSNR是要略输于H264的,同等bitrate的情况下,H265的PSNR是要明显好于H264。

    总结

    1. PSNR的方法也只是一个参考,随着场景的不同,计算结果可能出来不一样的表现,但总的而言是可以反映一个codec的优劣,但数字仅供参考。

    2. 不同分辨率性能的差异也有所不同,总的而言,resolution越高,H265的优势越大,这点很重要。H264的一个最大的瓶颈就是以目前的网络带宽,无法支持高分辨率比如4K/8K的视频。

    3. H265虽然在encode上有明显的优势,但专利还是一个硬伤,几个大厂(Google,  Microsoft, Mozila, Cisco, Netflix,Facebook,Apple,Hulu,BBC,Nvidia,ARM)在主导AV1, 目前的状态我觉得是双输,希望H265的专利各方能有一个共识,这样H265才能延续H264的辉煌。

    更多相关内容
  • H265/HEVC

    千次阅读 2021-05-26 18:19:46
    H.265又称为HEVC(全称High Efficiency Video Coding,高效率视频编码,本文统称为H.265),是ITU-T H.264/MPEG-4 AVC标准的继任者。2004年开始由ISO/IEC Moving Picture Experts Group(MPEG)和ITU-T Video Coding...

    一.H265/HEVC

    1.介绍

    H.265又称为HEVC(全称High Efficiency Video Coding,高效率视频编码,本文统称为H.265),是ITU-T H.264/MPEG-4 AVC标准的继任者。2004年开始由ISO/IEC Moving Picture Experts Group(MPEG)和ITU-T Video Coding Experts Group(VCEG)作为ISO/IEC 23008-2 MPEG-H Part 2或称作ITU-T H.265开始制定。第一版的HEVC/H.265视频压缩标准在2013年4月13日被接受为国际电信联盟(ITU-T)的正式标准。
    在这里插入图片描述

    2.制定

    2012年8月,爱立信公司推出了首款H.265编解码器,而在仅仅六个月之后,国际电联(ITU)就正式批准通过了HEVC/H.265标准,标准全称为高效视频编码(High Efficiency Video Coding),相较于之前的H.264标准有了相当大的改善。
    H.265旨在在有限带宽下传输更高质量的网络视频,仅需原先的一半带宽即可播放相同质量的视频。这也意味着,我们的智能手机、平板机等移动设备将能够直接在线播放1080p的全高清视频。H.265标准也同时支持4K(4096×2160)和8K(8192×4320)超高清视频。可以说,H.265标准让网络视频跟上了显示屏“高分辨率化”的脚步。
    可能在几个月内,你就能看到支持H.265解码的设备上市了(如智能手机、显卡等)。H.264统治了过去的五年,而未来的五年甚至十年,H.265很可能将会成为主流。

    3.传输码率

    H.263可以2~4Mbps的传输速度实现标准清晰度广播级数字电视(符合CCIR601、CCIR656标准要求的720*576);而H.264由于算法优化,可以低于2Mbps的速度实现标清数字图像传送;H.265 High Profile可实现低于1.5Mbps的传输带宽下,实现1080p全高清视频传输。
    除了在编解码效率上的提升外,在对网络的适应性方面H.265也有显著提升,可很好运行在Internet等复杂网络条件下。

    4.优势

    H.265/HEVC的编码架构大致上和H.264/AVC的架构相似,主要也包含,帧内预测(intra prediction)、帧间预测(inter prediction)、转换(transform)、量化(quantization)、去区块滤波器(deblocking filter)、熵编码(entropy coding)等模块,但在HEVC编码架构中,整体被分为了三个基本单位,分别是1.编码单位(coding unit, CU)、2.预测单位(predict unit, PU)和3.转换单位(transform unit, TU)
    比起H.264/AVC,H.265/HEVC提供了更多不同的工具来降低码率,以编码单位来说,H.264中每个宏块(macroblock/MB)大小都是固定的16x16像素,而H.265的编码单位可以选择从最小的8x8到最大的64x64。
    在这里插入图片描述
    在这里插入图片描述
    以该图为例,信息量不多的区域(颜色变化不明显,比如车体的红色部分和地面的灰色部分)划分的宏块较大,编码后的码字较少,而细节多的地方(轮胎)划分的宏块就相应的小和多一些,编码后的码字较多,这样就相当于对图像进行了有重点的编码,从而降低了整体的码率,编码效率就相应提高了。
    同时,H.265的帧内预测模式支持33种方向(H.264只支持8种),并且提供了更好的运动补偿处理和矢量预测方法。
    反复的质量比较测试已经表明,在相同的图象质量下,相比于H.264,通过H.265编码的视频大小将减少大约39-44%。由于质量控制的测定方法不同,这个数据也会有相应的变化。
    通过主观视觉测试得出的数据显示,在码率减少51-74%的情况下,H.265编码视频的质量还能与H.264编码视频近似甚至更好,其本质上说是比预期的信噪比(PSNR)要好。
    这些主观视觉测试的评判标准覆盖了许多学科,包括心理学和人眼视觉特性等,视频样本非常广泛,虽然它们不能作为最终结论,但这也是非常鼓舞人心的结果。
    H.264与H.265编码视频的主观视觉测试对比,我们可以看到后者的码率比前者大大减少了。
    在这里插入图片描述
    截止2013年的HEVC标准共有三种模式:Main、Main 10、Main Still Picture。Main模式支持8bit色深(即红绿蓝三色各有256个色度,共1670万色),Main 10模式支持10bit色深,将会用于超高清电视(UHDTV)上。前两者都将色度采样格式限制为4:2:0。预期将在2014年对标准有所扩展,将会支持4:2:2和4:4:4采样格式(即提供了更高的色彩还原度),和多视图编码(例如3D立体视频编码)。
    事实上,H.265和H.264标准在各种功能上有一些重叠。例如,H.264标准中的Hi10P部分就支持10bit色深的视频;另一个H.264的部分(Hi444PP)还可以支持4:4:4色度抽样和14bit色深。在这种情况下,H.265和H.264的区别就体现在前者可以使用更少的带宽来提供同样的功能,其代价就是设备计算能力:H.265编码的视频需要更多的计算能力来解码。
    已经有支持H.265解码的芯片发布了——博通公司在2013年1月初的CES大展上发布了一款Brahma BCM7445芯片,它是一个采用28纳米工艺的四核处理器,可以同时转码四个1080P视频数据流,或解析分辨率为4096×2160的H.265编码超高清视频。
    截止2013年,有线电视和数字电视广播主要采用仍旧是MPEG-2标准。好消息是,H.265标准的出台最终可以说服广播电视公司放弃垂垂老矣的MPEG-2,因为同样的内容,H.265可以减少70-80%的带宽消耗。这就可以在现有带宽条件下轻松支持全高清1080p广播。但是另一方面,电视广播公司又很少有想要创新的理由,因为大多数有线电视公司在他们的目标市场中面临的竞争实在是有限。出于节省带宽的目的,反而是卫星电视公司可能将会率先采用H.265标准。
    长远角度看,H.265标准将会成为超高清电视(UHDTV)的4K和8K分辨率的选择,但这也会带来其它问题,比如2013年还极少有原生4K分辨率的视频内容。H.265标准的完成意味着内容拥有者在2013年已经有了一个对应的理论标准,但是他们在2013年还没有一个统一的方式来传送内容。

    标清(SD)、高清(HD)和4K分辨率超高清(UHD)视频大小对比图
    蓝光光盘协会(The Blu-ray Disc Association)正在研究在蓝光光盘标准中支持4K分辨率视频的方法,但是这可没那么简单。理论上H.264在扩展后就可以拥有这个功能,但是到那时码率问题又会浮出水面。一个H.264编码的4K蓝光电影需要的存储空间远大于相同内容的H.265版本,其大小可高达100G以上,而现有的播放器也不支持100-128GB的高容量可刻录可擦写光盘(BDXL)。
    到目前为止,仍然没有一个妥善解决方案,可以将4K分辨率视频加入已有的蓝光标准中并且不破坏其兼容性。虽然更新到H.265标准并不需要对光盘制造工艺进行改进,但却需要制造全新的播放器才能将新的蓝光光盘播放出来,虽然截止2013年的有些播放器可以播放高密度光盘,但那也需要进行设备检查升级才行。
    另一个大问题就是游戏主机对H.265标准的支持。索尼的PS2和PS3主机推动了DVD和蓝光标准的发展,而即将发布的PS4理论上很可能将支持4K分辨率的内容,但4K分辨率的视频该怎样传送,通过哪些标准进行支持?这仍然还在讨论中。
    目前看来,对于H.265/HEVC标准,我们仍需持谨慎乐观态度。但有一点是肯定的:H.265标准在同等的内容质量上会显著减少带宽消耗,有了H.265,高清1080P电视广播和4K视频的网络播放将不再困难,但前提是索尼或者其它媒体巨头能想出办法来传送这些内容。同时,如果移动设备要采用H.265标准,那么其在解码视频时对电量的高消耗也是各大厂商需要解决的问题。

    二.技术细节

    ZPAV (H.265) 是 音视频 压缩解压 协议,非常不同于H264/MPEG4,ZPAV (H.265) 的基本算法 是 小波,多级树集合群,广义小波,数学形态小波。
    ZPAV (H.265) 基本算法 :
    1,图象与声音分解与合成 :小波 ;
    2,图象与声音前处理 :小波子带零交叉降噪,目标纹理处理,语音处理 ;
    3,速率控制 :小波子带熵速率控制 ;
    4,量化与反量化 :小波子带熵量化与反量化 ;
    5,低频分量和高频分量的降维 :小波子带邻域交叉降维 ;
    6,运动矢量和量化表的分解与合成 :广义小波 ;
    7,位面编码 :数学形态小波,多级树集合群,嵌入零树,位面降维 ;
    8,位流编码 :算术编码,熵编码 ;
    9,运动估计 :宏块最优决策,运动矢量预测 ;A,运动搜索 :钻石,大钻石,小钻石,方形 ; B,图象与声音后处理 :低通滤波,断点重构,宏块平滑 ;C,误码纠错 :矢量仿真,帧间仿真 。
    ZPAV (H.265) 基本指标 :
    1, 平均MIPS为100M ;
    2, 图象约50 -10K Kbits/秒;(25或30帧/秒,CIF,D1,HD)
    3, 声音约 4 ~ 256 Kbits/秒;(采样率8 - 44.1 K,单双通道)
    4, 实时运行在 DM6?XX(TI),pnxNNNN(PHILIPS),BT878(X86),SAA7130(X86),NETWORK(X86) 等平台上 。
    ZPAV (H.265) 实现语言 :
    1,C, MASM(MMX,SSE(X86));
    2,DSP_ASM(DM6?XX(TI),pnxNNNN(PHILIPS));
    3,verilog(在开发中) 。

    展开全文
  • 随着网路摄影机(IP Camera)开始迈向全高画质(Full HD, FHD)与超高解析度(Ultra HD, UHD)影像规格,压缩效率更佳的H.265视讯编码技术市场需求也逐渐浮现,吸引各家影像处理芯片业者已积极开发相关解决方案,...
  • 近日,富瀚微电子宣布推出FH8735/FH8736系列H.264视频编码芯片,针对多通道高清DVR板卡、嵌入式DVR、视频服务器和高清网络摄像机应用,提供多种产品解决方案。FH8735/FH8736的高性能H.264编码能力将有效推动视频监控...
  • 可实现高画质的多路视频实时编码,以确保画面的清晰度和实时性,低码率的H.264编码技术极大减少网络存储空间。该芯片可广泛应用于实时视频通信、数字图像监控等领域,包括视频压缩卡、数字硬盘录像机(DVR)、视频...
  • H.265视频编码原理总结

    千次阅读 2022-01-12 16:05:02
    H.265视频编码原理总结 转载地址 1 概述 H.265(HEVC High Efficiency Video Coding)是现行H.264标准于2003年实现标准化以来时隔10年推出的新标准,将成为支撑未来十年的影像服务和产品的视频压缩技术。其特点是,...

    H.265视频编码原理总结

    转载地址

    1 概述

    H.265(HEVC High Efficiency Video Coding)是现行H.264标准于2003年实现标准化以来时隔10年推出的新标准,将成为支撑未来十年的影像服务和产品的视频压缩技术。其特点是,支持1080p以上的4K×2K和8K×4K分辨率,将视频压缩率提高至H.264的约2倍。也就是说,能以原来一半的编码速度发送相同画质的视频。例如,按照20Mbit/秒发送的H.264格式视频内容,在相同画质的条件下用HEVC格式只需10Mbit/秒的速度。

    1.1 H.265发展背景

    H.264虽然是一个划时代的数字视频压缩标准,但是随着数字视频产业链的高速发展,H.264的局限性逐步显现,并且由于H.264标准核心压缩算法的完全固化,并不能够通过调整或扩充来更好地满足当前高清数字视频应用。

    视频应用向以下几个方面发展的趋势愈加明显:

    • 高清晰度:数字视频的应用格式从720P向1080P全面升级,在一些视频应用领域甚至出现了4K×2K、8K×4K的数字视频格式;

    • 高帧率:数字视频帧率从30fps向60fps、120fps甚至240fps的应用场景升级;

    • 高压缩率:传输带宽和存储空间一直是视频应用中最关键的资源,因此,在有限的空间和管道中获得最佳的视频体验一直是用户的不懈追求。

      由于数字视频应用在发展中面临上述趋势,如果继续采用H.264编码就会出现如下一些局限性:

    • 宏块个数的爆发式增长,会导致用于编码宏块的预测模式、运动矢量、参考帧索引和量化级等宏块级参数信息所占用的码字过多,用于编码残差部分的码字明显减少。即:单个宏块所表示的图像内容的信息大大减少,导致4×4或8×8块变换后的低频率相似程度也大大提高,会出现大量的冗余;

    • 分辨率的大幅增加,表示同一个运动的运动矢量的幅值将大大增加,H.264中采用一个运动矢量预测值,对运动矢量差编码使用的是哥伦布指数编码,该编码方式的特点是数值越小使用的比特数越少。因此,随着运动矢量幅值的大幅增加,H.264中用来对运动矢量进行预测以及编码的方法压缩率将逐渐降低;

    • 并行度比较低:H.264的一些关键算法,例如采用CAVLC和CABAC两种基于上下文的熵编码方法、deblock滤波等都要求串行编码,并行度比较低。针对GPU、DSP、FPGA、ASIC等这种并行化程序非常的CPU,H.264的这种串行化处理越来越成为制约运算性能的瓶颈。

    基于上述视频应用的发展趋势和H.264的局限性,面向更高清晰度、更高频率、更高压缩率的高效视频编码标准H.265应运而生。

    HEVC的核心目标:在H.264的基础上,保证相同视频质量的前提下,视频流的码率减少50%。在提高压缩效率的同时,允许编码端适当提高复杂度。

    HEVC的编码框架:沿用H.263的混合编码框架,即用帧间和帧内预测编码消除时间域和空间域的相关性,对残差进行变换编码以消除空间相关性,熵编码消除统计上的冗余度。HEVC在混合编码框架内,着力研究新的编码工具或技术,提高视频压缩效率。

    HEVC的技术创新:基于大尺度四叉树结构的分割技术,多角度帧内预测技术,运动估计融合技术,高精度运动补偿技术,自适应环路滤波技术以及基于语义的熵编码技术。

    1.2 发展历程

    早在2004年,ITU-T视频编码专家组(VCEG)开始研究新技术以便创建一个新的视频压缩标准。在2004年10月,H.264/ AVC小组对潜在的各种技术进行了调查。2005年1月VCEG的会议上,VCEG开始指定某些主题为“关键技术”作进一步研究。2005年成立软件代码库称为Key Technical Areas (KTA)用来评估这些新的“关键技术。KTA的软件是在联合模型(JM)基础上由MPEG和VCEG的视频组联合开发的,项目名称暂定为H.265和H.NGVC(Next-generation Video Coding)。

    按照NGVC的初步要求,在维持视觉HEVC(High efficiency video coding)。质量相同的情况下,比特率较H.264/MPEG-4 AVC的高中档(high profile),计算复杂度维持在比特率较H.264/MPEG-4 AVC的高中档的1/2至3倍之间。 2009年7月,实验结果表明比特率相较于H.264/AVC High Profile平均降低20%左右,这些结果促使MPEG与VCEG合作发起的新的标准化工作。

    2010年1月,VCEG和MPEG开始发起视频压缩技术正式提案。相关技术由视频编码联合组审议和评估,其合作小组第一次会议于2010年4月召开大会,一共有27个完整的提案。评价结果表明,一些提案在许多测试用例可以达到只用一半的比特率并维持H.264相同的视觉质量。在这次会议上,联合项目名改称为高效率的视频编码(HEVC),并且JCT-VC小组把相关技术集成到一个软件代码库(HM)和标准文本草案规范,并进行进一步实验,以评估各项功能。

    2012年2月10日,在美国圣何塞召开了第99届MPEG会议。MPEG组织和ITU-T组织对JCT-VC的工作表示满意,准备于2013年1月,同时在ISO/IEC和ITU-T发布HEVC标准的最终版本。

    2013年1月26日,HEVC正式成为国际标准。总结HEVC发展的标准时间点:

    • 2010年1月,ITU-T VCEG和ISO/IEC MPEG联合成立JCT-VC联合组织,统一制定下一代编码标准:HEVC;

    • 2012年2月,委员会草案通过了HEVC;

    • 2012年7月,HEVC国际标准草案获得通过;

    • 2013年1月,国际标准最终获得通过。

    1.3 应用领域

    伴随着每次视频压缩技术的进化,会产生多种影像服务和产品的诞生,如图1.1所示。1995年实现标准化的MPEG-2得到了DVD和数字电视等领域采用,大幅扩大了视频压缩技术的应用范围。MPEG-4在1998年实现标准化后,立即应用到了移动和互联网视频服务领域。伴随视频压缩技术的升级,各种影像服务和产品随之登场。2013年以后,随着HEVC的出现,4K及8K电视及网络全高清影像服务也纷纷出现。箭头指示的是各服务和产品主要采用的压缩技术。

    img

    图****1.1 视频压缩技术及对应的影像服务和产品的历史

    HEVC的应用示意图如图1.2所示。在广播电视、网络视频服务、电影院及公共大屏幕等众多领域,4K×2K和8K×4K视频发送将变得更容易实现。个人电脑及智能手机等信息终端自不用说,平板电视、摄像机及数码相机等AV产品也会支持HEVC。不仅是这些既有市场,HEVC还有可能在今后有望增长的新市场上大显身手。例如,影像监控系统就是其中之一。影像监控系统最近几年在快速从原来的模拟摄像头组合VTR的方式,向经由IP网络发送、存储和浏览数码摄像头拍摄的视频的方法过渡。为提高安全性,需要增加摄像头数量、提高影像的精细度,而与此同时,确保网络频带和存储容量增加。估计HEVC将作为解决这些课题的措施而被得到应用。

    img

    1.2 HEVC的应用示例

    1.4 优缺点

    优点:

    • 高压缩率:在视频质量相同的条件下,较264平均减少50%的码流,可以节省大量的网络带宽及存储空间;可以在相同码流的条件下提供更加高质量的视频
    • 支持8192×4320分辨率

    缺点:

    • HEVC使用到的技术和算法较前两代标准264和MPEG-2更为复杂,视频流在压缩过程中需要更多的选择和运算。
    • HEVC不支持大多数硬件,通常需要效率更高,更多的处理器来辅助,这意味着,如果有一个固件需要更新,而编解码器却跟不上升级速度的话,那么我们的电视机顶盒和蓝光播放机是无法播放HEVC编码内容的,需要等待解决方案出现后才能继续使用。

    2 基础概念及算法

    2.1 码率

    视频码率是视频数据(视频色彩量、亮度量、像素量)每秒输出的位数。一般用的单位是kbps。

    在视频会议应用中,视频质量和网络带宽占用是矛盾的,通常情况下视频流占用的带宽越高则视频质量也越高;如要求高质量的视频效果,那么需要的网络带宽也越大;解决这一矛盾的钥匙当然是视频编解码技术。评判一种视频编解码技术的优劣,是比较在相同的带宽条件下,哪个视频质量更好;在相同的视频质量条件下,哪个占用的网络带宽更少。

    码率越高理论上意味着质量越好,但是在肉眼分辨的范围内,码率高到一定程度就没什么差别了。所以码率设置有最优值,以H.264文档中视频建议的码率:

    视频大小分辨率建议码率
    480P720X4801800Kbps
    720P1280X7203500Kbps
    1080P1920X10808500Kbps

    2.2 帧率

    是用于测量显示帧数的量度。所谓的测量单位为每秒显示帧数或“赫兹”。区别与码率,帧率是记录显示帧数的量度,而码率是数据传输时单位时间传送的数据位数。

    由于人类眼睛的特殊生理结构,如果所看画面之帧率高于16的时候,就会认为是连贯的,此现象称之为视觉停留。这也就是为什么电影胶片是一格一格拍摄出来,然后快速播放的。

    而对游戏,一般来说,第一人称射击游戏比较注重FPS的高低,如果FPS<30的话,游戏会显得不连贯。所以有一句有趣的话:“FPS(指FPS游戏)重在FPS(指帧率)。

    每秒的帧数(fps)或者说帧率表示图形处理器处理场时每秒钟能够更新的次数。高的帧率可以得到更流畅、更逼真的动画。一般来说30fps就是可以接受的,但是将性能提升至60fps则可以明显提升交互感和逼真感,但是一般来说超过75fps一般就不容易察觉到有明显的流畅度提升了。

    如果帧率超过屏幕刷新率只会浪费图形处理的能力,因为监视器不能以这么快的速度更新,这样超过刷新率的帧率就浪费掉了。

    2.3 量化参数QP

    QP是量化步长(Qstep)的序号,对于亮度编码而言,量化步长共有52个值,QP取值051,对于色度编码QP的取值039。

    量化参数,反映了空间细节压缩情况。值越小,量化越精细,图像质量越高,产生的码流也越长。QP 小,大部分的细节都会被保留,码率增大。QP 增大,一些细节丢失,码率降低,但图像失真加强和质量下降。也就是说,QP 和比特率成反比的关系,而且随着视频源复杂度的提高,这种反比关系会更明显。

    img

    img

    2.4 GOP

    GOP(Group Of Pictures, 图像组)是一组连续的图像,由一个I帧和多个B/P帧组成,是编解码器存取的基本单位。GOP结构常用的两个参数M和N,M指定GOP中首个P帧和I帧之间的距离,N指定一个GOP的大小。例如M=1,N=15,GOP结构为:IPBBPBBPBBPBBPB,GOP有两种:闭合式GOP和开放式GOP:

    闭合式GOP:闭合式GOP只需要参考本GOP内的图像即可,不需参考前后GOP的数据。这种模式决定了,闭合式GOP的显示顺序总是以I帧开始以P帧结束

    开放式GOP :开放式GOP中的B帧解码时可能要用到其前一个GOP或后一个GOP的某些帧。码流里面包含B帧的时候才会出现开放式GOP。

    开放式GOP和闭合式GOP中I帧、P帧、B帧的依赖关系如下图所示:

    img

    2.5 失真

    衡量失真的三种准则:

    • 均方差MSE
    • 信噪比SNR
    • 峰值信噪比PSNR

    2.6 量化

    1、大概的公式:l = floor(c/Qstep + f),c表示系数、Qstep表示量化步长、l表示量化后的值,floor是向下取整函数,f控制舍入关系

    2、HEVC有52个量化步长,对应了52个量化参数QP,可以通过查表查询

    3、对于色度分量,量化参数限制为045。具体的说,当亮度分量的QP小于30时,色度分量的QP和亮度的相同,当亮度信号QP在3051时,两者的关系可以通过查表得出

    4、量化过程同时要完成整数DCT中的比例缩放运算,为了避免浮点计算,HEVC把分子分母进行放大处理,然后取整,以此保证运算精度,QP的运算方式也要进行调整:QP = floor(QP/6) + QP % 6

    5、总的量化公式:

    img

    2.7 率失真优化

    1、分层递归遍历所有的CU划分模式,选取最优的CU划分模式,这个过程称为CU划分模式判别

    2、对于其中的每一个CU,遍历所有的PU模式,选取最优的PU模式,并在此基础上选择最优的TU模式

    3、对于其中的每一个PU,遍历所有的预测模式,选取最优的预测模式,这个过程称为预测模式判别

    (1)帧内预测模式。

    ​ ①遍历所有的预测模式,得到每种模式下的残差信号,再对残差信号进行Hadamard变换计算SATD值

    ​ ②利用SATD值计算每种预测模式的率失真代价,选取率失真代价最小的几种模式(与PU大小相关)为预测模式集

    ​ ③将已编码相邻块的预测模式补充到预测模式集中

    ​ ④遍历模式集合中的所有模式,并对残差信号进行正常编码(熵编码),计算率失真代价

    ​ ⑤选取最优的预测模式作为该PU的最优模式

    ​ ⑥当亮度块的模式确定之后,把该模式以及DC、planar、水平方向模式、垂直方向模式作为色度块的候选模式,选取最优的模式即可

    (2)帧间预测模式。

    ​ HEVC采用了Merge和AMVP技术,更加高效地表示帧间预测参数,但是这两种方式有比较大的区别,因此帧间预测可以分成Merge帧间预测模式和非Merge帧间预测模式(采用AMVP技术),分别选取最优的Merge帧间预测模式和非Merge帧间预测模式,然后从中选取最优的模式。

    ​ 对于Merge帧间预测模式,遍历所有的候选模式,计算率失真代价,选择率失真代价最小的模式为最优模式。当采用merge帧间预测模式I按摩,且预测残差信号的编码比特数为零时,只需要编码skip标识和merge索引两个语法元素,此时该模式称为MODE_SKIP模式

    ​ 对于非Merge帧间预测模式(采用AMVP技术)

    ​ ①根据AMVP技术确定MVP列表,计算每个MVP的率失真代价,得到最优的MVP

    ​ ②以最优MVP为起始点,进行整像素运动预测,得到最优的整像素运动矢量

    ​ ③以整像素运动矢量为中心,进行半像素搜索,从周围的8个点确定最优的半像素精度运动矢量

    ​ ④以半像素精度矢量为中心,进行1/4像素精度的运动搜索,确定最优的1/4像素精度运动矢量

    (3)PU模式判别

    ​ ①计算2Nx2N模式的率失真代价,将其作为最优代价,如果预测残差的编码比特数为零,那么满足CBF_Fast,直接跳至⑪,并将2Nx2N作为最优的PU模式

    ​ ②如果CU的深度已经取得最大值,且inter_4x4_enabled_flag是1,那么执行③,否则执行④

    ​ ③计算NxN模式的率失真,更新最优代价和模式,如果预测残差的编码比特数为零,那么满足CBF_Fast,直接跳至⑪,并将NxN作为最优的PU模式

    ​ ④计算Nx2N模式的率失真代价,更新最优代价和模式,如果预测残差的编码比特数为零,那么满足CBF_Fast,直接跳至⑪,并将Nx2N作为最优的PU模式

    ​ ⑤计算2NxN模式的率失真代价,更新最优代价和模式,如果预测残差的编码比特数为零,那么满足CBF_Fast,直接跳至⑪,并将2NxN作为最优的PU模式

    ​ ⑥如果TestAMP_Hor为1,当前CU执行水平方向上的AMP模式,否则执行本步骤。计算2NxnU模式的率失真代价,更新最优代价和模式,如果预测残差的编码比特数为零,那么满足CBF_Fast,直接跳至⑪,并将2NxnU作为最优的PU模式;否则计算2NxnD模式的率失真代价,更新最优的代价和模式,如果预测残差的编码比特数为零,那么满足CBF_Fast,直接跳至⑪,并将2NnD作为最优的PU模式

    ​ ⑦如果TestAMP_Ver为1,当前CU执行垂直方向上的AMP模式,否则执行本步骤。计算nLx2N模式的率失真代价,更新最优模式和代价,如果预测残差的编码比特数为零,那么满足CBF_Fast,直接跳至⑪,并将nLx2N作为最优的PU模式;否则计算nRx2N模式的率失真代价,更新最优模式和代价,如果预测残差的编码比特数为零,那么满足CBF_Fast,直接跳至⑪,并将nRx2N作为最优的PU模式

    ​ ⑧注意上面的都是帧间的模式,现在需要计算帧内2Nx2N模式的率失真代价,更新最优模式和代价

    ​ ⑨如果当前CU深度为最大值,计算帧内NxN模式的率失真代价,更新最优模式和代价

    ​ ⑩如果当前CU大于或等于PCM模式所允许的最小单元,并且代价大于PCM模式,那么更新最优模式和代价

    ​ ⑪结束搜索,得到最优的PU模式。注意对于每一种PU模式,都要夯实不同的TU划分,选取最优的TU模式,因此最优的PU模式包含了最优的TU模式

    (4)CU划分模式判决

    ​ ①把CTU作为CU,计算率失真代价(最优PU模式时),此时应包含CU分割标志(split_flag)的编码比特数

    ​ ②对CU进行四叉树划分,计算每个子CU的最小率失真代价,并对所有子CU的率失真代价求和,得到该CU的率失真代价

    ​ ③为每个子CU作为CU重复②

    ​ ④重复③直到编码的最大深度

    ​ ⑤从最大的编码深度,比较4个子CU与CU的率失真代价,一次选出最优的划分方式。

    ​ ⑥对于每个CU,如果其帧间2Nx2N模式为MODE_SKIP,则满足Early_SKIP条件,直接结束该CU的进一步划分

    3 编解码技术

    3.1 H.265编码框架及编码单元结构

    与H.263以来的编码标准一样,HEVC的设计沿用了经典的基于块的混合视频编码框架。框架主要包括,帧内预测、帧间预测、转换、量化、去区块滤波器、熵编码等模块,但在HEVC编码架构中,整体被分为了三个基本单位,分别是:编码单位(coding unit,CU)、预测单位(predict unit,PU)和转换单位(transform unit,TU)。

    img

    img

    1.3 HEVC编码框架

    视频编码的基本流程为:将视频序列的每一帧划为固定大小的宏块,通常为16×16像素的亮度分量及2个8×8像素的色度分量,之后以宏块为单位进行编码。对视频序列的第一帧及场景切换帧或者随机读取帧采用I帧编码方式,I帧编码只利用当前帧内的像素空间预测,类似于JPEG图像编码方式。其大致过程为,利用帧内先前已经编码中的像素对当前块内的像素值作出预测(对应图中的帧内预测模块),将预测值与原始视频信号作差运算得到预测残差,再对预测残差进行变换、量化及熵编码形成编码码流。对其余帧采用帧间编码方式,包括前向预测P帧和双向预测B帧,帧间编码是对当前帧内的块在先前已编码帧中寻找最相似块(运动估计)作为当前块的预测值(运动补偿),之后如I帧的编码过程对预测残差进行编码。编码器中还含有一个解码器,模拟解码过程以获得解码重构图像,作为编码下一帧或下一块的预测参考。解码步骤包括对变换量化后的系数激进型反量化、反变换,得到预测残差,之后预测残差与预测值相加,经滤波去除块效应后得到解码重构图像。

    img

    图****1.4 帧内预测编码图

    img

    图****1.5 帧间预测编码图

    HEVC以LCU块为单位对输入视频进行处理,首先是预测,有两种模式:帧内预测与帧间预测。

    帧内预测,即利用当前图像内已编码像素生成预测值;

    帧间预测,即利用当前图像之前已编码图像的重建像素生成预测值。

    3.2 编码单元结构

    H.264通常会以16×16像素为单位,将图片划分为多个大小相同的宏块,并以这些宏块作为编码时的最小元素。H.265则是将切割画面的工作从使用者手工设定,转交给编码器来决定,让编码器视情况以16×16、32×32、64×64等尺寸,将画面切割为数个编码树单元,一般来说区块尺寸越大,压缩效率就越好。

    img

    图****2.1 左图是H.264标准,每个宏块大小都是固定的;

    右图是H.265标准,编码单元大小是根据区域信息量来决定的

    H.265没有沿用之前H.264之前宏块的概念,而是使用编码单元(CU)作为及基本的编码结构。一个CU可以包含一个或多个不同尺寸的预测单元PU,一个PU包含若干个变换单元(TU)。CU、PU、TU三种在编码中起的作用不一样,不过这种编码方式还是基于混合编码,只是采用这种划分方式能够更好地分割一幅图像,用于后续的预测和处理。采用这种结构设计的目的是在增加灵活性的同时,使压缩预测更符合图像特性。

    1. 编码基本单元(CU)

    CU的特点是方块,在LCU基础上划分的,通常LCU的大小64×64,可以使用递归分割四叉树的方法来得到,大的CU适用于图像中比较平滑的部分,而小的CU则适用于边缘和纹理较丰富的区域。采用大尺寸CU主要是为了高清压缩编码的应用,毕竟如1080p甚至更大分辨率的视频图像,其空间会有更大面积的一致性,因此采用更大的编码单元能更有效地减少空间冗余。

    编码单元是否被划分取决于分割标志位split flag。0表示不再进行四叉树划分,1表示继续划分为4个独立的编码单元。

    img

    图****2.2 图像划分结构示意图

    如果仍采用光栅扫描方式对CU寻址会很不方便,因此,H.265定义了Z扫描顺序,如图2.3所示。这种顺序保证了对于不同分割都能按照相同的遍历顺序进行寻址有利于程序中递归实现。

    img

    2.3 Z扫描方式

    2.预测单元(PU)

    PU是基本的预测单元,是在编码单元CU的基础上进行划分的,有skip、intra、inter三种模式可以分割,每个CU中可以包含一个或者多个PU。PU可以是正方形的,也可以是长方形的,这是为了能够更好地区分背景与物体,如图2.4所示。

    img

    2.4 PU划分图

    如图2.5所示,PU的划分方式可分为对称及不对称两种,要注意的是PU的尺寸不能超过其所属的CU。不对称的划分方式主要适用于CU中纹理偏差比较大的情况,增加预测的精准度,不对称的PU仅适用于帧间预测。

    img

    2.5 PU划分方式

    3.变换单元(TU)

    TU是变换及量化的基本单元,它可以大于PU但是不能大于CU的大小。TU同样采用二叉树的分割结构,所支持的尺寸从4×4至32×32的大小。TU的形状取决于PU的划分模式,当PU为正方形时,TU也是正方形的,当PU是长方形的,TU也是长方形的,一个CU可以包含一个或多个TU。

    根据预测残差的局部变化特性,TU可以自适应地选择最优的模式。大块的TU模式能够将能量更好地集中,小块的TU模式能够保存更多的图像细节。这种灵活的分割结构,可以使变换后的残差能量得到充分压缩,以进一步提高编码增益。

    img

    2.6 TU划分图

    总结:如图2.7,可以形象地展示CU、PU及TU之间的关系。

    img

    图****2.7 划分关系

    3.3 帧内预测

    利用图像的空间相关性,用周围重建像素值对当前编码块进行预测 。

    H.265更多的帧内预测方向,在H.264采用9个帧内预测方向的场合,,H.265预测方向拓展到33个,另外加上一个DC和一个planar,一共35中预测模式,使得预测更加精细,增加更多提升更高效帧内压缩的可能的参考像素块。明显的代价是在增加的方向中搜索需要更多编码时间。

    img

    图****2.8 帧内预测模式

    Planar模式

    平面预测是一种新提出的预测方法,常用于内容平滑或纹理不清晰的单元。它为预测单元中的每一个像素点也都要进行插值预测,如图所示。首先根据左侧相邻单元的右下角像素和上方相邻单元的下边界像素插值出当前预测单元下边界的每个像素点,再根据上方相邻单元的右下角像素和左侧相邻单元的右边界像素插值出当前预测单元右边界的每个像素点,然后利用上方相邻单元的下边界、左侧相邻单元的右边界以及插值出的当前单元的下边界和右边界插值出其余的像素点。

    img

    2.9 Planar插值预测

    3.4 帧间预测

    帧间预测利用连续图像之间的相关性,通过运动估计和运动补偿的编码方法去消除视频信息的时间冗余。利用先前已编码重建帧作为参考帧进行预测。

    • 帧间预测采用融合模式时,当前PU块的运动信息(包括运动矢量、参考索引、预测模式)都可以通过相邻PU的运动信息推导得到。编码时,当前PU块只需要传送融合标记(Merge Flag)以及融合索引(Merge Index),无需传送其运动信息。

    • 帧间预测还可以通过空域相邻PU以及时域相邻PU的运动矢量信息构造出一个预测运动矢量候选表,PU遍历运动矢量候选列表,在其中选择最佳的预测运动矢量。

    3.4.1 广义B帧预测技术

    在高效预测模式下,H.265仍然采用H.264中的等级B帧预测方式,同时还增加了广义B帧(GPB)预测方式取代低时延应用场景中的P帧预测方式。GPB预测结构是指传统P帧采取类似与B帧的双向预测方式进行预测。在这种预测方式下,前向和后向参考列表中的参考图像必须为当前图像之前的图像,且两者为同一图像。对P帧采取B帧的运动预测方式增加了运动估计的准确度,提高了编码效率,同时也有利于编码流程的统一。

    3.4.2 去块滤波(Debtock)

    去块滤波位于反变换之后,主要是去除诗篇压缩过程中产生的方块效应。首先对垂直边界进行水平滤波,先亮度块后色度块;再对水平边界进行垂直滤波,先亮度块后色度块。H.265对8x8块的边界进行滤波,与H.264中对4x4边的边界进行滤波相比,H.265中去块滤波算法的时间复杂度有所降低。

    3.4.3 采样点自适应偏移(SAO)

    把一帧划分为若干个LCU,然后对每个LCU中每个像素进行SAO操作,将根据其LCU像素特征选择一种像素补偿方式,以减少源图像与重构图像之间的失真。自适应样点补偿方式分为带状补偿(BO)和边缘补偿(EO)两类。

    1. 带状补偿

    带状补偿将像素值强度等级划分为若干个条带,每个条带内的像素拥有相同的补偿值。进行补偿时根据重构像素点处的条带,选择相应的带状补偿值进行补偿。

    现有的HM模型将像素值强度从0到最大值划分为32个等级。同时这32个等级条带还分为两类,第一类是位于中间的16个条带,剩余的16个条带是第二类。编码时只将其中一类具有较大补偿值的条带偏移信息写入片头;另一类条带信息则不传送,这样的方式编码将具有较小偏移值的一类条带忽略不计,从而节省了编码比特数。

    img

    \2. 边缘补偿

    边缘补偿主要用于对图像的轮廓进行补偿。它将当前像素值与相邻的2个像素值进行对比,用于比较的2个相邻像素可以在下图中所示的4中模板中选择,从而得到该像素点的类型。解码端根据码流中标识的像素点的类型信息进行相应的补偿校正。

    img

    3.4.4 自适应环路滤波(ALF)

    ALF在编解码环路内,位于Debtock和SAO之后,用于恢复重建图像以达到重建图像与原始图像之间的均方差(MSE)最小。ALF的系数是在帧级计算和传输的,可以整帧应用ALF,也可以对于基于块或基于量化树的部分区域进行ALF,如果是基于部分区域的ALF,还必须传递指示区域信息的附加信息。

    对于亮度分量,采用CU为单位的四叉树ALF结构。滤波使用5x5,7x7和9x9三种大小的二维钻石型模板。滤波器计算每个4x4块的Laplacian系数值,并根据该值将所有4x4块分成16类,分别对应16种滤波器。

    img

    2.10 ALF滤波模板

    对于色度分量,滤波时色度分量统一使用5x5矩形滤波模板,不需要通过Laplacian系数来选择滤波器类型。

    3.5 并行设计

    当前芯片架构已经从单核性能逐渐往多核并行方向发展,因此为了适应并行化程度非常高的芯片实现,H.265引入了很多并行运算的优化思路。

    3.5.1 Tile

    用垂直和水平的边界将图像划分为一些行和列,划分出的矩形区域为一个Tile,每个Tile包含整数个LCU,Tile之间可以互相独立,以此实现并行处理。

    img

    2.11 Tile划分示意图

    3.6 熵编码

    H.265的熵编码只采取基于上下文的二进制熵编码算法(CABAC),在本质上与H.264的CABAC是一致的,只是在实现细节上有些差别。H.265减少了上下文的数量,以改进熵编码的性能和编码速度。

    3.7 变换量化

    H.265的变换支持4x4到32x32,比H.264增加了16x16和32x32两种变换核。在H.264中,一个宏块只能采用一种变换核,而H.265提供了残差四叉树(RQT)的递归变换结构,对于一个CU或者PU,可以采用多种变换核。

    另外,对于4x4的TU,H.265提供了跳过变换模式,在这种模式中,预测残差只进行移位。对于帧间预测的4x4变换块,H.265还提供了离散正弦变换(DST)。在量化方面,H.265采用了与H.264相同的量化方法,H.265还提供了率失真优化量化方法(RDOQ)方法。率失真优化量化就是在量化过程中引入率失真优化选择的思想,具体可以分为三个步骤:

    1. 对当前处理的TU,以4x4的块为单位进行扫描,对于4x4量化块的每个量化值,分别加一减一,这样就得到三个量化值,根据率失真代价最小准则对4x4量化块的每一个点选择最佳的量化值;

    2. 对于扫描到的每一个4x4的量化块,将其量化值设置为零,并与之前的率失真代价比较,选择一种最佳的量化方式;

    3. 对于当前TU来说,若最后一个非零系数的位置距离当前一个非零系数的位置较远,则将最后一个非零系数改为零,同时比较这种方式下的率失真代价并与之前的率失真代价进行比较,选择一种最佳的方式。

    4 码流结构分析

    4.1 重要参数

    4.1.1 视频参数集VPS(Video Parameter Set)

    VPS主要用于传输视频分级信息,有利于兼容标准在可分级视频编码或多视点视频的扩展。

    1. 用于解释编码过的视频序列的整体结构,包括时域子层依赖关系等。HEVC中加入该结构的主要目的是兼容标准在系统的多子层方面的扩展,处理比如未来的可分级或者多视点视频使用原先的解码器进行解码但是其所需的信息可能会被解码器忽略的问题。
    2. 对于给定视频序列的某一个子层,无论其SPS相不相同,都共享一个VPS。其主要包含的信息有:多个子层或操作点共享的语法元素;档次和级别等会话关键信息;其他不属于SPS的操作点特定信息。
    3. 编码生成的码流中,第一个NAL单元携带的就是VPS信息

    4.1.2 序列参数集SPS(Sequence Parameter Set)

    包含一个CVS中所有编码图像的共享编码参数。

    1. 一段HEVC码流可能包含一个或者多个编码视频序列,每个视频序列由一个随机接入点开始,即IDR/BLA/CRA。序列参数集SPS包含该视频序列中所有slice需要的信息;
    2. SPS的内容大致可以分为几个部分:1、自引ID;2、解码相关信息,如档次级别、分辨率、子层数等;3、某档次中的功能开关标识及该功能的参数;4、对结构和变换系数编码灵活性的限制信息;5、时域可分级信息;6、VUI。

    4.1.3 图像参数集PPS(Picture Parameter Set)

    包含一幅图像所用的公共参数,即一幅图像中所有片段SS(Slice Segment)引用同一个PPS。

    1. PPS包含每一帧可能不同的设置信息,其内容同H.264中的大致类似,主要包括:1、自引信息;2、初始图像控制信息,如初始QP等;3、分块信息。
    2. 在解码开始的时候,所有的PPS全部是非活动状态,而且在解码的任意时刻,最多只能有一个PPS处于激活状态。当某部分码流引用了某个PPS的时候,这个PPS便被激活,称为活动PPS,一直到另一个PPS被激活。

    参数集包含了相应的编码图像的信息。SPS包含的是针对一连续编码视频序列的参数(标识符seq_parameter_set_id、帧数及POC的约束、参考帧数目、解码图像尺寸和帧场编码模式选择标识等等)。PPS对应的是一个序列中某一幅图像或者某几幅图像 ,其参数如标识符pic_parameter_set_id、可选的seq_parameter_set_id、熵编码模式选择标识、片组数目、初始量化参数和去方块滤波系数调整标识等等。

    通常,SPS 和PPS 在片的头信息和数据解码前传送至解码器。每个片的头信息对应一个pic_parameter_set_id,PPS被其激活后一直有效到下一个PPS被激活;类似的,每个PPS对应一个seq_parameter_set_id,SPS被其激活以后将一直有效到下一个SPS被激活。参数集机制将一些重要的、改变少的序列参数和图像参数与编码片分离,并在编码片之前传送至解码端,或者通过其他机制传输。

    4.2 NALU type

    前缀码后面跟随的前两个字节为NALU的语法元素,主要有四个部分组成:

    • forbidden_zero_bit = 0:占1个bit,与H.264相同,禁止位,用以检查传输过程中是否发生错误,0表示正常,1表示违反语法;
    • nal_unit_type = 32:占6个bit,用来用以指定NALU类型
    • nuh_reserved_zero_6bits = 0:占6位,预留位,要求为0,用于未来扩展或3D视频编码
    • nuh_temporal_id_plus1 = 1:占3个bit,表示NAL所在的时间层ID

    NALU的语法元素由H264的一个字节变为两个字节,而nal_unit_type则为NALU的类型,因此我们可以通过以下获取NALU的类型:

    int type = (code & 0x7E)>>1;

    nal_unit_typeNALU类型备注
    0NAL_UNIT_CODE_SLICE_TRAIL_N非关键帧
    1NAL_UNIT_CODED_SLICE_TRAIL_R
    2NAL_UNIT_CODED_SLICE_TSA_N
    3NAL_UINT_CODED_SLICE_TSA_R
    4NAL_UINT_CODED_SLICE_STSA_N
    5NAL_UINT_CODED_SLICE_STSA_R
    6NAL_UNIT_CODED_SLICE_RADL_N
    7NAL_UNIT_CODED_SLICE_RADL_R
    8NAL_UNIT_CODED_SLICE_RASL_N
    9NAL_UNIT_CODE_SLICE_RASL_R
    10 ~ 15NAL_UNIT_RESERVED_X保留
    16NAL_UNIT_CODED_SLICE_BLA_W_LP关键帧
    17NAL_UNIT_CODE_SLICE_BLA_W_RADL
    18NAL_UNIT_CODE_SLICE_BLA_N_LP
    19NAL_UNIT_CODE_SLICE_IDR_W_RADL
    20NAL_UNIT_CODE_SLICE_IDR_N_LP
    21NAL_UNIT_CODE_SLICE_CRA
    22 ~ 31NAL_UNIT_RESERVED_X保留
    32NAL_UNIT_VPSVPS(Video Paramater Set)
    33NAL_UNIT_SPSSPS
    34NAL_UNIT_PPSPPS
    35NAL_UNIT_ACCESS_UNIT_DELIMITER
    36NAL_UNIT_EOS
    37NAL_UNIT_EOB
    38NAL_UNIT_FILLER_DATA
    39NAL_UNIT_SEIPrefix SEI
    40NAL_UNIT_SEI_SUFFIXSuffix SEI
    41 ~ 47NAL_UNIT_RESERVED_X保留
    48 ~ 63NAL_UNIT_UNSPECIFIED_X未规定
    64NAL_UNIT_INVALID

    type值所代表的类型:VPS=32 SPS=33 PPS=34 IDR=19 P=1 B=0

    img

    2.12 H.265输出码流

    如上我们看到了四个NALU包,每个NALU的头部信息为:

    ① 00 00 00 01 40 01 —> (0x40 & 0x7E)>>1 = 32 —> VPS

    ② 00 00 00 01 42 01 —> (0x42 & 0x7E)>>1 = 33 —> SPS

    ③ 00 00 00 01 44 01 —> (0x44 & 0x7E)>>1 = 34 —> PPS

    ④ 00 00 00 01 26 01 —> (0x26 & 0x7E)>>1 = 19 —> IDR

    展开全文
  • H.265编码H.264编码的区别

    万次阅读 2019-09-17 14:50:00
    目前很多摄像机采用了H.265编码标准,H.264编码的摄像机逐渐减少,为什么H.265会流行?H.264和H.265有何不同? 一、什么是H.265 H.265是ITU-TVCEG继H.264之后所制定的新的视频编码标准。H.265标准围绕着现有的...

    目前很多摄像机采用了H.265的编码标准,H.264编码的摄像机逐渐减少,为什么H.265会流行?H.264和H.265有何不同?

    一、什么是H.265

    H.265是ITU-TVCEG继H.264之后所制定的新的视频编码标准。H.265标准围绕着现有的视频编码标准H.264,保留原来的某些技术,同时对一些相关的技术加以改进。

    新技术使用先进的技术用以改善码流、编码质量、延时和算法复杂度之间的关系,达到最优化设置。具体的研究内容包括:提高压缩效率、提高鲁棒性和错误恢复能力、减少实时的时延、减少信道获取时间和随机接入时延、降低复杂度等。H264由于算法优化,可以低于1Mbps的速度实现标清数字图像传送;H265则可以实现利用1~2Mbps的传输速度传送720P(分辨率1280*720)普通高清音视频传送。

    H.265旨在在有限带宽下传输更高质量的网络视频,仅需原先的一半带宽即可播放相同质量的视频。这也意味着,我们的智能手机、平板机等移动设备将能够直接在线播放1080p的全高清视频。H.265标准也同时支持4K(4096×2160)和8K(8192×4320)超高清视频。可以说,H.265标准让网络视频跟上了显示屏“高分辨率化”的脚步。

    二、什么是H.264

    H.264,同时也是MPEG-4第十部分,是由ITU-T视频编码专家组(VCEG)和ISO/IEC动态图像专家组(MPEG)联合组成的联合视频组(JVT,Joint Video Team)提出的高度压缩数字视频编解码器标准。这个标准通常被称之为H.264/AVC(或者AVC/H.264或者H.264/MPEG-4AVC或MPEG-4/H.264 AVC)而明确的说明它两方面的开发者。

    H.264最大的优势是具有很高的数据压缩比率,在同等图像质量的条件下,H.264的压缩比是MPEG-2的2倍以上,是MPEG-4的1.5~2倍。举个例子,原始文件的大小如果为88GB,采用MPEG-2压缩标准压缩后变成3.5GB,压缩比为25∶1,而采用H.264压缩标准压缩后变为879MB,从88GB到879MB,H.264的压缩比达到惊人的102∶1。低码率(Low Bit Rate)对H.264的高的压缩比起到了重要的作用,和MPEG-2和MPEG-4ASP等压缩技术相比,H.264压缩技术将大大节省用户的下载时间和数据流量收费。尤其值得一提的是,H.264在具有高压缩比的同时还拥有高质量流畅的图像,正因为如此,经过H.264压缩的视频数据,在网络传输过程中所需要的带宽更少,也更加经济。

    三、H.265与H.264有何不同

    在讨论H.265有哪些提升和优点之前,我们不妨先来了解一下H.264。H.264也称作MPEG-4AVC(Advanced Video Coding,高级视频编码),是一种视频压缩标准,同时也是一种被广泛使用的高精度视频的录制、压缩和发布格式。H.264因其是蓝光光盘的一种编解码标准而著名,所有蓝光播放器都必须能解码H.264。更重要的是,因为苹果公司当初毅然决然抛弃了Adobe的VP6编码,选择了H.264,这个标准也就随着数亿台iPad和iPhone走入了千家万户,成为了目前视频编码领域的绝对霸主,占有超过80%的份额。H.264也被广泛用于网络流媒体数据、各种高清晰度电视广播以及卫星电视广播等领域。H.264相较于以前的编码标准有着一些新特性,如多参考帧的运动补偿、变块尺寸运动补偿、帧内预测编码等,通过利用这些新特性,H.264比其他编码标准有着更高的视频质量和更低的码率,也因此受到了人们的认可,而被广泛应用。

    H.265/HEVC的编码架构大致上和H.264/AVC的架构相似,也主要包含:帧内预测(intra prediction)、帧间预测(inter prediction)、转换(transform)、量化(quantization)、去区块滤波器(deblocking filter)、熵编码(entropy coding)等模块。但在HEVC编码架构中,整体被分为了三个基本单位,分別是:编码单位(coding unit,CU)、预测单位(predict unit,PU)和转换单位(transform unit,TU)。

    四、H.265为何优于H.264

    比起H.264/AVC,H.265/HEVC提供了更多不同的工具来降低码率,以编码单位来说, 最小的8x8到最大的64x64。信息量不多的区域(颜色变化不明显,比如车体的红色部分和地面的灰色部分)划分的宏块较大,编码后的码字较少,而细节多的地方(轮胎)划分的宏块就相应的小和多一些,编码后的码字较多,这样就相当于对图像进行了有重点的编码,从而降低了整体的码率,编码效率就相应提高了。同时,H.265的帧内预测模式支持33种方向(H.264只支持8种),并且提供了更好的运动补偿处理和矢量预测方法。

    反复的质量比较测试已经表明,在相同的图象质量下,相比于H.264,通过H.265编码的视频码流大小比H.264减少大约39-44%。由于质量控制的测定方法不同,这个数据也会有相应的变化。通过主观视觉测试得出的数据显示,在码率减少51-74%的情况下,H.265编码视频的质量还能与H.264编码视频近似甚至更好,其本质上说是比预期的信噪比(PSNR)要好。这些主观视觉测试的评判标准覆盖了许多学科,包括心理学和人眼视觉特性等,视频样本非常广泛,虽然它们不能作为最终结论,但这也是非常鼓舞人心的结果。

    目前的HEVC标准共有三种模式:Main、Main10和Main Still Picture。Main模式支持8bit色深(即红绿蓝三色各有256个色度,共1670万色),Main10模式支持10bit色深,将会用于超高清电视(UHDTV)上。前两者都将色度采样格式限制为4:2:0。预期将在2014年对标准有所扩展,将会支持4:2:2和4:4:4采样格式(即提供了更高的色彩还原度)和多视图编码(例如3D立体视频编码)。

    事实上,H.265和H.264标准在各种功能上有一些重叠。例如,H.264标准中的Hi10P部分就支持10bit色深的视频。另一个,H.264的部分(Hi444PP)还可以支持4:4:4色度抽样和14比特色深。在这种情况下,H.265和H.264的区别就体现在前者可以使用更少的带宽来提供同样的功能,其代价就是设备计算能力:H.265编码的视频需要更多的计算能力来解码。目前已经有支持H.265解码的芯片发布了——美国博通公司(Broadcom)在今年1月初的CES大展上发布了一款Brahma BCM 7445芯片,它是一个采用28纳米工艺的四核处理器,可以同时转码四个1080P视频数据流或解析分辨率为4096×2160的H.265编码超高清视频。

    H.265标准的诞生是在有限带宽下传输更高质量的网络视频。对于大多数专业人士来说,H.265编码标准并不陌生,其是ITU-TVCEG继H.264之后所制定的视频编码标准。H.265标准主要是围绕着现有的视频编码标准H.264,在保留了原有的某些技术外,增加了能够改善码流、编码质量、延时及算法复杂度之间的关系等相关的技术。H.265研究的主要内容包括,提高压缩效率、提高鲁棒性和错误恢复能力、减少实时的时延、减少信道获取时间和随机接入时延、降低复杂度。

    延伸阅读:综合布线常见名词大全

    五、H.264和H.265技术下视频存储如何计算

    1、h.264技术硬盘容量的计算

    说到计算,我们要拿什么来计算呢?除了摄像头数目、需要录像的时间外,还有一个重要的数值:码率! 一般情况下,分辨率越大,码流呢也就越大,比如我们常用到的130W的摄像头,码流是2MB/S,也就是2048kbps。然后知道了码流、时间、通道数,我们就可以直接套用公式计算了。

    公式如下: 码率×3600×24÷8÷1024÷1024=1D(一天)

    码流表

    应为码流是以秒为计量的,所以我们的容量也要用秒来换算,3600呢,就是1小时,24就是一天24小时,8呢,就是字节,1024是应为码流是以MB为单位的,所以要换算G就要除以1024,换成T 还要再除1024。果就是1天。甲方需要存储多久,再乘以天数就OK了。

    以上为H.264的计算方式,那么我们来看一下H.265技术的应用。

    2、H.256技术的硬盘存储计算

    举例:

    H.264技术下,4个300W存储一个月大概是:60G*4*30=7.2T

    H.265技术下,4个300W存储一个月大概是:30G*4*30=3.6T

    下面的图更直接

    这还是存储的,我们再来看看带宽。以往H.264如果要远程观看1个130W像素的高清画面,就需要6M的上行带宽,而H.265下,4M网络就可以看一个300W的高清画面。2个200W画面。

    所以说,降低的成本不只是硬盘存储的,当然还有交换机。

    b,支持H.265的设备怎么用?

    是不是我用老的摄像机接到H.265的录像机上,也能存储减半?不是的,对于网络摄像机和录像机来说,要双方都支持H.265技术才可以。

    如果有一方支持,另一方不支持呢?放心,和其他技术设备一样的,向下兼容,也就是说除了存储减半不能实现,其他功能都是正常使用的。

    c,H.265存储怎么计算?

    普通的摄像机一天大概21G,是不是直接除以2就可以了呢?其实不然。更简洁的方法来了!

    200W≈20G

    300W≈30G

    400W≈40G

    其实H.265 就是压缩了码流。

     

    总结来看,首先是H.265相对于H.264在帧间预测和帧内预测上支持了更多的方向,算法进行了改进。同时针对每一帧的画面,划分更细的宏块,更智能地预测不同区域进行编码从而提升了编码效率。以及提升了更好地动态补偿和矢量预测的方法。

    展开全文
  • 一、什么是H264编码 H.264,同时也是MPEG-4第十部分,是由ITU-T视频编码专家组(VCEG)和ISO/IEC动态图像专家组(MPEG)联合组成的联合视频组(JVT,Joint Video Team)提出的高度压缩数字视频编解码器标准。这个...
  • AL582是台湾Averlogic推出的一颗多功能的视频流SoC芯片,它包括视频压缩编解码器、SD卡控制器、WiFi控制器、嵌入式DDR存储器、嵌入式MCU、视频处理引擎、RGB DAC和TV编码器。 AL582的压缩引擎是一个高质量的H.264和...
  • 一种H.264编码芯片帧间预测的硬件设计.pdf
  • 海思HI3536 H265解码处理器简介

    千次阅读 2019-04-18 10:21:10
    处理器内核−ARMCortex A17 四核@Max. 1.4GHz− ARM Cortex A7 ...− 4x4K(3840*2160)@30fps H.265/H.264解码+ 2x1080p@30fps H.264编码 − 16x1080p@30fps H.265/H.264解码+ 2x1080p@30fps H.264编码 − 9x1080p...
  • 同时可支持16路CIF格式H.264实时编码,轻松应用于DVR,DVS等领域。  合众达(SEED)作为TI国内最大的第三方和代理商,致力于在DVR/DVS等数字视频领域为用户提供多种TI平台解决方案,包括开发工具、DVS6467参考设计...
  • 浅析HEVC/H.265编码器中的熵编码

    千次阅读 2020-03-29 21:57:18
    在保证视频图像质量的前提下,HEVC通过增加一定的计算复杂度,可以实现码流在H.264/AVC的基础上降低50%。为了实现目标,HEVC采用了一些全新的编码技术,比如:基于LCU(Largest... 今天主要介绍一下HEVC/H.265编器码...
  • 一、系统设计要点对于HEVC/H.265视频编码而言,采用了比以往视频标准更加先进和灵活的编码方法,在性能上有比较明显的优势,但对硬件实现也是一个很大的挑战,其实现复杂度和计算量几倍于H.264标准,这对基于FPGA/...
  • H.264_AVC解码芯片体系结构与验证.pdf
  • 基于FPGA的H.264视频编码芯片验证平台设计.pdf
  • EncodecPushLiveH265 package com.maniu.videochata; import android.media.MediaCodec; import android.media.MediaCodecInfo; import android.media.MediaFormat; import android.util.Log; import java.io....
  • H264实时编码RTSP直播

    2017-11-17 15:50:21
    此代码封装了H264编解码和RTSP传输协议库,经过测试,此库可以直接调用,从本地的摄像头采集图像,经过H264编码、在本地计算机上建立RTSP Server,网络内的其它计算机可以通过RTSP Client进行访问拉流、也可以通过...
  • 主流H.264解码芯片

    2011-06-19 22:27:22
    H.264解码IC芯片关键技术研究项目是根据最新的数字视频编码标准H.264/AVC,开发主要应用于IP电视(IPTV)、卫星电视和高清DVD等领域的数字视频高清实时解码高速大规模集成电路(VLSI)专用芯片(ASIC)/片上系统...
  • Hi3516EV200进行H264/H265视频编码要点注意

    千次阅读 热门讨论 2020-03-12 13:30:00
    目录说明开发环境和交叉编译工具链IMX307的MIPI配置VENC视频缩小和VGS关于同时启动的VENC编码通道数本文资源分享 说明 本博客性质属于个人学习记录,都是自己踩过的坑。 本文叙述的测试程序和动作在淘宝上买得到的Hi...
  • ffmpeg h264硬编码插件

    2014-06-22 19:04:04
    基于i.mx soc芯片编写的最新版本的ffmpeg下的h264硬件编码插件,里面含有编译脚本
  • H.264 (MPEG-4 高级视频编码)HEVC/H.265芯片行业H.264 H.265 硬件解码芯片?请问有没有 H.264/265 的硬解码芯片。 接收 H.264/H.265 的码流,然后通过 MIPI 输出。 我的MCU 芯片接收MIPI 接口过来的raw data, 做...
  • H.264协议是最先进的视频编码标准,但其算法复杂度也是超常的。为了解决这个问题,本文提出一种采用TI公司的最新多媒体处理器Davinci DM6446为核心的硬件平台,而在算法上提出了新的基于拉各朗日(Lagrange)的快速...
  • Broadcom公司推出支持用于高清晰消费类视频产品的H.264标准的下一代先进视频压缩芯片BCM7411.新的视频处理器使制造商能把下一代机顶盒,DVD播放器和数字电视娱乐系统在2005年初经济地推向市场.下一代视频/音频消费类...
  • H265视频转码H264视频

    千次阅读 2021-05-06 15:28:30
    LiveMedia视频平台提供H5网页web前端无插件视频码流,但目前主流浏览器和播放器都只支持H264的码流,但是随着编码技术的迭代,目前H265编码的视频已在安防行业得到了广泛的使用,平台仅支持H264需要客户修改前端的...
  • h264和h265的区别

    万次阅读 2018-11-30 13:08:36
    相关索引:... 目录 1. H.264与H.265的主要差异 2,压缩性能比较 3. 各模块技术差异汇总 4. 块划分结构 5. 帧内预测模式 6. 帧间预测 7. 去块滤波 8. 采样点自适应偏移(Sample Adaptiv...
  • Jointwave发布的H.264编码器技术提供了单芯片HD和超低功耗广播级视频— 针对65nm处理器60mW可实现1080p。  正如在强调Jointwave的H.264视频编码器的低功耗设计一样,他们使用绿色纸张来打印其技术概述.这家位于...
  • 由于编码算法的复杂性,系统对图像解码速度和功耗要求非常严格,因此,在设计解码器时采用了H.264解码专用芯片的设计方案。对一个大的设计项目,一般采用由顶向下(TOP-DOWM)的设计方法,把各功能模块划分为子模块。...
  • Android MediaCodec 解码H264/H265码流视频

    千次阅读 2020-12-10 17:14:24
    音视频学习H264系列:H264码流视频编码原理 音视频学习H264系列:MediaCodecH264/H265解码 ...本篇是有关音视频学习系列中的H264 / H265的解码视频部分,文章大部分记录直接上干货,编码原理基础部分【音视频学习H.
  • Hi3531D V200是针对多路高清/超高清(1080p/4M/5M/4K)DVR产品应用开发的新一代专业SoC芯片。Hi3531D V200集成 了ARM A53四核处理器和性能强大的神经网络推理引擎,支持多种智能算法应用。同时,Hi3531D V200还集成...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 21,272
精华内容 8,508
关键字:

h265编码芯片