CN114697666A - 屏幕编码方法、屏幕解码方法及相关装置 - Google Patents

屏幕编码方法、屏幕解码方法及相关装置 Download PDF

Info

Publication number
CN114697666A
CN114697666A CN202011628731.2A CN202011628731A CN114697666A CN 114697666 A CN114697666 A CN 114697666A CN 202011628731 A CN202011628731 A CN 202011628731A CN 114697666 A CN114697666 A CN 114697666A
Authority
CN
China
Prior art keywords
block
prediction block
coded
cache list
stream data
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.)
Pending
Application number
CN202011628731.2A
Other languages
English (en)
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.)
Cambricon Technologies Corp Ltd
Original Assignee
Cambricon Technologies Corp 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 Cambricon Technologies Corp Ltd filed Critical Cambricon Technologies Corp Ltd
Priority to CN202011628731.2A priority Critical patent/CN114697666A/zh
Publication of CN114697666A publication Critical patent/CN114697666A/zh
Pending legal-status Critical Current

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/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding

Abstract

本申请实施例公开了一种屏幕编码方法、屏幕解码方法及相关装置,该方法包括:获取待编码块;从缓存列表中选择待编码块的预测块;其中,缓存列表包括至少两帧图像中的图像块;输出码流数据,其中,码流数据包括预测块与待编码块的残差,以及预测块的标识。采用本申请,在一定程度上可以提高编码性能,降低码率。

Description

屏幕编码方法、屏幕解码方法及相关装置
技术领域
本申请涉及视频编码领域,尤其涉及屏幕编码方法、屏幕解码方法及相关装置。
背景技术
近年来,随着高清、超高清应用走进人们的生活,视频编码技术受到越来越多的挑战。高效率视频编码(High Efficiency Video Coding,HEVC)作为新一代视频编码标准,在保持相同视频质量的条件下,其编码需要的比特数仅为上一代编码标准H.264的50%。因此,HEVC视频编码方法成为当今研究的任店之一。
屏幕内容编码(Screen Content Coding,SCC)是HEVC重要的扩展应用之一。SCC与传统的HEVC类似,仍然以混合编码框架为基础。并且依据屏幕内容视频的特性,在帧内预测和帧间预测的过程中分别引入了一系列新的技术,如帧内块复制(Intra Block Copy,IBC)模式、调色板(Palette,PLT)模式和基于哈希值(Hash)的块搜索技术。
但是,IBC技术是使用当前帧的先前编码的采样块作为预测块来预测特定采样值。可以看出,IBC的搜索范围只涉及到当前帧的已编码区域,可供选择的数据较少,编码效率不高。
发明内容
本申请实施例提供了一种屏幕编码方法、屏幕解码方法及相关装置,一定程度上可以提高编码性能,降低码率。
第一方面,本申请实施例公开了一种屏幕编码方法,该方法包括:获取待编码块;从缓存列表中选择待编码块的预测块;其中,缓存列表包括至少两帧图像中的图像块;输出码流数据,其中,码流数据包括预测块与待编码块的残差,以及预测块的标识。
在一种可能的实现方式中,获取待编码块之后,所从缓存列表中选择待编码块的预测块之前,还包括:将缓存列表中的图像块与待编码块进行匹配判断,得到判断结果。
在一种可能的实现方式中,在判断结果为匹配相似的情况下,从缓存列表中选择待编码块的预测块。
在一种可能的实现方式中,在判断结果为匹配不相似的情况下,获取待编码块的重构图像块,将重构图像块保存到缓存列表中。
在一种可能的实现方式中,待编码块属于第一帧图像,至少两帧图像包括第一帧图像。
第二方面,本申请实施例公开了一种屏幕解码方法,该方法包括:接收码流数据,码流数据包括待解码块的预测块的标识,以及待解码块与预测块之间的残差;根据预测块的标识从缓存列表中选择待解码块的预测块;其中,缓存列表包括至少两帧图像中的图像块;根据预测块和残差确定待解码块。
在一种可能的实现方式中,接收码流数据之后,根据预测块的标识从缓存列表中选择待解码块的预测块之前,还包括:若码流数据中不包括编码块的预测块的标识,则解码得到待编码的重构图像块;将重建图像块保存到缓存列表中。
在一种可能的实现方式中,待编码块属于第一帧图像,至少两帧图像包括第一帧图像。
第三方面,本申请实施例公开了一种视频编码器,该视频编码器包括:
获取单元,用于获取待编码块;
选择单元,用于从缓存列表中选择待编码块的预测块;其中,缓存列表包括至少两帧图像中的图像块;
输出单元,用于输出码流数据,其中,码流数据包括预测块与待编码块的残差,以及预测块的标识。
在一种可能的实现方式中,选择单元还用于将缓存列表中的图像块与待编码块进行匹配判断,得到判断结果。
在一种可能的实现方式中,在判断结果为匹配相似的情况下,选择单元具体用于从缓存列表中选择待编码块的预测块。
在一种可能的实现方式中,在判断结果为匹配不相似的情况下,选择单元具体用于获取待编码块的重构图像块,将重构图像块保存到缓存列表中。
在一种可能的实现方式中,待编码块属于第一帧图像,至少两帧图像包括第一帧图像。
第四方面,本申请实施例公开了一种视频解码器,该视频解码器包括:
接收单元,用于接收码流数据,码流数据包括待解码块的预测块的标识,以及待解码块与预测块之间的残差;
选择单元,用于根据预测块的标识从缓存列表中选择待解码块的预测块;其中,缓存列表包括至少两帧图像中的图像块;
确定单元,用于根据预测块和残差确定待解码块。
在一种可能的实现方式中,选择单元还用于:若码流数据中不包括编码块的预测块的标识,则解码得到待编码的重构图像块;将重建图像块保存到缓存列表中。
在一种可能的实现方式中,待编码块属于第一帧图像,至少两帧图像包括第一帧图像。
第五方面,本申请实施例提供了一种计算器可读存储介质,计算机可读存储介质中存储有计算机程序,当计算机程序在一个或多个处理器上运行时,执行如第一方面或第二方面实施例中的方法。
第六方面,本申请实施例提供了一种芯片系统,芯片系统包括至少一个处理器、存储器和接口电路,存储器中存储有计算机程序,当计算机程序在一个或多个处理器上运行时,执行如第一方面或第二方面实施例中的方法。
在上述方法中,缓存列表中缓存有多帧图像的已编码像素的重建块,而这多帧图像可以来自同一视频帧,也可以来自不同视频帧。在编码过程中,待编码块的预测块的可选择范围更多,所以可选择性更高,选中待编码块的预测块的可能性提高了,从而可以提高编码质量,降低码率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种的视频译码系统的结构示意图;
图2是本申请实施例提供的一种的屏幕编码方法的流程示意图;
图3是本申请实施例提供的一种的屏幕解码方法的流程示意图;
图4是本申请实施例提供的一种的视频编码器的结构示意图;
图5是本申请实施例提供的一种的视频解码器的结构示意图;
图6是本申请实施例提供的一种组成处理装置的结构示意图
图7是本申请实施例提供的一种板卡的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
下面先对本申请实施例可能涉及的一些概念进行简单介绍。
1、视频编码
视频编码就是指通过压缩技术,将原始视频格式的文件转换成另一种视频格式文件的方式。视频是连续的图像序列,由连续的帧构成,一帧即为一幅图像。由于人眼的视觉暂留效应,当帧序列以一定的速率播放时,我们看到的就是动作连续的视频。由于连续的帧之间相似性极高,为便于储存传输,我们需要对原始的视频进行编码压缩,以去除空间、时间维度的冗余。
在视频编码领域,术语“图片(Picture)”、“帧(Frame)”或“图像(Image)”可以用作同义词。可以理解的是,视频编码在源侧执行,通常包括处理(例如压缩)原始视频以减少表示该视频所需的数据量,从而可以更高效地存储和/或传输。视频解码在目的侧执行,通常包括相对于编码器作逆处理,以重构视频。
2、屏幕内容编码
屏幕内容编码是HEVC重要扩展应用之一。屏幕内容是指包含各类设备(比如计算机、移动终端等)的图像显示单元捕获的内容。场景的屏幕内容有计算机图像和文本图像、自然视频与图像/文字混合的图像以及计算机生成的动画图像等。屏幕内容在桌面协同、桌面共享、云计算、云游戏、远程桌面和远程展示等应用。
在进行屏幕内容编码过程中,视频的每一帧按照基于四叉树的划分结构进行划分。在编码流程开始前,每个测试序列将被分割为许多图像组(Group of Picture,GOP)。在编码单元(Coding Unit,CU)的划分过程中,屏幕内容编码依然采用了基于四叉树的划分结构,首先将视频的每一帧分为尺寸为64×64的编码树单元(Coding Tree Unit,CTU)、然后进一步将每一个CTU划分为尺寸不同的CU、预测单元(Prediction Unit,PU)和变换单元(Transform Unit,TU)。
其中,CU的尺寸分布可以从64×64迭代划分为8×8。同时,一个CU可以进一步划分为一个或多个PU。PU的尺寸可以从64×64迭代划分到4×4。
首先,图1是本申请实施例提供的一种视频译码系统的结构示意图。如本文所使用,术语“视频译码器”一般是指视频编码器和视频解码器两者。在本申请实施例中,术语“视频译码”或“译码”可一般地指代视频编码或视频解码。
请参见图1,图1所示的视频译码系统包括源设备10和目的设备20。源设备10产生经编码视频数据,因此源设备10可被称为视频编码装置。目的地设备20可以对有源设备10所产生的经编码的视频数据进行解码。因此,目的地设备20可以被称为视频解码装置。源设备10和目的地设备20或两个的各种实施方案可包含一个或多个处理器以及耦合到上述一个或多个处理器的存储器。上述存储器可包含但不限于RAM、ROM、EEPROM、快闪存储器或可用于以计算机存取的指令或数据结构的形式存储所要的程序代码的任何其它媒体。
源设备10和目的地设备20可以为视频广播系统、有线系统、基于网络的视频流服务、游戏应用和/或服务、多媒体通信系统和/或各种其它应用和服务的一部分或独立单元。源设备10和目的地设备20可以包括各种装置,包含桌上型计算机、移动计算装置、笔记型(例如,膝上型)计算机、平板计算机、机顶盒、例如所谓的“智能”电话等电话手持机、电视机、相机、显示装置、数字媒体播放器、视频游戏控制台、车载计算机或其类似者。
虽然图1将源设备10和目的地设备20绘示为单独的设备,但设备实施例也可以同时包括源设备10和目的地设备20或同时包括两者的功能性,即源设备10或对应的功能性以及目的地设备20或对应的功能性。在此类实施例中,可以使用相同硬件和/或软件,或使用单独的硬件和/或软件,或其任何组合来实施源设备10或对应的功能性以及目的地设备20或对应的功能性。
从图1可以看出,源设备10包括视频源101,视频编码器100和输出接口102。在一些实施例中,输出接口102可包含调节器/解调器(调制解调器)和/或发射器。视频源101可包括视频捕获装置(例如,摄像机)、含有先前捕获的视频数据的视频存档、用以从视频内容提供者接受视频数据的视频馈入接口,和/或用于产生视频数据的计算机图形系统,或视频数据的来源组合。
视频编码器100可对来自视频源101的视频数据进行编码得到码流数据,具体地,视频编码器100从缓存列表中选择待编码块的预测块,待编码块为视频数据中任意帧图像中的图像块,候选列表中包括至少两帧图像中的图像块。在一些实施例中,源设备100由输出接口102将经编码视频数据之间发射到目的地设备20。
从图1可以看出,目的地设备20包括输入接口201、视频解码器200和显示装置202。输入接口201包含接收器和/或调制解调器。输入接口201可经由链路30接收经编码视频数据。显示装置202可与目的地装置20集成或可在目的地装置20外部。一般来说,显示装置220显示经解码视频数据。显示装置202可包括多种显示装置,例如,液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或其它类型的显示装置。
参见图2,图2是本申请实施例提供的一种屏幕编码方法的流程示意图,图2所示的流程可由图1中的视频编码器100执行。可以理解的是,图2所示的流程可以以各种顺序执行和/或同时发生,不限于图2所示的执行顺序。这种方法可包括但不限于如下步骤:
步骤S201,获取待编码块。
具体地,视频编码器100可从视频源101获得视频数据,或者,视频编码器100接收视频数据后,并将视频数据存储在视频数据存储单元中。视频编码器100可以将视频数据分割成若干图像块,而这些图像块可以被进一步分割为更小的块,例如基于四叉树结构或者二叉树结构的图像块分割。此分割还可包含分割成条带(slice)、片(title)或其它较大单元。视频编码器100通常说明编码待编码的视频条带内的图像块的组件,条带可分为多个图像块,并且可能分为被称作片的图像块集合。
图像块可具有固定或可变的大小,且根据不同视频压缩编解码标准而在大小上不同。图像块的大小均为M×N像素,“M×N”与“M乘N”可互换使用以指依照水平维度及垂直维度的图像块的像素尺寸,即在水平方向上具有M个像素,且在垂直方向上具有N个像素,其中,M、N表示非负整数值。此外,块未必需要在水平方向上与垂直方向上具有相同数目个像素。举例说明,这里的M=N=4,当然当前图像块的子块大小和参考快的大小也可以是8×8像素,8×4像素。或4×8像素,或者最小的预测块大小。本申请实施例中所描述的图像块可以理解但不限于:CU、PU或者TU等。根据不同视频压缩编解码标准的规定,CU可以包含一个或多个PU,或者PU和CU的尺寸相同。此外,待编码块可以指当前需要编码的图像块。
当对图像帧进行划分得到待编码块后,可以计算得到目标在待编码块的位置(x,y,W,H)其中,W和H是目标的长和宽,x和y是目标在当前图像块的坐标。其中,目标可以是待编码块中的文字、图像等等。举例说明,对于视频数据中的文字来说,可以采用OCR计算检测出当前图像帧中的所有文字,然后对当前图像帧进行划分得到待编码块(也即当前需要编码的图像块),此时待编码块可以为一个PU,然后计算PU中的文字在当前PU的位置(x,y,W,H)。
步骤S202,得到判断结果。
具体地,视频编码器100将待编码块与缓存列表中的图像块进行匹配判断,得到判定结果。在缓存列表中存储有N个图像块,因此需要将待编码块与N个图像块分别进行匹配得到N个判断结果。其中,匹配的方式可以是待编码块与缓存列表中的图像块进行减运算,得到的差值可以是判断结果。
在一种可能的实现方式中,在判断结果为匹配相似的情况下,执行步骤S203从缓存列表中选择待编码块的预测块。具体地,判断结果可以为待编码块与缓存列表中图像块的差值,差值越小说明上述差值所对应的缓存列表中的图像块与待编码块最相似,所以该图像块可以作为待编码块的预测块。
在一种可能的实现方式中,在判断结果为匹配不相似的情况下,执行步骤S204将待编码块的重构图像块保存到缓存列表中。具体地,判断结果可以为待编码块与缓存列表中图像块的差值,差值越大说明上述差值所对应的缓存列表中的图像块与待编码块最不相似,所以缓存列表中不存在待编码块的预测块。
步骤S203,从缓存列表中选择待编码块的预测块。
具体地,在视频编码器100获取到待编码块之后,视频编码器可以按照预先规定的顺序遍历缓存列表,从缓存列表中选择待编码块的预测块。其中,缓存列表包括至少两帧图像中的图像块,上述图像值为已编码图像块的重建值。也即,在缓存列表中不仅缓存有当前帧的已编码图像块的重建值,还有当前帧的前一帧或者前几帧的已编码图像块的重建值,也可以是其他视频数据的图像帧的已编码图像块的重建值,本申请实施例不做任何限制。
可以理解的是,待编码块与缓存列表中的图像块的大小可能存在差异,所以需要对待编码块和缓存列表中的图像块进行大小归一化处理,如果待编码块的大小例如是4×4,缓存列表中的图像块的大小例如是8×4,8×8,可以获取其中心4×4块的信息作为待编码块的预测信息,该中心4×4的左上角顶点相对于缓存列表中图像块的左上角顶点的坐标为(W/4)/2*4,(H/4)/2*4),这里除运算为整除运算,若M=8,N=4,则中心4×4块的左上角顶点相对于该缓存列表中的图像块的左上角顶点的坐标为(4,0)。可选地,也可以获取该缓存列表中的图像块左上角4x4块的信息作为待编码块的预测信息,编码器可以将截取4×4块的位置坐标信息进行编码,用于指示解码器按照对应坐标从预测块中截取预测块,但本申请并不限于此。
步骤S204、将待编码块的重构图像块保存到缓存列表中。
具体地,若匹配判断的结果为匹配不相似,也即缓存列表中不存在待编码块的预测块,则可以根据计算得到的位置(x,y,W,H)截取出包含目标的待编码块,然后可以根据其他编码方式得到待编码块的重构图像块,将待编码块的重构图像块保存到缓存列表中,可由视频编码器100用作参考块对后续视频帧或图像中的块进行帧内预测。
步骤S205,输出码流数据。
具体地,当视频编码器100从缓存列表选择到待编码块的预测块之后,视频编码器100通过从待编码的当前图像块减去预测块来形成残差图像块。残差块中的残差视频数据可以包含在一个或多个TU中,然后可以使用例如离散余弦变换(DCT)或概念上类似的变换等变换将残差视频数据变换成残差变换系数。进一步地,还可以将残差视频数据从像素值域转换到变换域,例如频域。当得到变换系数之和,视频编码器100可以量化变换系数以进一步减小位速率。在量化之后,还可以对量化系数进行熵编码。再进行熵编码之后,可以将经编码的码流数据发射到视频解码器200,或经存档以供稍后发射。
在一种可能的实现方式中,判断结果为匹配相似,也即在缓存列表中存在待编码块的预测块的情况下,输出的码流数据包括预测块与待编码块的残差,以及预测块的标识。
在一种可能的实现方式中,判断结果为匹配不相似,也即在缓存列表中不存在待编码块的预测块的情况下,输出的码流数据可以是待编码块的重构图像块。
需要说明的是,缓存列表中缓存的图像块与待编码块可以不一定来自于同一视频帧。也即待编码块可以是第一视频帧中的任意图像帧,缓存列表中缓存的图像块可以是第一视频帧中的任意图像帧,也可以是第二视频帧中的任意图像帧,第一视频帧不是第二视频帧。
参见图3,图3是本申请实施例提供的一种屏幕解码方法的流程示意图,图3所示的流程可由图1中的视频解码器100执行。可以理解的是,图3所示的流程可以以各种顺序执行和/或同时发生,不限于图3所示的执行顺序。这种方法可包括但不限于如下步骤:
步骤S301,接收码流数据。
具体地,在解码过程中,视频解码器200通过输入接口202从视频编码器100接收表示经编码视频条带的图像块的码流数据。视频解码器200还可以将码流数据存储在视频数据存储单元中,视频数据存储单元可作为用于存储来自经编码视频位流的经编码视频数据的经解码图像缓冲单元。然后,视频解码器100可以通过熵解码单元解析码流数据,若解析得到的码流数据中包含待解码块与预测块之间的残差,则执行步骤S302;若解析得到的码流数据中不包含待解码块与预测块之间的残差,则执行步骤S304。
需要说明的是,本申请实施例提及的待解码块为当前需要解码的图像块。
步骤S302,根据预测块的标识从缓存列表中选择待解码块的预测块。
具体地,解码器200根据预测块的标识从缓存列表中选取待解码块的预测块,可以理解的是,缓存列表中存储的图像块都有与其对应的标识。在编码侧有维护一个图像块的缓存列表,在解码侧按照同样的方式也维护一个图像块的缓存列表,所以根据标识可以从解码侧的缓存列表中选择对应的图像块作为待解码块的预测块。
S303,根据所述预测块和所述残差确定所述待解码块。
具体地,当解码器200从缓存列表中选择到待编码块的预测值后,该解码器200将解析得到的残差与预测值求和以得到重建的块,即经解码图像块。
步骤S304,将重建图像块保存到缓存列表中。
具体地,若解码器200解析码流数据,没有得到标识,则说明缓存列表中没有待编码块的图像块,则将解析得到的待编码块的重建图像块保存到缓存列表中,在缓存列表中的重建图像块有其对应的标识。
请参阅图4,图4是本申请实施例提供的一种视频编码器400的结构示意图,该视频编码器400可以为节点,也可以为节点中的一起器件,例如芯片或者集成电路等,如图所示,视频编码器400可以包括获取单元401,选择单元402,和输出单元403。其中,各个单元的描述如下:
获取单元401,用于获取待编码块;
选择单元402,用于从缓存列表中选择所述待编码块的预测块;其中,所述缓存列表包括至少两帧图像中的图像块;
输出单元403,用于输出码流数据,其中,所述码流数据包括所述预测块与所述待编码块的残差,以及所述预测块的标识。
在一种可能的实现方式中,选择单元402还用于:所述缓存列表中的图像块与所述待编码块进行匹配判断,得到判断结果。
在一种可能的实现方式中,所述判断结果为匹配相似的情况下,选择单元402具体用于从缓存列表中选择所述待编码块的预测块。
在一种可能的实现方式中,所述判断结果为匹配不相似的情况下,获取单元401还用于获取所述待编码块的重构图像块,将所述重构图像块保存到所述缓存列表中。
在一种可能的实现方式中,待编码块属于第一帧图像,所述至少两帧图像包括所述第一帧图像。
请参阅图5,图5是本申请实施例提供的一种视频解码器500的结构示意图,该视频编码器500可以为节点,也可以为节点中的一起器件,例如芯片或者集成电路等,如图所示,视频编码器500可以包括接收单元501,选择单元502,和确定单元503。其中,各个单元的描述如下:
接收单元501,用于接收码流数据,所述码流数据包括待解码块的预测块的标识,以及所述待解码块与所述预测块之间的残差;
选择单元502,用于根据所述预测块的标识从缓存列表中选择所述待解码块的预测块;其中,所述缓存列表包括至少两帧图像中的图像块;
确定单元503,用于根据所述预测块和所述残差确定所述待解码块。
在一种可能的实现方式中,选择单元502还用于:若所述码流数据中不包括所述编码块的预测块的标识,则解码得到所述待编码的重构图像块;将所述重建图像块保存到缓存列表中。
在一种可能的实现方式中,待编码块属于第一帧图像,所述至少两帧图像包括所述第一帧图像。
需要说明的是,各个单元的实现还可以对应参照图3所示的实施例的相应描述。
请参见图6,图6是本申请实施例提供的一种组成处理装置600的结构示意图,该组成处理装置600可以为节点,也可以为节点中的一个器件,例如芯片或者集成电路等。该组成处理装置60可以包括至少一个存储器601和至少一个处理器602。可选的,还可以包含总线603。进一步可选的,还可以包括通信接口604,其中,存储器601、处理器602和通信接口604通过总线603相连。
其中,存储器601用于提供存储空间,存储空间中可以存储操作系统和计算机程序等数据。存储器601可以是随机存储记忆体(random access memory,RAM)、只读存储器(read-only memory,ROM)、可擦除可编程只读存储器(erasable programmable read onlymemory,EPROM)、或便携式只读存储器(compact disc read-only memory,CD-ROM)等等中的一种或者多种的组合。
处理器602是进行算术运算和/或逻辑运算的模块,具体可以是中央处理器(central processing unit,CPU)、图片处理器(graphics processing unit,GPU)、微处理器(microprocessor unit,MPU)、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现场可编程逻辑门阵列(Field Programmable Gate Array,FPGA)、复杂可编程逻辑器件(Complex programmable logic device,CPLD)等处理模块中的一种或者多种的组合。
通信接口604用于接收外部发送的数据和/或向外部发送数据,可以为包括诸如以太网电缆等的有线链路接口,也可以是无线链路(Wi-Fi、蓝牙、通用无线传输等)接口。可选的,通信接口604还可以包括与接口耦合的发射器(如射频发射器、天线等),或者接收器等。
在一些可能的实现方式中,该组成处理装置600中的处理器602用于读取所述存储器601中存储的计算机程序,用于执行前述的屏幕编码方法,例如图2、实施例所描述的视频编码方法。具体用于执行:
获取待编码块;从缓存列表中选择所述待编码块的预测块;其中,所述缓存列表包括至少两帧图像中的图像块;输出码流数据,其中,所述码流数据包括所述预测块与所述待编码块的残差,以及所述预测块的标识。
在一种可能的实现方式中,处理器602具体用于:将所述缓存列表中的图像块与所述待编码块进行匹配判断,得到判断结果。
在一种可能的实现方式中,处理器602具体用于:在所述判断结果为匹配相似的情况下,从缓存列表中选择所述待编码块的预测块。
在一种可能的实现方式中,处理器602具体用于:在所述判断结果为匹配不相似的情况下,获取所述待编码块的重构图像块,将所述重构图像块保存到所述缓存列表中。
在一种可能的实现方式中,待编码块属于第一帧图像,所述至少两帧图像包括所述第一帧图像。
在一些可能的实现方式中,该组成处理装置600中的处理器602用于读取所述存储器601中存储的计算机程序,用于执行前述的屏幕解码方法,例如图3实施例所描述的视频解码方法。具体用于执行:
接收码流数据,所述码流数据包括待解码块的预测块的标识,以及所述待解码块与所述预测块之间的残差;
根据所述预测块的标识从缓存列表中选择所述待解码块的预测块;其中,所述缓存列表包括至少两帧图像中的图像块;
根据所述预测块和所述残差确定所述待解码块。
在一种可能的实现方式中,处理器602具体用于:若所述码流数据中不包括所述编码块的预测块的标识,则解码得到所述待编码的重构图像块;将所述重建图像块保存到缓存列表中。
在一种可能的实现方式中,待编码块属于第一帧图像,所述至少两帧图像包括所述第一帧图像。
请参见图7,图7是本申请实施例提供的一种板卡700的结构示意图。从图3可以看出,该板卡包括用于存储数据的存储器件704,其包括一个或多个存储单元710。该存储器件可以通过例如总线等方式与控制器件708和上文所述的芯片702进行连接和数据传输。进一步,该板卡还包括对外接口装置706,其配置用于芯片(或芯片封装结构中的芯片)与外部设备76(例如服务器或计算机等)之间的数据中继或转接功能。例如,待处理的数据可以由外部设备通过对外接口装置传递至芯片。又例如,所述芯片的计算结果可以经由所述对外接口装置传送回外部设备。根据不同的应用场景,所述对外接口装置可以具有不同的接口形式,例如其可以采用标准PCIE接口等。
芯片702可以是一种系统级芯片(System on Chip,SoC),并且集成有一个或多个如图6中所示的组合处理装置。该芯片可以通过对外接口装置(如图7中示出的对外接口装置706)与其他相关部件相连接。该相关部件可以例如是摄像头、显示器、鼠标、键盘、网卡或wifi接口。在一些应用场景中,该芯片上可以集成有其他处理单元(例如视频编解码器)和/或接口模块(例如DRAM接口)等。
在一个或多个实施例中,本披露板卡中的控制器件可以配置用于对所述芯片的状态进行调控。为此,在一个应用场景中,该控制器件可以包括单片机(Micro ControllerUnit,MCU),以用于对所述芯片的工作状态进行调控。
根据上述结合图6和图7的描述,本领域技术人员可以理解本披露也公开了一种电子设备或装置,其可以包括一个或多个上述板卡、一个或多个上述芯片和/或一个或多个上述组合处理装置。
根据不同的应用场景,本披露的电子设备或装置可以包括服务器、云端服务器、服务器集群、数据处理装置、机器人、电脑、打印机、扫描仪、平板电脑、智能终端、PC设备、物联网终端、移动终端、手机、行车记录仪、导航仪、传感器、摄像头、相机、摄像机、投影仪、手表、耳机、移动存储、可穿戴设备、视觉终端、自动驾驶终端、交通工具、家用电器、和/或医疗设备。所述交通工具包括飞机、轮船和/或车辆;所述家用电器包括电视、空调、微波炉、冰箱、电饭煲、加湿器、洗衣机、电灯、燃气灶、油烟机;所述医疗设备包括核磁共振仪、B超仪和/或心电图仪。本披露的电子设备或装置还可以被应用于互联网、物联网、数据中心、能源、交通、公共管理、制造、教育、电网、电信、金融、零售、工地、医疗等领域。进一步,本披露的电子设备或装置还可以用于云端、边缘端、终端等与人工智能、大数据和/或云计算相关的应用场景中。在一个或多个实施例中,根据本披露方案的算力高的电子设备或装置可以应用于云端设备(例如云端服务器),而功耗小的电子设备或装置可以应用于终端设备和/或边缘端设备(例如智能手机或摄像头)。在一个或多个实施例中,云端设备的硬件信息和终端设备和/或边缘端设备的硬件信息相互兼容,从而可以根据终端设备和/或边缘端设备的硬件信息,从云端设备的硬件资源中匹配出合适的硬件资源来模拟终端设备和/或边缘端设备的硬件资源,以便完成端云一体或云边端一体的统一管理、调度和协同工作。
需要说明的是,为了简明的目的,本披露将一些方法及其实施例表述为一系列的动作及其组合,但是本领域技术人员可以理解本披露的方案并不受所描述的动作的顺序限制。因此,依据本披露的公开或教导,本领域技术人员可以理解其中的某些步骤可以采用其他顺序来执行或者同时执行。进一步,本领域技术人员可以理解本披露所描述的实施例可以视为可选实施例,即其中所涉及的动作或模块对于本披露某个或某些方案的实现并不一定是必需的。另外,根据方案的不同,本披露对一些实施例的描述也各有侧重。鉴于此,本领域技术人员可以理解本披露某个实施例中没有详述的部分,也可以参见其他实施例的相关描述。
在具体实现方面,基于本披露的公开和教导,本领域技术人员可以理解本披露所公开的若干实施例也可以通过本文未公开的其他方式来实现。例如,就前文所述的电子设备或装置实施例中的各个单元来说,本文在考虑了逻辑功能的基础上对其进行划分,而实际实现时也可以有另外的划分方式。又例如,可以将多个单元或组件结合或者集成到另一个系统,或者对单元或组件中的一些特征或功能进行选择性地禁用。就不同单元或组件之间的连接关系而言,前文结合附图所讨论的连接可以是单元或组件之间的直接或间接耦合。在一些场景中,前述的直接或间接耦合涉及利用接口的通信连接,其中通信接口可以支持电性、光学、声学、磁性或其它形式的信号传输。
在本披露中,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元示出的部件可以是或者也可以不是物理单元。前述部件或单元可以位于同一位置或者分布到多个网络单元上。另外,根据实际的需要,可以选择其中的部分或者全部单元来实现本披露实施例所述方案的目的。另外,在一些场景中,本披露实施例中的多个单元可以集成于一个单元中或者各个单元物理上单独存在。
在一些实现场景中,上述集成的单元可以采用软件程序模块的形式来实现。如果以软件程序模块的形式实现并作为独立的产品销售或使用时,所述集成的单元可以存储在计算机可读取存储器中。基于此,当本披露的方案以软件产品(例如计算机可读存储介质)的形式体现时,该软件产品可以存储在存储器中,其可以包括若干指令用以使得计算机设备(例如个人计算机、服务器或者网络设备等)执行本披露实施例所述方法的部分或全部步骤。前述的存储器可以包括但不限于U盘、闪存盘、只读存储器(Read Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
在另外一些实现场景中,上述集成的单元也可以采用硬件的形式实现,即为具体的硬件电路,其可以包括数字电路和/或模拟电路等。电路的硬件结构的物理实现可以包括但不限于物理器件,而物理器件可以包括但不限于晶体管或忆阻器等器件。鉴于此,本文所述的各类装置(例如计算装置或其他处理装置)可以通过适当的硬件处理器来实现,例如CPU、GPU、FPGA、DSP和ASIC等。进一步,前述的所述存储单元或存储装置可以是任意适当的存储介质(包括磁存储介质或磁光存储介质等),其例如可以是可变电阻式存储器(Resistive Random Access Memory,RRAM)、动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)、静态随机存取存储器(Static Random Access Memory,SRAM)、增强动态随机存取存储器(Enhanced Dynamic Random Access Memory,EDRAM)、高带宽存储器(High Bandwidth Memory,HBM)、混合存储器立方体(Hybrid Memory Cube,HMC)、ROM和RAM等。
虽然本文已经示出和描述了本披露的多个实施例,但对于本领域技术人员显而易见的是,这样的实施例只是以示例的方式来提供。本领域技术人员可以在不偏离本披露思想和精神的情况下想到许多更改、改变和替代的方式。应当理解的是在实践本披露的过程中,可以采用对本文所描述的本披露实施例的各种替代方案。所附权利要求书旨在限定本披露的保护范围,并因此覆盖这些权利要求范围内的等同或替代方案。

Claims (12)

1.一种屏幕编码方法,其特征在于,包括:
获取待编码块;
从缓存列表中选择所述待编码块的预测块;其中,所述缓存列表包括至少两帧图像中的图像块;
输出码流数据,其中,所述码流数据包括所述预测块与所述待编码块的残差,以及所述预测块的标识。
2.根据权利要求1所述的方法,其特征在于,所述获取待编码块之后,所从缓存列表中选择所述待编码块的预测块之前,还包括:
将所述缓存列表中的图像块与所述待编码块进行匹配判断,得到判断结果。
3.根据权利要求2所述的方法,其特征在于,在所述判断结果为匹配相似的情况下,从缓存列表中选择所述待编码块的预测块。
4.根据权利要求2所述的方法,其特征在于,在所述判断结果为匹配不相似的情况下,获取所述待编码块的重构图像块,将所述重构图像块保存到所述缓存列表中。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述待编码块属于第一帧图像,所述至少两帧图像包括所述第一帧图像。
6.一种屏幕解码方法,其特征在于,包括:
接收码流数据,所述码流数据包括待解码块的预测块的标识,以及所述待解码块与所述预测块之间的残差;
根据所述预测块的标识从缓存列表中选择所述待解码块的预测块;其中,所述缓存列表包括至少两帧图像中的图像块;
根据所述预测块和所述残差确定所述待解码块。
7.根据权利要求6所述的方法,其特征在于,所述接收码流数据之后,所述根据所述预测块的标识从缓存列表中选择所述待解码块的预测块之前,还包括:
若所述码流数据中不包括所述编码块的预测块的标识,则解码得到所述待编码的重构图像块;
将所述重建图像块保存到缓存列表中。
8.根据权利要求6或7所述的方法,其特征在于,所述待编码块属于第一帧图像,所述至少两帧图像包括所述第一帧图像。
9.一种视频编码器,其特征在于,包括:
获取单元,用于获取待编码块;
选择单元,用于从缓存列表中选择所述待编码块的预测块;其中,所述缓存列表包括至少两帧图像中的图像块;
输出单元,用于输出码流数据,其中,所述码流数据包括所述预测块与所述待编码块的残差,以及所述预测块的标识。
10.一种视频解码器,其特征在于,包括:
接收单元,用于接收码流数据,所述码流数据包括待解码块的预测块的标识,以及所述待解码块与所述预测块之间的残差;
选择单元,用于根据所述预测块的标识从缓存列表中选择所述待解码块的预测块;其中,所述缓存列表包括至少两帧图像中的图像块;
确定单元,用于根据所述预测块和所述残差确定所述待解码块。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,当所述计算机程序在一个或多个处理器上运行时,执行如权利要求1-8中任一项所述的方法。
12.一种芯片系统,其特征在于,所述芯片系统包括至少一个处理器、存储器和接口电路,所述存储器中存储有计算机程序,当所述计算机程序在一个或多个处理器上运行时,执行如权利要求1-8中任一项所述的方法。
CN202011628731.2A 2020-12-30 2020-12-30 屏幕编码方法、屏幕解码方法及相关装置 Pending CN114697666A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011628731.2A CN114697666A (zh) 2020-12-30 2020-12-30 屏幕编码方法、屏幕解码方法及相关装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011628731.2A CN114697666A (zh) 2020-12-30 2020-12-30 屏幕编码方法、屏幕解码方法及相关装置

Publications (1)

Publication Number Publication Date
CN114697666A true CN114697666A (zh) 2022-07-01

Family

ID=82135351

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011628731.2A Pending CN114697666A (zh) 2020-12-30 2020-12-30 屏幕编码方法、屏幕解码方法及相关装置

Country Status (1)

Country Link
CN (1) CN114697666A (zh)

Similar Documents

Publication Publication Date Title
EP3861755B1 (en) Techniques and apparatus for weighted-median prediction for point-cloud attribute coding
US20200304823A1 (en) Techniques and apparatus for interframe point-cloud attribute coding
US20200304829A1 (en) Method and apparatus for interframe point cloud attribute coding
KR101741940B1 (ko) 3d 비디오 코딩을 위한 예측 파라미터 상속
EP2916543B1 (en) Method for coding/decoding depth image and coding/decoding device
WO2017071480A1 (zh) 参考帧编解码的方法与装置
CN107027032B (zh) 最后帧运动向量分区方法和装置
US11120581B2 (en) Method and apparatus for point cloud compression
US20140314141A1 (en) Video encoding method and apparatus, and video decoding method and apparatus based on signaling of sample adaptive offset parameters
US20170264904A1 (en) Intra-prediction complexity reduction using limited angular modes and refinement
US20240007680A1 (en) Techniques and apparatus for automatic roi chunking for content-aware point cloud compression using hevc tiles
KR20170056849A (ko) 비디오 인코딩 방법, 이를 수행하는 비디오 인코더 및 이를 포함하는 전자 시스템
CN107231557B (zh) 用于在视频编码中的高级帧内预测的递归块分区中的智能重排的编、解码方法及装置
CN110169068B (zh) Dc系数符号代码化方案
US20150010056A1 (en) Method and apparatus for video encoding capable of parallel entropy encoding of subregions, method and apparatus for video decoding capable of parallel entropy decoding of subregions
US20160295227A1 (en) Interlayer video encoding method using brightness compensation and device thereof, and video decoding method and device thereof
EP2983368A1 (en) Depth map encoding method and apparatus thereof, and depth map decoding method and an apparatus thereof
US11627321B2 (en) Adaptive coding of prediction modes using probability distributions
CN107079159B (zh) 基于多核系统的并行视频解码的方法和设备
WO2023132919A1 (en) Scalable framework for point cloud compression
CN111246208B (zh) 视频处理方法、装置及电子设备
CN111225214B (zh) 视频处理方法、装置及电子设备
CN112352434B (zh) 用于帧内预测的基于宽高比滤波的方法和装置
US20220337872A1 (en) Point cloud data transmission device, point cloud data transmission method, point cloud data reception device, and point cloud data reception method
CN114697666A (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