CN111194458B - 用于处理图像的图像信号处理器 - Google Patents
用于处理图像的图像信号处理器 Download PDFInfo
- Publication number
- CN111194458B CN111194458B CN201880065522.6A CN201880065522A CN111194458B CN 111194458 B CN111194458 B CN 111194458B CN 201880065522 A CN201880065522 A CN 201880065522A CN 111194458 B CN111194458 B CN 111194458B
- Authority
- CN
- China
- Prior art keywords
- image data
- data
- pixels
- resolution
- original image
- 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
Links
- 238000012545 processing Methods 0.000 title claims abstract description 30
- 238000013528 artificial neural network Methods 0.000 claims abstract description 112
- 238000000034 method Methods 0.000 claims abstract description 75
- 238000005192 partition Methods 0.000 claims description 17
- 230000002708 enhancing effect Effects 0.000 claims description 4
- 230000011218 segmentation Effects 0.000 abstract description 3
- 238000013527 convolutional neural network Methods 0.000 description 53
- 230000008569 process Effects 0.000 description 40
- 230000006870 function Effects 0.000 description 35
- 238000010801 machine learning Methods 0.000 description 34
- 238000010586 diagram Methods 0.000 description 33
- 102100033620 Calponin-1 Human genes 0.000 description 23
- 101000945318 Homo sapiens Calponin-1 Proteins 0.000 description 23
- 238000003491 array Methods 0.000 description 23
- 238000012549 training Methods 0.000 description 17
- 102100033591 Calponin-2 Human genes 0.000 description 14
- 101000945403 Homo sapiens Calponin-2 Proteins 0.000 description 14
- 102100033592 Calponin-3 Human genes 0.000 description 11
- 101000945410 Homo sapiens Calponin-3 Proteins 0.000 description 11
- 230000009467 reduction Effects 0.000 description 11
- 238000013507 mapping Methods 0.000 description 10
- 238000011176 pooling Methods 0.000 description 7
- 230000004913 activation Effects 0.000 description 6
- 238000001994 activation Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 6
- 239000003086 colorant Substances 0.000 description 6
- 241000023320 Luma <angiosperm> Species 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 5
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 5
- 238000010606 normalization Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 238000013500 data storage Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 230000000903 blocking effect Effects 0.000 description 2
- 238000003709 image segmentation Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 230000002441 reversible effect Effects 0.000 description 2
- 230000001502 supplementing effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000003416 augmentation Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013501 data transformation Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 239000005022 packaging material Substances 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000000153 supplemental effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000002834 transmittance Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformation in the plane of the image
- G06T3/40—Scaling the whole image or part thereof
- G06T3/4046—Scaling the whole image or part thereof using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformation in the plane of the image
- G06T3/40—Scaling the whole image or part thereof
- G06T3/4015—Demosaicing, e.g. colour filter array [CFA], Bayer pattern
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/048—Activation functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/28—Indexing scheme for image data processing or generation, in general involving image processing hardware
Abstract
提供用于使用一或多个神经网络处理图像数据的技术和系统。举例来说,可以获得原始图像数据的分块。所述分块可包含原始图像数据的帧的像素的子集,并且所述帧可以是使用一或多个图像传感器俘获的。所述原始图像数据的分块包含用于所述像素的子集中的每个像素的单一色彩分量。至少一个神经网络可被应用于所述原始图像数据的分块以确定用于所述像素的子集中的一或多个像素的多个色彩分量值。输出图像数据的分块可以随后基于将所述至少一个神经网络应用于所述原始图像数据的分块而产生。所述输出图像数据的分块包含输出图像数据的帧的像素的子集,并且还包含用于所述输出图像数据的帧的所述像素的子集中的一或多个像素的所述多个色彩分量值。所述至少一个神经网络的应用使得所述输出图像数据的分块包含与所述原始图像数据的分块相比较少的像素。来自所述帧的多个分块可以由所述至少一个神经网络处理以便产生最终输出图像。在一些情况下,来自所述帧的所述分块可以重叠使得所述最终输出图像含有完整图片。
Description
相关申请的交叉参考
本申请主张2017年10月11日递交的第62/571,182号美国临时申请的权益,所述申请在此以全文引用的方式并入本文中并且出于所有目的。
技术领域
本发明大体上涉及图像处理,且更确切地说涉及用于使用图像信号处理器执行图像处理的技术和系统。
发明内容
在一些实例中,描述了用于执行图像处理的技术和系统。传统的图像信号处理器(ISP)具有解决基于图像的问题空间的各种分割的单独的离散块。举例来说,典型的ISP具有离散功能块,所述功能块各自将特定操作应用于原始相机传感器数据以形成最终输出图像。此类功能块可包含用于去马赛克、噪声减少(去噪)、色彩处理、色调映射的块,以及用于许多其它图像处理功能的块。这些功能块中的每一个含有许多手动调谐参数,引起具有大量手动调谐参数(例如,超过10,000)的ISP,所述参数必须根据每个客户的调谐偏好重新调谐。此类手动调谐是非常耗时且昂贵的。
本文中所描述的机器学习ISP使用机器学习系统和方法以将来自由一或多个图像传感器俘获的原始图像数据的映射导出到最终输出图像。在一些实例中,原始图像数据可包含用于每个像素位置的单一色彩或灰度值。举例来说,具有在每个像素位置处的红色、绿色或蓝色滤光器中的一个的拜耳图案彩色滤光器阵列(或其它合适的彩色滤光器阵列)的传感器可用于俘获每像素位置具有单一色彩的原始图像数据。在一些情况下,装置可包含多个图像传感器以俘获由机器学习ISP处理的原始图像数据。最终输出图像可以含有从原始图像数据导出的经处理的图像数据。机器学习ISP可以使用卷积滤光器的神经网络(例如,卷积神经网络(CNN))用于ISP任务。机器学习ISP的神经网络可包含具有高数目的信道的卷积滤光器的若干类似或重复块(例如,大于RGB或YCbCr图像中的信道的数目的数量级)。机器学习ISP充当单个单元,而非具有存在于传统的ISP中的个体功能块。
ISP的神经网络可包含输入层、多个隐蔽层和输出层。输入层包含来自一或多个图像传感器的原始图像数据。隐蔽层可包含可应用于输入数据或可应用于来自先前隐蔽层的输出以产生特征地图的卷积滤光器。隐蔽层的滤光器可包含用于指示滤光器的节点的重要性的权重。在一些情况下,神经网络可以具有一系列的许多隐蔽层,具有确定原始图像输入数据的简单和低层级特性的较早层,以及积累更复杂的且抽象特性的阶层的较晚层。神经网络可以随后基于所确定的高层级特征产生最终输出图像(组成输出层)。
根据至少一个实例,提供使用一或多个神经网络处理图像数据的方法。所述方法包含获得原始图像数据的分块。原始图像数据的分块包含使用一或多个图像传感器俘获的原始图像数据的帧的像素的子集。原始图像数据的分块包含用于像素的子集中的每个像素的单一色彩分量。所述方法进一步包含将至少一个神经网络应用于原始图像数据的分块以确定用于像素的子集中的一或多个像素的多个色彩分量值。所述方法进一步包含基于将至少一个神经网络应用于原始图像数据的分块产生输出图像数据的分块。输出图像数据的分块包含输出图像数据的帧的像素的子集。输出图像数据的分块还包含用于输出图像数据的帧的像素的子集中的一或多个像素的多个色彩分量值。至少一个神经网络的应用使得输出图像数据的分块包含与原始图像数据的分块相比较少的像素。
在另一实例中,用于使用一或多个神经网络处理图像数据的设备被提供为包含经配置以存储视频数据的存储器和处理器。处理器经配置以并且可以获得原始图像数据的分块。原始图像数据的分块包含使用一或多个图像传感器俘获的原始图像数据的帧的像素的子集。原始图像数据的分块包含用于像素的子集中的每个像素的单一色彩分量。处理器进一步经配置以并且可以将至少一个神经网络应用于原始图像数据的分块以确定用于像素的子集中的一或多个像素的多个色彩分量值。处理器进一步经配置以并且可以基于将至少一个神经网络应用于原始图像数据的分块产生输出图像数据的分块。输出图像数据的分块包含输出图像数据的帧的像素的子集。输出图像数据的分块还包含用于输出图像数据的帧的像素的子集中的一或多个像素的多个色彩分量值。至少一个神经网络的应用使得输出图像数据的分块包含与原始图像数据的分块相比较少的像素。
在另一实例中,非暂时性计算机可读媒体被提供为上面存储有指令,所述指令在由一或多个处理器执行时使得所述一或多个处理器:获得原始图像数据的分块,原始图像数据的分块包含使用一或多个图像传感器俘获的原始图像数据的帧的像素的子集,其中原始图像数据的分块包含用于像素的子集中的每个像素的单一色彩分量;将至少一个神经网络应用于原始图像数据的分块以确定用于像素的子集中的一或多个像素的多个色彩分量值;以及基于将至少一个神经网络应用于原始图像数据的分块产生输出图像数据的分块,输出图像数据的分块包含输出图像数据的帧的像素的子集。输出图像数据的分块还包含用于输出图像数据的帧的像素的子集中的一或多个像素的多个色彩分量值。至少一个神经网络的应用使得输出图像数据的分块包含与原始图像数据的分块相比较少的像素。
在另一实例中,提供用于使用一或多个神经网络处理图像数据的设备。所述设备包含用于获得原始图像数据的分块的装置。原始图像数据的分块包含使用一或多个图像传感器俘获的原始图像数据的帧的像素的子集。原始图像数据的分块包含用于像素的子集中的每个像素的单一色彩分量。所述设备进一步包含用于将至少一个神经网络应用于原始图像数据的分块以确定用于像素的子集中的一或多个像素的多个色彩分量值的装置。所述设备进一步包含用于基于将至少一个神经网络应用于原始图像数据的分块产生输出图像数据的分块的装置。输出图像数据的分块包含输出图像数据的帧的像素的子集。输出图像数据的分块还包含用于输出图像数据的帧的像素的子集中的一或多个像素的多个色彩分量值。至少一个神经网络的应用使得输出图像数据的分块包含与原始图像数据的分块相比较少的像素。
在一些方面中,原始图像数据的帧包含来自通过彩色滤光器阵列滤光的一或多个图像传感器的图像数据。在一些实例中,彩色滤光器阵列包含拜耳彩色滤光器阵列。
在一些方面中,将至少一个神经网络应用于原始图像数据的分块包含将一或多个跨步卷积滤光器应用于原始图像数据的分块以产生表示原始图像数据的分块的降低分辨率数据。举例来说,跨步卷积滤光器可包含具有大于一的跨距的卷积滤光器。一或多个跨步卷积滤光器中的每个跨步卷积滤光器包含权重的阵列。
在一些方面中,一或多个跨步卷积滤光器中的每个跨步卷积滤光器包含多个信道。多个信道中的每个信道包含权重的不同的阵列。
在一些方面中,一或多个跨步卷积滤光器包含多个跨步卷积滤光器。在一些实例中,多个跨步卷积滤光器包含:第一跨步卷积滤光器,其具有权重的第一阵列,其中将第一跨步卷积滤光器应用于原始图像数据的分块产生表示原始图像数据的分块的加权数据的第一集合,加权数据的第一集合具有第一分辨率;以及第二跨步卷积滤光器,其具有权重的第二阵列,其中第二跨步卷积滤光器的应用产生表示原始图像数据的分块的加权数据的第二集合,加权数据的第二集合具有第二分辨率,所述第二分辨率是与第一分辨率相比较低的分辨率。
在一些方面中,上文所描述的方法、设备和计算机可读媒体进一步包括:将具有第二分辨率的加权数据的第二集合按比例增大到第一分辨率;以及产生表示原始图像数据的分块的组合的加权数据,方法是组合加权数据的经按比例增大的第二集合与具有第一分辨率的加权数据的第一集合。
在一些方面中,上文所描述的方法、设备和计算机可读媒体进一步包括将一或多个卷积滤光器应用于组合的加权数据以产生表示原始图像数据的分块的特征数据。一或多个卷积滤光器中的每个卷积滤光器包含权重的阵列。
在一些方面中,上文所描述的方法、设备和计算机可读媒体进一步包括:将特征数据按比例增大到全分辨率;以及产生表示原始图像数据的分块的组合的特征数据,方法是组合经按比例增大的特征数据与全分辨率特征数据,全分辨率特征数据是通过将卷积滤光器应用于原始图像数据的分块的全分辨率版本产生的。
在一些方面中,产生输出图像数据的分块包含将最终卷积滤光器应用于特征数据或组合的特征数据以产生输出图像数据。
在一些方面中,上文所描述的方法、设备和计算机可读媒体进一步包括获得用于增强原始图像数据的获得的分块的额外数据,所述额外数据包含色调数据、径向距离数据或自动白平衡(AWB)增益数据中的至少一或多个。
在一些方面中,每像素多个色彩分量包含每像素红色色彩分量、每像素绿色色彩分量,以及每像素蓝色色彩分量。
在一些方面中,每像素多个色彩分量包含每像素明度色彩分量、每像素第一色度色彩分量,以及每像素第二色度色彩分量。
在一些方面中,至少一个神经网络联合地执行多个图像信号处理器(ISP)功能。
在一些方面中,至少一个神经网络包含至少一个卷积神经网络(CNN)。
在一些方面中,至少一个神经网络包含多个层。在一些方面中,多个层与原始图像数据的分块的高维表示连接。
本发明内容并非意图识别所主张的标的物的关键特征或必要特征,也并非意图单独用于确定所主张的标的物的范围。标的物应参考此专利的整个说明书的适当部分、任何或所有图式以及每个权利要求来理解。
在参考以下说明书、权利要求书以及附图之后,前述内容连同其它特征和实施例将变得更显而易见。
附图说明
本专利或申请文件含有至少一幅彩色图。具有彩色图式的此专利或专利申请公开的复本将在请求和支付必要费用之后由专利局提供。
下文参考以下图式详细描述本发明的说明性实施例:
图1是根据一些实例说明图像信号处理器的实例的框图;
图2是根据一些实例说明机器学习图像信号处理器的实例的框图;
图3是根据一些实例说明神经网络的实例的框图;
图4是根据一些实例说明训练机器学习图像信号处理器的神经网络系统的实例的图式;
图5是根据一些实例说明卷积神经网络的实例的框图;
图6是根据一些实例说明机器学习图像信号处理器的卷积神经网络的实例的图式;
图7是根据一些实例说明到机器学习图像信号处理器的神经网络的多维输入的实例的图式;
图8是根据一些实例说明神经网络的多信道卷积滤光器的实例的图式;
图9是根据一些实例说明原始图像分块的实例的图式;
图10是根据一些实例说明在机器学习图像信号处理器的神经网络中的隐蔽层的跨步卷积神经网络的2x2滤光器的实例的图式;
图11A到图11E是根据一些实例说明将跨步卷积神经网络的2x2滤光器应用于图像分块的实例的图式;
图12A是根据一些实例说明来自机器学习图像信号处理器的经处理的图像输出的实例的图式;
图12B是根据一些实例说明来自机器学习图像信号处理器的经处理的图像输出的另一实例的图式;
图12C是根据一些实例说明来自机器学习图像信号处理器的经处理的图像输出的另一实例的图式;以及
图13是根据一些实施例说明用于使用一或多个神经网络来处理图像数据的过程的实例的流程图。
具体实施方式
下文提供了本发明的某些方面和实施例。如对于所属领域的技术人员来说将显而易见的是,这些方面和实施例中的一些可以独立地应用并且它们中的一些可以组合应用。在以下描述中,出于解释的目的,阐述特定细节以便提供对本发明的实施例的透彻理解。然而,将显而易见的是,可在没有这些特定细节的情况下实践各种实施例。图式和描述并不意图是限制性的。
以下描述仅提供示例性实施例,且并不意图限制本发明的范围、适用性或配置。实际上,示例性实施例的以下描述将为所属领域的技术人员提供用于实施示例性实施例的启发性描述。应理解,在不脱离如在所附权利要求书中所阐述的本发明的精神和范围的情况下,可对元件的功能和布置进行各种改变。
在以下描述中给出特定细节以提供对实施例的透彻理解。然而,所属领域的技术人员将理解,所述实施例可以在没有这些特定细节的情况下加以实践。举例来说,电路、系统、网络、过程和其它组件可以框图形式示出为组件以免以不必要的细节混淆实施例。在其它例子中,可以在没有不必要的细节的情况下示出众所周知的电路、过程、算法、结构和技术以免混淆实施例。
并且,应注意,个体实施例可被描述为经描绘为流程图、作业图、数据流图、结构图或框图的过程。虽然流程图可将操作描述为依序过程,但是许多操作可并行或同时执行。另外,可重新布置操作的次序。过程在其操作完成时终止,但是可具有不包含在图中的额外步骤。过程可以对应于方法、函数、步骤、子例程、子程序等。当过程对应于函数时,其终止对应于所述函数返回到调用函数或主函数。
术语“计算机可读媒体”包含但不限于,便携式或非便携式存储装置、光学存储装置,以及能够存储、含有或携带指令和/或数据的各种其它媒体。计算机可读媒体可包含非暂时性媒体,在非暂时性媒体中可存储数据,且非暂时性媒体并不包含无线地或在有线连接上传播的载波和/或暂时性电子信号。非暂时性媒体的实例可包含但不限于,磁盘或磁带、光学存储媒体,例如光盘(CD)或数字通用光盘(DVD)、快闪存储器、存储器或存储器装置。计算机可读媒体可具有存储在其上的可表示步骤、函数、子程序、程序、例程、子例程、模块、软件包、类别的代码和/或机器可执行指令,或指令、数据结构或程序语句的任何组合。代码段可以通过传递和/或接收信息、数据、自变量、参数或存储器内容而耦合到另一代码段或硬件电路。信息、自变量、参数、数据等可经由包含存储器共享、消息传递、令牌传递、网络发射或类似者的任何合适的装置传递、转发或发射。
此外,实施例可通过硬件、软件、固件、中间件、微码、硬件描述语言或其任何组合来实施。当以软件、固件、中间件或微码实施时,用于执行必要任务的程序代码或代码段(例如,计算机程序产品)可存储在计算机可读或机器可读媒体中。处理器可执行必要任务。
需要图像信号处理来处理由图像传感器俘获的原始图像数据以用于产生可用于各种目的的输出图像,例如用于渲染和显示、视频译码、计算机视觉、存储,以及其它用途。典型的图像信号处理器(ISP)获得原始图像数据,处理原始图像数据,并且产生经处理的输出图像。
图1是说明标准ISP 108的实例的图式。如所示出,图像传感器102俘获原始图像数据。图像传感器102的光电二极管俘获不同的灰度的(或单色)阴影。彩色滤光器可被应用于图像传感器以提供经彩色滤光的原始输入数据104(例如,具有拜耳图案)。ISP 108具有离散功能块,所述功能块各自将特定操作应用于原始相机传感器数据以形成最终输出图像。举例来说,功能块可包含专用于去马赛克、噪声减少(去噪)、色彩处理、色调映射的块,以及许多其它块。举例来说,ISP 108的去马赛克功能块可以有助于使用经彩色滤光的原始输入数据104产生输出彩色图像109,方法是使用邻近像素插入像素的色彩和亮度。此去马赛克过程可由ISP 108使用以评估给定像素的色彩和亮度数据,并且以比较那些值与来自相邻像素的数据。ISP 108可以随后使用去马赛克算法以产生用于像素的适当的色彩和亮度值。在提供最终输出彩色图像109之前ISP 108可以执行各种其它图像处理功能,例如噪声减少、锐化、色调映射和/或色彩空间之间的转换、自动聚焦、伽玛、曝光、白平衡,以及许多其它可能的图像处理功能。
ISP 108的功能块需要多种调谐参数106,所述调谐参数是手动调谐的以满足某些规范。在一些情况下,需要调谐和控制超过10,000个参数以用于给定ISP。举例来说,为了根据某些规范优化输出彩色图像109,用于每个功能块的算法必须通过调谐算法的调谐参数106进行优化。新功能块也必须连续地添加以处理空间中产生的不同的情况。大量的手动调谐的参数引起对ISP的非常耗时且昂贵的支持要求。
本文中描述了使用机器学习系统和方法来以联合方式执行多个ISP功能的机器学习ISP。图2是说明机器学习ISP 200的实例的图式。机器学习ISP 200可包含输入接口201,所述输入接口可以从图像传感器202接收原始图像数据。在一些情况下,图像传感器202可包含可以俘获原始图像数据的帧204的光电二极管的阵列。每个光电二极管可以表示像素位置并且可以产生用于所述像素位置的像素值。来自光电二极管的原始图像数据可包含单个色彩或灰度值以用于帧204中的每个像素位置。举例来说,彩色滤光器阵列可以与图像传感器202集成或可与图像传感器202(例如,放置在光电二极管上方)结合使用以将单色信息转换成色彩值。
彩色滤光器阵列的一个说明性实例包含拜耳图案彩色滤光器阵列(或拜耳彩色滤光器阵列),允许图像传感器202俘获具有拜耳图案的像素的帧,所述拜耳图案具有在每个像素位置处的红色、绿色或蓝色滤光器中的一个。举例来说,来自原始图像数据的帧204的原始图像分块206具有基于与图像传感器202一起使用的拜耳彩色滤光器阵列的拜耳图案。拜耳图案包含红色滤光器、蓝色滤光器和绿色滤光器,如在图2中所示的原始图像分块206的图案中所示。拜耳彩色滤光器通过滤出入射光操作。举例来说,具有图案的绿色部分的光电二极管传递通过绿色色彩信息(一半的像素),具有图案的红色部分的光电二极管传递通过红色色彩信息(四分之一的像素),并且具有图案的蓝色部分的光电二极管传递通过蓝色色彩信息(四分之一的像素)。
在一些情况下,装置可包含多个图像传感器(其可以类似于图像传感器202),在此情况下本文中所描述的机器学习ISP操作可被应用于通过多个图像传感器获得的原始图像数据。举例来说,具有多个相机的装置可以使用多个相机来俘获图像数据,并且机器学习ISP 200可以将ISP操作应用于来自多个相机的原始图像数据。在一个说明性实例中,双相机移动电话、平板计算机或其它装置可用于俘获具有较宽角度(例如,具有较宽视野(FOV))的较大图像,俘获更多量的光(引起更多清晰度、透光度,以及其它优势),以产生360度(例如,虚拟现实)视频,和/或与通过单相机装置实现的相比执行其它增强型功能。
原始图像分块206被提供到输入接口201并且由所述输入接口接收以用于由机器学习ISP 200处理。机器学习ISP 200可以使用神经网络系统203以用于ISP任务。举例来说,可以训练神经网络系统203的神经网络以直接将来自由图像传感器俘获的原始图像训练数据的映射导出到最终输出图像。举例来说,可以使用多种原始数据输入(例如,具有经彩色滤光的图案)的实例并且还使用所期望的对应的输出图像的实例训练神经网络。使用训练数据,神经网络系统203可以学习来自实现输出图像所需的原始输入的映射,之后ISP 200可以产生类似于由传统的ISP产生的那些输出图像的输出图像。
ISP 200的神经网络可包含输入层、多个隐蔽层和输出层。输入层包含由图像传感器202获得的原始图像数据(例如,原始图像分块206或全帧的原始图像数据)。隐蔽层可包含可被应用于原始图像数据和/或可被应用于来自先前隐蔽层的输出的滤光器。隐蔽层的滤光器中的每一个可包含用于指示滤光器的节点的重要性的权重。在一个说明性实例中,滤光器可包含3x3卷积滤光器,所述卷积滤光器围绕输入阵列卷积,其中3x3滤光器中的每个项具有唯一权重值。在应用于输入阵列的3x3滤光器的每个卷积迭代(或跨距)处,可以产生单个加权输出特征值。神经网络可以具有一系列的许多隐蔽层,其中较早层确定输入的低层级特性,并且较晚层积累更复杂的特性的层次。ISP 200的神经网络的隐蔽层与数据的高维表示连接。举例来说,所述层可包含具有高数目的信道(维度)的卷积的若干重复块。在一些情况下,信道的数目可以是大于RGB或YCbCr图像中的信道的数目的数量级。下文提供的说明性实例包含具有每一者64个信道的重复卷积,从而提供产生优质图像细节的非线性的和阶层的网络结构。举例来说,如本文中更详细的描述,n数目的信道(例如,64个信道)是指具有在每个像素位置处的数据的n维(例如,64维)表示。在概念上,n数目的信道表示在像素位置处的“n个特征”(例如,64个特征)。
神经网络系统203以联合方式实现各种多个ISP功能。通过神经网络系统203应用的神经网络的特定参数不具有在传统的ISP中的明确模拟,并且,相反地,传统的ISP系统的特定功能块不具有在机器学习ISP中的明确的对应性。举例来说,机器学习ISP将各信号处理功能作为单个单元来执行,而非具有典型ISP可能含有以用于执行各种功能的个体功能块。下文描述了由神经网络系统203应用的神经网络的进一步的细节。
在一些实例中,机器学习ISP 200还可包含可选的预处理引擎207以扩增输入数据。此类额外的输入数据(或扩增数据)可包含,例如,色调数据、径向距离数据、自动白平衡(AWB)增益数据、其组合,或可以扩增输入数据的像素的任何其它额外数据。通过补充原始输入像素,输入变为用于原始图像数据的每个像素位置的值的多维集合。
基于所确定的高层级特征,神经网络系统203可以基于原始图像分块206产生RGB输出208。RGB输出208包含每像素的红色色彩分量、绿色色彩分量和蓝色色彩分量。在此应用中RGB色彩空间被用作实例。所属领域的一般技术人员将了解也可以使用其它色彩空间,例如明度和色度(YCbCr或YUV)色彩分量,或其它合适的色彩分量。RGB输出208可以从机器学习ISP 200的输出接口205输出并且用于在最终输出图像209(组成输出层)中产生图像分块。在一些情况下,RGB输出208中的像素阵列可包含与输入原始图像分块206的维度相比更小的维度。在一个说明性实例中,原始图像分块206可以含有原始图像像素的128x128阵列(例如,在拜耳图案中),而神经网络系统203的重复卷积滤光器的应用使得RGB输出208包含8x8像素阵列。RGB输出208的输出大小小于原始图像分块206是卷积滤光器的应用的副作用并且设计神经网络系统203以不填补通过卷积滤光器中的每一个处理的数据。通过具有多个卷积层,输出大小降低的越来越多。在此类情况下,来自输入原始图像数据的帧204的分块可以重叠使得最终输出图像209含有完整图片。所得最终输出图像209含有通过神经网络系统203从原始输入数据导出的经处理的图像数据。最终输出图像209可以经渲染以供显示,用于压缩(或译码)、存储,或用于任何其它基于图像的目的。
图3是可以由机器学习ISP 200的神经网络系统203使用的神经网络300的说明性实例。输入层310包含输入数据。输入层310的输入数据可包含表示原始图像输入帧的原始图像像素的数据。神经网络300包含多个隐蔽层312a、312b到312n。隐蔽层312a、312b到312n包含“n”数目的隐蔽层,其中“n”是大于或等于一的整数。可以使隐蔽层的数目包含给定应用所需的尽可能多的层。神经网络300进一步包含提供由通过隐蔽层312a、312b到312n执行的处理引起的输出的输出层314。在一个说明性实例中,输出层314可以提供可用于输出图像的最终经处理的输出像素阵列(例如,作为输出图像中的分块或作为完整输出图像)。
神经网络300是互连的滤光器的多层神经网络。每个滤光器可以经训练以学习输入数据的特征表示。与滤光器相关联的信息在不同的层之中共享并且每一层保留信息作为经处理的信息。在一些情况下,神经网络300可包含前馈网络,在此情况下不存在其中网络的输出被反馈到其自身中的反馈连接。在一些情况下,网络300可包含递归神经网络,其可以具有允许信息当在输入中读取时跨越节点携带的循环。
在一些情况下,信息可以通过各种层之间的节点到节点互连在层之间交换。在一些情况下,网络可包含卷积神经网络,其可能不将一个层中的每个节点链接到下一个层中的每个其它节点。在其中信息在层之间交换的网络中,输入层310的节点可以激活第一隐蔽层312a中的节点的集合。举例来说,如所示出,输入层310的输入节点中的每一个可以连接到第一隐蔽层312a的节点中的每一个。隐蔽层312的节点可以变换每个输入节点的信息,方法是将激活函数(例如,滤光器)应用于这些信息。从变换导出的信息可以随后被传递到下一个隐蔽层312b的节点并且可以激活所述下一个隐蔽层的节点,其可以执行其自身指定的函数。实例函数包含卷积函数、按比例缩小、按比例增大、数据变换,和/或任何其它合适的函数。隐蔽层312b的输出可以随后激活下一个隐蔽层的节点等等。最后一个隐蔽层312n的输出可以激活输出层314的一或多个节点,其提供经处理的输出图像。在一些情况下,虽然神经网络300中的节点(例如,节点316)示出为具有多个输出线,但是节点具有单个输出并且示出为来自节点的输出的所有线表示相同输出值。
在一些情况下,每个节点或节点之间的互连可以具有作为从神经网络300的训练导出的参数的集合的权重。举例来说,节点之间的互连可以表示关于互连节点习得的一条信息。互连可以具有可以(例如,基于训练数据集)调谐的可调谐的数值权重,允许神经网络300适应于输入并且能够随着越来越多的数据得到处理而学习。
神经网络300是预先训练的以使用不同的隐蔽层312a、312b到312n处理来自输入层310中的数据的特征以便提供通过输出层314的输出。参考图4,通过机器学习ISP的神经网络系统403实施的神经网络(例如,神经网络300)可以是预先训练的以处理原始图像数据输入并且输出经处理的输出图像。训练数据包含原始图像数据输入406和对应于原始图像数据输入406的参考输出图像411。举例来说,来自参考输出图像411的输出图像可包含先前使用原始图像数据输入通过标准ISP(非基于机器学习的)产生的最终输出图像。在一些情况下,参考输出图像411可包含使用神经网络系统403处理的图像。原始图像数据输入406和参考输出图像411可以输入到神经网络系统403中,并且神经网络(例如,神经网络300)可以确定从原始图像数据的每个集合(例如,经彩色滤光的原始图像数据的每个分块,经彩色滤光的原始图像数据的每个帧,或类似者)映射到每个对应的最终输出图像,方法是调谐各种隐蔽层卷积滤光器的权重。
在一些情况下,神经网络300可以使用被称作反向传播的训练过程调节节点的权重。反向传播可包含正向通过、损失函数、反向通过和权重更新。正向通过、损失函数、反向通过和参数更新是针对一个训练迭代执行的。所述过程可以针对用于训练图像的每个集合的某一数目的迭代重复直至网络300被训练的足够好使得层的权重得到精确地调谐。
正向通过可包含原始图像数据的帧或分块以及基于原始图像数据产生的对应的输出图像或输出分块通过网络300。隐蔽层的各种滤光器的权重在训练神经网络300之前可以是最初随机的。举例来说,原始数据输入图像可包含表示图像的经彩色滤光的原始图像像素的数目的多维阵列。在一个实例中,阵列可包含具有像素位置的128行和128列以及每像素位置11个输入值的数目的128x128x11阵列。下文相对于图7更详细地描述了此实例。
对于网络300的第一训练迭代,输出可包含由于权重是在初始化处随机地选择的而并不给予任何特定特征或节点优先权的值。举例来说,如果输出是具有每像素位置多种色彩分量的阵列,那么输出图像可描绘输入的不精确的色彩表示。通过初始权重,网络300不能够确定低层级特征并且因此无法作出可能是什么色彩值的精确确定。损失函数可用于分析输出中的错误。可使用任何合适的损失函数定义。损失函数的一个实例包含均方差(MSE)。MSE被定义为其计算平方差的均值或平均值(实际答案减去预测的(输出)答案,平方)。项n是总和中的值的数目。损失可以被设置成等于E总共的值。
损失(或错误)对于第一训练数据(原始图像数据和对应的输出图像)将是高的,这是因为实际值将极大地不同于经预测的输出。训练的目标是最小化损失的量,使得经预测的输出与训练标记相同。神经网络300可以通过确定哪些输入(权重)对网络的损失贡献最多而执行反向通过,并且可以调节权重使得损失减小并且最终最小化。
在一些情况下,可以计算相对于权重的损失的导数(或其它合适的函数)(表示为dL/dW,其中W是在特定层处的权重)以确定对网络的损失贡献最多的权重。在计算导数之后,可通过更新滤光器的所有权重来执行权重更新。举例来说,可以更新权重使得它们在梯度的相反的方向上改变。权重更新可以表示为其中w表示权重,wi表示初始权重,并且η表示学习速率。学习速率可以被设置成任何合适的值,其中高学习速率包含较大权重更新并且较低值指示较小权重更新。
由机器学习ISP使用的神经网络(例如,神经网络300)可包含卷积神经网络(CNN)。图5是说明CNN 500的高层级图式的图式。输入包含原始图像数据510,其可包含原始图像数据的帧的分块或原始图像数据的全帧。CNN的隐蔽层包含多信道卷积层512a和激活单元(例如,非线性的层、指数线性单元(ELU),或其它合适的函数)。举例来说,原始图像数据可以通过多信道卷积隐蔽层的系列和每卷积层的激活单元以在输出层处获得输出图像514。
CNN 500的第一层包含卷积层512a。卷积层512a分析原始图像数据510。卷积层512a的每个节点连接到被称作感受野的输入图像的节点(像素)的区。卷积层512a可以被视为一或多个滤光器(每个滤光器对应于不同的特征地图),其中滤光器的每个卷积迭代是卷积层512a的节点或神经元。举例来说,滤光器在每个卷积迭代处覆盖的输入图像的区将是用于滤光器的感受野。在一个说明性实例中,如果输入图像包含28×28阵列,并且每个滤光器(以及对应的感受野)是5×5阵列,那么在卷积层512a中将存在24×24节点。节点与用于所述节点的感受野之间的每个连接学习权重并且,在一些情况下,整体偏置使得每个节点学习以分析在输入图像中的其特定本地感受野。卷积层512a的每个节点将具有相同的权重和偏置(被称作共享权重和共享偏置)。举例来说,滤光器具有权重(数目)的阵列和被称作信道的深度。下文提供的实例包含64信道的滤光器深度。
卷积层512a的卷积本质是由于应用于其对应的感受野的卷积层的每个节点。举例来说,卷积层512a的滤光器可以在输入图像阵列的左上角中开始并且可以围绕输入图像卷积。如上文所指出,滤光器的每个卷积迭代可以被视作卷积层512a的节点。在每个卷积迭代处,滤光器的值乘以图像的对应的数目的原始像素值(例如,5x5滤光器阵列乘以在输入图像阵列的左上角处的输入像素值的5x5阵列)。来自每个卷积迭代的乘法可以求和在一起(或以其它方式组合)以获得用于所述迭代或节点的总和。根据卷积层512a中的下一个节点的感受野,过程在输入图像中的下一个位置处继续。举例来说,滤光器可以跨距量移动到下一个感受野。跨距量可以被设置成1、8或其它合适的量,并且可以是对于每个隐蔽层不同的。举例来说,如果跨距量被设置成1,那么滤光器将在每个卷积迭代处以1像素向右移动。在输入体积的每个唯一位置处处理滤光器产生表示用于所述位置的滤光器结果的数目,引起针对卷积隐蔽层512a的每个节点确定总和值。
从输入层到卷积层512a(或从一个卷积层到下一个卷积层)映射被称作特征地图(或如下文更详细地描述的信道)。特征地图包含用于表示在输入体积的每个位置处的滤光器结果的每个节点的值。举例来说,特征地图的每个节点可包含加权的特征数据值。特征地图可包含阵列,所述阵列包含由输入体积上的滤光器的每个迭代引起的各种总和值。举例来说,如果5x5滤光器被应用于28x28输入图像的每个像素(1的步长量),那么特征地图将包含24x24阵列。卷积层512a可包含若干特征地图以便识别图像中的多个特征。图5中所示的实例包含三个特征地图。使用三个特征地图(或信道),卷积层512a可以在最终输出图像514的每个像素位置处提供数据的三维表示。
在一些实例中,激活单元512b可以在每个卷积层512a之后应用。激活单元512b可用于将非线性引入到已经计算线性操作的系统。非线性层的一个说明性实例是修正线性单元(ReLU)层。另一实例是ELU。ReLU层可以将函数f(x)=max(0,x)应用于输入体积中的所有的值,其改变所有负激活到0。ReLU可以因此增大网络500的非线性性质而不影响卷积层512a的感受野。
图6是说明机器学习ISP的卷积神经网络600的较详细实例的图式。到网络600的输入是来自原始图像数据的帧的原始图像分块621(例如,具有拜耳图案),并且输出包含输出RGB分块630(或具有其它色彩分量表示的分块,例如YUV)。在一个说明性实例中,网络需要128x128像素原始图像分块作为输入并且产生8x8x3RGB分块作为最终输出。基于通过网络600应用的各种卷积滤光器的卷积本质,来自原始图像分块621的8x8阵列外部的许多的像素位置被网络600消耗以获得最终8x8输出分块。从输入到输出的数据的此类减少是由于理解相邻信息以处理像素所需的内容的量。具有带所有相邻信息和内容的较大输入原始图像分块621有助于较小输出RGB分块630的处理和产生。
在一些实例中,基于从输入到输出的像素位置的减少,设计128x128原始图像分块使得它们在原始输入图像中重叠。在此类实例中,8x8输出不重叠。举例来说,对于原始图像帧左上角的第一128x128原始图像分块,产生第一8x8RGB输出分块。原始图像帧中的下一个128x128分块将是最后一个128x128分块右侧的8个像素,并且因此将与最后一个128x128像素分块重叠。下一个128x128分块将由网络600处理以产生第二8x8RGB输出分块。第二8x8RGB分块将被放置成紧靠着完整最终输出图像中的第一8x8RGB输出分块(使用先前128x128原始图像分块产生)。可以执行此类过程直至产生组成完整输出图像的8x8分块。
额外输入622也可以连同原始图像分块621一起提供。举例来说,额外输入622可以通过预处理引擎207提供到神经网络系统203。额外输入622可包含可以扩增通过原始图像分块621提供的色彩信息的任何合适的补充数据,例如色调数据、径向距离数据、自动白平衡(AWB)增益数据、其组合,或可以扩增输入数据的像素的任何其它额外的数据。通过补充原始输入像素,输入变为用于原始图像数据的每个像素位置的值的多维集合。
图7是说明用于原始图像分块731的输入的多维集合的实例的图式。图7中所示的实例包含128x128x11维度输入。举例来说,存在提供用于原始图像分块731中的每个像素位置的11个总输入(维度)。11个输入维度包含用于色彩的四个维度,包含用于红色值732a的一个维度、用于绿色值733a和绿色值734a的两个维度,以及用于蓝色值735a的一个维度。由于拜耳图案具有每一行上的一个绿色色彩所以存在两个绿色值733a和734a,并且由于拜耳图案具有每隔一行上的红色和蓝色色彩中的每一个所以仅存在一个红色值732a和一个蓝色值735a。举例来说,如所示出,原始图像分块731的奇数行包含在每隔一个像素处的红色和绿色色彩,并且偶数行包含在每隔一个像素处的绿色和蓝色色彩。在每个色彩维度(红色值732a、绿色值733a、734a以及蓝色值735a)处的像素之间的空白空间示出了来自原始图像分块731的那些色彩的空间布局。举例来说,如果所有的红色值732a、绿色值733a和734a以及蓝色值735a组合在一起,那么结果将是原始图像分块731。
输入进一步包含用于相对径向距离测量736的一个维度,指示距分块或帧的中心的像素的距离。在一些实例中,径向距离是距图片的中心的经归一化的距离。举例来说,在图片的四个转角中的像素可以具有等于1.0的距离,而在图像的中心处的像素可以具有等于0的距离。在此类实例中,所有其它像素可以基于那些像素距中心像素的距离具有在0和1之间的距离。此类径向距离信息可以帮助补充像素数据,这是因为图像传感器的行为可以是在图片的中心相对于图片的转角不同的。举例来说,图片的转角和边缘与在中心中的像素相比可以是更嘈杂的,这是因为存在更多的光下落在图像传感器透镜的转角上,在此情况下更多增益和/或噪声减少可被应用于转角像素。输入还包含用于色彩的平方根的四个维度。举例来说,提供了红色平方根维度732b、两个绿色平方根维度733b和734b,以及蓝色平方根维度735b。使用红色、绿色和蓝色色彩的平方根有助于更好的匹配像素的色调。最后两个维度用于整个分块的增益,包含用于红色自动白平衡(AWB)增益737的一个维度和用于蓝色AWB增益738的一个维度。AWB相对于彼此调节不同的色彩分量(例如R、G和B)的增益以便使得白色对象为白色。额外数据有助于卷积神经网络600理解如何渲染最终输出RGB分块。
返回到图6,并且出于说明性目的使用来自图7的实例,将128x128x11输入数据提供到卷积神经网络600以用于处理。网络600的卷积滤光器将128x128原始图像分块621的输入体积的功能性映射提供到8x8输出RGB分块630。举例来说,网络600操作以将在训练阶段期间调谐的各种卷积滤光器权重以不同方式应用于输入特征以最终驱动8x8输出RGB分块630。卷积滤光器包含跨步CNN1 623、跨步CNN2 624、跨步CNN3 625、CNN 631、CNN 632、CNN633、CNN 626、CNN 627、CNN 628和CNN 629。卷积滤光器提供有助于移除噪声、增强锐化、产生具有精细细节的图像以及其它优势的阶层结构。举例来说,各种卷积滤光器包含卷积的重复块,其中每个卷积滤光器具有高数目的信道。每个卷积滤光器的信道的数目可以是大于RGB或YCbCr图像中的信道的数目的数量级。在一个说明性实例中,CNN1 623到CNN7 629中的每一个可包含64个信道,其中每个信道具有在滤光器阵列的节点中的每一个中的不同的权重值。举例来说,用于给定卷积滤光器(例如,用于CNN7 629)的信道中的每一个可包含相同的阵列维度(例如,3x3滤光器、2x2滤光器或其它合适的维度),但是具有应用于相同的输入的不同的权重。在一个说明性实例中,大小2x2的滤光器可用于它们的层中的跨步CNN1623、跨步CNN2 624和跨步CNN3 625,并且大小3x3的滤光器可用于它们的层中的CNN4 626、CNN5 627、CNN6 628、CNN7 629、CNN8 631、CNN9 632和CNN10 633。
每个卷积滤光器(例如,图7中所示的CNN中的一个)的每个信道具有表示图像的维度或特征的权重。包含用于每个卷积滤光器或CNN的多个信道提供每个像素处的数据的高维度表示(其中每个信道提供额外的维度)。随着原始图像分块621通过网络600的各种卷积滤光器信道,随着数据移动穿过网络权重被应用于变换这些高维度表示,并且最终产生最终输出RGB分块630。在一个说明性实例中,卷积滤光器CNN中的一个的信道可包含信息以计算出在像素位置处的竖直边缘。下一个信道可能包含关于在每个像素位置处的水平边缘的信息。下一个信道可包含信息以计算出对角线边缘。其它信道可包含涉及色彩、噪声、照明、白度和/或图像的任何其它合适的特征的信息。每个信道可以表示像素的维度,并且可以在网络600能够产生的像素处提供信息。在一些情况下,作用于较低分辨率的卷积滤光器(CNN1 623、CNN2 624和CNN3 625),如下文更详细地描述,包含涉及数据的较大按比例缩放表示的信息,例如用于一般区域的较低频率色彩,或其它较高层级特征。其它卷积滤光器(CNN4 626、CNN5 627、CNN6 628和CNN7 629)包含关于数据的较小按比例缩放表示的信息。
相对于图8描述信道的概念。图8是说明包含卷积滤光器802、804和806的重复集合的神经网络的实例结构的图式。卷积滤光器802包含第一CNN(在图8中示出为CNN1),所述第一CNN包含具有等于1的跨距的3x3滤光器的20个信道(没有填充)。在每个信道处,滤光器具有在神经网络的训练期间预先确定的权重的不同的3x3集合。到卷积滤光器802的输入包含图像数据的16x16x3体积。举例来说,输入可包含绿色值的第一16x16分块,红色值的第二16x16分块,以及蓝色值的第三16x16分块。用于每个输出信道(用于20个信道中的每一个)的3x3滤光器被卷积地应用(具有等于1的跨距)于16x16输入阵列中的各种空间位置(感受野)处的输入上,并且还跨越用于每个色彩的整个输入深度。举例来说,用于第一信道的3x3阵列被卷积地应用于第一输入深度(绿色值的16x16阵列)、第二输入深度(红色值的16x16阵列),并且随后第三输入深度(蓝色值的16x16阵列)上,引起用于第一输出信道的27个参数。3x3滤光器的此类卷积应用总共对输入体积应用20次,一次用于输出信道中的每一个。将20个3x3滤光器应用于输入体积引起在此集合中得到确定的540个参数(3x3x3x20)以产生通过卷积滤光器804被用作输入的14x14x20输出体积。举例来说,输出的每个信道通过将3x3滤光器应用于输入体积的每个深度(例如,红色、绿色和蓝色深度)来计算。因此第一信道输出需要3x3x3乘法和参数。对此结果求和以形成第一信道输出。滤光器的单独的集合随后用于产生第二信道输出,因此这意味着与参数的不同集合的另一3x3x3乘法。为了完成信道的总数目(20个信道),需要3x3x3x20参数。
由于3x3滤光器的卷积应用,14x14x20体积包含值的14个行和14个列。举例来说,3x3滤光器具有1的跨距,意味着在滤光器阵列到达块的末尾之前滤光器可以仅跨到用于(输入的)16x16阵列中的像素的第一14行和14列的每个像素位置(例如,使得每个像素位置在阵列的左上角中)。结果是用于20个信道中的每一个的14x14阵列的加权值。
卷积滤光器804包含第二CNN(在图8中示出为CNN2),所述第二CNN包含具有填充并且具有1的跨距的5x5滤光器的12个信道。到卷积滤光器804的输入包含从卷积滤光器802输出的14x14x20体积。用于12个信道中的每一个的5x5滤光器被卷积地应用于14x14x20体积。将5x5滤光器的12个信道应用于输入体积引起6000个参数(5x5x20x12)。基于填充的使用,结果是通过卷积滤光器806被用作输入的14x14x12输出体积。
卷积滤光器806包含第三CNN(在图8中示出为CNN3),所述第三CNN包含具有1的跨距的7x7滤光器的3个信道(没有填充)。到卷积滤光器806的输入包含从卷积滤光器804输出的14x14x12体积。用于3个信道中的每一个的7x7滤光器被卷积地应用于14x14x12体积以产生用于输出图像808的色彩值的8x8x3分块。举例来说,8x8x3分块可包含用于红色色彩的8x8像素阵列,用于绿色色彩的8x8像素阵列,以及用于蓝色色彩的8x8像素阵列。将三个7x7滤光器应用于输入体积引起1764个参数(7x7x12x3)。用于此类网络的总参数是8304个参数。
返回到图6,原始图像分块621在全分辨率下。卷积神经网络600的结构使得卷积滤光器在不同的分辨率的原始图像分块621上操作。交错方式可用于组合表示原始图像分块621的原始数据的不同的分辨率的加权数据。阶层架构可以有助于空间处理。噪声减少可以用作说明性实例,在此情况下存在低频率噪声和高频率噪声。为了有效地移除低频率噪声(覆盖大面积的图像的噪声),需要非常大的空间内核。如果存在图像的降低分辨率版本(例如,1/64分辨率、1/16分辨率、1/4分辨率,或类似者),那么较小滤光器可用于降低分辨率以有效地应用非常大的空间内核(例如,在1/64分辨率下的3x3滤光器近似地是(3*8)x(3*8)内核)。使得网络600在较低分辨率下操作因此允许较低频率的有效的处理。此过程可以通过组合来自较低频率/较低分辨率处理的信息与下一个较高分辨率以在下一个频率/分辨率下在数据上工作而重复。举例来说,使用具有不同的分辨率的交错方式,可以组合不同的分辨率的所得加权值,并且,在一些情况下,组合的结果可以随后与表示原始图像分块621的另一分辨率的加权数据组合。这可以迭代直至形成全分辨率(或其它所期望的分辨率)。
跨步卷积滤光器(例如,跨步CNN)可以被设计成产生表示原始图像分块621的数据的降低分辨率加权输出。不同大小的滤光器阵列可用于跨步卷积滤光器,并且跨步卷积滤光器中的每一个包含大于1的跨距值。网络600可以操作的分辨率的实例包含1/64分辨率、1/16分辨率、1/4分辨率、全分辨率,或任何其它合适的分辨率。
图9、图10和图11A到图11E说明跨步CNN的应用。举例来说,图9是说明原始图像分块900的实例的图式。原始图像分块900包含MxN像素阵列,其中M和N是整数值。M的值和N的值可以相等或可以是不同的值。在图9中所示的实例中,M的值等于8,并且N的值等于8,使得原始图像分块900是64原始图像像素的8x8阵列。图像分块900的像素从0到63依序编号。在一些情况下,原始图像分块900的原始图像像素可以呈拜耳图案(未示出)或其它合适的图案。图10是说明机器学习ISP的神经网络中的跨步CNN的x x y卷积滤光器1000实例的图式。在图10中说明的滤光器1000具有2的x值和2的y值,使得滤光器1000是具有权重w0、w1、w2和w3的2x2滤光器。滤光器1000具有2的跨距,意味着滤光器100以卷积方式应用于图9中所示的原始图像分块900,具有2的步长量。
图11A到图11E是说明将2x2滤光器1000应用于原始图像分块900的实例的图式。如图11A中所示,滤光器1000首先被应用于原始图像分块900的最左上方像素。举例来说,滤光器1000的权重w0、w1、w2和w3被应用于原始图像分块900的像素0、1、8和9。如图11B中所示,权重w0乘以像素0的值,权重w1乘以像素1的值,权重w2乘以像素8的值,并且权重w3乘以像素9的值。由乘法引起的值(示出为W0*值(0)、W1*值(1)、W2*值(8)、W3*值(9))可以随后求和在一起(或以其它方式组合)以产生用于滤光器1000的所述节点或迭代的输出A。
用于跨步CNN的滤光过程在原始图像分块900中的下一个位置处继续,方法是以2的跨距量将滤光器1000移动到下一个感受野。因为跨步CNN的跨距量被设置成2,所以滤光器1000以两个像素向右移动,如图11C中所示。当以两个像素向右移动时,滤光器1000的权重w0、w1、w2和w3被应用于原始图像分块900的像素2、3、10和11。举例来说,如图11D中所示,权重w0乘以像素2的值,权重w1乘以像素3的值,权重w2乘以像素10的值,并且权重w3乘以像素11的值。由乘法引起的值(示出为W0*值(2)、W1*值(3)、W2*值(10)、W3*值(11))可以随后求和在一起(或以其它方式组合)以产生用于滤光器1000的所述节点或迭代的输出B。
可以应用类似过程直至滤光器1000已经围绕整个原始图像分块900卷积。图11E示出了由应用于原始图像分块900的滤光器1000引起的特征地图1100。特征地图1100包含由在原始图像分块上的滤光器1000的每个迭代引起的总和值A到O。特征地图1100表示提供在原始图像分块900的每个像素处的数据的多维表示(当使用多个信道时)的加权特征数据值的降低分辨率集合。因为跨步CNN的跨距被设置成2的值,所以特征地图1100具有4x4的降低的分辨率,提供原始图像分块900的1/2分辨率加权表示。
返回到图6,卷积神经网络600的跨步卷积滤光器包含跨步CNN1 623、跨步CNN2624和跨步CNN3 625。跨步CNN1 623可包含操作以产生含有表示原始图像分块621的原始图像数据的加权数据值(被称作特征数据)的特征地图阵列的卷积滤光器的数个信道。通过跨步CNN1 623产生的特征地图阵列是原始图像分块621的1/64分辨率加权表示。特征数据的代表性加权值可以通过跨越128x128x11输入体积卷积CNN1 623的权重的滤光器阵列获得,其方式为在竖直和水平方向中的每一个上以1/8降低输入的维度(引起1/64的总分辨率降低)。举例来说,128x128值的输入阵列(具有11的深度)将降低到加权特征数据值的16x16特征地图阵列。滤光器阵列的不同的大小和不同的跨距量可用于跨步CNN1 623以便以所期望的量降低分辨率。在一个说明性实例中,CNN1 623可以首先将具有2的跨距的2x2滤光器阵列应用到原始图像数据的128x128x11体积以产生加权值的64x64阵列。另一2x2滤光器阵列可被应用于加权值的64x64阵列以产生32x32阵列,并且随后另一2x2滤光器阵列可被应用于32x32阵列以产生加权值的16x16特征地图阵列。在另一说明性实例中,CNN1 623可以将具有8的跨距的8x8阵列应用到128x128输入原始图像分块621以便将阵列从128x128降低到16x16。任何其它大小滤光器阵列和跨距量可用于产生是原始图像分块621的大小的1/64的加权值的阵列。如前所述,跨步CNN1 623具有多个信道(例如,64或其它值),并且因此将应用具有权重的不同的阵列的所有64个不同的滤光器阵列。在64个信道的实例中,结果将是加权值的64个不同的16x16阵列,每个16x16阵列表示原始图像分块621的不同的特征。在一些实例中,用于CNN中的每一个的信道的数目的选择可以是不同的。举例来说,每个CNN可以具有独特数目的信道。在一些实例中,所有的CNN可以具有相同数目的信道。
跨步CNN1 623的结果是提供原始图像分块621的特征的多维表示的加权特征数据值的降低分辨率集合。举例来说,加权特征数据值提供在原始图像分块621的每个像素处的数据的多维表示。在每个卷积滤光器具有64个信道时的情况下,跨步CNN1 623产生加权值的64个16x16特征地图阵列。在如上文所描述执行跨步卷积的跨步CNN1 623之后,提供CNN8631以处理来自CNN1 623的输出。CNN8 631可包含具有等于1的跨距的一系列卷积。举例来说,来自CNN1 623的64个16x16阵列可通过CNN8 631减小到64个8x8阵列。来自CNN8 631的8x8阵列可以随后经上采样到16x16的大小,然后与来自CNN9 632的阵列组合,如下文所述。对数据进行下采样并且随后对数据进行上采样的益处是优化计算需求。举例来说,下采样的结果由CNN8 631处理以便以较低分辨率收集信息。如果数据不是首先下采样的,那么将需要较大滤光器的使用来实现较高分辨率的类似结果。
与跨步CNN1 623并行,1/16分辨率跨步CNN2 624产生加权值的64个1/16分辨率特征地图阵列。在一个说明性实例中,CNN 2 624可以首先将具有2的跨距的2x2滤光器阵列应用于原始图像数据(与原始图像分块621相关联)的128x128x11体积以产生加权特征数据值的64x64阵列。另一2x2滤光器阵列可被应用于加权值的64x64阵列以产生特征数据值的32x32特征地图阵列。在另一说明性实例中,4x4阵列可以4的跨距被应用于128x128输入原始图像分块621以将阵列从128x128减小到32x32。可以使用任何其它大小滤光器阵列和跨距量来产生原始图像分块621的大小的1/16的加权特征数据值的特征地图阵列。跨步CNN2624具有多个信道(例如,64个或其它合适的值),并且将应用所有64个不同的滤光器阵列。当使用64个信道时,结果将是加权值的64个不同的32x32阵列,其中每个阵列表示在四分之一分辨率下的原始图像分块621的数据的不同的表示。
在跨步CNN2 624之后,提供CNN9 632以处理来自CNN2 624的输出。CNN9 632类似于CNN8 631,并且可包含具有等于1的跨距的一系列卷积。举例来说,来自CNN2 624的32x32大小阵列可通过CNN9 632减小到16x16阵列。如所示出,来自CNN8 631的加权特征数据值的64个特征地图阵列与来自CNN9 632的加权特征数据值的64个16x16特征地图阵列组合。如上文所指出,来自CNN1 623的16x16大小阵列可通过CNN8 631减小到8x8阵列。为了组合较低分辨率8x8阵列与较大16x16阵列,需要对较低分辨率数据进行上采样使得可以组合来自CNN8 631和CNN9 632的阵列中的值。在一些实例中,可以对来自CNN8 631的8x8阵列进行上采样,方法是将阵列增大到16x16大小,并且随后水平地且竖直地复制来自8x8阵列的值使得经按比例增大的16x16阵列具有在每个节点处的值。来自经按比例增大的16x16阵列的加权值可以随后被添加到来自CNN9 632的来自16x16阵列的加权值以产生加权值的组合的16x16阵列。因为每个卷积滤光器(例如,CNN8 631和CNN9 632)的信道的数目是相同的,所以对准的维度的数目(对应于信道的数目)被添加在一起。
加权值的组合的64个16x16特征地图阵列(基于来自CNN8 631和CNN9 632的阵列的组合)随后由CNN4 626处理。CNN4 626、CNN5 627、CNN6 628和CNN7 629可包含相同数目的信道(具有表示数据的不同的维度的权重),例如用于上文的实例中的64个信道。CNN4626、CNN5 627、CNN6 628和CNN7 629也具有等于1的跨距,并且因此不被称作跨步滤光器。举例来说,CNN4 626、CNN5 627、CNN6 628和CNN7 629可包含具有1的跨距的3x3滤光器的64个信道。
如上文所指出,加权值的组合的64个16x16特征地图阵列由CNN4 626处理。CNN4626处理具有一系列的卷积层(具有等于1的跨距)的这些16x16阵列直至阵列减小到8x8。来自CNN4 626的输出随后从8×8到16x16维度阵列上采样,然后与来自CNN10 633的阵列组合。
跨步CNN3 625处理原始图像分块621,其方式为从128x128到64x64降低分辨率。在一个说明性实例中,CNN3 625可以将具有2的跨距的2x2滤光器阵列应用到原始图像数据的128x128x11体积以产生加权特征数据值的64x64特征地图阵列。在跨步CNN3 625之后,提供CNN10 633以处理来自CNN3 625的输出。类似于CNN8 631和CNN9 632,CNN10 633可包含具有等于1的跨距的一系列卷积。举例来说,来自CNN3 625的64x64大小阵列可通过CNN10 633减小到16x16阵列。如所示出,来自CNN10 633的加权特征数据值的64个16x16特征地图阵列随后与来自CNN4 626的64个经按比例增大的16x16特征地图阵列组合。
组合的16x16特征地图阵列随后由CNN5 627处理以产生阵列的进一步加权集合。来自CNN5 627的输出经上采样到全分辨率,并且具有加权全分辨率特征数据值的全分辨率特征地图阵列与来自CNN6 628的特征地图阵列输出的全分辨率集合组合。CNN6 628在原始图像分块621的全分辨率版本上操作。可使用全分辨率CNN6 628使得网络600可以产生全分辨率像素RGB输出。全分辨率可以用于对于应用来说以全分辨率提供图像是期望的或重要的情况。需要全分辨率CNN6 628以在输出中产生全图像分辨率。对于仅需要部分分辨率图像的应用,可以从网络600移除或省略全分辨率层(CNN6 628)。
组合的全分辨率特征地图阵列随后由CNN7 629处理以产生基于原始图像分块621的最终输出RGB分块630。输出RGB分块630可基于多维数据或特征确定,所述数据或特征通过卷积神经网络600的不同的卷积滤光器确定。使用上述实例,网络600的卷积滤光器将128x128原始图像分块621的输入体积的功能性映射(基于卷积滤光器的各种权重)提供到8x8输出RGB分块630。在一些实例中,输出RGB分块630包含每像素的红色色彩分量、绿色色彩分量和蓝色色彩分量。所属领域的一般技术人员将了解还可以使用除RGB之外的色彩空间,例如明度和色度(YCbCr或YUV)色彩分量(例如,在此情况下每像素多个色彩分量包含每像素明度色彩分量、每像素第一色度色彩分量,以及每像素第二色度色彩分量),或其它合适的色彩分量。在一些实例中(未在图6中示出),输出可以是单色图像分块,其中网络600执行噪声减少、色调映射,其它基于ISP的功能。
如上文所描述,输出RGB分块630中的像素阵列可包含与输入原始图像分块621的维度相比较小的维度。使用来自上文的实例,原始图像分块206可包含原始图像像素的128x128阵列(例如,在拜耳图案),并且网络600的重复卷积滤光器的应用使得输出RGB分块630包含像素的8x8阵列的3个维度。一个维度用于每个像素的红色色彩,一个维度用于每个像素的绿色色彩,并且一个维度用于每个像素的蓝色色彩。图12A是说明包含输出RGB分块630的红色色彩分量R0到R63的8x8阵列的输出图像分块1200A的实例的图式。图12B是说明包含输出RGB分块630的绿色色彩分量G0到G63的8x8阵列的输出图像分块1200B的实例的图式。图12C是说明包含输出RGB分块630的蓝色色彩分量B0到B63的8x8阵列的输出图像分块1200C的实例的图式。
如上文所指出,来自原始图像数据的输入帧的分块可以经定义使得它们彼此重叠,这允许完整输出图像含有完整图片甚至考虑到从输入到输出的维度中的减少。所得最终输出图像含有通过卷积神经网络600从原始输入数据导出的经处理的输出图像分块。输出图像分块布置成以非重叠方式紧靠着彼此以产生最终输出图像(例如,第一输出图像分块、之后是第二输出图像分块等等)。最终输出图像可以经渲染以供显示,用于压缩(或译码)、存储,或用于任何其它基于图像的目的。
在一些情况下,在由卷积神经网络600的卷积滤光器中的一或多个处理之前全分辨率原始图像分块621可以被裁剪。举例来说,为了获得降低维度输出(例如,以从128x128输入变成8x8输出),需要更多卷积层来处理全分辨率的较大输入。原始图像分块621可以被裁剪,方法是在分块621上应用卷积滤光器之前移除在原始图像分块621的边缘上的像素中的一些。裁剪是基于网络600的需要在每个卷积滤光器处可选的。在一个说明性实例中,可以针对产生全分辨率特征地图阵列的上文所描述的全分辨率CNN6 628裁剪原始图像分块621。举例来说,因为最终输出RGB分块630在降低的维度下(例如,8x8阵列),所以用于全分辨率128x128输入的所有像素位置输入可能并不是提供用于原始图像分块621的8x8中心的像素层级内容所需的。很可能影响最终8x8输出的细节的全分辨率原始图像分块621中的像素的邻域更接近围绕原始图像分块621的中心的像素的8x8集合。在此类情况下,可以裁剪原始图像分块621使得像素的较小邻域围绕原始图像分块621的中心8x8部分。在一个说明性实例中,可以从全分辨率原始图像分块621裁剪围绕中心的32x32像素阵列。
在一些情况下,网络600可以被设计成避免分批标准化和池化,并且被设计成不具有填充。举例来说,网络600有意地并不具有分批标准化层和池化层,并且在一些情况下不具有填充。池化可以从网络600被排除,因为池化层可以干扰在图像的分辨率。对于图像信号处理功能,期望在特定分辨率下的非常详细的结果,在此情况下池化并不是有用的。也可以移除标准化层。在不同的层处,通常在一些网络中执行的分批标准按比例缩放和偏移在特定层处的数据以提供用于待处理的下一个层的更好的数据范围。此类标准化层可以是对于分类问题有用的,因为分类系统尝试找出特定特征或类别是否存在,因此如果来自层的数据输出经按比例缩放和移位,那么结果仍然被保留因为数据是以相同的量按比例缩放和移位的。然而,对于机器学习ISP神经网络执行以从连续值输入变成连续值输出的回归问题,不同的像素如何相对于彼此经移位和按比例缩放无法是任意的。举例来说,图像的色彩需要被很好的保留,图像分块中的不同的细节需要被保留以对整个图像的较大方案有意义等等。出于这些原因和其它原因,可以从网络600省略标准化层。
网络600也不包含完全连接层,并且替代地使用CNN(CNN7 629)作为网络600中的最后一个层。完全地卷积的网络(没有任何完全连接层)的优点在于网络不受大小约束。举例来说,CNN是平移地恒定的。因为网络600中的处理是平移地恒定的,所以相同的习得的滤光器可以应用于更大或更小的输入大小。举例来说,如果输入大小需要是256x256,那么可使用来自图6的128x128网络的相同参数。完全地卷积的网络的另一优点在于与仅使用卷积层相比全连接的层具有多的多的参数和计算,如图6中所示。举例来说,如果完全连接层将产生输出RGB分块630,那么参数的数目与如果仅使用CNN相比要大得多,如图6中所示。
如上文所指出,输出RGB分块平铺在一起以产生最终输出图像。因为未在数据上执行填充,所以可以避免最终输出图像中的缝隙。举例来说,填充数据可以在边缘处形成人造信息,这继而可以造成缝隙。网络使用滤光操作以使宽度和/或高度较小,这允许网络在来自图像的实际数据上工作,而非填充数据。
通过使用机器学习来执行ISP功能,ISP变为可定制的。举例来说,通过呈现定为目标的数据实例和通过训练改变网络权重可以研发和应用不同的功能性。与硬连线或基于试探性的ISP相比基于机器学习的ISP还可以实现快速转向以用于更新。此外,基于机器学习的ISP移除调谐标准ISP所需的调谐参数的费时的任务。举例来说,存在用于管理ISP基础设施的大量的努力和人员配备。整体研发可用于机器学习ISP,在此期间端对端系统是直接地优化和产生的。此整体研发与标准ISP的功能块的逐件研发形成对比。成像创新也可以基于机器学习ISP加速。举例来说,可定制的机器学习ISP解锁许多创新可能性,允许开发人员和工程师更快速地驱动、研发和采取解决方案以对新颖传感器、透镜、相机阵列起作用,以及其它进展进展
图13是说明用于使用本文中所描述的技术使用一或多个神经网络处理图像数据的过程1300的实例的流程图。在块1302处,过程1300包含获得原始图像数据的分块。原始图像数据的分块包含使用一或多个图像传感器俘获的原始图像数据的帧的像素的子集。原始图像数据的分块包含用于像素的子集中的每个像素的单一色彩分量。在一些实例中,原始图像数据的帧包含来自通过彩色滤光器阵列滤光的一或多个图像传感器的图像数据。彩色滤光器阵列可包含任何合适的彩色滤光器,例如拜耳彩色滤光器阵列。举例来说,具有在每个像素位置处的红色、绿色或蓝色滤光器中的一个的拜耳图案彩色滤光器阵列(或其它合适的彩色滤光器阵列)的图像传感器可用于俘获具有每像素位置的单一色彩的原始图像数据。在一个说明性实例中,使用来自上文的实例,原始图像数据的分块可包含来自原始数据输入帧或图像的像素的128x128分块。在一些情况下,来自原始数据输入帧或图像的多个分块可以由至少一个神经网络处理。原始图像分块可以在原始数据输入帧中重叠。在一些实例中,过程1300包含获得额外数据以用于增强原始图像数据的获得的分块。额外数据可包含色调数据、径向距离数据或自动白平衡(AWB)增益数据中的至少一或多个。
在块1304处,过程1300包含将至少一个神经网络应用于原始图像数据的分块以确定用于像素的子集中的一或多个像素的多个色彩分量值。在块1306处,过程1300包含基于将至少一个神经网络应用于原始图像数据的分块产生输出图像数据的分块。至少一个神经网络可应用于原始数据输入帧的其它分块。输出图像数据的分块包含输出图像数据的帧的像素的子集。分块还包含用于输出图像数据的帧的像素的子集中的一或多个像素的多个色彩分量值。至少一个神经网络被设计成减少来自原始图像数据的输入分块的数据量。举例来说,至少一个神经网络的应用使得输出图像数据的分块包含与原始图像数据的分块相比较少的像素(或像素位置)。举例来说,使用来自上文使用原始输入数据的128x128输入分块的实例,输出图像分块可包含将是输出图像的部分的像素的8x8分块。如上文所指出,来自原始图像数据的输入帧的分块可以经定义使得它们彼此重叠,这允许输出图像含有完整图片甚至考虑到从输入到输出的维度中的减少。输出图像分块可以布置成以非重叠方式紧靠着彼此以产生最终输出图像。最终输出图像可以经渲染以供显示,用于压缩(或译码)、存储,或用于任何其它基于图像的目的。
在一些实施方案中,将至少一个神经网络应用于原始图像数据的分块包含将一或多个跨步卷积滤光器应用于原始图像数据的分块以产生表示原始图像数据的分块的降低分辨率数据。举例来说,跨步卷积滤光器可包含具有大于一的跨距的卷积滤光器。一或多个跨步卷积滤光器中的每个跨步卷积滤光器包含权重的阵列。跨步卷积滤光器的实例包含上文相对于图6所描述的跨步CNN1 623、跨步CNN2 624和跨步CNN3 625。在一些实例中,一或多个跨步卷积滤光器中的每个跨步卷积滤光器可包含多个信道。多个信道中的每个信道包含权重的不同的阵列。信道是在每个像素处的数据的高维度表示。举例来说,使用多个信道,随着数据移动穿过神经网络,神经网络可以变换这些高维度表示。
如上文所指出,一或多个跨步卷积滤光器可包含多个跨步卷积滤光器。举例来说,多个跨步卷积滤光器包含具有权重的第一阵列的第一跨步卷积滤光器以及具有权重的第二阵列的第二跨步卷积滤光器。第一跨步卷积滤光器到原始图像数据的分块的应用产生表示原始图像数据的分块的加权数据的第一集合。加权数据的第一集合具有第一分辨率。第二跨步卷积滤光器的应用产生表示原始图像数据的分块的加权数据的第二集合。加权数据的第二集合具有与第一分辨率相比是较低分辨率的第二分辨率。在一些情况下,第二跨步卷积滤光器可应用于原始图像数据的分块以产生加权数据的第二集合。此实例在图6中示出,其中跨步CNN2 624是第一跨步卷积滤光器的实例并且跨步CNN1 623是第二跨步卷积滤光器的实例。在其它情况下,第二跨步卷积滤光器可以产生来自另一卷积滤光器的输出的加权数据的第二集合。在一个说明性实例中,具有分辨率的加权数据的第一集合可以通过第一跨步卷积滤光器形成,并且第二跨步卷积滤光器可以在第一跨步卷积滤光器之后级联以形成具有第二分辨率的加权数据的第二集合。
在一些情况下,过程1300包含将具有第二分辨率的加权数据的第二集合按比例增大到第一分辨率,并且产生表示原始图像数据的分块的组合的加权数据,方法是组合加权数据的经按比例增大的第二集合与具有第一分辨率的加权数据的第一集合。使用来自上文的实例,可以对来自跨步CNN1 623(作为第二跨步卷积滤光器)的数据输出进行上采样,使得来自跨步CNN1 623的值可以与来自跨步CNN2 624(作为第一跨步卷积滤光器)的数据输出组合。在一些情况下,具有等于1的跨距的第一卷积滤光器可以在第一跨步卷积滤光器之后放置在网络中,并且具有等于1的跨距的第二卷积滤光器可以在第二跨步卷积滤光器之后放置在网络中。在此类情况下,可以对来自具有等于1的跨距的第二卷积滤光器的数据的输出阵列进行按比例增大的,并且经按比例增大的输出阵列可以与来自具有等于1的跨距的第一卷积滤光器的输出阵列组合。具有等于1的跨距的第一卷积滤光器的实例是图6中所示的CNN9 632,并且具有等于1的跨距的第二卷积滤光器的实例是CNN8 631。
在一些实例中,过程1300可包含将一或多个卷积滤光器应用于组合的加权数据以产生表示原始图像数据的分块的特征数据。一或多个卷积滤光器中的每个卷积滤光器包含权重的阵列。卷积滤光器中的每一个还可包含1的跨距,在此情况下卷积滤光器不是跨步滤光器(并不具有大于1的跨距)。
在一些情况下,过程1300可包含将特征数据按比例增大到全分辨率;以及通过组合经按比例增大的特征数据与全分辨率特征数据产生表示原始图像数据的分块的组合的特征数据。全分辨率特征数据是通过将卷积滤光器应用于原始图像数据的分块的全分辨率版本产生的。
在一些实例中,产生输出图像数据的分块包含将最终卷积滤光器应用于特征数据或组合的特征数据以产生输出图像数据。在一些情况下,至少一个神经网络并不包含完全连接层。举例来说,完全连接层并未在最终卷积滤光器之前或之后使用。在一些情况下,至少一个神经网络并不包含任何池化层。举例来说,池化层并未在最终卷积滤光器之前或之后使用。
在一些情况下,每像素多个色彩分量包含每像素红色色彩分量、每像素绿色色彩分量,以及每像素蓝色色彩分量。在一些情况下,每像素多个色彩分量包含每像素明度色彩分量、每像素第一色度色彩分量,以及每像素第二色度色彩分量。
在一些情况下,至少一个神经网络联合地执行多个图像信号处理器(ISP)功能。在一些实例中,至少一个神经网络包含至少一个卷积神经网络(CNN)。在一些情况下,至少一个神经网络包含多个层。在一些方面中,多个层与原始图像数据的分块的高维表示连接。
在一些实例中,过程1300可通过计算装置或设备执行,例如图2中所示的机器学习ISP 200。在一些情况下,计算装置或设备可包含处理器、微处理器、微计算机或经配置以执行过程1300的步骤的装置的其它组件。在一些实例中,计算装置或设备可包含经配置以俘获包含视频帧的视频数据(例如,视频序列)的相机。在一些情况下,计算装置可包含相机装置,所述相机装置可包含视频编解码器。在一些实例中,相机或俘获视频数据的其它俘获装置与计算装置分开,在此情况下计算装置接收所俘获的视频数据。计算装置可进一步包含经配置以传送视频数据的网络接口。网络接口可经配置以传送基于因特网协议(IP)的数据,或任何其它合适的类型的数据。
过程1300被说明为逻辑流程图,其操作表示可以在硬件、计算机指令或其组合中实施的操作的序列。在计算机指令的情形下,操作表示存储在一或多个计算机可读存储媒体上的计算机可执行指令,这些计算机可执行指令在由一或多个处理器执行时执行所叙述的操作。一般而言,计算机可执行指令包含例程、程序、对象、组件、数据结构以及执行特定功能或实施特定数据类型的类似物。描述操作的次序并不意图解释为限制,且任何数目的所描述的操作可以按任何次序组合和/或并行以实施所述过程。
另外,过程1300可以在配置有可执行指令的一或多个计算机系统的控制下执行并且可以实施为在一或多个处理器上、通过硬件或其组合共同地执行的代码(例如,可执行指令、一或多个计算机程序或一或多个应用程序)。如上文所指出,代码可存储在计算机可读或机器可读存储媒体上,例如,呈包括可通过一或多个处理器执行的多个指令的计算机程序的形式。计算机可读或机器可读存储媒体可以是非暂时性的。
在前述描述中,参考其特定实施例描述应用的方面,但是所属领域的技术人员将认识到本发明不限于此。因此,虽然已经在本文中详细地描述了应用的说明性实施例,但是应理解本发明概念可以其它方式不同地实施和采用,并且除了现有技术所限制的之外,所附权利要求书意图解释为包含此类变化。上文所描述的本发明的各种特征和方面可以单独地或联合地使用。此外,实施例可以在本文中描述的那些环境和应用之外的任何数目的环境和应用中使用而不脱离本说明书的广泛的精神和范围。应将本说明书和图式相应地视为说明性的而非限制性的。出于说明的目的,方法是以特定次序描述的。应了解,在替代实施例中,方法可以按与所描述的次序不同的次序执行。
在组件被描述为“经配置以”执行某些操作的情况下,可例如通过设计电子电路或其它硬件以执行所述操作、通过编程可编程电子电路(例如,微处理器或其它适合电子电路)以执行所述操作或其任何组合来实现此类配置。所属领域的一般技术人员将了解本文中所使用的小于(“<”)和大于(“>”)符号或术语可以相应地被小于或等于(“≤”)和大于或等于(“≥”)符号替换,而不脱离本说明书的范围。
结合本文中所公开的实施例描述的各种说明性逻辑块、模块、电路和算法步骤可实施为电子硬件、计算机软件、固件或其组合。为了清晰地说明硬件与软件的此可互换性,上文已大体就其功能性描述了各种说明性组件、块、模块、电路和步骤。此类功能性是实施为硬件还是软件取决于特定应用和强加于整个系统的设计约束。所属领域的技术人员可针对每一特定应用以不同方式来实施所描述的功能性,但是此类实施决策不应被解释为会引起脱离本发明的范围。
本文中所描述的技术也可以在电子硬件、计算机软件、固件或其任何组合中实施。此类技术可实施于多种装置中的任一个中,例如通用计算机、无线通信装置手持机或集成电路装置,其具有包含在无线通信装置手持机和其它装置中的应用的多种用途。被描述为模块或组件的任何特征可一起实施于集成逻辑装置中或单独地实施为离散但可互操作的逻辑装置。如果在软件中实施,那么所述技术可至少部分地由包括程序代码的计算机可读数据存储媒体来实现,所述程序代码包含在被执行时执行上文所描述的方法中的一或多个的指令。计算机可读数据存储媒体可形成计算机程序产品的一部分,所述计算机程序产品可包含封装材料。计算机可读媒体可包括存储器或数据存储媒体,例如随机存取存储器(RAM)(例如,同步动态随机存取存储器(SDRAM))、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦除可编程只读存储器(EEPROM)、快闪存储器、磁性或光学数据存储媒体,及类似者。另外或替代地,所述技术可至少部分地由计算机可读通信媒体来实现,所述计算机可读通信媒体以指令或数据结构的形式运载或传送程序代码且可由计算机存取、读取和/或执行,例如传播的信号或波。
程序代码可由处理器执行,所述处理器可包含一或多个处理器,例如一或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其它等效集成或离散逻辑电路系统。此处理器可经配置以执行本发明中所描述的技术中的任一个。通用处理器可以是微处理器,但是在替代方案中,处理器可以是任何常规的处理器、控制器、微控制器或状态机。处理器也可被实施为计算装置的组合,例如,DSP和微处理器的组合、多个微处理器、与DSP核心结合的一或多个微处理器,或任何其它此类配置。因此,如本文中所使用的术语“处理器”可指前述结构中的任一个、前述结构的任何组合,或适合于实施本文中所描述的技术的任何其它结构或设备。另外,在一些方面中,可将本文中所描述的功能性提供于经配置以用于编码和解码的专用软件模块或硬件模块内或并入组合的视频编码器-解码器(编解码器)中。
Claims (22)
1.一种使用一或多个神经网络处理图像数据的方法,所述方法包括:
获得原始图像数据的分块,所述原始图像数据的分块包含使用一或多个图像传感器俘获的原始图像数据的帧的像素的子集,其中所述原始图像数据的分块包含用于所述像素的子集中的每个像素的单一色彩分量;
将至少一个神经网络应用于所述原始图像数据的分块以确定用于所述像素的子集中的一或多个像素的多个色彩分量值,其中将所述至少一个神经网络应用于所述原始图像数据的分块包含:
将多个跨步卷积滤光器应用于所述原始图像数据的分块以产生表示所述原始图像数据的分块的降低分辨率数据,所述多个跨步卷积滤光器包含:
第一跨步卷积滤光器,其具有权重的第一阵列,其中将所述第一跨步卷积滤光器应用于所述原始图像数据的分块产生表示所述原始图像数据的分块的加权数据的第一集合,所述加权数据的第一集合具有
第一分辨率;以及
第二跨步卷积滤光器,其具有权重的第二阵列,其中所述第二跨步卷积滤光器的应用产生表示所述原始图像数据的分块的加权数据的第二集合,所述加权数据的第二集合具有第二分辨率,所述第二分辨率是与所述第一分辨率相比较低的分辨率;
将具有所述第二分辨率的所述加权数据的第二集合按比例增大到所述第一分辨率;以及
产生表示所述原始图像数据的分块的组合的加权数据,方法是组合所述加权数据的经按比例增大的第二集合与具有所述第一分辨率的所述加权数据的第一集合;以及
基于将所述至少一个神经网络应用于所述原始图像数据的分块产生输出图像数据的分块,所述输出图像数据的分块包含输出图像数据的帧的像素的子集并且包含用于所述输出图像数据的帧的所述像素的子集中的一或多个像素的所述多个色彩分量值,其中所述至少一个神经网络的应用使得所述输出图像数据的分块包含与所述原始图像数据的分块相比较少的像素。
2.根据权利要求1所述的方法,其中所述原始图像数据的帧包含来自通过彩色滤光器阵列滤光的所述一或多个图像传感器的图像数据。
3.根据权利要求2所述的方法,其中所述彩色滤光器阵列包含拜耳彩色滤光器阵列。
4.根据权利要求1所述的方法,其中所述多个跨步卷积滤光器中的每个跨步卷积滤光器包含多个信道,其中所述多个信道中的每个信道包含权重的不同的阵列。
5.根据权利要求1所述的方法,其进一步包括:
将一或多个卷积滤光器应用于所述组合的加权数据以产生表示所述原始图像数据的分块的特征数据,所述一或多个卷积滤光器中的每个卷积滤光器包含权重的阵列。
6.根据权利要求5所述的方法,其进一步包括:
将所述特征数据按比例增大到全分辨率;以及
产生表示所述原始图像数据的分块的组合的特征数据,方法是组合所述经按比例增大的特征数据与全分辨率特征数据,所述全分辨率特征数据通过将卷积滤光器应用于所述原始图像数据的分块的全分辨率版本而产生。
7.根据权利要求6所述的方法,其中产生所述输出图像数据的分块包含:
将最终卷积滤光器应用于所述特征数据或所述组合的特征数据以产生所述输出图像数据。
8.根据权利要求1所述的方法,其进一步包括:
获得用于增强所述原始图像数据的获得的分块的额外数据,所述额外数据包含色调数据、径向距离数据或自动白平衡AWB增益数据中的至少一或多个。
9.根据权利要求1所述的方法,其中所述至少一个神经网络包含多个层,并且其中所述多个层与所述原始图像数据的分块的高维表示连接。
10.一种用于使用一或多个神经网络处理图像数据的设备,其包括:
存储器,其经配置以存储图像数据;以及
处理器,其经配置以:
获得原始图像数据的分块,所述原始图像数据的分块包含使用一或多个图像传感器俘获的原始图像数据的帧的像素的子集,其中所述原始图像数据的分块包含用于所述像素的子集中的每个像素的单一色彩分量;
将至少一个神经网络应用于所述原始图像数据的分块以确定用于所述像素的子集中的一或多个像素的多个色彩分量值,其中将所述至少一个神经网络应用于所述原始图像数据的分块包含:
将多个跨步卷积滤光器应用于所述原始图像数据的分块以产生表示所述原始图像数据的分块的降低分辨率数据,所述多个跨步卷积滤光器包含:
第一跨步卷积滤光器,其具有权重的第一阵列,其中将所述第一跨步卷积滤光器应用于所述原始图像数据的分块产生表示所述原始图像数据的分块的加权数据的第一集合,所述加权数据的第一集合具有第一分辨率;以及
第二跨步卷积滤光器,其具有权重的第二阵列,其中所述第二跨步卷积滤光器的应用产生表示所述原始图像数据的分块的加权数据的第二集合,所述加权数据的第二集合具有第二分辨率,所述第二分辨率是与所述第一分辨率相比较低的分辨率;
将具有所述第二分辨率的所述加权数据的第二集合按比例增大到所述第一分辨率;以及
产生表示所述原始图像数据的分块的组合的加权数据,方法是组合所述加权数据的经按比例增大的第二集合与具有所述第一分辨率的所述加权数据的第一集合;以及
基于将所述至少一个神经网络应用于所述原始图像数据的分块产生输出图像数据的分块,所述输出图像数据的分块包含输出图像数据的帧的像素的子集并且包含用于所述输出图像数据的帧的所述像素的子集中的一或多个像素的所述多个色彩分量值,其中所述至少一个神经网络的应用使得所述输出图像数据的分块包含与所述原始图像数据的分块相比较少的像素。
11.根据权利要求10所述的设备,其中所述原始图像数据的帧包含来自通过彩色滤光器阵列滤光的所述一或多个图像传感器的图像数据。
12.根据权利要求11所述的设备,其中所述彩色滤光器阵列包含拜耳彩色滤光器阵列。
13.根据权利要求10所述的设备,其中所述多个跨步卷积滤光器中的每个跨步卷积滤光器包含多个信道,其中所述多个信道中的每个信道包含权重的不同的阵列。
14.根据权利要求10所述的设备,其中所述处理器进一步经配置以:
将一或多个卷积滤光器应用于所述组合的加权数据以产生表示所述原始图像数据的分块的特征数据,所述一或多个卷积滤光器中的每个卷积滤光器包含权重的阵列。
15.根据权利要求14所述的设备,其中所述处理器进一步经配置以:
将所述特征数据按比例增大到全分辨率;以及
产生表示所述原始图像数据的分块的组合的特征数据,方法是组合所述经按比例增大的特征数据与全分辨率特征数据,所述全分辨率特征数据通过将卷积滤光器应用于所述原始图像数据的分块的全分辨率版本而产生。
16.根据权利要求15所述的设备,其中产生所述输出图像数据的分块包含:
将最终卷积滤光器应用于所述特征数据或所述组合的特征数据以产生所述输出图像数据。
17.根据权利要求10所述的设备,其中所述处理器进一步经配置以:
获得用于增强所述原始图像数据的获得的分块的额外数据,所述额外数据包含色调数据、径向距离数据或自动白平衡AWB增益数据中的至少一或多个。
18.根据权利要求10所述的设备,其中所述至少一个神经网络包含多个层,并且其中所述多个层与所述原始图像数据的分块的高维表示连接。
19.根据权利要求10所述的设备,其进一步包括用于俘获图片的相机。
20.一种上面存储有指令的非暂时性计算机可读媒体,所述指令在由一或多个处理器执行时使得所述一或多个处理器进行以下操作:
获得原始图像数据的分块,所述原始图像数据的分块包含使用一或多个图像传感器俘获的原始图像数据的帧的像素的子集,其中所述原始图像数据的分块包含用于所述像素的子集中的每个像素的单一色彩分量;
将至少一个神经网络应用于所述原始图像数据的分块以确定用于所述像素的子集中的一或多个像素的多个色彩分量值,其中将所述至少一个神经网络应用于所述原始图像数据的分块包含:
将多个跨步卷积滤光器应用于所述原始图像数据的分块以产生表示所述原始图像数据的分块的降低分辨率数据,所述多个跨步卷积滤光器包含:
第一跨步卷积滤光器,其具有权重的第一阵列,其中将所述第一跨步卷积滤光器应用于所述原始图像数据的分块产生表示所述原始图像数据的分块的加权数据的第一集合,所述加权数据的第一集合具有
第一分辨率;以及
第二跨步卷积滤光器,其具有权重的第二阵列,其中所述第二跨步卷积滤光器的应用产生表示所述原始图像数据的分块的加权数据的第二集合,所述加权数据的第二集合具有第二分辨率,所述第二分辨率是与所述第一分辨率相比较低的分辨率;
将具有所述第二分辨率的所述加权数据的第二集合按比例增大到所述第一分辨率;以及
产生表示所述原始图像数据的分块的组合的加权数据,方法是组合所述加权数据的经按比例增大的第二集合与具有所述第一分辨率的所述加权数据的第一集合;以及
基于将所述至少一个神经网络应用于所述原始图像数据的分块产生输出图像数据的分块,所述输出图像数据的分块包含输出图像数据的帧的像素的子集并且包含用于所述输出图像数据的帧的所述像素的子集中的一或多个像素的所述多个色彩分量值,其中所述至少一个神经网络的应用使得所述输出图像数据的分块包含与所述原始图像数据的分块相比较少的像素。
21.根据权利要求20所述的非暂时性计算机可读媒体,其中所述原始图像数据的帧包含来自通过彩色滤光器阵列滤光的所述一或多个图像传感器的图像数据。
22.根据权利要求20所述的非暂时性计算机可读媒体,其中所述多个跨步卷积滤光器中的每个跨步卷积滤光器包含多个信道,其中所述多个信道中的每个信道包含权重的不同的阵列。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311075808.1A CN117350917A (zh) | 2017-10-11 | 2018-10-05 | 用于处理图像的图像信号处理器 |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762571182P | 2017-10-11 | 2017-10-11 | |
US62/571,182 | 2017-10-11 | ||
US15/993,223 | 2018-05-30 | ||
US15/993,223 US10643306B2 (en) | 2017-10-11 | 2018-05-30 | Image signal processor for processing images |
PCT/US2018/054764 WO2019074804A1 (en) | 2017-10-11 | 2018-10-05 | IMAGE SIGNAL PROCESSOR DESIGNED TO PROCESS IMAGES |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311075808.1A Division CN117350917A (zh) | 2017-10-11 | 2018-10-05 | 用于处理图像的图像信号处理器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111194458A CN111194458A (zh) | 2020-05-22 |
CN111194458B true CN111194458B (zh) | 2023-10-13 |
Family
ID=65993285
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311075808.1A Pending CN117350917A (zh) | 2017-10-11 | 2018-10-05 | 用于处理图像的图像信号处理器 |
CN201880065522.6A Active CN111194458B (zh) | 2017-10-11 | 2018-10-05 | 用于处理图像的图像信号处理器 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311075808.1A Pending CN117350917A (zh) | 2017-10-11 | 2018-10-05 | 用于处理图像的图像信号处理器 |
Country Status (8)
Country | Link |
---|---|
US (1) | US10643306B2 (zh) |
EP (1) | EP3695375A1 (zh) |
KR (1) | KR20200058440A (zh) |
CN (2) | CN117350917A (zh) |
AU (1) | AU2018346909B2 (zh) |
BR (1) | BR112020006869A2 (zh) |
CA (1) | CA3075544A1 (zh) |
WO (1) | WO2019074804A1 (zh) |
Families Citing this family (53)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10366328B2 (en) * | 2017-09-19 | 2019-07-30 | Gyrfalcon Technology Inc. | Approximating fully-connected layers with multiple arrays of 3x3 convolutional filter kernels in a CNN based integrated circuit |
US10360470B2 (en) * | 2016-10-10 | 2019-07-23 | Gyrfalcon Technology Inc. | Implementation of MobileNet in a CNN based digital integrated circuit |
US10489887B2 (en) | 2017-04-10 | 2019-11-26 | Samsung Electronics Co., Ltd. | System and method for deep learning image super resolution |
US11263782B2 (en) | 2017-10-11 | 2022-03-01 | Qualcomm Incorporated | Image signal processor for processing images |
US10945033B2 (en) * | 2018-03-14 | 2021-03-09 | Idomoo Ltd. | System and method to generate a customized, parameter-based video |
US10636123B2 (en) * | 2018-05-15 | 2020-04-28 | Wipro Limited | Method and device for de-noising images |
KR102516366B1 (ko) * | 2018-05-30 | 2023-03-31 | 삼성전자주식회사 | 특징 데이터 획득 방법 및 장치 |
US10803565B2 (en) * | 2018-07-10 | 2020-10-13 | Intel Corporation | Low-light imaging using trained convolutional neural networks |
KR20200028168A (ko) * | 2018-09-06 | 2020-03-16 | 삼성전자주식회사 | 컨볼루셔널 뉴럴 네트워크를 이용하는 컴퓨팅 장치 및 그 동작 방법 |
US20200137380A1 (en) * | 2018-10-31 | 2020-04-30 | Intel Corporation | Multi-plane display image synthesis mechanism |
US10904637B2 (en) * | 2018-12-17 | 2021-01-26 | Qualcomm Incorporated | Embedded rendering engine for media data |
US11853812B2 (en) * | 2018-12-20 | 2023-12-26 | Here Global B.V. | Single component data processing system and method utilizing a trained neural network |
US10997690B2 (en) * | 2019-01-18 | 2021-05-04 | Ramot At Tel-Aviv University Ltd. | Method and system for end-to-end image processing |
US10534948B1 (en) | 2019-03-18 | 2020-01-14 | Capital One Services, Llc | Optimizing detection of images in relation to targets based on colorspace transformation techniques |
US10496862B1 (en) | 2019-03-18 | 2019-12-03 | Capital One Services, Llc | Detection of images in relation to targets based on colorspace transformation techniques and utilizing ultraviolet light |
US10509991B1 (en) | 2019-03-18 | 2019-12-17 | Capital One Services, Llc | Detection of images in relation to targets based on colorspace transformation techniques and utilizing infrared light |
US10496911B1 (en) | 2019-03-18 | 2019-12-03 | Capital One Services, Llc | Detection of images in relation to targets based on colorspace transformation techniques and utilizing ultraviolet and infrared light |
US11126895B2 (en) * | 2019-05-22 | 2021-09-21 | Lawrence Livermore National Security, Llc | Mimicking of corruption in images |
CN111986278B (zh) * | 2019-05-22 | 2024-02-06 | 富士通株式会社 | 图像编码装置、概率模型生成装置和图像压缩系统 |
EP3985961A4 (en) * | 2019-06-13 | 2023-05-03 | LG Innotek Co., Ltd. | CAMERA DEVICE AND METHOD FOR GENERATING CAMERA DEVICE IMAGES |
DE102019209282A1 (de) * | 2019-06-26 | 2020-12-31 | Robert Bosch Gmbh | Verfahren zum Erhalten einer Infrarotdarstellung einer Bildsituation und Recheneinheit, System und Computerprogramm zu dessen Durchführung |
US10614635B1 (en) | 2019-07-25 | 2020-04-07 | Capital One Services, Llc | Augmented reality system with color-based fiducial marker |
US11049286B2 (en) * | 2019-07-31 | 2021-06-29 | Hewlett Packard Enterprise Development Lp | Deep neural network color space optimization |
KR102213765B1 (ko) * | 2019-08-09 | 2021-02-08 | 엘지이노텍 주식회사 | 이미지 센서, 카메라 모듈 및 카메라 모듈을 포함하는 광학 기기 |
US10833852B1 (en) | 2019-10-03 | 2020-11-10 | Capital One Services, Llc | Encoded data along tape based on colorspace schemes |
US10715183B1 (en) | 2019-10-25 | 2020-07-14 | Capital One Services, Llc | Data encoding with error-correcting code pursuant to colorspace schemes |
US10867226B1 (en) | 2019-11-04 | 2020-12-15 | Capital One Services, Llc | Programmable logic array and colorspace conversions |
DE102019129760A1 (de) | 2019-11-05 | 2021-05-06 | Eyyes Gmbh | Verfahren zur Verarbeitung von Eingangsdaten |
US10762371B1 (en) | 2019-11-14 | 2020-09-01 | Capital One Services, Llc | Object detection techniques using colorspace conversions |
US10944914B1 (en) * | 2019-12-02 | 2021-03-09 | Samsung Electronics Co., Ltd. | System and method for generating multi-exposure frames from single input |
WO2021112550A1 (en) | 2019-12-02 | 2021-06-10 | Samsung Electronics Co., Ltd. | System and method for generating multi-exposure frames from single input |
KR20210097448A (ko) * | 2020-01-30 | 2021-08-09 | 삼성전자주식회사 | 영상 데이터 처리 방법 및 영상 데이터 처리 방법을 수행하는 센서 장치 |
US11423305B2 (en) * | 2020-02-26 | 2022-08-23 | Deere & Company | Network-based work machine software optimization |
US11436491B2 (en) * | 2020-03-13 | 2022-09-06 | Microsoft Technology Licensing, Llc | System and method for improving convolutional neural network-based machine learning models |
US11282240B2 (en) | 2020-04-23 | 2022-03-22 | Saudi Arabian Oil Company | Generation and implementation of multi-layer encoded data images |
CN115461780A (zh) * | 2020-05-13 | 2022-12-09 | 高通股份有限公司 | 基于机器学习的图像调整 |
US11620476B2 (en) * | 2020-05-14 | 2023-04-04 | Micron Technology, Inc. | Methods and apparatus for performing analytics on image data |
US11302036B2 (en) * | 2020-08-19 | 2022-04-12 | Capital One Services, Llc | Color conversion between color spaces using reduced dimension embeddings |
KR102418536B1 (ko) * | 2020-09-01 | 2022-07-08 | 광주과학기술원 | 이미지 센서 및 이미지 센서를 사용하는 이미지 인식장치 |
CN116250235A (zh) * | 2020-10-01 | 2023-06-09 | 北京达佳互联信息技术有限公司 | 具有基于神经网络的环路滤波的视频编解码 |
WO2022092555A1 (ko) * | 2020-10-27 | 2022-05-05 | 삼성전자 주식회사 | 노이즈 저감 처리된 이미지 데이터를 생성하는 방법 및 이를 수행하는 전자 장치 |
CN112329634B (zh) * | 2020-11-05 | 2024-04-02 | 华中师范大学 | 课堂行为识别方法、装置、电子设备及存储介质 |
RU2764395C1 (ru) * | 2020-11-23 | 2022-01-17 | Самсунг Электроникс Ко., Лтд. | Способ и устройство для совместного выполнения дебайеризации и устранения шумов изображения с помощью нейронной сети |
KR20220082547A (ko) | 2020-12-10 | 2022-06-17 | 에스케이하이닉스 주식회사 | 이미지 센싱 장치 |
US11785068B2 (en) | 2020-12-31 | 2023-10-10 | Synaptics Incorporated | Artificial intelligence image frame processing systems and methods |
US20220303515A1 (en) * | 2021-03-17 | 2022-09-22 | Mediatek Inc. | High Sensitivity Color Image Generation Using Hybrid Sensor |
CN113301221B (zh) * | 2021-03-19 | 2022-09-09 | 西安电子科技大学 | 一种深度网络相机图像处理方法及终端 |
US11778305B2 (en) * | 2021-06-18 | 2023-10-03 | Qualcomm Incorporated | Composite image signal processor |
FR3124671B1 (fr) * | 2021-06-25 | 2023-07-07 | Fond B Com | Procédés de décodage et de codage d’une image, dispositifs et signal associés |
CN113341842B (zh) * | 2021-06-28 | 2022-04-22 | 山东科技大学 | 一种堆场喷雾除尘智能控制系统 |
US11967047B2 (en) * | 2021-09-30 | 2024-04-23 | Kwai Inc. | Methods and devices for joint sensor and pixel domain denoising |
CN113933111B (zh) * | 2021-09-30 | 2022-08-19 | 南京大学 | 一种实现图像尺寸放大的上采样装置及其方法 |
WO2023229591A1 (en) * | 2022-05-25 | 2023-11-30 | Innopeak Technology, Inc. | Real scene super-resolution with raw images for mobile devices |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106709532A (zh) * | 2017-01-25 | 2017-05-24 | 京东方科技集团股份有限公司 | 图像处理方法和装置 |
CN106991646A (zh) * | 2017-03-28 | 2017-07-28 | 福建帝视信息科技有限公司 | 一种基于密集连接网络的图像超分辨率方法 |
CN107169927A (zh) * | 2017-05-08 | 2017-09-15 | 京东方科技集团股份有限公司 | 一种图像处理系统、方法及显示装置 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100200215B1 (ko) * | 1996-04-08 | 1999-06-15 | 윤종용 | 상관 신경 회로망을 이용한 납땜 검사 장치 및방법 |
US6594382B1 (en) * | 1999-11-04 | 2003-07-15 | The United States Of America As Represented By The Secretary Of The Navy | Neural sensors |
US6735579B1 (en) * | 2000-01-05 | 2004-05-11 | The United States Of America As Represented By The Secretary Of The Navy | Static memory processor |
US7761240B2 (en) * | 2004-08-11 | 2010-07-20 | Aureon Laboratories, Inc. | Systems and methods for automated diagnosis and grading of tissue images |
WO2008005426A2 (en) * | 2006-06-30 | 2008-01-10 | University Of South Florida | Computer-aided pathological diagnosis system |
US9626766B2 (en) | 2014-02-28 | 2017-04-18 | Microsoft Technology Licensing, Llc | Depth sensing using an RGB camera |
US20160239706A1 (en) | 2015-02-13 | 2016-08-18 | Qualcomm Incorporated | Convolution matrix multiply with callback for deep tiling for deep convolutional neural networks |
WO2016207875A1 (en) | 2015-06-22 | 2016-12-29 | Photomyne Ltd. | System and method for detecting objects in an image |
US9633282B2 (en) | 2015-07-30 | 2017-04-25 | Xerox Corporation | Cross-trained convolutional neural networks using multimodal images |
US20170124409A1 (en) * | 2015-11-04 | 2017-05-04 | Nec Laboratories America, Inc. | Cascaded neural network with scale dependent pooling for object detection |
US10460231B2 (en) | 2015-12-29 | 2019-10-29 | Samsung Electronics Co., Ltd. | Method and apparatus of neural network based image signal processor |
US9760827B1 (en) * | 2016-07-22 | 2017-09-12 | Alpine Electronics of Silicon Valley, Inc. | Neural network applications in resource constrained environments |
-
2018
- 2018-05-30 US US15/993,223 patent/US10643306B2/en active Active
- 2018-10-05 WO PCT/US2018/054764 patent/WO2019074804A1/en unknown
- 2018-10-05 CN CN202311075808.1A patent/CN117350917A/zh active Pending
- 2018-10-05 AU AU2018346909A patent/AU2018346909B2/en active Active
- 2018-10-05 EP EP18792822.1A patent/EP3695375A1/en active Pending
- 2018-10-05 CN CN201880065522.6A patent/CN111194458B/zh active Active
- 2018-10-05 CA CA3075544A patent/CA3075544A1/en active Pending
- 2018-10-05 BR BR112020006869-1A patent/BR112020006869A2/pt unknown
- 2018-10-05 KR KR1020207009995A patent/KR20200058440A/ko not_active Application Discontinuation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106709532A (zh) * | 2017-01-25 | 2017-05-24 | 京东方科技集团股份有限公司 | 图像处理方法和装置 |
CN106991646A (zh) * | 2017-03-28 | 2017-07-28 | 福建帝视信息科技有限公司 | 一种基于密集连接网络的图像超分辨率方法 |
CN107169927A (zh) * | 2017-05-08 | 2017-09-15 | 京东方科技集团股份有限公司 | 一种图像处理系统、方法及显示装置 |
Non-Patent Citations (1)
Title |
---|
Micha¨el Gharbi等.Deep Joint Demosaicking and Denoising.《ACM TRANSACTIONS ON GRAPHICS》.2016,第35卷(第6期),191:1-191:12. * |
Also Published As
Publication number | Publication date |
---|---|
BR112020006869A2 (pt) | 2020-10-06 |
AU2018346909B2 (en) | 2023-01-12 |
CN111194458A (zh) | 2020-05-22 |
US20190108618A1 (en) | 2019-04-11 |
EP3695375A1 (en) | 2020-08-19 |
WO2019074804A1 (en) | 2019-04-18 |
AU2018346909A1 (en) | 2020-03-26 |
KR20200058440A (ko) | 2020-05-27 |
CN117350917A (zh) | 2024-01-05 |
US10643306B2 (en) | 2020-05-05 |
CA3075544A1 (en) | 2019-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111194458B (zh) | 用于处理图像的图像信号处理器 | |
US11263782B2 (en) | Image signal processor for processing images | |
Wronski et al. | Handheld multi-frame super-resolution | |
US11875475B2 (en) | Systems and methods for synthesizing high resolution images using images captured by an array of independently controllable imagers | |
US10708525B2 (en) | Systems and methods for processing low light images | |
US9842386B2 (en) | Image filtering based on image gradients | |
CN111353948B (zh) | 一种图像降噪方法、装置及设备 | |
RU2764395C1 (ru) | Способ и устройство для совместного выполнения дебайеризации и устранения шумов изображения с помощью нейронной сети | |
US7983511B1 (en) | Methods and apparatus for noise reduction in digital images | |
CN108765343A (zh) | 图像处理的方法、装置、终端及计算机可读存储介质 | |
CN111402146A (zh) | 图像处理方法以及图像处理装置 | |
US20100061650A1 (en) | Method And Apparatus For Providing A Variable Filter Size For Providing Image Effects | |
EP4150559A1 (en) | Machine learning based image adjustment | |
CN110838088B (zh) | 一种基于深度学习的多帧降噪方法、装置及终端设备 | |
US20210327026A1 (en) | Methods and apparatus for blending unknown pixels in overlapping images | |
CN111383188A (zh) | 一种图像处理方法、系统及终端设备 | |
US20150104112A1 (en) | Large Radius Edge-Preserving Low-Pass Filtering | |
CN111383171B (zh) | 一种图片处理方法、系统及终端设备 | |
CN113379608A (zh) | 一种图像处理方法、存储介质及终端设备 | |
WO2006112814A1 (en) | Edge-sensitive denoising and color interpolation of digital images | |
US11983846B2 (en) | Machine learning based image adjustment | |
McCrackin et al. | Strategic image denoising using a support vector machine with seam energy and saliency features | |
US20240087087A1 (en) | Method and apparatus for super resolution | |
KRAININ et al. | Handheld Multi-Frame Super-Resolution |
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 |