使用残差补偿的视频编码方法以及使用该方法的装置与流程

文档序号:12133773阅读:186来源:国知局
使用残差补偿的视频编码方法以及使用该方法的装置与流程
本发明有关一种视频编码技术,特别是一种使用残差补偿的视频编码方法以及使用该方法的装置。
背景技术
:视频压缩使用先进的编码技术,用以移除视频数据中的冗余。视频压缩演算法及编解码器合并了影像的空间压缩及时间上的移动补偿。然而,应用在安全、医药及航天领域的视频压缩演算法,需要无损或几近无损压缩。因此,需要一种使用残差补偿的视频编码方法以及使用该方法的装置,用以达成无损或几近无损压缩。技术实现要素:本发明的实施例提出一种使用残差补偿的视频编码方法,包括:计算源图像及重构图像间的残差值;以及将残差值的信息加入视频串流,使得视频解码器将残差值的信息添加至视频串流中解码的图像。本发明的实施例另提出一种使用残差补偿的视频编码装置,包含残差值信息产生器。残差值信息产生器计算源图像及重构图像间的残差值,并将残差值的信息加入视频串流,使得视频解码器将残差值的信息添加至视频串流中解码的图像。本发明可补偿视频编码的减损。附图说明图1是依据本发明实施例的使用残差补偿的视频编码方法流程图。图2是依据本发明实施例的产生残差值的示意图。图3是依据本发明实施例的图像间残差编码的示意图。图4是依据本发明实施例的使用残差补偿的H.264/AVS视频编码的系统方块图。图5是依据本发明实施例的使用残差补偿的AVS2视频编码的系统方块图。图6是依据本发明实施例的使用残差补偿的HEVC视频编码的系统方块图。其中,附图中符号的简单说明如下:S110~S170:方法步骤;210:源图像;230:重构图像;250:残差值;Fi:源图像;Fi-1:参考图像;Ri:源残差值;Ri-1:参考残差值;310、330:源块;310′、330′:参考块;410:源帧;420:重构帧;430:残差计算器;440:压缩器;450:熵编码器;460:移动预测器;510:源画面;520:解码画面;530:残差计算器;540:压缩器;550:熵编码器;560:画面间预测器;610:源画面;620:解码画面;630:残差计算器;640:压缩器;650:熵编码器;660:移动预测器。具体实施方式以下说明为完成发明的较佳实现方式,其目的在于描述本发明的基本精神,但并不用以限定本发明。实际的
发明内容必须参考权利要求的范围。必须了解的是,使用于本说明书中的“包含”、“包括”等词,用以表示存在特定的技术特征、数值、方法步骤、作业处理、元件以及/或组件,但并不排除可加上更多的技术特征、数值、方法步骤、作业处理、元件、组件,或以上的任意组合。于权利要求中使用如“第一”、“第二”、“第三”等词用来修饰权利要求中的元件,并非用来表示之间具有优先权顺序,先行关系,或者是一个元件先于另一个元件,或者是执行方法步骤时的时间先后顺序,仅用来区别具有相同名字的元件。为了补偿视频编码的减损,本发明实施例提出了一种使用残差补偿的视频编码方法。图1是依据本发明实施例的使用残差补偿的视频编码方法流程图。此方法可由视频编码器(videoencoder)执行。于计算源图像(sourceimage)及重构图像(reconstructedimage)间的残差值后(步骤S110),将残差值的信息加入视频串流,用以让视频解码器解码视频串流中的图像后将残差值的信息添加至解码图像,降低压缩减损(步骤S120)。在一些视频编码标准中,源图像及重构图像也可分别称为源帧(sourceframe)及重构帧(reconstructedframe)。在另一些视频编码标准中,源图像及重构图像也可分别称为源画面(sourcepicture)及解码画面(decodedpicture)。源图像是尚未经过压缩的原始数据(rawdata)。重构图像为从压缩图像(compressedimage)重建回来的图像。视频编码器可使用图像内编码(intra-coding)来消除源图像的空间冗余,并且使用图像间编码(inter-coding)来消除源图像的时间冗余。视频编码器另可接着使用变换(transformation)及量化(quantization)来产生压缩图像。压缩图像可使用反量化(inversequantization)、反变换(inversetransformation)、图像间补偿(inter-compensation)、图像内补偿(intra-compensation)及滤波(filtering)来产生重构画面。重构图像通常只保留源图像的低频信息,舍弃源图像的高频信息。计算后的残差值包含源图像的高频信息。图2是依据本发明实施例的产生残差值的示意图。编码器可使用公式(1)产生第n个图像的残差值250:Rn=Fn-F′n,其中,Fn代表第n个源图像210,F′n代表第n个重构图像230,以及Rn代表第n个源图像210及重构图像230间的残差值。以下举例说明残差值的计算。一个源图像可切分出多块。一块可包含16x16、16x8、8x16、8x8、8x4、4x8、4x4个像素(pixels)。于一些视频编码标准中,切分的块可称为宏块(MB,MacroBlock)、编码树单元(CTU,CodingTreeUnit)等。表1显示范例的源图像中的一块的Y分量:表19898989797989797979797979898989798989897979897989897979798989898989898989897979898989797989898999897979898989898989898979899999997979797989999999998979798989998989798979810010010099989897979899989998989899100100100100989898989898989898979899100999910099989899999898989999989999991001009999989999100999899999899989910099991009999991009999100999998989910099100101100991001009998999910099991001011011001001009910010010098999910010010110110110110010010010010010110099100991001011011011011011011011001011011001001001001011021021021031021021021021011011011021019899101101101101101101101101101101101101102101表2显示范例的源图像中的一块的UV分量:表2表3显示范例的重构图像中的一块的Y分量:表3表4显示范例的重构图像中的一块的UV分量:表4129129129129129129129126126126126126126126125125129129129129129129129126126126126126126126125125129129129129129129129128126126126126126126125125129129129129129129129129126126126126126126125125129129129129129129129130126126126126126126125125129129129129129129129130126126126126126126125125128128128128128128129129127127127127127127126126128128128128128128129129127127127127127127126126经过计算后,表5显示范例的一块的Y分量的残差值:表5表6显示范例的一块的UV分量的残差值:表611111111111110111110010201000011000001010000001111111010001101111123110101111100113421010112110123553210223322102244210023332211虽然在视频串流中添加残差的信息可减少视频压缩后的缺损,但是,这也会增加视频串流的长度。因为重构图像保留了大部分的信息,使得残差值一般较小,因此,残差值可进一步压缩,用以减少以上所述的缺点。首先,压缩残差值(步骤S130),对压缩后的残差值进行熵编码(entropyencoding)(步骤S150)。最后,将熵编码后的残差值加入视频串流(步骤S170)。于步骤S130,于一些实施例中,可比对残差值中的每一块是否相符于多个残差模式(residualmodes)中的一个。当找到相符的残差模式时,以残差模式码表示此块的实际残差值。于另一些实施例中,可使用图像内残差编码(intra-residualcoding)来消除残差值中的空间冗余。于更另一些实施例中,因为相邻图像间具有相似性,可使用图像间残差编码(inter-residualcoding)来消除残差值中的时间冗余。图像间残差编码可沿用图像间编码的移动向量(MV,MotionVector)。图3是依据本发明实施例的图像间残差编码的示意图。视频编码器进行图像间预测,使目前的源图像Fi中的一块310以移动向量MV指向参考图像Fi-1中的一块310′。而目前的源残差值Ri中的一块330沿用图像间预测产生的移动向量MV,用以指向相应于参考图像Fi-1的参考残差值Ri-1中的一块330′。于更另一些实施例中,可使用振幅调制技术(PCM,pulse-codemodulation)来压缩残差值。于步骤S150,可使用霍夫曼编码(Huffmancoding)或算术编码(arithmeticcoding)对压缩后的残差值进行熵编码。本发明实施例提出的使用残差补偿的视频编码方法可应用于不同的是频编码标准。图4是依据本发明实施例的使用残差补偿的H.264/AVS视频编码的系统方块图。残差计算器430用以计算第n个源帧(sourceframe)410及第n个重构帧(reconstructedframe)420间的残差值。于一些实施例中,残差计算器430可以减法器实施。于另一些实施例中,残差计算器430可以处理单元(processingunit)或信号处理器(DSP,digitalsignalprocessor)实施。处理单元或信号处理器可使用多种方式实施,例如以专用硬件电路或通用硬件(例如,单一处理器、具平行处理能力的多处理器、图形处理器或其他具运算能力的处理器),并且在执行程序码或软件时,提供特定的功能。处理单元包含运算逻辑单元(ALU,ArithmeticandLogicUnit)以及位移器(bitshifter)。运算逻辑单元负责执行布林运算(如AND、OR、NOT、NAND、NOR、XOR、XNOR等),而位移器负责移位运算及位旋转。压缩器440用以压缩残差值。于一些实施例,压缩器440可沿用移动预测器460产生的移动向量MV,用以将第n帧残差值中的一至多块指向相应于参考帧的残差值中的指定块。于另一些实施例,压缩器440可执行如步骤S130所示的操作来压缩残差值。压缩器440可以处理单元或信号处理器实施。熵编码器450可以处理单元或信号处理器实施,用以使用霍夫曼编码或算术编码对压缩后的残差值进行熵编码。如上所述的残差计算器430、压缩器440及熵编码器450可统称为残差值信息产生器。图5是依据本发明实施例的使用残差补偿的AVS2视频编码的系统方块图。残差计算器530用以计算第n个源画面(sourcepicture)510及第n个解码画面(decodedpicture)520间的残差值。于一些实施例中,残差计算器530可以减法器实施。于另一些实施例中,残差计算器530可以处理单元或信号处理器实施。压缩器540用以压缩残差值。于一些实施例,压缩器540可沿用画面间预测器560产生的移动向量MV,用以将第n个画面残差值中的一至多块指向相应于参考画面的残差值中的指定块。于另一些实施例,压缩器540可执行如步骤S130所示的操作来压缩残差值。压缩器540可以处理单元或信号处理器实施。熵编码器550可以处理单元或信号处理器实施,用以使用霍夫曼编码或算术编码对压缩后的残差值进行熵编码。如上所述的残差计算器530、压缩器540及熵编码器550可统称为残差值信息产生器。图6是依据本发明实施例的使用残差补偿的HEVC视频编码的系统方块图。残差计算器630用以计算第n个源画面610及第n个解码画面620间的残差值。于一些实施例中,残差计算器630可以减法器实施。于另一些实施例中,残差计算器630可以处理单元或信号处理器实施。压缩器640用以压缩残差值。于一些实施例,压缩器640可沿用移动预测器660产生的移动向量MV,用以将第n个画面残差值中的一至多块指向相应于参考画面的残差值中的指定块。于另一些实施例,压缩器640可执行如步骤S130所示的操作来压缩残差值。压缩器640可以处理单元或信号处理器实施。熵编码器650可以处理单元或信号处理器实施,用以使用霍夫曼编码或算术编码对压缩后的残差值进行熵编码。如上所述的残差计算器630、压缩器640及熵编码器650可统称为残差值信息产生器。虽然图4至6中包含了以上描述的元件,但不排除在不违反发明的精神下,使用更多其他的附加元件,以达成更佳的技术效果。此外,虽然图1的方法流程图采用特定的顺序来执行,但是在不违法发明精神的情况下,本领域技术人员可以在达到相同效果的前提下,修改这些步骤间的顺序,所以,本发明并不局限于仅使用如上所述的顺序。以上所述仅为本发明较佳实施例,然其并非用以限定本发明的范围,任何熟悉本项技术的人员,在不脱离本发明的精神和范围内,可在此基础上做进一步的改进和变化,因此本发明的保护范围当以本申请的权利要求书所界定的范围为准。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1