CN109688406B - 使用机器学习的图像编码器及图像编码器的数据处理方法 - Google Patents

使用机器学习的图像编码器及图像编码器的数据处理方法 Download PDF

Info

Publication number
CN109688406B
CN109688406B CN201811201437.6A CN201811201437A CN109688406B CN 109688406 B CN109688406 B CN 109688406B CN 201811201437 A CN201811201437 A CN 201811201437A CN 109688406 B CN109688406 B CN 109688406B
Authority
CN
China
Prior art keywords
block
machine learning
prediction block
prediction
enhanced
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
CN201811201437.6A
Other languages
English (en)
Other versions
CN109688406A (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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics 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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN109688406A publication Critical patent/CN109688406A/zh
Application granted granted Critical
Publication of CN109688406B publication Critical patent/CN109688406B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • 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/045Combinations of networks
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/002Image coding using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • 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/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/136Incoming video signal characteristics or properties
    • 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/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • 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/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
    • 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/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/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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/625Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using discrete cosine transform [DCT]
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/01Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Health & Medical Sciences (AREA)
  • Discrete Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

本发明涉及图像编码器。一种图像编码器,用于通过对输入图像编码来输出比特流,该图像编码器包括预测器、基于机器学习的预测增强(MLBE)器和减法器。预测器配置为使用先前输入块的数据来生成预测块。MLBE器配置为通过将机器学习技术应用于预测块来将预测块变换为增强的预测块。减法器配置为通过从当前输入块的像素数据中减去增强的预测块的像素数据来生成剩余块。本发明还涉及该图像编码器的数据处理方法。

Description

使用机器学习的图像编码器及图像编码器的数据处理方法
相关申请的交叉引用
本申请要求2017年10月19日在韩国知识产权局提交的韩国专利申请No.10-2017-0136043的优先权,其全部内容通过引用并入于此。
技术领域
本公开涉及电子设备。更具体地,本公开涉及具有使用机器学习技术的图像编码器的电子设备以及图像编码器的编码方法/用于图像编码器的编码方法。
背景技术
对以高分辨率、高帧速率、高比特深度等为特征的高清晰度视频服务的需求迅速增加。因此,用于有效地编码和解码大量视频数据的编解码器的重要性已经引起关注。
H.264或高级视频编码(AVC)技术涉及视频压缩并且与先前的视频压缩技术相比可以在压缩效率、图像质量、比特率等方面提供增强的性能。这种视频压缩技术已经通过数字电视(TV)商业化,并且已经广泛用于各种应用领域,例如视频电话、视频会议、数字多功能盘(DVD)、游戏和三维(3D)电视。与先前版本相比,H.264或AVC压缩技术当前可以在压缩效率、图像质量、比特率等方面提供优异的性能。然而,在这种技术中运动预测模式可能更复杂,并且由此可以逐渐达到压缩效率的极限。
发明内容
本公开的实施例提供了一种图像编码器以及图像编码器的编码方法,该图像编码器用于在不添加控制数据的情况下生成预测块,该预测块作为具有与资源块(相比较)较小不同的增强的预测块。
根据实施例的一方面,一种用于通过编码输入图像来输出比特流的图像编码器包括预测器、基于机器学习的预测增强(MLBE)器和减法器。预测器配置为使用先前输入块的数据来生成预测块。基于机器学习的预测增强器配置为通过将机器学习技术应用于预测块来将预测块变换为增强的预测块。减法器配置为通过从当前输入块的像素数据减去增强的预测块的像素数据来生成剩余数据的剩余块。
根据实施例的另一方面,一种用于处理图像数据的方法包括:从先前输入块的时域数据生成预测块;通过将多个可用的机器学习技术中的至少一个应用到预测块而将预测块变换为增强的预测块;并通过从当前输入块减去增强的预测块来生成剩余数据的剩余块。
根据实施例的另一方面,一种用于处理图像数据的方法包括:从先前输入块的时域数据生成预测块;通过将多个可用的机器学习技术中的至少一个应用到预测块而将预测块变换为增强的预测块;使用与预测块和增强的预测块中的每一个对应的率失真优化(RDO)值来选择预测块和增强的预测块中的一个;并且通过从当前输入块中减去已选择的块来生成剩余数据的剩余块。
附图说明
通过以下参考附图的描述,上述及其他目的和特征将变得显而易见,其中除非另有说明,否则相同的附图标记在各个附图中指代相同的部分,并且其中:
图1是示出根据本公开的实施例的MLB编码器的配置的框图;
图2是示出图1的MLB编码器的示意性配置的框图;
图3是示出图1的MLB编码器的详细配置的框图;
图4是示出图3中所示的基于机器学习的预测增强(MLBE)块的特性的框图;
图5A和5B是示出用于根据每个预测模式选择最佳机器学习算法的MLBE器的框图;
图6A和6B是示出根据本公开的实施例的用于根据预测块的特性选择机器学习技术的编码方法的流程图;
图7是示出根据本公开的实施例的MLBE器的训练方法的框图;
图8是示出根据本公开的另一实施例的MLBE器的训练方法的图;
图9是示出根据本公开的另一实施例的MLB编码器的框图;
图10是示出图9的MLBE器的功能的框图;
图11是示出图10的MLBE器的操作的流程图;
图12是示出根据参考图11描述的本公开的实施例的视频流语法的示例的图;
图13是示出MLB解码器的框图;
图14是示出图13的MLB解码器的详细配置的框图;
图15是示出根据本公开的实施例的用于进行MLB预测增强操作的便携式终端的框图。
具体实施方式
在下文中,参考附图描述本公开的实施例,使得本公开对于本领域的技术人员来说是彻底和完整的并且将充分传达本公开的范围。在下文中,说明书中的术语“图像”具有包括诸如视频的运动图像以及诸如照片的静止图像的综合含义。
图1是示出根据本公开的实施例的基于机器学习(MLB)编码器的配置的框图。参考图1,MLB编码器100可以将输入图像10划分为多个块并且可以对每个块进行MLB预测编码。
MLB编码器100可以处理输入图像10以生成输出数据20。根据本公开的实施例的MLB编码器100可以使用机器学习技术来生成预测图像和预测块。例如,当使用输入图像10生成预测块时,MLB编码器100可以应用使用机器学习所学习到的参数。就是说,机器学习算法可以具有使用多个预定训练数据集所学习到的决策参数。在这种情况下,当使用机器学习时,预测块可以接近资源块而不增加报头数据22。由于预测块和资源块彼此更接近,因此剩余数据24的大小可以更大量地减小。
根据本公开的实施例的由应用机器学习技术的MLB编码器100生成的输出数据20可以大致地包括报头数据22和剩余数据24。根据本公开的实施例的MLB编码器100可以进行MLB预测编码以编码预测块和资源块的剩余块。在这种情况下,对应于剩余块的数据可以是剩余数据24。就是说,剩余块的剩余数据可以是剩余数据24。另一方面,预测所需的运动数据、图像数据和各种设置值可以作为报头数据22被输出。当预测块和资源块之间的差较小时,剩余数据24的大小可以更大量地减小。
通常,越精确地生成预测以减小剩余块和剩余图像的信息量,则预测所需的报头数据22的信息量会越多。然而,如果使用根据本公开的实施例的机器学习,则可以在不增加报头数据22的情况下进行精确预测。可以使用机器学习来增强先前生成的预测块以接近资源块。在这种情况下,尽管它对报头数据22的大小没有很大影响,但是可以有效地减小预测块和资源块之间的差。结果,对应于预测块和资源块之间的差值的剩余数据24的大小大大减小。
图2是示出图1的MLB编码器的示意性配置的框图。参见图2,MLB编码器100包括减法器110、MLBE器120(MLB预测增强块)、变换器/量化器130、预测器140和熵编码装置150。
本文的描述可以将结构装置/设备元件(诸如编码器、块和编码装置)称为编码器(例如MLB编码器或图像编码器)的代表性元件。在适当的情况下,任何这样的代表性元件可以由电路元件或多个电路元件的电路来实施。此外,在适当的情况下,任何这样的代表性元件可以由执行特定专用软件指令集(诸如软件模块或者处理器和软件指令的组合)的处理器(例如中央处理单元、微控制器、微处理器、数字信号处理器)来实施。因此,作为结构装置/设备元件的编码器、块和编码装置可以用电路和电子线路(circuitry)、和/或由一个或多个处理器执行的一个或多个处理器和软件指令的组合来实现。这样的处理器可以执行软件指令以进行归属于如本文所述的所提到的元件的一个或多个过程。
本文描述的任何处理器(或类似元件)是有形的和非暂时的。如本文所用,术语“非暂时性”不应解释为状态的永恒特性,而是解释为将持续一段时间的状态的特性。术语“非暂时性”明确地否定了短暂(fleeting)的特征,例如特定载波或信号或在任何时间仅在任何地方暂时存在的其他形式的特征。处理器是制品和/或机器组件的物品。处理器配置为执行软件指令,以便进行如本文的各种实施例中描述的功能。处理器可以是通用处理器或者可以是专用集成电路(ASIC)的零件。处理器还可以是微处理器、微计算机、处理器芯片、控制器、微控制器、数字信号处理器(DSP)、状态机或可编程逻辑设备。处理器也可以是逻辑电路(包括诸如现场可编程门阵列(FPGA)的可编程门阵列(PGA))、或者包括分立栅极和/或晶体管逻辑的其他类型的电路。处理器可以是中央处理单元(CPU)。另外,本文描述的任何处理器可以包括多个处理器、并行处理器或两者。可以从计算机可读介质读取指令集。此外,当由处理器执行时,指令可以用于进行如本文所述的一个或多个方法和过程。在特定实施例中,指令可在执行期间完全或至少部分地驻留在主存储器、静态存储器和/或处理器内。
在替代实施例中,可以构造专用硬件实现方式(诸如专用集成电路(ASIC)、可编程逻辑阵列和用于本文描述的功能块、总线保护器和系统管理器的其他硬件组件)以实现本文描述的一个或多个方法。这里描述的一个或多个实施例可以使用两个或更多个特定互连硬件模块或设备来实现功能,所述硬件模块或设备使用可以在模块之间和通过模块通信的相关控制和数据信号。因此,本公开包含软件、固件和硬件实现方式。本申请中的任何内容都不应该解释为仅用软件而不是诸如有形非暂时性处理器和/或存储器的硬件来实现或是可实现的。
减法器110可以由输入块和生成的预测块之间的差来生成剩余块。变换器/量化器130可以变换剩余块以输出变换系数。变换器/量化器130可以使用量化参数和量化矩阵中的至少一个来量化变换系数。因此,可以生成量化系数。在这种情况下,输出的量化系数可以最终对应于剩余数据Residual_Data。
熵编码装置150可以使用已产生的剩余数据Residual_Data或报头数据Header_Data(诸如在编码过程中产生的编码参数)来进行熵编码。熵编码是一种无损编码,通过用相对少的比特来表示频繁发生的模式和用相对多的比特来表示不频繁发生的模式以便压缩数字数据。下面提供熵编码的示例。可以通过熵编码装置150的熵编码计算来输出比特流Bitstream。如果应用熵编码,则可以将少量比特分配给具有高发生概率的符号,并且可以将大量比特分配给具有低发生概率的符号。因此,取决于这样的符号表示方式,将要编码的符号的比特流的大小可以减小。
预测器140可以基于输入的量化剩余数据Residual_Data和各种参数来生成预测块P。预测器140可以在帧内模式(intra mode)或帧间模式(inter mode)下进行编码以输出预测块P。预测器140可以生成用于输入图像10的资源块S的预测块P,并且可以将已生成的预测块P提供到MLBE器120。
MLBE器120可以处理预测块P以输出增强预测块EP作为处理结果。MLBE器120可以包括执行诸如一个或多个可用的机器学习算法之类的算法的处理器,以便处理预测块P并将预测块P变换为增强的预测块。MLBE器120可以使用例如机器学习算法来处理预测块P以具有接近资源块S的水平从而获得处理结果。换句话说,MLBE器120可以参考各种信息(诸如预测模式、运动矢量的特征、图像的分区形式、变换单元的大小)从各种机器学习技术之中选择最佳机器学习技术。各种技术(例如决策树、神经网络(NN)、卷积神经网络(CNN)、支持向量机(SVM)、K最近邻(K-NN)算法和强化学习)可以用作机器学习技术。
MLB编码器100使用根据本公开的实施例的机器学习将预测块P处理为接近资源块S。本公开不需要额外的数据来生成增强的预测块EP。这里,可以通过MLBE器120提供增强的预测块EP,该MLBE器120通过学习提供最佳滤波效果。MLBE器120可以通过(在线或离线)学习来维持或更新性能,而无需提供额外的数据。因此,按照根据本公开的实施例的MLB编码器100,图1的剩余数据24可以减少,而不增加图1的报头数据22。
图3是示出图2中的MLB编码器的详细配置的框图。参见图3,MLB编码器100包括减法器110、MLBE器120、变换器132、量化器134、预测器140、熵编码装置150和编码装置控制器160。这里,预测器140包括去量化器141、逆变换器142、加法器143、环路中滤波器144、缓冲器145、运动估计块146、运动补偿块147、帧内预测块148和模式决策块149。上述配置的MLB编码器100可以提供MLB预测增强功能。因此,图1的剩余数据24可以减少而不增加图1的报头数据22。
减法器110可以生成剩余数据的剩余块,该剩余块是输入块(或资源块)与预测块之间的差数据。详细地,减法器110可以计算包括在输入帧中的多个空间域块之中当前将要处理的当前空间域块的值与从MLBE器120输出的增强的预测块EP的值之间的差值。减法器110可以生成与已计算的差值对应的空间域剩余块的值(下文中称为“剩余数据”)。
就数据处理而言,每个空间域块可包括m×n个像素。这里,m和n中的每一个可以是大于或等于2的自然数,并且m可以等于n或m不等于n。包括在空间域块中的像素可以是但不限于具有亮度和色度(YUV)格式的数据、具有YCbCr格式的数据或具有红色、绿色和蓝色(RGB)格式的数据。例如,空间域块可以包括但不限于4×4像素、8×8像素、16×16像素、32×32像素或64×64像素。减法器110可以计算每个计算块的差值,并且可以输出对每个空间域块的已计算的差值。例如,在大小方面,计算块可以小于空间域块。例如,当计算块包括4×4像素时,空间域块可以包括16×16像素。然而,计算块的大小和空间域块的大小不限于此。
变换器132可以变换剩余块以输出变换系数。变换器132可以对包括在空间域剩余块中的块值进行时域到频域变换。例如,变换器132可以将时域的空间坐标变换为频域的值。例如,变换器132可以使用离散余弦变换(DCT)从空间域剩余块的值生成频域系数。换句话说,变换器132可以将作为时域数据的剩余数据变换为频域数据。
量化器134可以使用量化参数和量化矩阵中的至少一个来量化输入变换系数。量化器134可以输出量化的系数作为量化的结果。也就是说,量化器可以配置为通过量化频域数据来输出量化的系数。
熵编码装置150可以基于由量化器134计算的值或在编码过程中计算的编码参数等来进行熵编码,以输出比特流Bitstream。如果应用熵编码,则可以将少量比特分配给具有高发生概率的符号,可以将大量比特分配给具有低发生概率的符号。于是,将要编码的符号的比特串的大小可以减小。熵编码装置150可以使用诸如指数哥伦布(exponential-Golomb)编码、上下文自适应可变长度编码(CAVLC)或上下文自适应二进制算术编码(CABAC)的编码方法用于熵编码。
可以需要对当前已编码的块或图像进行解码或储存以用作参考块或图像。因此,由量化器134量化的系数可以由去量化器141去量化,并且可以由逆变换器142进行逆变换。去量化和逆变换的系数可以变成已重建的剩余块并且可以通过加法器143加到预测块P。因此,可以生成重建块。
可以将从加法器143计算的重建块发送到帧内预测块148,并且可以用于预测帧内定向模式。也可以将从加法器143输出的重建块发送到环路中滤波器144。
环路中滤波器144可将去块滤波器、样本自适应偏移(SAO)滤波器或自适应环路滤波器(ALF)中的至少一个应用于重建块或重建图片。去块滤波器可以去除在块之间的边界中发生的块失真。SAO滤波器可以将适当的偏移值添加到像素值以补偿编码误差。ALF可以基于通过将重建块与资源块比较所获得的值来进行滤波。由/通过环路中滤波器144处理的重建块可以储存在缓冲器145中以储存参考图像。
缓冲器145可以储存从环路中滤波器144输出的重建块,并且可以将重建块提供给运动估计块146和运动补偿块147。缓冲器145可以将从环路中滤波器144输出的重建块作为输出数据Output Data提供到熵编码装置150。
在帧内模式中,帧内预测块148可以使用当前块周围的先前已编码的块的像素值来进行空间预测,以生成作为执行空间预测的结果的第一预测块P1。在帧间模式中,运动估计块146可以在运动预测过程中找到与储存在缓冲器145中的参考图像中的输入块最紧密匹配的参考块,以获得运动矢量。运动补偿块147可使用运动矢量进行运动补偿以生成第二预测块P2。这里,运动矢量可以是用于帧间预测的二维(2D)矢量,并且可以指示参考块与当前将要编码/解码的块之间的偏移。
模式决策块149可以接收当前块、从帧内预测块148提供的第一预测块P1以及从运动补偿块147提供的第二预测块P2。模式决策块149可以确定第一预测块P1和第二预测块P2之一作为预测块P,并且可以将预测块P提供给MLBE器120。模式决策块149可以取决于当前块值、去量化的系数、第一预测块P1和第二预测块P2的块值以及控制信号CNT3来确定并输出预测块P。
在另一实施例中,模式决策块149可以为第一预测块P1和第二预测块P2中的每一个应用机器学习算法并且进行模式决策。例如,模式决策块149可以将机器学习算法应用于第一预测块P1以生成增强的第一预测块EP1。模式决策块149可以将机器学习算法应用于第二预测块P2以生成增强的第二预测块EP2。模式决策块149可以将增强的第一预测块EP1和增强的第二预测块EP2中的一个确定为预测块P,并且可以将预测块P提供给MLBE器120。在这种情况下,指示是否由已经发生机器学习算法处理的值应该包括在增强的第一预测块EP1或增强的第二预测块EP2中。通过模式决策块149的这样的操作可以更加增强图像压缩比。
MLBE器120可以处理从模式决策块149提供的预测块P,以输出增强的预测块EP作为已处理的结果。进行MLB处理的MLBE器120可以处理预测块P以具有接近资源块S的水平。MLBE器120可以参考编码信息MLS_Info来选择各种可用机器学习技术之一。编码信息MLS_Info可以包括诸如预测模式、运动矢量的特征、图像的分区形式和变换单元的大小的各种信息,其先前由模式决策块149确定。各种技术(例如决策树、CNN、SVM、K最近邻(K-NN)算法和强化学习)可以用作机器学习技术。将参考附图详细描述MLBE器120的详细特性。
编码装置控制器160可以取决于输入图像或块来控制MLB编码器100中的全部元件。编码装置控制器160可以确定输入图像的分区、编码块的大小等,并且可以取决于已确定的标准来控制图像的编码和解码。编码装置控制器160可以生成用于这样的控制操作的多个控制信号CNT1-CNT4,并且可以将控制信号CNT1-CNT4分别提供给运动估计块146、变换器132、模式决策块149和去量化器141。编码装置控制器160可以将包括在比特流的报头数据22(参见图1)中的控制数据Cotrol data提供给熵编码装置150。
如上所述,MLB编码器100使用根据本公开的实施例的机器学习将预测块P处理为接近资源块S。根据本公开的实施例,MLB编码器100包括用于通过学习提供最佳重建效果的MLBE器120。可以通过MLBE器120提供增强的预测块EP而不增加剩余数据。MLBE器120可以通过(在线或离线)学习来维持或更新性能。因此,按照根据本公开的实施例的MLB编码器100,可以减少剩余数据24而不增加报头数据22。
图4是示出图3中所示的MLBE器120的特性的框图。参见图4,MLBE器120可以使用各种编码信息MLS_Info将预测块P变换为最佳增强的预测块EP。
MLBE器120可以具有各种机器学习算法ML1-MLn(其中n是整数)。MLBE器120可以使用编码信息MLS_Info来选择具有最佳增强性能的机器学习算法。这里,应该很好地理解,各种机器学习算法ML1-MLn分别提供给用硬件实现的机器学习设备。这里,机器学习算法ML1-MLn可以包括例如决策树、CNN、SVM和强化学习的各种算法。
编码信息MLS_Info可以包括各种参数条件,例如预测模式、运动矢量的特征、帧内方向、编码单元的大小、图像的分区形式以及变换单元的大小。通常已知的是机器学习算法ML1至MLn对于特定图像或特征具有不同的滤波器特性。因此,增强的预测块EP可以根据各种条件或条件的组合而在质量上变化。根据本公开的实施例的MLBE器120可以选择通过学习过程所确定的最佳机器学习算法,并且可以生成接近资源块S的增强的预测模式EP而不增加图1中的报头数据22。于是,可以减少剩余数据24(参见图1)而不增加报头数据22。
图5A和5B是示出用于根据每个预测模式选择最佳机器学习算法的MLBE器的框图。图5A示出用于在帧内模式中从多个可用机器学习算法之中选择第二机器学习算法ML2的MLBE器120。图5B示出用于在帧间模式中从多个可用机器学习算法之中选择第三机器学习算法ML3的MLBE器120。
参见图5A,如果提供给MLBE器120的编码信息MLS_Info是帧内模式,则将从图3的帧内预测块148发送帧内预测块P_Intra。可以仅使用有限屏幕中的信息来生成帧内模式中的帧内预测块P_Intra。因此,帧内预测块P_Intra的分辨率或质量可能相对粗糙。MLBE器120可以选择第二机器学习算法ML2以将这样的帧内预测块P_Intra处理为接近资源块S的水平的增强的预测块EP。可以基于先前进行的各种学习的结果来进行该选择。
参见图5B,如果提供给MLBE器120的编码信息MLS_Info是帧间模式,则将从图3中的运动补偿块147发送帧间预测块P_Inter。可以参考先前在图像中处理的另一帧来生成帧间预测块P_Inter。因此,帧间预测块P_Inter可以在分辨率上比在帧内模式中生成的帧内预测块P_Intra更精细,或者可以具有比在帧内模式中生成的帧内预测块P_Intra更高/更好的质量。MLBE器120可以选择第三机器学习算法ML3以将这样的帧间预测块P_Inter处理为接近资源块S的水平的增强的预测块EP。可以基于先前进行的各种学习的结果来进行该选择。
如上所述,根据预测模式选择机器学习算法的方法简单地描述为不相关联的替代例之中的一个选择。然而,这可以仅是示例性实施例。应该很好地理解的是,可以根据各种编码信息MLS_Info的组合以各种方式将一个或多个机器学习算法组合并应用。
图6A和6B是示出用于取决于根据本公开的实施例的预测块的特性来选择机器学习技术的编码方法的流程图。参见图6A和6B,将给出根据本公开的实施例的MLBE器120(参见图4)的示例性操作特性的描述。
参见图6A,MLBE器120可以取决于预测块的特性来选择机器学习算法。
在操作S110中,MLBE器120可以接收图4的预测块P和编码信息(MLS_Info)。编码信息MLS_Info可以包括各种参数或条件,诸如预测模式、运动矢量的幅度或方向、帧内方向、编码单元CU的大小、图像的分区形式和变换单元的大小。可以从图3的模式决策块149、编码装置控制器160、运动估计块146、环路中滤波器144等提供这样的编码信息MLS_Info。然而,应该很好地理解的是,编码信息MLS_Info的类型或范围不限于此。作为各种数据的编码信息MLS_Info的组合可以用来生成高精度的增强的预测块EP。
在操作S120中,MLBE器120可以检查并分析已提供的编码信息MLS_info。取决于预定标准,MLBE器120可以将已提供的信息(诸如预测模式、运动矢量的幅度或方向、帧内方向、编码单元CU的大小、图像的分区形式和变换单元的大小)分类。预定标准可以包括指示是否首先应用任何信息和根据相应的信息的详细操作过程的信息。
在操作S130中,MLBE器120可以检查预测模式并且可以分支到操作。为了简化实施例中的描述,可以假设MLBE器120取决于预测模式和运动矢量来确定机器学习技术。当然,应该很好地理解的是,可以应用各种编码信息MLS_Info的组合来确定机器学习技术。如果预测模式是帧内模式,则过程可以移至操作S180。另一方面,如果预测模式是帧间模式,则过程可以移至操作S140。
在操作S140中,操作可以根据运动矢量来分支。为了简化描述,可以假设操作根据运动矢量的方向来分支。如果运动矢量对应于第一方向Dir1,则过程可以移至操作S150。另一方面,如果运动矢量对应于第二方向Dir2,则过程可以移至操作S160。如果运动矢量对应于第三方向Dir3,则过程可以移至操作S170。
在操作S150-S180中的每一个中,可以根据已选择的机器学习技术来处理预测块P。作为示例性示例,在操作S150中,可以根据决策树机器学习算法ML1来处理预测块P。在操作S160中,可以根据CNN机器学习算法ML2处理预测块P。在操作S170中,可以根据SVM机器学习算法ML3处理预测块P。在操作S180中,可以根据K-最近邻(K-NN)算法类型的机器学习算法ML4来处理预测块P,该算法类型对于模式识别和决策是有用的。另外,强化学习算法或各种机器学习算法可以用来生成根据本公开的实施例的预测块P作为增强的预测块EP。
在操作S190中,MLBE器120可以输出由已选择的机器学习算法生成的增强的预测块EP。输出的增强的预测块EP将被发送到减法器11(参见图3)。
如上所述,可以根据预测块的特性来选择机器学习算法的类型。然而,本公开的优点不仅限于上述实施例。下面将参考图6B给出另一特征的描述。
参见图6B,可以根据预测块的特性在一个机器学习算法(例如CNN)中选择各种参数集中的一个。这里,CNN描述为机器学习算法的示例。然而,应该很好地理解的是,本公开不限于此。
在操作S210中,MLBE器120可以接收图4中的预测块P和编码信息(MLS_Info)。编码信息MLS_Info可以包括各种参数或条件,诸如预测模式、运动矢量的幅度或方向、帧内方向、编码单元CU的大小、图像的分区形式以及变换单元的大小。可以从模式决策块149、编码装置控制器160、运动估计块146、环路中滤波器144等提供这样的编码信息MLS_Info。
在操作S220中,MLBE器120可以检查并分析已提供的编码信息MLS_info。取决于预定标准,MLBE器120可以将所提供的信息(例如预测模式、运动矢量的幅度或方向、帧内方向、编码单元CU的大小、图像的分区形式和变换单元的大小)分类。预定标准可以包括指示是否首先应用任何信息和根据相应的信息的详细操作过程的信息。
在操作230中,MLBE器120可以检查预测模式并且可以分支到操作。为了简化实施例中的描述,可以假设MLBE器120取决于预测模式和运动矢量来确定机器学习技术。当然,应该很好地理解的是,可以应用各种编码信息MLS_Info的组合来确定机器学习技术。如果预测模式是帧内模式,则过程可以移至操作S280。另一方面,如果预测模式是帧间模式,则过程可以移至操作S240。
在操作S240中,操作可以根据运动矢量来分支。为了简化描述,可以假设操作根据运动矢量的方向来分支。如果运动矢量对应于第一方向Dir1,则过程可以移至操作S250。另一方面,如果运动矢量对应于第二方向Dir2,则过程可以移至操作S260。如果运动矢量对应于第三方向Dir3,则过程可以移至操作S270。
在操作S250-S280中的每一个中,可以根据已选择的参数集来处理预测块P。作为示例性示例,在操作S250中,可以根据设置为第一参数集的CNN算法来处理预测块P。在操作S260中,可以根据设置为第二参数集的CNN算法来处理预测块P。在操作S270中,可以根据设置为第三参数集的CNN算法来处理预测块P。在操作S280中,可以根据设置为第四参数集的CNN算法来处理预测块P。尽管给出实施例的描述为划分成四个参数集,但是本公开的实施例不限于此。
在操作S290中,MLBE器120可以输出由已选择的参数集的机器学习算法生成的增强的预测块EP。输出的增强的预测块EP将被发送到减法器11(参见图3)。
如上所述,根据编码信息MLS_Info可以由MLBE器120来选择机器学习的类型,并且根据本公开的实施例,可以由MLBE器120选择在相同机器学习算法中设置的参数。当选择对应于各种预测块P的最佳机器学习算法或参数集时,可以最小化增强的预测块EP和资源块S之间的差。
图7是示出根据本公开的实施例的MLBE器的训练方法的框图。参考图7,可以使用各种模式或图像离线地学习或训练包括在MLBE器120中的机器学习算法。
可以通过资源块S 121和预测块P 122的输入来训练MLBE器120的机器学习算法ML1至MLn中的每一个。例如,在NN机器学习算法的情况下,预测块P 122可以表示资源块S121的多个变化的预测块。例如,可以更新机器学习参数ML参数,使得由各种预测模式生成的预测块P 122与资源块S 121映射。
可以针对机器学习算法ML1至MLn中的每一个进行使用资源块S 121和预测块P122的训练。如果训练了先前准备的各种图像或图案,则可以固定机器学习算法ML1至MLn中的每一个的参数。例如,在ImageNet是用于训练CNN的一种数据集的情况下,可以使用大约14,000,000或更多的训练图像。因此,每个机器学习算法可以具有使用一个或多个预定训练数据集学习到的决策参数。
如果完成上述学习或训练过程,则相对于根据编码信息MLS_Info输入的预测块P122,MLBE器120可以生成具有与资源块S 121最相似的值的增强的预测块EP。
图8是示出根据本公开的另一实施例的MLBE器的训练方法的图。参见图8,可以使用根据在线训练方案处理的图像来训练包括在MLBE器120中的机器学习算法。
在这种情况下,由输入图像组成的帧可以用于训练机器学习算法,而不是使用预先训练的机器学习算法。如果训练阶段结束,则仅使用训练结果随后进行参数更新。例如,可以使用输入帧之中与训练阶段(例如训练间隔)对应的帧F0至F4来进行MLBE器120的训练。如果训练阶段结束,则可以仅使用随后输入的帧F5至F11训练进行参数的更新。因此,如果提供输入图像,则可以使用输入图像的帧(例如在训练期间内)来训练每个机器学习算法。
如果使用在线训练方案,则不需要具有用于训练的分离数据集。可以使用输入图像来训练机器学习算法。因此,参数的大小可以相对较小。但是,如果没有提供用于支持在线培训的元件和资源,则可能难以得到适当的性能。
图9是示出根据本公开的另一实施例的MLB编码器的框图。参见图9,MLB编码器200包括减法器210、MLBE器220、变换器232、量化器234、预测器240、熵编码装置250和编码装置控制器260。这里,预测器240包括去量化器241、逆变换器242、加法器243、环路中滤波器244、缓冲器245、运动估计块246、运动补偿块247、帧内预测块248和模式决策块249。MLB编码器100可以选择性地提供MLB预测块的增强功能。例如,MLB编码器200可以取决于指示编码效率的率失真优化(RDO)值来确定是否使用MLBE器220。因此,可以选择具有更好压缩效率的RDO值的块作为预测块和增强的预测块之间的已选择的结果。
这里,除了取决于RDO值来确定是否使用MLB预测增强的MLBE器220之外,减法器210、变换器232、量化器234、预测器240、熵编码装置250和编码装置控制器260可以与图3中的那些实质上相同。因此,将省略对减法器210、变换器232、量化器234、预测器240、熵编码装置250和编码装置控制器260的详细功能的描述。
另一方面,MLBE器220可以具有图3中的MLB预测块P的增强功能,并且可以额外地确定是否生成增强的预测块EP或绕过已提供的预测块P。如果取决于RDO值来确定在机器学习技术中处理预测块不存在性能增益,则MLBE器220可以绕过从模式决策块249提供给减法器210的预测块P。如果取决于RDO值来确定在机器学习技术中处理预测块存在性能增益,则MLBE器220可以在机器学习技术中处理从模式决策块249提供的预测块P,并且可以将增强的预测块(EP)作为已处理的结果发送到减法器210。
可以通过上述MLBE器220的选择性预测增强操作来防止生成预测增强的开销。这里,RDO值描述为用于确定是否应用MLBE器220的预测增强操作的信息的示例。然而,根据本公开的实施例的MLBE器220可以使用各种性能参数以及RDO值来进行选择性预测增强操作。
图10是示出图9的MLBE器的功能的框图。参见图10,MLBE器220包括MLBE块222和选择块224。MLBE块222可以使用各种编码信息MLS_Info将预测块P变换为最佳的增强的预测块EP。选择块224可以选择预测块P和增强的预测块EP中的一个。
MLBE块222可以具有各种机器学习算法ML1至MLn。MLBE块222可以使用编码信息MLS_Info来选择具有最佳增强性能的机器学习算法。MLBE块222可以执行与图4的MLBE器120实质上相同的功能。因此,将省略对MLBE块222的描述。
选择块224可以相对于RDO值选择预测块P和增强的预测块EP中的一个。可以输出已选择的一个块作为提供给图9的减法器210的选择预测块SP。通过取决于RDO值来选择预测块P或增强的预测块EP,可以减少通过应用机器学习产生的开销。
图11是示出图10的MLBE器的操作的流程图。参见图11,图9的MLBE器220可以绕过未向其应用增强操作的预测块P,参考RDO值将该预测块P从图9的模式决策块249提供到图9的减法器210。
在操作S310中,MLBE器220可以接收从模式决策块249生成的预测块P。
在操作S320中,MLBE器220可以计算RDO值。取决于RDO值,MLBE器220可以确定是否执行MLB预测增强操作或者是否将从模式决策块249提供的预测块P发送到减法器210而不进行MLB预测增强操作。
在操作S330中,如果当根据RDO值使用机器学习处理预测块P时的性能小于(差于)等于当不使用机器学习(ML≤非ML)时的性能,则过程可以移至操作S340。另一方面,如果使用机器学习处理预测块P时的性能大于(优于)不使用机器学习时的性能(ML>非ML),则过程可以移至操作S350。
在操作S340中,MLBE器220可以选择从模式决策块249提供的预测块P,并且可以将已选择的预测块P发送到减法器210。
在操作S350中,MLBE器220可以处理通过MLBE块222从模式决策块249提供的预测块,以获得已处理的结果。MLBE器220可以选择增强的预测块EP,并且可以将已选择的增强的预测块EP发送到减法器210。
在操作S360中,MLB编码器200可以在视频流语法中写入指示是否通过应用机器学习来压缩已发送的比特流的标志。
如上所述,可以使用RDO值来确定是否应用根据本公开的实施例的MLB预测块的激活操作。在某些情况下,可能会出现一种特殊情况,即当应用MLB激活时,开销会增加。在这样的情况下,根据本公开的实施例的MLB编码器200可以选择未应用机器学习的预测块P,以防止根据机器学习的性能的开销。
图12是示出根据参考图11描述的本公开的实施例的视频流语法的示例的图。参见图12,可以验证从指示编码单元的语法中应用了根据本公开的实施例的MLB预测增强操作。
当发送用于图像或块的比特流时,如果应用了MLB预测增强,则图1的MLB编码器200可以在视频流语法的标志(ml_based_pred_enhancement_flag)中写入“1”。另一方面,当发送用于图像或块的比特流时,如果未应用MLB预测增强,则MLB编码器200可以在视频流语法的标志中写入“0”。
参考视频流语法的标志(ml_based_pred_enhancement_flag),解码器可以通过解码操作的机器学习来应用或跳过预测增强操作。
图13是示出MLB解码器的框图。参见图13,根据本公开的实施例的MLB解码器300包括用于解码的MLBE器390。
MLBE器390可以进行与图3的MLBE器120或图9的MLBE器220相同或类似的操作。换句话说,MLBE器390可以使用编码信息MLS_Info来选择最佳机器学习算法,并且可以使用已选择的机器学习算法来生成预测块P作为增强的预测块EP。替代地,MLBE器390可以参考包括在视频流语法中的标志来选择预测块P或增强的预测块EP。MLB解码器300可以使用这样的MLB增强的预测块EP将比特流30重建为输出图像40。
图14是示出图13的MLB解码器的详细配置的框图。参见图14,MLB解码器300包括熵解码器310、去量化器320、逆变换器330、加法器340、环路中滤波器350、缓冲器360、帧内预测块370、运动补偿块372、运动估计块374、模式决策块380和MLBE器390。
MLB解码器300可以接收从图1的MLB编码器100或图9的MLB编码器200输出的比特流并且可以在帧内模式或帧间模式下进行解码以输出重建图像。MLB解码器300可以从已接收的比特流获得重建的剩余块并且可以生成预测块P。如果使用MLBE器390进行预测块P的MLB处理,则可以生成增强的预测块EP。MLB解码器300可以将已重建的剩余块添加到增强的预测块EP以生成重新配置的重建块。
MLB解码器300的全部元件可以与上述MLB编码器100或200的那些元件实质上相同。因此,下面将省略对MLB解码器300的元件的详细描述。
图15是示出根据本公开的实施例的用于进行MLB预测增强操作的便携式终端的框图。参见图15,根据本公开的实施例的便携式终端1000包括图像处理单元1100、无线收发器、音频处理单元、电源管理集成电路(PMIC)1400、电池1450、存储器1500、用户接口1600和控制器1700。
图像处理单元1100包括镜头1110、图像传感器1120、图像处理器1130和显示单元1140。无线收发器包括天线1210、收发器1220和调制解调器1230。音频处理单元包括音频处理器1310、麦克风1320和扬声器1330。
具体地,根据本公开的实施例的图像处理单元1100可以通过应用机器学习技术来处理预测块。在该情况下,图像处理单元1100可以减小剩余数据而不增加视频信号的报头数据的大小。
按照根据本公开的实施例的编码器和编码方法,可以实现这样的编码器和解码器,即该编码器和解码器在图像质量方面具有低的劣化性能,同时通过最小化预测块和资源块之间的差来提高数据压缩比。
虽然已经参考示例性实施例描述了本公开,但是对于本领域技术人员显而易见的是,在不脱离本公开的精神和范围的情况下,可以进行各种改变和修改。因此,应该理解的是,上述实施例不是限制性的而是说明性的。

Claims (19)

1.一种用于通过编码输入图像来输出比特流的图像编码器,所述图像编码器包括:
预测器,其配置为使用先前输入块的数据来生成预测块;
基于机器学习的预测增强器,其配置为通过将机器学习技术应用于所述预测块来将所述预测块变换为增强的预测块,其中,所述基于机器学习的预测增强器:
响应于率失真优化值选择预测块和增强的预测块中的一个作为已选择的块,其中,响应于与增强的预测块对应的率失真优化值指示相对于与预测块对应的率失真优化值的性能增益,选择增强的预测块作为所述已选择的块,以及响应于与增强的预测块对应的率失真优化值指示没有相对于与预测块对应的率失真优化值的性能增益,选择预测块作为所述已选择的块;以及
减法器,其配置为通过从当前输入块的像素数据减去所述已选择的块的像素数据来生成剩余数据的剩余块。
2.根据权利要求1所述的图像编码器,其中所述基于机器学习的预测增强器配置为:
执行用于处理所述预测块的多个机器学习算法。
3.根据权利要求2所述的图像编码器,其中所述基于机器学习的预测增强器配置为:
参考所述输入图像的编码信息来选择多个机器学习算法中的至少一个作为已选择的机器学习算法;并且
使用所述已选择的机器学习算法来处理所述预测块。
4.根据权利要求3所述的图像编码器,其中所述编码信息包括与所述预测块对应的预测模式、运动矢量的幅度和方向、帧内方向、编码单元的大小、图像的分区形式和变换单元的大小中的至少一个。
5.根据权利要求2所述的图像编码器,其中所述多个机器学习算法包括决策树、神经网络、卷积神经网络、支持向量机、强化学习和K-最近邻算法中的至少一个。
6.根据权利要求1所述的图像编码器,其中所述基于机器学习的预测增强器被配置为选择多个机器学习算法中的一个作为已选择的机器学习算法;使用所述已选择的机器学习算法来处理所述预测块以获得已处理的结果;并且取决于所述已处理的结果来生成所述增强的预测块。
7.根据权利要求6所述的图像编码器,其中根据所述已选择的块,在比特流的视频流语法中写入指示是否应用所述机器学习技术的标志。
8.根据权利要求2所述的图像编码器,其中所述多个机器学习算法具有使用多个预定训练数据集所学习到的决策参数。
9.根据权利要求2所述的图像编码器,其中,如果提供了所述输入图像,则在训练间隔期间使用所述输入图像的帧来训练所述多个机器学习算法。
10.根据权利要求1所述的图像编码器,还包括:
变换器,其配置为将作为时域数据的所述剩余数据变换为频域数据;
量化器,其配置为通过量化所述频域数据来输出量化的系数;以及
熵编码装置,其配置为将所述量化的系数和编码信息变换为比特流。
11.根据权利要求1所述的图像编码器,其中所述基于机器学习的预测增强器配置为:
执行机器学习算法,该算法取决于编码信息选择多个参数集中的一个作为已选择的参数集,并且使用所述已选择的参数集处理所述预测块。
12.一种用于处理图像数据的方法,所述方法包括:
从先前输入块的时域数据生成预测块;
通过将多个机器学习技术中的至少一个应用于所述预测块,将所述预测块变换为增强的预测块;
响应于率失真优化值选择预测块和增强的预测块中的一个作为已选择的块,其中,响应于与增强的预测块对应的率失真优化值指示相对于与预测块对应的率失真优化值的性能增益,选择增强的预测块作为所述已选择的块,以及响应于与增强的预测块对应的率失真优化值指示没有相对于与预测块对应的率失真优化值的性能增益,选择预测块作为所述已选择的块;以及
通过从当前输入块中减去所述已选择的块来生成剩余块。
13.根据权利要求12所述的方法,还包括:
获得在生成所述预测块时提取的编码信息。
14.根据权利要求13所述的方法,其中变换为所述增强的预测块包括:
取决于所述编码信息来选择所述多个机器学习技术中的至少一个。
15.根据权利要求13所述的方法,其中所述编码信息包括与所述预测块对应的预测模式、运动矢量的幅度和方向、帧内方向、编码单元的大小、图像的分区形式和变换单元的大小中的至少一个。
16.根据权利要求13所述的方法,其中所述多个机器学习技术包括决策树、神经网络、卷积神经网络、支持向量机、强化学习和K-最近邻算法中的至少一个。
17.一种用于处理图像数据的方法,所述方法包括:
从先前输入块的时域数据生成预测块;
通过将多个机器学习技术中的至少一个应用于所述预测块,将所述预测块变换为增强的预测块;
响应于与所述预测块和所述增强的预测块中的每一个对应的率失真优化值,选择所述预测块和所述增强的预测块中的一个作为已选择的块;以及
通过从当前输入块中减去所述已选择的块来生成剩余块。
18.根据权利要求17所述的方法,其中所述选择包括:
选择具有更好压缩效率的率失真优化值的一个块作为所述预测块和所述增强的预测块之间的已选择的结果。
19.根据权利要求17所述的方法,还包括:
取决于所述预测块或所述增强的预测块的选择,在比特流的视频流语法中写入指示是否应用所述多个机器学习技术中的至少一个的标志。
CN201811201437.6A 2017-10-19 2018-10-16 使用机器学习的图像编码器及图像编码器的数据处理方法 Active CN109688406B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020170136043A KR102535361B1 (ko) 2017-10-19 2017-10-19 머신 러닝을 사용하는 영상 부호화기 및 그것의 데이터 처리 방법
KR10-2017-0136043 2017-10-19

Publications (2)

Publication Number Publication Date
CN109688406A CN109688406A (zh) 2019-04-26
CN109688406B true CN109688406B (zh) 2023-05-30

Family

ID=66170216

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811201437.6A Active CN109688406B (zh) 2017-10-19 2018-10-16 使用机器学习的图像编码器及图像编码器的数据处理方法

Country Status (4)

Country Link
US (2) US11115673B2 (zh)
KR (1) KR102535361B1 (zh)
CN (1) CN109688406B (zh)
TW (1) TWI748125B (zh)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102535361B1 (ko) * 2017-10-19 2023-05-24 삼성전자주식회사 머신 러닝을 사용하는 영상 부호화기 및 그것의 데이터 처리 방법
CN108665067B (zh) * 2018-05-29 2020-05-29 北京大学 用于深度神经网络频繁传输的压缩方法及系统
KR102022648B1 (ko) * 2018-08-10 2019-09-19 삼성전자주식회사 전자 장치, 이의 제어 방법 및 서버의 제어 방법
US11240492B2 (en) * 2019-01-22 2022-02-01 Apple Inc. Neural network based residual coding and prediction for predictive coding
US10652581B1 (en) * 2019-02-27 2020-05-12 Google Llc Entropy coding in image and video compression using machine learning
US10771807B1 (en) * 2019-03-28 2020-09-08 Wipro Limited System and method for compressing video using deep learning
US10552121B1 (en) * 2019-05-07 2020-02-04 Capital One Services, Llc System and method for dynamic process flow control based on real-time events
CN110163370B (zh) * 2019-05-24 2021-09-17 上海肇观电子科技有限公司 深度神经网络的压缩方法、芯片、电子设备及介质
WO2020242738A1 (en) * 2019-05-26 2020-12-03 Alibaba Group Holding Limited Ai-assisted programmable hardware video codec
JP7318314B2 (ja) * 2019-05-30 2023-08-01 富士通株式会社 符号化プログラム、復号プログラム、符号化装置、復号装置、符号化方法及び復号方法
CN110557646B (zh) * 2019-08-21 2021-12-07 天津大学 一种智能视点间的编码方法
KR20210042588A (ko) 2019-10-10 2021-04-20 엘지전자 주식회사 영상을 압축 또는 복원하기 위한 방법 및 장치
CN110738313B (zh) * 2019-10-15 2022-05-31 阿波罗智能技术(北京)有限公司 用于评估量化操作的方法、装置、设备和介质
CN110740319B (zh) * 2019-10-30 2024-04-05 腾讯科技(深圳)有限公司 视频编解码方法、装置、电子设备及存储介质
KR102245682B1 (ko) * 2019-11-11 2021-04-27 연세대학교 산학협력단 영상 압축 장치, 이의 학습 장치 및 방법
TWI733270B (zh) * 2019-12-11 2021-07-11 中華電信股份有限公司 機器學習模型的最佳超參數組態的訓練裝置和訓練方法
CN111160487B (zh) * 2019-12-31 2024-02-13 清华大学 人脸图像数据集的扩充方法和装置
WO2021165569A1 (en) * 2020-02-21 2021-08-26 Nokia Technologies Oy A method, an apparatus and a computer program product for video encoding and video decoding
WO2021170901A1 (en) * 2020-02-24 2021-09-02 Nokia Technologies Oy A method, an apparatus and a computer program product for video encoding and video decoding
US20210400286A1 (en) * 2020-06-19 2021-12-23 Micron Technology, Inc. Video Compression in Removable Storage Device having Deep Learning Accelerator and Random Access Memory
US11356601B2 (en) 2020-06-19 2022-06-07 Micron Technology, Inc. Intelligent digital camera having deep learning accelerator and random access memory
US11490135B2 (en) 2020-06-19 2022-11-01 Micron Technology, Inc. Surveillance camera upgrade via removable media having deep learning accelerator and random access memory
KR102394951B1 (ko) * 2020-08-27 2022-05-09 한국전자기술연구원 인코딩, 디코딩 장치 및 방법
WO2022186620A1 (ko) * 2021-03-04 2022-09-09 현대자동차주식회사 인트라 예측의 예측 신호를 개선하는 비디오 코딩방법 및 장치
CN113052257B (zh) * 2021-04-13 2024-04-16 中国电子科技集团公司信息科学研究院 一种基于视觉转换器的深度强化学习方法及装置
CN113240605A (zh) * 2021-05-21 2021-08-10 南开大学 基于对称神经网络进行正反双向学习的图像增强方法
WO2023287018A1 (ko) * 2021-07-13 2023-01-19 현대자동차주식회사 딥러닝 기반 인트라 예측 신호를 개선하는 비디오 코딩방법 및 장치
WO2023198057A1 (en) * 2022-04-12 2023-10-19 Beijing Bytedance Network Technology Co., Ltd. Method, apparatus, and medium for video processing
WO2023211253A1 (ko) * 2022-04-28 2023-11-02 인텔렉추얼디스커버리 주식회사 신경망 기반 움직임 벡터 필드 압축을 이용한 비디오 압축 방법
WO2024039166A1 (ko) * 2022-08-18 2024-02-22 삼성전자 주식회사 Ai를 이용하는 영상 복호화 장치, 영상 부호화 장치 및 이들에 의한 방법
WO2024058642A1 (ko) * 2022-09-16 2024-03-21 한국전자통신연구원 영상 부호화/복호화를 위한 방법, 장치 및 기록 매체

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4735375B2 (ja) 2006-04-04 2011-07-27 株式会社日立製作所 画像処理装置及び動画像符号化方法。
US8619853B2 (en) 2007-06-15 2013-12-31 Qualcomm Incorporated Separable directional transforms
JP4717860B2 (ja) * 2007-08-22 2011-07-06 眞一郎 湯村 データ圧縮方法及び画像表示方法及び表示画像拡大方法
JP2009111691A (ja) * 2007-10-30 2009-05-21 Hitachi Ltd 画像符号化装置及び符号化方法、画像復号化装置及び復号化方法
US8929440B2 (en) 2010-04-09 2015-01-06 Sony Corporation QP adaptive coefficients scanning and application
JP2012065081A (ja) 2010-09-15 2012-03-29 Hitachi Ltd 画像符号化方法、画像復号化方法、画像符号化装置及び画像復号化装置
KR20120100448A (ko) 2011-03-04 2012-09-12 (주)스프링웨이브 머신 러닝을 이용한 동영상 압축 기법 및 장치
CN106162167B (zh) 2015-03-26 2019-05-17 中国科学院深圳先进技术研究院 基于学习的高效视频编码方法
US10681380B2 (en) * 2015-06-12 2020-06-09 Panasonic Intellectual Property Management Co., Ltd. Image encoding method, image decoding method, image encoding apparatus, and image decoding apparatus
US10827186B2 (en) * 2016-08-25 2020-11-03 Intel Corporation Method and system of video coding with context decoding and reconstruction bypass
CN106973293B (zh) * 2017-04-21 2020-10-27 中国科学技术大学 基于视差预测的光场图像编码方法
EP3451293A1 (en) 2017-08-28 2019-03-06 Thomson Licensing Method and apparatus for filtering with multi-branch deep learning
KR102535361B1 (ko) * 2017-10-19 2023-05-24 삼성전자주식회사 머신 러닝을 사용하는 영상 부호화기 및 그것의 데이터 처리 방법

Also Published As

Publication number Publication date
CN109688406A (zh) 2019-04-26
US20220007045A1 (en) 2022-01-06
KR102535361B1 (ko) 2023-05-24
KR20190043930A (ko) 2019-04-29
US11694125B2 (en) 2023-07-04
US20190124348A1 (en) 2019-04-25
US11115673B2 (en) 2021-09-07
TW201924340A (zh) 2019-06-16
TWI748125B (zh) 2021-12-01

Similar Documents

Publication Publication Date Title
CN109688406B (zh) 使用机器学习的图像编码器及图像编码器的数据处理方法
KR102165340B1 (ko) 색차 성분 양자화 매개 변수 결정 방법 및 이러한 방법을 사용하는 장치
EP3056000B1 (en) Sign coding for blocks with transform skipped
DK2834980T3 (en) Sample adaptive filtering with offsets
JP7319389B2 (ja) 適応ループ・フィルタを用いたエンコーダ、デコーダおよび対応する方法
EP2982110A1 (en) Method and device for determining the value of a quantization parameter
US11343493B2 (en) Bit shifting for cross-component adaptive loop filtering for video coding
JP2015516780A (ja) ビットストリームのビット数を推定するための装置および方法
US10992937B2 (en) Coefficient coding with grouped bypass bins
CN114145019B (zh) 用于非线性自适应环路滤波器的限幅电平
JP2021119691A (ja) 画像復号装置、画像復号方法及びプログラム
CN114450950A (zh) 编码装置、解码装置及程序
US20220248023A1 (en) Coding method and system with improved transform domain coefficient computation
CN114051140B (zh) 视频编码方法、装置、计算机设备及存储介质
CN114598873B (zh) 量化参数的解码方法和装置
US20210160539A1 (en) Method and system of video coding
JP2021093634A (ja) 符号化装置、復号装置、及びプログラム
CN113767636A (zh) 帧内模式编解码的方法和系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant