一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于神经网络推断的高动态范围(HDR)图像的无损表示的制作方法

2023-02-19 23:20:58 来源:中国专利 TAG:
用于神经网络推断的高动态范围(hdr)图像的无损表示
技术领域
1.本实施方式总体上涉及神经网络,并且具体地涉及用于神经网络推断的高动态范围(hdr)图像的无损表示。


背景技术:

2.机器学习是用于提高计算机系统或应用执行特定任务的能力的技术。机器学习可以分解成两个组成部分:训练和推断。在训练阶段期间,可以向机器学习系统提供一个或多个“答案”和要映射到每个答案的一组或多组原始数据。机器学习系统可以对原始数据执行统计分析以“学习”可以用于描述或再现答案的一组规则(诸如共同的一组特征)或对其进行建模。深度学习是机器学习的特定形式,其中正被训练的模型是多层“神经网络”。在推断阶段期间,机器学习系统可以将规则应用于新数据以生成关于数据的答案或推断。
3.训练阶段通常使用对浮点精度输入数据进行操作的专用硬件来执行。相比之下,推断阶段通常在具有有限硬件资源(诸如有限处理器带宽、存储器或功率)的边缘设备上执行。例如,为了提高推断操作的速度和效率,许多边缘设备实现人工智能(ai)加速器(也称为ai处理器),其被专门设计为处理高度并行化的低精度计算。这样的ai加速器可以包括可以被配置为对有限大小的操作数(operand)进行操作的算术逻辑单元(alu)。
4.一些边缘设备可以被配置为对高动态范围(hdr)图像执行推断操作。与hdr图像相关联的每个像素值的长度可以是24位。然而,许多ai加速器只能对8位操作数进行操作。因此,与hdr图像相关联的原始输入数据的每个单元可以大于由ai加速器支持的操作数大小。因此,为了对hdr图像执行推断操作,一些边缘设备可以将每个24位像素值量化成8位值,这导致输入数据中的信息或精度的损失。这种信息损失可能导致不准确的推断结果,例如,以噪声或其他误差的形式。


技术实现要素:

5.提供本发明内容是为了以简化的形式介绍下面在具体实施方式中进一步描述的概念的选择。本发明内容不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在限制所要求保护的主题的范围。
6.本公开的主题的一个创新方面可以在由机器学习系统进行推断的方法中实现。该方法包括以下步骤:接收与输入图像相关联的某一位数(k)的像素数据;基于每个操作数中的位数(n)将k位细分为某一数目(m)的分区,由人工智能(ai)加速器对操作数进行操作,其中n《k,并且其中ai加速器被配置为将m个分区并行地处理为分别与输入图像的m个通道相关联的数据;以及至少部分地基于ai加速器处理m个分区来执行与输入图像相关联的推断操作。
7.本公开的主题的另一创新方面可以在包括ai加速器和位划分电路的机器学习系统中实现。ai加速器被配置为执行与输入图像相关联的推断操作。位划分电路被配置为接收与输入图像相关联的某一位数(k)的像素数据;并且基于每个操作数中的位数(n)将k位
细分为某一数目(m)的分区,由人工智能(ai)加速器对操作数进行操作,其中n《k,并且其中ai加速器被配置为将m个分区并行地处理为分别与输入图像的m个通道相关联的数据,并且至少部分地基于对m个分区的处理来执行推断操作。
8.本公开的主题的另一创新方面可以在训练神经网络的方法中实现。该方法包括以下步骤:接收与描绘场景的输入图像相关联的某一位数(k)的像素数据;接收场景的代表性图像;基于每个操作数中的位数(n)将k位细分为某一数目(m)的分区,由人工智能(ai)加速器对操作数进行操作,该ai加速器被配置用于基于神经网络进行推断,其中n《k;以及训练神经网络以将m个分区并行处理为分别与m个通道相关联的数据,以及至少部分地基于对m个分区的处理来再现代表性图像。
附图说明
9.本实施方式通过示例的方式示出,并且不旨在受附图中的图的限制。
10.图1示出了根据一些实施方式的示例图像捕获和显示系统的框图。
11.图2示出了根据一些实施方式的示例图像处理器的框图。
12.图3示出了根据一些实施方式的示例机器学习系统的框图。
13.图4a示出了由像素值阵列形成的示例输入图像。
14.图4b示出了由跨多个通道划分的像素值阵列形成的示例输入图像。
15.图5示出了根据一些实施方式的示例机器学习系统的框图。
16.图6示出了根据一些实施方式的描绘示例推断操作的说明性流程图。
17.图7示出了描绘根据一些实施方式的用于训练神经网络的示例操作的说明性流程图。
具体实施方式
18.在以下描述中,阐述了许多具体细节,诸如具体部件、电路和过程的示例,以提供对本公开的透彻理解。如本文所使用的术语“耦合”意指直接连接到或通过一个或多个中间部件或电路连接。术语“电子系统”和“电子设备”可以互换使用,以指代能够电子地处理信息的任何系统。此外,在以下描述中并且出于解释的目的,阐述了具体命名法以提供对本公开的各方面的透彻理解。然而,对于本领域技术人员将显而易见的是,可以不需要这些具体细节来实践示例实施例。在其他实例中,以框图形式示出了公知的电路和设备,以避免使本公开模糊不清。以下详细描述的一些部分是根据对计算机存储器内的数据位的操作的过程、逻辑块、处理和其他符号表示来呈现的。
19.这些描述和表示是数据处理领域的技术人员用来最有效地将他们工作的实质传达给本领域其他技术人员的手段。在本公开中,过程、逻辑块、进程等被认为是导致期望结果的步骤或指令的自洽序列。这些步骤是需要对物理量进行物理操纵的步骤。通常,尽管不一定,这些量采取能够在计算机系统中存储、传送、组合、比较和以其他方式操纵的电信号或磁信号的形式。然而,应当记住,所有这些和类似术语将与适当的物理量相关联,并且仅仅是应用于这些量的方便标签。
20.除非另有明确说明,否则如从以下讨论中显而易见的是,应当理解,在整个本技术中,利用诸如“访问”、“接收”、“发送”、“使用”、“选择”、“确定”、“归一化”、“相乘”、“平均”、“监视”、“比较”、“应用”、“更新”、“测量”、“导出”等术语的讨论是指计算机系统、或类似电子计算设备的动作和过程,其将表示为计算机系统的寄存器和存储器内的物理(电子)量的数据操纵和转换成类似地表示为计算机系统存储器或寄存器或其他这样的信息存储、传输或显示设备内的物理量的其他数据。
21.在附图中,单个框可以被描述为执行一个或多个功能;然而,在实际实践中,由该框执行的一个或多个功能可以在单个部件中或跨多个部件执行,和/或可以使用硬件、使用软件、或使用硬件和软件的组合来执行。为了清楚地说明硬件和软件的这种可互换性,下面已经在其功能性方面对各种说明性的部件、块、模块、电路和步骤进行了总体描述。这种功能性是实现为硬件还是软件取决于特定应用以及强加于整个系统的设计约束。所属领域的技术人员可针对每个特定应用以不同方式实现所描述的功能性,但不应将这样的实施方式决策解释为导致脱离本发明的范围。此外,示例输入设备可以包括除了所示出的那些部件之外的部件,包括诸如处理器、存储器等的公知部件。
22.本文描述的技术可以以硬件、软件、固件或其任何组合来实现,除非明确描述为以特定方式实现。被描述为模块或部件的任何特征也可以在集成逻辑设备中一起实现,或者单独地实现为分立但可互操作的逻辑设备。如果以软件实现,那么所述技术可至少部分地由包括指令的非暂时性处理器可读存储介质来实现,所述指令在被执行时执行上文所描述的方法中的一个或多个。非暂时性处理器可读数据存储介质可形成计算机程序产品的部分,所述计算机程序产品可包括封装材料。
23.非暂时性处理器可读存储介质可以包括随机存取存储器(ram)(诸如同步动态随机存取存储器(sdram))、只读存储器(rom)、非易失性随机存取存储器(nvram)、电可擦除可编程只读存储器(eeprom)、闪存、其他已知的存储介质等。另外或替代地,所述技术可至少部分地由处理器可读通信介质实现,该处理器可读通信介质携载或传达呈指令或数据结构形式的代码并且可由计算机或其它处理器存取、读取和/或执行。
24.结合本文公开的实施例描述的各种说明性逻辑块、模块、电路和指令可以由一个或多个处理器(或处理系统)执行。如本文所使用的术语“处理器”可以指代能够执行存储在存储器中的一个或多个软件程序的脚本或指令的任何通用处理器、专用处理器、常规处理器、控制器、微控制器、和/或状态机。
25.各个方面总体上涉及机器学习,并且更特别地,涉及以无损方式对高动态范围(hdr)图像数据执行推断操作。在一些方面中,机器学习系统可接收与输入图像相关联的某一位数(k)的像素数据,且基于每个操作数(由人工智能(ai)加速器对该操作数进行操作)中的位数(n)将k位细分成某一数目(m)的分区,其中n《k。例如,k位可以表示与输入图像相关联的像素值。在一些方面中,m个分区中的每一个可以包括至多n位的像素数据,其中。在一些实施方式中,ai加速器可以通过将m个分区并行地处理为分别与输入图像的m个通道相关联的数据来基于神经网络执行推断操作。
26.可以实现本公开中描述的主题的特定实施方式以实现以下潜在优点中的一个或多个。本公开的各方面可以提高由边缘设备对hdr图像数据执行的推断操作的精度和准确度。如上所述,许多边缘设备实现ai加速器,其被设计为对有限大小的操作数进行操作以用于较快的推断。然而,与hdr图像相关联的原始输入数据的每个单元的大小可能远远超过由
这种ai加速器支持的操作数大小。通过跨可以由ai加速器并行处理的多个通道划分原始输入数据的每个单元,本公开的各方面允许边缘设备对hdr图像数据执行推断操作而不损失信息或精度。
27.图1示出了根据一些实施方式的示例图像捕获和显示系统100的框图。系统100包括图像捕获设备110、图像处理器120和显示设备130。图像捕获设备110(诸如相机)从场景中捕获光101的图案并将光101转换为数字图像捕获数据102。图像捕获数据102可以包括表示场景的数字图像的像素(或像素值)阵列。在一些方面中,图像捕获设备110可以捕获表示视频内容的帧序列的图像捕获数据102的序列。显示设备130(诸如电视、计算机监视器、智能电话、或包括电子显示器的任何其他设备)通过在相关联的显示表面上再现光图案来渲染或显示数字图像。尽管在图1中描绘为独立块,但在实际实施方式中,图像处理器120可并入或以其它方式包含于图像捕获设备110、显示设备130或其组合中。
28.图像处理器120将图像捕获数据102转换为更准确地反映由图像捕获设备110捕获的原始场景的图像渲染数据103。例如,与使用图像捕获数据102相比,使用图像渲染数据103在显示设备130上可以更准确地再现原始场景。在一些实施方式中,图像处理器120可以被配置为校正图像捕获数据102中的各种像素失真以改善数字图像的质量。示例像素失真包括但不限于渐晕、像差和噪声。在一些其它实施方式中,图像处理器120可被配置为基于显示设备130的能力改变图像捕获数据102的分辨率。例如,图像渲染数据103可以是超分辨率(sr)图像或被缩放以匹配显示设备130的分辨率的上转换(upconverted)图像。
29.在一些实施方式中,图像处理器120可以至少部分地基于通过机器学习训练的神经网络模型122来生成图像渲染数据103。机器学习是用于提高计算机系统或应用执行特定任务的能力的技术。在训练阶段期间,可以向机器学习系统提供多个“答案”和要映射到每个答案的一组或多组原始数据。例如,机器学习系统可以被训练为通过向系统提供在低光条件下捕获的场景的大量短曝光图像(其表示原始数据)和包含很少或不包含噪声的同一场景的一个或多个代表性图像(其表示答案)来对低光图像执行去噪操作。然后,机器学习系统可以对原始数据执行统计分析,以确定可以与噪声相关联的共同特征集(也称为“规则”)。
30.深度学习是机器学习的特定形式,其中正被训练的模型是多层神经网络。由于在深度学习架构中处理信息的方式(类似于生物神经系统),深度学习架构通常被称为人工神经网络。例如,深度学习架构的每个层可以由多个人工神经元组成。神经元可以跨各种层互连,使得输入数据(诸如原始数据)可以从一层传递到另一层。更具体地,每个神经元层可以对输入数据执行不同类型的变换,这将最终导致期望的输出(诸如去噪图像)。神经元的互连框架可以被称为神经网络模型。因此,在一些实施方式中,神经网络模型122可以表示可以用于“推断”低光图像的去噪表示的一组规则。
31.图2示出了根据一些实施方式的示例图像处理器200的框图。在一些实施方式中,图像处理器200可为图1的图像处理器120的一个示例。因此,图像处理器200可被配置为接收输入图像202并且基于输入图像202推断输出图像206。例如,输入图像202可以与图像捕获数据102相关联,并且输出图像206可以与图像渲染数据103相关联。
32.在一些实施方式中,图像处理器200可以通过对输入图像202执行去噪操作来生成输出图像206,该去噪操作减少与其相关联的噪声量。在图2的示例中,输入图像202描绘在
低光条件下由图像捕获设备(诸如图像捕获设备110)捕获的场景。因此,图像202中描绘的场景看起来有噪声或有颗粒。例如,图像202中的像素的分布包含亮度和颜色的“尖峰”(诸如场景的亮区域中的暗像素和场景的暗区域中的亮像素)。相比之下,输出图像206中的像素的颜色和亮度遵循基本上平滑的分布。例如,在输出图像206中,场景的暗区域看起来是暗的并且场景的亮区域看起来是亮的。
33.在一些实施方式中,图像处理器200可以包括ai加速器210。ai加速器210可以包括被配置为加速神经网络推断的一个或多个处理器。例如,ai加速器210的硬件架构可以被设计为处理高度并行化的低精度计算。因此,ai加速器210可以比通用处理器快速或有效地遍历神经网络。ai加速器210可以基于神经网络模型208来实现神经网络。例如参考图1,神经网络模型208可以是神经网络模型122的一个示例。在一些实施方式中,ai加速器210可以至少部分地基于输入图像202来推断输出图像206。例如,神经网络模型208可以表示可以用于推断低光图像的去噪表示的一组规则。
34.ai加速器210可以通过调整与输入图像202相关联的一个或多个像素的值来产生输出图像206。因此,像素值表示原始输入数据的最小单元,ai加速器210可以对该原始输入数据的最小单元进行操作。在一些实施方式中,与输入图像202相关联的每个像素值中的位数(k)可以大于每个操作数中的位数(n)(k》n),ai加速器210可以对该操作数进行操作。例如,为了提高在边缘设备上进行推断的速度和效率,ai加速器210可以被配置为仅对8位操作数(n=8)进行操作。然而,在一些方面中,输入图像可以符合hdr图像格式。这样,与输入图像202相关联的每个像素值的大小可以基本上大于8位。例如,hdr像素值可以由12、16或24位(k=12、16或24)表示。
35.在一些方面中,图像处理器200可以将每个k位像素值转换为一个或多个n位输入,ai加速器210可以对该一个或多个n位输入进行操作。在一些实施方式中,每个k位像素值可被量化为相应n位值。量化减少了用于表示输入图像202的每个像素的位数,这导致ai加速器210的输入处的信息或精度的损失。例如,可以将与hdr图像相关联的每个24位原始像素值减少到相应的8位量化值,以用于由ai加速器210进行推断。如上所述,这种信息损失可能导致不准确的推断结果。例如,由于到ai加速器210的输入中的量化误差,输出图像206可以包括大量的残余噪声。
36.另一方面,本公开的各方面认识到,图像数据可以在多个通道中被编码。每个通道携带与输入图像的相应分量相关联的数据。例如,彩色图像数据可以被编码成红色(r)、绿色(g)和蓝色(b)颜色通道。这样,输入图像的每个像素可以由相应的r像素值(在r颜色通道中)、相应的g像素值(在g颜色通道中)、和相应的b像素值(在b颜色通道中)表示。每个像素值指示该像素的相应颜色分量的亮度。因此,每个颜色通道包含关于特定滤色器的输入图像的灰度表示。本公开的各方面还认识到,因为像素值描述相应像素的特定分量,所以属于给定通道的每个像素值可以由ai加速器210作为输入数据的单独单元来处理。
37.因此,在一些其他实施方式中,每个k位像素值可以被细分为某一数目(m)的分区,其中每个分区与输入图像202的相应通道相关联。更具体地,m个分区中的每一个可以包括至多n位像素数据,使得。例如,24位像素值可以被细分为分别与输入图像202的三个通道相关联的三个8位分区(m=3)。第一通道可以包括与输入图像202相关联的每个像素
值的8个最高有效位或最高有效字节(msb),第二通道可以包括与输入图像202相关联的每个像素值的中间8位,并且第三通道可以包括与输入图像202相关联的每个像素值的8个最低有效位或最低有效字节(lsb)。因为每个分区的大小等于ai加速器210的操作数大小(n),并且因为每个分区表示与输入图像202的相应通道相关联的数据,所以ai加速器210可以并行地对m个分区进行操作。
38.因此,通过将每个k位像素值细分为m个分区,ai加速器210可以在不损失信息或精度的情况下处理hdr图像的每个像素。更具体地,这种划分允许ai加速器210对每个像素值的所有k位进行操作。因此,ai加速器210可以以比在量化输入数据的情况下原本可能的更高的准确度和精度执行推断操作。例如,允许ai处理器210对每个像素值的所有k位(而不是n位量化值)进行操作可以减少输出图像206中的残余噪声的量。尽管在对hdr图像执行的去噪操作的上下文中进行了描述,但是本实施方式可以适合于各种其他应用。示例合适的应用可以包括但不限于超分辨率(sr)成像和各种其他推断操作,对其而言输入数据的原始单元可以大于ai加速器210的操作数大小。
39.图3示出了根据一些实施方式的示例机器学习系统300的框图。在一些实施方式中,机器学习系统300可以是图2的图像处理器200的一个示例。例如,机器学习系统300可以被配置为基于神经网络模型308根据输入图像302推断输出图像306。在一些实施方式中,机器学习系统300可以以无损方式执行这种推断,使得根据神经网络模型308处理输入图像302的每个位。
40.机器学习系统300包括位划分电路310和n位处理器320。在一些实施方式中,n位处理器320可以被配置为实现神经网络模型308以执行推断操作,该推断操作至少部分地基于输入图像302产生输出图像306。示例推断操作可以包括但不限于去噪操作和sr成像操作。例如参考图2,n位处理器320可以是ai加速器210的示例实施方式。更具体地,n位处理器320可能仅能够处理大小为n位的数据单元。例如,n位处理器320可以包括一个或多个寄存器、数据总线或算术逻辑单元(alu),其被配置为存储、传送n位操作数、或对n位操作数进行操作。在一些实施方式中,n位处理器320可以是8位处理器(n=8)。
41.在一些方面中,与输入图像302相关联的每一原始像素值可由某一位数(k)表示,其中k》n。例如,输入图像302可以是具有长度为12、16或24位的原始像素值的hdr图像。在一些实施方式中,位划分电路310可被配置为跨某一数目(m)的通道ch_1-ch_m划分输入图像302,其中。更具体地,位划分电路310可以将与输入图像302相关联的每个像素值细分为m个分区,使得每个分区与通道ch_1-ch_m中的相应一个一致。换句话说,通道ch_1-ch_m中的每一个可以包括与输入图像302相关联的每个k位像素值中的位的相应子集。例如,第一通道ch_1可以包括像素值的msb,并且第m通道ch_m可以包括像素值的lsb。因此,像素数据的m个通道共同表示分区输入图像304。
42.图4a示出了由像素值阵列形成的示例输入图像400。在一些实施方式中,输入图像400可以是由位划分电路310接收的输入图像302的一个示例。如图4a所示,输入图像400具有高度(h)和宽度(w)。与输入图像400相关联的每个像素值的长度为24位(k=24)。为了简单起见,在图4a的示例中仅描绘了单个数据通道。这样,与输入图像400相关联的每个像素值可以属于相同的24位通道。然而,在实际实施方式中,24位通道可以是与输入图像400相关
联的多个数据通道之一。例如,24位通道可以表示输入图像400的特定颜色通道(诸如r、g或b)。因此,输入图像400可以包括一个或多个附加颜色通道(为简单起见未示出)。
43.图4b示出了由跨多个通道划分的像素值阵列形成的示例输入图像410。在一些实施方式中,输入图像410可以是由位划分电路310输出的分区输入图像304的一个示例。例如参考图4a,可以通过跨三个8位通道ch_1-ch_3(m=3)划分输入图像400来创建输入图像410。例如,位划分电路310可以将输入图像400的每个24位像素值细分为三个8位分区,每个8位分区与通道ch_1-ch_3中的相应通道一致。如图4b所示,第一通道ch_1可以携带与输入图像400相关联的每个像素值的msb,第二通道ch_2可以携带与输入图像400相关联的每个像素值的中间8位,并且第三通道ch_3可以携带与输入图像400相关联的每个像素值的lsb。这样,通道ch_1-ch_3中的每一个表示具有与输入图像400相同的尺寸(h
×
w)的图像。
44.8位处理器(诸如图3的n位处理器320)可能无法对输入图像400的24位像素值中的任一个(作为24位操作数)进行操作,但是可能能够对输入图像410的每个8位分区进行操作。更具体地,ai加速器可以能够同时或并行地处理所有三个8位分区。因此,通过跨m个通道划分输入图像302,其中每个通道包括与输入图像302相关联的每个像素值的至多n位,位划分电路310可以以能够由n位处理器320处理而没有任何信息或精度损失的方式重新表征每个像素值。为了确保推断结果的准确性,应当在机器学习的训练和推断阶段期间使用相同(或相似)类型的输入数据。因此,在一些实施方式中,可以在跨多个通道划分的输入图像(诸如分区输入图像304)上训练神经网络308。
45.在一些方面中,机器学习系统300可以在推断操作期间保持输入图像302的分辨率和动态范围。换句话说,与输出图像306相关联的每个像素值可以由与和输入图像302相关联的每个像素值相同的位数(k)表示。在一些实施方式中,n位处理器320可以以保留与分区输入图像304相关联的m个通道的方式执行推断操作。因此,与输出图像306相关联的每个k位像素值也可以被细分为m个分区(诸如图4b所示)。
46.图5示出了根据一些实施方式的示例机器学习系统500的框图。在一些实施方式中,机器学习系统500可以被配置为至少部分地基于输入图像502和地面实况(ground truth)图像512来训练神经网络模型508。在一些实施方式中,神经网络模型508可以是图3的神经网络模型308的一个示例。因此,神经网络模型508可以表示可以用于推断输出图像(诸如输出图像306)的一组规则。
47.机器学习系统500包括位划分电路510、神经网络520和损失计算器530。在一些实施方式中,机器学习系统500可以训练神经网络520以基于一个或多个输入图像502再现地面实况图像512。地面实况图像512可以是理想条件下的场景的代表性图像(类似于图2的输出图像206)。相比之下,可以在非理想条件下捕获每个输入图像502(类似于图2的输入图像202)。在一些方面中,神经网络520可以由被配置为处理n位操作数的n位处理器来实现。例如,n位处理器可以包括被配置为存储、传送n位操作数或、对n位操作数进行操作的一个或多个寄存器、数据总线、或alu。在一些实施方式中,神经网络520可由8位处理器(n=8)实现。
48.在一些实施方式中,位划分电路510可以是图3的位划分电路310的一个示例。更具体地,位划分电路510可以执行与位划分电路310相同或相似的功能。例如,位划分电路510可以被配置为跨m个通道ch_1-ch_m划分输入图像502。更具体地,位划分电路510可以将与
输入图像502相关联的每个k位像素值细分为m个分区,其中,使得每个分区与通道ch_1-ch_m中的相应一个一致。这样,通道ch_1-ch_m中的每一个可以包括与输入图像502相关联的每个k位像素值中的位的相应子集。例如,第一通道ch_1可以包括像素值的msb,并且第m通道ch_m可以包括像素值的lsb。因此,m个通道的像素数据共同表示分区输入图像504(类似于图3的分区输入图像304)。
49.神经网络520接收分区输入图像504并尝试重建地面实况图像512。例如,神经网络520可以形成跨多层人工神经元的连接的网络,其以分区输入图像504开始并导致输出图像506。连接被加权(基于一组权重514)以产生非常类似于地面实况图像512的输出图像506。更具体地,每个人工神经元可以从神经网络520的先前层接收加权输入数据,并且可以基于神经网络算法将函数或变换应用于加权输入数据。以这种方式,神经网络520可以在算法上调整输入图像502的每个像素值以达到输出图像506。在一些方面中,训练操作可以在多次迭代中执行。在每次迭代中,神经网络520接收分区输入图像504,并基于跨人工神经元的层的加权连接产生相应的输出图像506,并且损失计算器530基于输出图像506和地面实况图像512之间的损失(或误差)量来更新与连接相关联的权重514。
50.在一些实施方式中,可以以其中n位处理器320基于分区输入图像304推断输出图像306的相同或类似方式训练神经网络520。例如,与分区输入图像504相关联的像素值可以被分区以与m个通道ch_1-ch_m一致(诸如参考图3-4b所描述的)。这样,可以训练神经网络520以在产生输出图像506时将每个分区处理为输入数据的相应单元。在一些方面中,神经网络520可以并行地处理与每个像素值相关联的m个分区。当满足特定收敛标准时(诸如当损失下降到阈值水平以下时或在预定数量的训练迭代之后),神经网络520可以输出加权连接作为神经网络模型508。
51.在一些方面中,神经网络520可以在训练操作期间保持输入图像502的分辨率和动态范围。换句话说,与输出图像506相关联的每个像素值可以由与和输入图像502相关联的每个像素值相同的位数(k)表示。在一些实施方式中,神经网络520可以以保留与分区输入图像504相关联的m个通道的方式执行推断操作。因此,与输出图像506相关联的每个k位像素值也可以被细分为m个分区(诸如图4b中所示)。
52.在图2-5的示例中,已经在基于输入图像推断输出图像的神经网络模型的上下文中描述了位划分技术(诸如分别由图3和图5的位划分电路310和510执行的位划分技术)。在一些其他实施方式中,本公开的位划分技术可以用于各种其他神经网络应用,对其而言推断可以不是图像(诸如对象检测、对象分类和面部识别,除了其他示例之外)。换句话说,参考图2-5描述的位划分技术可用于以无损方式对各种类型的输入数据执行各种类型的推断操作。类似地,参考图2-5描述的位划分技术也可以用于以无损方式在各种类型的输入数据上训练神经网络模型。
53.图6示出了根据一些实施方式的描绘示例推断操作600的说明性流程图。在一些实施方式中,示例操作600可以由诸如图3的机器学习系统300之类的机器学习系统执行。例如,机器学习系统可以至少部分地基于输入图像来推断输出图像。在一些方面中,输入图像可以是hdr图像。
54.机器学习系统接收与输入图像相关联的某一位数(k)的像素数据(610)。在一些实
施方式中,输入图像可以符合hdr图像格式。因此,与输入图像相关联的每个像素值的大小可以基本上大于8位。例如,hdr像素值可以由12、16或24位(k=12、16或24)表示。
55.机器学习系统基于每个操作数(由ai加速器对其进行操作)中的位数(n)将k位细分为某一数目(m)的分区,其中n《k,并且其中ai加速器被配置为将m个分区并行地处理为分别与输入图像的m个通道相关联的数据(620)。例如,ai加速器可以被配置为对8位操作数(n=8)进行操作。在一些实施方式中,m个分区中的每一个可以包括至多n位像素数据,使得。在一些实施方式中,第一通道可包括与输入图像相关联的每个像素值的msb,并且第m通道可包括与输入图像相关联的每个像素值的lsb。因为每个分区的大小小于或等于ai加速器的操作数大小,并且因为每个分区表示与输入图像的相应通道相关联的数据,所以ai加速器可能能够并行地对m个分区进行操作。
56.机器学习系统还至少部分地基于ai加速器处理m个第一分区来执行与输入图像相关联的推断操作(630)。示例合适的推断操作可以包括但不限于去噪操作、sr成像操作、以及各种其他推断操作,对其而言输入数据的原始单元可以大于ai加速器的操作数大小。通过将每个k位像素值细分为m个分区,ai加速器可以在不损失信息或精度的情况下处理hdr图像的每个像素。更具体地,这种划分允许ai加速器对每个像素值的所有k位进行操作。因此,ai加速器可以以比在量化输入数据的情况下原本可能的更高的准确度和精度执行推断操作。
57.图7示出了描绘根据一些实施方式的用于训练神经网络的示例操作700的说明性流程图。在一些实施方式中,示例操作700可以由机器学习系统(诸如图5的机器学习系统500)执行,以训练神经网络以基于输入图像推断输出图像。
58.机器学习系统接收与描绘场景的输入图像相关联的某一位数(k)的像素数据(710)。在一些实施方式中,输入图像可以符合hdr图像格式。因此,与输入图像相关联的每个像素值的大小可以基本上大于8位。例如,hdr像素值可以由12、16或24位(k=12、16或24)表示。
59.机器学习系统基于每个操作数(由ai加速器对其进行操作)中的位数(n)将k位细分为某一数目(m)的分区,该ai加速器被配置为基于神经网络执行推断操作,其中n《k(720)。例如,ai加速器可以被配置为对8位操作数(n=8)进行操作。在一些实施方式中,m个分区中的每一个可以包括至多n位像素数据,使得。在一些实施方式中,第一通道可包括与输入图像相关联的每个像素值的msb,并且第m通道可包括与输入图像相关联的每个像素值的lsb。因为每个分区的大小小于或等于ai加速器的操作数大小,并且因为每个分区表示与输入图像的相应通道相关联的数据,所以ai加速器可能能够并行地对m个分区进行操作。
60.机器学习系统还训练神经网络以将m个分区并行地处理为分别与输入图像的m个通道相关联的数据,并且至少部分地基于对m个分区的处理来执行推断操作(730)。在一些实施方式中,可以训练神经网络以基于输入图像再现代表性图像(也称为地面实况图像)。例如,可以在多次迭代中执行训练操作。在每次迭代中,神经网络接收分区输入图像,并基于跨人工神经元的层的一组加权连接产生相应的输出图像。损失计算器基于在每次迭代中产生的地面实况图像与输出图像之间的损失(或误差)量来更新与连接相关联的权重。当满
足特定收敛标准时(诸如当损失下降到阈值水平以下时或在预定数量的训练迭代之后),神经网络可以输出加权连接作为神经网络模型。
61.本领域技术人员将理解,信息和信号可以使用各种不同的技术和技艺中的任何一种来表示。例如,可以通过电压、电流、电磁波、磁场或磁粒子、光场或光粒子、或其任何组合来表示可以贯穿以上描述引用的数据、指令、命令、信息、信号、位、符号和码片。
62.另外,所属领域的技术人员将了解,结合本文中所公开的方面所描述的各种说明性逻辑块、模块、电路和算法步骤可实现为电子硬件、计算机软件、或两者的组合。为了清楚地说明硬件与软件的此可互换性,上文已大体上在其功能性方面描述了各种说明性部件、块、模块、电路和步骤。这种功能性是实现为硬件还是软件取决于特定应用及强加于整个系统上的设计约束。所属领域的技术人员可针对每个特定应用以不同方式实现所描述的功能性,但这种实施方式决策不应被解释为导致脱离本公开的范围。
63.结合本文中所公开的方面描述的方法、序列或算法可直接体现于硬件中、由处理器执行的软件模块中、或两者的组合中。软件模块可以驻留在ram存储器、闪存、rom存储器、eprom存储器、eeprom存储器、寄存器、硬盘、可移动盘、cd-rom、或本领域已知的任何其他形式的存储介质中。示例性存储介质耦合到处理器,使得处理器可以从存储介质读取信息和向存储介质写入信息。在替代方案中,存储介质可以集成到处理器。
64.在前述说明书中,已经参考其具体示例描述了实施例。然而,显而易见的是,在不脱离如所附权利要求中阐述的本公开的更宽范围的情况下,可以对其进行各种修改和改变。因此,说明书和附图被认为是说明性的而不是限制性的。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献