CN114930824A - 深度调色板预测 - Google Patents

深度调色板预测 Download PDF

Info

Publication number
CN114930824A
CN114930824A CN202080092425.3A CN202080092425A CN114930824A CN 114930824 A CN114930824 A CN 114930824A CN 202080092425 A CN202080092425 A CN 202080092425A CN 114930824 A CN114930824 A CN 114930824A
Authority
CN
China
Prior art keywords
image
palette
encoder
color
generate
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
CN202080092425.3A
Other languages
English (en)
Inventor
罗曦杨
I.俞
杨峰
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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of CN114930824A publication Critical patent/CN114930824A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/90Determination of colour characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/28Quantising the image, e.g. histogram thresholding for discrimination between background and foreground patterns
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/56Extraction of image or video features relating to colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/761Proximity, similarity or dissimilarity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • 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/164Feedback from the receiver or from the transmission channel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • 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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/192Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • 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/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Signal Processing (AREA)
  • Evolutionary Computation (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

示例实施例允许训练编码器(例如,人工神经网络(ANN))以基于输入图像生成颜色调色板。然后,可以使用颜色调色板而利用输入图像来生成对应于输入图像的量化的、色深减少的图像。将多个这样的输入图像和对应的量化图像之间的差异用于训练编码器。以这样的方式训练的编码器尤其适合于生成用于将图像转换成不同的色深减少的图像文件格式的颜色调色板。相对于中值切割算法或用于为图像产生色深减少的颜色调色板的其他方法,这样的编码器在存储器使用和计算时间或成本方面也具有优势。

Description

深度调色板预测
背景技术
不同的图像格式可以具有它们能够支持的不同数量的有区别的颜色,这可以通过它们用多少比特来表示每个像素来表示。例如,可移植网络图形(PNG)格式能够存储由每像素8、24或48比特表示的颜色,而图形交换格式(GIF)支持每像素8比特或更少比特(调色板中最多256种颜色)。因此,当图像文件被转换成具有较小颜色范围的格式时,可以为该图像生成新的颜色调色板。对于大的图像,这可能是一个缓慢的过程,并且可能降低图像的感知质量。
发明内容
为了将图像文件从一种格式转换成另一种格式,可以生成新的颜色调色板。这是因为一些图像格式限制了图像中表示的颜色的数量,以便减少用于存储该图像的颜色数据的每个像素的比特数量。例如,可移植网络图形(PNG)格式可以用每像素8、24或48比特来表示像素颜色数据,而图形交换格式(GIF)使用每像素8比特或更少的比特来表示颜色信息。
格式之间的这样的转换可能是一个缓慢的过程,尤其是对于编码了许多像素、具有很深的色深或者在尺寸的其他方面很大的图像文件。此外,转换为具有较少颜色数量或色深的格式会导致图像的主观质量的损失。
为了有效地减少图像中表示的颜色的数量,为缩减的颜色调色板识别一组颜色可能是有益的。可以选择这样的缩减的调色板中每种颜色的特性(例如,红色、蓝色和绿色的相对等级),以保持图像质量和/或最小化由于减少图像中颜色的数量而导致的图像质量的降低。在一些示例中,可以预先选择这样的缩减的颜色调色板中的颜色,例如,根据图像压缩标准来定义。可替换地,可以基于输入图像来确定用于生成颜色数量减少的图像的缩减的颜色调色板,以便提高输出图像的质量。例如,主要包括红色色调的输入图像可以由主要包含红色或接近红色的颜色、蓝色、绿色或其他非红色色调的相对较少的颜色的颜色调色板表示,以便有效地生成美学上令人满意的输出图像(例如,对于普通观看者来说主观上令人愉快)。
可以应用各种方法来为输入图像确定颜色调色板,该颜色调色板将产生主观上令人愉快的或以其他方式是“良好的”输出图像,其中将像素限制为由所确定的颜色调色板中的颜色来表示。这样的方法的一个示例是作为压缩图像的GIF标准的一部分的中值切割算法。
这里描述的实施例提供了应用人工神经网络(ANN)、k-均值或其他机器学习算法和/或编码器来生成颜色调色板的方法以压缩图像和/或将图像从一种格式转换成另一种格式。用于从输入图像生成颜色调色板的ANN或其他算法可以根据各种过程来训练或以其他方式开发。本公开提供了用于训练编码器的方法,该编码器可以包括人工神经网络以基于输入图像生成预测的颜色调色板。所生成的颜色调色板包含然后可用于将应用的图像转换成比所应用的输入图像包含更少颜色的图像的颜色值。然后,缩减的彩色图像和输入图像之间的差异可以用于训练ANN(例如,通过使用该差异作为误差信号来经由反向传播更新ANN)。生成的图像的主观质量可以附加地或替换地用于训练ANN。
这样的更新过程可以执行多次,和/或基于多个不同的训练图像,来生成ANN。然后可以使用这样的经训练的ANN(例如,通过计算机的处理器)来确定附加图像的颜色调色板,然后可以使用颜色调色板来将附加图像转换成与其原始图像格式不同的图像格式。
这里公开的方法可以有利地使得图像的训练集能够用于训练颜色调色板-预测人工神经网络或其他算法,而不需要关于训练集的任何图像的“真值(ground truth)”颜色调色板的信息。因此,这样的训练集的图像可以从任何合适的图像源获得,而不需要确定或以其他方式获得“真值”颜色数量减少的颜色调色板。
在第一方面,一种用于训练编码器从输入图像生成颜色调色板的方法包括:(i)获得训练数据,其中,训练数据包括一个或多个图像,其中,一个或多个图像中的每一个具有多个颜色通道;(ii)将来自训练数据的第一图像应用于编码器以生成第一图像的第一调色板,其中,第一调色板包括第一数量的颜色,第一调色板的每种颜色包括对应于第一图像的相应颜色通道的一组值;(iii)使用第一调色板量化第一图像以生成第一量化图像;(iv)将第一图像与第一量化图像进行比较;以及(v)基于该比较更新编码器。基于该比较更新编码器可以包括例如更新编码器以减少第一图像和第一量化图像之间的差异。
上述方法可以包括一个或多个以下可选特征。来自训练数据的第一图像可以是具有红色通道、蓝色通道和绿色通道的RGB图像。可以在应用于编码器之前通过数据增强来修改第一图像。编码器可以包括一个或多个卷积层和一个或多个输出层,其中,至少一个输出层接收至少一个卷积层的输出作为输入,其中,将第一图像应用于编码器以生成第一调色板包括将第一图像应用于至少一个卷积层,其中,一个或多个输出层的最终层包括第一数量的输出单元,并且其中,最终层的每个输出单元对应于第一调色板的相应颜色。一个或多个这样的输出层可以被称为“隐藏层”。
上述方法还可以包括:(i)通过修改更新的编码器来生成缩减的调色板编码器,其中,修改更新的编码器包括:(a)从更新的编码器中至少丢弃最终层;以及(b)用缩减的调色板最终层替换丢弃的最终层,其中,缩减的调色板最终层包括第二数量的输出单元,其中,第二数量的输出单元小于第一数量的输出单元;(ii)将来自训练数据的第二图像应用到缩减的调色板编码器以生成第二图像的第二调色板,其中,第二调色板包括第二数量的颜色,第二调色板的每种颜色包括对应于第二图像的相应颜色通道的一组值,其中,第二数量的颜色小于第一数量的颜色,并且其中,缩减的调色板最终层的每个输出单元对应于第二调色板的相应颜色;(iii)使用第二调色板量化第二图像以生成第二量化图像;(iv)将第二图像与第二量化图像进行比较;以及(v)基于第二图像与第二量化图像的比较来更新缩减的调色板编码器。第一数量的颜色可以大于255,第二数量的颜色可以小于65。基于该比较来更新缩减的调色板编码器可以包括例如更新缩减的调色板编码器以减少第二图像和第二量化图像之间的差异。
更新缩减的调色板编码器可以包括更新缩减的调色板最终层的至少一个参数。更新缩减的调色板编码器还可以包括不修改一个或多个卷积层的任何参数。不修改一个或多个卷积层的任何参数可以包括固定一个或多个卷积层和/或其参数,例如,通过将卷积层的学习速率参数设置为零,通过设置标志来指示卷积层可能被固定或者以其他方式不被更新,或者通过采取一些其他动作。
将第一图像与第一量化图像进行比较可以包括确定第一输入图像的特定像素和第一量化图像的对应像素之间的差异。将第一图像与第一量化图像进行比较可以包括将卷积神经网络应用于第一量化图像以生成主观质量分数;这样的示例是使用神经图像评估(NIMA)分数。编码器可以是可差分的(differentiable)端到端,因此更新编码器可以包括通过编码器执行反向传播。将第一图像与第一量化图像进行比较可以包括执行作为可差分端到端的比较过程,因此更新编码器可以包括通过比较过程执行反向传播。
在另一方面,一种用于预测图像的颜色调色板的方法包括:(i)获得图像;(ii)将所述图像应用于编码器以针对所述图像生成至少一个调色板,其中,根据前述方面的方法已经训练了所述编码器。该图像可以是RGB图像文件。
在另一方面,一种系统包括控制器和其上存储有程序指令的计算机可读介质,该程序指令在由控制器执行时,使得控制器执行任何上述方法。这样的计算机可读介质可以是非暂时性的。
在另一方面,一种系统包括其上存储有程序指令的计算机可读介质,该程序指令在由控制器执行时,使得控制器执行任何上述方法。这样的计算机可读介质可以是非暂时性的,并且可以被结合到制造品中。
通过适当参考附图阅读下面的详细描述,这些以及其他方面、优点和替换对于本领域普通技术人员来说将变得明显。此外,应当理解,在本发明内容部分和本文档的其他地方提供的描述旨在通过示例而非限制的方式来说明所要求保护的主题。
附图说明
图1图示了一种示例方法。
图2是示出示例计算系统的一些组件的简化框图。
图3是一种方法的流程图。
图4是一种方法的流程图。
具体实施方式
这里描述了方法和系统的示例。应当理解,这里使用的词语“示例性的”、“示例”和“说明性的”意味着“用作示例、例证或说明”。这里描述为“示例性”、“示例”或“说明性”的任何实施例或特征不一定被解释为比其他实施例或特征更优选或更有利。此外,这里描述的示例性实施例不意味着是限制性的。容易理解的是,所公开的系统和方法的某些方面可以以各种不同的配置来布置和组合。
I.示例应用和图像格式转换
通常,成像可以指以数字、化学或其他格式(例如,在照片和/或运动视频中)捕捉和存储真实世界环境或场景的颜色和亮度特征。存在各种各样的图像捕捉设备(例如,CCD、光电检测器阵列、有源像素传感器)来便利于捕捉众多不同格式的图像(例如,彩色成像、黑白成像)。
不同的图像格式具有它们能够支持的不同数量的有区别的颜色。这可能与使用多少比特来表示每个像素有关。例如,可移植网络图形(PNG)格式能够存储由每像素8、24或48比特表示的颜色,而图形交换格式(GIF)仅支持每像素8比特。因此,如果图像从一种格式转换成另一种格式,则可以对颜色数据进行转换以便被新格式支持。图像文件的格式可能会因网站图像嵌入、文件压缩、文件传输或其他原因而改变。这样的转换可能是一个缓慢的过程,尤其是对于大的图像文件。此外,该转换会导致图像的感知质量的损失。在各种应用中,加速图像格式转换的过程同时保持原始图像的感知质量可能是有利的。一种解决方案是开发人工神经网络(ANN)或其他算法来从图像生成预测的颜色调色板。这个预测的颜色调色板然后可以用于以指定的文件格式生成图像。
II.示例颜色调色板预测
为了从输入图像生成包括比输入图像更少颜色的图像,可以首先获得缩减的颜色调色板。然后,可以基于输入图像中像素的颜色,将输入图像的每个像素映射到调色板中颜色之一。这样的调色板可以作为默认颜色调色板而获得,例如,目标图像格式可以指定在根据目标图像格式对图像进行编码时必须使用的默认颜色调色板。可替换地,可以基于输入图像来确定颜色调色板。在这样的示例中,所确定的颜色调色板可以适配于输入图像中出现的颜色,使得提高编码的图像的主观质量,同时使用颜色调色板中指定数量的颜色来表示该图像。可以使用各种方法从输入图像中确定颜色调色板。这样的一种方法是中值切割算法。
采用中值切割算法将图像转换为GIF图像格式。中值切割算法包括相对于在像素中呈现值的最大范围的颜色通道对输入图像的像素的颜色值进行排序。例如,如果蓝色通道在RGB图像中具有最大的范围,则颜色值将首先根据蓝色值排序。然后将排序后的像素划分成两组或“桶”(bucket)。然后在每个“桶”中重复这样的排序和划分过程,直到有与调色板所需颜色量一样多的“桶”为止。对于每个桶,用于对桶中的像素进行排序的颜色通道是根据桶中的像素中哪个颜色通道表现出值的最大范围来选择的。然后,将每个“桶”的颜色值平均化为该桶的单个颜色值。这导致确定输出颜色调色板的颜色数量等于桶的数量。
虽然直接,但是当用于确定大的颜色调色板时,该过程在计算上可能是昂贵的;颜色调色板越大,这个过程需要的时间就越长。此外,对桶中的颜色进行平均化并不总是准确地反映桶中的颜色范围,从而导致输出图像的主观质量损失。此外,中值切割算法是迭代的,并且包括多个排序和分割步骤,因此可能需要大量和可变的存储器、计算时间/周期和其他计算资源,尤其是对于大的图像和/或具有许多颜色的输出颜色调色板。
这里提供的实施例表示了对中值切割算法和先前所采用的确定用于编码色深减少的图像的颜色调色板的其他方法的改进。这些实施例采用各种机器学习技术或其他算法来识别可以校正变色的改进的颜色调色板,在更受约束的时间段内有效地预测图像的颜色调色板,或者提供其他益处。本公开中描述的实施例避免了中值切割算法(或类似算法)所需的迭代处理步骤,并且因此允许比使用中值切割算法更快地确定颜色调色板。此外,实验已经表明,根据本公开创建的色深减少的图像比使用中值切割算法生成的图像具有更高的质量。
在一些示例中,可以应用人工神经网络(ANN)来生成图像的颜色调色板。可以用各种方式配置这样的ANN。例如,ANN可以包括两层或更多层,可以包括具有线性、对数或其他方式指定输出函数的单元,可以包括完全或其他方式连接的神经元,可以包括不同层中神经元之间的递归(recurrent)和/或前馈连接,可以包括滤波器或其他元件以处理输入信息和/或层间传递的信息,或者可以以其他方式配置以便利于基于输入图像来生成预测的颜色调色板。
用于基于输入图像生成预测的颜色调色板的ANN可以包括一个或多个可以应用于输入图像的滤波器,然后这些滤波器的输出可以应用于ANN的一个或多个神经元的输入。例如,这样的ANN可以是或者可以包括卷积神经网络(CNN)。卷积神经网络是各种各样的ANN,它们被配置成基于图像或在二维或更多维度内对其元素进行组织的其他大的维度输入而便利于基于ANN的分类或其他处理。ANN沿着这些维度的组织可以与输入结构中的一些结构相关(例如,图像的二维空间内的相对位置能够与图像的像素之间的相似性相关)。
在示例实施例中,CNN包括应用于输入图像的至少一个二维(或更高维)滤波器;然后将经滤波的输入图像应用于CNN的神经元(例如,CNN的卷积层的神经元)。这样的滤波器和输入图像的卷积可以表示来自输入图像的一个像素或一组像素的颜色值。CNN的一组神经元可以接收通过对输入图像应用相同的滤波器而确定的相应输入。附加地或可替换地,CNN的一组神经元可以与相应不同的滤波器相关联,并且可以接收通过将相应滤波器应用于输入图像而确定的相应输入。可以在CNN的训练期间训练或者可以预先指定这样的滤波器。例如,这样的滤波器可以表示小波滤波器、中心环绕滤波器、生物启发滤波器核(例如,来自动物视觉处理感受野(receptive fields)的研究),或者一些其他预先指定的滤波器模式。
CNN或其他种类的ANN可以包括多个卷积层(例如,对应于相应不同的滤波器和/或特征)、池化层、校正层、全连接层或其他类型的层。CNN的卷积层表示输入图像或一些其他输入(例如,输入图像的滤波、下采样或其他方式处理版本)与滤波器的卷积。CNN的池化层,例如,通过将最大值、平均值、L2范数或其他池化函数应用于CNN的(多个)更高层的神经元、输出或其他特征的子集,而将非线性下采样应用于CNN的更高层。CNN的校正层将校正非线性函数(例如,不饱和激活函数、sigmoid函数)应用于更高层的输出。CNN的全连接层接收来自CNN的一个或多个更高层中的许多或所有神经元的输入。一个或多个全连接层(例如,ANN或CNN的最终层)的神经元的输出可以用于确定输入图像的区域(例如,对于输入图像的每个像素)或作为整体对图像确定预测的颜色调色板。
可以根据输入的对应维度来组织CNN中的神经元。例如,在输入是图像(二维输入,或其中图像的颜色通道沿着第三维布置的三维输入)的情况下,CNN(例如,CNN的输入层,CNN的池化层)的神经元可以对应于二维输入图像中的位置。CNN不同层中的神经元和/或滤波器之间的连接可能与这些位置相关。例如,CNN的卷积层中的神经元可以接收基于滤波器与输入图像的一部分,或者与位于接近卷积层神经元的位置的、CNN的某个其他层的一部分的卷积的输入。在另一个示例中,CNN的池化层中的神经元可以接收来自比池化层更高的层中(例如,在卷积层中,在更高的池化层中)的、其位置接近池化层神经元的位置的神经元的输入。
ANN可以基于输入图像生成颜色调色板,颜色调色板的颜色可以用于使用较少的颜色来表示输入图像中存在的相对更多数量的颜色。这样的颜色调色板可用于减少输入图像的色深,或者以其他方式量化输入图像,从而允许用更少的比特来表示输入图像(例如,实现输入图像的压缩)或者提供一些其他好处(例如,允许图像在低色深显示器上显示)。这样的颜色调色板可用于将输入图像转换成指定的图像格式,其颜色范围对应于生成的颜色调色板的大小。在一些示例中,这可以包括ANN生成颜色调色板,该颜色调色板具有与特定图像格式例如GIF或PNG图像格式所允许的颜色数量相对应的颜色数量。
可以使用各种方法来应用所生成的颜色调色板,以将输入图像转换成仅包括颜色调色板的颜色的色深减少的图像。可以执行这样的处理,以便将输入图像转换成支持所生成的颜色调色板中有限数量的颜色的格式。这可以通过从生成的颜色调色板中为输入图像的每个像素选择一种颜色来表示转换后的图像中的对应像素来完成。例如,为特定像素从颜色调色板中选择颜色可以包括在三维颜色空间中确定该特定像素的颜色和颜色调色板中每种颜色之间的距离。然后可以为该特定像素选择颜色调色板中具有最近距离的颜色。
III.示例训练方法
可以训练用于从图像生成颜色调色板的编码器(例如,是CNN和/或其他种类的ANN的一部分或全部)或其他算法以提高由此生成的颜色调色板的质量。这样的训练可以包括基于一组训练图像迭代地或以其他方式更新编码器。这样的训练可以包括将特定的训练图像应用于编码器,确定输出颜色调色板,使用颜色调色板生成输入的量化版本,然后基于所生成的量化图像和输入图像之间的对应程度(例如,输入图像的像素颜色和量化图像的对应像素颜色之间的均方差)来确定误差或损失。然后,可以基于所确定的对应程度来更新编码器(例如,通过反向传播)。
这样的“无监督的”训练方法相对于基于生成的颜色调色板和已知的“真值”颜色调色板之间的对应性来训练编码器的“有监督的”方法能够提供益处。实际上,访问这样的“真值”颜色调色板信息可能是困难的或昂贵的(就人力而言)。此外,在这样的“真值”颜色调色板是由人生成的情况下,“真值”调色板本身可能是以可能难以校正的方式的次优的(例如,由于人对图像的主观感知而有偏差)。
这里描述的方法可以通过基于源图像和根据从源图像生成的颜色调色板从中生成的量化图像之间的差异(例如,像素差异)来便利于编码器的训练,从而改善上述缺点。这允许使用大量不同的图像来训练编码器。此外,该训练可以使得编码器尝试创建用于产生与源图像对应的量化图像的颜色调色板,而不是在颜色调色板的颜色空间内包括一些偏差。
如这里所述,可以针对多个不同的场景、视角和/或其颜色来获取多组图像或其他图像信息,以便生成用于训练编码器的多个图像。用于训练编码器的多组图像或其他图像信息可以通过各种方式获得。在一些示例中,可以增强训练集的一个或多个图像以增加该组训练图像中出现的图像和图像类型的多样性。这可以包括故意添加噪声、改变颜色平衡、引入模拟划痕、条纹或其他缺陷,或者将一些其他异常引入一个或多个训练图像。这可以通过许多方式来完成,诸如,使像素具有不正确的颜色(例如,蓝天图像中的黑色上色像素),使多个像素具有不正确的颜色(例如,一行白色像素跨越不同上色的列),失焦或“模糊”的图像,裁剪的图像(例如,从图像中移除的像素的行和/或列),和/或单色图像(例如,灰度图像)。
图1示出了用于图示这样的编码器训练方法的要素的示例流程图。多个图像(“训练图像集”)包括示例源图像(“源图像”)。
编码器(“编码器”),例如ANN、CNN或一些其他编码器算法,用于基于源图像确定颜色调色板(“颜色调色板”)。可以以各种方式(例如,如上所述)配置编码器以基于输入图像提供颜色调色板。例如,编码器可以包括卷积神经网络。然后,使用生成的颜色调色板将源图像转换成色深减少的量化图像(“量化器”)的算法被用于基于颜色调色板生成量化图像(“量化图像”)。因此,量化图像表示源图像的一个版本,其像素被限制为由编码器输出的颜色调色板中表示的颜色。
可以确定量化图像和源图像之间的差异(“误差信号”)并用于更新编码器。这样确定的差异可以包括通过例如减去量化图像和源图像之间的对应像素的值而确定的差异图像。更新编码器可以包括将损失函数应用于所确定的量化图像和源图像之间的差异,执行反向传播,确定差异相对于编码器系数的梯度,或者基于所确定的差异,根据一些其他方法来更新编码器。在一些示例中,损失函数可以包括与量化图像的主观质量相关的一项或多项。可以例如由观看过量化图像的人来提供这样的主观质量值。附加地或可替换地,可以将卷积神经网络或其他算法或模型应用于量化图像以生成这样的主观质量分数。例如,可以将神经图像评估(NIMA)应用于量化图像,以生成主观质量分数。
可以执行多次上述用于更新编码器的过程(例如,结合图1)以训练编码器。例如,对于指定的迭代次数,或者根据一些其他条件,可以迭代地执行这些过程,直到编码器收敛(例如,直到每次迭代中编码器系数的变化程度减少到低于指定的绝对或相对水平),直到每次迭代中所确定的误差信号的幅度的测量值(例如,误差平方和、校正误差和、主观质量分数)减少到低于指定的绝对或相对水平。
此外,结合图1描述的实施例旨在作为说明性的示例实施例,而不是限制性的。例如,用于训练编码器的多个图像可以包括对应于相应不同对象的多组图像。每组这样的图像可以包括一个或多个全聚焦图像、浅景深图像或可以用于执行这里描述的编码器训练方法的一个或多个要素的其他图像。在这样的示例中,可以训练编码器,使得这样一组图像中的每个图像的颜色调色板是相似的。
可以由服务器、云计算服务或其他计算系统根据这里描述的技术来训练编码器。用于训练编码器的系统然后可以应用经训练的编码器来确定更多图像的颜色调色板。例如,该系统可以接收附加图像(例如,从手机、数码相机或其他图像捕捉系统)并将经训练的编码器应用于这些图像以生成这些图像的颜色调色板,使用这些生成的颜色调色板来生成这些图像的色深减少的量化版本(例如,作为根据GIF、PNG或一些其他图像格式对图像进行编码的过程的一部分),或者执行与图像和/或从中生成的颜色调色板相关的其他操作。该系统然后可以将所确定的颜色调色板、图像的量化版本或其他生成的信息传送到提供(多个)附加图像的任何设备或系统。
附加地或可替换地,服务器或其他系统可以如这里所述训练编码器,然后将所训练的编码器的指示(例如,所训练的编码器的系数、内部结构或其他细节的指示)传送到某个其他系统。然后,另一个系统可以操作而将经训练的编码器应用于附加图像。例如,服务器可以如这里所述训练编码器,然后将经训练的编码器的指示传送到蜂窝电话(例如,经由互联网和/或蜂窝数据网络)。然后,蜂窝电话可以操作而将经训练的编码器应用于图像(例如,经由蜂窝电话的相机捕捉的图像),以生成颜色调色板、使用这样的颜色调色板的图像的量化版本、或者使用经训练的编码器的其他处理。传送经训练的编码器的指示可以包括经由有线或无线组件向已经运行的系统(例如,向手机、数码相机或与互联网通信的其他设备)传送信息。附加地或可替换地,向系统传送经训练的编码器的指示可以发生在系统的组装和/或编程期间。例如,传送经训练的编码器的指示可以包括用经训练的编码器对控制器或存储器(例如,闪存或一些其他非暂时性计算机可读介质)进行编程,并且随后将控制器或存储器集成到设备或其他系统中。
注意,虽然如这里所述用于训练编码器的图像可以被表征为用于训练编码器的“训练数据”或“训练图像”以供以后应用于感兴趣的其他图像(例如,由手机捕捉的图像),但是这些表征旨在作为这里所述方法的非限制性示例。可以使用一个或多个图像来训练ANN,然后在已经使用图像对其进行了训练之后,再次将其用于为一个或多个图像生成颜色调色板。
IV.说明性系统
图2图示了可用于实现这里描述的方法的示例计算设备200。借助示例而非限制,计算设备200可以是蜂窝移动电话(例如,智能手机)、照相机、摄像机、传真机、计算机(例如,台式、笔记本、平板或手持计算机)、个人数字助理(PDA)、家庭自动化组件、数字录像机(DVR)、数字电视、遥控器、可穿戴计算设备、机器人、无人机、自主车辆或一些其他类型的设备。这样的设备可以配备有图像捕捉设备以便生成一个或多个图像,然后可以根据这里描述的方法对该一个或多个图像进行压缩和/或量化(例如,生成色深减少或以其他方式量化的输出图像)。应当理解,计算设备200可以表示物理相机设备,诸如数码相机、在其上以软件运行的图像处理应用程序的特定物理硬件平台、或者被配置成执行图像处理和/或编码器训练功能的硬件和软件的其他组合。
如图2所示,计算设备200可以包括通信接口202、用户接口204、处理器206和数据存储装置208,所有这些可以通过系统总线、网络或其他连接机制210通信地链接在一起。
通信接口202可以起作用可以允许计算设备200使用电、磁、电磁、光或其他信号的模拟或数字调制与其他设备、接入网络和/或传输网络进行通信。因此,通信接口202可以便利于电路交换和/或分组交换通信,例如普通老式电话服务(POTS)通信和/或互联网协议(IP)或其他分组化通信。例如,通信接口202可以包括被布置为与无线电接入网络或接入点进行无线通信的芯片组和天线。此外,通信接口202可以采取有线接口的形式或包括有线接口,诸如以太网、通用串行总线(USB)或高清多媒体接口(HDMI)端口。通信接口202也可以采取无线接口的形式或包括无线接口,诸如Wifi、
Figure BDA0003734615790000121
全球定位系统(GPS)或广域无线接口(例如,WiMAX或3GPP长期演进(LTE))。然而,可以在通信接口202上使用其他形式的物理层接口和其他类型的标准或专有通信协议。此外,通信接口202可以包括多个物理通信接口(例如,Wifi接口、
Figure BDA0003734615790000122
接口和广域无线接口)。
在一些实施例中,通信接口202可以起作用以允许计算设备200与其他设备、远程服务器、接入网络和/或传输网络进行通信。例如,通信接口202可以起作用以经由与远程服务器或其它远程设备或系统的通信来访问经训练的编码器,以便允许计算设备200使用经训练的编码器来基于所捕捉或以其它方式获得的图像而生成颜色调色板和/或使用这样的颜色调色板来量化这样的图像。例如,计算系统200可以是手机、数码相机或其他图像捕捉设备,而远程系统可以是包含存储器的服务器,而该存储器包含这样的经训练的编码器。
用户接口204可以起作用以允许计算设备200与用户交互,例如从用户接收输入和/或向用户提供输出。因此,用户接口204可以包括输入组件,诸如小键盘、键盘、触敏面板或存在敏感面板、计算机鼠标、轨迹球、操纵杆、麦克风等等。用户接口204还可以包括一个或多个输出组件,诸如显示屏,其例如可以与存在敏感面板相组合。显示屏可以基于CRT、LCD和/或LED技术,或者现在已知或以后开发的其他技术。用户接口204还可以被配置成经由扬声器、扬声器插孔、音频输出端口、音频输出设备、耳机和/或其他类似设备来生成(多个)听得见的输出。
处理器206可以包括一个或多个通用处理器(例如微处理器)和/或一个或多个专用处理器(例如数字信号处理器(DSP)、图形处理单元(GPU)、浮点单元(FPU)、网络处理器、张量处理单元(TPU)或专用集成电路(ASIC)。在一些情况下,除了其他应用或功能之外,专用处理器还可以有能力进行图像处理、图像对准和合并图像。数据存储装置208可以包括一个或多个易失性和/或非易失性存储组件,诸如磁、光、闪存或有机存储器,并且可以整体或部分地与处理器206集成。数据存储装置208可以包括可移除和/或不可移除的组件。
处理器206可以有能力执行存储在数据存储装置208中的程序指令218(例如,编译或非编译的程序逻辑和/或机器代码),以执行这里描述的各种功能。因此,数据存储装置208可以包括其上存储有程序指令的非暂时性计算机可读介质,该程序指令在由计算设备200执行时,使得计算设备200执行本说明书和/或附图中公开的任何方法、过程或功能。处理器206执行程序指令218可以致使处理器206使用数据212。
借助示例,程序指令218可以包括安装在计算设备200上的操作系统222(例如,操作系统内核、(多个)设备驱动器和/或其他模块)和一个或多个应用程序220(例如,相机功能、编码器和/或ANN训练、基于图像的颜色调色板生成)。数据212可以包括训练图像214和/或一个或多个经训练的编码器216。训练图像214可用于训练ANN或其它编码器或包含编码器的算法,如这里所述的(例如,生成和/或更新经训练的编码器216)。可以应用经训练的编码器216来基于输入图像(例如,使用设备200的相机组件捕捉的和/或经由通信接口202访问的图像)生成颜色调色板。
应用程序220可以通过一个或多个应用编程接口(API)与操作系统222通信。这些API可以便利于例如应用程序220读取和/或写入经训练的编码器216、经由通信接口202传送或接收信息、在用户接口204上接收和/或显示信息、使用相机组件224捕捉图像等等。
应用程序220可以采取能通过一个或多个在线应用商店或应用市场(例如,经由通信接口202)下载到计算设备200的“应用”的形式。然而,应用程序也可以以其他方式安装在计算设备200上,诸如经由网络浏览器或通过计算设备200的物理接口(例如,USB端口)。
V.示例方法
图3是用于训练编码器从输入图像生成颜色调色板的方法300的流程图。方法300包括由系统获得包括一个或多个图像的训练数据(310),其中一个或多个图像中的每一个包括多个颜色通道。方法300另外包括将来自训练数据的第一图像应用于编码器,以生成第一图像的第一调色板(320)。第一调色板包括第一数量的颜色,并且第一调色板的每种颜色包括对应于第一图像的相应颜色通道的一组值。方法300另外包括使用第一颜色调色板量化第一图像以生成第一量化图像(330)。方法300另外包括将第一图像与第一量化图像进行比较(340)。方法300另外包括基于比较结果来更新编码器(350)。
这些实施例可以包括附加的要素或特征。在一些实施例中,第一图像是具有红色通道、蓝色通道和绿色通道的RGB图像。
在一些实施例中,在将第一图像应用于编码器之前,通过数据增强来修改第一图像。例如,可以通过将异常引入图像来增强第一图像,诸如但不限于,添加噪声、改变颜色平衡以及应用模拟划痕或其他模拟缺陷。在一些示例中,可以通过应用失焦对象和/或通过改变图像部分的模糊或焦点、添加强光以及创建损坏的像素来增强第一图像。
在一些实施例中,编码器包括一个或多个卷积层和一个或多个输出层。至少一个输出层接收至少一个卷积层的输出作为输入。可替代地,一个或多个这样的输出层可以被称为“隐藏层”。将第一图像应用于编码器以生成第一调色板包括将第一图像应用于至少一个卷积层。一个或多个输出层的最终层包括第一数量的输出单元,并且最终层的每个输出单元对应于第一调色板的相应颜色。
在一些实施例中,该方法还包括通过修改更新的编码器来生成缩减的调色板编码器。修改更新的编码器包括从更新的编码器中丢弃至少最终层,并用缩减的调色板的最终层替换丢弃的最终层。缩减的调色板最终层包括第二数量的输出单元,其中第二数量的输出单元少于第一数量的输出单元。修改更新的编码器另外包括将来自训练数据的第二图像应用于缩减的调色板编码器以生成第二图像的第二调色板,其中第二调色板包括第二数量的颜色,第二调色板的每种颜色包括对应于第二图像的相应颜色通道的一组值,其中第二数量的颜色小于第一数量的颜色,并且其中缩减的调色板最终层的每个输出单元对应于第二调色板的相应颜色。修改更新的编码器还进一步包括使用第二调色板量化第二图像以生成第二量化图像。修改更新的编码器还进一步包括将第二图像与第二量化图像进行比较。修改编码器另外包括基于第二图像与第二量化图像的比较来更新缩减的调色板编码器。
在一些实施例中,第一数量的颜色大于255,第二数量的颜色小于65。在一些实施例中,第一数量的颜色大于1023,第二数量的颜色小于255。在一些实施例中,第一数量的颜色大于127,第二数量的颜色小于32。
在一些实施例中,更新缩减的调色板编码器包括更新缩减的调色板最终层的至少一个参数。
在一些实施例中,更新缩减的调色板编码器包括不修改一个或多个卷积层的任何参数。也就是说,更新缩减的调色板编码器可以包括使得卷积层的参数不更改,仅改变缩减的调色板最终层的参数、节点数量、连接结构或其他属性。这可以包括采取一些积极的行动以便不修改一个或多个卷积层的任何参数,例如,通过将卷积层的学习速率参数设置为零,通过设置标志来指示卷积层可能被固定或者以其他方式不被更新,或者在被更新到缩减的调色板编码器时通过采取一些其他行动来防止一个或多个卷积层的参数被修改,而固定一个或多个卷积层和/或其参数,。
在一些实施例中,比较第一图像和第一量化图像包括确定第一输入图像的特定像素和第一量化图像的对应像素之间的差异。例如,可以确定第一图像和第一量化图像中的每对像素之间的平方差的和。
在一些实施例中,将第一图像与第一量化图像进行比较包括将卷积神经网络应用于第一量化图像以生成主观质量源。这可以包括使用神经图像评估(NIMA)深度卷积神经网络来确定主观质量分数,该主观质量分数预测了第一量化图像的典型人类观看者是否会发现第一量化图像在主观上令人愉悦。
在一些实施例中,编码器是差分端到端并且更新编码器包括通过编码器执行反向传播。例如,第一图像的像素和第一量化图像的对应像素之间的计算差可以通过编码器反向传播,并用于更新编码器的一个或多个参数,可能与已经通过编码器反向传播的一个或多个其他计算差相结合。这是对可能是迭代的或者可能具有阻止端到端差分的其他属性的其他量化方法(例如中值切割算法)的改进。因此,可能很困难或不可能经由有效的、计算上易处理的方法,如反向传播或依赖于编码器元素的端到端差分性的其他训练算法或待训练的其他算法,来训练这样的其他算法。此外,因为编码器是端到端可差分的,所以它可以容易地连接到其他学习系统,并且特别地,可以将其作为模块化组件包括在任何可差分的学习系统中。
在一些实施例中,将第一图像与第一量化图像进行比较包括执行作为端到端可差分的比较过程,并且更新编码器包括通过比较过程执行反向传播。
图4是用于预测图像的色调色板的方法400的流程图。方法400包括获得图像(410)。方法400另外包括将图像应用于根据上述方法300训练的编码器,以生成图像的调色板(420)。
这些实施例可以包括附加的要素或特征。在一些实施例中,图像是RGB图像文件。在一些实施例中,方法400包括使用所生成的调色板从所获得的图像中确定色深减少的图像或以其他方式量化的图像。可以根据图像格式,例如根据GIF图像格式,来执行该量化过程。
VI.结论
以上详细描述参考附图描述了所公开的系统、设备和方法的各种特征和功能。在附图中,相似的符号通常标识相似的组件,除非上下文另有说明。在详细描述、附图和权利要求中描述的说明性实施例不意味着是限制性的。在不脱离这里呈现的主题的范围的情况下,可以利用其他实施例,并且可以进行其他改变。将容易理解的是,如在此一般描述的和在附图中图示出的,本公开的各方面可以以宽泛的各种不同的配置来布置、替换、组合、分离和设计,所有这些在此都是明确预期的。
关于附图中的任何或所有的消息流图、场景和流程图,并且如这里所讨论的,每个步骤、块和/或通信可以表示根据示例实施例的信息处理和/或信息传输。将替代实施例包括在这些示例实施例的范围内。在这些替代实施例中,例如,被描述为步骤、块、传输、通信、请求、响应和/或消息的功能可以不按所示或所讨论的顺序来执行,包括基本上同时执行或按相反顺序执行,这取决于所涉及的功能。此外,更多或更少的步骤、块和/或功能可以与这里讨论的任何消息流图、场景和流程图一起使用,并且这些消息流图、场景和流程图可以部分地或整体地彼此组合。
表示信息处理的步骤或块可以对应于能够被配置为执行这里描述的方法或技术的特定逻辑功能的电路。替换地或附加地,表示信息处理的步骤或块可以对应于程序代码(包括相关数据)的模块、片段或一部分。程序代码可以包括可由处理器执行的一个或多个指令,用于实现该方法或技术中的特定逻辑功能或动作。可以将程序代码和/或相关数据存储在任何类型的计算机可读介质上,例如存储设备,包括盘驱动器、硬驱动器或其他存储介质。
计算机可读介质还可以包括非暂时性计算机可读介质,诸如短期存储数据的计算机可读介质,如寄存器存储器、处理器高速缓存和/或随机存取存储器(RAM)。计算机可读介质还可以包括将程序代码和/或数据存储更长时间的非暂时性计算机可读介质,例如二级或永久性长期存储器,例如只读存储器(ROM)、光盘或磁盘和/或压缩盘只读存储器(CD-ROM)。计算机可读介质也可以是任何其他易失性或非易失性存储系统。例如,可以将计算机可读介质视为是计算机可读存储介质,或者有形存储设备。
此外,表示一个或多个信息传输的步骤或块可以对应于同一物理设备中的软件和/或硬件模块之间的信息传输。然而,其他信息传输可以在不同物理设备中的软件模块和/或硬件模块之间进行。
虽然这里已经公开了各种方面和实施例,但是其他方面和实施例对于本领域技术人员来说将是明显的。这里公开的各种方面和实施例是为了说明的目的,而不是旨在进行限制,真正的范围由所附权利要求指示。
尽管示例性实施例通篇包括使用ANN来基于输入图像生成颜色调色板,但是可以预见的是,可以应用替代算法来基于图像生成颜色调色板。例如,根据这里描述的方法,可以应用核方法、贝叶斯推理算法、强化学习算法、细胞自动机、决策树、提升的决策树或其他替代算法和/或它们的组合来基于输入图像生成颜色调色板。相应地,例如,通过提供可以被应用于更新这样的替代算法(例如,使用反向传播、强化学习或适合于所选取的替代算法的一些其他技术)的误差信息(例如,输入图像和通过对其应用生成的色深减少的颜色调色板而生成的图像之间的差异),可以将在此描述的用于训练ANN的方法应用于训练这样的替代算法。

Claims (18)

1.一种用于训练编码器从输入图像生成颜色调色板的方法,该方法包括:
获得训练数据,其中,训练数据包括一个或多个图像,其中,一个或多个图像中的每一个具有多个颜色通道;
将来自训练数据的第一图像应用于编码器,以生成第一图像的第一调色板,其中,第一调色板包括第一数量的颜色,第一调色板的每种颜色包括对应于第一图像的相应颜色通道的一组值;
使用第一调色板来量化第一图像以生成第一量化图像;
将第一图像与第一量化图像进行比较;和
基于比较来更新编码器。
2.根据任一前述权利要求所述的方法,其中,第一图像是具有红色通道、蓝色通道和绿色通道的RGB图像。
3.根据任一前述权利要求所述的方法,其中,在将第一图像应用于编码器之前,通过数据增强来修改第一图像。
4.根据任一前述权利要求所述的方法,其中,编码器包括一个或多个卷积层和一个或多个输出层,其中,至少一个输出层接收至少一个卷积层的输出作为输入,其中,将第一图像应用于编码器以生成第一调色板包括将第一图像应用于至少一个卷积层,其中,一个或多个输出层的最终层包括第一数量的输出单元,并且其中,最终层的每个输出单元对应于第一调色板的相应颜色。
5.根据权利要求3所述的方法,还包括:
通过对更新的编码器进行修改来生成缩减的调色板编码器,其中,对更新的编码器进行修改包括:
从更新的编码器中至少丢弃最终层;以及
用缩减的调色板最终层替换丢弃的最终层,其中,缩减的调色板最终层包括第二数量的输出单元,其中,第二数量的输出单元小于第一数量的输出单元;
将来自训练数据的第二图像应用到缩减的调色板编码器以生成第二图像的第二调色板,其中,第二调色板包括第二数量的颜色,第二调色板的每种颜色包括对应于第二图像的相应颜色通道的一组值,其中,第二数量的颜色小于第一数量的颜色,并且其中,缩减的调色板最终层的每个输出单元对应于第二调色板的相应颜色;
使用第二调色板量化第二图像,以生成第二量化图像;
将第二图像与第二量化图像进行比较;和
基于第二图像与第二量化图像的比较来更新缩减的调色板编码器。
6.根据权利要求5所述的方法,其中,第一数量的颜色大于255,并且其中,所述第二数量的颜色小于65。
7.根据权利要求5所述的方法,其中,更新缩减的调色板编码器包括更新缩减的调色板最终层的至少一个参数。
8.根据权利要求5所述的方法,其中,在更新缩减的调色板编码器期间,一个或多个卷积层的参数是固定的。
9.根据任一前述权利要求所述的方法,其中,将第一图像与第一量化图像进行比较包括确定第一输入图像的特定像素与第一量化图像的对应像素之间的差异。
10.根据任一前述权利要求所述的方法,其中,将第一图像与第一量化图像进行比较包括将卷积神经网络应用于第一量化图像以生成主观质量分数。
11.根据权利要求10所述的方法,其中,将卷积神经网络应用于第一量化图像以生成主观质量分数包括使用神经图像评估(NIMA)。
12.根据任一前述权利要求所述的方法,其中,编码器是可差分的端到端,并且其中,更新编码器包括通过编码器执行反向传播。
13.根据权利要求12所述的方法,其中,将第一图像与第一量化图像进行比较包括执行作为可差分的端到端的比较过程,并且其中,更新编码器包括通过比较过程执行反向传播。
14.一种用于预测图像的颜色调色板的方法,该方法包括:
获得图像;
将图像应用于编码器,以针对该图像生成至少一个调色板,其中,已经根据权利要求1-13中任一项所述的方法训练过所述编码器。
15.根据权利要求14所述的方法,其中,图像是RGB图像文件。
16.根据权利要求14或15所述的方法,还包括通过以下将图像转换成色深减少的图像:
对于图像的每个像素,从所生成的调色板中选择颜色来表示色深减少的图像中的对应像素;以及
与相应的像素相关联地存储选择的每个颜色。
17.一种其上存储有程序指令的计算机可读介质,所述程序指令在由计算设备执行时,使得计算设备执行权利要求1-16中任一项的方法。
18.一种系统,包括:
控制器;和
其上存储有程序指令的非暂时性计算机可读介质,该程序指令在由控制器执行时,使得控制器执行权利要求1-16中任一项的方法。
CN202080092425.3A 2020-01-08 2020-01-08 深度调色板预测 Pending CN114930824A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2020/012795 WO2021141580A1 (en) 2020-01-08 2020-01-08 Deep palette prediction

Publications (1)

Publication Number Publication Date
CN114930824A true CN114930824A (zh) 2022-08-19

Family

ID=69500841

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080092425.3A Pending CN114930824A (zh) 2020-01-08 2020-01-08 深度调色板预测

Country Status (4)

Country Link
US (1) US20230053317A1 (zh)
EP (1) EP4074037A1 (zh)
CN (1) CN114930824A (zh)
WO (1) WO2021141580A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116593408A (zh) * 2023-07-19 2023-08-15 四川亿欣新材料有限公司 一种重质碳酸钙粉体色度检测方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11790564B2 (en) * 2020-03-30 2023-10-17 Google Llc Encoders for improved image dithering
US11893709B2 (en) * 2021-12-09 2024-02-06 Robert Bosch Gmbh Image quantization using machine learning

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7345691B2 (en) * 2004-12-02 2008-03-18 Winbond Electronics Corp. Method of image processing and electronic device utilizing the same

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116593408A (zh) * 2023-07-19 2023-08-15 四川亿欣新材料有限公司 一种重质碳酸钙粉体色度检测方法
CN116593408B (zh) * 2023-07-19 2023-10-17 四川亿欣新材料有限公司 一种重质碳酸钙粉体色度检测方法

Also Published As

Publication number Publication date
WO2021141580A1 (en) 2021-07-15
US20230053317A1 (en) 2023-02-16
EP4074037A1 (en) 2022-10-19

Similar Documents

Publication Publication Date Title
US11218695B2 (en) Method and device for encoding or decoding image
CN110363716B (zh) 一种基于条件生成对抗网络复合降质图像高质量重建方法
US10579908B2 (en) Machine-learning based technique for fast image enhancement
CN114930824A (zh) 深度调色板预测
CN110717868B (zh) 视频高动态范围反色调映射模型构建、映射方法及装置
US20230069953A1 (en) Learned downsampling based cnn filter for image and video coding using learned downsampling feature
JP2023506911A (ja) ビデオデータの符号化方式
US20230076920A1 (en) Global skip connection based convolutional neural network (cnn) filter for image and video coding
US20240005563A1 (en) Encoders for Improved Image Dithering
CN116547969A (zh) 基于机器学习的图像译码中色度子采样格式的处理方法
TWI807491B (zh) 基於機器學習的圖像編解碼中的色度子採樣格式處理方法
CN113628116B (zh) 图像处理网络的训练方法、装置、计算机设备和存储介质
Qi et al. A novel haze image steganography method via cover-source switching
CN115567712A (zh) 基于人眼恰可察觉失真的屏幕内容视频编码感知码率控制方法及装置
CN115375909A (zh) 一种图像处理方法及装置
EP4167571A1 (en) Codec rate distortion compensating downsampler
TWI834087B (zh) 用於從位元流重建圖像及用於將圖像編碼到位元流中的方法及裝置、電腦程式產品
CN116347070A (zh) 一种图像处理方法、装置及设备、存储介质、产品
US20230360383A1 (en) Image processing apparatus and operation method thereof
CN117390206A (zh) 生鲜图像存储方法、装置、电子设备和计算机可读介质
Cheng Artistic and semantic progressive image coding
WO2022232547A1 (en) Learning-based point cloud compression via tearing transform
Gharbi Learning efficient image processing pipelines
CN115769226A (zh) 机器学习离散化级别缩减
CN117593230A (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