CN104539949B - Hevc屏幕编码中基于边缘方向的快速分块的方法及装置 - Google Patents

Hevc屏幕编码中基于边缘方向的快速分块的方法及装置 Download PDF

Info

Publication number
CN104539949B
CN104539949B CN201410757750.3A CN201410757750A CN104539949B CN 104539949 B CN104539949 B CN 104539949B CN 201410757750 A CN201410757750 A CN 201410757750A CN 104539949 B CN104539949 B CN 104539949B
Authority
CN
China
Prior art keywords
current
size
unit
cost
divided
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201410757750.3A
Other languages
English (en)
Other versions
CN104539949A (zh
Inventor
张萌萌
欧阳晓
白慧慧
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
RUGAO ANRUI ELECTRONIC Co.,Ltd.
Original Assignee
North China University of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by North China University of Technology filed Critical North China University of Technology
Priority to CN201410757750.3A priority Critical patent/CN104539949B/zh
Publication of CN104539949A publication Critical patent/CN104539949A/zh
Application granted granted Critical
Publication of CN104539949B publication Critical patent/CN104539949B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

HEVC是一个囊括了很多新技术的视频编码标准。但是,率失真的计算复杂度太高,特别是对于需要及时通讯的视频编码更是如此。本文提出了一种基于边缘方向和CU关系的快速算法。在帧内预测之前,我们用Sobel算子来确定当前帧的所有边缘方向。算法的关键是找到边缘方向和CU划分方式的关系。

Description

HEVC屏幕编码中基于边缘方向的快速分块的方法及装置
联合研究
本申请由北方工业大学与北京交通大学信息所联合研究,并得到以下基金资助:国家自然科学基金(No.60903066,No.60972085),北京市自然科学基金(No.4102049),教育部新教师基金(No.20090009120006),北京市属高等学校人才强教深化计划(PHR201008187)。
技术领域
本发明涉及图像处理领域,更具体而言,涉及在HEVC中的屏幕编码中基于边缘方向的快速分块。
背景技术
2010年4月,两大国际视频编码标准组织VCEG和MPEG成立视频压缩联合小组JCT-VC(Joint collaborative Team on Video Coding),一同开发高效视频编码HEVC(Highefficiency video coding)标准,其也称为H.265。HEVC标准主要目标是与上一代标准H.264/AVC实现大幅度的编码效率的提高,尤其是针对高分辨率视频序列。其目标是在相同视频质量(PSNR)下码率降为H.264标准的50%。
就目前阶段,HEVC依然沿用H.264就开始采用的混合编码框架。帧间和帧内预测编码:消除时间域和空间域的相关性。变换编码:对残差进行变换编码以消除空间相关性。熵编码:消除统计上的冗余度。HEVC将在混合编码框架内,着力研究新的编码工具或技术,提高视频压缩效率。
目前,JCT-VC组织的讨论中已经提出的许多编码的新特性,有可能会加入HEVC标准中,各次讨论的具体文献可以从http://wftp3.itu.int获得。
HEVC(High Efficiency Video Coding)标准在2013年一月份正式作为国际标准发布。在ITU-T中被称作H.265,而在ISO/IEC中被称作MPEG-H的第二部分。同时,为了使HEVC标准能够支持更多的应用场景,开展了 后续的工作,其中包括对高分辨率以及色彩格式的支持,可伸缩编码,3-D/立体/多视角编码。
HEVC采用了多种新的技术,包括一些高复杂性的结构,比如:编码单元(CU),预测单元(PU),变换单元(TU)。率失真优化(RDO)技术在划分编码树单元(CTU)的时候被用到。HEVC提供了四种帧内编码块的划分方式,包括64×64,32×32,16×16,8×8大小的CU。相比于H.264,HEVC的编码质量更高,但是CU划分模式的计算复杂度相对更高。HEVC中CU的划分模式,PU的预测模式的判决,以及变换量化占据了57%的帧内编码计算复杂度,这使得CU划分模式等成为了帧内预测编码的瓶颈。在实时通信系统中,像视频会议,高复杂度的率失真策略成为了一大障碍。
近期,为了减少编码的复杂度,很多快速算法被提出。当CU比较复杂的时候,我们通常会将此CU划分为更小的块进行预测,然而当CU比较平滑的时候,我们通常认为此CU适合以比较大的尺寸进行预测,这是因为CU的尺寸大小取决于CU的平滑度。文献【1】在H.264通过统计CU块内的边缘点个数来改进CU尺寸大小的判定,减少了计算的复杂度,而且PSNR仅仅增加了一点点,但是在HEVC屏幕编码中,编码后的图像质量明显下降。文献【2】提出了一种根据编码方向来判定帧内预测方向的算法,但是编码效果不是很好。文献【3】针对屏幕编码提出了一种新的预测模式:边缘模式,在HM7.0中编码质量明显提高,但是在专门针对屏幕编码的测试代码中,编码质量却不是很好。在文献【4】中,作者提出了一种根据内容的方法来确定预测模式,编码质量得到有效的提升。在文献【5】中,作者提出了一种快速决定预测模式的算法,帧内预测复杂度降低了50%,但是比特率却增加了2.5%。文献【7】中设计了一种根据边缘信息和MAD自适应算法,在编码复杂度和编码质量上都有不错的效果。在屏幕编码中,有着许多针对自然序列的编码标准所没有的技术,比如说IntraBC(帧内块拷贝),这些技术大大降低了帧内编码比特率(高达44%),但是都需要大量的计算量,针对这些情况,文献【8】提出了一种快速跳过IntraBC的编码技术,减少了21-24%的编码复杂度,并且编码质量并未降低。
为了解决上述现有技术中存在的技术问题,本文提出了一种基于边缘方向的快速分块算法。当前CU边缘方向是通过Sobel算子提取的,因为 Sobel算子的计算复杂度很低。在屏幕序列中,CU的边缘比自然序列中的边缘更加的复杂,但是却更加有规律,这也是为什么IntraBC能用在屏幕编码上的原因。所以边缘方向可以帮助我们选出哪些CU需要被划分,而哪些CU又不需要被划分。这里我们引进一个新的概念:特征值,特征值可以更加完美阐述边缘方向和CU划分模式之间的关系。相比于HM12.1+RExt5.1的标准本文的算法降低了31%-64%的编码复杂度,而PSNR仅仅平均降低了0.03dB。
在本发明的说明书中,参考了以下文献:
1.Cheng-yen Chang,Cheng-An Chien,Hsiu-Cheng Chang,Jia-Wei Chen,Jiun-In Guo“A two level mode decision algorithm for H.264high profile intraencoding”,Circuits and Systems(ISCAS),2012IEEE International Sysmposium.May2012.
2.Tiancai ye,Dongming Zhang,Feng Dai,Yongdong Zhang,“Fast modedecision algorithm for intra prediction in HEVC”,ACM,Aug 2013.
3.Sudeng Hu,Robert A.Cohen,Anthony Vetro,C.-C.Jay Kuo,“Screen ContentCoding For HEVC Using Edge Modes”,Acoustics,Speech and Signal Processing(ICASSP),2013IEEE International Conference,May 2013.
4.Y.K.Lin and T.S.Chang,“Fast block type decision algorithm for intraprediction in H.264FRext”,Proc.ICIP,vol.1,pp.585-588,2005.
5.Sangkwon Na,Wonjae Lee and KiwonYoo,“Edge-Based Fast Mode DecisionAlgorithm for Intra Prediction in HEVC”,Cpnsumer Electronics(ICCE),2014International Conference,Jan 2014.
6.Yule Yuan,Xiaohang Sun,“Edge Information Based Effective Intra ModeDecision Algorithm”,Signal Processing,Communication and Computing(ICSPCC),2012IEEE International Conference,2012.
7.CaixiaBai,Chun Yuan,“Fast coding tree unit decision for HEVC intracoding”,ICCE-China Workshop(ICCE-China),2013IEEE,April 2013.
8.Kwon,Do-Kyoung,Budagavi,Mdhukar,“Fast intra block copy(IntraBC)search for HEVC screen content coding”,Circuits and Systems(ISCAS),2014IEEEInternational Symposium,June 2014.
9.Shi jiangyong,LuoXiling,Zhang Jun,“An Edge-based Approach for VideoText Extraction”,Computer Technology and Development,2009.ICCTD’09.International Conference,2009.
10.Xiang Wang,ChangyingZhai,“An Improved Fast Intra-predictionAlgorithm in H.264/AVC Based on Edge Feature”,Computer Science and SoftwareEngineering,2008International Conference,2008
11.Shunqing Yan,Liang Hong,Weifeng He,Qin Wang,“Group-Based Fast ModeDecision Algorithm for Intra Prediction in HEVC”,Signal Image Technology andInternet Based Systems(SITIS),2012Eighth International Conference,2012.
12.Dung T,Joel Sole,Peng Yin,GristinaGomila,Truong Q.Nguyen,“Selective Data Pruning-Based Compression Using High-Order Edge-DirectedInterpolation”,Digital Obeject Identifier:10.1109/Tip.2009.2035845,2010.
13.JieLeng,Lei Sun,“Content Based Hierarchical Fast Coding UnitDecision Algorithm For HEVC”,IEEE Computer Society,May 2011.
14.HuihuiBai,Ce Zhu,Yao Zhao,“Optimized Multiple Description LatticeVector Quantization for Wavelet Image Coding”,Curcyuts and Systems for VideoTechnology,IEEE Transactions,2007.
发明内容
为了解决上述技术问题,本申请提出了一种在HEVC中的屏幕编码中基于边缘方向的快速分块方法,包括:
(1).确定当前编码单元(CU),使用Sobel算子和与边缘相关的第一阈值(Tedge)来确定当前CU中多个角度区间中每一个角度区间的边缘点,并基于所述边缘点确定当前CU的与边缘复杂度相关联的特征值,其中,如果当前CU没有边缘点,则判定当前CU不被划分为更小的CU,并计算判定当前CU不被划分的代价,然后跳转至步骤(6),否则继续到步骤(2);
(2).如果当前CU的特征值比第二阈值(T1)(T1是与当前CU的大小有关系的值)小,则判定当前CU应被划分为更小的CU,不计算判定当前CU是否划分的代价,并跳转至步骤(5),否则继续到步骤(3);
(3).如果当前CU的特征值比第三阈值(T2)(T2是与当前CU的大小有关系的值)大,则判定当前CU不被划分为更小的CU,并计算判定当前CU是否划分的代价,然后跳转至步骤(6),否者前进至步骤(4);
(4).对当前CU进行划分,计算划分代价,并前进至步骤(5);
(5).判断当前CU的尺寸是否是最小划分尺寸,如果不是,则再跳转至步骤(1);
(6).如果当前CU的尺寸是最小划分尺寸或者前面判决的结果是不划分当前CU,则根据所计算的代价来选择当前CU的最佳划分结构。
在一个实施例中,步骤(1)进一步包括:
将角度范围(0°,180°)均等地划分为所述多个(例如12个)角度区间;
针对当前CU中每一个像素,利用Sobel算子计算水平和垂直方向的梯度向量,并计算梯度向量的振幅,基于所述第一阈值Tedge来确定当前像素是否是边缘点,当当前像素是边缘点时,计算梯度方向;
在遍历了当前CU中每一个像素之后,确定落入各个角度区间的边缘点个数中的最大个数,并根据该最大个数和落入各个角度区间的边缘点个数来确定当前CU的与边缘复杂度相关联的特征值。
在一个实施例中,所述特征值是所述落入各个角度区间的边缘点个数中的所述最大个数与当前CU的总边缘点个数的比值。
在一个实施例中,T1和T2是基于对HEVC中的六个针对屏幕编码的训练序列的数据统计而获得的。
在一个实施例中,当当前CU的大小为64*64时,T1=0.7,T2=0.97;当当前CU的大小为32*32时,T1=0.4,T2=0.94;当当前CU的大小为16*16时,T1=0.17,T2=1。
根据本发明的另一方面,提出了一种用于执行HEVC的编码器,其可操作以实现在HEVC中的屏幕编码中基于边缘方向的快速分块,包括:
逻辑(1).确定当前编码单元(CU),使用Sobel算子和与边缘相关的第一阈值(Tedge)来确定当前CU中多个角度区间中每一个角度区间的边缘点,并基于所述边缘点确定当前CU的与边缘复杂度相关联的特征值,其中,如果当前CU没有边缘点,则判定当前CU不被划分为更小的CU,并计算判定当前CU不被划分的代价,然后跳转至逻辑(6),否则继续到逻辑(2);
逻辑(2).如果当前CU的特征值比第二阈值(T1)(T1是与当前CU的大小有关系的值)小,则判定当前CU应被划分为更小的CU,不计算判定当前CU是否划分的代价,并跳转至逻辑(5),否则继续到逻辑(3);
逻辑(3).如果当前CU的特征值比第三阈值(T2)(T2是与当前CU的大小有关系的值)大,则判定当前CU不被划分为更小的CU,并计算判定当前CU是否划分的代价,然后跳转至逻辑(6),否者前进至逻辑(4);
逻辑(4).对当前CU进行划分,计算划分代价,并前进至逻辑(5);
逻辑(5).判断当前CU的尺寸是否是最小划分尺寸,如果不是,则再跳转至逻辑(1);
逻辑(6).如果当前CU的尺寸是最小划分尺寸或者前面判决的结果是不划分当前CU,则根据所计算的代价来选择当前CU的最佳划分结构。
根据本发明的再另一方面,提出了一种用于执行HEVC的硬件视频编解码器,其可操作以实现在HEVC中的屏幕编码中基于边缘方向的快速分 块,包括:
电路块(1).用于确定当前编码单元(CU),使用Sobel算子和与边缘相关的第一阈值(Tedge)来确定当前CU中多个角度区间中每一个角度区间的边缘点,并基于所述边缘点确定当前CU的与边缘复杂度相关联的特征值,其中,如果当前CU没有边缘点,则判定当前CU不被划分为更小的CU,并计算判定当前CU不被划分的代价,然后跳转至电路块(6),否则继续到电路块(2);
电路块(2).如果当前CU的特征值比第二阈值(T1)(T1是与当前CU的大小有关系的值)小,则判定当前CU应被划分为更小的CU,不计算判定当前CU是否划分的代价,并跳转至电路块(5),否则继续到电路块(3);
电路块(3).如果当前CU的特征值比第三阈值(T2)(T2是与当前CU的大小有关系的值)大,则判定当前CU不被划分为更小的CU,并计算判定当前CU是否划分的代价,然后跳转至电路块(6),否者前进至电路块(4);
电路块(4).对当前CU进行划分,计算划分代价,并前进至电路块(5);
电路块(5).判断当前CU的尺寸是否是最小划分尺寸,如果不是,则再跳转至电路块(1);
电路块(6).如果当前CU的尺寸是最小划分尺寸或者前面判决的结果是不划分当前CU,则根据所计算的代价来选择当前CU的最佳划分结构。
根据本发明的再另一方面,提出了一种在HEVC中的屏幕编码中基于边缘方向的快速分块装置,包括:
单元(1).确定当前编码单元(CU),使用Sobel算子和与边缘相关的第一阈值(Tedge)来确定当前CU中多个角度区间中每一个角度区间的边缘点,并基于所述边缘点确定当前CU的与边缘复杂度相关联的特征值,其中,如果当前CU没有边缘点,则判定当前CU不被划分为更小的CU,并计算判定当前CU不被划分的代价,然后跳转至单元(6),否则继续到单元(2);
单元(2).如果当前CU的特征值比第二阈值(T1)(T1是与当前CU的大小有关系的值)小,则判定当前CU应被划分为更小的CU,不计算判定当前CU是否划分的代价,并跳转至单元(5),否则继续到单元(3);
单元(3).如果当前CU的特征值比第三阈值(T2)(T2是与当前CU的大小有关系的值)大,则判定当前CU不被划分为更小的CU,并计算判 定当前CU是否划分的代价,然后跳转至单元(6),否者前进至单元(4);
单元(4).对当前CU进行划分,计算划分代价,并前进至单元(5);
单元(5).判断当前CU的尺寸是否是最小划分尺寸,如果不是,则再跳转至单元(1);
单元(6).如果当前CU的尺寸是最小划分尺寸或者前面判决的结果是不划分当前CU,则根据所计算的代价来选择当前CU的最佳划分结构。
根据本发明的再另一方面,提出了一种计算机可读介质,其具有存储在其上的计算机可读指令,所述计算机可读指令被执行时,实施如上所述的各个方法。
根据发明的再另一方面,提出了一种装置,包括:
输入单元,用于接收待进行HEVC编码的原始视频帧;
存储器,用于存储所接收的原始视频帧和编码后的视频帧;
一个或多个处理器,被配置为实施如上所述的各个方法。
附图说明
图1(a)示出了HEVC中sc_WordingEditing序列中的CU划分;
图1(b)示出了一个示例性的CU和CTU划分;
图2示出了本发明的算法的高级流程图;
图3示出了Sobel算子的垂直和水平模板的一个实例;
图4示出了不同大小的CU与特征值之间的关系;
图5示出了根据本发明的一个实施例,用于在HEVC的屏幕编码中基于边缘方向的快速分块方法;
图6示出了HEVC编码器的基本原理图;
图7示出了根据本发明的一个实施例,用于实施本发明的方法的编解码器。
图8示出了根据本发明的一个实施例,用于实施本发明装置。
具体实施方式
现在参考附图来描述各种方案。在以下描述中,为了进行解释,阐述了多个具体细节以便提供对一个或多个方案的透彻理解。然而,显然,在 没有这些具体细节的情况下也能够实现这些方案。
如在本申请中所使用的,术语“组件”、“模块”、“系统”等等旨在指代与计算机相关的实体,例如但不限于,硬件、固件、硬件和软件的组合、软件,或者是执行中的软件。例如,组件可以是但不限于:在处理器上运行的进程、处理器、对象、可执行体(executable)、执行线程、程序、和/或计算机。举例而言,运行在计算设备上的应用程序和该计算设备都可以是组件。一个或多个组件可以位于执行进程和/或者执行线程内,并且组件可以位于一台计算机上和/或者分布在两台或更多台计算机上。另外,这些组件可以从具有存储在其上的各种数据结构的各种计算机可读介质执行。组件可以借助于本地和/或远程进程进行通信,例如根据具有一个或多个数据分组的信号,例如,来自于借助于信号与本地系统、分布式系统中的另一组件交互和/或者与在诸如因特网之类的网络上借助于信号与其他系统交互的一个组件的数据。
图6示出了高效视频编码(HEVC)所实现的视频编码器的大致结构图。HEVC的编码器架构与H.264所使用的编码器架构大致相同,主要是针对各个模块中所使用的算法进行了进一步的研究、改进,尤其是针对高分辨率视频序列,其改进的目标是在相同视频质量(PSNR)下码率降为H.264标准的50%。
由于HEVC的编码器架构与H.264所使用的编码器架构大致相同,因此不混淆本发明,本申请中不对图6中的整体架构进行描述。
在HEVC中,输入的视频首先被分割成一些小块叫做编码树单元(coding treeunits,CTU)。本领域技术人员可以理解,CTU相当于之前标准的宏块(macroblock)的概念。编码单元(CU)是一个拥有一个预测模式(帧内、帧间或者跳过)的正方形的(像素)单元。基于CTU和CU的预测单元分割方式如图1(b)所示。
图1(a)示出了HEVC中sc_WordingEditing序列中的CU划分,其中,在sc_WordingEditing序列的屏幕编码中,CU的划分模式可以根据当前帧的纹理特征被分成几种最有可能的情况。一个大且复杂度高的CU肯定得被划分以减小复杂度。反之,几个个小且复杂度低的CU会被合并成一个大的CU进行预测。我们注意到图1(a)中那些细节复杂的区域(B和C)会被 分成更小的块进行编码,反之那些细节复杂度低的区域(A)(D)会用比较大的块进行编码。
图2是本文算法的高级流程图。如上所述,本文算法的关键是找到CU和边缘方向之间的关系。所以我们有必要建立一个数学模型去表示CU划分模式和边缘方向之间的关系。下面的具体内容中,我们会介绍一个概念特征值来代替CU边缘复杂度。
特征值的计算
本发明的发明点之一在于确定屏幕帧中的边缘方向和CU划分模式之间的关系,所以我们需要得到一个能直观的表示CU划分模式和边缘方向之间的关系的特征值,因为我们很难根据CU的划分模式和边缘方向直接建立一个数学模型。下面就是特征值的获得过程。
在计算之前,我们先将(0°,100°)这个角度范围划分为12个角度区间:(0°,15°)(15°,30°)(30°,45°)(45°,60°)(60°,75°)(75°,90°)(90°,105°)(105°,120°)(120°,135°)(0°,150°)(150,°165°)(165°,180°)。
为了减少计算复杂度,我们以6为步长对当前帧的灰度值进行量化。然后,通过Sobel算子来计算每个CU的边缘信息。
图3示出了传统的Sobel算子的水平模板和垂直模板所表示的两种卷积模式。于是每个像素pi,j的梯度向量Di,j可以表示为:
且;
分别代表了水平和垂直方向的梯度向量。显然,其中的i和j分别表示图像帧的水平和垂直方向。因此,梯度向量的振幅可以用Gi,j来表示:
在此基础上,选择一个合适的阈值T,如果Gi,j>T,则当前像素pi,j则可以被认为是一个边缘点。通过上述的信息,我们还可以得到梯度方向θ:
当我们得到一个CU所有像素的梯度方向θ后,我们分别统计落在上述12个区间内的边缘点的个数。从而可以确定分别落入以上划分的12个角度区间的边缘点个数I1,I2,I3,I4,I5,I6,I7,I8,I9,I10,I11,I12。然后我们从各个角度区间的边缘点个数Ii(i=1,2,3,...11,12)中选出最大的那个数,并命名为Imax
最后,我们将当前CU的特征值定义为如下:
其中,Ii(i=1,2,3,...11,12)的和不能为0,这可以在计算特征值之前进行判断。Ii(i=1,2,3,...11,12)的和为0表示当前CU没有边缘点。
可以理解,在此虽然采用了12个区间,但是根据对边缘检测的精度的要求,可以使用更多或更少的区间,但是通常不会小于6个区间,否则会发生较大的误判。
到此为止,我们获得了当前CU的表示其边缘复杂度的特征值。以下将介绍如何基于特征值来判断当前CU是否应该被进一步分割。本发明提出了一种最简单的方式,即通过相对于针对当前CU所计算的特征值的阈值进行此判断。以下是本发明提出的关于此阈值的选取的具体过程。
阈值的选取
为此目的,我们采用一种特定的统计方法,从HEVC标准屏幕编码序列中选取所述阈值。由于HEVC标准屏幕编码序列具有一定的代表性,因此所得到的阈值应该具有普遍意义。
首先,收集足够多的HEVC测试版本中的6个测试序列的CU信息(CU的尺寸,特征值),这些CU是通过RDO进行划分的,并且包含了16×16,32×32和64×643种不同尺寸的。通过之前的工作,我们可以很容易的建立起了折线图。图4就是不同大小的CU和特征值之间的关系。本领域公知的是,HEVC测试版本中的这6个针对屏幕编码的测试序列为:sc_map,sc_web,sc_wordEditing,sc_slideShow,sc_programming,sc_ppt_doc_xls。
图4(a)(b)(c)展示了CU和特征值之间的关系:当特征值很小的时候,当前CU会被划分成更小的CU。相反,当特征值很大的时候,CU 不会被划分。这个关系通过如上的特征值定义公式就能够很容易的确定。根据这些关系,我们通过对图4(a)(b)(c)分别进行离散积分:
其中,ΔI即特征值,ni是具有相同特征值且不会被划分的CU个数,qi是具有相同特征值且会被划分的CU个数,i=0,0.01,0.02.......1。
通过观察,我们可以看到一些确定阈值的规则:
当F(ΔI)>L1时(L1接近于1),阈值T2等于ΔI。
当D(ΔI)<L2时(L2接近于0),阈值T1等于ΔI。
根据上述的两个规则,我们可以确定出不同尺寸的CU的阈值T1和T2。最佳的阈值T1和T2如下所示:
当CU的大小为64×64,T1等于0.7,T2等于0.97.
当CU的大小为32×32,T1等于0.4,T2等于0.94.
当CU的大小为16×16,T1等于0.17,T2等于1。
图5示出了根据本发明的一个实施例,用于在HEVC的屏幕编码中基于边缘方向的快速分块方法。
(1).确定当前CU,使用Sobel算子和与边缘相关的第一阈值(Tedge)来确定当前CU中多个角度区间中每一个角度区间的边缘点,并基于所述边缘点确定当前CU的与边缘复杂度相关联的特征值,其中,如果当前CU没有边缘点,则判定当前CU不被划分为更小的CU,并计算判定当前CU不被划分的代价,然后跳转至步骤(6),否则继续到步骤(2);
(2).如果当前CU的特征值比T1(T1是如上所获得的与当前CU的大小有关系的值)小,则判定当前CU应被划分为更小的CU,不计算判定当前CU是否划分的代价,并跳转至步骤(5),否则继续到步骤(3);
(3).如果当前CU的特征值比T2(T2是如上所获得的与当前CU大小有关系的值)大,则判定当前CU不被划分为更小的CU,并计算判定当前CU是否划分的代价,然后跳转至步骤(6),否者前进至步骤(4);
(4).对当前CU进行划分,计算划分代价,并且跳转至步骤(5);
(5).当上述步骤完成后,我们判断当前CU的尺寸是否是最小划分尺寸(例如8×8),如果不是,则再跳转至步骤(1),否则,跳转至步骤(6);
(6).如果当前CU的尺寸是最小划分尺寸或者前面判决的结果是不划分当前CU,则根据所计算的代价(cost)来选择当前CU的最佳划分结构。
其中,根据代价选择最佳划分结构属于HECV标准中的内容,因此在此不再赘述,以便不会模糊本发明的范围。
另外,根据HEVC,在CU划分之后即为具体编码过程,由于该过程并未本发明所关注的内容,因此在此不再赘述。
其中,在步骤(1)中,最开始时选择一个具有最大尺寸的CU作为当前CU,该最大尺寸例如为HEVC中64×64,32×32,根据实际情况而定。
另外,在步骤(1)中,如上算法所述的,将角度范围(0°,100°)均等地划分为所述多个(例如12个)角度区间;针对当前CU中每一个像素,利用Sobel算子计算水平和垂直方向的梯度向量,并计算梯度向量的振幅,基于所述第一阈值Tedge来确定当前像素是否是边缘点,当当前像素是边缘点时,计算梯度方向;在遍历了当前CU中每一个像素之后,确定落入各个角度区间的边缘点个数中的最大个数,并使用上述计算公式根据该最大个数和落入各个角度区间的边缘点个数来确定当前CU的与边缘复杂度相关联的特征值。更具体而言,所述特征值是所述落入各个角度区间的边缘点个数中的所述最大个数与当前CU的总边缘点个数的比值。
并且,如果当前CU中不存在被判定为边缘点的像素,则确定当前CU中没有边缘点。
如上所述地,在一个实施例中,T1和T2是基于对HEVC中的六个针对屏幕编码的训练序列的数据统计而获得的。如上所述地,这六个针对屏幕编码的训练序列是HEVC测试版本中的这6个针对屏幕编码的测试序列为:sc_map,sc_web,sc_wordEditing,sc_slideShow,sc_programming,sc_ppt_doc_xls。
根据上述数据统计,当当前CU的大小为64*64时,T1=0.7,T2=0.97;当当前CU的大小为32*32时,T1=0.4,T2=0.94;当当前CU的大小为16*16时,T1=0.17,T2=1。
当然,对于T1和T2,还可以使用其他方法,例如,申请人可以根据对六个针对屏幕编码的训练序列的数据统计而主观地确定这两个阈值的值。或者针对六个针对屏幕编码的训练序列的数据统计,采用机器学习的方法找到最佳阈值。
在图7中示出了用于执行上述方法的基于HEVC的视频编码器。其包括与上述方法的步骤一一对应的六个逻辑块(1)-(6)。在一个实施例中,该视频编码器可以是基于HEVC的硬件视频编解码器(例如,独立的芯片或电路逻辑区域),其中的六个逻辑块(1)-(6)对应于该编解码器中的具有相同功能的六个电路块。在另一个实施例中,该视频编码器可以是在处理器中执行的软件程序,其中的六个逻辑块(1)-(6)对应于具有相同功能的程序模块和/或单元。
图8示出了用于实施本发明的装置800,其包括:输入单元,用于接收待进行HEVC编码的原始视频帧;存储器,用于存储所接收的原始视频帧和编码后的视频帧;一个或多个处理器,被配置为实施如上所述的各个方法。
本发明所公开的方法可以用软件、硬件、固件等来实现。
当用硬件实现时,视频编码器可以用通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、分立门或晶体管逻辑器件、分立硬件组件或者设计为执行本文所述功能的其任意组合,来实现或执行。通用处理器可以是微处理器,但是可替换地,该处理器也可以是任何常规的处理器、控制器、微控制器或者状态机。处理器也可以实现为计算设备的组合,例如,DSP和微处理器的组合、多个微处理器的组合、一个或多个微处理器与DSP内核的组合或者任何其它此种结构。另外,至少一个处理器可以包括可操作以执行上述的一个或多个步骤和/或操作的一个或多个模块。
当用ASIC、FPGA等硬件电路来实现视频编码器时,其可以包括被配 置为执行各种功能的各种电路块。本领域技术人员可以根据施加在整个系统上的各种约束条件来以各种方式设计和实现这些电路,来实现本发明所公开的各种功能。
尽管前述公开文件论述了示例性方案和/或实施例,但应注意,在不背离由权利要求书定义的描述的方案和/或实施例的范围的情况下,可以在此做出许多变化和修改。而且,尽管以单数形式描述或要求的所述方案和/或实施例的要素,但也可以设想复数的情况,除非明确表示了限于单数。另外,任意方案和/或实施例的全部或部分都可以与任意其它方案和/或实施例的全部或部分结合使用,除非表明了有所不同。

Claims (9)

1.一种在HEVC中的屏幕编码中基于边缘方向的快速分块方法,包括:
(1).确定当前编码单元CU,使用Sobel算子和与边缘相关的第一阈值Tedge来确定当前CU中多个角度区间中每一个角度区间的边缘点,并基于所述边缘点确定当前CU的与边缘复杂度相关联的特征值,其中,如果当前CU没有边缘点,则判定当前CU不被划分为更小的CU,并计算判定当前CU不被划分的代价,然后跳转至步骤(6),否则继续到步骤(2);
(2).如果当前CU的特征值比第二阈值T1小,则判定当前CU应被划分为更小的CU,不计算判定当前CU是否划分的代价,并跳转至步骤(5),否则继续到步骤(3),其中,T1是与当前CU的大小有关系的值;
(3).如果当前CU的特征值比第三阈值T2大,则判定当前CU不被划分为更小的CU,并计算判定当前CU是否划分的代价,然后跳转至步骤(6),否者前进至步骤(4),其中,T2是与当前CU的大小有关系的值;
(4).对当前CU进行划分,计算划分代价,并前进至步骤(5);
(5).判断当前CU的尺寸是否是最小划分尺寸,如果不是,则再跳转至步骤(1);
(6).如果当前CU的尺寸是最小划分尺寸或者前面判决的结果是不划分当前CU,则根据所计算的代价来选择当前CU的最佳划分结构。
2.如权利要求1所述的方法,步骤(1)进一步包括:
将角度范围(0°,180°)均等地划分为12个角度区间;
针对当前CU中每一个像素,利用Sobel算子计算水平和垂直方向的梯度向量,并计算梯度向量的振幅,基于所述第一阈值Tedge来确定当前像素是否是边缘点,当当前像素是边缘点时,计算梯度方向;
在遍历了当前CU中每一个像素之后,确定落入各个角度区间的边缘点个数中的最大个数,并根据该最大个数和落入各个角度区间的边缘点个数来确定当前CU的与边缘复杂度相关联的特征值。
3.如权利要求2所述的方法,其中,所述特征值是所述落入各个角度区间的边缘点个数中的所述最大个数与当前CU的总边缘点个数的比值。
4.如权利要求1所述的方法,T1和T2是基于对HEVC中的六个针对屏幕编码的训练序列的数据统计而获得的。
5.如权利要求1所述的方法,当当前CU的大小为64*64时,T1=0.7,T2=0.97;当当前CU的大小为32*32时,T1=0.4,T2=0.94;当当前CU的大小为16*16时,T1=0.17,T2=1。
6.一种用于执行HEVC的硬件视频编解码器,其可操作以实现在HEVC中的屏幕编码中基于边缘方向的快速分块,包括:
电路块(1).用于确定当前编码单元CU,使用Sobel算子和与边缘相关的第一阈值Tedge来确定当前CU中多个角度区间中每一个角度区间的边缘点,并基于所述边缘点确定当前CU的与边缘复杂度相关联的特征值,其中,如果当前CU没有边缘点,则判定当前CU不被划分为更小的CU,并计算判定当前CU不被划分的代价,然后跳转至电路块(6),否则继续到电路块(2);
电路块(2).如果当前CU的特征值比第二阈值T1小,则判定当前CU应被划分为更小的CU,不计算判定当前CU是否划分的代价,并跳转至电路块(5),否则继续到电路块(3),其中,T1是与当前CU的大小有关系的值;
电路块(3).如果当前CU的特征值比第三阈值T2大,则判定当前CU不被划分为更小的CU,并计算判定当前CU是否划分的代价,然后跳转至电路块(6),否者前进至电路块(4),其中,T2是与当前CU的大小有关系的值;
电路块(4).对当前CU进行划分,计算划分代价,并前进至电路块(5);
电路块(5).判断当前CU的尺寸是否是最小划分尺寸,如果不是,则再跳转至电路块(1);
电路块(6).如果当前CU的尺寸是最小划分尺寸或者前面判决的结果是不划分当前CU,则根据所计算的代价来选择当前CU的最佳划分结构。
7.一种在HEVC中的屏幕编码中基于边缘方向的快速分块装置,包括:
单元(1).确定当前编码单元CU,使用Sobel算子和与边缘相关的第一阈值Tedge来确定当前CU中多个角度区间中每一个角度区间的边缘点,并基于所述边缘点确定当前CU的与边缘复杂度相关联的特征值,其中,如果当前CU没有边缘点,则判定当前CU不被划分为更小的CU,并计算判定当前CU不被划分的代价,然后跳转至单元(6),否则继续到单元(2);
单元(2).如果当前CU的特征值比第二阈值T1小,则判定当前CU应被划分为更小的CU,不计算判定当前CU是否划分的代价,并跳转至单元(5),否则继续到单元(3),其中,T1是与当前CU的大小有关系的值;
单元(3).如果当前CU的特征值比第三阈值T2大,则判定当前CU不被划分为更小的CU,并计算判定当前CU是否划分的代价,然后跳转至单元(6),否者前进至单元(4),其中,T2是与当前CU的大小有关系的值;
单元(4).对当前CU进行划分,计算划分代价,并前进至单元(5);
单元(5).判断当前CU的尺寸是否是最小划分尺寸,如果不是,则再跳转至单元(1);
单元(6).如果当前CU的尺寸是最小划分尺寸或者前面判决的结果是不划分当前CU,则根据所计算的代价来选择当前CU的最佳划分结构。
8.一种计算机可读介质,其具有存储在其上的计算机可读指令,所述计算机可读指令被执行时,实施如权利要求1-5中任一项所述的方法。
9.一种用于HEVC编码的装置,包括:
输入单元,用于接收待进行HEVC编码的原始视频帧;
存储器,用于存储所接收的原始视频帧和编码后的视频帧;
一个或多个处理器,被配置为执行如权利要求1-5中任一项所述的方法。
CN201410757750.3A 2014-12-12 2014-12-12 Hevc屏幕编码中基于边缘方向的快速分块的方法及装置 Active CN104539949B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410757750.3A CN104539949B (zh) 2014-12-12 2014-12-12 Hevc屏幕编码中基于边缘方向的快速分块的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410757750.3A CN104539949B (zh) 2014-12-12 2014-12-12 Hevc屏幕编码中基于边缘方向的快速分块的方法及装置

Publications (2)

Publication Number Publication Date
CN104539949A CN104539949A (zh) 2015-04-22
CN104539949B true CN104539949B (zh) 2018-02-06

Family

ID=52855406

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410757750.3A Active CN104539949B (zh) 2014-12-12 2014-12-12 Hevc屏幕编码中基于边缘方向的快速分块的方法及装置

Country Status (1)

Country Link
CN (1) CN104539949B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019192309A1 (zh) * 2018-04-02 2019-10-10 腾讯科技(深圳)有限公司 确定编码单元的编码代价的方法、装置及计算机可读存储介质

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104883566B (zh) * 2015-05-27 2018-06-12 复旦大学 一种适用于hevc标准的帧内预测块大小划分的快速算法
US10638140B2 (en) 2015-05-29 2020-04-28 Qualcomm Incorporated Slice level intra block copy and other video coding improvements
CN106303534B (zh) * 2015-06-08 2022-05-31 上海天荷电子信息有限公司 多种索引串与像素串融合复制方式的图像压缩方法和装置
CN105847838B (zh) * 2016-05-13 2018-09-14 南京信息工程大学 一种hevc帧内预测方法
CN107071418B (zh) * 2017-05-05 2020-03-17 上海应用技术大学 一种基于决策树的hevc帧内编码单元快速划分方法
CN109120928B (zh) * 2018-04-18 2022-02-01 北方工业大学 基于字符分割的改进帧内块拷贝方法和装置
CN110312134B (zh) * 2019-08-06 2021-06-15 杭州微帧信息科技有限公司 一种基于图像处理和机器学习的屏幕视频编码方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102665079A (zh) * 2012-05-08 2012-09-12 北方工业大学 用于hevc的自适应快速帧内预测模式决策
CN102665078A (zh) * 2012-05-08 2012-09-12 北方工业大学 用于hevc的基于方向矢量的帧内预测模式决策
CN103237223A (zh) * 2013-05-10 2013-08-07 北方工业大学 基于熵的lcu快速划分

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130083844A1 (en) * 2011-09-30 2013-04-04 In Suk Chong Coefficient coding for sample adaptive offset and adaptive loop filter

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102665079A (zh) * 2012-05-08 2012-09-12 北方工业大学 用于hevc的自适应快速帧内预测模式决策
CN102665078A (zh) * 2012-05-08 2012-09-12 北方工业大学 用于hevc的基于方向矢量的帧内预测模式决策
CN103237223A (zh) * 2013-05-10 2013-08-07 北方工业大学 基于熵的lcu快速划分

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019192309A1 (zh) * 2018-04-02 2019-10-10 腾讯科技(深圳)有限公司 确定编码单元的编码代价的方法、装置及计算机可读存储介质

Also Published As

Publication number Publication date
CN104539949A (zh) 2015-04-22

Similar Documents

Publication Publication Date Title
CN104539949B (zh) Hevc屏幕编码中基于边缘方向的快速分块的方法及装置
CN105681795B (zh) 用于对帧序列进行视频编码的方法和编码器
US10003792B2 (en) Video encoder for images
CN104067619B (zh) 视频解码器、视频解码方法以及视频解码程序的记录介质
CN103248895B (zh) 一种用于hevc帧内编码的快速模式估计方法
CN101552924B (zh) 一种用于视频编码的空间预测方法
CN103957415B (zh) 基于屏幕内容视频的cu分割方法和装置
CN104754357B (zh) 基于卷积神经网络的帧内编码优化方法及装置
CN104702955B (zh) 屏幕视频的预测编码的方法与系统
US10455229B2 (en) Prediction mode selection method, apparatus and device
US20160044329A1 (en) Image Predictive Coding Method and Image Encoder
CN105721878A (zh) Hevc视频编解码中执行帧内预测的图像处理装置及方法
CN105898332B (zh) 针对3d-hevc编码标准的快速深度图帧内模式判决方法
CN106131546A (zh) 一种提前确定hevc合并和跳过编码模式的方法
CN109495743A (zh) 一种基于异构多处理平台的并行化视频编码方法
US20180199058A1 (en) Video encoding and decoding method and device
CN108353175A (zh) 使用系数引起的预测处理视频信号的方法和装置
CN109246430A (zh) 虚拟现实360度视频快速帧内预测和cu划分提前决策
TWI411305B (zh) 動態參照訊框選擇方法和系統
CN100474932C (zh) 基于最佳预测模式概率的视频帧内图像快速编码方法
CN109120928A (zh) 基于字符分割的改进帧内块拷贝算法
CN105100799A (zh) 一种减少hevc编码器中帧内编码时延的方法
CN110213576A (zh) 视频编码方法、视频编码装置、电子设备及存储介质
CN106063268B (zh) 转码方法、转码设备以及信息存储介质
CN110971896B (zh) 一种h.265编码方法和装置

Legal Events

Date Code Title Description
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20201204

Address after: Group 1, Shengli Ju, Jiang'an Town, Rugao City, Nantong City, Jiangsu Province, 226500

Patentee after: RUGAO ANRUI ELECTRONIC Co.,Ltd.

Address before: 100000 Beijing Haidian District Huayuan Road No. 2 peony building 4 floor 1424 room

Patentee before: Beijing Zhonglian Technology Service Co.,Ltd.

Effective date of registration: 20201204

Address after: 100000 Beijing Haidian District Huayuan Road No. 2 peony building 4 floor 1424 room

Patentee after: Beijing Zhonglian Technology Service Co.,Ltd.

Address before: 100144 Beijing City, Shijingshan District Jin Yuan Zhuang Road No. 5, North China University of Technology

Patentee before: North China University of Technology

TR01 Transfer of patent right