CN116472707A - 图像预测方法、编码器、解码器以及计算机存储介质 - Google Patents

图像预测方法、编码器、解码器以及计算机存储介质 Download PDF

Info

Publication number
CN116472707A
CN116472707A CN202080105520.2A CN202080105520A CN116472707A CN 116472707 A CN116472707 A CN 116472707A CN 202080105520 A CN202080105520 A CN 202080105520A CN 116472707 A CN116472707 A CN 116472707A
Authority
CN
China
Prior art keywords
current block
image component
value
reference image
predicted
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
CN202080105520.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.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications 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 Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Publication of CN116472707A publication Critical patent/CN116472707A/zh
Pending legal-status Critical Current

Links

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/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/117Filters, e.g. for pre-processing or post-processing
    • 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/186Methods 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 colour or a chrominance component
    • 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
    • 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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • 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/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes

Landscapes

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

Abstract

一种图像预测方法、编码器、解码器以及计算机存储介质,图像预测方法应用于编码器。该方法包括:确定当前块的待预测图像分量的初始预测值;确定所述当前块的参考图像分量相关的样值;根据所述参考图像分量相关的样值,确定所述当前块的边信息;利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值;根据所述目标预测值,对所述当前块的待预测图像分量进行编码。

Description

图像预测方法、编码器、解码器以及计算机存储介质 技术领域
本申请涉及视频编解码技术领域,尤其涉及一种图像预测方法、编码器、解码器以及计算机存储介质。
背景技术
随着人们对视频显示质量要求的提高,高清和超高清视频等新视频应用形式应运而生。H.265/高效率视频编码(High Efficiency Video Coding,HEVC)已经无法满足视频应用迅速发展的需求,联合视频研究组(Joint Video Exploration Team,JVET)制定了最新的视频编码标准H.266/多功能视频编码(Versatile Video Coding,VVC),其相应的测试模型为VVC的参考软件测试平台(VVC Test Model,VTM)。
在H.266/VVC中,考虑到视频数据在空间、时间、分量间的相关性,目前产生了多种预测技术。在现有的这多种预测技术中,目前已有的预测算法没有充分考虑不同分量间的相关性,导致降低了分量间预测的准确性,进而降低了压缩编码效率。另外,使用已有的跨分量线性模型(Cross-component Linear Model,CCLM)预测模式所确定的当前块的预测值与当前块周围相邻参考像素的样值之间还存在明显的不连续性,从而降低了预测准确性,进而降低了压缩编码效率。
发明内容
本申请提供了一种图像预测方法、编码器、解码器以及计算机存储介质,可以实现对图像分量的预测值进行增强,使得增强后的目标预测值更接近于真实值,从而能够有效提高预测精度,进而提高编解码效率。
本申请的技术方案可以如下实现:
第一方面,本申请实施例提供了一种图像预测方法,应用于编码器,该方法包括:
确定当前块的待预测图像分量的初始预测值;
确定所述当前块的参考图像分量相关的样值;
根据所述参考图像分量相关的样值,确定所述当前块的边信息;
利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值;
根据所述目标预测值,对所述当前块的待预测图像分量进行编码。
第二方面,本申请实施例提供了一种图像预测方法,应用于解码器,该方法包括:
解析码流,获取当前块的目标预测模式;
根据所述目标预测模式,确定所述当前块的待预测图像分量的初始预测值;
确定所述当前块的参考图像分量相关的样值;
根据所述参考图像分量相关的样值,确定所述当前块的边信息;
利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值;
根据所述目标预测值,对所述当前块的待预测图像分量进行解码。
第三方面,本申请实施例提供了一种编码器,所述编码器包括第一确定单元、第一预测单元和编码单元;其中,
所述第一确定单元,配置为确定当前块的待预测图像分量的初始预测值;
所述第一确定单元,还配置为确定所述当前块的参考图像分量相关的样值;以及根据所述参考图像分量相关的样值,确定所述当前块的边信息;
所述第一预测单元,配置为利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波, 得到所述当前块的待预测图像分量的目标预测值;
所述编码单元,配置为根据所述目标预测值,对所述当前块的待预测图像分量进行编码。
第四方面,本申请实施例提供了一种编码器,所述编码器包括第一存储器和第一处理器;其中,
所述第一存储器,用于存储能够在所述第一处理器上运行的计算机程序;
所述第一处理器,用于在运行所述计算机程序时,执行如第一方面所述的方法。
第五方面,本申请实施例提供了一种解码器,所述解码器包括解析单元、第二确定单元、第二预测单元和解码单元;其中,
所述解析单元,配置为解析码流,确定当前块的目标预测模式;
所述第二确定单元,配置为根据所述目标预测模式,确定所述当前块的待预测图像分量的初始预测值;
所述第二确定单元,还配置为确定所述当前块的参考图像分量相关的样值;以及根据所述参考图像分量相关的样值,确定所述当前块的边信息;
所述第二预测单元,配置为利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值;
所述解码单元,配置为根据所述目标预测值,对所述当前块的待预测图像分量进行解码。
第六方面,本申请实施例提供了一种解码器,所述解码器包括第二存储器和第二处理器;其中,
所述第二存储器,用于存储能够在所述第二处理器上运行的计算机程序;
所述第二处理器,用于在运行所述计算机程序时,执行如第二方面所述的方法。
第七方面,本申请实施例提供了一种计算机存储介质,所述计算机存储介质存储有图像预测程序,所述图像预测程序被第一处理器执行时实现如第一方面所述的方法、或者被第二处理器执行时实现如第二方面所述的方法。
本申请实施例提供了一种图像预测方法、编码器、解码器以及计算机存储介质,在编码器侧,通过确定当前块的待预测图像分量的初始预测值;确定所述当前块的参考图像分量相关的样值;根据所述参考图像分量相关的样值,确定所述当前块的边信息;利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值;根据所述目标预测值,对所述当前块的待预测图像分量进行编码。在解码器侧,解析码流,获取当前块的目标预测模式;根据所述目标预测模式,确定所述当前块的待预测图像分量的初始预测值;确定所述当前块的参考图像分量相关的样值;根据所述参考图像分量相关的样值,确定所述当前块的边信息;利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值;根据所述目标预测值,对所述当前块的待预测图像分量进行解码。这样,可以利用图像分量之间的相关性,根据当前块的边信息和预设网络模型对初始预测值进行预测增强,使得增强后的目标预测值更接近于真实值,从而有效提高了预测精度,进而提高了编解码效率,同时提高了整体编解码的性能。
附图说明
图1为相关技术方案提供的一种MIP预测过程的流程框图;
图2A为本申请实施例提供的一种视频编码系统的组成框图;
图2B为本申请实施例提供的一种视频解码系统的组成框图;
图3为本申请实施例提供的一种图像预测方法的流程示意图;
图4为本申请实施例提供的一种图像预测方法的应用场景示意图;
图5为本申请实施例提供的另一种图像预测方法的应用场景示意图;
图6为本申请实施例提供的一种预设网络模型的网络结构示意图;
图7为本申请实施例提供的一种残差层的网络结构示意图;
图8为本申请实施例提供的另一种预设网络模型的网络结构示意图;
图9为本申请实施例提供的又一种预设网络模型的网络结构示意图;
图10为本申请实施例提供的再一种预设网络模型的网络结构示意图;
图11为本申请实施例提供的又一种图像预测方法的应用场景示意图;
图12为本申请实施例提供的再一种图像预测方法的应用场景示意图;
图13为本申请实施例提供的再一种图像预测方法的应用场景示意图;
图14为本申请实施例提供的再一种图像预测方法的应用场景示意图;
图15为本申请实施例提供的再一种图像预测方法的应用场景示意图;
图16为本申请实施例提供的再一种图像预测方法的应用场景示意图;
图17为本申请实施例提供的再一种图像预测方法的应用场景示意图;
图18为本申请实施例提供的另一种图像预测方法的流程示意图;
图19为本申请实施例提供的一种编码器的组成结构示意图;
图20为本申请实施例提供的一种编码器的具体硬件结构示意图;
图21为本申请实施例提供的一种解码器的组成结构示意图;
图22为本申请实施例提供的一种解码器的具体硬件结构示意图。
具体实施方式
为了能够更加详尽地了解本申请实施例的特点与技术内容,下面结合附图对本申请实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本申请实施例。
在视频图像中,一般采用第一图像分量、第二图像分量和第三图像分量来表征编码块(Coding Block,CB)。其中,这三个图像分量分别为一个亮度分量、一个蓝色色度分量和一个红色色度分量,具体地,亮度分量通常使用符号Y表示,蓝色色度分量通常使用符号Cb或者U表示,红色色度分量通常使用符号Cr或者V表示;这样,视频图像可以用YCbCr格式表示,也可以用YUV格式表示。
在本申请实施例中,第一图像分量可以为亮度分量,第二图像分量可以为蓝色色度分量,第三图像分量可以为红色色度分量,但是本申请实施例不作具体限定。
下面将针对目前各种预测技术进行相关技术方案描述。
可以理解,考虑到视频数据在空间、时间、分量间的相关性,目前的视频编码中存在多种预测技术。例如,在H.266/VVC中,就使用到了以下各种预测技术。这里,针对这多种预测技术,可以划分为帧内预测技术、帧间预测技术和分量间预测技术。
(1)对于帧内预测技术而言
利用当前块上侧、左侧区域已经编码且解码后的重建像素为参考,预测当前的像素值。具体来说,包括但不限于以下各种帧内预测模式:
(a)平面(PLANAR)模式:主要用于图像纹理相对平滑且有渐变过程的区域,使用当前块内待预测像素点的上下左右4个相邻边界上的参考像素点进行线性插值求和平均(基于位置),来得到当前像素点的预测值。
(b)直流(Direct Current,DC)模式:主要用于图像平坦,纹理平滑,且没有渐变的区域,将上一行和左一列的所有参考像素求均值作为当前块内像素的预测值。
(c)角度预测模式:VVC采纳了更加精细的帧内预测方向,将HEVC中的33种角度预测模式扩展到了65种,利用上一行和左一列的所有参考像素进行角度投影,得到当前像素预测值。
(d)基于位置的帧内预测组合(Position Dependent intra Prediction Combination,PDPC):为一种对预测值的修正的技术。部分帧内模式在进行帧内预测之后,进行PDPC的加权平均计算,得到最终预测值,
(e)宽角度帧内预测模式(Wide-Angle Intra Prediction,WAIP):对于非方形的编码块(for non-square blocks),不再限制45°~-135°的角度预测范围,依据编码单元(Coding Unit,CU)的宽高比,自适应替换原始的角度预测模式,扩展出28种宽角度模式。
(f)多参考行帧内预测模式(Multiple reference line intra prediction,MRL):用多个可选的参考行(上侧相邻和左侧相邻)进行帧内预测。
(g)基于矩阵的帧内预测模式(Matrix weighted Intra Prediction,MIP):通过训练出来矩阵,将上一行和左一列的输入与基于深度学习训练出的矩阵相乘,得到当前块的预测值。
等等。
(2)对于帧间预测技术而言
利用参考帧中已重建像素值为参考,结合运动信息对当前编码块的像素值进行预测。具体来说,包括但不限于以下各种帧间预测模式:
(a)合并(Merge)模式:H.266/VVC中的Merge模式会为当前CU建立一个运动矢量(Motion Vector,MV)候选列表,包含6个候选运动信息,通过遍历这6个候选运动信息,并进行率失真代价的计算,最终选取率失真代价最小(运动估计)的一个候选作为该Merge模式的最优运动信息。
(b)带有运动矢量差(Motion Vector Difference,MVD)的Merge模式(Merge mode with MVD,MMVD):选取Merge列表中的前两个候选作为初始的运动矢量基。然后对两个初始MV分别进行扩展, 主要在4种运动方向上进行8种偏移步长的搜索,即在初始MV上加对应的偏移值(即MVD)扩展得到2×8×4=64个新的运动矢量,从中选出率失真代价最小的一个MV作为MMVD的最优的Merge候选。
(c)联合帧内帧间预测(Combined Inter and Intra Prediction,CIIP):首先对当前CU进行两种预测,一是利用帧内Planar模式预测得到帧内预测块(用P_intra表示),另一种是通过常规Merge列表中最优的运动候选运动补偿得到帧间预测块(用P_inter表示)。然后对帧内和帧间的预测值进行加权平均得到最终的帧内帧间联合预测值。
(d)几何划分预测模式(Geometric partitioning mode,GPM):一种除了正方形和矩形之外的其他形状划分模式,GPM规定将360°不等间隔量化出24种角度,每种角度下最多有4种偏移参数,总共组合出64种GPM划分模式。将帧间块划分为两个非矩形的子分区分别进行单向预测后进行加权融合得到预测值,从而更灵活的表示帧间预测数据,降低预测误差,从而提高编码效率。
(e)基于块的仿射变换运动补偿预测(Affine Motion Compensated Prediction,Affine):块的仿射运动场由两个控制点(4参数)或三个控制点运动向量(6参数)的运动信息描述。
(f)基于子块的时态运动矢量预测(Subblock-based Temporal Motion Vector Prediction,SbTMVP):使用同位图像中的运动场来改进当前图像中CUs的运动矢量预测和merge模式。
(g)带有CU级权重的双向加权预测(Bi-prediction with CU-level Weight,BCW):对于VVC中的双向预测模式允许对两个预测信号进行加权平均。
等等。
(3)对于分量间预测技术而言
对CU的色度分量进行编码时,亮度分量已经完成编码而获得亮度重建值。这时候编码色度分量的像素值时,就可以利用同区域的亮度重建值对其进行预测,该技术称为CCLM色度预测编码。具体来说,CCLM预测过程的输入是当前块的亮度重建值,以及上相邻和左相邻的参考像素,CCLM预测过程的输出是当前块的色度预测值。下面以CCLM预测模式为例进行说明。
为了利用亮度分量与色度分量之间的相关信息,基于对图像局部亮度分量和色度分量呈线性关系的假设,H.266/VVC提出了一种针对色度分量的编码技术,即CCLM技术。这里,CCLM技术可以通过使用建立的线性模型对CU的亮度重建值进行计算来得到编码块色度分量的预测值。具体如下所示,
Pred C(i,j)=α·Rec L(i,j)+β (1)
其中,Pred C(i,j)表示编码块的色度预测值,Rec L(i,j)表示同一编码块中(经过下采样的)亮度重建值,α和β表示模型参数,
可以理解,CCLM技术的预测过程主要总结为四个步骤:①根据不同的CCLM预测模式确定亮度、色度的相邻参考像素范围以及可用性,并选定用于后续线性模型推导的相邻参考像素;②由于4:2:0的颜色分量采样格式下色度分量在水平方向、垂直方向上都为亮度分量的一半,为了使当前CU的亮度像素和色度像素一一对应,需要对亮度块进行下采样;③根据选定的相邻参考像素进行分组处理并进行线性模型参数的推导计算,以得到线性模型;④根据得到的线性模型计算色度预测值。
这里,模型参数(α和β)的推导如下:
CCLM模式共可以包括3种模式,分别为:LM模式,LM_T模式和LM_L模式。这三种模式的主要区别在于选择的相邻参考像素范围不同。假定当前色度块的宽度和高度分别表示为W、H,用Ref top和Ref left分别表示色度块上侧相邻参考像素的个数和左侧相邻参考像素的个数,用numLeftBelow和numTopRight分别表示当前色度块左下侧可用的相邻参考像素的个数和右上侧可用的相邻参考像素的个数,如此,可以将这三种模式的相邻参考像素的选择描述如下:
(i)LM模式。使用当前块的上一行与宽度相等数量的相邻参考像素和左一列与高度相等数量的相邻参考像素,即Ref top=W,Ref left=H,
LM模式下四个亮度样本点的位置分别为:
(ii)LM_T模式。仅使用当前块的上一行的相邻参考像素,并将范围扩展至当前块的右上侧相邻区域,其范围表示如下:
LM_T模式下四个亮度样本点的位置分别为:
(iii)LM_L模式。仅使用当前块的左一列的相邻参考像素,并将范围扩展至当前块的左下侧相邻区域,其范围表示如下:
LM_L模式下四个亮度样本点的位置分别为:
之后,可以对所选取的四个亮度样本点进行下采样,再进行四次比较,然后找出最小的两个点(用x 0A和x 1A表示)和最大的两个点(用x 0B和x 1B表示),对应的色度样本点分别用y 0A和y 1A、y 0B和y 1B表示。如图1所示,水平轴(即X轴)用于表示亮度(Luma),垂直轴(即Y轴)用于表示色度(Chroma)。在图1中,两个用黑色填充的点为最小的两个点,两个用白色填充的点为最大的两个点,在两个黑色填充的点之间,用网格线填充的点用Xa和Ya分别表示亮度均值和色度均值;在两个白色填充的点之间,用网格线填充的点用Xb和Yb分别表示亮度均值和色度均值。其中,Xa、Ya、Xb和Yb的计算如下,
Xa=(x 0A+x 1A+1)>>1;Ya=(y 0A+y 1A+1)>>1;
Xb=(x 0B+x 1B+1)>>1;Yb=(y 0B+y 1B+1)>>1。
这样,根据Xa、Ya、Xb和Yb可以推导出模型参数。其中,模型参数α的推导如式(4)所示,模型参数β的推导如式(5)所示。
β=Y b-α·X b (5)
在得到α和β之后,最终可以根据式(1)计算得到当前块的色度预测值。
在现有的这多种预测技术中,由于目前已有的预测算法没有充分考虑不同分量间的相关性,导致降低了分量间预测的准确性,进而降低了压缩编码效率。另外,使用已有的CCLM预测方法确定的当前块的预测值与所述当前块周围相邻参考像素的样值之间还存在明显的不连续性,也就降低了预测准确性,进而降低了压缩编码效率。
基于此,本申请实施例提供了一种图像预测方法,既可以应用于编码器,又可以应用于解码器。该方法的基本思想是:在确定当前块的待预测图像分量的初始预测值之后,确定所述当前块的参考图像分量相关的样值;然后根据所述参考图像分量相关的样值,确定所述当前块的边信息;再利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值;最后根据所述目标预测值,对所述当前块的待预测图像分量进行编码或者解码。这样,可以利用图像分量之间的相关性,根据当前块的边信息和预设网络模型对初始预测值进行预测增强,使得增强后的目标预测值更接近于真实值,从而有效提高了预测精度,进而提高了编解码效率,同时提高了整体编解码的性能。
下面将结合附图对本申请各实施例进行详细阐述。
参见图2A,其示出了本申请实施例提供的一种视频编码系统的组成框图示例;如图2A所示,该视频编码系统10包括变换与量化单元101、帧内估计单元102、帧内预测单元103、运动补偿单元104、运动估计单元105、反变换与反量化单元106、滤波器控制分析单元107、滤波单元108、编码单元109和解码图像缓存单元110等,其中,滤波单元108可以实现去方块(Deblocking)滤波、样本自适应缩进(Sample Adaptive 0ffset,SAO)滤波、以及自适应环路滤波(Adaptive loop Filter,ALF)等,编码单元109可以实现头信息编码及基于上下文的自适应二进制算术编码(Context-based Adaptive Binary Arithmatic Coding,CABAC)。针对输入的原始视频信号,通过编码树块(Coding Tree Unit,CTU)的划分可以得到一个视频编码块,然后对经过帧内或帧间预测后得到的残差像素信息通过变换与量化单元101对该视频编码块进行变换,包括将残差信息从像素域变换到变换域,并对所得的变换系数进行量化,用以进一步减少比特率;帧内估计单元102和帧内预测单元103是用于对该视频编码块进行帧内预测;明确地说,帧内估计单元102和帧内预测单元103用于确定待用以编码该视频编码块的帧内预测模式;运动补偿单元104和运动估计单元105用于执行所接收的视频编码块相对于一或多个参考帧中的一或多个块的帧间预测编码以提供时间预测信息;由运动估计单元105执行的运动估计为产生运动向量的过程,所述运动向量可以估计该视频编码块的运动,然后由运动补偿单元104基于由运动估计单元105所确定的运动向量执行运动补偿;在确定帧内预测模式之后,帧内预测单元103还用于将所选择的帧内预测数据提供到编码单元109,而且运动估计单元105将所计算确定的运动向量数据也发送到编码单元109;此外,反变换与反量化单元106是用于该视频编码块的重构建,在像素域中重构建残差块,该重构建残差块通过滤波器控制分析单元107和滤波单元108去除方块效应伪影,然后将该重构残差块添加到解码图像缓存单元110的帧中的一个预测性块,用以产生经重构建的视频编码块;编码单元109是用于编码各种编码参数及量化后的变换系数,在基于CABAC的编码算法中,上下文内容可基于相邻编码块,可用于编码指示所确定的帧内预测模式的信息,输出该视频信号的码流;而解码图像缓存单元110是用于存放重构建的视频编码块,用于预测参考。随着视频图像编码的进行,会不断生成新的重构建的视频编 码块,这些重构建的视频编码块都会被存放在解码图像缓存单元110中。
参见图2B,其示出了本申请实施例提供的一种视频解码系统的组成框图示例;如图2B所示,该视频解码系统20包括解码单元201、反变换与反量化单元202、帧内预测单元203、运动补偿单元204、滤波单元205和解码图像缓存单元206等,其中,解码单元201可以实现头信息解码以及CABAC解码,滤波单元205可以实现去方块滤波、SAO滤波以及ALF滤波等。输入的视频信号经过图2A的编码处理之后,输出该视频信号的码流;该码流输入视频解码系统20中,首先经过解码单元201,用于得到解码后的变换系数;针对该变换系数通过反变换与反量化单元202进行处理,以便在像素域中产生残差块;帧内预测单元203可用于基于所确定的帧内预测模式和来自当前帧或图片的先前经解码块的数据而产生当前视频解码块的预测数据;运动补偿单元204是通过剖析运动向量和其他关联语法元素来确定用于视频解码块的预测信息,并使用该预测信息以产生正被解码的视频解码块的预测性块;通过对来自反变换与反量化单元202的残差块与由帧内预测单元203或运动补偿单元204产生的对应预测性块进行求和,而形成解码的视频块;该解码的视频信号通过滤波单元205以便去除方块效应伪影,可以改善视频质量;然后将经解码的视频块存储于解码图像缓存单元206中,解码图像缓存单元206存储用于后续帧内预测或运动补偿的参考图像,同时也用于视频信号的输出,即得到了所恢复的原始视频信号。
需要说明的是,本申请实施例中的图像预测方法是在各项预测技术进行之后对初始预测值进行增强。这里,本申请实施例中的图像预测方法可以应用于视频编码系统,即该图像预测方法可以是在图2A的预测部分(如图2A中的黑色加粗框图部分)之后应用,或者还可以是在环路滤波部分(如图2A中的灰色加粗框图部分)之前或之后应用。本申请实施例中的图像预测方法还可以应用于视频解码系统,即该图像预测方法可以是在图2B的预测部分(如图2B中的黑色加粗框图部分)之后应用,或者还可以是在环路滤波部分(如图2B中的灰色加粗框图部分)之前或之后应用。也就是说,本申请实施例中的图像预测方法,既可以应用于视频编码系统,也可以应用于视频解码系统,甚至还可以同时应用于视频编码系统和视频解码系统,但是本申请实施例不作具体限定。
还需要说明的是,在进行详细阐述之前,说明书通篇中提到的“第一”、“第二”、“第三”等,仅仅是为了区分不同的特征,不具有限定优先级、先后顺序、大小关系等功能。
本申请的一实施例中,本申请实施例提供的图像预测方法应用于视频编码设备,即编码器。该方法所实现的功能可以通过编码器中的第一处理器调用计算机程序来实现,当然计算机程序可以保存在第一存储器中,可见,该编码器至少包括第一处理器和第一存储器。
基于上述图2A的应用场景示例,参见图3,其示出了本申请实施例提供的一种图像预测方法的流程示意图。如图3所示,该方法可以包括:
S301:确定当前块的待预测图像分量的初始预测值。
需要说明的是,视频图像可以划分为多个图像块,每个当前待编码的图像块可以称为编码块(Coding Block,CB)。这里,每个编码块可以包括第一图像分量、第二图像分量和第三图像分量;而当前块为视频图像中当前待进行第一图像分量或者第二图像分量或者第三图像分量预测的编码块。
其中,假定当前块进行第一图像分量预测,而且第一图像分量为亮度分量,即待预测图像分量为亮度分量,那么当前块也可以称为亮度块;或者,假定当前块进行第二图像分量预测,而且第二图像分量为色度分量,即待预测图像分量为色度分量,那么当前块也可以称为色度块。
在一些实施例中,所述确定当前块的待预测图像分量对应的初始预测值,可以包括:
确定所述当前块的目标预测模式;
根据所述目标预测模式对所述当前块的待预测图像分量进行预测,确定所述当前块的待预测图像分量的初始预测值。
需要说明的是,目标预测模式用于指示当前块编码预测采用的预测模式。这里,针对目标预测模式的确定,可以采用简单的决策策略,比如根据失真值的大小进行确定;也可以采用复杂的决策策略,比如根据率失真优化(Rate Distortion Optimization,RDO)的代价结果进行确定,本申请实施例不作任何限定。通常而言,本申请实施例可以采用RDO方式来确定当前块的目标预测模式。
具体地,在一些实施例中,所述确定所述当前块的目标预测模式,可以包括:
确定所述当前块的待预测图像分量;
利用一种或多种候选预测模式分别对所述待预测图像分量进行预编码,确定所述候选预测模式对应的率失真代价结果;
从所述率失真代价结果中选取最优率失真代价结果,并将所述最优率失真代价结果对应的候选预测模式确定为所述当前块的目标预测模式。
需要说明的是,在编码器侧,针对当前块可以采用一种或多种候选预测模式分别对当前块的待预测图像分量进行预编码处理。这里,候选预测模式通常包括有帧内预测模式、帧间预测模式和分量间预测 模式。其中,帧内预测模式可以包括PLANAR模式、DC模式、角度预测模式、PDCP模式、WAIP模式、MRL模式和MIP模式等,帧间预测模式可以包括Merge模式、MMVD模式、CIIP模式、GPM模式、SbTMVP模式和BCW模式等。分量间预测模式可以包括同图像分量间预测模式和跨图像分量间预测模式。
也就是说,在一些实施例中,目标预测模式可以是帧内预测模式或帧间预测模式。更甚者,目标预测模式还可以是同图像分量间预测模式或跨图像分量间预测模式。一般情况下,分量间预测模式通常是指跨图像分量间预测模式,比如CCLM模式。
这样,在利用一种或多种候选预测模式分别对当前块的待预测图像分量进行预编码之后,可以得到候选预测模式对应的率失真代价结果;然后从所得到的率失真代价结果中选取最优率失真代价结果,并将该最优率失真代价结果对应的候选预测模式确定为当前块的目标预测模式。除此之外,还可以在利用一种或多种候选预测模式分别对当前块的待预测图像分量进行预编码之后,可以得到候选预测模式对应的失真值;然后从所得到的失真值中选取最小失真值,并将最小失真值对应的候选预测模式确定为当前块的目标预测模式。如此,最终使用所确定的目标预测模式对当前块进行编码,可以使得预测残差较小,能够提高编码效率。
S302:确定所述当前块的参考图像分量相关的样值。
需要说明的是,参考图像分量可以包括当前图像中不同于待预测图像分量的一个或多个图像分量,其中,当前图像是所述当前块所处的图像。这里的当前图像是指可以使用当前图像中的不同图像分量作为本申请实施例中滤波增强的输入。
在一些实施例中,所述确定所述当前块的参考图像分量相关的样值,可以包括:
根据所述当前块的参考图像分量的预测值和重建值中至少之一,确定所述参考图像分量相关的样值。
需要说明的是,这里参考图像分量的预测值可以解释为“根据当前块参考图像分量的预测模式,确定该预测值”,这里参考图像分量的重建值可以解释为“根据当前块参考图像分量的预测模式在得到预测值之后,通过编码重建所得到的重建值”。也就是说,可以根据当前块的参考图像分量的预测值,或者可以根据当前块的参考图像分量的重建值,或者还可以根据当前块的参考图像分量的预测值和重建值,用以确定出参考图像分量相关的样值。
进一步地,在一些实施例中,所述确定所述当前块的参考图像分量相关的样值,可以包括:
根据所述当前块的相邻像素对应于所述参考图像分量的预测值和重建值中至少之一,确定所述参考图像分量相关的样值。
需要说明的是,这里参考图像分量的预测值可以解释为“根据所述相邻像素所处的图像块对应于参考图像分量的预测模式,确定该预测值”,这里参考图像分量的重建值可以解释为“根据所述相邻像素所处的图像块对应于参考图像分量的预测模式在得到预测值之后,通过编码重建所得到的重建值”。也就是说,可以根据当前块的相邻像素对应于参考图像分量的预测值,或者可以根据当前块的相邻像素对应于参考图像分量的重建值,或者还可以根据当前块的相邻像素对应于参考图像分量的预测值和重建值,用以确定出参考图像分量相关的样值。
还需要说明的是,当前块的相邻像素可以包括与所述当前块相邻的至少一行像素。或者,所述当前块的相邻像素也可以包括与所述当前块相邻的至少一列像素。
在本申请实施例中,针对当前块的参考图像分量相关的样值的确定,具体来讲,当前块的参考图像分量相关的样值至少可包括下述其中一项:当前块的参考图像分量的重建值、与当前块相邻的至少一行像素对应的图像分量值、与当前块相邻的至少一列像素对应的图像分量值。其中,参考图像分量与被预测图像分量不同,图像分量值可以包括被预测图像分量参考值和/或参考图像分量参考值。这里的参考值可以是预测值或者重建值。
也可以说,当前块的参考图像分量相关的样值可以包括所述当前块的参考图像分量的重建值、与所述当前块相邻的至少一行像素对应的参考图像分量值和与所述当前块相邻的至少一列像素对应的参考图像分量值中的至少两项,其中,所述当前块的参考图像分量不同于所述待预测图像分量。
另外,针对帧间预测模式而言,参考图像分量可以包括参考图像中一个或多个图像分量,其中,所述参考图像不同于所述当前块所处的当前图像。
需要说明的是,这里的参考图像不同于当前块所在的当前图像,而且参考图像是指可以使用参考图像中的不同图像分量作为本申请实施例中滤波增强的输入。
在一些实施例中,所述确定所述当前块的参考图像分量相关的样值,可以包括:
根据所述当前块的预测参考块中一个或多个图像分量的重建值,确定所述参考图像分量相关的样值。
进一步地,在一些实施例中,该方法还可以包括:
当目标预测模式指示帧间预测模式时,确定所述当前块的帧间预测模式参数,其中,所述帧间预测 模式参数包括指示所述参考图像对应的参考图像索引和指示所述参考图像中所述预测参考块的运动矢量;
将所确定的帧间预测模式参数写入码流。
需要说明的是,针对帧间预测模式,这时候除了当前块所在的当前图像之外,还需要有参考图像。其中,参考图像索引是指参考图像对应的图像索引序号,运动矢量则是用于指示参考图像中的预测参考块。
还需要说明的是,对于帧间预测模式,参考图像索引和运动矢量可以作为帧间预测模式参数并写入码流,以便由编码器传输到解码器。
这样,在得到当前块的参考图像分量相关的样值之后,可以根据参考图像分量相关的样值来确定当前块的边信息。
S303:根据所述参考图像分量相关的样值,确定所述当前块的边信息。
需要说明的是,在本申请实施例中,本申请的技术关键是使用一个图像分量的相关参数对另一个图像分量的初始预测值进行增强滤波。这里,“一个图像分量”的相关参数主要为当前块的边信息。其中,一方面可以直接将当前块的参考图像分量相关的样值确定为当前块的边信息;另一方面也可以对参考图像分量相关的样值进行上采样/下采样等滤波处理,将滤波后的样值确定为当前块的边信息,本申请实施例不作任何限定。
也就是说,在一种可能的实施方式中,所述根据所述参考图像分量相关的样值,确定所述当前块的边信息,可以包括:将所述参考图像分量相关的样值确定为所述当前块的边信息。
在另一种可能的实施方式中,所述根据所述参考图像分量相关的样值,确定所述当前块的边信息,可以包括:根据颜色分量采样格式,对所述参考图像分量相关的样值进行第一滤波处理,得到滤波后的参考图像分量相关的样值;将所述滤波后的参考图像分量相关的样值确定为所述当前块的边信息。
需要说明的是,颜色分量可以包括亮度分量、蓝色色度分量和红色色度分量,而颜色分量采样格式可以有4:4:4格式、4:2:2格式和4:2:0格式。其中,4:4:4格式表示相对于亮度分量,蓝色色度分量或红色色度分量均没有下采样。4:2:2格式表示蓝色色度分量或红色色度分量相对于亮度分量进行2:1的水平下采样,没有竖直下采样。4:2:0格式表示蓝色色度分量或红色色度分量相对于亮度分量进行2:1的水平下采样和2:1的竖直下采样。也就是说,4:2:2格式和4:2:0格式适用于上述的第一滤波处理,而4:4:4格式不适用于上述的第一滤波处理。
进一步地,在一些实施例中,该方法还可以包括:
将所述颜色分量采样格式写入码流。
或者,在一些实施例中,该方法还可以包括:
确定待写入码流的比特字段的取值;其中,所述比特字段的取值用于指示所述颜色分量采样格式;
将所述比特字段的取值写入码流。
也就是说,编码器侧,在确定颜色分量采样格式之后,可以将颜色分量采样格式写入码流;或者,确定出用于指示颜色分量采样格式的比特字段的取值,该比特字段的取值写入码流;然后由编码器传输到解码器,以便解码器解析码流后直接获得颜色分量采样格式。
还需要说明的是,由于亮度分量和色度分量(比如蓝色色度分量或红色色度分量)的分辨率不同,这时候根据具体情况需要对参考图像分量相关的样值进行第一滤波处理,比如上采样/下采样处理。具体地,在一些实施例中,所述对所述参考图像分量相关的样值进行第一滤波处理,可以包括:
当所述初始预测值的分辨率小于所述参考图像分量相关的样值的分辨率时,对所述参考图像分量相关的样值进行下采样处理;
当所述初始预测值的分辨率大于所述参考图像分量相关的样值的分辨率时,对所述参考图像分量相关的样值进行上采样处理;
当所述初始预测值的分辨率等于所述参考图像分量相关的样值的分辨率时,将所述滤波后的参考图像分量相关的样值设置为等于所述参考图像分量相关的样值。
在本申请实施例中,滤波后的参考图像分量相关的样值的分辨率与初始预测值的分辨率相等。
示例性地,如果待预测图像分量为色度分量,而参考图像分量为亮度分量,那么需要对参考图像分量相关的样值进行下采样处理,而且下采样处理后的亮度分量的分辨率与色度分量的分辨率相同;或者,如果待预测图像分量为亮度分量,而参考图像分量为色度分量,那么需要对参考图像分量相关的样值进行上采样处理,而且上采样处理后的色度分量的分辨率与亮度分量的分辨率相同。此外,如果待预测图像分量为蓝色色度分量,而参考图像分量为红色色度分量,那么由于蓝色色度分量的分辨率和红色色度分量的分辨率相同,此时不需要对参考图像分量相关的样值进行第一滤波处理,即可以将滤波后的参考图像分量相关的样值设置为等于滤波之前参考图像分量相关的样值。
这样,在确定出参考图像分量相关的样值之后,可以根据参考图像分量相关的样值确定出当前块的边信息,以便利用当前块的边信息对待预测图像分量的初始预测值进行滤波增强。
S304:利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值。
需要说明的是,本申请实施例利用预设网络模型,该预设网络模型可以命名为局部数据短接的神经网络模型,或者命名为半残差网络(Semi-residual Network),然后结合当前块的边信息对初始预测值进行滤波增强,用以提高预测的准确度。
还需要说明的是,当前块的边信息并不等同于本领域人员常规理解的“side information”,本申请实施例的边信息主要为:使用“一个图像分量”对“另一个图像分量”的预测值进行滤波增强。另外,边信息可以为“一个或多个图像分量”相关的参数,这些参数可以是用于获得“一个或多个图像分量”的预测值或者重建值的参数,也可以直接是“一个或多个图像分量”的预测值或者重建值。也就是说,本申请实施例中,当前块的边信息可以是根据当前块的参考图像分量相关的样值确定的。
对于预设网络模型而言,在S304之前,该方法还可以包括:确定预设网络模型。
在本申请实施例中,预设网络模型是通过模型训练得到的。在一些实施例中,具体可以包括:
获取训练样本集;其中,所述训练样本集包括一个或多个图像;
构建初始网络模型,利用所述训练样本集对所述初始网络模型进行训练;
将训练后的初始网络模型确定为所述预设网络模型。
需要说明的是,训练样本集可以包括有一个或多个图像。训练样本集可以是编码器在本地存储的训练样本集合,也可以是根据链接或者地址信息从远程服务器上获取的训练样本集合,甚至也可以是视频中已经解码的图像样本集合,本申请实施例不作具体限定。
这样,在获取到训练样本集之后,可以利用训练样本集通过代价函数对初始网络模型进行训练,当该代价函数的损失值(Loss)收敛到一定预设阈值时,这时候训练得到的初始网络模型即为预设网络模型。这里,代价函数可以为率失真代价函数,预设阈值可以根据实际情况进行具体设定,本申请实施例不作任何限定。
还需要说明的是,所述确定预设网络模型,可以先确定出预设网络模型中的网络模型参数。在一些实施例中,所述确定所述预设网络模型,可以包括:
确定网络模型参数;
根据所确定的网络模型参数,构建所述预设网络模型。
在本申请实施例中,网络模型参数可以是通过模型训练确定的。具体地,在一些实施例中,可以包括:获取训练样本集;构建初始网络模型,其中,所述初始网络模型包括模型参数;利用所述训练样本集对所述初始网络模型进行训练,将训练后的初始网络模型中的模型参数确定为所述网络模型参数。
这时候,在编码器侧,通过模型训练得到网络模型参数之后,可以将网络模型参数写入码流。这样,解码器侧可直接通过解析码流来获得网络模型参数,而无需在解码器侧进行模型训练就能够构建出预设网络模型。
在一些实施例中,预设网络模型可以包括神经网络模型和第一加法器。
需要说明的是,神经网络模型可以包括至少一项:卷积层、残差层、平均池化层和采样率转换模块。这里,卷积神经网络(Convolutional Neural Networks,CNN)是一类包含卷积计算且具有深度结构的前馈神经网络(Feedforward Neural Networks),是深度学习(deep learning)的代表算法之一。卷积神经网络具有表征学习(representation learning)能力,能够按其阶层结构对输入信息进行平移不变分类(shift-invariant classification),因此也被称为“平移不变人工神经网络(Shift-Invariant Artificial Neural Networks,SIANN)”。神经网络已经发展到了深度学习阶段。深度学习是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法,其强大的表达能力使其在视频和图像处理上的表现取得了良好的效果。
还需要说明的是,残差层可以是由激活函数、卷积层和第二加法器组成,但是这里不作具体限定。其中,激活函数可以是线性整流函数(Rectified Linear Unit,ReLU),又可称为修正线性单元,是一种人工神经网络中常用的激活函数,通常指代以斜坡函数及其变种为代表的非线性函数。
进一步地,在一些实施例中,所述利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值,可以包括:
将所述当前块的边信息和所述待预测图像分量的初始预测值输入到所述预设网络模型,通过所述预设网络模型输出所述待预测图像分量的目标预测值。
需要说明的是,由于预设网络模型可以包括神经网络模型和第一加法器,那么将所述当前块的边信息和所述待预测图像分量的初始预测值输入到所述预设网络模型,通过所述预设网络模型输出所述待预 测图像分量的目标预测值,具体可以包括:将所述边信息和所述初始预测值输入所述神经网络模型,输出中间值;通过所述第一加法器对所述中间值和所述初始预测值进行相加处理,得到所述目标预测值。
也就是说,如图4所示,预设网络模型包括有神经网络模型401和第一加法器402。其中,输入为边信息和待预测图像分量的初始预测值,在经过神经网络模型401的处理后,可以得到中间值,然后通过第一加法器402对中间值和待预测图像分量的初始预测值进行相加处理,最终的输出为待预测图像分量的目标预测值。换句话说,该预设网络模型实现了从二通道输入降至一通道输出。
S305:根据所述目标预测值,对所述当前块的待预测图像分量进行编码。
需要说明的是,在得到待预测图像分量的目标预测值之后,可以对当前块的待预测图像分量进行编码。具体地,根据目标预测值,可以计算当前块的残差值(即目标预测值与真实值之间的差值),然后对残差值进行编码并写入码流。
本实施例提供了一种图像预测方法,应用于编码器。通过确定当前块的待预测图像分量的初始预测值;确定所述当前块的参考图像分量相关的样值;根据所述参考图像分量相关的样值,确定所述当前块的边信息;利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值;根据所述目标预测值,对所述当前块的待预测图像分量进行编码。这样,可以利用图像分量之间的相关性,根据当前块的边信息和预设网络模型对初始预测值进行预测增强,使得增强后的目标预测值更接近于真实值,从而有效提高了预测精度,进而提高了编解码效率,同时提高了整体编解码的性能。
本申请的另一实施例中,下面将结合几种具体应用场景对本申请实施例的图像预测方法进行详细阐述。
本申请实施例的技术方案提出利用局部数据短接的神经网络技术(或称为半残差网络),结合当前块周围的边信息与当前块的相关性,对预测后的初始预测值进行滤波增强,以提高预测准确度。也就是说,本申请实施例聚焦在对一个图像分量的初始预测值使用不同与该图像分量的其他一个或多个图像分量对该初始预测值进行滤波。其中,初始预测值可以使用普通的非分量间预测方式(如帧内预测模式和帧间预测模式)得到,也可以使用分量间预测方式(如CCLM模式)得到。
(1)参见图5,其示出了本申请实施例提供的另一种图像预测方法的应用场景示意图。其中,假定待预测图像分量为色度分量(用Cb或Cr表示),参考图像分量为当前块的亮度分量(用L表示)。注意,这里的色度块的初始预测值(Cb pred和Cr pred)可以是利用CCLM模式预测得到的,也可以是其他帧内预测模式或者帧间预测模式预测得到的。
在一种可能的实施方式中,如果当前块的边信息为当前块的亮度分量重建值,待预测图像分量为色度分量时,
所述利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值,可以包括:
基于颜色分量采样格式,对亮度分量重建值进行下采样滤波处理,得到滤波后的重建值;
将滤波后的重建值和色度分量的初始预测值输入到预设网络模型中,通过预设网络模型输出色度分量的目标预测值。
在另一种可能的实施方式中,如果当前块的边信息为当前块的亮度分量重建值,待预测图像分量为色度分量时,
所述利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值,可以包括:
基于颜色分量采样格式,对色度分量的初始预测值进行上采样滤波处理,得到滤波后的初始预测值;
将当前块的亮度分量重建值和滤波后的初始预测值输入到预设网络模型中,通过预设网络模型输出色度分量的目标预测值。
如图5所示,当前块的边信息是指亮度分量重建值(L rec),当前块的待预测图像分量的初始预测值是指色度分量初始预测值(Cb pred或Cr pred)。这时候利用当前块的亮度分量重建值对经过色度分量预测的初始预测值进行细化,经过图5中所示的预设网络模型后可以得到增强后的色度分量目标预测值(Cb pred’/Cr pred’)。
具体来讲,预设网络模型的输入为当前块的亮度分量重建值L rec以及当前块的色度分量预测值Cb pred/Cr pred;其中,对于当前块的亮度分量重建值L rec,根据不同的颜色分量采样格式,假定为4:2:0格式,这时候经过2倍下采样(如果为4:4:4格式,那么无需该下采样步骤)后,亮度分量大小与色度分量大小对齐。由于该预设网络模型有效地学习了两个输入的相关性,同时将该预设网络模型的其中一个输入(色度分量预测值Cb pred/Cr pred)连接至该模型的输出,使得输出Cb pred’/Cr pred’相比于原来的 色度分量预测值Cb pred/Cr pred,更接近当前块的真实色度值(或称为原始色度值)。
进一步地,如图6所示,其示出了本申请实施例提供的一种预设网络模型的网络结构示意图。这里,该预设网络模型可以包括神经网络模型601和第一加法器602两部分。其中,神经网络模型601可以由卷积层、残差层、平均池化层和采样转换模块堆叠而成,并且将预设网络模型的其中一个输入(色度分量预测值Cb pred/Cr pred)连接至预设网络模型的输出,与神经网络模型的输出相加得到Cb pred’/Cr pred’。对于残差层,也可以称为残差块(Residual Block,Resblock),其网络结构示例如图7所示。
需要说明的是,在图6中,在神经网络模型601中,针对两个输入(L rec和Cb pred/Cr pred),首先针对L rec进行两倍下采样,然后通过拼接层(Concatenate)进行拼接;再通过卷积层进行卷积操作以提取特征图,以及通过残差层(Resblock)、平均池化层、采样转换模块和两个卷积层等处理后输出中间值,最后利用第一加法器602对其中一个输入(色度分量预测值Cb pred/Cr pred)和中间值进行相加,输出Cb pred’/Cr pred’。这里,卷积层可以分为第一卷积层和第二卷积层,第一卷积层为Conv(3,64,1),即卷积核为3*3,通道数为64,步长为1;第二卷积层为Conv(3,1,1),即卷积核为3*3,通道数为1,步长为1。另外,平均池化层(Avg-pooling)具有下采样功能,因此在该神经网络模型中还可以包括有采样转换模块。采样转换模块可以是指上采样模块(Up-sampling),也可以是指下采样模块(Under-sampling)。在本申请实施例中,采样转换模块通常是指上采样模块(Up-sampling),如图6中神经网络模型601的示例。
还需要说明的是,在图7中,残差层可以是由残差网络701和第二加法器702组成。其中,残差网络701可以由激活函数和卷积层组成,激活函数可以用ReLU表示,卷积层为第一卷积层,即Conv(3,64,1)。这里,残差层的输入(Input)通过残差网络701后得到的输出,将会和残差层的输入由第二加法器702进行相加,相加后得到残差层的输出(Output)。
另外,在图6的网络结构示例中,对于神经网络模型601,总共可以包括有1个拼接层、2个第一卷积层、6个残差层、2个平均池化层、2个上采样模块和1个第二卷积层。需要注意的是,该网络结构并不唯一,还可以为其他堆叠方式或其他网络结构,本申请实施例不作具体限定。
示例性地,参见图8,其示出了本申请实施例提供的另一种预设网络模型的网络结构示意图。参见图9,其示出了本申请实施例提供的又一种预设网络模型的网络结构示意图。参见图10,其示出了本申请实施例提供的再一种预设网络模型的网络结构示意图。这里,图8中是通过对亮度分量重建值(L rec)进行下采样,以实现亮度分量重建值(L rec)的分辨率和色度分量预测值(Cb pred/Cr pred)的分辨率相同。图9和图10则是通过对色度分量预测值(Cb pred/Cr pred)进行上采样,以实现亮度分量重建值(L rec)的分辨率和色度分量预测值(Cb pred/Cr pred)的分辨率相同。换句话说,图8、图9和图10给出了三种网络结构的替换示例,用以说明预设网络模型的网络结构并不唯一,还可以为其他堆叠方式或其他网络结构。
(2)参见图11,其示出了本申请实施例提供的又一种图像预测方法的应用场景示意图。其中,假定待预测图像分量为色度分量(用Cb或Cr表示),当前块的边信息为当前块的亮度分量重建值(用L rec表示)和上相邻块的亮度分量重建值(用TopL rec表示)。
参见图12,其示出了本申请实施例提供的再一种图像预测方法的应用场景示意图。其中,假定待预测图像分量为色度分量(用Cb或Cr表示),当前块的边信息为当前块的亮度分量重建值(用L rec表示)和左相邻块的亮度分量重建值(用LeftL rec表示)。
参见图13,其示出了本申请实施例提供的再一种图像预测方法的应用场景示意图。其中,假定待预测图像分量为色度分量(用Cb或Cr表示),当前块的边信息为当前块的亮度分量重建值(用L rec表示)和上相邻块的色度分量预测值(用TopCb pred/TopCr pred表示)。
参见图14,其示出了本申请实施例提供的再一种图像预测方法的应用场景示意图。其中,假定待预测图像分量为色度分量(用Cb或Cr表示),当前块的边信息为当前块的亮度分量重建值(用L rec表示)和左相邻块的色度分量预测值(用LeftCb pred/LeftCr pred表示)。
需要说明的是,预设网络模型的边信息可以是其他边信息。对于色度分量的块来说,边信息可以为当前块的上相邻块和左相邻块的亮度分量(TopL rec,LeftL rec)和色度分量(TopCb pred/TopCr pred,LeftCb pred/LeftCr pred),等等,具体如图11、图12、图13和图14所示。
(3)参见图15,其示出了本申请实施例提供的再一种图像预测方法的应用场景示意图。其中,假定待预测图像分量为色度分量(用Cb或Cr表示),当前块的边信息为当前块的亮度分量重建值(用L rec表示)、上相邻块的亮度分量重建值(用TopLrec表示)、左相邻块的亮度分量重建值(用LeftLrec表示)、上相邻块的色度分量预测值(用TopCbpred/TopCrpred表示)和左相邻块的色度分量预测值(用LeftCbpred/LeftCrpred表示)。
在一些实施例中,如果当前块的边信息包括当前块的参考图像分量的重建值、与当前块相邻的至少 一行像素对应的图像分量值和与当前块相邻的至少一列像素对应的图像分量值中的至少两项时,
所述利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值,可以包括:
基于所述至少两项,组成联合边信息;
将所述联合边信息和所述被预测图像分量的初始预测值输入到所述预设网络模型中,通过所述预设网络模型输出所述被预测图像分量的目标预测值。
需要说明的是,预设网络模型的边信息可以是联合边信息。甚至可以联合全部边信息作为输入或者联合部分边信息作为输入,如图15所示。
(4)参见图16,其示出了本申请实施例提供的再一种图像预测方法的应用场景示意图。如图16所示,在得到当前块的色度分量初始预测值之后,将当前亮度块的上和左相邻两行/列(或多行/列)与当前亮度块(用斜线填充)拼接,并进行2倍下采样,当前色度块的上和左相邻一行/列(或多行/列)与当前色度块(用网格线填充)拼接,二者共同作为预设网络模型的输入。同时将当前色度块连接至预设网络模型的输出,最终得到滤波增强后色度分量的目标预测值(Cb pred’/Cr pred’)。
进一步地,在一些实施例中,联合边信息包括所述当前块上侧相邻的至少一行参考像素对应的被预测图像分量参考值和所述当前块左侧相邻的至少一列参考像素对应的被预测图像分量参考值,该方法还可以包括:
将所述当前块上侧相邻的至少一行参考像素对应的被预测图像分量参考值、所述当前块左侧相邻的至少一列参考像素对应的被预测图像分量参考值和所述当前块的被预测图像分量的初始预测值输入到所述预设网络模型中,通过所述预设网络模型输出所述当前块的被预测图像分量的目标预测值。
也就是说,如图17所示,在得到亮度分量的初始预测值(L pred)之后,可利用当前亮度块的上和左相邻两行(或多行)与当前亮度块(用斜线填充)拼接,作为预设网络模型的输入。同时将当前亮度块连接至预设网络模型的输出,最终得到滤波增强后的亮度分量的目标预测值(L pred’)。
除此之外,在本申请实施例中,在环路滤波环节之前或者之后,也可以使用本申请实施例所提出的输入数据局部短接型网络(即预设网络模型)对重建数据进行增强。或者,在其他用于有损或无损压缩编码网络框架中,在得到相应预测信息后,也可以增加一个本申请实施例提出的输入数据局部短接型网络,将其他边信息作为输入的方式以提高预测信息的精度。或者,在其他用于有损或无损压缩编码网络框架中,也可使用上述的预设网络模型进行滤波增强方法。还需要说明的是,针对视频编码中在其他亮度或色度分量编码后所得到的初始预测值,也可以利用上述的方式来提高预测值的精度。
简言之,本申请实施例在于利用一个局部输入数据短接型深度学习网络以增强视频编码中预测值的准确度,进而提高编码效率。一方面,待增强数据(如上述实施例中的色度分量初始预测值)和边信息(如上述实施例中的当前块的亮度分量重建值)同时作为输入,利用待增强数据和边信息(如色度分量与亮度分量)之间的高度相关性对待增强数据进行增强,进而提高整体编解码的性能。另一方面,同时将预设网络模型的部分输入,即待增强数据(如色度分量初始预测值)连接至预设网络模型的输出,还可以有利于网络模型的训练。这样,可以利用数据之间的相关性,用局部输入数据短接型网络对预测数据进行增强;比如利用色度分量与亮度分量之间的高度相关性,对色度分量的初始预测值利用神经网络增强以有效提高对色度分量的预测精度,进而提高编码效率;而且局部输入数据短接型网络自身也易于训练和应用于实际场景的运算。
本实施例提供了一种图像预测方法,通过上述实施例对前述实施例的实现进行具体阐述,从中可以看出,利用图像分量之间的相关性,根据当前块的边信息和预设网络模型对初始预测值进行预测增强,可以使得增强后的目标预测值更接近于真实值,从而有效提高了预测精度,进而提高了编解码效率,同时提高了整体编解码的性能。
本申请的又一实施例中,本申请实施例提供的图像预测方法应用于视频解码设备,即解码器。该方法所实现的功能可以通过解码器中的第二处理器调用计算机程序来实现,当然计算机程序可以保存在第二存储器中,可见,该解码器至少包括第二处理器和第二存储器。
基于上述图2B的应用场景示例,参见图18,其示出了本申请实施例提供的另一种图像预测方法的流程示意图。如图18所示,该方法可以包括:
S1801:解析码流,获取当前块的目标预测模式。
需要说明的是,视频图像可以划分为多个图像块,每个当前待解码的图像块可以称为解码块。这里,每个解码块也可以包括第一图像分量、第二图像分量和第三图像分量;而当前块为视频图像中当前待进行第一图像分量或者第二图像分量或者第三图像分量预测的解码块。
其中,假定当前块进行第一图像分量预测,而且第一图像分量为亮度分量,即待预测图像分量为亮 度分量,那么当前块也可以称为亮度块;或者,假定当前块进行第二图像分量预测,而且第二图像分量为色度分量,即待预测图像分量为色度分量,那么当前块也可以称为色度块。
还需要说明的是,编码器在确定出目标预测模式之后,编码器会将目标预测模式写入码流。这样,解码器通过解析码流,可以获得当前块的目标预测模式。其中,目标预测模式可以是帧内预测模式或帧间预测模式。更甚者,目标预测模式还可以是同图像分量间预测模式或跨图像分量间预测模式。一般情况下,分量间预测模式通常是指跨图像分量间预测模式,比如CCLM模式。
S1802:根据所述目标预测模式,确定所述当前块的待预测图像分量的初始预测值。
需要说明的是,目标预测模式用于指示当前块编码预测采用的预测模式。在一些实施例中,所述根据所述目标预测模式,确定所述当前块的待预测图像分量的初始预测值,可以包括:
根据所述目标预测模式对所述当前块的待预测图像分量进行预测,得到所述当前块的待预测图像分量的初始预测值。
也就是说,在得到目标预测模式之后,可以根据目标预测模式对当前块的待预测图像分量进行预测,能够得到当前块的待预测图像分量的初始预测值。
S1803:确定所述当前块的参考图像分量相关的样值。
需要说明的是,参考图像分量可以包括当前图像中不同于待预测图像分量的一个或多个图像分量,其中,当前图像是所述当前块所处的图像。
在一些实施例中,所述确定所述当前块的参考图像分量相关的样值,可以包括:
根据所述当前块的参考图像分量的预测值和重建值中至少之一,确定所述参考图像分量相关的样值。
进一步地,在一些实施例中,所述确定所述当前块的参考图像分量相关的样值,可以包括:
根据所述当前块的相邻像素对应于所述参考图像分量的预测值和重建值中至少之一,确定所述参考图像分量相关的样值。
还需要说明的是,当前块的相邻像素可以包括与所述当前块相邻的至少一行像素。或者,所述当前块的相邻像素也可以包括与所述当前块相邻的至少一列像素。
在本申请实施例中,当前块的参考图像分量相关的样值可以包括所述当前块的参考图像分量的重建值、与所述当前块相邻的至少一行像素对应的参考图像分量值和与所述当前块相邻的至少一列像素对应的参考图像分量值中的至少两项,其中,所述当前块的参考图像分量不同于所述待预测图像分量。
另外,针对帧间预测模式而言,参考图像分量可以包括参考图像中一个或多个图像分量,其中,所述参考图像不同于当前块所处的当前图像。
在一些实施例中,所述确定所述当前块的参考图像分量相关的样值,可以包括:
根据所述当前块的预测参考块中一个或多个图像分量的重建值,确定所述参考图像分量相关的样值。
进一步地,在一些实施例中,该方法还可以包括:
当目标预测模式指示帧间预测模式时,解析所述码流,获取所述当前块的帧间预测模式参数,其中,所述帧间预测模式参数包括参考图像索引和运动矢量;
根据所述参考图像索引,确定所述参考图像;
根据所述运动矢量,在所述参考图像中确定所述预测参考块。
需要说明的是,针对帧间预测模式,这时候除了当前块所在的当前图像之外,还需要有参考图像。其中,参考图像索引是指参考图像对应的图像索引序号,运动矢量则是用于指示参考图像中的预测参考块。这里,编码器可以将参考图像索引和运动矢量作为帧间预测模式参数并写入码流,以便由编码器传输到解码器。这样,解码器通过解析码流,就可以直接获得参考图像索引和运动矢量。
这样,在得到当前块的参考图像分量相关的样值之后,可以根据参考图像分量相关的样值来确定当前块的边信息。
S1804:根据所述参考图像分量相关的样值,确定所述当前块的边信息。
需要说明的是,在本申请实施例中,本申请的技术关键是使用一个图像分量的相关参数对另一个图像分量的初始预测值进行增强滤波。这里,“一个图像分量”的相关参数主要为当前块的边信息。其中,一方面可以直接将当前块的参考图像分量相关的样值确定为当前块的边信息;另一方面也可以对参考图像分量相关的样值进行上采样/下采样等滤波处理,将滤波后的样值确定为当前块的边信息,本申请实施例不作任何限定。
也就是说,在一种可能的实施方式中,所述根据所述参考图像分量相关的样值,确定所述当前块的边信息,可以包括:将所述参考图像分量相关的样值确定为所述当前块的边信息。
在另一种可能的实施方式中,所述根据所述参考图像分量相关的样值,确定所述当前块的边信息,可以包括:根据颜色分量采样格式,对所述参考图像分量相关的样值进行第一滤波处理,得到滤波后的参考图像分量相关的样值;将所述滤波后的参考图像分量相关的样值确定为所述当前块的边信息。
需要说明的是,颜色分量可以包括亮度分量、蓝色色度分量和红色色度分量,而颜色分量采样格式可以有4:4:4格式、4:2:2格式和4:2:0格式。这里,4:2:2格式和4:2:0格式适用于上述的第一滤波处理,而4:4:4格式不适用于上述的第一滤波处理。
进一步地,在一些实施例中,该方法还可以包括:
解析所述码流,获取所述颜色分量采样格式。
或者,在一些实施例中,该方法还可以包括:
解析所述码流中的参数集数据单元,获取用于指示所述颜色分量采样格式的比特字段的取值;
根据所述比特字段的取值,确定所述颜色分量采样格式。
也就是说,当编码器在确定颜色分量采样格式之后,可以将颜色分量采样格式写入码流;或者,确定出用于指示颜色分量采样格式的比特字段的取值,该比特字段的取值写入码流;然后由编码器传输到解码器,以便解码器通过解析码流后,就可以直接获得颜色分量采样格式。
还需要说明的是,由于亮度分量和色度分量(比如蓝色色度分量或红色色度分量)的分辨率不同,这时候根据具体情况需要对参考图像分量相关的样值进行第一滤波处理,比如上采样/下采样处理。具体地,在一些实施例中,所述对所述参考图像分量相关的样值进行第一滤波处理,可以包括:
当所述初始预测值的分辨率小于所述参考图像分量相关的样值的分辨率时,对所述参考图像分量相关的样值进行下采样处理;
当所述初始预测值的分辨率大于所述参考图像分量相关的样值的分辨率时,对所述参考图像分量相关的样值进行上采样处理;
当所述初始预测值的分辨率等于所述参考图像分量相关的样值的分辨率时,将所述滤波后的参考图像分量相关的样值设置为等于所述参考图像分量相关的样值。
在本申请实施例中,滤波后的参考图像分量相关的样值的分辨率与初始预测值的分辨率相等。
示例性地,如果待预测图像分量为色度分量,而参考图像分量为亮度分量,那么需要对参考图像分量相关的样值进行下采样处理,而且下采样处理后的亮度分量的分辨率与色度分量的分辨率相同;或者,如果待预测图像分量为亮度分量,而参考图像分量为色度分量,那么需要对参考图像分量相关的样值进行上采样处理,而且上采样处理后的色度分量的分辨率与亮度分量的分辨率相同。此外,如果待预测图像分量为蓝色色度分量,而参考图像分量为红色色度分量,那么由于蓝色色度分量的分辨率和红色色度分量的分辨率相同,此时不需要对参考图像分量相关的样值进行第一滤波处理,即可以将滤波后的参考图像分量相关的样值设置为等于滤波之前参考图像分量相关的样值。
这样,在确定出参考图像分量相关的样值之后,可以根据参考图像分量相关的样值确定出当前块的边信息,以便利用当前块的边信息对待预测图像分量的初始预测值进行滤波增强。
S1805:利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值。
需要说明的是,本申请实施例利用预设网络模型,该预设网络模型可以命名为局部数据短接的神经网络模型,或者命名为半残差网络(Semi-residual Network),然后结合当前块的边信息对初始预测值进行滤波增强,用以提高预测的准确度。
对于预设网络模型而言,在S1805之前,该方法还可以包括:确定预设网络模型。
在本申请实施例中,预设网络模型是通过模型训练得到的。在一些实施例中,具体可以包括:
获取训练样本集;其中,所述训练样本集包括一个或多个图像;
构建初始网络模型,利用所述训练样本集对所述初始网络模型进行训练;
将训练后的初始网络模型确定为所述预设网络模型。
需要说明的是,训练样本集可以包括有一个或多个图像。训练样本集可以是编码器在本地存储的训练样本集合,也可以是根据链接或者地址信息从远程服务器上获取的训练样本集合,甚至也可以是视频中已经解码的图像样本集合,本申请实施例不作具体限定。
这样,在获取到训练样本集之后,可以利用训练样本集通过代价函数对初始网络模型进行训练,当该代价函数的损失值(Loss)收敛到一定预设阈值时,这时候训练得到的初始网络模型即为预设网络模型。这里,代价函数可以为率失真代价函数,预设阈值可以根据实际情况进行具体设定,本申请实施例不作任何限定。
还需要说明的是,所述确定预设网络模型,可以先确定出预设网络模型中的网络模型参数。在一种可能的实施方式中,所述确定所述预设网络模型,可以包括:
确定网络模型参数;
根据所确定的网络模型参数,构建所述预设网络模型。
在本申请实施例中,网络模型参数可以是通过模型训练确定的。具体地,在一些实施例中,可以包 括:获取训练样本集;构建初始网络模型,其中,所述初始网络模型包括模型参数;利用所述训练样本集对所述初始网络模型进行训练,将训练后的初始网络模型中的模型参数确定为所述网络模型参数。
在另一种可能的实施方式中,所述确定所述预设网络模型,可以包括:
解析所述码流,获取所述预设网络模型的网络模型参数;
根据所述网络模型参数,确定所述预设网络模型。
这时候,编码器通过模型训练得到网络模型参数之后,将网络模型参数写入码流。这样,解码器可直接通过解析码流来获得网络模型参数,而无需在解码器进行模型训练就能够构建出预设网络模型。
在一些实施例中,预设网络模型可以包括神经网络模型和第一加法器。
需要说明的是,神经网络模型至少可以包括卷积层、残差层、平均池化层和采样率转换模块。这里,残差层可以是由激活函数、卷积层和第二加法器组成。采样转换模块可以是上采样模块,也可以是下采样模块。其中,在本申请实施例的神经网络模型中,平均池化层和采样率转换模块相当于低通滤波的效果,而且采样率转换模块通常是指上采样模块,但是本申请实施例不作具体限定。
进一步地,在一些实施例中,所述利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值,可以包括:
将所述当前块的边信息和所述待预测图像分量的初始预测值输入到所述预设网络模型,通过所述预设网络模型输出所述待预测图像分量的目标预测值。
需要说明的是,由于预设网络模型可以包括神经网络模型和第一加法器,那么将所述当前块的边信息和所述待预测图像分量的初始预测值输入到所述预设网络模型,通过所述预设网络模型输出所述待预测图像分量的目标预测值,具体可以包括:将所述边信息和所述初始预测值输入所述神经网络模型,输出中间值;通过所述第一加法器对所述中间值和所述初始预测值进行相加处理,得到所述目标预测值。
S1806:根据所述目标预测值,对所述当前块的待预测图像分量进行解码。
需要说明的是,在得到待预测图像分量的目标预测值之后,可以对当前块的待预测图像分量进行解码。具体地,在得到目标预测值之后,通过解析码流获得残差值,然后利用残差值和目标预测值就可以解码恢复出真实图像信息。
本实施例提供了一种图像预测方法,应用于解码器。通过解析码流,获取当前块的目标预测模式;根据所述目标预测模式,确定所述当前块的待预测图像分量的初始预测值;确定所述当前块的参考图像分量相关的样值;根据所述参考图像分量相关的样值,确定所述当前块的边信息;利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值;根据所述目标预测值,对所述当前块的待预测图像分量进行解码。这样,可以利用图像分量之间的相关性,根据当前块的边信息和预设网络模型对初始预测值进行预测增强,使得增强后的目标预测值更接近于真实值,从而有效提高了预测精度,进而提高了编解码效率,同时提高了整体编解码的性能。
基于前述实施例相同的发明构思,参见图19,其示出了本申请实施例提供的一种编码器190的组成结构示意图。如图190所示,该编码器190可以包括:第一确定单元1901、第一预测单元1902和编码单元1903;其中,
第一确定单元1901,配置为确定当前块的待预测图像分量的初始预测值;
第一确定单元1901,还配置为确定所述当前块的参考图像分量相关的样值;以及根据所述参考图像分量相关的样值,确定所述当前块的边信息;
第一预测单元1902,配置为利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值;
编码单元1903,配置为根据所述目标预测值,对所述当前块的待预测图像分量进行编码。
在一些实施例中,第一预测单元1901,还配置为确定所述当前块的目标预测模式;以及根据所述目标预测模式对所述当前块的待预测图像分量进行预测,确定所述当前块的待预测图像分量的初始预测值。
在一些实施例中,参见图19,编码器190还可以包括预编码单元1904;
第一确定单元1901,还配置为确定所述当前块的待预测图像分量;
预编码单元1904,配置为利用一种或多种候选预测模式分别对所述待预测图像分量进行预编码,确定所述候选预测模式对应的率失真代价结果;
第一确定单元1901,还配置为从所述率失真代价结果中选取最优率失真代价结果,并将所述最优率失真代价结果对应的候选预测模式确定为所述当前块的目标预测模式。
在一些实施例中,所述目标预测模式是帧内预测模式或帧间预测模式。
在一些实施例中,所述目标预测模式是同图像分量间预测模式或跨图像分量间预测模式。
在一些实施例中,所述参考图像分量包括当前图像中不同于所述待预测图像分量的一个或多个图像分量,其中,所述当前图像是所述当前块所处的图像。
在一些实施例中,第一确定单元1901,具体配置为根据所述当前块的参考图像分量的预测值和重建值中至少之一,确定所述参考图像分量相关的样值。
在一些实施例中,第一确定单元1901,具体配置为根据所述当前块的相邻像素对应于所述参考图像分量的预测值和重建值中至少之一,确定所述参考图像分量相关的样值。
在一些实施例中,所述当前块的相邻像素包括与所述当前块相邻的至少一行像素。
在一些实施例中,所述当前块的相邻像素包括与所述当前块相邻的至少一列像素。
在一些实施例中,所述参考图像分量包括参考图像中一个或多个图像分量,其中,所述参考图像不同于所述当前块所处的当前图像。
在一些实施例中,第一确定单元1901,具体配置为根据所述当前块的预测参考块中一个或多个图像分量的重建值,确定所述参考图像分量相关的样值。
在一些实施例中,参见图19,编码器190还可以包括写入单元1905;
第一确定单元1901,还配置为当所述目标预测模式指示帧间预测模式时,确定所述当前块的帧间预测模式参数,其中,所述帧间预测模式参数包括指示所述参考图像对应的参考图像索引和指示所述参考图像中所述预测参考块的运动矢量;
写入单元1905,配置为将所确定的帧间预测模式参数写入码流。
在一些实施例中,第一确定单元1901,还配置为将所述参考图像分量相关的样值确定为所述当前块的边信息。
在一些实施例中,参见图19,编码器190还可以包括第一采样单元1906,配置为根据颜色分量采样格式,对所述参考图像分量相关的样值进行第一滤波处理,得到滤波后的参考图像分量相关的样值;以及将所述滤波后的参考图像分量相关的样值确定为所述当前块的边信息。
在一些实施例中,写入单元1905,还配置为将所述颜色分量采样格式写入码流。
在一些实施例中,第一确定单元1901,还配置为确定待写入码流的比特字段的取值;其中,所述比特字段的取值用于指示所述颜色分量采样格式;
写入单元1905,还配置为将所述比特字段的取值写入码流。
在一些实施例中,第一采样单元1906,具体配置为当所述初始预测值的分辨率小于所述参考图像分量相关的样值的分辨率时,对所述参考图像分量相关的样值进行下采样处理;当所述初始预测值的分辨率大于所述参考图像分量相关的样值的分辨率时,对所述参考图像分量相关的样值进行上采样处理;当所述初始预测值的分辨率等于所述参考图像分量相关的样值的分辨率时,将所述滤波后的参考图像分量相关的样值设置为等于所述参考图像分量相关的样值。
在一些实施例中,所述滤波后的参考图像分量相关的样值的分辨率与所述初始预测值的分辨率相等。
在一些实施例中,所述当前块的参考图像分量相关的样值包括所述当前块的参考图像分量的重建值、与所述当前块相邻的至少一行像素对应的参考图像分量值和与所述当前块相邻的至少一列像素对应的参考图像分量值中的至少两项,其中,所述当前块的参考图像分量不同于所述待预测图像分量。
在一些实施例中,第一预测单元1902,具体配置为将所述当前块的边信息和所述待预测图像分量的初始预测值输入到所述预设网络模型,通过所述预设网络模型输出所述待预测图像分量的目标预测值。
在一些实施例中,第一确定单元1901,还配置为确定所述预设网络模型。
在一些实施例中,所述预设网络模型包括神经网络模型和第一加法器。
在一些实施例中,第一预测单元1902,具体配置为将所述边信息和所述初始预测值输入所述神经网络模型,输出中间值;以及通过所述第一加法器对所述中间值和所述初始预测值进行相加处理,得到所述目标预测值。
在一些实施例中,所述神经网络模型包括下述至少一项:卷积层、残差层、平均池化层和采样率转换模块。
在一些实施例中,所述包括下述至少一项:激活函数、卷积层和第二加法器。
在一些实施例中,参见图19,编码器190还可以包括第一训练单元1907,配置为获取训练样本集;其中,所述训练样本集包括一个或多个图像;以及构建初始网络模型,利用所述训练样本集对所述初始网络模型进行训练,并将训练后的初始网络模型确定为所述预设网络模型。
在一些实施例中,第一确定单元1901,还配置为确定网络模型参数;以及根据所确定的网络模型参数,构建所述预设网络模型。
可以理解地,在本申请实施例中,“单元”可以是部分电路、部分处理器、部分程序或软件等等,当然也可以是模块,还可以是非模块化的。而且在本实施例中的各组成部分可以集成在一个处理单元中, 也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或processor(处理器)执行本实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
因此,本申请实施例提供了一种计算机存储介质,应用于编码器190,该计算机存储介质存储有图像预测程序,所述图像预测程序被第一处理器执行时实现前述实施例中任一项所述的方法。
基于上述编码器190的组成以及计算机存储介质,参见图20,其示出了本申请实施例提供的编码器190的硬件结构示意图。如图20所示,可以包括:第一通信接口2001、第一存储器2002和第一处理器2003;各个组件通过第一总线系统2004耦合在一起。可理解,第一总线系统2004用于实现这些组件之间的连接通信。第一总线系统2004除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图20中将各种总线都标为第一总线系统2004。其中,
第一通信接口2001,用于在与其他外部网元之间进行收发信息过程中,信号的接收和发送;
第一存储器2002,用于存储能够在第一处理器2003上运行的计算机程序;
第一处理器2003,用于在运行所述计算机程序时,执行:
确定当前块的待预测图像分量的初始预测值;
确定所述当前块的参考图像分量相关的样值;
根据所述参考图像分量相关的样值,确定所述当前块的边信息;
利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值;
根据所述目标预测值,对所述当前块的待预测图像分量进行编码。
可以理解,本申请实施例中的第一存储器2002可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data Rate SDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DRRAM)。本申请描述的系统和方法的第一存储器2002旨在包括但不限于这些和任意其它适合类型的存储器。
而第一处理器2003可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过第一处理器2003中的硬件的集成逻辑电路或者软件形式的指令完成。上述的第一处理器2003可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于第一存储器2002,第一处理器2003读取第一存储器2002中的信息,结合其硬件完成上述方法的步骤。
可以理解的是,本申请描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(Application Specific Integrated Circuits,ASIC)、数字信号处理器(Digital Signal Processing,DSP)、数字信号处理设备(DSP Device,DSPD)、可编程逻辑设备(Programmable Logic Device,PLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。对于软件实现,可通过执行本申请所述功能的模块(例如过程、函数等)来实现本申请所述的 技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
可选地,作为另一个实施例,第一处理器2003还配置为在运行所述计算机程序时,执行前述实施例中任一项所述的方法。
本实施例提供了一种编码器,该编码器可以包括第一确定单元、第一预测单元和编码单元。这样,对于编码器来说,可以利用图像分量之间的相关性,根据当前块的边信息和预设网络模型对初始预测值进行预测增强,使得增强后的目标预测值更接近于真实值,从而有效提高了预测精度,进而提高了编解码效率,同时提高了整体编解码的性能。
基于前述实施例相同的发明构思,参见图21,其示出了本申请实施例提供的一种解码器210的组成结构示意图。如图21所示,该解码器210可以包括:解析单元2101、第二确定单元2102、第二预测单元2103和解码单元2104;其中,
解析单元2101,配置为解析码流,确定当前块的目标预测模式;
第二确定单元2102,配置为根据所述目标预测模式,确定所述当前块的待预测图像分量的初始预测值;
第二确定单元2102,还配置为确定所述当前块的参考图像分量相关的样值;以及根据所述参考图像分量相关的样值,确定所述当前块的边信息;
第二预测单元2103,配置为利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值;
解码单元2104,配置为根据所述目标预测值,对所述当前块的待预测图像分量进行解码。
在一些实施例中,第二预测单元2103,还配置为根据所述目标预测模式对所述当前块的待预测图像分量进行预测,得到所述当前块的待预测图像分量的初始预测值。
在一些实施例中,所述目标预测模式是帧内预测模式或帧间预测模式。
在一些实施例中,所述目标预测模式是同图像分量间预测模式或跨图像分量间预测模式。
在一些实施例中,所述参考图像分量包括当前图像中不同于所述待预测图像分量的一个或多个图像分量,其中,所述当前图像是所述当前块所处的图像。
在一些实施例中,第二确定单元2102,具体配置为根据所述当前块的参考图像分量的预测值和重建值中至少之一,确定所述参考图像分量相关的样值。
在一些实施例中,第二确定单元2102,具体配置为根据所述当前块的相邻像素对应于所述参考图像分量的预测值和重建值中至少之一,确定所述参考图像分量相关的样值。
在一些实施例中,所述当前块的相邻像素包括与所述当前块相邻的至少一行像素。
在一些实施例中,所述当前块的相邻像素包括与所述当前块相邻的至少一列像素。
在一些实施例中,所述参考图像分量包括参考图像中一个或多个图像分量,其中,所述参考图像不同于所述当前块所处的当前图像。
在一些实施例中,第二确定单元2102,具体配置为根据所述当前块的预测参考块中一个或多个图像分量的重建值,确定所述参考图像分量相关的样值。
在一些实施例中,解析单元2101,还配置为当所述目标预测模式指示帧间预测模式时,解析所述码流,获取所述当前块的帧间预测模式参数,其中,所述帧间预测模式参数包括参考图像索引和运动矢量;
第二确定单元2102,还配置为根据所述参考图像索引,确定所述参考图像;以及根据所述运动矢量,在所述参考图像中确定所述预测参考块。
在一些实施例中,第二确定单元2102,还配置为将所述参考图像分量相关的样值确定为所述当前块的边信息。
在一些实施例中,参见图21,解码器210还可以包括第二采样单元2105,配置为根据颜色分量采样格式,对所述参考图像分量相关的样值进行第一滤波处理,得到滤波后的参考图像分量相关的样值;以及将所述滤波后的参考图像分量相关的样值确定为所述当前块的边信息。
在一些实施例中,解析单元2101,还配置为解析所述码流,获取所述颜色分量采样格式。
在一些实施例中,解析单元2101,还配置为解析所述码流中的参数集数据单元,获取用于指示所述颜色分量采样格式的比特字段的取值;
第二确定单元2102,还配置为根据所述比特字段的取值,确定所述颜色分量采样格式。
在一些实施例中,第二采样单元2105,具体配置为当所述初始预测值的分辨率小于所述参考图像分量相关的样值的分辨率时,对所述参考图像分量相关的样值进行下采样处理;当所述初始预测值的分辨率大于所述参考图像分量相关的样值的分辨率时,对所述参考图像分量相关的样值进行上采样处理;当所述初始预测值的分辨率等于所述参考图像分量相关的样值的分辨率时,将所述滤波后的参考图像分 量相关的样值设置为等于所述参考图像分量相关的样值。
在一些实施例中,所述滤波后的参考图像分量相关的样值的分辨率与所述初始预测值的分辨率相等。
在一些实施例中,所述当前块的参考图像分量相关的样值包括所述当前块的参考图像分量的重建值、与所述当前块相邻的至少一行像素对应的参考图像分量值和与所述当前块相邻的至少一列像素对应的参考图像分量值中的至少两项,其中,所述当前块的参考图像分量不同于所述待预测图像分量。
在一些实施例中,第二预测单元2103,具体配置为将所述当前块的边信息和所述待预测图像分量的初始预测值输入到所述预设网络模型,通过所述预设网络模型输出所述待预测图像分量的目标预测值。
在一些实施例中,第二确定单元2102,还配置为确定所述预设网络模型。
在一些实施例中,所述预设网络模型包括神经网络模型和第一加法器。
在一些实施例中,第二预测单元2103,具体配置为将所述边信息和所述初始预测值输入所述神经网络模型,输出中间值;以及通过所述第一加法器对所述中间值和所述初始预测值进行相加处理,得到所述目标预测值。
在一些实施例中,所述神经网络模型包括下述至少一项:卷积层、残差层、平均池化层和采样率转换模块。
在一些实施例中,所述残差层包括下述至少一项:激活函数、卷积层和第二加法器。
在一些实施例中,参见图21,解码器210还可以包括第二训练单元2106,配置为获取训练样本集;其中,所述训练样本集包括一个或多个图像;以及构建初始网络模型,利用所述训练样本集对所述初始网络模型进行训练,并将训练后的初始网络模型确定为所述预设网络模型。
在一些实施例中,解析单元2101,还配置为解析所述码流,获取所述预设网络模型的网络模型参数;
第二确定单元2102,还配置为根据所述网络模型参数,确定所述预设网络模型。
可以理解地,在本实施例中,“单元”可以是部分电路、部分处理器、部分程序或软件等等,当然也可以是模块,还可以是非模块化的。而且在本实施例中的各组成部分可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本实施例提供了一种计算机存储介质,应用于解码器210,该计算机存储介质存储有图像预测程序,所述图像预测程序被第二处理器执行时实现前述实施例中任一项所述的方法。
基于上述解码器210的组成以及计算机存储介质,参见图22,其示出了本申请实施例提供的解码器210的硬件结构示意。如图22所示,可以包括:第二通信接口2201、第二存储器2202和第二处理器2203;各个组件通过第二总线系统2204耦合在一起。可理解,第二总线系统2204用于实现这些组件之间的连接通信。第二总线系统2204除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图22中将各种总线都标为第二总线系统2204。其中,
第二通信接口2201,用于在与其他外部网元之间进行收发信息过程中,信号的接收和发送;
第二存储器2202,用于存储能够在第二处理器2203上运行的计算机程序;
第二处理器2203,用于在运行所述计算机程序时,执行:
解析码流,获取当前块的目标预测模式;
根据所述目标预测模式,确定所述当前块的待预测图像分量的初始预测值;
确定所述当前块的参考图像分量相关的样值;
根据所述参考图像分量相关的样值,确定所述当前块的边信息;
利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值;
根据所述目标预测值,对所述当前块的待预测图像分量进行解码。
可选地,作为另一个实施例,第二处理器2203还配置为在运行所述计算机程序时,执行前述实施例中任一项所述的方法。
可以理解,第二存储器2202与第一存储器2002的硬件功能类似,第二处理器2203与第一处理器2003的硬件功能类似;这里不再详述。
本实施例提供了一种解码器,该解码器可以包括解析单元、第二确定单元、第二预测单元和解码单元。这样,对于解码器来说,也可以利用图像分量之间的相关性,根据当前块的边信息和预设网络模型对初始预测值进行预测增强,使得增强后的目标预测值更接近于真实值,从而有效提高了预测精度,进而提高了编解码效率,同时提高了整体编解码的性能。
需要说明的是,在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
本申请所提供的几个方法实施例中所揭露的方法,在不冲突的情况下可以任意组合,得到新的方法实施例。
本申请所提供的几个产品实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的产品实施例。
本申请所提供的几个方法或设备实施例中所揭露的特征,在不冲突的情况下可以任意组合,得到新的方法实施例或设备实施例。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
工业实用性
本申请实施例中,在确定当前块的待预测图像分量的初始预测值之后,确定所述当前块的参考图像分量相关的样值;然后根据所述参考图像分量相关的样值,确定所述当前块的边信息;再利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值;最后根据所述目标预测值,对所述当前块的待预测图像分量进行编码或者解码。这样,可以利用图像分量之间的相关性,根据当前块的边信息和预设网络模型对初始预测值进行预测增强,使得增强后的目标预测值更接近于真实值,从而有效提高了预测精度,进而提高了编解码效率,同时提高了整体编解码的性能。

Claims (60)

  1. 一种图像预测方法,应用于编码器,所述方法包括:
    确定当前块的待预测图像分量的初始预测值;
    确定所述当前块的参考图像分量相关的样值;
    根据所述参考图像分量相关的样值,确定所述当前块的边信息;
    利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值;
    根据所述目标预测值,对所述当前块的待预测图像分量进行编码。
  2. 根据权利要求1所述的方法,其中,所述确定当前块的待预测图像分量对应的初始预测值,包括:
    确定所述当前块的目标预测模式;
    根据所述目标预测模式对所述当前块的待预测图像分量进行预测,确定所述当前块的待预测图像分量的初始预测值。
  3. 根据权利要求2所述的方法,其中,所述确定所述当前块的目标预测模式,包括:
    确定所述当前块的待预测图像分量;
    利用一种或多种候选预测模式分别对所述待预测图像分量进行预编码,确定所述候选预测模式对应的率失真代价结果;
    从所述率失真代价结果中选取最优率失真代价结果,并将所述最优率失真代价结果对应的候选预测模式确定为所述当前块的目标预测模式。
  4. 根据权利要求2或3所述的方法,其中,所述目标预测模式是帧内预测模式或帧间预测模式。
  5. 根据权利要求4所述的方法,其中,所述方法还包括:
    所述目标预测模式是同图像分量间预测模式或跨图像分量间预测模式。
  6. 根据权利要求1所述的方法,其中,所述参考图像分量包括当前图像中不同于所述待预测图像分量的一个或多个图像分量,其中,所述当前图像是所述当前块所处的图像。
  7. 根据权利要求6所述的方法,其中,所述确定所述当前块的参考图像分量相关的样值,包括:
    根据所述当前块的参考图像分量的预测值和重建值中至少之一,确定所述参考图像分量相关的样值。
  8. 根据权利要求6所述的方法,其中,所述确定所述当前块的参考图像分量相关的样值,包括:
    根据所述当前块的相邻像素对应于所述参考图像分量的预测值和重建值中至少之一,确定所述参考图像分量相关的样值。
  9. 根据权利要求8所述的方法,其中,所述当前块的相邻像素包括与所述当前块相邻的至少一行像素。
  10. 根据权利要求8所述的方法,其中,所述当前块的相邻像素包括与所述当前块相邻的至少一列像素。
  11. 根据权利要求4所述的方法,其中,所述参考图像分量包括参考图像中一个或多个图像分量,其中,所述参考图像不同于所述当前块所处的当前图像。
  12. 根据权利要求11所述的方法,其中,所述确定所述当前块的参考图像分量相关的样值,包括:
    根据所述当前块的预测参考块中一个或多个图像分量的重建值,确定所述参考图像分量相关的样值。
  13. 根据权利要求12所述的方法,其中,所述方法还包括:
    当所述目标预测模式指示帧间预测模式时,确定所述当前块的帧间预测模式参数,其中,所述帧间预测模式参数包括指示所述参考图像对应的参考图像索引和指示所述参考图像中所述预测参考块的运动矢量;
    将所确定的帧间预测模式参数写入码流。
  14. 根据权利要求1所述的方法,其中,所述根据所述参考图像分量相关的样值,确定所述当前块的边信息,包括:
    将所述参考图像分量相关的样值确定为所述当前块的边信息。
  15. 根据权利要求1所述的方法,其中,所述根据所述参考图像分量相关的样值,确定所述当前块的边信息,包括:
    根据颜色分量采样格式,对所述参考图像分量相关的样值进行第一滤波处理,得到滤波后的参考图像分量相关的样值;
    将所述滤波后的参考图像分量相关的样值确定为所述当前块的边信息。
  16. 根据权利要求15所述的方法,其中,所述方法还包括:
    将所述颜色分量采样格式写入码流。
  17. 根据权利要求16所述的方法,其中,所述方法还包括:
    确定待写入码流的比特字段的取值;其中,所述比特字段的取值用于指示所述颜色分量采样格式;
    将所述比特字段的取值写入码流。
  18. 根据权利要求15所述的方法,其中,所述对所述参考图像分量相关的样值进行第一滤波处理,包括:
    当所述初始预测值的分辨率小于所述参考图像分量相关的样值的分辨率时,对所述参考图像分量相关的样值进行下采样处理;
    当所述初始预测值的分辨率大于所述参考图像分量相关的样值的分辨率时,对所述参考图像分量相关的样值进行上采样处理;
    当所述初始预测值的分辨率等于所述参考图像分量相关的样值的分辨率时,将所述滤波后的参考图像分量相关的样值设置为等于所述参考图像分量相关的样值。
  19. 根据权利要求15所述的方法,其中,所述方法还包括:
    所述滤波后的参考图像分量相关的样值的分辨率与所述初始预测值的分辨率相等。
  20. 根据权利要求1所述的方法,其中,所述确定所述当前块的参考图像分量相关的样值,包括:
    所述当前块的参考图像分量相关的样值包括所述当前块的参考图像分量的重建值、与所述当前块相邻的至少一行像素对应的参考图像分量值和与所述当前块相邻的至少一列像素对应的参考图像分量值中的至少两项,其中,所述当前块的参考图像分量不同于所述待预测图像分量。
  21. 根据权利要求1所述的方法,其中,所述利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值,包括:
    将所述当前块的边信息和所述待预测图像分量的初始预测值输入到所述预设网络模型,通过所述预设网络模型输出所述待预测图像分量的目标预测值。
  22. 根据权利要求21所述的方法,其中,所述方法还包括:
    确定所述预设网络模型。
  23. 根据权利要求22所述的方法,其中,所述预设网络模型包括神经网络模型和第一加法器。
  24. 根据权利要求23所述的方法,其中,所述将所述当前块的边信息和所述待预测图像分量的初始预测值输入到所述预设网络模型,通过所述预设网络模型输出所述待预测图像分量的目标预测值,包括:
    将所述边信息和所述初始预测值输入所述神经网络模型,输出中间值;
    通过所述第一加法器对所述中间值和所述初始预测值进行相加处理,得到所述目标预测值。
  25. 根据权利要求23所述的方法,其中,所述神经网络模型包括下述至少一项:卷积层、残差层、平均池化层和采样率转换模块。
  26. 根据权利要求25所述的方法,其中,所述残差层包括下述至少一项:激活函数、卷积层和第二加法器。
  27. 根据权利要求22所述的方法,其中,所述确定所述预设网络模型,包括:
    获取训练样本集;其中,所述训练样本集包括一个或多个图像;
    构建初始网络模型,利用所述训练样本集对所述初始网络模型进行训练;
    将训练后的初始网络模型确定为所述预设网络模型。
  28. 根据权利要求22所述的方法,其中,所述确定所述预设网络模型,包括:
    确定网络模型参数;
    根据所确定的网络模型参数,构建所述预设网络模型。
  29. 一种图像预测方法,应用于解码器,所述方法包括:
    解析码流,获取当前块的目标预测模式;
    根据所述目标预测模式,确定所述当前块的待预测图像分量的初始预测值;
    确定所述当前块的参考图像分量相关的样值;
    根据所述参考图像分量相关的样值,确定所述当前块的边信息;
    利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值;
    根据所述目标预测值,对所述当前块的待预测图像分量进行解码。
  30. 根据权利要求29所述的方法,其中,所述根据所述目标预测模式,确定所述当前块的待预测 图像分量的初始预测值,包括:
    根据所述目标预测模式对所述当前块的待预测图像分量进行预测,得到所述当前块的待预测图像分量的初始预测值。
  31. 根据权利要求30所述的方法,其中,所述目标预测模式是帧内预测模式或帧间预测模式。
  32. 根据权利要求31所述的方法,其中,所述方法还包括:
    所述目标预测模式是同图像分量间预测模式或跨图像分量间预测模式。
  33. 根据权利要求29所述的方法,其中,所述参考图像分量包括当前图像中不同于所述待预测图像分量的一个或多个图像分量,其中,所述当前图像是所述当前块所处的图像。
  34. 根据权利要求33所述的方法,其中,所述确定所述当前块的参考图像分量相关的样值,包括:
    根据所述当前块的参考图像分量的预测值和重建值中至少之一,确定所述参考图像分量相关的样值。
  35. 根据权利要求33所述的方法,其中,所述确定所述当前块的参考图像分量相关的样值,包括:
    根据所述当前块的相邻像素对应于所述参考图像分量的预测值和重建值中至少之一,确定所述参考图像分量相关的样值。
  36. 根据权利要求35所述的方法,其中,所述当前块的相邻像素包括与所述当前块相邻的至少一行像素。
  37. 根据权利要求35所述的方法,其中,所述当前块的相邻像素包括与所述当前块相邻的至少一列像素。
  38. 根据权利要求29所述的方法,其中,所述参考图像分量包括参考图像中一个或多个图像分量,其中,所述参考图像不同于所述当前块所处的当前图像。
  39. 根据权利要求38所述的方法,其中,所述确定所述当前块的参考图像分量相关的样值,包括:
    根据所述当前块的预测参考块中一个或多个图像分量的重建值,确定所述参考图像分量相关的样值。
  40. 根据权利要求39所述的方法,其中,所述方法还包括:
    当所述目标预测模式指示帧间预测模式时,解析所述码流,获取所述当前块的帧间预测模式参数,其中,所述帧间预测模式参数包括参考图像索引和运动矢量;
    根据所述参考图像索引,确定所述参考图像;
    根据所述运动矢量,在所述参考图像中确定所述预测参考块。
  41. 根据权利要求29所述的方法,其中,所述根据所述参考图像分量相关的样值,确定所述当前块的边信息,包括:
    将所述参考图像分量相关的样值确定为所述当前块的边信息。
  42. 根据权利要求29所述的方法,其中,所述根据所述参考图像分量相关的样值,确定所述当前块的边信息,包括:
    根据颜色分量采样格式,对所述参考图像分量相关的样值进行第一滤波处理,得到滤波后的参考图像分量相关的样值;
    将所述滤波后的参考图像分量相关的样值确定为所述当前块的边信息。
  43. 根据权利要求42所述的方法,其中,所述方法还包括:
    解析所述码流,获取所述颜色分量采样格式。
  44. 根据权利要求43所述的方法,其中,所述方法还包括:
    解析所述码流中的参数集数据单元,获取用于指示所述颜色分量采样格式的比特字段的取值;
    根据所述比特字段的取值,确定所述颜色分量采样格式。
  45. 根据权利要求42所述的方法,其中,所述对所述参考图像分量相关的样值进行第一滤波处理,包括:
    当所述初始预测值的分辨率小于所述参考图像分量相关的样值的分辨率时,对所述参考图像分量相关的样值进行下采样处理;
    当所述初始预测值的分辨率大于所述参考图像分量相关的样值的分辨率时,对所述参考图像分量相关的样值进行上采样处理;
    当所述初始预测值的分辨率等于所述参考图像分量相关的样值的分辨率时,将所述滤波后的参考图像分量相关的样值设置为等于所述参考图像分量相关的样值。
  46. 根据权利要求42所述的方法,其中,所述方法还包括:
    所述滤波后的参考图像分量相关的样值的分辨率与所述初始预测值的分辨率相等。
  47. 根据权利要求29所述的方法,其中,所述确定所述当前块的参考图像分量相关的样值,包括:
    所述当前块的参考图像分量相关的样值包括所述当前块的参考图像分量的重建值、与所述当前块相邻的至少一行像素对应的参考图像分量值和与所述当前块相邻的至少一列像素对应的参考图像分量值 中的至少两项,其中,所述当前块的参考图像分量不同于所述待预测图像分量。
  48. 根据权利要求29所述的方法,其中,所述利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值,包括:
    将所述当前块的边信息和所述待预测图像分量的初始预测值输入到所述预设网络模型,通过所述预设网络模型输出所述待预测图像分量的目标预测值。
  49. 根据权利要求48所述的方法,其中,所述方法还包括:
    确定所述预设网络模型。
  50. 根据权利要求49所述的方法,其中,所述预设网络模型包括神经网络模型和第一加法器。
  51. 根据权利要求50所述的方法,其中,所述将所述当前块的边信息和所述待预测图像分量的初始预测值输入到所述预设网络模型,通过所述预设网络模型输出所述待预测图像分量的目标预测值,包括:
    将所述边信息和所述初始预测值输入所述神经网络模型,输出中间值;
    通过所述第一加法器对所述中间值和所述初始预测值进行相加处理,得到所述目标预测值。
  52. 根据权利要求50所述的方法,其中,所述神经网络模型包括下述至少一项:卷积层、残差层、平均池化层和采样率转换模块。
  53. 根据权利要求52所述的方法,其中,所述残差层包括下述至少一项:激活函数、卷积层和第二加法器。
  54. 根据权利要求49所述的方法,其中,所述确定所述预设网络模型,包括:
    获取训练样本集;其中,所述训练样本集包括一个或多个图像;
    构建初始网络模型,利用所述训练样本集对所述初始网络模型进行训练;
    将训练后的初始网络模型确定为所述预设网络模型。
  55. 根据权利要求54所述的方法,其中,所述确定所述预设网络模型,包括:
    解析所述码流,获取所述预设网络模型的网络模型参数;
    根据所述网络模型参数,确定所述预设网络模型。
  56. 一种编码器,所述编码器包括第一确定单元、第一预测单元和编码单元;其中,
    所述第一确定单元,配置为确定当前块的待预测图像分量的初始预测值;
    所述第一确定单元,还配置为确定所述当前块的参考图像分量相关的样值;以及根据所述参考图像分量相关的样值,确定所述当前块的边信息;
    所述第一预测单元,配置为利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值;
    所述编码单元,配置为根据所述目标预测值,对所述当前块的待预测图像分量进行编码。
  57. 一种编码器,所述编码器包括第一存储器和第一处理器;其中,
    所述第一存储器,用于存储能够在所述第一处理器上运行的计算机程序;
    所述第一处理器,用于在运行所述计算机程序时,执行如权利要求1至28任一项所述的方法。
  58. 一种解码器,所述解码器包括解析单元、第二确定单元、第二预测单元和解码单元;其中,
    所述解析单元,配置为解析码流,确定当前块的目标预测模式;
    所述第二确定单元,配置为根据所述目标预测模式,确定所述当前块的待预测图像分量的初始预测值;
    所述第二确定单元,还配置为确定所述当前块的参考图像分量相关的样值;以及根据所述参考图像分量相关的样值,确定所述当前块的边信息;
    所述第二预测单元,配置为利用预设网络模型和所述当前块的边信息对所述初始预测值进行滤波,得到所述当前块的待预测图像分量的目标预测值;
    所述解码单元,配置为根据所述目标预测值,对所述当前块的待预测图像分量进行解码。
  59. 一种解码器,所述解码器包括第二存储器和第二处理器;其中,
    所述第二存储器,用于存储能够在所述第二处理器上运行的计算机程序;
    所述第二处理器,用于在运行所述计算机程序时,执行如权利要求29至55任一项所述的方法。
  60. 一种计算机存储介质,其中,所述计算机存储介质存储有图像预测程序,所述图像预测程序被第一处理器执行时实现如权利要求1至28任一项所述的方法、或者被第二处理器执行时实现如权利要求29至55任一项所述的方法。
CN202080105520.2A 2020-09-30 2020-09-30 图像预测方法、编码器、解码器以及计算机存储介质 Pending CN116472707A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2020/119731 WO2022067805A1 (zh) 2020-09-30 2020-09-30 图像预测方法、编码器、解码器以及计算机存储介质

Publications (1)

Publication Number Publication Date
CN116472707A true CN116472707A (zh) 2023-07-21

Family

ID=80949435

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080105520.2A Pending CN116472707A (zh) 2020-09-30 2020-09-30 图像预测方法、编码器、解码器以及计算机存储介质

Country Status (4)

Country Link
US (1) US20230262251A1 (zh)
EP (1) EP4224842A4 (zh)
CN (1) CN116472707A (zh)
WO (1) WO2022067805A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023245544A1 (zh) * 2022-06-23 2023-12-28 Oppo广东移动通信有限公司 编解码方法、码流、编码器、解码器以及存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106303535B (zh) * 2015-06-08 2022-12-13 上海天荷电子信息有限公司 参考像素取自不同程度重构像素的图像压缩方法和装置
EP3451293A1 (en) * 2017-08-28 2019-03-06 Thomson Licensing Method and apparatus for filtering with multi-branch deep learning
GB2567249A (en) * 2017-10-09 2019-04-10 Canon Kk New sample sets and new down-sampling schemes for linear component sample prediction
TWI827675B (zh) * 2018-09-12 2024-01-01 大陸商北京字節跳動網絡技術有限公司 交叉分量線性模型中的尺寸相關的下採樣
CN110557646B (zh) * 2019-08-21 2021-12-07 天津大学 一种智能视点间的编码方法
CN110602491B (zh) * 2019-08-30 2022-07-19 中国科学院深圳先进技术研究院 帧内色度预测方法、装置、设备及视频编解码系统

Also Published As

Publication number Publication date
WO2022067805A1 (zh) 2022-04-07
US20230262251A1 (en) 2023-08-17
EP4224842A1 (en) 2023-08-09
EP4224842A4 (en) 2023-12-06

Similar Documents

Publication Publication Date Title
US20220141462A1 (en) Apparatus and method for applying artificial neural network to image encoding or decoding
WO2018045944A1 (en) Methods and apparatuses of candidate set determination for binary-tree splitting blocks
US10911778B2 (en) Method and device for intra-prediction
US20160073107A1 (en) Method and apparatus for video encoding/decoding using intra prediction
CN104320666A (zh) 图像处理设备和方法
CN114041288A (zh) 图像分量的预测方法、编码器、解码器以及存储介质
US20230262212A1 (en) Picture prediction method, encoder, decoder, and computer storage medium
US11962803B2 (en) Method and device for intra-prediction
CN116235496A (zh) 编码方法、解码方法、编码器、解码器以及编码系统
US20230262251A1 (en) Picture prediction method, encoder, decoder and computer storage medium
CN113709498B (zh) 帧间预测方法、编码器、解码器以及计算机存储介质
CN116471418A (zh) 帧间预测方法、编码器、解码器以及计算机存储介质
CN114762331A (zh) 视频编解码方法、装置、可移动平台和存储介质
US20220217397A1 (en) Video Processing Methods and Apparatuses of Determining Motion Vectors for Storage in Video Coding Systems
WO2017036422A1 (en) Method and apparatus of prediction offset derived based on neighbouring area in video coding
CN112313950B (zh) 视频图像分量的预测方法、装置及计算机存储介质
CN115280778A (zh) 帧间预测方法、编码器、解码器以及存储介质
CN113395520B (zh) 解码预测方法、装置及计算机存储介质
CN116325727A (zh) 一种帧内预测方法、编码器、解码器及存储介质
CN113196762A (zh) 图像分量预测方法、装置及计算机存储介质
WO2024016156A1 (zh) 滤波方法、编码器、解码器、码流以及存储介质
US20240155153A1 (en) Method and apparatus for video coding refining predicted signals of intra prediction based on deep learning
CN113727119B (zh) 帧间预测方法、编码器、解码器以及计算机存储介质
US20230421752A1 (en) Method and apparatus for video coding using matrix based cross-component prediction
CN113840142B (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