CN110798683B - 数据解码方法、装置和数据编码方法、装置 - Google Patents

数据解码方法、装置和数据编码方法、装置 Download PDF

Info

Publication number
CN110798683B
CN110798683B CN201910792449.9A CN201910792449A CN110798683B CN 110798683 B CN110798683 B CN 110798683B CN 201910792449 A CN201910792449 A CN 201910792449A CN 110798683 B CN110798683 B CN 110798683B
Authority
CN
China
Prior art keywords
coding mode
coding
unit
restriction type
intra
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
CN201910792449.9A
Other languages
English (en)
Other versions
CN110798683A (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202210514948.3A priority Critical patent/CN114979630A/zh
Priority to CN201910792449.9A priority patent/CN110798683B/zh
Publication of CN110798683A publication Critical patent/CN110798683A/zh
Priority to EP20856921.0A priority patent/EP3955570A4/en
Priority to PCT/CN2020/111246 priority patent/WO2021037041A1/zh
Priority to US17/470,636 priority patent/US11949853B2/en
Application granted granted Critical
Publication of CN110798683B publication Critical patent/CN110798683B/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
    • 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/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/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/124Quantisation
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame 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/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/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • 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
    • 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/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Abstract

本申请涉及一种数据解码方法、装置、计算机可读存储介质和计算机设备,该方法包括:获取当前待解码单元对应的编码数据;从编码数据中解码得到当前待解码单元对应的编码模式限制类型;根据编码模式限制类型确定当前待解码单元对应的候选编码模式集合,候选编码模式集合至少包括帧内块复制编码模式;根据从候选编码模式集合中选定的目标编码模式对当前待解码单元进行解码,得到对应的解码数据。本申请提供的方案能够提高解码数据的准确性。此外,还提供了一种数据编码方法、装置、计算机可读存储介质和计算机设备。

Description

数据解码方法、装置和数据编码方法、装置
技术领域
本申请涉及计算机技术领域,特别是涉及一种数据解码方法、装置、计算机可读存储介质和计算机设备,以及一种数据编码方法、装置、计算机可读存储介质和计算机设备。
背景技术
随着数字媒体技术和计算机技术的发展,视频应用于各个领域,如移动通信、网络监控、网络电视等。随着硬件性能和屏幕分辨率的提高,用户对高清视频的需求日益强烈。
目前的编码器对当前编码单元编码时,存在编码模式的限制,当前编码单元只能全部使用帧内编码模式或者只能全部使用帧间编码模式,而且需要根据编码模式的限制类型频繁切换编码模式。这种编码模式的限制容易导致解码出来的解码图像单元存在质量差的情况。
发明内容
基于此,有必要针对上述技术问题,提供一种数据解码方法、装置、计算机可读存储介质和计算机设备,以及一种数据编码方法、装置、计算机可读存储介质和计算机设备,在编码单元进行编码时,能够灵活选择编码模式限制类型,编码模式限制类型对应的候选编码模式不限于一种,且候选编码模式中包括帧内块复制编码模式,因此从至少一种候选编码模式中确定编码单元对应的目标编码模式的选择范围更大了,在目标编码模式下进行编码,能够得到准确的编码数据。此外,在待解码单元解码时,能够灵活地根据目标编码模式进行解码,能够得到准确的待解码单元对应的解码数据。
一种数据解码方法,包括:
获取当前待解码单元对应的编码数据;
从编码数据中解码得到当前待解码单元对应的编码模式限制类型;
根据编码模式限制类型确定当前待解码单元对应的候选编码模式集合,候选编码模式集合至少包括帧内块复制编码模式;
根据从候选编码模式集合中选定的目标编码模式对当前待解码单元进行解码,得到对应的解码数据。
一种数据解码装置,该装置包括:
编码数据获取模块,用于获取当前待解码单元对应的编码数据;
编码数据解析模块,用于从编码数据中解码得到当前待解码单元对应的编码模式限制类型;
目标编码模式确定模块,用于根据编码模式限制类型确定当前待解码单元对应的候选编码模式集合,候选编码模式集合至少包括帧内块复制编码模式;
解码数据生成模块,用于根据从候选编码模式集合中选定的目标编码模式对当前待解码单元进行解码,得到对应的解码数据。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,该处理器执行所述程序时实现以下步骤:
获取当前待解码单元对应的编码数据;
从编码数据中解码得到当前待解码单元对应的编码模式限制类型;
根据编码模式限制类型确定当前待解码单元对应的候选编码模式集合,候选编码模式集合至少包括帧内块复制编码模式;
根据从候选编码模式集合中选定的目标编码模式对当前待解码单元进行解码,得到对应的解码数据。
一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:
获取当前待解码单元对应的编码数据;
从编码数据中解码得到当前待解码单元对应的编码模式限制类型;
根据编码模式限制类型确定当前待解码单元对应的候选编码模式集合,候选编码模式集合至少包括帧内块复制编码模式;
根据从候选编码模式集合中选定的目标编码模式对当前待解码单元进行解码,得到对应的解码数据。
上述数据解码方法、装置、计算机可读存储介质和计算机设备,获取当前待解码单元对应的编码数据,从编码数据中解析得到当前待解码单元对应的编码模式限制类型,根据编码模式限制类型确定当前待解码单元对应的目标编码模式,目标编码模式为候选编码模式中的一种,候选编码模式包括帧内块复制编码模式,根据目标编码模式对当前待解码单元进行解码,得到对应的解码数据。因此进行解码时,在编码模式限制类型下,灵活地根据目标编码模式进行解码,能够得到准确的待解码单元对应的解码数据。
一种数据编码方法,包括:
获取当前编码单元;
获取当前编码单元对应的编码模式限制类型,编码模式限制类型对应的候选编码模式集合包括帧内块复制编码模式;
根据编码模式限制类型对当前编码单元进行编码,从候选编码模式集合确定当前编码单元对应的目标编码模式,根据目标编码模式得到当前编码单元对应的编码数据。
在其中一个实施例中,当编码模式限制类型为帧内编码模式限制类型时,帧内编码模式限制类型对应的候选编码模式包括帧内块复制编码模式和标准帧内编码模式。
在其中一个实施例中,当帧内编码模式限制类型包括帧内块复制编码模式时,帧间编码模式限制类型对应的候选编码模式不包括帧内块复制编码模式。
在其中一个实施例中,当编码模式限制类型为帧间编码模式限制类型时,帧间编码模式限制类型对应的候选编码模式包括帧内块复制编码模式和标准帧间编码模式。
在其中一个实施例中,当帧间编码模式限制类型包括帧内块复制编码模式时,帧内编码模式限制类型对应的候选编码模式不包括帧内块复制编码模式。
在其中一个实施例中,当编码模式限制类型为帧内块复制编码模式限制类型时,帧内块复制编码模式限制类型对应的候选编码模式只包括帧内块复制编码模式。
在其中一个实施例中,编码模式限制类型还包括标准帧内编码模式限制类型,标准帧内编码模式限制类型对应的候选编码模式只包括标准帧内编码模式。
在其中一个实施例中,编码模式限制类型还包括标准帧间编码模式限制类型,标准帧间编码模式限制类型对应的候选编码模式只包括标准帧间编码模式。
一种数据编码装置,该装置包括:
当前编码单元获取模块,用于获取当前编码单元;
编码模式限制类型获取模块,用于获取当前编码单元对应的编码模式限制类型,编码模式限制类型对应的候选编码模式集合包括帧内块复制编码模式;
当前编码单元编码模块,用于根据编码模式限制类型对当前编码单元进行编码,从候选编码模式集合确定当前编码单元对应的目标编码模式,根据目标编码模式得到当前编码单元对应的编码数据。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,该处理器执行所述程序时实现以下步骤:
获取当前编码单元;
获取当前编码单元对应的编码模式限制类型,编码模式限制类型对应的候选编码模式集合包括帧内块复制编码模式;
根据编码模式限制类型对当前编码单元进行编码,从候选编码模式集合确定当前编码单元对应的目标编码模式,根据目标编码模式得到当前编码单元对应的编码数据。
一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:
获取当前编码单元;
获取当前编码单元对应的编码模式限制类型,编码模式限制类型对应的候选编码模式集合包括帧内块复制编码模式;
根据编码模式限制类型对当前编码单元进行编码,从候选编码模式集合确定当前编码单元对应的目标编码模式,根据目标编码模式得到当前编码单元对应的编码数据。
上述数据编码方法、装置、计算机可读存储介质和计算机设备,获取当前编码单元,获取当前编码单元对应的编码模式限制类型,编码模式限制类型对应的候选编码模式包括帧内块复制编码模式,根据编码模式限制类型对当前编码单元进行编码,从候选编码模式确定当前编码单元对应的目标编码模式,根据目标编码模式得到当前编码单元对应的编码数据。在编码单元进行编码时,能够灵活选择编码模式限制类型,编码模式限制类型对应的候选编码模式不限于一种,且候选编码模式中包括帧内块复制编码模式,因此从至少一种候选编码模式中确定编码单元对应的目标编码模式的选择范围更大了,在目标编码模式下进行编码,能够得到准确的编码数据。
附图说明
图1为一个实施例中数据解码方法或数据编码方法的应用环境图;
图2为一个实施例中数据解码方法对应的解码框架图;
图3为一个实施例中数据编码方法对应的编码框架图;
图4为一个实施例中当前编码单元的划分示意图;
图5为一个实施例中数据解码方法的流程示意图;
图5A为一个实施例中编码树单元的结构示意图;
图6为一个实施例中目标编码模式选定步骤的流程示意图;
图7为另一个实施例中目标编码模式选定步骤的流程示意图;
图8为又一个实施例中目标编码模式选定步骤的流程示意图;
图9为一个实施例中解码数据解码步骤的流程示意图;
图10为一个实施例中数据编码方法的流程示意图;
图11为另一个实施例中数据编码方法的流程示意图;
图12为一个实施例中编码数据生成步骤的流程示意图;
图13为一个实施例中数据解码装置的结构框图;
图14为另一个实施例中目标编码模式选定模块的结构框图;
图15为一个实施例中解码数据生成模块的结构框图;
图16为一个实施例中数据编码装置的结构框图;
图17为另一个实施例中数据编码装置的结构框图;
图18为一个实施例中计算机设备的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但除非特别说明,这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本申请的范围的情况下,可以将第一标志位称为第二标志位,且类似地,可将第二标志位称为第一标志位。
图1为一个实施例中数据解码方法的应用环境图。参照图1,该数据解码方法应用于数据解码系统。该数据解码系统包括终端110和服务器120。终端110和服务器120通过网络连接。终端110具体可以是台式终端或移动终端,移动终端具体可以手机、平板电脑、笔记本电脑等中的至少一种。服务器120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在另一个实施例中,图1还可以为一个实施例中数据编码方法的应用环境图,数据编码方法应用于数据编码系统。该数据编码系统同样包括终端110和服务器120。
数据解码方法和数据编码方法可以在终端110或服务器120中完成,终端110可将编码单元采用本申请实施例提供的数据编码方法进行编码后,将编码数据发送至服务器120,也可以从服务器120接收编码数据进行解码后得到解码图像单元。服务器120可对编码单元进行编码,此时数据编码方法在服务器120完成,如果服务器120需要对编码数据进行解码,则数据解码方法在服务器120完成。当然,服务器120也可以在接收终端110发送的编码数据后,发送到对应的接收终端中,由接收终端进行解码。
图2为一个实施例中提供的数据解码方法对应的解码框架图,本申请实施例提供的数据解码方法可以通过编码数据获取单元200获取一个或多个已编码单元对应的编码数据,通过编码数据解析单元202对接收到的编码数据进行解析得到编码模式限制类型,再通过编码数据解析单元202根据编码模式限制类型确定对应的目标编码模式,之后,再通过编码数据解析单元202对编码数据进行解析得到块矢量信息和残差信息。熵解码单元204对残差信息进行熵解码后,得到熵解码数据,反量化单元206对熵解码数据进行反量化,得到反量化数据,反变换单元208对反量化数据进行反变换,得到空域残差信息。预测单元210根据块矢量信息确定对应的预测信息,具体可以是获取当前矢量信息,根据当前矢量信息和块矢量信息确定参考块位置,根据参考块位置确定预测信息。重建单元212根据空域残差信息和预测信息进行重建,得到重建图像单元。播放存储单元可以对重建得到的图像单元进行播放或者存储,或者进行播放以及存储。
图3为一个实施例中提供的数据编码方法对应的编码框架图,本申请实施例提供的数据编码方法可以通过编码单元获取单元300获取当前编码单元,在决策单元302处,可以对当前编码单元的编码模式限制类型进行决策,得到当前编码单元对应的编码模式限制类型。在处理单元304处,根据编码模式限制类型对当前编码单元进行编码,从编码模式限制类型对应的候选编码模式中确定当前编码单元对应的目标编码模式,根据目标编码模式得到当前编码单元对应的编码数据。最后,通过存储发送单元306存储或者发送编码数据,或者存储并发送编码数据。
可以理解,上述的编码框架图、解码框架图仅是一种示例,并不构成对本申请方案所应用于的数据编码方法或者数据解码方法的限定,具体的编码框架图以及解码框架图可以包括比图中所示更多或更少的单元,或者组合某些单元,或者具有不同的部件单元不知。例如,还可以对解码图像单元进行环路滤波,降低解码图像单元的方块效应,以提高视频质量。
可以将当前编码单元划分为多个子编码单元,子编码单元的大小可以根据需要进行设置或者计算得到。例如子编码单元的大小可以均为8*8像素。或者可以通过计算各种子编码单元的划分方式对应的率失真代价,选择率失真代价小的划分方式进行子编码单元的划分。如图4所示为一个64*64像素当前编码单元的划分示意图,一个方块代表一个子编码单元。由图4可知,子编码单元的大小可以包括32*32像素、16*16像素、8*8像素以及4*4像素。当然,子编码单元的大小也可是其他大小,例如可以是32*16像素或者是64*64像素。可以理解,在解码时,由于子编码单元与待解码单元是一一对应的,因此待解码单元的像素大小也可以包括32*32像素、16*16像素、8*8像素以及4*4像素等。
如图5所示,在一个实施例中,提供了一种数据解码方法。本实施例主要以该方法应用于上述图1中的终端110或服务器120来举例说明。参照图5,该数据解码方法具体包括如下步骤:
步骤502,获取当前待解码单元对应的编码数据。
其中,当前待解码单元是指目前进行解码的解码单元,解码单元与编码单元相对应。编码单元(CodingUnit,CU)是编码树单元(Coding Tree Unit,CTU)的子块,即编码单元是构成编码树单元的单元,而编码树单元是一种四叉或者二叉树划分的结构,并且是一层层递归下去划分的。最终,一个编码树单元CTU可以由若干个编码单元组成。如图5A所示,图5A示出一个实施例中编码树单元的结构示意图,图5A中每一个最终的叶子节点中的小块,就是一个编码单元,编码树单元就是各个编码单元所构成的整个集合(整个大块)。图5A中最大的块的像素尺寸是16*32,但是一般来说,编码树单元的像素尺寸是是64*64或128*128,应当说明的是,图5A示出的图片仅供理解编码树单元的树状划分结构。其中,图5A中的数字表示这个节点是否继续做分割,若此节点会继续分割则为1,若不继续分割则为0。而编码可以包括预测、变换、量化以及熵编码中的至少一个,编码数据是对编码单元进行编码得到的数据,当前编码单元在进行编码时,最后会生成编码数据。这里的当前编码单元是指目前进行编码的编码单元,编码过程可以是先获取当前编码单元,决策当前编码单元对应的编码模式限制类型,编码模式限制类型都存在对应的候选编码模式,再根据决策出来的编码模式限制类型确定当前编码单元对应的编码模式标志位信息,根据编码模式限制类型和标识位信息确定当前编码单元对应的目标编码模式,最后根据目标编码模式得到编码数据。即,编码数据中包括但不限于编码模式限制类型、目标编码模式对应的语法元素。
步骤504,从编码数据中解码得到当前待解码单元对应的编码模式限制类型。
其中,编码数据可以携带编码模式限制类型,这里的编码模式限制类型是指编码模式限制的种类,编码模式限制类型是用来限制编码单元的编码模式是否会被限制为特定的编码模式,编码模式限制类型都存在对应的候选编码模式,即解析当前待解码单元对应的编码数据得到对应的编码模式限制类型后,该当前待解码单元的编码模式只能是该编码模式限制类型对应的候选编码模式中的至少一个。其中,数据解码过程,编码端已经决策出编码数据中携带编码模式限制类型了,解码端只需要解析得到编码数据中携带的编码模式限制类型。
在一个实施例中,在数据编码过程,编码模式限制类型可以决策出是帧内编码模式限制类型、帧间编码模式限制类型、帧内块复制编码模式限制类型,帧内编码模式限制类型对应的候选编码模式为标准帧内编码模式、帧内块复制编码模式,帧间编码模式限制类型对应的候选编码模式为标准帧间编码模式,帧内块复制编码模式限制类型对应的候选编码模式为帧内块复制编码模式。这里的标准帧内编码模式是指现有技术的帧内编码模式,同样地,标准帧间编码模式是指现有技术的帧间编码模式,而帧内块复制编码模式是与标准帧间编码模式类似,但是不同的是标准帧间编码模式的参考块信息是来自参考帧,而帧内块复制编码模式的参考块信息是来自于当前帧。
具体地,可以在编码数据中加入用来描述编码模式限制类型的标志位root_cu_mode,即在编码数据中加入了描述编码模式限制类型的语法元素,而编码模式限制类型的标志位对应的值可以设置为编码模式限制类型对应的名称,如编码模式限制类型为帧内编码模式限制类型,则编码数据中的语法为:root_cu_mode=‘PRED_Intra_only’。
进一步地,编码过程,确定编码模式限制类型后,因为编码模式限制类型对应的候选编码模式中增加了帧内块复制编码模式,所以需要添加标志位,进一步通过标志位对应的标志位值来确定对应的目标编码模式。其中,当编码模式限制类型对应的候选编码模式仅可能是帧内块复制编码模式时,则无需添加标志位,可直接确定对应的目标编码模式为帧内块复制编码模式。
例如,当编码模式限制类型为帧内编码模式限制类型时,候选编码模式为标准帧内编码模式、帧内块复制编码模式,因此可在编码数据中加入ibc_flag,ibc_flag是帧内块复制编码模式标志位信息,由于编码模式限制类型为帧内编码模式限制类型,且帧内编码模式限制类型中包括帧内块复制编码模式,则需要在编码数据中加入ibc_flag,但是当帧内编码模式限制类型中的编码模式为标准帧内编码模式时,ibc_flag=0,而当帧内编码模式限制类型中的编码模式为帧内块复制编码模式时,ibc_flag=1。而当编码模式限制类型为帧间编码模式限制类型时,帧间编码模式限制类型为标准帧间编码模式,则编码数据中的语法为:root_cu_mode=‘PRED_Inter_only’,由于当前编码单元的编码模式限制类型为帧间编码模式限制类型,则当前编码单元仅可能是标准帧间编码模式,则无需在编码数据中加入帧内块复制标志位信息ibc_flag,直接加入标准帧间编码模式对应的语法元素,如skip_flag会被加入至编码数据中。
进而,编码模式限制类型为帧内块复制编码模式限制类型时,当前编码单元的编码模式仅可能是帧内块复制编码模式,因此不需要传输和解码帧内块复制标志位信息ibc_flag。此时,编码数据中的语法为:root_cu_mode=‘PRED_Ibc_only’。
在本实施例中,编码模式限制类型还可以是标准帧内编码模式限制类型,标准帧内编码模式限制类型的编码模式仅可能是标准帧内编码模式,因此也无需将ibc_flag作为语法元素加入至编码数据中。在另一个实施例中,在数据编码过程,编码模式限制类型可以决策出是帧内编码模式限制类型、帧间编码模式限制类型、帧内块复制编码模式限制类型,帧内编码模式限制类型对应的候选编码模式为标准帧内编码模式,帧间编码模式限制类型对应的候选编码模式为标准帧间编码模式、帧内块复制编码模式,帧内块复制编码模式限制类型对应的候选编码模式为帧内块复制编码模式。
具体地,当编码模式限制类型为帧内编码模式限制类型时,因为此时当前编码单元的编码模式仅可能是标准帧内编码模式,因此无需传输帧内块复制标志位信息ibc_flag,直接加入标准帧内编码模式对应的语法元素至编码数据中。
当编码模式限制类型为帧间编码模式限制类型时,因此此时当前编码单元的编码模式可能是标准帧间编码模式、帧内块复制编码模式,因此需要传输帧内块复制标识为信息ibc_flag,具体通过ibc_flag对应的值来区分标准帧间编码模式和帧内块复制编码模式,如ibc_flag=0为标准帧间编码模式、ibc_flag=1为帧内块复制编码模式。
而当编码模式限制类型为帧内块复制编码模式限制类型时,当前编码单元的编码模式仅可能是帧内块复制编码模式,因此不需要传输和解码帧内块复制标志位信息ibc_flag。在本实施例中,编码模式限制类型还可以是标准帧间编码模式限制类型,标准帧间编码模式限制类型的编码模式仅可能是标准帧间编码模式,因此也无需将ibc_flag作为语法元素加入至编码数据中。
因此,在数据解码过程中,获取到当前待解码单元对应的编码数据,可以对编码数据进行解析得到编码数据中的编码模式限制类型。具体可以是通过解码器对编码数据中的语法进行解析得到的,如编码数据中的语法为:root_cu_mode=‘PRED_Inter_only’,则解码器解析得到的编码模式限制类型为帧间编码模式限制类型。
在又一个实施例中,在编码数据处理过程,编码模式限制类型可以决策出帧内编码模式限制类型、帧间编码模式限制类型、帧内块复制编码模式限制类型,帧内编码模式限制类型、帧间编码模式限制类型、帧内块复制编码模式限制类型是相互独立的,帧内编码模式限制类型对应的候选编码模式为标准帧内编码模式、帧间编码模式限制类型对应的候选编码模式为标准帧间编码模式、帧内块复制编码模式限制类型对应的候选编码模式为帧内块复制编码模式。在这种情况下,编码过程中,无需加入标志位,如帧内块复制编码模式标志位信息ibc_flag。因此在解码过程中,也无需读取标志位。
在一个实施例中,在编码数据处理过程中,编码模式限制类型最终决策的数量可以由硬件厂商决定,本申请中举例的编码模式限制类型的具体数量并不作为本申请限制的范围。例如,在一些实施例中,编码模式限制类型可以是2种,具体可以是帧内编码模式限制类型与帧间编码模式限制类型的组合,或者是帧内编码模式限制类型和帧间编码模式限制类型其中之一与帧内块复制编码模式限制类型的组合,等等。
步骤506,根据编码模式限制类型确定当前待解码单元对应的候选编码模式集合,候选编码模式集合至少包括帧内块复制编码模式。
具体地,对解析编码数据得到的编码模式限制类型后,根据编码模式限制类型确定是否需要读取帧内块复制编码模式相关的编码模式标志位,如果需要读取,则读取到帧内块复制编码模式相关的编码模式标志位后,再根据编码模式标志位确定候选编码模式集合。其中,候选编码模式集合至少包括帧内块编码模式,候选编码模式集合还可以包括标准帧内编码模式、标准帧间编码模式中的一种。例如,当编码模式限制类型为帧内编码模式限制类型时,对应的候选编码模式集合包括帧内块复制编码模式和标准帧内编码模式。或者,又例如,当编码模式限制类型为帧间编码模式限制类型时,对应的候选编码模式集合包括帧内块复制编码模式和标准帧间编码模式。
进一步地,再根据编码模式标志位对应的值从候选编码模式集合中选定目标编码模式。其中,如果不需要读取编码模式标志位,则可直接确定目标编码模式。其中,帧内块复制编码模式相关的标志位可以是帧内块复制编码模式标志位信息ibc_flag。例如,解析编码数据得到的编码模式限制类型为帧内编码模式限制类型,root_cu_mode=‘PRED_Intra_only’,再确定是否需要从编码数据中读取帧内块复制编码模式相关的标志位ibc_flag,若不需要读取ibc_flag,则可直接确定该帧内编码模式限制类型对应的编码模式仅可能是标准帧内编码模式,则当前待解码单元对应的目标编码模式为标准帧内编码模式。若需要读取ibc_flag,说明该帧内编码模式限制类型对应的编码模式可能是标准帧内编码模式或者是帧内块复制编码模式,再进一步读取标志位ibc_flag的值确定目标编码模式,如ibc_flag的值为0,则目标编码模式为标准帧内编码模式,ibc_flag的值为1,则目标编码模式为帧内块复制编码模式。
又例如,解析编码数据得到的编码模式限制类型为帧内块复制编码模式限制类型,root_cu_mode=‘PRED_Ibc_only’,由于预先已知帧内块复制编码模式限制类型对应的编码模式仅可能是帧内块复制编码模式,则不需要去读取帧内块复制编码模式相关的标志位ibc_flag,因此可直接确定当前待解码单元对应的目标编码模式仅可能是帧内块复制编码模式。
步骤508,根据从候选编码模式集合中选定的目标编码模式对当前待解码单元进行解码,得到对应的解码数据。
具体地,在确定当前待解码单元对应的目标编码模式后,根据目标编码模式对当前待解码单元进行解码,具体可以是根据目标编码模式对应的解码方式对当前待解码单元进行解码,得到对应的解码数据。解码可以包括预测、反变换、反量化以及熵解码中的至少一个,具体可根据编码的过程确定。
在一个实施例中,当目标编码模式为帧内块复制编码模式时,首先,对编码数据进行解析得到块矢量信息和残差信息。紧接着,再对残差信息进行熵解码,得到熵解码数据。再对熵解码数据进行反量化,得到反量化数据,进一步对反量化数据进行反变换,得到空域残差信息。进一步,根据块矢量信息确定对应的预测信息,具体可以是获取当前矢量信息,根据当前矢量信息和块矢量信息确定参考块位置,根据参考块位置确定预测信息。最后,根据空域残差信息和预测信息进行重建,得到重建图像单元,从而得到解码数据。进一步地,在得到重建图像单元后,为了重建图像单元的质量,可以对重建图像单元进行进一步处理,如采样处理,采样处理可以是上采样处理,进而得到最后的图像单元。
上述数据解码方法,获取当前待解码单元对应的编码数据,从编码数据中解析得到当前待解码单元对应的编码模式限制类型,根据编码模式限制类型确定当前待解码单元对应的目标编码模式,目标编码模式为候选编码模式中的一种,候选编码模式包括帧内块复制编码模式,根据目标编码模式对当前待解码单元进行解码,得到对应的解码数据。因此进行解码时,在编码模式限制类型下,灵活地根据目标编码模式进行解码,能够得到准确的待解码单元对应的解码数据。
在一个实施例中,如图6所示,目标编码模式的选定步骤,包括:
步骤602,从编码数据中解码得到当前待解码单元对应的编码模式标志位信息。
其中,这里的编码模式标志位信息是指与帧内块复制编码模式相关的标志位,即编码数据中加入了用来描述帧内块复制编码模式的语法元素,进一步还可以根据编码模式标志位信息对应的值来确定当前待解码单元对应的目标编码模式。
具体地,可以通过解码器对编码数据进行解析,得到当前待解码单元对应的编码模式限制类型后,根据编码模式限制类型确定是否需要读取帧内块复制编码模式相关的编码模式标志位信息,如果需要读取,则读取当前待解码单元对应的编码模式标志位信息,如ibc_flag。
其中,帧内块复制编码模式标志位信息ibc_flag是编码模式限制类型对应的候选编码模式包括帧内块复制编码模式的前提下,才存在帧内块复制编码模式标志位信息ibc_flag,进一步可根据ibc_flag对应的值确定当前待解码单元对应的目标编码模式,如解析得到ibc_flag=1,则当前待解码单元对应的目标编码模式为帧内块复制编码模式。
而编码过程中,编码模式限制类型为帧内块复制编码模式限制类型时,由于帧内块复制编码模式限制类型对应的编码模式仅可能是帧内块复制编码模式,则无需在编码数据中加入帧内块复制编码模式标志位信息ibc_flag,因此解码得到的编码模式限制类型为帧内块复制编码模式限制类型时,则无需读取帧内块复制编码模式相关的编码模式标志位信息ibc_flag。
在一个实施例中,编码数据中的语法为:
root_cu_mode=‘PRED_Intra_only’;
ibc_flag=1;
具体地,解码器对编码数据进行解码得到当前待解码单元对应的编码模式限制类型是帧内编码模式限制类型,又因为预先已知该帧内编码模式限制类型对应的编码模式可能是标准帧内编码模式,或者是帧内块复制编码模式,因此需要去编码数据中读取帧内块复制编码模式标志位信息ibc_flag,再进一步读取帧内块复制编码模式标志位信息ibc_flag对应的值确定目标编码模式,解析出ibc_flag对应的值为1时,则可以确定当前待解码单元对应的目标编码模式为帧内块复制编码模式。
步骤604,根据编码模式限制类型和编码模式标志位信息确定当前待解码单元对应的目标编码模式。
具体地,在解析得到当前待解码单元对应的编码模式限制类型和编码模式标志位信息后,可根据编码模式标志位信息确定当前待解码单元对应的目标编码模式。具体可以是根据标识位信息对应的值确定当前待解码单元对应的目标编码模式。
在一个实施例中,编码数据中的语法为:
root_cu_mode=‘PRED_Inter_only’;
ibc_flag=0;
具体地,解码器对编码数据进行解码得到当前待解码单元对应的编码模式限制类型是帧间编码模式限制类型,又因为预先已知该帧间编码模式限制类型对应的编码模式可能是标准帧间编码模式,或者是帧内块复制编码模式,因此需要去读取帧内块复制编码模式标志位信息ibc_flag,进一步地,再读取帧内块复制编码模式标志位信息ibc_flag对应的值确定最终的目标编码模式,解析出ibc_flag为0,则可以确定当前待解码单元对应的目标编码模式为标准帧间编码模式。
在另一个实施例中,编码数据中的语法为:
root_cu_mode=‘PRED_Inter_only’;
skip_flag;
具体地,解码器对编码数据进行解码得到当前待解码单元对应的编码模式限制类型是帧间编码模式限制类型,又因为预先已知该帧间编码模式限制类型对应的编码模式仅可能是标准帧间编码模式,编码数据中不存在帧内块复制编码模式标志位信息ibc_flag,因此无需读取。编码数据可以解析得到跳过模式标志位信息为skip_flag。本实施例中,skip_flag是标准帧间编码模式独有的编码模式标志位信息。
在又一个实施例中,编码数据中的语法为:
root_cu_mode=‘PRED_Ibc_only’;
具体地,解码器对编码数据进行解码得到当前待解码单元对应的编码模式限制类型为帧内块复制编码模式限制类型,因为预先已知帧内块复制编码模式限制类型对应的编码模式仅可能是帧内块复制编码模式,则不需要去读取出帧内块复制编码模式标志位信息ibc_flag,可直接确定当前待解码单元对应的目标编码模式为帧内块复制编码模式。
在一个实施例中,如图7所示,编码模式限制类型为帧内编码模式限制类型,根据编码模式限制类型和编码模式标志位信息确定当前待解码单元对应的目标编码模式,包括:
步骤702,当编码模式标志位信息对应的值为第一标志位值时,目标编码模式为标准帧内编码模式。
步骤704,当编码模式标志位信息对应的值为第二标志位值时,目标编码模式为帧内块复制编码模式。
其中,当编码模式限制类型为帧内编码模式限制类型,此时的帧内编码模式限制类型对应的候选编码模式包括标准帧内编码模式和帧内块复制编码模式。解码器对当前待解码单元对应的编码数据进行解码后,得到当前待解码单元对应的编码模式限制类型后,可根据读取当前编码数据中的编码模式标志位信息对应的值确定目标编码模式,目标编码模式为编码模式限制类型对应的候选编码模式中的一个。具体可以是,根据解码器解析出来的编码模式标志位信息对应的标志位值确定目标编码模式。
例如,解码器解析编码数据中root_cu_mode这个语法元素,可以得知编码模式限制类型,读取到编码数据中的ibc_flag这个语法元素,可以得知编码模式限制类型包括帧内块复制编码模式,再通过读取ibc_flag这个语法元素对应的标志位值确定编码模式是帧内块复制编码模式还是标准帧内编码模式。
其中,这里的第一标志位值和第二标志位值都是编码模式标志位信息对应的值,用来从编码模式限制类型对应的候选编码模式中确定目标编码模式。这里的第一标志位值可以用来确定目标编码模式为标准帧内编码模式,即当解码器读取出编码模式标志位信息对应的值为第一标志位值时,则目标编码模式为标准帧内编码模式。而第二标志位值可以用来确定目标编码模式为帧内块复制编码模式,即当解码器读取出编码模式标志位信息对应的值为第二标志位值时,则目标编码模式为帧内块复制编码模式,其中第一标志位值和第二标志位值具体可根据实际需要进行设置。
例如,编码模式标志位信息为帧内块复制编码模式标志位信息ibc_flag,第一标志位值可以设置为0来表示编码模式为标准帧内编码模式,则编码数据中的语法为:ibc_flag=0,则解码器解析得到当前待解码单元的编码模式限制类型为帧内编码模式限制类型,且目标编码模式为标准帧内编码模式。同样地,第二标志位值可以设置为1来表示编码模式为帧内块复制编码模式,则编码数据中的语法为:ibc_flag=1,则解码器解析得到当前待解码单元的编码模式限制类型为帧内编码模式限制类型,且目标编码模式为帧内块复制编码模式。
在一个实施例中,编码过程中,编码数据中的语法设置为:root_cu_mode=‘PRED_Intra_only’,ibc_flag=0,则解码器对编码数据解码得到的编码模式限制类型为帧内编码模式限制类型,且该帧内编码模式限制类型的候选编码模式包括帧内块复制编码模式,但是由于解析得到帧内块复制编码模式标志位信息ibc_flag对应的标志位值为0,则可确定目标编码模式为标准帧内编码模式。
同样地,若编码数据中的语法设置为:root_cu_mode=‘PRED_Intra_only’,ibc_flag=1,则解码器对编码数据解码得到的编码模式限制类型为帧内编码模式限制类型,且该帧内编码模式限制类型的候选编码模式包括帧内块复制编码模式,但是由于读取得到帧内块复制编码模式标志位信息ibc_flag对应的标志位值为1,则可确定目标编码模式为帧内块复制编码模式。
在另一个实施例中,编码数据中的语法为:root_cu_mode=‘PRED_Inter_only’,则解码器对编码数据解码得到的编码模式限制类型为帧间编码模式限制类型,且编码数据中并未解析出帧内块复制编码模式标志位信息ibc_flag,则该帧间编码模式限制类型的编码模式仅可能是标准帧间编码模式,因此可确定目标编码模式为标准帧间编码模式。
在又一个实施例中,编码数据中的语法为:root_cu_mode=‘PRED_Ibc_only’,则解码器对编码数据解码得到的编码模式限制类型为帧内块复制编码模式限制类型,虽然编码数据中并未解析出帧内块复制编码模式标志位信息ibc_flag,但是由于帧内块复制编码模式限制类型仅可能是帧内块复制编码模式,因此可确定目标编码模式为帧内块复制编码模式。在再一个实施例中,编码数据中的语法为:root_cu_mode=‘PRED_NormalIntra_only’,则解码器对编码数据解码得到的编码模式限制类型为标准帧内编码模式限制类型,且编码数据中并未解析出帧内块复制编码模式标志位信息ibc_flag,则该标准帧内编码模式限制类型的编码模式仅可能是标准帧内编码模式,因此可确定目标编码模式为标准帧内编码模式。
在一个实施例中,如图8所示,编码模式限制类型为帧间编码模式限制类型,根据编码模式限制类型和编码模式标志位信息确定当前待解码单元对应的目标编码模式,包括:
步骤802,当编码模式标志位信息对应的值为第一标志位值时,目标编码模式为标准帧间编码模式。
步骤804,当编码模式标志位信息对应的值为第二标志位值时,目标编码模式为帧内块复制编码模式。
其中,当编码模式限制类型为帧间编码模式限制类型,此时的帧间编码模式限制类型对应的候选编码模式包括标准帧间编码模式和帧内块复制编码模式。解码器对当前待解码单元对应的编码数据进行解码后,得到当前待解码单元对应的编码模式限制类型后,可根据解析当前编码数据中的编码模式标志位信息确定目标编码模式,目标编码模式为编码模式限制类型对应的候选编码模式中的一个。
具体可以是,根据解码器解析出来的编码模式标志位信息对应的标志位值确定目标编码模式,如,解码器解析编码数据中root_cu_mode这个语法元素,可以得知编码模式限制类型,解析编码数据中的ibc_flag这个语法元素,可以得知编码模式限制类型包括帧内块复制编码模式,再通过ibc_flag这个语法元素对应的标志位值确定编码模式是帧内块复制编码模式还是标准帧间编码模式。
其中,这里的第一标志位值和第二标志位值都是编码模式标志位信息对应的值,用来从编码模式限制类型对应的候选编码模式中确定目标编码模式。这里的第一标志位值可以用来确定目标编码模式为标准帧间编码模式,即当解码器解析出来编码模式标志位信息对应的值为第一标志位值时,则目标编码模式为标准帧间编码模式。而第二标志位值可以用来确定目标编码模式为帧内块复制编码模式,即当解码器解析出来编码模式标志位信息对应的值为第二标志位值时,则目标编码模式为帧内块复制编码模式,其中第一标志位值和第二标志位值具体可根据实际需要进行设置。
例如,编码模式标志位信息为帧内块复制编码模式标志位信息ibc_flag,第一标志位值可以设置为0来表示编码模式为标准帧间编码模式,则编码数据中的语法为:ibc_flag=0,则解码器解析得到当前待解码单元的编码模式限制类型为帧间编码模式限制类型,且目标编码模式为标准帧间编码模式。同样地,第二标志位值可以设置为1来表示编码模式为帧内块复制编码模式,则编码数据中的语法为:ibc_flag=1,则解码器解析得到当前待解码单元的编码模式限制类型为帧间编码模式限制类型,且目标编码模式为帧内块复制编码模式。
在一个实施例中,编码过程中,编码数据中的语法设置为:root_cu_mode=‘PRED_Inter_only’,ibc_flag=0,则解码器对编码数据解码得到的编码模式限制类型为帧间编码模式限制类型,且该帧间编码模式限制类型的候选编码模式包括帧内块复制编码模式,但是由于解析得到帧内块复制编码模式标志位信息ibc_flag对应的标志位值为0,则可确定目标编码模式为标准帧间编码模式。
同样地,若编码数据中的语法设置为:root_cu_mode=‘PRED_Inter_only’,ibc_flag=1,则解码器对编码数据解码得到的编码模式限制类型为帧间编码模式限制类型,且该帧间编码模式限制类型的候选编码模式包括帧内块复制编码模式,但是由于解析得到帧内块复制编码模式标志位信息ibc_flag对应的标志位值为1,则可确定目标编码模式为帧内块复制编码模式。
在另一个实施例中,编码数据中的语法为:root_cu_mode=‘PRED_Intra_only’,则解码器对编码数据解码得到的编码模式限制类型为帧内编码模式限制类型,且编码数据中并未解析出帧内块复制编码模式标志位信息ibc_flag,则该帧内编码模式限制类型的编码模式仅可能是标准帧内编码模式,因此可确定目标编码模式为标准帧内编码模式。
在又一个实施例中,编码数据中的语法为:root_cu_mode=‘PRED_Ibc_only’,则解码器对编码数据解码得到的编码模式限制类型为帧内块复制编码模式限制类型,虽然编码数据中并未解析出帧内块复制编码模式标志位信息ibc_flag,但是由于帧内块复制编码模式限制类型仅可能是帧内块复制编码模式,因此可确定目标编码模式为帧内块复制编码模式。
在再一个实施例中,编码数据中的语法为:root_cu_mode=‘PRED_NormalInter_only’,则解码器对编码数据解码得到的编码模式限制类型为标准帧间编码模式限制类型,且编码数据中并未解析出帧内块复制编码模式标志位信息ibc_flag,则该标准帧间编码模式限制类型的编码模式仅可能是标准帧间编码模式,因此可确定目标编码模式为标准帧间编码模式。
在一个实施例中,编码模式限制类型为帧内块复制编码模式限制类型,目标编码模式的选定步骤,包括:直接确定当前待解码单元对应的目标编码模式为帧内块复制编码模式。
其中,由于帧内块复制编码模式限制类型对应的编码模式仅可能是帧内块复制编码模式,因此解码器对当前待解码单元对应的编码数据进行解码后,得到当前待解码单元对应的编码模式限制类型,当编码模式限制类型为帧内块复制编码模式限制类型时,直接可以确定当前待解码单元对应的目标编码模式为帧内块复制编码模式。其中,因为帧内块复制编码模式限制类型的编码模式仅可能是帧内块复制编码模式,因此编码数据中并不需要加入用来描述帧内块复制编码模式对应的帧内块复制编码模式标志位信息ibc_flag。也就是说,解码器解析得到当前待解码单元对应的编码模式限制类型为帧内块复制编码模式限制类型时,可直接确定当前待解码单元对应的目标编码模式为帧内块复制编码模式。
在一个实施例中,编码数据中的语法为:root_cu_mode=‘PRED_Ibc_only’,则解码器对编码数据解码得到的编码模式限制类型为帧内块复制编码模式限制类型,虽然编码数据中并未解析出帧内块复制编码模式标志位信息ibc_flag,但是由于帧内块复制编码模式限制类型仅可能是帧内块复制编码模式,因此可直接确定目标编码模式为帧内块复制编码模式。
在一个实施例中,数据解码方法还包括:当解码得到编码模式限制类型为标准帧内编码模式限制类型时,确定当前待解码单元对应的目标编码模式为标准帧内编码模式。
其中,当编码模式限制类型为标准帧内编码模式限制类型时,此时的标准帧内编码模式限制类型对应的编码模式仅可能是标准帧内编码模式,因此解码器对当前待解码单元对应的编码数据进行解码后,得到当前待解码单元对应的编码模式限制类型,当编码模式限制类型为标准帧内编码模式限制类型时,直接可以确定当前待解码单元对应的目标编码模式为标准帧内编码模式。其中,因为标准帧内编码模式限制类型的编码模式仅可能是标准帧内编码模式,因此编码数据中并不需要加入用来描述帧内块复制编码模式对应的帧内块复制编码模式标志位信息ibc_flag。也就是说,解码器解析得到当前待解码单元对应的编码模式限制类型为标准帧内编码模式限制类型时,可直接确定当前待解码单元对应的目标编码模式为标准帧内编码模式。
在一个实施例中,编码数据中的语法为:root_cu_mode=‘PRED_NormalIntra_only’,则解码器对编码数据解码得到的编码模式限制类型为标准帧内编码模式限制类型,且编码数据中并未解析出帧内块复制编码模式标志位信息ibc_flag,则该标准帧内编码模式限制类型的编码模式仅可能是标准帧内编码模式,因此可直接确定目标编码模式为标准帧内编码模式。
在一个实施例中,数据解码方法还包括:当解码得到编码模式限制类型为标准帧间编码模式限制类型时,确定当前待解码单元对应的目标编码模式为标准帧间编码模式。
其中,当编码模式限制类型为标准帧间编码模式限制类型时,此时的标准帧间编码模式限制类型对应的编码模式仅可能是标准帧间编码模式,因此解码器对当前待解码单元对应的编码数据进行解码后,得到当前待解码单元对应的编码模式限制类型,当编码模式限制类型为标准帧间编码模式限制类型时,直接可以确定当前待解码单元对应的目标编码模式为标准帧间编码模式。其中,因为标准帧间编码模式限制类型的编码模式仅可能是标准帧间编码模式,因此编码数据中并不需要加入用来描述帧内块复制编码模式对应的帧内块复制编码模式标志位信息ibc_flag。也就是说,解码器解析得到当前待解码单元对应的编码模式限制类型为标准帧间编码模式限制类型时,可直接确定当前待解码单元对应的目标编码模式为标准帧间编码模式。
在一个实施例中,编码数据中的语法为:root_cu_mode=‘PRED_NormalInter_only’,则解码器对编码数据解码得到的编码模式限制类型为标准帧间编码模式限制类型,且编码数据中并未解析出帧内块复制编码模式标志位信息ibc_flag,则该标准帧间编码模式限制类型的编码模式仅可能是标准帧间编码模式,因此可确定目标编码模式为标准帧间编码模式。
在一个实施例中,如图9所示,根据从候选编码模式集合中选定的目标编码模式对当前待解码单元进行解码,得到对应的解码数据,包括:
步骤902,当目标编码模式为帧内块复制编码模式时,从编码数据中获取当前待解码单元对应的块矢量信息和残差信息。
其中,块矢量信息是指与块矢量相关的信息,块矢量是帧内块复制编码模式专用的名词,类似帧间编码模式中的mv(motion vector运动矢量)的概念。编码数据中包括块矢量信息,解码器可根据块矢量信息确定对应的参考块位置,即块矢量信息是用来指向参考块位置的。其中,当目标编码模式为帧内块复制编码模式时,编码数据中可能存在帧内块复制编码模式标志位信息ibc_flag,也有可能不存在帧内块复制编码模式标志位信息ibc_flag。当编码模式限制类型为帧内编码模式限制类型或帧间编码模式限制类型,该帧内编码模式限制类型或帧间编码模式限制类型对应的候选编码模式包括帧内块复制编码模式时,编码数据中存在帧内块复制编码模式标志位信息ibc_flag。当编码模式限制类型为帧内块复制编码模式限制类型时,编码数据中并不存在帧内块复制编码模式标志位信息ibc_flag,即解码器则无需解码该语法元素,但是可以隐式推断出该ibc_flag为“true”。
具体地,当目标编码模式为帧内块复制编码模式时,解码器对编码数据进行解码,得到前待解码单元对应的块矢量信息和残差信息。
步骤904,根据块矢量信息确定当前待解码单元对应的预测信息。
具体地,当解码器解析得到块矢量信息时,由于块矢量信息是用来指向参考块位置的。因此,可根据块矢量信息确定当前待解码单元对应的预测信息,具体可以是获取当前待解码单元对应的当前矢量信息,当前矢量信息是与当前待解码单元位置相关的信息。再根据当前矢量信息和块矢量信息计算得到参考块位置,从参考块位置中确定与当前待解码单元需要复制的区域相同大小的目标区域,将目标区域中的参考像素值复制到当前待解码单元对应的区域中,可以根据当前待解码单元对应的区域中的原始像素值和复制过来的参考块对应的参考像素值计算得到预测信息。
也就是说,在编码过程中,如果当前编码单元对应的编码模式是帧内块复制编码模式,从编码数据携带块矢量信息,块矢量信息是用来指向参考位置的信息,然后该参考块将会被复制到当前编码区域,随后,残差信息根据当前编码单元对应的原始像素与参考块对应的参考像素计算得到的,并用于之后的编码。
步骤906,根据残差信息和预测信息得到当前待解码单元对应的解码图像单元。
具体地,当解码器解析得到残差信息后,对残差信息进行熵解码、反量化以及反变换得到空域残差信息,具体可以是,先对残差信息进行熵解码,得到对应的熵解码数据,再对熵解码数据进行反量化,得到反量化数据。进一步再对反量化数据进行反变换,得到空域残差信息。
其中,反量化是量化的逆过程,量化的原理用公式表示如下:FQ=round(y/Qstep)。其中,y为量化之前当前编码单元对应的值,Qstep为量化步长,FQ为对y进行量化得到的量化值。Round(x)函数指将取值进行四舍五入取偶,即四舍六入五取偶。量化参数与量化步长的对应关系具体可以根据需要进行设置。例如,在一些视频编码标准中,对于亮度编码而言,量化步长共有52个值,为0~51之间的整数,对于色度编码,量化步长的取值为0~39之间的整数,且量化步长随着量化参数的增加而增加,每当量化参数增加6,量化步长便增加一倍。
而熵解码是熵编码的逆过程,熵编码为按熵原理进行编码,且不丢失任何信息的数据编码方式,能够利用较小的字符来表达一定的信息。熵编码方法例如可以为香农编码(shannon)或者哈夫曼编码(huffman)等。
进一步地,在得到空域残差信息和预测信息后,根据空域残差信息和预测信息得到当前待解码单元对应的解码图像单元,具体可以是,根据空域残差信息和预测信息进行重建,得到重建图像单元。进一步再对重建得到的图像单元进行播放或者存储,或者进行播放以及存储。
在一个实施例中,如图10所示,提供了一种数据编码方法。本实施例主要以该方法应用于上述图1中的终端110或服务器120来举例说明。参照图10,该数据编码方法具体包括如下步骤:
步骤1002,获取当前编码单元。
其中,当前编码单元是指目前进行编码的编码单元,编码单元(CodingUnit,CU)是编码树单元(Coding Tree Unit,CTU)的子块,即编码单元是构成编码树单元的单元,而编码树单元是一种四叉或者二叉树划分的结构,并且是一层层递归下去划分的。最终,一个编码树单元CTU可以由若干个编码单元组成。可以如图5A所示,图5A示出一个实施例中编码树单元的结构示意图,图5A中每一个最终的叶子节点中的小块,就是一个编码单元,编码树单元就是各个编码单元所构成的整个集合(整个大块)。图5A中最大的块的像素尺寸是16*32,但是一般来说,编码树单元的像素尺寸是是64*64或128*128,应当说明的是,图5A示出的图片仅供理解编码树单元的树状划分结构。其中,图5A中的数字表示这个节点是否继续做分割,若此节点会继续分割则为1,若不继续分割则为0。
步骤1004,获取当前编码单元对应的编码模式限制类型,编码模式限制类型对应的候选编码模式集合包括帧内块复制编码模式。
其中,编码可以包括预测、变换、量化以及熵编码中的至少一个,编码过程可以是先获取当前编码单元,决策当前编码单元对应的编码模式限制类型,编码模式限制类型都存在对应的候选编码模式,再根据决策出来的编码模式限制类型确定当前编码单元对应的标志位信息,根据编码模式限制类型和标识位信息确定当前编码单元对应的目标编码模式,最后根据目标编码模式得到编码数据。即,编码数据中包括但不限于编码模式限制类型、目标编码模式对应的语法元素。
其中,编码模式限制类型是指编码模式限制的种类,编码模式限制类型是用来限制编码单元的编码模式是否会被限制为特定的编码模式,编码模式限制类型都存在对应的候选编码模式,候选编码模式包括帧内块复制编码模式。帧内块复制编码模式与标准帧间编码模式类似,但是不同的是标准帧间编码模式的参考块信息是来自参考帧,而帧内块复制编码模式的参考块信息是来自于当前帧。
在一个实施例中,在数据编码过程,编码模式限制类型可以决策出是帧内编码模式限制类型、帧间编码模式限制类型、帧内块复制编码模式限制类型,帧内编码模式限制类型对应的候选编码模式为标准帧内编码模式、帧内块复制编码模式,帧间编码模式限制类型对应的候选编码模式为标准帧间编码模式,帧内块复制编码模式限制类型对应的候选编码模式为帧内块复制编码模式。这里的标准帧内编码模式是指现有技术的帧内编码模式,同样地,标准帧间编码模式是指现有技术的帧间编码模式,而帧内块复制编码模式是与标准帧间编码模式类似,但是不同的是标准帧间编码模式的参考块信息是来自参考帧,而帧内块复制编码模式的参考块信息是来自于当前帧。
在另一个实施例中,在数据编码过程,编码模式限制类型可以决策出是帧内编码模式限制类型、帧间编码模式限制类型、帧内块复制编码模式限制类型,帧内编码模式限制类型对应的候选编码模式为标准帧内编码模式,帧间编码模式限制类型对应的候选编码模式为标准帧间编码模式、帧内块复制编码模式,帧内块复制编码模式限制类型对应的候选编码模式为帧内块复制编码模式。
步骤1006,根据编码模式限制类型对当前编码单元进行编码,从候选编码模式集合确定当前编码单元对应的目标编码模式,根据目标编码模式得到当前编码单元对应的编码数据。
具体地,在数据编码过程,编码模式限制类型可以决策出是帧内编码模式限制类型、帧间编码模式限制类型、帧内块复制编码模式限制类型,帧内编码模式限制类型对应的候选编码模式为标准帧内编码模式、帧内块复制编码模式,帧间编码模式限制类型对应的候选编码模式为标准帧间编码模式,帧内块复制编码模式限制类型对应的候选编码模式为帧内块复制编码模式。
具体地,可以在编码数据中加入用来描述编码模式限制类型的标志位root_cu_mode,即在编码数据中加入了描述编码模式限制类型的语法元素,而编码模式限制类型的标志位对应的值可以设置为编码模式限制类型对应的名称,如编码模式限制类型为帧内编码模式限制类型,则编码数据中的语法为:root_cu_mode=‘PRED_Intra_only’。
进一步地,根据编码模式限制类型确定对应的候选编码模式对应的标志位,可以在编码数据中加入用来描述编码模式限制类型对应的编码模式的标志位,而具体可通过标识位对应的值确定编码模式限制类型对应的编码模式。
例如,当编码模式限制类型为帧内编码模式限制类型时,候选编码模式为标准帧内编码模式、帧内块复制编码模式,因此可在编码数据中加入ibc_flag,ibc_flag是帧内块复制编码模式标志位信息,由于编码模式限制类型为帧内编码模式限制类型,且帧内编码模式限制类型中包括帧内块复制编码模式,则需要在编码数据中加入ibc_flag,但是当帧内编码模式限制类型中的编码模式为标准帧内编码模式时,ibc_flag=0,而当帧内编码模式限制类型中的编码模式为帧内块复制编码模式时,ibc_flag=1。而当编码模式限制类型为帧间编码模式限制类型时,帧间编码模式限制类型为标准帧间编码模式,则编码数据中的语法为:root_cu_mode=‘PRED_Inter_only’,由于当前编码单元的编码模式限制类型为帧间编码模式限制类型,则当前编码单元仅可能是标准帧间编码模式,则无需在编码数据中加入帧内块复制标志位信息ibc_flag,直接加入标准帧间编码模式对应的语法元素,如skip_flag会被加入至编码数据中。
进而,编码模式限制类型为帧内块复制编码模式限制类型时,当前编码单元的编码模式仅可能是帧内块复制编码模式,因此不需要传输和解码帧内块复制标志位信息ibc_flag。此时,编码数据中的语法为:root_cu_mode=‘PRED_Ibc_only’。
在本实施例中,编码模式限制类型还可以是标准帧内编码模式限制类型,标准帧内编码模式限制类型的编码模式仅可能是标准帧内编码模式,因此也无需将ibc_flag作为语法元素加入至编码数据中。
在另一个实施例中,在数据编码过程,编码模式限制类型可以决策出是帧内编码模式限制类型、帧间编码模式限制类型、帧内块复制编码模式限制类型,帧内编码模式限制类型对应的候选编码模式为标准帧内编码模式,帧间编码模式限制类型对应的候选编码模式为标准帧间编码模式、帧内块复制编码模式,帧内块复制编码模式限制类型对应的候选编码模式为帧内块复制编码模式。
具体地,当编码模式限制类型为帧内编码模式限制类型时,因为此时当前编码单元的编码模式仅可能是标准帧内编码模式,因此无需传输帧内块复制标志位信息ibc_flag,直接加入标准帧内编码模式对应的语法元素至编码数据中。
当编码模式限制类型为帧间编码模式限制类型时,因此此时当前编码单元的编码模式可能是标准帧间编码模式、帧内块复制编码模式,因此需要传输帧内块复制标识为信息ibc_flag,具体通过ibc_flag对应的值来区分标准帧间编码模式和帧内块复制编码模式,如ibc_flag=0为标准帧间编码模式、ibc_flag=1为帧内块复制编码模式。
而当编码模式限制类型为帧内块复制编码模式限制类型时,当前编码单元的编码模式仅可能是帧内块复制编码模式,因此不需要传输和解码帧内块复制标志位信息ibc_flag。在本实施例中,编码模式限制类型还可以是标准帧间编码模式限制类型,标准帧间编码模式限制类型的编码模式仅可能是标准帧间编码模式,因此也无需将ibc_flag作为语法元素加入至编码数据中。
上述数据编码方法,获取当前编码单元,获取当前编码单元对应的编码模式限制类型,编码模式限制类型对应的候选编码模式包括帧内块复制编码模式,根据编码模式限制类型对当前编码单元进行编码,从候选编码模式确定当前编码单元对应的目标编码模式,根据目标编码模式得到当前编码单元对应的编码数据。在编码单元进行编码时,能够灵活选择编码模式限制类型,编码模式限制类型对应的候选编码模式不限于一种,且候选编码模式中包括帧内块复制编码模式,因此从至少一种候选编码模式中确定编码单元对应的目标编码模式的选择范围更大了,在目标编码模式下进行编码,能够得到准确的编码数据。
在一个实施例中,如图11所示,当前编码单元为编码树单元,当前编码单元包括多个子编码单元,编码模式限制类型包括至少两个不同类型的编码模式限制类型,数据编码方法还包括:
步骤1102,分别在不同类型的编码模式限制类型下对当前编码单元进行编码,从候选编码模式集合中确定各个子编码单元对应的目标编码模式,根据各个子编码单元对应的目标编码模式得到各个子编码单元对应的子编码代价信息。
其中,当前编码单元为编码树单元,编码单元(CodingUnit,CU)是编码树单元(Coding Tree Unit,CTU)的子块,即编码单元是构成编码树单元的单元,而编码树单元是一种四叉或者二叉树划分的结构,并且是一层层递归下去划分的。最终,一个编码树单元CTU可以由若干个编码单元组成。可以如图5A所示,图5A示出一个实施例中编码树单元的结构示意图,图5A中每一个最终的叶子节点中的小块,就是一个编码单元,编码树单元就是各个编码单元所构成的整个集合(整个大块)。
其中,当前编码单元包括多个子编码单元,编码模式限制类型包括至少两个不同类型的编码模式限制类型。这里的子编码单元是指当前编码单元中的子块,是构成当前编码单元的单元。这里的编码模式限制类型包括至少两个不同类型的编码模式限制类型,例如编码模式限制类型包括帧内编码模式限制类型,帧间编码模式限制类型,帧内块复制编码模式限制类型,编码模式限制类型具体包括哪几种类型的编码模式限制类型可由硬件决定,硬件可根据自身的硬件情况决定编码模式限制类型。
具体地,分别在不同类型的编码模式限制类型下对当前编码单元进行编码,由于编码模式限制类型都存在对应的候选编码模式,则再从各个编码模式限制类型对应的候选编码模式中确定各个子编码单元对应的目标编码模式,根据各个子编码单元对应的目标编码模式得到各个子编码单元对应的子编码代价信息。在编码过程中需要计算子编码代价信息,而解码过程中不计算子编码代价信息。
在一个实施例中,编码模式限制类型包括帧内编码模式限制类型、帧间编码模式限制类型、帧内块复制编码模式限制类型,帧内编码模式限制类型对应的候选编码模式包括标准帧内编码模式、帧内块复制编码模式,帧间编码模式限制类型对应的候选编码模式仅包括标准帧间编码模式,帧内块复制编码模式限制类型对应的候选编码模式仅包括帧内块复制编码模式。分别在帧内编码模式限制类型、帧间编码模式限制类型、帧内块复制编码模式限制类型下对当前编码单元进行编码。
具体地,在帧内编码模式限制类型下对当前编码单元进行编码,当前编码单元的各个子编码单元对应的候选编码模式可以是标准帧内编码模式或者是帧内块复制编码模式,因此分别计算得到各个子编码单元在标准帧内编码模式下得到的子编码代价信息,以及各个子编码单元在帧内块复制编码模式下得到的子编码代价信息,最后根据不同编码模式下的子编码代价信息确定各个子编码单元对应的目标编码模式,将目标编码模式对应的子编码代价信息确定为各个子编码单元最终的子编码代价信息。
其中,在帧间编码模式限制类型对当前编码单元进行编码,当前编码单元的各个子编码单元对应的候选编码模式仅包括标准帧间编码模式,则计算各个子编码单元在标准帧间编码模式下得到的子编码代价信息。
同样地,在帧内块复制编码模式限制类型对当前编码单元进行编码,当前编码单元的各个子编码单元对应的候选编码模式仅包括帧内块复制编码模式,则计算各个子编码单元在帧内块复制编码模式下得到的子编码代价信息。
在一个实施例中,编码模式限制类型包括至少两个不同类型的编码模式限制类型,可以是帧内编码模式限制类型与帧内块复制编码模式限制类型,且帧内编码模式限制类型对应的候选编码模式为标准帧内编码模式、帧内块复制编码模式,而帧内块复制编码模式限制类型对应的编码模式仅包括帧内块复制编码模式。
在另一个实施例中,编码模式限制类型包括至少两个不同类型的编码模式限制类型,例如可以是帧内编码模式限制类型与帧间编码模式限制类型以及帧内块复制编码模式限制类型,且帧内编码模式限制类型对应的候选编码模式为标准帧内编码模式、帧内块复制编码模式,帧内块复制编码模式限制类型对应的编码模式仅包括帧内块复制编码模式,帧间编码模式限制类型对应的编码模式仅包括标准帧间编码模式。
在又一个实施例中,编码模式限制类型包括至少两个不同类型的编码模式限制类型,可以是帧内编码模式限制类型、帧间编码模式限制类型、帧内块复制编码模式限制类型、标准帧内编码模式限制类型,帧内编码模式限制类型对应的候选编码模式为标准帧内编码模式、帧内块复制编码模式,帧内块复制编码模式限制类型对应的编码模式仅包括帧内块复制编码模式,帧间编码模式限制类型对应的编码模式仅包括标准帧间编码模式,标准帧内编码模式限制类型对应的编码模式仅包括标准帧内编码模式。
在一个实施例中,编码模式限制类型包括至少两个不同类型的编码模式限制类型具体可以由硬件厂商决定,本申请的举例并不限制本申请的范围。
步骤1104,根据各个子编码单元对应的子编码代价信息确定在不同的编码模式限制类型下当前编码单元对应的树编码代价信息。
具体地,在根据各个子编码单元对应的目标编码模式得到各个子编码单元对应的子编码代价信息后,可根据各个子编码单元对应的子编码代价信息确定在不同的编码模式限制类型下当前编码单元对应的树编码代价信息。其中,确定的方式可自定义,自定义可以是将各个子编码单元对应的子编码代价信息中最小的子编码代价信息作为不同的编码模式限制类型下当前编码单元对应的树编码代价信息,或者还可以是根据各个子编码单元对应的子编码代价信息计算均值,将均值最小的作为不同的编码模式限制类型下当前编码单元对应的树编码代价信息等等。
例如,当前编码单元a为编码树单元,当前编码单元包括子编码单元1、子编码单元2、子编码单元3,编码模式限制类型包括帧内编码模式限制类型、帧间编码模式限制类型、帧内块复制编码模式限制类型,帧内编码模式限制类型下的子编码单元1对应的子编码代价信息为390、子编码单元2对应的子编码代价信息为350、子编码单元3对应的子编码代价信息为300,则可将子编码单元3对应的子编码代价信息作为帧内编码模式限制类型下当前编码单元a对应的树编码代价信息。
步骤1106,根据当前编码单元对应的树编码代价信息从不同类型的编码模式限制类型中,确定当前编码单元对应的目标编码模式限制类型。
具体地,在确定得到各个类型的编码模式限制类型下当前编码单元对应的树编码代价信息后,可根据当前编码单元对应的树编码代价信息从不同类型的编码模式限制类型中,确定当前编码单元对应的目标编码模式限制类型。其中,确定的方式可自定义,自定义可以是将当前编码单元对应的树编码代价信息中最小的树编码代价信息对应的编码模式限制类型确定为当前编码单元对应的目标编码模式限制类型。或还可以根据实际需要或者实际应用场景设置预设条件,根据预设条件从各个不同类型下的编码模式限制类型中,根据当前编码单元对应的树编码代价信息中选择符合预设条件的目标编码模式限制类型。
步骤1108,根据目标编码模式限制类型得到当前编码单元对应的编码数据。
具体地,在确定当前编码单元对应的目标编码模式限制类型后,可根据目标编码模式限制类型得到当前编码单元对应的编码数据。具体可以是,在编码数据中加入描述编码模式限制类型的语法元素,如root_cu_mode,即在编码数据中加入了描述编码模式限制类型的语法元素,而编码模式限制类型的标志位对应的值可以设置为编码模式限制类型对应的名称,如编码模式限制类型为帧内编码模式限制类型,则编码数据中的语法为:root_cu_mode=‘PRED_Intra_only’。
在一个实施例中,如图12所示,根据目标编码模式得到当前编码单元对应的编码数据包括:
步骤1202,根据目标编码模式生成对应的目标标志位。
步骤1204,将目标标志位写入当前编码单元对应的编码数据。
具体地,当编码模式限制类型为帧内编码模式限制类型或帧间编码模式限制类型或帧内块复制编码模式限制类型时,根据目标编码模式生成对应的目标标志位。这里的目标标志位是指与编码模式限制类型对应的候选编码模式相关的标志位。最后,再将目标标志位写入当前编码单元对应的编码数据。
在一个实施例中,当编码模式限制类型为帧内编码模式限制类型时,该帧内编码模式限制类型对应的候选编码包括标准帧内编码模式、帧内块复制编码模式,需要在编码数据中加入用来表述帧内块复制编码模式标志位信息ibc_flag,即将ibc_flag写入当前编码单元对应的编码数据,即编码数据中的语法为:
root_cu_mode=‘PRED_Intra_only’;
ibc_flag=ae(v);
其中,具体可以根据设置ae(v)的值来区分标准帧内编码模式和帧内块复制编码模式,如ae(v)为0时表示编码模式为标准帧内编码模式,ae(v)为1时表示帧内块复制编码模式。
在另一个实施例中,当编码模式限制类型为帧间编码模式限制类型时,该帧间编码模式限制类型对应的候选编码包括标准帧间编码模式、帧内块复制编码模式,需要在编码数据中加入用来表述帧内块复制编码模式标志位信息ibc_flag,即将ibc_flag写入当前编码单元对应的编码数据,即编码数据中的语法为:
root_cu_mode=‘PRED_Inter_only’;
ibc_flag=ae(v);
其中,具体可以根据设置ae(v)的值来区分标准帧间编码模式和帧内块复制编码模式,如ae(v)为0时表示编码模式为标准帧间编码模式,ae(v)为1时表示帧内块复制编码模式。
在一个具体的实施例中,提供了一种数据编码方法和数据解码方法,具体包括以下步骤:
S1、获取当前编码单元。
S2、获取当前编码单元对应的编码模式限制类型,编码模式限制类型对应的候选编码模式包括帧内块复制编码模式。
S3、根据编码模式限制类型对当前编码单元进行编码,从候选编码模式确定当前编码单元对应的目标编码模式,根据目标编码模式得到当前编码单元对应的编码数据。
S3-1、当编码模式限制类型为帧内编码模式限制类型或帧间编码模式限制类型时,根据目标编码模式生成对应的目标标志位。
S3-2、将目标标志位写入当前编码单元对应的编码数据。
S4、当前编码单元为编码树单元,当前编码单元包括多个子编码单元,编码模式限制类型包括至少两个不同类型的编码模式限制类型,分别在不同类型的编码模式限制类型下对当前编码单元进行编码,从候选编码模式确定各个子编码单元对应的目标编码模式,根据各个子编码单元对应的目标编码模式得到各个子编码单元对应的子编码代价信息。
S5、根据各个子编码单元对应的子编码代价信息确定在不同的编码模式限制类型下当前编码单元对应的树编码代价信息。
S6、根据当前编码单元对应的树编码代价信息从不同类型的编码模式限制类型中,确定当前编码单元对应的目标编码模式限制类型。
S7、根据目标编码模式限制类型得到当前编码单元对应的编码数据。
S8、获取当前待解码单元对应的编码数据。
S9、从编码数据中解析得到当前待解码单元对应的编码模式限制类型。
S10、根据编码模式限制类型确定当前待解码单元对应的目标编码模式,目标编码模式为候选编码模式中的一种,候选编码模式包括帧内块复制编码模式。
S10-1、从编码数据中解析得到当前待解码单元对应的标志位信息。
S10-2、根据编码模式限制类型和标志位信息确定当前待解码单元对应的目标编码模式。
S10-2-1、编码模式限制类型为帧内编码模式限制类型,当标志位信息对应的值为第一标志位值时,目标编码模式为标准帧内编码模式,当标志位信息对应的值为第二标志位值时,目标编码模式为帧内块复制编码模式。
S10-2-2、编码模式限制类型为帧间编码模式限制类型,当标志位信息对应的值为第一标志位值时,目标编码模式为标准帧间编码模式,当标志位信息对应的值为第二标志位值时,目标编码模式为帧内块复制编码模式。
S10-3、编码模式限制类型为帧内块复制编码模式限制类型,直接确定当前待解码单元对应的目标编码模式为帧内块复制编码模式。
S10-4、当编码模式限制类型为标准帧内编码模式限制类型时,确定当前待解码单元对应的目标编码模式为标准帧内编码模式。
S10-5、当编码模式限制类型为标准帧间编码模式限制类型时,确定当前待解码单元对应的目标编码模式为标准帧间编码模式。
S11、根据目标编码模式对当前待解码单元进行解码,得到对应的解码数据。
S11-1、当目标编码模式为帧内块复制编码模式时,从编码数据中获取当前待解码单元对应的块矢量信息和残差信息。
S11-2、根据块矢量信息确定当前待解码单元对应的预测信息。
S11-3、根据残差信息和预测信息得到当前待解码单元对应的解码图像单元。
应该理解的是,虽然上述流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图13所示,提供了一种数据解码装置1300,该数据解码装置1300可以集成于上述的服务器120或终端110中,具体可以包括编码数据获取模块1302、编码数据解析模块1304、目标编码模式确定模块1306和解码数据生成模块1308,其中:
编码数据获取模块1302,用于获取当前待解码单元对应的编码数据。
编码数据解析模块1304,用于从编码数据中解码得到当前待解码单元对应的编码模式限制类型。
目标编码模式确定模块1306,用于根据编码模式限制类型确定当前待解码单元对应的候选编码模式集合,并基于候选编码模式集合确定目标编码模式,候选编码模式集合至少包括帧内块复制编码模式。
解码数据生成模块1308,用于根据目标编码模式对当前待解码单元进行解码,得到对应的解码数据。
在一个实施例中,如图14所示,目标编码模式确定模块1306包括:
标志位信息获取单元1306a,用于从编码数据中解码得到当前待解码单元对应的编码模式标志位信息。
目标编码模式确定单元1306b,用于根据编码模式限制类型和编码模式标志位信息确定当前待解码单元对应的目标编码模式。
在一个实施例中,编码模式限制类型为帧内编码模式限制类型,目标编码模式确定模块1306还用于当编码模式标志位信息对应的值为第一标志位值时,目标编码模式为标准帧内编码模式,当编码模式标志位信息对应的值为第二标志位值时,目标编码模式为帧内块复制编码模式。
在一个实施例中,编码模式限制类型为帧间编码模式限制类型,目标编码模式确定模块1306还用于当编码模式标志位信息对应的值为第一标志位值时,目标编码模式为标准帧间编码模式,当编码模式标志位信息对应的值为第二标志位值时,目标编码模式为帧内块复制编码模式。
在一个实施例中,编码模式限制类型为帧内块复制编码模式限制类型,目标编码模式确定模块1306还用于直接确定当前待解码单元对应的目标编码模式为帧内块复制编码模式。
在一个实施例中,数据解码装置1300还用于当解码得到编码模式限制类型为标准帧内编码模式限制类型时,确定当前待解码单元对应的目标编码模式为标准帧内编码模式。
在一个实施例中,数据解码装置1300还用于当解码得到编码模式限制类型为标准帧间编码模式限制类型时,确定当前待解码单元对应的目标编码模式为标准帧间编码模式。
在一个实施例中,如图15所示,解码数据生成模块1308包括:
编码数据处理单元1308a,用于当目标编码模式为帧内块复制编码模式时,从编码数据中获取当前待解码单元对应的块矢量信息和残差信息。
预测信息确定单元1308b,用于根据块矢量信息确定当前待解码单元对应的预测信息。
解码图像生成单元1308c,用于根据残差信息和预测信息得到当前待解码单元对应的解码图像单元。
在一个实施例中,如图16所示,提供了一种数据编码装置1600,该数据解码装置1600可以集成于上述的服务器120或终端110中,具体可以包括当前编码单元获取模块1602、编码模式限制类型获取模块1604、当前编码单元编码模块1606,其中:
当前编码单元获取模块1602,用于获取当前编码单元。
编码模式限制类型获取模块1604,用于获取当前编码单元对应的编码模式限制类型,编码模式限制类型对应的候选编码模式集合包括帧内块复制编码模式。
当前编码单元编码模块1606,用于根据编码模式限制类型对当前编码单元进行编码,从候选编码模式集合确定当前编码单元对应的目标编码模式,根据目标编码模式得到当前编码单元对应的编码数据。
在一个实施例中,如图17所示,当前编码单元为编码树单元,当前编码单元包括多个子编码单元,编码模式限制类型包括至少两个不同类型的编码模式限制类型,数据编码装置1600还包括:
子编码代价信息确定模块1608,用于分别在不同类型的编码模式限制类型下对当前编码单元进行编码,从候选编码模式集合中确定各个子编码单元对应的目标编码模式,根据各个子编码单元对应的目标编码模式得到各个子编码单元对应的子编码代价信息。
树编码代价信息确定模块1610,用于根据各个子编码单元对应的子编码代价信息确定在不同的编码模式限制类型下当前编码单元对应的树编码代价信息。
目标编码模式限制类型确定模块1612,用于根据当前编码单元对应的树编码代价信息从不同类型的编码模式限制类型中,确定当前编码单元对应的目标编码模式限制类型。
编码数据生成模块1614,用于根据目标编码模式限制类型得到当前编码单元对应的编码数据。
在一个实施例中,当前编码单元编码模块1606还用于当编码模式限制类型为帧内编码模式限制类型或帧间编码模式限制类型时,根据目标编码模式生成对应的目标标志位,将目标标志位写入当前编码单元对应的编码数据。
在一个实施例中,编码模式限制类型包括以下组合其中之一:帧内编码模式限制类型和帧内块复制编码模式限制类型的组合、帧间编码模式限制类型和帧内块复制编码模式限制类型的组合、以及帧内编码模式限制类型和帧间编码模式限制类型和帧内块复制编码模式限制类型的组合。
图18示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的终端110或服务器120。如图18所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现数据解码方法或数据编码方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行数据解码方法或数据编码方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图18中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的数据解码装置或数据编码装置可以实现为一种计算机程序的形式,计算机程序可在如图18所示的计算机设备上运行。计算机设备的存储器中可存储组成该数据解码装置或数据编码装置的各个程序模块,比如,图13所示的编码数据获取模块、编码数据解析模块、目标编码模式确定模块和解码数据生成模块。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的数据解码方法中的步骤。
又比如,图16所示的当前编码单元获取模块、编码模式限制类型获取模块和当前编码单元编码模块。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的数据编码方法中的步骤。
例如,图18所示的计算机设备可以通过如图13所示的数据解码装置中的编码数据获取模块执行获取当前待解码单元对应的编码数据。计算机设备可通过编码数据解析模块执行从编码数据中解码得到当前待解码单元对应的编码模式限制类型。计算机设备可通过目标编码模式确定模块执行根据编码模式限制类型确定当前待解码单元对应的候选编码模式集合,候选编码模式集合至少包括帧内块复制编码模式。计算机设备可通过解码数据生成模块执行根据从候选编码模式集合中选定的目标编码模式对当前待解码单元进行解码,得到对应的解码数据。
又例如,图18所示的计算机设备可以通过如图16所示的数据编码装置中的当前编码单元获取模块执行获取当前编码单元。计算机设备可通过编码模式限制类型获取模块执行获取当前编码单元对应的编码模式限制类型,编码模式限制类型对应的候选编码模式集合包括帧内块复制编码模式。计算机设备可通过当前编码单元编码模块执行根据编码模式限制类型对当前编码单元进行编码,从候选编码模式集合确定当前编码单元对应的目标编码模式,根据目标编码模式得到当前编码单元对应的编码数据。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述数据解码方法或数据编码方法的步骤。此处数据解码方法或数据编码方法的步骤可以是上述各个实施例的数据解码方法或数据编码方法中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述数据解码方法或数据编码方法的步骤。此处数据解码方法或数据编码方法的步骤可以是上述各个实施例的数据解码方法或数据编码方法中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (24)

1.一种数据解码方法,包括:
获取当前待解码单元对应的编码数据;
从所述编码数据中针对编码树单元的编码模式限制类型标志位,解码得到所述当前待解码单元对应的编码树单元的编码模式限制类型;所述编码树单元包括多个子编码单元,所述当前待解码单元对应其中一个子编码单元;
若解码得到所述编码模式限制类型包括帧间编码模式限制类型和帧内编码模式限制类型中的其中一种,则根据所述编码模式限制类型确定所述当前待解码单元对应的候选编码模式集合,所述候选编码模式集合至少包括帧内块复制编码模式;
若解码得到所述编码模式限制类型为标准帧间编码模式限制类型,则确定所述当前待解码单元对应的候选编码模式集合仅包括标准帧间编码模式;
根据从所述候选编码模式集合中选定的目标编码模式对所述当前待解码单元进行解码,得到对应的解码数据。
2.根据权利要求1所述的方法,其特征在于,所述目标编码模式的选定步骤包括:
从所述编码数据中解码得到所述当前待解码单元对应的编码模式标志位信息;
根据所述编码模式限制类型和所述编码模式标志位信息确定所述当前待解码单元对应的目标编码模式。
3.根据权利要求2所述的方法,其特征在于,所述编码模式限制类型为帧内编码模式限制类型,所述根据所述编码模式限制类型和所述编码模式标志位信息确定所述当前待解码单元对应的目标编码模式,包括:
当所述编码模式标志位信息对应的值为第一标志位值时,所述目标编码模式为标准帧内编码模式;
当所述编码模式标志位信息对应的值为第二标志位值时,所述目标编码模式为帧内块复制编码模式。
4.根据权利要求2所述的方法,其特征在于,所述编码模式限制类型为帧间编码模式限制类型,所述根据所述编码模式限制类型和所述编码模式标志位信息确定所述当前待解码单元对应的目标编码模式,包括:
当所述编码模式标志位信息对应的值为第一标志位值时,所述目标编码模式为标准帧间编码模式;
当所述编码模式标志位信息对应的值为第二标志位值时,所述目标编码模式为帧内块复制编码模式。
5.根据权利要求1所述的方法,其特征在于,所述编码模式限制类型为帧内块复制编码模式限制类型,所述目标编码模式的选定步骤包括:
直接确定所述当前待解码单元对应的目标编码模式为帧内块复制编码模式。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当解码得到所述编码模式限制类型为标准帧内编码模式限制类型时,确定所述当前待解码单元对应的目标编码模式为标准帧内编码模式。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述根据从所述候选编码模式集合中选定的目标编码模式对所述当前待解码单元进行解码,得到对应的解码数据,包括:
当所述目标编码模式为帧内块复制编码模式时,从所述编码数据中获取所述当前待解码单元对应的块矢量信息和残差信息;
根据所述块矢量信息确定所述当前待解码单元对应的预测信息;
根据所述残差信息和所述预测信息得到所述当前待解码单元对应的解码图像单元。
8.一种数据编码方法,包括:
获取当前编码单元;所述当前编码单元为编码树单元所包括的多个子编码单元中的其中一个子编码单元;
获取所述编码树单元的编码模式限制类型;
若所述编码模式限制类型包括帧间编码模式限制类型和帧内编码模式限制类型中的其中一种,则获取所述编码模式限制类型对应的候选编码模式集合,所述候选编码模式集合包括帧内块复制编码模式;
若所述编码模式限制类型为标准帧间编码模式限制类型,则获取所述标准帧间编码模式限制类型对应的仅包括标准帧间编码模式的候选编码模式集合;
根据所述编码模式限制类型对所述当前编码单元进行编码,从所述候选编码模式集合确定所述当前编码单元对应的目标编码模式,根据所述目标编码模式得到所述当前编码单元对应的编码数据。
9.根据权利要求8所述的方法,其特征在于,所述编码模式限制类型包括至少两个不同类型的编码模式限制类型,所述方法还包括:
分别在不同类型的编码模式限制类型下对所述编码树单元进行编码,从所述候选编码模式集合中确定各个子编码单元对应的目标编码模式,根据所述各个子编码单元对应的目标编码模式得到所述各个子编码单元对应的子编码代价信息;
根据各个子编码单元对应的子编码代价信息确定在不同的编码模式限制类型下所述编码树单元对应的树编码代价信息;
根据所述编码树单元对应的树编码代价信息从所述不同类型的编码模式限制类型中,确定所述编码树单元对应的目标编码模式限制类型;
根据所述目标编码模式限制类型得到所述当前编码单元对应的编码数据。
10.根据权利要求9所述的方法,其特征在于,所述编码模式限制类型包括以下组合其中之一:帧内编码模式限制类型和帧内块复制编码模式限制类型的组合、帧间编码模式限制类型和帧内块复制编码模式限制类型的组合、以及帧内编码模式限制类型和帧间编码模式限制类型和帧内块复制编码模式限制类型的组合。
11.根据权利要求8所述的方法,其特征在于,所述根据所述目标编码模式得到所述当前编码单元对应的编码数据包括:
根据所述目标编码模式生成对应的目标标志位;
将所述目标标志位写入所述当前编码单元对应的编码数据。
12.一种数据解码装置,其特征在于,所述装置包括:
编码数据获取模块,用于获取当前待解码单元对应的编码数据;
编码数据解析模块,用于从所述编码数据中针对编码树单元的编码模式限制类型标志位,解码得到所述当前待解码单元对应的编码树单元的编码模式限制类型;所述编码树单元包括多个子编码单元,所述当前待解码单元对应其中一个子编码单元;
目标编码模式确定模块,用于若解码得到所述编码模式限制类型包括帧间编码模式限制类型和帧内编码模式限制类型中的其中一种,则根据所述编码模式限制类型确定所述当前待解码单元对应的候选编码模式集合,所述候选编码模式集合至少包括帧内块复制编码模式;若解码得到所述编码模式限制类型为标准帧间编码模式限制类型,则确定所述当前待解码单元对应的候选编码模式集合仅包括标准帧间编码模式;
解码数据生成模块,用于根据从所述候选编码模式集合中选定的目标编码模式对所述当前待解码单元进行解码,得到对应的解码数据。
13.根据权利要求12所述的装置,其特征在于,所述目标编码模式确定模块包括:
标志位信息获取单元,用于从所述编码数据中解码得到所述当前待解码单元对应的编码模式标志位信息;
目标编码模式确定单元,用于根据所述编码模式限制类型和所述编码模式标志位信息确定所述当前待解码单元对应的目标编码模式。
14.根据权利要求13所述的装置,其特征在于,编码模式限制类型为帧内编码模式限制类型,目标编码模式确定模块还用于当所述编码模式标志位信息对应的值为第一标志位值时,所述目标编码模式为标准帧内编码模式;当所述编码模式标志位信息对应的值为第二标志位值时,所述目标编码模式为帧内块复制编码模式。
15.根据权利要求13所述的装置,其特征在于,编码模式限制类型为帧间编码模式限制类型,目标编码模式确定模块还用于当所述编码模式标志位信息对应的值为第一标志位值时,所述目标编码模式为标准帧间编码模式;当所述编码模式标志位信息对应的值为第二标志位值时,所述目标编码模式为帧内块复制编码模式。
16.根据权利要求12所述的装置,其特征在于,编码模式限制类型为帧内块复制编码模式限制类型,目标编码模式确定模块还用于直接确定所述当前待解码单元对应的目标编码模式为帧内块复制编码模式。
17.根据权利要求12所述的装置,其特征在于,所述数据解码装置还用于当解码得到所述编码模式限制类型为标准帧内编码模式限制类型时,确定所述当前待解码单元对应的目标编码模式为标准帧内编码模式。
18.根据权利要求12至17任一项所述的装置,其特征在于,所述解码数据生成模块包括:
编码数据处理单元,用于当所述目标编码模式为帧内块复制编码模式时,从所述编码数据中获取所述当前待解码单元对应的块矢量信息和残差信息;
预测信息确定单元,用于根据所述块矢量信息确定所述当前待解码单元对应的预测信息;
解码图像生成单元,用于根据所述残差信息和所述预测信息得到所述当前待解码单元对应的解码图像单元。
19.一种数据编码装置,其特征在于,所述装置包括:
当前编码单元获取模块,用于获取当前编码单元;所述当前编码单元为编码树单元所包括的多个子编码单元中的其中一个子编码单元;
编码模式限制类型获取模块,用于获取所述编码树单元的编码模式限制类型;若所述编码模式限制类型包括帧间编码模式限制类型和帧内编码模式限制类型中的其中一种,则获取所述编码模式限制类型对应的候选编码模式集合,所述候选编码模式集合包括帧内块复制编码模式;若所述编码模式限制类型为标准帧间编码模式限制类型,则获取所述标准帧间编码模式限制类型对应的仅包括标准帧间编码模式的候选编码模式集合;
当前编码单元编码模块,用于根据所述编码模式限制类型对所述当前编码单元进行编码,从所述候选编码模式集合确定所述当前编码单元对应的目标编码模式,根据所述目标编码模式得到所述当前编码单元对应的编码数据。
20.根据权利要求19所述的装置,其特征在于,所述编码模式限制类型包括至少两个不同类型的编码模式限制类型,所述数据编码装置还包括:
子编码代价信息确定模块,用于分别在不同类型的编码模式限制类型下对所述编码树单元进行编码,从所述候选编码模式集合中确定各个子编码单元对应的目标编码模式,根据所述各个子编码单元对应的目标编码模式得到所述各个子编码单元对应的子编码代价信息;
树编码代价信息确定模块,用于根据各个子编码单元对应的子编码代价信息确定在不同的编码模式限制类型下所述编码树单元对应的树编码代价信息;
目标编码模式限制类型确定模块,用于根据所述编码树单元对应的树编码代价信息从所述不同类型的编码模式限制类型中,确定所述编码树单元对应的目标编码模式限制类型;
编码数据生成模块,用于根据所述目标编码模式限制类型得到所述当前编码单元对应的编码数据。
21.根据权利要求20所述的装置,其特征在于,所述编码模式限制类型包括以下组合其中之一:帧内编码模式限制类型和帧内块复制编码模式限制类型的组合、帧间编码模式限制类型和帧内块复制编码模式限制类型的组合、以及帧内编码模式限制类型和帧间编码模式限制类型和帧内块复制编码模式限制类型的组合。
22.根据权利要求19所述的装置,其特征在于,当前编码单元编码模块还用于当编码模式限制类型为帧内编码模式限制类型或帧间编码模式限制类型时,根据所述目标编码模式生成对应的目标标志位;将所述目标标志位写入所述当前编码单元对应的编码数据。
23.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至11中任一项所述方法的步骤。
24.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至11中任一项所述方法的步骤。
CN201910792449.9A 2019-08-26 2019-08-26 数据解码方法、装置和数据编码方法、装置 Active CN110798683B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN202210514948.3A CN114979630A (zh) 2019-08-26 2019-08-26 数据解码方法、装置和数据编码方法、装置
CN201910792449.9A CN110798683B (zh) 2019-08-26 2019-08-26 数据解码方法、装置和数据编码方法、装置
EP20856921.0A EP3955570A4 (en) 2019-08-26 2020-08-26 DATA DECODING METHOD AND APPARATUS, AND DATA ENCODING METHOD AND APPARATUS
PCT/CN2020/111246 WO2021037041A1 (zh) 2019-08-26 2020-08-26 数据解码方法、装置和数据编码方法、装置
US17/470,636 US11949853B2 (en) 2019-08-26 2021-09-09 Data decoding method and apparatus, and data coding method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910792449.9A CN110798683B (zh) 2019-08-26 2019-08-26 数据解码方法、装置和数据编码方法、装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202210514948.3A Division CN114979630A (zh) 2019-08-26 2019-08-26 数据解码方法、装置和数据编码方法、装置

Publications (2)

Publication Number Publication Date
CN110798683A CN110798683A (zh) 2020-02-14
CN110798683B true CN110798683B (zh) 2022-05-27

Family

ID=69427058

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201910792449.9A Active CN110798683B (zh) 2019-08-26 2019-08-26 数据解码方法、装置和数据编码方法、装置
CN202210514948.3A Pending CN114979630A (zh) 2019-08-26 2019-08-26 数据解码方法、装置和数据编码方法、装置

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202210514948.3A Pending CN114979630A (zh) 2019-08-26 2019-08-26 数据解码方法、装置和数据编码方法、装置

Country Status (4)

Country Link
US (1) US11949853B2 (zh)
EP (1) EP3955570A4 (zh)
CN (2) CN110798683B (zh)
WO (1) WO2021037041A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110798683B (zh) 2019-08-26 2022-05-27 腾讯科技(深圳)有限公司 数据解码方法、装置和数据编码方法、装置
CN113556542B (zh) * 2021-07-16 2023-04-28 安谋科技(中国)有限公司 帧内块复制单元及方法
CN115996214A (zh) * 2021-10-20 2023-04-21 腾讯科技(深圳)有限公司 多媒体数据处理方法、装置、设备及存储介质
CN114125442B (zh) * 2022-01-29 2022-05-03 腾讯科技(深圳)有限公司 屏幕视频编码模式确定方法、编码方法、装置和计算设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101222641A (zh) * 2007-01-11 2008-07-16 华为技术有限公司 帧内预测编解码方法及其装置
CN105532000A (zh) * 2013-09-13 2016-04-27 佳能株式会社 用于对视频数据进行编码和解码的方法、设备和系统
EP3200459A1 (en) * 2014-09-22 2017-08-02 ZTE Corporation Encoding method, decoding method, apparatus and electronic device

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101217663B (zh) * 2008-01-09 2010-09-08 上海华平信息技术股份有限公司 用于编码器的图像像素块编码模式的快速选择方法
US10142630B2 (en) * 2010-12-10 2018-11-27 Texas Instruments Incorporated Mode adaptive intra prediction smoothing in video coding
CN103416063B (zh) * 2011-03-09 2017-07-28 松下电器(美国)知识产权公司 运动图像解码装置及运动图像解码方法
JP5798467B2 (ja) * 2011-12-07 2015-10-21 ルネサスエレクトロニクス株式会社 符号化タイプ決定装置及び動画像符号化装置、符号化タイプ決定方法及び動画像符号化方法、プログラム
CN102790878B (zh) * 2011-12-07 2015-02-18 北京邮电大学 一种视频编码的编码模式选择方法及装置
RU2630888C1 (ru) * 2013-11-14 2017-09-13 ЭйджЭфАй Инновэйшн Инк. Способ видеокодирования с использованием предсказания на основании копии внутрикадрового блока
CN105338365B (zh) * 2014-05-27 2018-11-20 富士通株式会社 视频编码方法和视频编码装置
JP6482191B2 (ja) * 2014-06-12 2019-03-13 キヤノン株式会社 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム
US10212445B2 (en) * 2014-10-09 2019-02-19 Qualcomm Incorporated Intra block copy prediction restrictions for parallel processing
KR102272971B1 (ko) * 2015-04-13 2021-07-05 미디어텍 인크. 비디오 코딩에서 최악의 경우의 대역폭을 줄이기 위한 제약된 인트라 블록 카피 방법
CN105391999B (zh) * 2015-10-30 2018-08-17 北京奇艺世纪科技有限公司 一种编码模式判断方法和装置
CN107124608A (zh) * 2016-02-24 2017-09-01 北京数码视讯科技股份有限公司 一种编码方法及装置
CN117221592A (zh) * 2016-06-22 2023-12-12 Lx 半导体科技有限公司 图像编码/解码方法以及图像数据的传输方法
JP2019129371A (ja) * 2018-01-23 2019-08-01 富士通株式会社 動画像符号化装置、動画像符号化方法、動画像復号装置、動画像復号方法、及び動画像符号化用コンピュータプログラムならびに動画像復号用コンピュータプログラム
CN109413421B (zh) * 2018-10-26 2021-01-19 张豪 视频编码方法、设备以及视频解码方法、设备
CN113330739A (zh) * 2019-01-16 2021-08-31 北京字节跳动网络技术有限公司 Lut中的运动候选的插入顺序
US10958904B2 (en) * 2019-02-01 2021-03-23 Tencent America LLC Method and apparatus for video coding
WO2020156574A1 (en) * 2019-02-03 2020-08-06 Beijing Bytedance Network Technology Co., Ltd. Signaling for video block partition mode
WO2020181428A1 (zh) * 2019-03-08 2020-09-17 Oppo广东移动通信有限公司 预测方法、编码器、解码器及计算机存储介质
CN114303385A (zh) * 2019-08-15 2022-04-08 北京达佳互联信息技术有限公司 视频编解码中的小色度块大小限制
CN110798683B (zh) * 2019-08-26 2022-05-27 腾讯科技(深圳)有限公司 数据解码方法、装置和数据编码方法、装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101222641A (zh) * 2007-01-11 2008-07-16 华为技术有限公司 帧内预测编解码方法及其装置
CN105532000A (zh) * 2013-09-13 2016-04-27 佳能株式会社 用于对视频数据进行编码和解码的方法、设备和系统
EP3200459A1 (en) * 2014-09-22 2017-08-02 ZTE Corporation Encoding method, decoding method, apparatus and electronic device

Also Published As

Publication number Publication date
CN110798683A (zh) 2020-02-14
WO2021037041A1 (zh) 2021-03-04
EP3955570A4 (en) 2022-06-08
CN114979630A (zh) 2022-08-30
EP3955570A1 (en) 2022-02-16
US20210409688A1 (en) 2021-12-30
US11949853B2 (en) 2024-04-02

Similar Documents

Publication Publication Date Title
CN110798683B (zh) 数据解码方法、装置和数据编码方法、装置
US11178419B2 (en) Picture prediction method and related apparatus
JP7303325B2 (ja) ビデオ処理方法、装置、記憶媒体、及び記憶方法
ES2755882T3 (es) Procedimiento de codificación de imágenes en movimiento, procedimiento de descodificación de imágenes en movimiento y aparatos de los mismos
TWI827616B (zh) 用以編碼及解碼經轉換之視訊樣本區塊的方法、設備和系統
KR100968652B1 (ko) 이미지 프레임들의 비-프레임-에지 블록들을 표현함에있어서의 강화된 압축
TW201740730A (zh) 用於視訊寫碼之濾波器之幾何轉換
US8902994B1 (en) Deblocking filtering
CN113748676A (zh) 帧内编解码模式下的矩阵推导
WO2015124058A1 (zh) 编解码方法和装置
WO2015052273A1 (en) Method and apparatus for displacement vector component prediction in video coding and decoding
US9380314B2 (en) Pixel retrieval for frame reconstruction
BR122017024393B1 (pt) Método e aparelho para codificar ou decodificar uma imagem com predição de informação de movimento inter-camada de acordo com esquema de compressão de informação de movimento
US10368071B2 (en) Encoding data arrays
TW202135530A (zh) 用於編碼和解碼視訊樣本區塊的方法、設備及系統
CN110868602B (zh) 视频编码器、视频解码器及相应方法
WO2021238396A1 (zh) 帧间预测方法、编码器、解码器以及计算机存储介质
CN112004114B (zh) 视频处理方法、装置、可读存储介质及电子设备
CN116866591A (zh) 一种图像编码方法、装置及计算机设备、介质
CN114424544A (zh) 允许基于矩阵的帧内预测块具有多个变换块
KR20220066166A (ko) 현재 블록의 예측 방법 및 예측 장치, 디바이스, 저장 매체
CN109672889A (zh) 约束的序列数据头的方法及装置
WO2024077553A1 (zh) 视频编解码方法、装置、设备、系统、及存储介质
CN110868601B (zh) 帧间预测方法、装置以及视频编码器和视频解码器
US20240040133A1 (en) Video coding using multi-model linear model

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40020198

Country of ref document: HK

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant