CN102291584B - 帧内图像亮度块预测装置及方法 - Google Patents
帧内图像亮度块预测装置及方法 Download PDFInfo
- Publication number
- CN102291584B CN102291584B CN 201110257574 CN201110257574A CN102291584B CN 102291584 B CN102291584 B CN 102291584B CN 201110257574 CN201110257574 CN 201110257574 CN 201110257574 A CN201110257574 A CN 201110257574A CN 102291584 B CN102291584 B CN 102291584B
- Authority
- CN
- China
- Prior art keywords
- block
- sub
- prediction
- module
- reference pixel
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000006243 chemical reaction Methods 0.000 claims abstract description 24
- 241000023320 Luma <angiosperm> Species 0.000 claims description 15
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 claims description 15
- 230000008054 signal transmission Effects 0.000 claims description 6
- 239000000284 extract Substances 0.000 claims description 3
- 230000007547 defect Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 1
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明公开一种帧内图像亮度块预测装置及方法,主要解决现有技术中控制电路设计复杂和运算电路复用性差的问题。其装置包括子块参考像素位置存储模块、装置整体控制模块、地址计数器模块、冗余微码存储模块、参考像素存储模块、运算电路模块、预测像素串并转换模块。其方法包括:第一、分别存储典型子块亮度块参考像素位置信息和冗余微码;第二、根据输入信息获取当前子块亮度块参考像素位置信息;第三、根据参考像素位置信息译码获取当前子块亮度块参考像素和微码;第四、在微码控制下运算产生预测像素并通过串并转换处理送给帧内图像亮度块编码的变换阶段。本发明具有控制电路设计简单、数据处理速度快和资源消耗少的优点。
Description
技术领域
本发明属于图像处理技术领域,更进一步涉及视频及图像编码领域中帧内图像亮度块预测装置及方法。本发明可用于H.264数字视频及图像编码标准中的帧内图像预测阶段,实现帧内图像亮度块快速高效预测。
背景技术
在数字视频及图像编码***中,由于被处理亮度块具有多种类和多预测模式的特点,帧内图像亮度块预测阶段给整个编码***造成数据交换频繁和运算多样化。在通用的帧内图像亮度块预测装置中分别采用状态机控制数据交换和运算电路处理数据,采用以上方式的装置需要解决控制电路设计复杂和运算电路复用性差的问题。
上海交通大学提出的专利申请“基于预测点间相关性的帧内预测实现的方法及装置”(专利申请号CN200710045445.1,公开号CN101115207)公开了一种基于预测点间相关性的方法解决数据交换频繁的问题。该方法的实施步骤是:步骤一,接受当前处理宏块类型和预测模式参数;步骤二,接受当前宏块上边参考像素和左边参考像素;步骤三,根据步骤一、步骤二所获得的信息,利用各种存在相关性的预测模式和当前块行与行间的数据相关性,通过移位的方式提供参考像素和预测值的输出,为上边参考像素和左边参考像素分配独立处理单元,完成当前宏块的预测计算和参考像素更新;步骤四,将步骤三中的预测计算值送给外部的重构模块。该专利申请还公开了一种装置,包括:参考像素寄存器组、参考像素控制单元、基本运算单元和输出控制单元。该方法虽然利用预测点间具有相关性的特征加快数据更新,在一定程度上缓解了数据交换带宽高、频率高的问题,但是仍然存在的不足是:在实践中由于预测像素点间相关性自由度大,难以具体量化,导致控制单元设计复杂度高和电路资源消耗多,非常不利于在现场可编程门阵列(FPGA)上实现,特别在当前处理块具有多个预测模式时容易造成控制单元的控制信号位宽和数目成倍增长。此外,该专利申请装置虽然通过移位操作使基本运算单元实现上边参考像素和左边参考像素共同参与的运算,但是造成基本运算单元结构复杂和电路资源开销大。
中国台湾威盛电子股份有限公司提出的专利申请“帧内预测方法及其装置”(专利申请号200910119718.1,公开号CN101505428)公开了一种采用多个多路选择器联合选择处理单元的输入输出信号的方法解决运算电路复用性差的问题。该方法实施步骤是:步骤一,选择控制单元产生输入选择控制信号、运算参数信号和输出选择控制信号;步骤二,输入选择控制信号控制输入数据单元选择正确的输入数据;步骤三,选择后的输入数据在运算参数信号的控制下进行处理;步骤四,输出数据选择单元在输出选择信号的控制下选择部分或全部运算结果输出。此外,该专利申请还公开了一种装置,该装置包括:输入数据单元、选择控制单元、输入数据选择单元、处理单元和输出数据选择单元。该方法虽然利用两个选择单元选择处理单元的输入数据和输出数据拓宽处理单元电路的适用性,能够在一定程度上解决运算电路复用性差的问题,但是仍然存在的不足是:选择控制单元并没有有效降低控制电路设计的复杂性,处理单元虽然能够实现所有预测运算,但并不是精简结构,导致了装置数据处理速度较低和资源开销大。
发明内容
本发明的目的在于克服上述已有技术的不足,针对H.264数字视频及图像编码标准中的帧内图像预测阶段,提出一种冗余微码控制预测运算的帧内图像亮度块预测装置及方法,可以显著降低控制模块的设计复杂度和提高预测像素处理电路的复用性,有效降低预测阶段硬件电路资源的开销和提高编码***数据处理速度,使编码***预测阶段电路的面积、速度和功耗达到较好平衡。
为实现上述目的,本发明装置包括七个模块:子块参考像素位置存储模块、整体控制模块、地址计数器模块、冗余微码存储模块、参考像素存储模块、运算电路模块和预测像素串并转换模块,各模块之间通过总线连接。其中,子块参考像素位置存储模块用于存储帧内图像中子块亮度块参考像素位置信息,确定当前子块亮度块的预测模式;整体控制模块用于产生地址计数器置入数、地址计数器计数使能和子块参考像素位置存储模块的寻址地址,实现当前子块亮度块控制信号的有序切换;地址计数器模块由计数周期为N的计数器构成,用于产生冗余微码存储单元模块的查找地址,实现微码信号的正确寻址,其中N由地址计数器计数使能决定;冗余微码存储模块用于存储运算电路模块的选择信号,完成运算电路模块中输入参考像素和预测像素输出的选择;参考像素存储模块用于将当前子块亮度块所有位置上的参考像素存储为实际有效参考像素,实现对当前子块亮度块运算所需参考像素同时输出;运算电路模块用于产生子块亮度块的预测像素,完成当前子块亮度块对应预测模式下的运算;预测像素串并转换模块由通用串并转换电路构成,用于将串行输入预测像素转换成并行输出,为帧内图像编码***变换阶段提供输入接口。
本发明装置实现帧内亮度块预测的方法包括如下步骤:
(1)存储位置信息
1a)宏块亮度块分类:将帧内图像按照16x16的大小块分成M行乘以M列个宏块亮度块,将帧内图像中所有宏块亮度块分成五类:参考像素无效的宏块、只左边参考像素有效的宏块、只上边参考像素有效的宏块、右上参考像素需复制的宏块、参考像素全部有效的宏块;
1b)子块亮度块分类:将宏块亮度块分成P个子块,将子块亮度块分成五类:参考像素无效的子块、只左边参考像素有效的子块、只上边参考像素有效的子块、右上参考像素需复制的子块、参考像素全部有效的子块;
1c)产生子块亮度块参考像素位置信息:将子块亮度块的类别定为子块亮度块参考像素位置信息,用三位二进制数表示;
1d)存储典型子块亮度块参考像素位置信息:子块参考像素位置存储模块中依次存储五个不同类型宏块亮度块内的子块亮度块参考像素位置信息,存储深度为宏块亮度块内子块亮度块个数乘以宏块类型数五,存储宽度为3。
(2)存储冗余微码
2a)构造微码位宽:微码位宽为控制预测运算产生单预测像素的信号位宽;
2b)产生微码:在预测运算串行产生子块亮度块九个预测模式下的全部预测像素时所需控制信号;
2c)存储微码:冗余微码存储模块的微码存储顺序依次为:水平预测模式,水平向上预测模式,直流预测模式,垂直预测模式,对角线向左预测模式,垂直向左预测模式,对角线向右预测模式,垂直向右预测模式,水平向下预测模式;冗余微码存储模块的存储深度等于子块亮度块大小乘以全部预测模式数九。
(3)获得位置信息
3a)接收当前子块亮度块编号和所属当前宏块亮度块的二维坐标;
3b)整体控制模块在接收信号的触发下,拼位地址产生器产生寻址地址;
3c)子块参考像素位置存储模块在寻址信号作用下,输出当前子块亮度块参考像素位置信息。
(4)生成地址计数器置入数
在当前子块亮度块参考像素位置信息触发下,整体控制模块中的译码器译码产生地址计数器置入数。
(5)生成地址计数器计数使能
5a)在当前子块亮度块参考像素位置信息触发下,整体控制模块中的译码器1译码产生减法器置入数;
5b)减法器产生时间周期为置入数的计数使能。
(6)重定序参考像素
6a)参考像素存储模块存储当前子块亮度块所有位置上的参考像素;
6b)整体控制模块在当前子块亮度块参考像素位置信息触发下,译码器2译码产生参考像素选择控制信号;
6c)参考像素存储模块在选择控制信号的作用下,提取步骤6a)中参考像素。
(7)地址计数器产生地址
7a)地址计数器模块接收置入数;
7b)在计数使能的控制下地址计数器模块每隔一个时间单位加一,产生地址。
(8)冗余微码存储模块接收地址,输出微码。
(9)预测运算
9a)运算电路模块接收参考像素存储器输出的参考像素;
9b)输入的微码低位控制运算电路模块中的数据选择器1从已输入参考像素中选择当前运算所需的四个参考像素;
9c)当前子块上边、左边参考像素和所选四个参考像素通过运算电路同时生成四个不同预测像素;
9d)输入的微码高位控制运算电路模块中的数据选择器2从生成的四个不同预测像素中选择一个预测像素。
(10)存储预测像素:预测像素串并转换模块将输入的串行预测像素通过转换电路并行输出。
本发明与现有技术相比具有以下优点:
第一,由于本发明采用子块参考像素位置存储模块存储当前子块亮度块参考像素位置信息和微码控制运算电路的方式实现预测阶段控制,克服了现有技术当中预测阶段控制电路设计复杂度高和资源消耗大的缺点,使得本发明具有控制电路设计简单和资源消耗少的优点。
第二,由于本发明的运算电路模块采用两级多路选择器构造出能够同时完成四种运算的结构,有效发挥了运算电路的复用性,克服了现有技术当中运算电路结构复杂和复用性差的缺点,使得本发明在硬件资源消耗相同的情况下,具有数据处理速度快,功耗低的优点。
附图说明
图1为本发明装置的方框图;
图2为本发明装置中运算电路模块的方框图;
图3为本发明方法的流程图;
图4为H.264编码协议中帧内图像宏块亮度块分解子块亮度块过程示意图。
具体实施方式
参照附图1,本发明装置包括七个模块:子块参考像素位置存储模块、整体控制模块、地址计数器模块、冗余微码存储模块、参考像素存储模块、运算电路模块和预测像素串并转换模块,各模块之间通过总线连接。其中,子块参考像素位置存储模块用于存储帧内图像中子块亮度块参考像素位置信息,确定当前子块亮度块的预测模式,子块参考像素位置存储模块的输出端连接着整体控制模块的输入端;整体控制模块用于产生地址计数器置入数、地址计数器计数使能和子块参考像素位置存储模块的寻址地址,实现当前子块亮度块控制信号的有序切换,整体控制模块的一个输出端连接着地址计数器模块的输入端,第二个输出端连接子块参考像素位置存储模块的输入端,第三个输出端连接参考像素存储模块的选择控制信号输入端;地址计数器模块由计数周期为N的计数器构成,用于产生冗余微码存储单元模块的查找地址,实现微码信号的正确寻址,其中N由地址计数器计数使能决定,地址计数器模块的输出端连接着冗余微码存储模块的输入端;冗余微码存储模块用于存储运算电路模块的选择信号,完成运算电路模块中输入参考像素和预测像素输出的选择,冗余微码存储模块的输出端连接运算电路模块的选择信号输入端;参考像素存储模块用于将当前子块亮度块所有位置上的参考像素存储为实际有效参考像素,实现对当前子块亮度块运算所需参考像素同时输出,参考像素存储模块的输出端连接运算电路模块的参考像素输入端;运算电路模块用于产生子块亮度块的预测像素,完成当前子块亮度块对应预测模式下的运算,运算电路模块的输出端连接着预测像素串并转换模块输入端;预测像素串并转换模块由通用串并转换电路构成,用于将串行输入预测像素转换成并行输出,为帧内图像编码***变换阶段提供输入接口。
本发明装置中的子块参考像素位置存储模块为深度X1宽度3的存储器,其中X1等于宏块亮度块内子块亮度块个数乘以宏块类型数。在本发明的实例中,存储器为随机只读存储器,如果处理I8子块亮度块时,即8x8像素点块,存储器深度X1为20,宽度为3,如果处理I4子块亮度块时,即4x4像素点块,存储器深度X1为80,宽度为3。
本发明装置中的整体控制模块中的拼位地址产生器、译码器1、译码器2、减法器通过信号传输线相连。其中,拼位地址产生器用于产生子块参考像素位置存储模块的寻址地址,获得当前子块亮度块参考像素位置信息,拼位地址产生器的输出端连接子块参考像素位置存储模块的输入端;译码器1用于译码产生地址计数器模块的置入数和减法器置入数,译码器1的两个输出端分别连接着地址计数器模块的置入数输入端和减法器置入数输入端;译码器2用于译码产生参考像素存储模块的选择控制信号,译码器2的输出端连接参考像素存储模块的选择控制信号输入端;减法器用于产生地址计数器模块的计数使能。
本发明装置中的冗余微码存储模块为深度X2宽度Y的存储器,其中X2和Y由子块亮度块全部预测模式数和运算电路模块个数决定。在本发明的实例中,存储器为随机只读存储器,如果处理I8子块亮度块时,存储器深度X2为576,宽度Y为7,如果处理I4子块亮度块时,存储器深度X2为144,宽度Y为6。
本发明装置中的参考像素存储模块的两级Q个寄存器组、Q-1个二选一选择器通过信号传输线相连,Q等于子块亮度块参考像素个数。在本发明的实例中,如果处理I8子块亮度块时,Q等于25,如果处理I4子块亮度块时,Q等于13;每一级Q个寄存器组包括,含有1个寄存器组的左上参考组、含有Q-1/3个寄存器组的左边参考组、含有Q-1/3个寄存器组的上边参考组、含有Q-1/3个寄存器组的右上参考组。其中,第一级左上参考组内寄存器组的输出端连接第二级左上参考组内寄存器组的输入端;第一级左边参考组和上边参考组内的每组寄存器的输出端对应连接一个二选一选择器的输入端,对应关系为连接第一级左边参考组内的第一个寄存器组输出端的二选一选择器的另一个输入端连接第一级上边参考组内的第一个寄存器组输出端;第一级右上参考组内的每组寄存器输出端连接剩余Q-1/3个二选一选择器的输入端,第一级上边参考组内的第Q-1/3个寄存器组的输出端分别连接剩余Q-1/3个二选一选择器的另一输入端;Q-1个二选一选择器的输出端对应连接第二级左边参考组和上边参考组内的每组寄存器的输入端,对应关系为输入端分别为第一级左边参考组内的第一个寄存器组输出端和第一级上边参考组内的第一个寄存器组输出端的二选一选择器的输出端连接第二级左边参考组内的第一个寄存器组输入端;左边参考组对应的Q-1/3个二选一选择器的选择控制信号连接输入选择控制信号的高位,上边参考组对应的Q-1/3个二选一选择器的选择控制信号连接输入选择控制信号的次高位,右上参考组对应的Q-1/3个二选一选择器的选择控制信号连接输入选择控制信号的低位。
参照附图2,本发明装置中的运算电路模块包括数据选择器1、多级并行加法器、两个全加器、五个D型触发器组、一个半加器、三个右移移位器、数据选择器2,各部分通过信号传输线相连。其中,数据选择器1在控制信号作用下从输入的参考像素中选择当前运算需要的四个参考像素:a、b、c、d,数据选择器1的四个输出端连接着两个全加器的四个输入端;在本发明的实例中,如果处理I8子块亮度块时,数据选择器1为25选4选择器,数据选择器1的选择控制信号连接输出微码的低五位,如果处理I4子块亮度块时,数据选择器1为13选4选择器,数据选择器1的选择控制信号连接输出微码的低四位;两个八位全加器用于完成选中四个参考像素的加法,两个全加器的输出端连接着D型触发器组D0和D1的输入端;D型触发器组D0的输出端连接着半加器和右移一位移位器的输入端,D型触发器组D1的输出端连接半加器的另一个输入端,半加器的输出端连接右移两位移位器的输入端;右移一位移位器和右移两位移位器的输出端连接数据选择器2的两个数据输入端,数据选择器1输出的参考像素d直接连接着D型触发器组D2的输入端,D型触发器组D2的输出端连接数据选择器2的第三个数据输入端;多级并行全加器用于完成子块亮度块在上边和左边参考像素都存在的直流模式运算,多级并行全加器的输出端连接D型触发器组D3的输入端,D型触发器组D3的输出端连接右移L位移位器的输入端,右移L位移位器的输出端连接数据选择器2的第四个数据输入端;在本发明的实例中,如果处理I8子块亮度块时,多级并行加法器为4级加法结构,其第一级为8个全加器同时相加,右移L位移位器的L为3,如果处理I4子块亮度块时,多级并行加法器为3级加法结构,其第一级为4个全加器同时相加,右移L位移位器的L为2;D型触发器组D4用于暂存数据选择器2的选择信号,D型触发器组D4的输出端连接数据选择器2的选择信号输入端;数据选择器2用于从同时生成的四个不同预测像素中选择一个预测像素,数据选择器2的输出端连接着预测像素串并转换模块的输入端;在本发明的实例中,数据选择器2为4选1选择器,数据选择器2的控制信号连接输出微码的高两位。
参照附图3,对本发明装置实现帧内亮度块预测的方法做进一步的描述:
(1)存储位置信息
1a)宏块亮度块分类:本发明方法的实施例中将符合H.264数字视频及图像编码标准的512x512像素点的帧内图像按16x16大小的块分成32行乘以32列个宏块亮度块,任意宏块亮度块可通过二维坐标表示;依据宏块亮度块参考像素存在情况,将帧内图像中所有宏块亮度块分成五类:无参考像素有效的宏块、只左边参考像素有效的宏块、只上边参考像素有效的宏块、右上参考像素需复制的宏块、参考像素全部有效的宏块。
1b)子块亮度块分类:参照附图4,按子块亮度块的大小,将宏块亮度块分成P个子块,编号大小表示子块亮度块的预测顺序;依据子块亮度块参考像素存在情况,将子块亮度块分成五类:无参考像素有效的子块、只左边参考像素有效的子块、只上边参考像素有效的子块、右上参考像素需复制的子块、参考像素全部有效的子块;参照附图4的(b)和附图4的(c),在本发明方法的实施例中,如果处理I8子块亮度块,P为4,如果处理I4子块亮度块,P为16。
1c)产生子块亮度块参考像素位置信息:将子块亮度块的类别定为子块亮度块参考像素位置信息,用三位二进制数表示,本发明方法的实施例中000代表无参考像素有效的子块,该类型子块的预测模式为直流方向;001代表只左边参考像素有效的子块,该类型子块的预测模式为水平预测、水平向上预测和直流预测;101代表只上边参考像素有效的子块,该类型子块的预测模式为直流预测、垂直预测、对角线向左预测和垂直向左预测;110代表只右上参考像素有效的子块,该类型子块的预测模式为全部九个方向;111代表参考像素全部有效的子块,该类型子块的预测模式为全部九个方向。
1d)存储典型子块亮度块参考像素位置信息:依次存储五个不同类型宏块亮度块内的子块亮度块参考像素位置信息,存储深度为宏块亮度块内子块亮度块个数乘以宏块类型数五,存储宽度为3;本发明方法的实施例中,地址0存储第一类宏块内的第0个子块亮度块参考像素位置信息:000,地址1存储第一类宏块内的第1个子块亮度块参考像素位置信息:010,最后地址存储第五类宏块内的最后一个子块预测模式信息:110。
(2)存储冗余微码
2a)构造微码位宽:微码位宽为控制预测运算产生单预测像素的信号位宽;
2b)产生微码:在预测运算串行产生子块亮度块九个预测模式下的全部预测像素时产生微码;
2c)存储微码:冗余微码存储模块的微码存储顺序依次为:水平预测模式,水平向上预测模式,直流预测模式,垂直预测模式,对角线向左预测模式,垂直向左预测模式,对角线向右预测模式,垂直向右预测模式,水平向下预测模式。
(3)获得位置信息
3a)接收当前子块亮度块编号和所属当前宏块亮度块的二维坐标;
3b)整体控制模块在接收信号的触发下,拼位地址产生器产生寻址地址M1,在本发明方法的实施例中,如果处理I8子块亮度块,M1数据范围为0到19,如果处理I4子块亮度块,M1数据范围从0到79;
3c)子块参考像素位置存储模块在寻址信号作用下,输出当前子块亮度块参考像素位置信息。
(4)生成地址计数器置入数
在当前子块亮度块参考像素位置信息触发下,整体控制模块中的译码器译码产生地址计数器置入数M2,在本发明方法的实施例中,M2如下表中所示。
(5)生成地址计数器计数使能
5a)在当前子块亮度块参考像素位置信息触发下,整体控制模块中的译码器1译码产生减法器置入数M3,在本发明方法的实施例中,M3如下表中所示;
5b)减法器产生时间周期为置入数M3的计数使能。
(6)重定序参考像素
6a)参考像素存储模块存储当前子块亮度块所有位置上的参考像素;
6b)整体控制模块在当前子块亮度块参考像素位置信息触发下,译码器2译码产生参考像素选择控制信号;
6c)参考像素存储模块在选择控制信号的作用下,提取步骤6a)中参考像素。
(7)地址计数器产生地址
7a)地址计数器模块接收置入数M2;
7b)在计数使能的控制下地址计数器模块每隔一个时间单位加一,产生地址。
(8)冗余微码存储模块接收地址,输出微码,在本发明方法的实施例中,如果处理I8子块亮度块时,微码宽度为7,其中低五位宽度为微码低位宽度,高两位宽度为微码高位宽度,如果处理I4子块亮度块时,微码宽度为6,其中低四位宽度为微码低位宽度,高两位宽度为微码高位宽度。
(9)预测运算
9a)运算电路模块接收参考像素存储器输出的参考像素;
9b)输入的微码低位控制运算电路模块中的数据选择器1从已输入参考像素中选择当前运算所需的四个参考像素;
9c)当前子块上边、左边参考像素和所选四个参考像素通过运算电路同时生成四个不同预测像素;
9d)输入的微码高位控制运算电路模块中的数据选择器2从生成的四个不同预测像素中选择一个预测像素。
(10)存储预测像素:预测像素串并转换模块将输入的串行预测像素通过转换电路并行输出,在本发明方法的实施例中,如果处理I8子块亮度块时,转换电路为1进8出电路,如果处理I4子块亮度块时,转换电路为1进4出电路。
Claims (7)
1.一种帧内图像亮度块预测装置,包括七个模块:子块参考像素位置存储模块、整体控制模块、地址计数器模块、冗余微码存储模块、参考像素存储模块、运算电路模块和预测像素串并转换模块,各模块之间通过总线连接;其中子块是指将宏块亮度块划分而成的P个子块;
所述子块参考像素位置存储模块,用于存储帧内图像中的子块亮度块参考像素位置信息,即子块亮度块的类别,确定当前子块亮度块的预测模式;
所述整体控制模块,用于产生地址计数器置入数、地址计数器计数使能和子块参考像素位置存储模块的寻址地址,实现当前子块亮度块控制信号的有序切换;
所述地址计数器模块由计数周期为N的计数器构成,用于产生冗余微码存储单元模块的查找地址,实现微码信号的正确寻址,其中N由地址计数器计数使能决定;
所述冗余微码存储模块,用于存储运算电路模块的选择信号,完成运算电路模块中输入参考像素和预测像素输出的选择,其中微码是指在预测运算串行产生子块亮度块九个预测模式下的全部预测像素时所需控制信号;
所述参考像素存储模块,用于将当前子块亮度块所有位置上的参考像素存储为实际有效参考像素,实现对当前子块亮度块运算所需参考像素同时输出;
所述运算电路模块,用于产生子块亮度块的预测像素,完成当前子块亮度块对应预测模式下的运算;
所述预测像素串并转换模块由通用串并转换电路构成,用于将串行输入预测像素转换成并行输出,为帧内图像编码***变换阶段提供输入接口。
2.根据权利要求1所述的帧内图像亮度块预测装置,其特征在于,所述子块参考像素位置存储模块为深度X1宽度3的存储器,其中X1等于宏块亮度块内子块亮度块个数乘以宏块类型数。
3.根据权利要求1所述的帧内图像亮度块预测装置,其特征在于,所述整体控制模块中的拼位地址产生器、译码器1、译码器2、减法器通过信号传输线相连;其中,
所述拼位地址产生器用于产生子块参考像素位置存储模块的寻址地址,获得当前子块亮度块参考像素位置信息,拼位地址产生器的输出端连接子块参考像素位置存储模块的输入端;
所述译码器1用于译码产生地址计数器模块的置入数和减法器置入数,译码器1的两个输出端分别连接着地址计数器模块的置入数输入端和减法器置入数输入端;
所述译码器2用于译码产生参考像素存储模块的选择控制信号,译码器2的输出端连接参考像素存储模块的选择控制信号输入端;
所述减法器用于产生地址计数器模块的计数使能。
4.根据权利要求1所述的帧内图像亮度块预测装置,其特征在于,所述冗余微码存储模块为深度X2宽度Y的存储器,其中X2和Y由子块亮度块全部预测模式数和运算电路模块个数决定。
5.根据权利要求1所述的帧内图像亮度块预测装置,其特征在于,所述参考像素存储模块的两级Q个寄存器组、Q-1个二选一选择器通过信号传输线相连,Q等于子块亮度块参考像素个数;每一级Q个寄存器组包括,含有1个寄存器组的左上参考组、含有(Q-1)/3个寄存器组的左边参考组、含有(Q-1)/3个寄存器组的上边参考组、含有(Q-1)/3个寄存器组的右上参考组;其中,
所述第一级左上参考组内寄存器组的输出端连接第二级左上参考组内寄存器组的输入端;
所述第一级左边参考组和上边参考组内的每组寄存器的输出端对应连接一个二选一选择器的输入端,对应关系为连接第一级左边参考组内的第一个寄存器组输出端的二选一选择器的另一个输入端连接第一级上边参考组内的第一个寄存器组输出端;
所述第一级右上参考组内的每组寄存器输出端连接剩余(Q-1)/3个二选一选择器的输入端,第一级上边参考组内的第(Q-1)/3个寄存器组的输出端分别连接剩余(Q-1)/3个二选一选择器的另一输入端;
所述Q-1个二选一选择器的输出端对应连接第二级左边参考组和上边参考组内的每组寄存器的输入端,对应关系为输入端分别为第一级左边参考组内的第一个寄存器组输出端和第一级上边参考组内的第一个寄存器组输出端的二选一选择器的输出端连接第二级左边参考组内的第一个寄存器组输入端;
所述左边参考组对应的(Q-1)/3个二选一选择器的选择控制信号连接输入选择控制信号的高位,上边参考组对应的(Q-1)/3个二选一选择器的选择控制信号连接输入选择控制信号的次高位,右上参考组对应的(Q-1)/3个二选一选择器的选择控制信号连接输入选择控制信号的低位。
6.根据权利要求1所述的帧内图像亮度块预测装置,其特征在于,所述运算电路模块包括数据选择器1、多级并行加法器、两个全加器、五个D型触发器组、一个半加器、三个右移移位器、数据选择器2,各部分通过信号传输线相连;其中,
所述数据选择器1在控制信号作用下从输入的参考像素中选择当前运算需要的四个参考像素,数据选择器1的四个输出端连接着两个全加器的四个输入端;
所述两个全加器用于完成选中四个参考像素的加法,两个全加器的输出端分别连接着D型触发器组D0和D1的输入端;
所述D型触发器组D0的输出端连接着半加器和右移一位移位器的输入端,D型触发器组D1的输出端连接半加器的另一个输入端,半加器的输出端连接右移两位移位器的输入端;
所述右移一位移位器和右移两位移位器的输出端连接数据选择器2的两个数据输入端,数据选择器1输出的参考像素d直接连接着D型触发器组D2的输入端,D型触发器组D2的输出端连接数据选择器2的第三个数据输入端;
所述多级并行全加器用于完成任意子块亮度块在上边和左边参考像素都存在的直流模式运算,多级并行全加器的输出端连接D型触发器组D3的输入端,D型触发器组D3的输出端连接右移L位移位器的输入端,右移L位移位器的输出端连接数据选择器2的第四个数据输入端;
所述D型触发器组D4用于暂存数据选择器2的选择信号,D型触发器组D4的输出端连接数据选择器2的选择信号输入端;
所述数据选择器2用于从同时生成的四个不同预测像素中选择一个预测像素,数据选择器2的输出端连接着预测像素串并转换模块的输入端;
7.一种帧内图像亮度块预测方法,包括如下步骤:
(1)存储位置信息
1a)宏块亮度块分类:将帧内图像按照16x16的大小块分成M行乘以M列个宏块亮度块,将帧内图像中所有宏块亮度块分成五类:参考像素无效的宏块、只左边参考像素有效的宏块、只上边参考像素有效的宏块、右上参考像素需复制的宏块、参考像素全部有效的宏块;
1b)子块亮度块分类:将宏块亮度块分成P个子块,将子块亮度块分成五类:参考像素无效的子块、只左边参考像素有效的子块、只上边参考像素有效的子块、右上参考像素需复制的子块、参考像素全部有效的子块;
1c)产生子块亮度块参考像素位置信息:将子块亮度块的类别定为子块亮度块参考像素位置信息,用三位二进制数表示;
1d)存储典型子块亮度块参考像素位置信息:子块参考像素位置存储模块中依次存储五个不同类型宏块亮度块内的子块亮度块参考像素位置信息,存储深度为宏块亮度块内子块亮度块个数乘以宏块类型数五,存储宽度为3;
(2)存储冗余微码
2a)构造微码位宽:微码位宽为控制预测运算产生单预测像素的信号位宽;
2b)产生微码:在预测运算串行产生子块亮度块九个预测模式下的全部预测像素时所需控制信号;
2c)存储微码:冗余微码存储模块的微码存储顺序依次为:水平预测模式,水平向上预测模式,直流预测模式,垂直预测模式,对角线向左预测模式,垂直向左预测模式,对角线向右预测模式,垂直向右预测模式,水平向下预测模式;冗余微码存储模块的存储深度等于子块亮度块大小乘以全部预测模式数九;
(3)获得位置信息
3a)接收当前子块亮度块编号和所属当前宏块亮度块的二维坐标;
3b)整体控制模块在接收信号的触发下,拼位地址产生器产生寻址地址;
3c)子块参考像素位置存储模块在寻址信号作用下,输出当前子块亮度块参考像素位置信息;
(4)生成地址计数器置入数
在当前子块亮度块参考像素位置信息触发下,整体控制模块中的译码器译码产生地址计数器置入数;
(5)生成地址计数器计数使能
5a)在当前子块亮度块参考像素位置信息触发下,整体控制模块中的译码器1译码产生减法器置入数;
5b)减法器产生时间周期为置入数的计数使能;
(6)重定序参考像素
6a)参考像素存储模块存储当前子块亮度块所有位置上的参考像素;
6b)整体控制模块在当前子块亮度块参考像素位置信息触发下,译码器2译码产生参考像素选择控制信号;
6c)参考像素存储模块在选择控制信号的作用下,提取步骤6a)中参考像素;
(7)地址计数器产生地址
7a)地址计数器模块接收置入数;
7b)在计数使能的控制下地址计数器模块每隔一个时间单位加一,产生地址;
(8)冗余微码存储模块接收地址,输出微码;
(9)预测运算
9a)运算电路模块接收参考像素存储器输出的参考像素;
9b)输入的微码低位控制运算电路模块中的数据选择器1从已输入参考像素中选择当前运算所需的四个参考像素;
9c)当前子块上边、左边参考像素和所选四个参考像素通过运算电路同时生成四个不同预测像素;
9d)输入的微码高位控制运算电路模块中的数据选择器2从生成的四个不同预测像素中选择一个预测像素;
(10)存储预测像素:预测像素串并转换模块将输入的串行预测像素通过转换电路并行输出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110257574 CN102291584B (zh) | 2011-09-01 | 2011-09-01 | 帧内图像亮度块预测装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110257574 CN102291584B (zh) | 2011-09-01 | 2011-09-01 | 帧内图像亮度块预测装置及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102291584A CN102291584A (zh) | 2011-12-21 |
CN102291584B true CN102291584B (zh) | 2013-04-17 |
Family
ID=45337655
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110257574 Expired - Fee Related CN102291584B (zh) | 2011-09-01 | 2011-09-01 | 帧内图像亮度块预测装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102291584B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210091322A (ko) * | 2018-12-21 | 2021-07-21 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 모드 및 크기 의존적 블록 레벨 제한의 방법 및 장치 |
CN112532988B (zh) * | 2020-06-02 | 2022-05-06 | 腾讯科技(深圳)有限公司 | 视频编码方法、视频解码方法及相关设备 |
CN112949830B (zh) * | 2021-03-09 | 2022-12-06 | 合肥辉羲智能科技有限公司 | 智能推断网络***以及加法单元和池化单元电路*** |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100484248C (zh) * | 2001-10-17 | 2009-04-29 | 松下电器产业株式会社 | 动态图像编码方法 |
US7599435B2 (en) * | 2004-01-30 | 2009-10-06 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Video frame encoding and decoding |
JP4712503B2 (ja) * | 2005-09-29 | 2011-06-29 | 富士通セミコンダクター株式会社 | リコンフィグ可能な画像処理用アドレス生成回路及びそれを有するリコンフィグlsi |
US8670488B2 (en) * | 2007-12-21 | 2014-03-11 | Telefonaktiebolaget Lm Ericsson (Publ) | Adaptive intra mode selection |
JP2011097198A (ja) * | 2009-10-27 | 2011-05-12 | Yamaha Corp | メモリアクセス制御装置 |
-
2011
- 2011-09-01 CN CN 201110257574 patent/CN102291584B/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN102291584A (zh) | 2011-12-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Shen et al. | A unified 4/8/16/32-point integer IDCT architecture for multiple video coding standards | |
CN102088603B (zh) | 用于视频编码器的熵编码器及其实现方法 | |
CN101252694B (zh) | 基于块的视频解码的帧存储压缩和地址映射*** | |
TW200407031A (en) | Spatial prediction based intra coding | |
US8509567B2 (en) | Half pixel interpolator for video motion estimation accelerator | |
CN102291584B (zh) | 帧内图像亮度块预测装置及方法 | |
CN110392256A (zh) | 进行编码和解码的方法、编码端、解码端和*** | |
CN102143361B (zh) | 一种视频编码方法和装置 | |
Yavuz et al. | Selective gray-coded bit-plane based low-complexity motion estimation and its hardware architecture | |
JP2019118101A (ja) | ビデオコーディング方法及びその画像処理装置 | |
JP3833744B2 (ja) | 物体領域符号化装置 | |
Akin et al. | High performance hardware architectures for one bit transform based single and multiple reference frame motion estimation | |
CN101605259B (zh) | 对多媒体数据进行变换编、解码的装置及方法 | |
CN101778280B (zh) | 一种基于avs运动补偿亮度插值运算的电路及方法 | |
Lo et al. | Improved SIMD architecture for high performance video processors | |
JP4519807B2 (ja) | 乗算器及びフィルタ処理装置 | |
JP4516051B2 (ja) | フィルタ処理装置、乗算器及び動き補償処理装置 | |
CN100486333C (zh) | 插值运算装置及方法 | |
CN104581174B (zh) | 一种适用于hevc标准的高吞吐率dct和idct硬件复用结构 | |
CN105227959A (zh) | 用于视频编码的多编码点混编流水方法及其装置 | |
KR101395143B1 (ko) | 영상처리의 정수변환 방법 및 정수변환 장치 | |
US6941025B2 (en) | Simultaneous vertical spatial filtering and chroma conversion in video images | |
US6732131B1 (en) | Discrete cosine transformation apparatus, inverse discrete cosine transformation apparatus, and orthogonal transformation apparatus | |
KR101383515B1 (ko) | 영상의 역변환 장치 | |
JP4963194B2 (ja) | フィルタ処理装置、乗算器及び動き補償処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130417 |