CN112565748B - 一种视频编码方法、装置、***及计算机可读存储介质 - Google Patents

一种视频编码方法、装置、***及计算机可读存储介质 Download PDF

Info

Publication number
CN112565748B
CN112565748B CN202011419561.7A CN202011419561A CN112565748B CN 112565748 B CN112565748 B CN 112565748B CN 202011419561 A CN202011419561 A CN 202011419561A CN 112565748 B CN112565748 B CN 112565748B
Authority
CN
China
Prior art keywords
occurring
pixel
pixels
frequently
new
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
CN202011419561.7A
Other languages
English (en)
Other versions
CN112565748A (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.)
Zhejiang Dahua Technology Co Ltd
Original Assignee
Zhejiang Dahua Technology 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 Zhejiang Dahua Technology Co Ltd filed Critical Zhejiang Dahua Technology Co Ltd
Priority to CN202011419561.7A priority Critical patent/CN112565748B/zh
Publication of CN112565748A publication Critical patent/CN112565748A/zh
Application granted granted Critical
Publication of CN112565748B publication Critical patent/CN112565748B/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/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
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • 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/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • 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
    • 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/182Methods 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 a pixel

Landscapes

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

Abstract

本申请公开了一种视频编码方法、装置、***及计算机可读存储介质,该视频编码方法包括:获取当前块的新常现像素以及历史常现像素列表;利用新常现像素以及所述历史常现像素列表中至少部分常现像素作为重复使用常现像素构建常现像素列表;利用常现像素列表对当前块内的像素进行预测归类,将当前块内的所有像素划分到等值串、单位基矢量串以及未匹配像素,并记录常现像素列表中每一常现像素预测像素或等值串的命中次数;按照每一常现像素的命中次数从大到小进行排列,得到目标常现像素列表;利用目标常现像素列表对当前块进行编码,得到当前块的码流。本申请通过将命中次数高的常现像素排列在列表前面,有利于减少编码比特开销。

Description

一种视频编码方法、装置、***及计算机可读存储介质
技术领域
本申请涉及视频编码技术领域,特别是涉及一种视频编码方法、装置、***及计算机可读存储介质。
背景技术
通过视频编码技术可以对视频进行压缩,以降低视频的数据量,降低视频传输过程中的网络带宽、减少存储空间。一般地,视频编码标准中会包含帧内预测、帧间预测、变换、量化、环路滤波、熵编码等过程来实现数据的压缩。
目前的SP预测技术(串匹配预测技术)中的等值串级单位基矢量串模式存在的问题在于:常现像素列表固定将重复使用常现像素排在列表前面,将新常现像素排在列表后面,不够灵活。在出现新常现像素的命中次数高于重复使用常现像素的命中次数时,会导致编码比特开销较大,影响视频编码效果。
发明内容
本申请提供一种视频编码方法、装置、***及计算机可读存储介质。
为解决上述技术问题,本申请提供的第一个技术方案为:提供一种视频编码方法,包括:获取当前块的新常现像素以及历史常现像素列表;利用所述新常现像素以及所述历史常现像素列表中至少部分常现像素作为重复使用常现像素构建新常现像素列表;利用所述新常现像素列表对所述当前块内的像素进行预测归类,将所述当前块内的所有像素划分到等值串、单位基矢量串以及未匹配像素,并记录所述新常现像素列表中每一常现像素预测所述像素或所述等值串的命中次数;按照所述每一常现像素的命中次数从大到小进行排列,得到目标常现像素列表;利用所述目标常现像素列表对所述当前块进行编码,得到所述当前块的码流。
为解决上述技术问题,本申请提供的第二个技术方案为:提供一种视频编码装置,所述视频编码装置包括像素获取模块、列表构建模块、预测归类模块、排列模块以及编码模块;所述像素获取模块,用于获取当前块的新常现像素以及历史常现像素列表;所述列表构建模块,用于利用所述新常现像素以及所述历史常现像素列表中至少部分常现像素作为重复使用常现像素构建新常现像素列表;所述预测归类模块,用于利用所述新常现像素列表对所述当前块内的像素进行预测归类,将所述当前块内的所有像素划分到等值串、单位基矢量串以及未匹配像素,并记录所述新常现像素列表中每一常现像素预测所述像素或所述等值串的命中次数;所述排列模块,用于按照所述每一常现像素的命中次数从大到小进行排列,得到目标常现像素列表;所述编码模块,用于利用所述目标常现像素列表对所述当前块进行编码,得到所述当前块的码流。
为解决上述技术问题,本申请提供的第三个技术方案为:提供一种视频编解码***,所述视频编解码***包括处理器、与所述处理器连接的存储器,其中,所述存储器存储有程序指令;所述处理器用于执行所述存储器存储的程序指令以实现如上述的视频编码方法。
为解决上述技术问题,本申请提供的第四个技术方案为:提供一种计算机可读存储介质,所述存储介质存储有程序指令,所述程序指令被执行时实现如上述的视频编码方法。
本申请提供的视频编码方法,通过获取当前块的新常现像素以及历史常现像素列表;利用新常现像素以及历史常现像素列中至少部分常现像素作为重复使用常现像素构建新常现像素列表;利用新常现像素列表对当前块内的像素进行预测归类,将当前块内的所有像素划分到等值串、单位基矢量串以及未匹配像素,并记录新常现像素列表中每一常现像素预测像素或等值串的命中次数;按照每一常现像素的命中次数从大到小进行排列,得到目标常现像素列表;利用目标常现像素列表对当前块进行编码,得到当前块的码流。本申请通过将命中次数高的常现像素排列在列表前面,有利于减少编码比特开销。
附图说明
图1是本申请提供的视频编码方法一实施例的流程示意图;
图2是本申请提供的evs_ubvs模式中各类像素串的示意图;
图3是本申请提供的水平弓形扫描方式的示意图;
图4是本申请提供的常现像素列表的生成示意图;
图5是本申请提供的视频编码装置的一实施例的结构示意图;
图6是本申请视频编解码***的一实施例的结构示意图;
图7是本申请计算机可读存储介质的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
视频编解码的标准有H.264/AVC、H.265/HEVC、H.266/VVC、VP8、VP9、AV1、AVS等,其主要目的是将采集到的视频信号压缩成不同标准格式的数据,便于传输或存储。为了将视频编码技术应用于实际场景,码率控制技术在视频编码器中起着至关重要的作用,因为它可以在有限的通信带宽或存储空间的情况下调整编码器输出的目标码率,从而避免编码的视频帧出现过大或过小的情况。
下面结合附图和实施例对本申请进行详细的说明。
请参见图1,图1是本申请提供的视频编码方法一实施例的流程示意图。
本申请在现有的等值串级单位基矢量串(evs_ubvs)模式的基础上提出以下视频编码方法,其中,evs_ubvs模式是SP预测技术下的一种子模式,与普通的SP预测模式不同的是,evs_ubvs模式不是用串矢量对像素串进行预测,而是用常现像素或者单位基矢量对像素串进行预测。因此,用evs_ubvs模式进行预测后,当前块内的像素串可以划分为以下两种串以及未匹配像素:
(1)等值串(equal value string,简称evs):这种像素串的特点是像素串中所有的像素都取相等的数值,因为该像素串中的所有像素都用同一个常现像素进行预测。
(2)单位基矢量串(unit basis vector string,简称ubvs):因为目前对当前块的扫描方式只有水平弓形扫描,因此现在的单位基矢量串特指用(0,-1)这个矢量进行预测的像素串。
(3)未匹配像素(unmatched pixel):若某一像素既不属于evs,也不属于ubvs,则为未匹配像素。
如图2所示,图2是本申请提供的evs_ubvs模式中各类像素串的示意图。当前块内前两个像素串(像素串A和像素串B)分别用常现像素列表中的index0和index1两个常现像素进行预测,这两个串为evs;第三行的两个像素C为两个未匹配像素;最后一行像素串D是一个ubvs。
evs_ubvs模式的应用条件如下:evs_ubvs模式仅用于宽度和高度都大于4的编码块,且对采用该模式的编码块内的像素串而言,若是evs串,其参考的常现像素必须在当前编码块以及左侧相邻编码块范围内;若是ubvs串,则其参考串必须在当前编码块内部。
与普通的SP预测模式相同,evs_ubvs模式只采用水平弓形扫描,一个编码块中像素串和未匹配像素的总个数不能超过编码块总像素的1/4。其中,本公开实施例所描述的水平弓形扫描方式具体请参阅图3。
此外,为了进一步简化硬件实现,对evs_ubvs子模式中构建的常现像素列表做以下限制:对当前块常现像素列表的长度,8*8的编码块长度不超过10,其他大小的编码块长度不超过15;历史的常现像素列表的长度不超过28。
本公开实施例的视频编码方法不仅可用于SCC(屏幕内容,主要由计算机产生的图像)场景,也可用于自然图像场景和混合场景(SCC+自然图像)。
本公开实施例的视频编码方法的具体步骤如下:
步骤S11:获取当前块的新常现像素以及历史常现像素列表。
步骤S12:利用新常现像素以及历史常现像素列表中部分常现像素作为重复使用常现像素构建新常现像素列表。
在本公开实施例中,视频编码装置首先从历史常现像素列表(PrevSrb)中获取至少部分常现像素作为重复使用常现像素填入常现像素列表,具体过程如下:
(1)对当前块内的每一个像素,遍历历史常现像素列表中的每一个历史常现像素,计算每个历史常现像素和当前块中当前像素的差异值,选出差异值绝对值最小的历史常现像素作为该当前像素的最佳历史常现像素。
(2)在当前像素与对应的最佳历史常现像素的差异值小于一个预设的阈值i_errorlimit时,说明该历史常现像素作为重复使用常现像素满足加入新常现像素列表的条件,并定于为命中一次。需要说明的是,一个常现像素可能被当前块内多个像素值命中,视频编码装置需要记录各个常现像素命中的次数。
(3)当前块内的每个像素重复第(1)和(2)步,遍历完所有像素后按命中次数从大到小对重复使用常现像素进行从大到小排序,并存放到新常现像素列表中。其中,这些从历史常现像素列表中取出的常现像素被称作reused常现像素,即重复使用常现像素。
然后,视频编码装置获取当前块中新常现像素,新常现像素即不出现在历史常现像素列表中的常现像素,将新常现像素填入一个临时列表p_list_sort,其中,本公开实施例的新常现像素是通过聚类方法得到,即把当前块内像素值相近的像素聚为一类,每一类中所有像素的平均值作为当前类的代表像素,具体过程如下:
(1)对当前块内的每一个像素,遍历新常现像素列表中的每一个常现像素,计算每个常现像素和当前像素的差异值,选出差异值最小的常现像素作为最佳常现像素。
(2)在当前像素与最佳常现像素对应的差异值大于阈值i_errorlimit时,表明当前像素是一个新的常现像素。
(3)若当前像素是一个新的常现像素时,需要对当前像素进行归类,归类方法为:用当前像素和每一个类的代表像素进行一个SAD(Sum of Absolute Difference,绝对误差和)值计算,SAD值最小的那个类是当前像素最可能归属的那个类。
(4)再将当前像素和最可能归属类的代表像素进行一个差异值计算,若差异值小于等于阈值i_errorlimit,则把当前像素值归到这一类,并更新代表像素;否则若差异值大于阈值i_errorlimit,则当前像素作为新的一类。
(5)对当前块内所有像素聚完类后,遍历所有类,按类中像素个数从多到少进行类的排序,存储到一个独立的列表p_list_sort中。
进一步地,视频编码装置将重复使用常现像素和新常现像素合并到新常现像素列表中,具体过程如下:对独立列表p_list_sort中的每一类的所有像素求平均并进行四舍五入后作为新的新常现像素加入到新常现像素列表的末尾,加入时需进行查重操作,若已有相同的像素则不加入。
最后,视频编码装置对完整的新常现像素列表进行SSE细选再排序。具体过程如下:
(1)设置一个新的阈值i_errorlimit_sqr=3*i_errorlimit*i_errorlimit
(2)对当前块内每个像素,遍历新常现像素列表中的每一个常现像素,计算每个常现像素和当前像素的差异值(SSE,Sum of Squared Error,差值的平方和),选出差异值最小的常现像素作为最佳常现像素。
(3)对当前块内所有像素进行重新聚类。若某一当前像素对应的最佳常现像素差异值大于阈值i_errorlimit_sqr,则需计算一下直接编码当前像素的rdcost(RateDistortion Optimation,率失真优化),若该rdcost小于最佳常现像素对应的差异值,则说明当前像素是一个未匹配像素,直接对当前像素进行编码反而更省编码比特开销。
(4)若当前像素不是个未匹配像素,则需要把当前像素归到最佳常现像素对应的那一类中,并存入临时列表srb_pred_samples。
(5)最终遍历srb_pred_samples列表,将列表中每一类中的所有像素求平均值作为该类最终的常现像素值,并按srb_pred_samples列表中的顺序从头开始填充新常现像素列表,填的时候也需要查重。
(6)每次将srb_pred_samples列表中的像素填充进新常现像素列表中当前位置后,遍历当前块内每个像素,计算每个像素与当前加入的常现像素的差异值平方和。
(7)设新常现像素列表中目前共有m个有效常现像素,对新常现像素列表中的每个常现像素,计算新常现像素和重复使用常现像素列表中前m个像素的各个差异值,并按差异值从小到大对重复使用常现像素进行排序。
(8)然后对排完序后对历史列表中最多前4个重复使用常现像素,遍历当前块内每个像素,求差异值平方和,并将差异值平方和同第(6)步的差异值平方和进行比较,若小于第(6)步中的差异值平方和,则将差异值平方和最小的重复使用常现像素更新到新常现像素列表的当前位置。
经过上面步骤,新常现像素列表中的所有常现像素基本确定,视频编码装置进一步对新常现像素列表调整排序,保证重复使用常现像素总体排前面,新常现像素总体排后面。所有重复使用常现像素内部的先后顺序保持不变,所有新常现像素内部的先后顺序也保持不变。
步骤S13:利用新常现像素列表对当前块内的像素进行预测归类,将当前块内的所有像素划分到等值串、单位基矢量串以及未匹配像素,并记录新常现像素列表中每一常现像素预测像素或等值串的命中次数。
在本公开实施例中,视频编码装置将当前块内的像素进行预测归类,即进行串预测,将当前块内的所有像素划分为等值串、单位基矢量串以及未匹配像素,具体过程如下:
视频编码装置首先确定当前块中各个像素对应的最佳常现像素,若匹配的最佳常现像素的编码代价大于直接编码原始像素值的代价,则该像素设为未匹配像素。具体操作为:对当前块的每一个像素,遍历新常现像素列表中的每一个常现像素,计算每个常现像素和当前像素的差异值,选出差异值最小的常现像素作为当前像素的最佳常现像素。
若该最佳常现像素和当前像素间的差异值大于阈值i_errorlimit时,则需要计算直接编码当前像素的rdcost,若该rdcost小于最佳常现像素对应的差异值时,说明当前像素和所有常现像素的差异都较大,直接编码当前像素反而更节省比特开销。则当前像素为未匹配像素,当前像素的预测值就是本身;否则当前像素的预测值就是最佳常现像素值。
视频编码装置确定完各个像素的常现像素,以及每个像素的匹配类型后,按弓形扫描顺序遍历当前块中每个像素:
若起始位置像素为未匹配像素,则为未匹配像素串,获取对应串长度和代价。
否则,起始位置为匹配像素,设置为等值串类型,判断下一个像素的常现像素与起始像素的常现像素是否相同,若相同,串长度加1,继续处理下一个像素,否则,结束该类型判断,获取该串类型的代价和串长度。
进一步判断是否为单位基矢量串ubvs,若处理的像素位置大于等于当前块宽度,且前一个串类型不为单位基矢量串ubvs,则进入ubvs串的判断。
若当前起始位置的常现像素,等于正上方above位置的常现像素,则进一步判断下一个像素位置的常现像素是否与其above位置的常现像素相同,一直累加,直到某一位置的常现像素与其above位置的常现像素不同,此时相同的像素个数记为ubvs串的长度,并统计总的代价。
分别用以上方式预测后,视频编码装置算出每个像素的平均代价值,选择代价值更小的预测方式。
本公开实施例还提供了一种常现像素列表的更新机制,更新机制指的是,当一个当前块用evs_ubvs模式编码完后,该当前块对应的常现像素列表中的常现像素就需要更新到历史常现像素列表PrevSrb中。总体规则为:将当前已编码完当前块的常现像素列表中的常现像素放到PrevSrb的前面,PrevSrb中原有的常现像素往后移,同时进行查重操作。
具体更新过程可以简要分为下面3个步骤:
(1)从PrevSrb中删去其与当前常像素列表的重复的常现像素(即reused常现像素)。
(2)将当前常像素列表中的常现像素像素按照顺序依次***到PrevSrb的最前面。
(3)如果***之后的PrevSrb列表的元素个数超过了最大长度28,则将PrevSrb列表中末尾超出的部分移除。
例如,请参阅图4,Srb中的index0和index1是reused常现像素,分别和PrevSrb中的index0和index3重复。Srb中的index2和index3是新的常现像素。
步骤S14:按照每一常现像素的命中次数从大到小进行排列,得到目标常现像素列表。
在本公开实施例中,完成当前块的预测,确定块内串的类型后,视频编码装置根据每一常现像素的命中次数对新常现像素列表中的常现像素进行排序。需要说明的是,本公开实施例的命中次数为新常现像素列表中的常现像素预测像素或等值串的次数。具体排序方案包括但不限于以下方案的单个方案或组合方案:
(1)仅对重复使用常现像素内部进行排序,若需要用某一常现像素对evs串中一个像素进行预测,则认为该常现像素命中1次,即常现像素的命中次数为重复使用常现像素预测像素的次数;视频编码装置按常现像素命中次数对重复使用常现像素进行从大到小排序,新常现像素按照原来的排列顺序排列在重复使用常现像素之后,从而组成最终的目标常现像素列表。
(2)仅对重复使用常现像素内部进行排序,若需要用某一常现像素对一个evs串进行预测,则认为该常现像素命中1次,即命中次数为重复使用常现像素预测等值串的次数;视频编码装置按常现像素命中次数对重复使用常现像素进行从大到小排序,新常现像素按照原来的排列顺序排列在重复使用常现像素之后,从而组成最终的目标常现像素列表。
(3)将所有重复使用常现像素看成一个整体,将所有新常现像素看成另一个整体,对这两个整体进行排序。具体地,为每个重复使用常现像素的命中像素的次数分配权重,再计算每个重复使用常现像素的加权平均命中像素的次数;为每个新常现像素的命中像素的次数分配权重,再计算每个新常现像素的加权平均命中像素的次数。比较两个整体的平均命中次数,在所有重复使用常现像素命中次数的加权平均值大于所有新常现像素命中次数的加权平均值的情况下,将所有重复使用常现像素排列在所有新常现像素之前,组成目标常现像素列表;在所有重复使用常现像素命中次数的加权平均值小于所有新常现像素命中次数的加权平均值的情况下,将所有新常现像素排列在所有重复使用常现像素之前,组成目标常现像素列表。
(4)将所有重复使用常现像素看成一个整体,将所有新常现像素看成另一个整体,对这两个整体进行排序。具体地,为每个重复使用常现像素的命中像素串的次数分配权重,再计算每个重复使用常现像素的加权平均命中像素的次数;为每个新常现像素的命中像素串的次数分配权重,再计算每个新常现像素的加权平均命中像素的次数。比较两个整体的平均命中次数,在所有重复使用常现像素命中次数的加权平均值大于所有新常现像素命中次数的加权平均值的情况下,将所有重复使用常现像素排列在所有新常现像素之前,组成目标常现像素列表;在所有重复使用常现像素命中次数的加权平均值小于所有新常现像素命中次数的加权平均值的情况下,将所有新常现像素排列在所有重复使用常现像素之前,组成目标常现像素列表。
需要说明的是,视频编码装置可以选择(1)~(4)中任一方案对常现像素列表进行排序,或者从方案(1)和(2)中选择一个方案,与方案(3)和(4)中的一个方案进行组合,根据组合方案对常现像素列表进行排列。
例如,常现像素列表中共有6个常现像素,存放在位置index0~index5。采用方案(2)+方案(4)对其进行排序。设index0~index2对应重复使用常现像素值分别为reused0、reused1、reused2,命中像素串的命中次数分别为3,7,2;index3~index5对应新常现像素值new0、new1、new2,命中像素串的命中次数分别为4,4,6。
先采用方案(2)对index0~index2进行重排序,则index0=reused1,index1=reused0,index2=reused2。
再采用方案(4)对重复使用常现像素整体和新常现像素整体重排序。对三个重复使用常现像素,设分配权重为1、1、1,那么加权平均值Wre=(3+7+2)/3=4;对三个新常现像素,设分配权重为1、2、3,则加权平均值Wnew=(4+4*2+6*3)/6=5。Wnew>Wre,因此把三个新常现像素放前面,最终index0~index5为{new0,new1,new2,reused1,reused0,reused2}。
步骤S15:利用目标常现像素列表对当前块中的目标等值串进行编码,得到当前块的码流。
本公开实施例的视频编码方法进一步设置相关的句法元素。
首先需要传输一个句法元素isc_cu_evs_ubvs_submode_flag来表示最终是选择evs_ubvs模式还是普通SP模式进行预测。
然后需要传输句法用于区分是evs串、未匹配像素、还是ubvs串。在编码块层面上先传输句法元素isc_evs_present_flag代表当前块是否存在等值串;传输句法isc_unmatched_pixel_str_present_flag,说明当前编码单元中是否存在未匹配像素。
在各个串的层面上,若是evs串,则需要传输该evs串对应常现像素在常现像素列表中的index以及串长度,若是一个新的常现像素,则还需要传输新常现像素的值;若是ubvs串,则只需要用一个句法表示该像素串既不是evs串也不是未匹配像素,并且传输ubvs串的串长度;若是未匹配像素,则需要传输该像素的像素值,以及连续的未匹配像素的个数信息。
为了让解码端能构建Srb列表,编码端还需传输三个值:num_of_reused_pv、num_of_new_pv、prev_pv_not_reused_run。num_of_reused_pv表示常现像素列表中有多少个是重复使用常现像素;prev_pv_not_reused_run代表从开头扫描重复使用常现像素列表时,隔多少个index就能遇到一个重复使用常现像素,解码端可把它取出来放入常现像素列表;num_of_new_pv则表示有多少新的常现像素。
在编码传输evs串对应常现像素的index时,采用的是差分编码的方式。即当前evs串的index不是直接传输,而是要和前一个evs串的index做差,传输的是差值。若差值小于0,则需要加上num_of_reused_pv以及已编码的新的常现像素的个数,以保证传输的是一个正数。
进一步地,本公开实施例在上述句法基础上对常现像素列表构建进行了修改,具体修改如下:
方案A:无论用什么方式构建列表,直接对index本身的值进行编码,此时不需要传输重复使用常现像素的个数和新常现像素的个数。
方案B:只选用上述排列方案(1)/(2)时,仍可用上述编码技术进行差分编码。若有选择排列方案(3)/(4)时,也可采用差分编码的方式,只是若重复使用常现像素整体还是排在列表前面,则差分编码方式同上述编码技术。但若重复使用常现像素整体被排在了列表后面,且做差分操作中当前串的常现像素index和前一个串的常现像素index做差后的差值小于0时,则在差分操作最后需要对差值加上新常现像素列表中当前块对应所有常现像素的个数,保证差值能大于0,除此之外还需额外传输一个flag(标志号)用于表明reused常现像素是总体放前面还是放后面。
具体地,在目标常现像素列表中,所有重复使用常现像素排列在所有新常现像素之前的情况下,编码传输一个值为1的标志号。在目标常现像素列表中,所有新常现像素排列在所有重复使用常现像素之前的情况下,编码传输一个值为0的标志号。
为了进一步增加编码的灵活性,提高食品压缩性能,视频编码装置还可以根据当前块的尺寸选择上述不同的编码方案。例如,设当前块宽度为w,高度为h,只有在w*h<=TH1,或w*h>=TH2时,才采用方案A或方案B进行编码。
具体地,设TH1=32,TH2=256,常现像素列表构建采用了排列方案(4),常现像素列表长度为5。设对w*h<=32,或w*h>=256的块选用方案B进行编码。
若其他编码块采用方案(4)构建重排序列表后,重复使用常现像素仍排在前面,则传输一个flag值为1,若重复使用常现像素排在了后面,则传输一个flag值为0。在编码常现像素的index时,若重复使用常现像素排在后面,则在做差分后差值小于0时,需要加上常现像素列表长度5,保证最终大于0。比如当前串用新的常现像素预测,index为0,前一个相邻串用重复使用常现像素预测,index为4,做差分后0-4=-4,加上5后成正数1。
本公开实施例的视频编码装置通过获取当前块的新常现像素以及历史常现像素列表;利用新常现像素以及历史常现像素列表中至少部分常现像素作为重复使用常现像素构建新常现像素列表;利用新常现像素列表对当前块内的像素进行预测归类,将当前块内的所有像素划分到等值串、单位基矢量串以及未匹配像素,并记录新常现像素列表中每一常现像素预测像素或等值串的命中次数;按照每一常现像素的命中次数从大到小进行排列,得到目标常现像素列表;利用目标常现像素列表对当前块进行编码,得到当前块的码流。本申请通过将命中次数高的常现像素排列在列表前面,有利于减少编码比特开销,并且可以针对不同的列表构建方式设计不同的编码方式,还可以根据编码块的尺寸信息切换编码方式,有利于提升视频压缩性能。
以上实施例,仅是对本申请的其中一种常见案例而已,并非对本申请的技术范围做任何限制,故凡是依据本申请方案的实质对以上内容所做的任何细微修改、等同变化或者修饰,均仍属于本申请技术方案的范围内。
请继续参见图5,图5是本申请提供的视频编码装置的一实施例的结构示意图。其中,视频编码装置50包括像素获取模块51、列表构建模块52、预测归类模块53、排列模块54以及编码模块55。
其中,像素获取模块51,用于获取当前块的新常现像素以及历史常现像素列表。
列表构建模块52,用于利用新常现像素以及重复使用常现像素构建新常现像素列表。
预测归类模块53,用于利用新常现像素列表对当前块内的像素进行预测归类,将当前块内的所有像素划分到等值串、单位基矢量串以及未匹配像素,并记录新常现像素列表中每一常现像素预测像素或等值串的命中次数。
排列模块54,用于按照每一常现像素的命中次数从大到小进行排列,得到目标常现像素列表。
编码模块55,用于利用目标常现像素列表对当前块进行编码,得到当前块的码流。
请参见图6,为本申请视频编解码***的一实施例的结构示意图。视频编解码***包括相互连接的存储器62和处理器61。
存储器62用于存储实现上述任意一项的视频编码方法的程序指令。
处理器61用于执行存储器62存储的程序指令。
其中,处理器61还可以称为CPU(Central Processing Unit,中央处理单元)。处理器61可能是一种集成电路芯片,具有信号的处理能力。处理器61还可以是通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器62可以为内存条、TF卡等,可以存储串匹配预测装置中全部信息,包括输入的原始数据、计算机程序、中间运行结果和最终运行结果都保存在存储器中。它根据控制器指定的位置存入和取出信息。有了存储器,串匹配预测装置才有记忆功能,才能保证正常工作。串匹配预测装置的存储器按用途存储器可分为主存储器(内存)和辅助存储器(外存),也有分为外部存储器和内部存储器的分类方法。外存通常是磁性介质或光盘等,能长期保存信息。内存指主板上的存储部件,用来存放当前正在执行的数据和程序,但仅用于暂时存放程序和数据,关闭电源或断电,数据会丢失。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法和装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,***服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。
请参阅图7,为本申请计算机可读存储介质的结构示意图。本申请的存储介质存储有能够实现上述所有视频编码方法的程序文件71,其中,该程序文件71可以以软件产品的形式存储在上述存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储装置包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质,或者是计算机、服务器、手机、平板等终端设备。
以上仅为本申请的实施方式,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

Claims (11)

1.一种视频编码方法,其特征在于,所述视频编码方法包括:
获取当前块的新常现像素以及历史常现像素列表;
利用所述新常现像素以及所述历史常现像素列表中至少部分常现像素作为重复使用常现像素构建新常现像素列表;
利用所述新常现像素列表对所述当前块内的像素进行预测归类,将所述当前块内的所有像素划分到等值串、单位基矢量串以及未匹配像素,并记录所述新常现像素列表中每一常现像素预测所述等值串中每个像素或所述等值串的命中次数;
按照所述每一常现像素的命中次数将所述新常现像素列表中的常现像素从大到小进行排列,得到目标常现像素列表;
利用所述目标常现像素列表对所述当前块进行编码,得到所述当前块的码流。
2.根据权利要求1所述的视频编码方法,其特征在于,
所述命中次数为所述重复使用常现像素预测所述像素的次数;
所述按照所述每一常现像素的命中次数将所述新常现像素列表中的常现像素从大到小进行排列,得到目标常现像素列表的步骤,包括:
按照每一重复使用常现像素的命中次数从大到小将所述重复使用常现像素进行排列;
将每一新常现像素按照所述新常现像素列表的排列顺序排列在所述重复使用常现像素之后,组成所述目标常现像素列表。
3.根据权利要求1所述的视频编码方法,其特征在于,
所述命中次数为所述重复使用常现像素预测所述等值串的次数;
所述按照所述每一常现像素的命中次数将所述新常现像素列表中的常现像素从大到小进行排列,得到目标常现像素列表的步骤,包括:
按照每一重复使用常现像素的命中次数从大到小将所述重复使用常现像素进行排列;
将每一新常现像素按照所述新常现像素列表的排列顺序排列在所述重复使用常现像素之后,组成所述目标常现像素列表。
4.根据权利要求1所述的视频编码方法,其特征在于,
所述按照所述每一常现像素的命中次数将所述新常现像素列表中的常现像素从大到小进行排列,得到目标常现像素列表的步骤,包括:
按照每一重复使用常现像素的权重计算所有重复使用常现像素命中次数的加权平均值;
按照每一新常现像素的权重计算所有新常现像素命中次数的加权平均值;
所述命中次数为所述新常现像素列表中的常现像素预测所述像素的次数;
在所述所有重复使用常现像素命中次数的加权平均值大于所述所有新常现像素命中次数的加权平均值的情况下,将所述所有重复使用常现像素排列在所述所有新常现像素之前,组成所述目标常现像素列表;
在所述所有重复使用常现像素命中次数的加权平均值小于所述所有新常现像素命中次数的加权平均值的情况下,将所述所有新常现像素排列在所述所有重复使用常现像素之前,组成所述目标常现像素列表。
5.根据权利要求1所述的视频编码方法,其特征在于,
所述按照所述每一常现像素的命中次数将所述新常现像素列表中的常现像素从大到小进行排列,得到目标常现像素列表的步骤,包括:
按照每一重复使用常现像素的权重计算所有重复使用常现像素命中次数的加权平均值;
按照每一新常现像素的权重计算所有新常现像素命中次数的加权平均值;
所述命中次数为所述新常现像素列表中的常现像素预测所述等值串的次数;
在所述所有重复使用常现像素命中次数的加权平均值大于所述所有新常现像素命中次数的加权平均值的情况下,将所述所有重复使用常现像素排列在所述所有新常现像素之前,组成所述目标常现像素列表;
在所述所有重复使用常现像素命中次数的加权平均值小于所述所有新常现像素命中次数的加权平均值的情况下,将所述所有新常现像素排列在所述所有重复使用常现像素之前,组成所述目标常现像素列表。
6.根据权利要求1所述的视频编码方法,其特征在于,
所述利用所述目标常现像素列表对所述当前块中的目标等值串进行编码的步骤
获取所述当前块的宽度和高度;
判断所述当前块的宽度与高度的乘积是否处于预设范围内;
若是,则对所述目标等值串对应的常现像素在目标常现像素列表中的索引值进行差分操作后的值进行编码;或者直接对目标等值串对应的常现像素在目标常现像素列表中的索引值进行编码。
7.根据权利要求6所述的视频编码方法,其特征在于,
所述对所述目标等值串对应的常现像素在目标常现像素列表中的索引值进行差分操作后的值进行编码的步骤,包括:
在所述目标常现像素列表中,所有新常现像素排列在所有重复使用常现像素之前的情况下,对第一个等值串的常现像素在目标常现像素列表中的索引值进行编码,剩余等值串则需利用其常现像素的索引值、扫描顺序上一个等值串的常现像素的索引值以及所述目标常现像素列表中当前块对应所有常现像素的个数进行差分操作,然后对差分操作后的值进行编码。
8.根据权利要求7所述的视频编码方法,其特征在于,
所述对所述目标常现像素列表中目标常现像素之间进行差分编码的步骤之后,所述视频编码方法还包括:
在所述目标常现像素列表中,所有重复使用常现像素排列在所有新常现像素之前的情况下,编码传输一个值为1的标志号;
在所述目标常现像素列表中,所有新常现像素排列在所有重复使用常现像素之前的情况下,编码传输一个值为0的标志号。
9.一种视频编码装置,其特征在于,所述视频编码装置包括像素获取模块、列表构建模块、预测归类模块、排列模块以及编码模块;
所述像素获取模块,用于获取当前块的新常现像素以及历史常现像素列表;
所述列表构建模块,用于利用所述新常现像素以及所述历史常现像素列表中至少部分常现像素作为重复使用常现像素构建新常现像素列表;
所述预测归类模块,用于利用所述新常现像素列表对所述当前块内的像素进行预测归类,将所述当前块内的所有像素划分到等值串、单位基矢量串以及未匹配像素,并记录所述新常现像素列表中每一常现像素预测所述等值串中每个像素或所述等值串的命中次数;
所述排列模块,用于按照所述每一常现像素的命中次数将所述新常现像素列表中的常现像素从大到小进行排列,得到目标常现像素列表;
所述编码模块,用于利用所述目标常现像素列表对所述当前块进行编码,得到所述当前块的码流。
10.一种视频编解码***,其特征在于,所述视频编解码***包括处理器、与所述处理器连接的存储器,其中,
所述存储器存储有程序指令;
所述处理器用于执行所述存储器存储的程序指令以实现如权利要求1~8中任一项所述的视频编码方法。
11.一种计算机可读存储介质,其特征在于,所述存储介质存储有程序指令,所述程序指令被处理器执行时实现如权利要求1~8中任一项所述的视频编码方法。
CN202011419561.7A 2020-12-06 2020-12-06 一种视频编码方法、装置、***及计算机可读存储介质 Active CN112565748B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011419561.7A CN112565748B (zh) 2020-12-06 2020-12-06 一种视频编码方法、装置、***及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011419561.7A CN112565748B (zh) 2020-12-06 2020-12-06 一种视频编码方法、装置、***及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN112565748A CN112565748A (zh) 2021-03-26
CN112565748B true CN112565748B (zh) 2022-08-09

Family

ID=75059328

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011419561.7A Active CN112565748B (zh) 2020-12-06 2020-12-06 一种视频编码方法、装置、***及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN112565748B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115190316A (zh) * 2021-04-06 2022-10-14 同济大学 封存和激活越界等值串常现位置的数据编解码方法及装置
CN117880532A (zh) * 2024-01-15 2024-04-12 重庆邮电大学 一种基于vvc的屏幕内容快速模式决策方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005159820A (ja) * 2003-11-27 2005-06-16 Fuji Xerox Co Ltd 符号化装置、符号化方法及びそのプログラム
WO2012033673A1 (en) * 2010-09-09 2012-03-15 Qualcomm Incorporated Efficient coding of video parameters for weighted motion compensated prediction in video coding
CN104244007A (zh) * 2013-06-13 2014-12-24 上海天荷电子信息有限公司 基于任意形状匹配的图像压缩方法和装置
WO2016052977A1 (ko) * 2014-10-01 2016-04-07 주식회사 케이티 비디오 신호 처리 방법 및 장치
JP2018007278A (ja) * 2017-10-11 2018-01-11 株式会社東芝 復号方法及び復号装置
WO2019150435A1 (ja) * 2018-01-30 2019-08-08 富士通株式会社 映像符号化装置、映像符号化方法、映像復号装置、映像復号方法、及び映像符号化システム
CN111614359A (zh) * 2020-06-02 2020-09-01 同济大学 使用点预测和常现位置数组的数据编码方法和解码方法
CN111866512A (zh) * 2020-07-29 2020-10-30 腾讯科技(深圳)有限公司 视频解码方法、视频编码方法、装置、设备及存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005159820A (ja) * 2003-11-27 2005-06-16 Fuji Xerox Co Ltd 符号化装置、符号化方法及びそのプログラム
WO2012033673A1 (en) * 2010-09-09 2012-03-15 Qualcomm Incorporated Efficient coding of video parameters for weighted motion compensated prediction in video coding
CN104244007A (zh) * 2013-06-13 2014-12-24 上海天荷电子信息有限公司 基于任意形状匹配的图像压缩方法和装置
WO2016052977A1 (ko) * 2014-10-01 2016-04-07 주식회사 케이티 비디오 신호 처리 방법 및 장치
JP2018007278A (ja) * 2017-10-11 2018-01-11 株式会社東芝 復号方法及び復号装置
WO2019150435A1 (ja) * 2018-01-30 2019-08-08 富士通株式会社 映像符号化装置、映像符号化方法、映像復号装置、映像復号方法、及び映像符号化システム
CN111614359A (zh) * 2020-06-02 2020-09-01 同济大学 使用点预测和常现位置数组的数据编码方法和解码方法
CN111866512A (zh) * 2020-07-29 2020-10-30 腾讯科技(深圳)有限公司 视频解码方法、视频编码方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN112565748A (zh) 2021-03-26

Similar Documents

Publication Publication Date Title
CN112565749B (zh) 一种视频编码方法、装置、***及计算机可读存储介质
EP0732855B1 (en) Moving picture variable length coding system and method
US9978156B2 (en) High-throughput image and video compression
CN101019437B (zh) 基于帧内预测方向的h.264空间错误隐藏
CN112565748B (zh) 一种视频编码方法、装置、***及计算机可读存储介质
US20100232497A1 (en) Lossless and near-lossless image compression
EP3412027B1 (en) Method and apparatus for scan order selection
CN108370443B (zh) 数据压缩
US7561744B2 (en) Image encoding apparatus, image decoding apparatus, and their control method, and computer program and computer-readable storage medium
CN112218092B (zh) 串编码技术的编码方法、设备及存储介质
CN110087083B (zh) 帧内色度预测模式的选择方法、图像处理设备及存储设备
US20220222861A1 (en) Method, device, and storage medium for data encoding/decoding
WO2022116317A1 (zh) 帧内预测方法、编码器、解码器以及存储介质
CN112055219B (zh) 一种串匹配预测方法、装置及计算机可读存储介质
CN111131828A (zh) 一种图像压缩方法及装置
CN116668710A (zh) 一种彩色图像传输方法、***、装置与存储介质
CN110062227B (zh) 帧内预测模式的编解码方法、装置、设备和可读存储介质
WO2007019790A1 (en) Method and apparatus for encoding coefficient block
JP2009077176A (ja) 画像符号化装置及び画像復号装置並びにそれらの制御方法
US11006133B2 (en) Image compression technique
CN113365080B (zh) 串编码技术的编解码方法、设备及存储介质
CN112565760B (zh) 串编码技术的编码方法、设备及存储介质
CN112995661B (zh) 图像编码方法及装置、电子设备及存储介质
CN113099269A (zh) 串匹配预测方法、编码和解码方法及相关设备、装置
CN117880516A (zh) 块划分方法、块划分装置、设备以及存储介质

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