CN108848388B - 一种提高H264编码16x16预测模式DCT运算速度的硬件实现方法 - Google Patents

一种提高H264编码16x16预测模式DCT运算速度的硬件实现方法 Download PDF

Info

Publication number
CN108848388B
CN108848388B CN201810781725.7A CN201810781725A CN108848388B CN 108848388 B CN108848388 B CN 108848388B CN 201810781725 A CN201810781725 A CN 201810781725A CN 108848388 B CN108848388 B CN 108848388B
Authority
CN
China
Prior art keywords
prediction mode
prediction
dct
transformation
matrix
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
CN201810781725.7A
Other languages
English (en)
Other versions
CN108848388A (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.)
Zhuhai Eeasy Electronic Tech Co ltd
Original Assignee
Zhuhai Eeasy Electronic Tech Co ltd
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 Zhuhai Eeasy Electronic Tech Co ltd filed Critical Zhuhai Eeasy Electronic Tech Co ltd
Priority to CN201810781725.7A priority Critical patent/CN108848388B/zh
Publication of CN108848388A publication Critical patent/CN108848388A/zh
Application granted granted Critical
Publication of CN108848388B publication Critical patent/CN108848388B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明提出了一种提高H264编码16x16预测模式DCT运算速度的硬件实现方法,在视频编码DCT硬件实现领域,特别是在亮度帧内预测跟DCT变换在硬件实现上在同一个流水级的时候,能有效解决由于16x16预测模式DCT运算速度过慢而导致整个流水级时间延长而降低性能的问题,同时16x16预测模式DCT跟4x4DCT共用大部分电路,降低硬件成本。本发明采用技术方案是:共用4x4hadsad电路,对16个4x4块进行hadamard变换,将每个4x4的hadamard变换中产生的16个点的和保存下来。当16x16模式预测模式完毕,就得到16x16最优预测模式16个4x4块的所有点的和,即得到16x16的DCT变换后的dc系数矩阵。本方法能够缩短16x16做完16个4x4DCT变换才能做dc系数hadamard变换这段时间,提高了16x16预测模式DCT运算的速度,并减少电路面积。

Description

一种提高H264编码16x16预测模式DCT运算速度的硬件实现 方法
技术领域
本发明涉及H264编码硬件实现领域,特别涉及16x16预测模式的DCT硬件实现。
背景技术
随着视频编解码的不断发展,应用也越来越广,硬件需要支持的视频显示格式也越来越多,720p30fps,720p60fps,1080p30fps,1080p60fps,4k30fps 等。这就对硬件设计需要的处理速度越来越高。
目前视频编码性能的提升的瓶颈,主要是熵编码,帧内预测,帧间预测,变换量化,反变换反量化这几大块。而目前编码的主流设计方法,为了节约硬件成本,将帧内预测、变换量化、反变换反量化,重构做到同一个流水级,这就更加抑制了硬件编码的性能。
H264编码的一般变换包括4x4DCT,8x8DCT以及16x16预测模式DCT。16x16预测模式DCT需要将16x16的宏块分成16个4x4块,并依次对16个4x4块做DCT,并抽取每一个4x4块做完DCT之后的矩阵的左上角dc系数,由16个dc系数组成一个4x4矩阵,再做变换量化。而16x16在做反变换(IDCT)的时候,需要等到16个dc系数的反变换量化的结果。如果按照算法的流程去设计,则16x16预测模式DCT的处理时间将成为流水级性能的瓶颈。所以迫切需要一种提高视频编码16x16预测模式DCT运算速度的硬件实现方法。
发明内容
本发明提出了一种提高H264编码16x16预测模式DCT运算速度的硬件实现方法,能有效减少16x16预测模式DCT运算的时间,从而减少这级流水结构的整体时间,提高H264编码硬件实现的性能。同时16x16预测模式DCT运算电路共用4x4DCT电路,降低了硬件成本。
本发明要求处理的目标系统满足以下条件:(1)帧内预测、变换量化、反变换反量化,重构同一个流水级设计。(2)16x16和4x4每种预测模式的求残差过程并行进行,16x16预测模式与4x4预测模式的变换量化、重构回路串行进行。(3)需要保存16x16每种预测模式的hadamard变换过程中产生的16个点的和。(4)4x4hadsad电路可以通过选择切换成4x4hadamard电路。
本发明采用技术方案是:4x4帧内预测的9种预测模式,采用三套并行预测,对于一个4x4块,9种预测模式得到最优的cost,只需要6个周期,随后对最优cost对应的预测模式得到的残差进行重构运算,做变换量化,反量化反变换,重构。其中变换量化到反量化反变换整个过程需要7个周期。16x16的帧内预测得到预测值与原像素点值的残差之后,在4x4帧内预测在做变换到反变换期间,复用4x4算cost的电路。16x16的帧内预测每3个4x4块并行预测,每个4x4块的四种预测模式流水进行预测。全部复用4x4的并行算cost预测电路。
在得到16x16的4种预测模式对应的4组16个4x4分块的和之后,通过得到的最优cost,选择其中一组,将该组的16个点全部右移一位,就得到16个4x4做完DCT之后的dc系数矩阵。再进行hadamard变换,dc量化,dc反hadamard变换,dc反量化,这部分硬件上也是复用4x4的DCT,Q,IDCT,IQ 电路。等4x4,16x16,8x8各自算出了最优的cost,16x16的预测模式的dc变换之后的值也在这之前就得到了。
本发明的有益效果是:(1)16x16预测模式的dc系数的变换,在16x16宏块的最优预测模式得到之前就能求出来,使得16x16预测模式做DCT得时候,不用叠加上算dc系数变换的这部分时间,有效提高了16x16预测模式DCT运算速度。(2)16x16与4x4预测模式串行交替进行,复用大部分电路,而没有增加各自算最优cost的时间,有效减少了硬件面积,而又没有使得性能下降。(3)4x4的hadsad变换电路与4x4的hadamard变换电路通过一个选择信号就能灵活切换,增加了硬件设计的灵活性,并减少了硬件面积。
附图说明
图1:一般设计结构跟本设计方法在结构上的对比图。
图2:采用本方法的求16x16的预测模式,16x16的dc系数的变换量化反变换反量化结构图。
图3:4x4求预测模式,DCT-Q-IQ-IDCT(DCT变换-量化-反量化-DCT反变换)的流水示意图,以及16x16求预测模式,复用4x4求预测模式电路的流水示意图。
图4:4x4DCT,4x4IDCT,4x4HAD(哈达玛变换),4x4IHAD,4x4HAD_SAD等变换蝶形算法。
具体实施方式
本发明的具体实现,详细描述如下:从16x16预测模式到重构整个结构来看,如图1所示,其采用本设计方法部分,先是从sram中读取每一个4x4块的原始像素,通过算最优cost电路(S103),就能得到16x16最优预测模式,并得到对应的16个4x4块dc变换(HAD-Q-IHAD-IQ(哈达玛变换-量化-反哈达玛变换-反量化))后的值。如果最终该16x16宏块的最终最优预测模式是16x16,则需要将该宏块分成16个4x4块,分别做DCT-Q-IQ-IDCT。采用本设计方法能将每个4x4块的DCT-Q-IQ-IDCT流水进行,其中在IDCT的时候,需要4x4块的经过变换后的ac系数以及dc系数,又因为dc系数的变换在S103模块已经得到,通过S104直接传输到IDCT模块。所以不会影响每个4x4块从变换到重构的流水进行。而按照算法流程设计,读取数据,算最优cost(S101),在16x16的变换重构通路,需要先求出16个4x4块DCT的结果,再将每个4x4的变换后的矩阵左上角的dc系数抽取出来,组成新的矩阵,再做HAD-Q-IHAD-IQ(S102),然后才能做IDCT,重构。所以这种设计方法比本设计方法多了算dc系数变换的时间。
16x16预测模式电路的具体实现,如图2所示。16x16按4x4分成16个块,每三个块并行执行(S202),每个块内部的4种预测模式流水运行(S201),具体结构如图3所示。对16x16其中的一个4x4块,从sram读取数据,选择4种预测模式(DC的三种预测模式合并为一种,由16x16整个宏块左边以及上边是否可以参考为条件选择)的其中一种预测模式,进行预测值减去原像素值得到的残差绝对值,进行hadamard变换,hadamard采用蝶形算法设计,共用4x4的hadsad蝶形结构,如图4。Hadsad(HAD_SAD)蝶形结构的行变换跟列变换的算法结构一样,其列变换跟hadamard(HAD)的蝶形算法区别在最后的结果,hadsad的S405,S406刚好跟had的S402*2,S403*2顺序掉换一下,所以电路复用上,只需要把这个不一致的地方做成可选择就行。从图4也可以看出4x4DCT跟4x4HAD的蝶形算法结构区别在,中间的蝶形参数有差异以及列变换的最后结果是否除以2。而4x4IHAD跟4x4IDCT的蝶形算法结构仅仅是蝶形参数不一样。所以4x4DCT,4x4HAD,4x4hadsad之间都可以互相切换。另外比较重要的一点是,从4x4DCT蝶形算法可以看出,DCT变换之后得到左上角的点,其实就是4x4矩阵16个点的和。4x4HAD_SAD(hadsad)的S404也是该矩阵16个点的和,4x4HAD的S401未除以2之前也是该矩阵16个点的和。利用该特征,在16x16做每一个4x4块预测算cost的时候,需要进行4x4HAD(S205)变换,这时候保存其4x4HAD的列变换之后左上角未除以2之前的中间结果,其实就是该矩阵4x4DCT变换之后的结果。所以就可以在16x16做预测的时候,得到每个4x4矩阵的DCT的dc系数。等16x16预测完,就得到16个4x4DCT变换后的4x4dc系数矩阵,保存在S203,然后在4x4预测模式做预测的时候,复用其4x4DCT-Q-IQ-IDCT电路结构,做16x16预测模式dc系数的HAD(S204)-Q-IHAD-IQ,得到的结果保存到S206。因为整个宏块的预测流水结构,16x16的预测模式是每3个4x4块并行进行,预测速度比4x4预测模式要快,不会影响到整个宏块的最优预测速度。等得到整个16x16宏块的最优预测模式,如果决策到是16x16预测模式是最优,则复用4x4DCT-Q-IQ-IDCT-REC电路对每一个拆分之后的4x4残差矩阵做运算,其中在做IDCT的时候,需要将左上角的系数替换成dc系数变换之后的值,即S206中保存的值输入给S207。
16x16预测模式采用复用4x4预测模式结构进行4x4块之间并行运算,预测模式之间流水运算,如图3所示。4x4预测模式每一个4x4块半流水串行运算,9种预测模式,分成3x3结构,每3种并行运算,3种之间流水运算。S301为求预测值并得到残差值,S302做hadsad变换,S303算cost,并依次比较每种预测模式的cost,保留最小cost。S304是将每3种预测模式的最优cost再比较,得到9种预测模式的最优cost。然后通过最优cost对应的预测模式求出残差值进行4x4DCT-Q-IQ-IDCT(S305),最后进行重构运算(S309)。16x16预测模式的每一个4x4块4种预测模式(dc,vertical,horizontal,plane(S310))流水进行,S306的求残差电路复用S301,S307的hadamard电路复用S302,S308的求预测电路复用S303。

Claims (5)

1.一种提高H264编码16x16预测模式DCT运算速度的硬件实现方法,其特征在于该方法的实现步骤如下:步骤1、利用4x4DCT与4x4HAD变换的特点,在做16x16预测模式的时候,就把每一个4x4矩阵进行HAD变换的时候,所产生的该4x4矩阵所有点和保存下来;步骤2、在4x4预测模式做DCT-Q-IQ-IDCT期间,16x16预测模式共用4x4预测模式的预测电路结构,在4x4预测模式做预测期间,16x16预测模式的dc系数做HAD-Q-IHAD-IQ;
在16x16做每一个4x4块预测算cost时,进行4x4HAD变换,保存其4x4HAD的列变换之后左上角未除以2之前的中间结果,得到每个4x4矩阵的DCT的dc系数;16x16预测模式预测完,得到16个4x4DCT变换后的4x4dc系数矩阵并保存。
2.根据权利要求1所述的方法,其特征在于:其所述步骤1,4x4矩阵进行DCT变换之后,左上角的点是该4x4矩阵所有点的累和,而4x4矩阵进行HAD变换之后,左上角的点是该4x4矩阵所有点的累和再除以2,把每一个4x4HAD列变换之后未除以2之前左上角的值保存下来。
3.根据权利要求1所述的方法,其特征在于:其所述步骤2,4x4预测模式采用将9种预测模式分成3种预测模式并行进行,每3种预测模式之间流水进行。
4.根据权利要求1所述的方法,其特征在于:其所述步骤2,16x16预测模式将16x16宏块分成16个4x4块,每3个4x4块并行进行预测,每一个划分之后的4x4块的4种预测模式,流水进行。
5.根据权利要求1所述的方法,其特征在于:其所述步骤2,16x16预测模式的并行结构复用4x4预测的3种预测模式并行结构,16x16预测模式划分的每一个4x4块的4种预测模式流水结构复用4x4预测模式的每3种预测模式的流水结构,并比该结构多加一级流水。
CN201810781725.7A 2018-07-17 2018-07-17 一种提高H264编码16x16预测模式DCT运算速度的硬件实现方法 Active CN108848388B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810781725.7A CN108848388B (zh) 2018-07-17 2018-07-17 一种提高H264编码16x16预测模式DCT运算速度的硬件实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810781725.7A CN108848388B (zh) 2018-07-17 2018-07-17 一种提高H264编码16x16预测模式DCT运算速度的硬件实现方法

Publications (2)

Publication Number Publication Date
CN108848388A CN108848388A (zh) 2018-11-20
CN108848388B true CN108848388B (zh) 2022-02-22

Family

ID=64197767

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810781725.7A Active CN108848388B (zh) 2018-07-17 2018-07-17 一种提高H264编码16x16预测模式DCT运算速度的硬件实现方法

Country Status (1)

Country Link
CN (1) CN108848388B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114007079A (zh) * 2021-10-09 2022-02-01 上海为旌科技有限公司 变换电路、方法、装置和编码器

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101383972A (zh) * 2008-09-28 2009-03-11 北京航空航天大学 基于空间预测与变换的遥感图像压缩方法
CN102148994A (zh) * 2010-02-04 2011-08-10 成都市世嘉电子实业有限公司 一种并行的帧内预测帧编码方法
CN102763416A (zh) * 2010-01-07 2012-10-31 株式会社东芝 运动图像编码装置以及运动图像解码装置
CN102769754A (zh) * 2012-08-02 2012-11-07 豪威科技(上海)有限公司 H264编码器及其图像变换、量化及重构的方法
CN106034235A (zh) * 2015-03-11 2016-10-19 杭州海康威视数字技术股份有限公司 计算编码失真度和编码模式控制的方法及其系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8179972B2 (en) * 2004-06-08 2012-05-15 Panasonic Corporation Image encoding device, image decoding device, and integrated circuit used therein

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101383972A (zh) * 2008-09-28 2009-03-11 北京航空航天大学 基于空间预测与变换的遥感图像压缩方法
CN102763416A (zh) * 2010-01-07 2012-10-31 株式会社东芝 运动图像编码装置以及运动图像解码装置
CN102148994A (zh) * 2010-02-04 2011-08-10 成都市世嘉电子实业有限公司 一种并行的帧内预测帧编码方法
CN102769754A (zh) * 2012-08-02 2012-11-07 豪威科技(上海)有限公司 H264编码器及其图像变换、量化及重构的方法
CN106034235A (zh) * 2015-03-11 2016-10-19 杭州海康威视数字技术股份有限公司 计算编码失真度和编码模式控制的方法及其系统

Also Published As

Publication number Publication date
CN108848388A (zh) 2018-11-20

Similar Documents

Publication Publication Date Title
WO2008067500A2 (en) Parallel deblocking filter for h.264 video codec
CN101854540B (zh) 用于应用h.264视频编码标准的帧内预测方法及装置
JP2009527977A (ja) タイプが一致しない下位階層の情報を使用しインターレースビデオ信号をエンコーディング/デコーディングする方法および装置
KR101033769B1 (ko) 영상 데이터의 인트라 예측 모드 결정 방법
CN104125466A (zh) 一种基于gpu的hevc并行解码方法
Amish et al. Fully pipelined real time hardware solution for high efficiency video coding (HEVC) intra prediction
CN103024389A (zh) 一种用于hevc的解码装置和方法
JP2013125973A (ja) 画像符号化方法,画像復号方法,画像符号化装置,画像復号装置,画像符号化プログラムおよび画像復号プログラム
CN101115207B (zh) 基于预测点间相关性的帧内预测实现的方法及装置
CN101383970A (zh) 基于avs的并行流水的帧内预测器的实现方法
CN108848388B (zh) 一种提高H264编码16x16预测模式DCT运算速度的硬件实现方法
CN101383971A (zh) 一种基于图像编解码的帧内预测的处理方法
US9473782B2 (en) Loop filtering managing storage of filtered and unfiltered pixels
CN102595137B (zh) 基于图像像素块行/列流水线的快速模式判决装置和方法
KR100359208B1 (ko) 고속 디블럭킹 필터 장치
KR100605105B1 (ko) 영상 보간 장치
KR100899730B1 (ko) 영상 인코더 및 디코더에서의 색차 신호 보간 방법
JP5195674B2 (ja) 画像符号化装置
KR100999505B1 (ko) 매크로블록 기반의 데이터 병렬 처리를 수행하는 동영상 인코딩/디코딩 장치
KR101031493B1 (ko) 에이치 닷 264 표준에 근거한 디코더용 움직임 보상기 및 그 보간 연산 방법
Wang et al. High definition IEEE AVS decoder on ARM NEON platform
US20090147852A1 (en) Spatial Filtering of Differential Motion Vectors
Jiang et al. A fine-grained parallel intra prediction for HEVC based on GPU
US20170244981A1 (en) Reconfigurable interpolation filter and associated interpolation filtering method
KR101004825B1 (ko) 수평 필터와 수직 필터를 이용하는 파이프라인 구조의 디블록킹 필터 장치

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant