CN117496098A - 使用深度神经网络的稀疏颜色重建 - Google Patents
使用深度神经网络的稀疏颜色重建 Download PDFInfo
- Publication number
- CN117496098A CN117496098A CN202310962164.1A CN202310962164A CN117496098A CN 117496098 A CN117496098 A CN 117496098A CN 202310962164 A CN202310962164 A CN 202310962164A CN 117496098 A CN117496098 A CN 117496098A
- Authority
- CN
- China
- Prior art keywords
- values
- input image
- image
- color values
- color
- 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
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 81
- 238000000034 method Methods 0.000 claims abstract description 54
- 230000015654 memory Effects 0.000 claims description 19
- 238000005516 engineering process Methods 0.000 abstract description 6
- 238000012549 training Methods 0.000 description 59
- 230000003287 optical effect Effects 0.000 description 35
- 230000000007 visual effect Effects 0.000 description 23
- 230000009471 action Effects 0.000 description 17
- 230000000875 corresponding effect Effects 0.000 description 15
- 238000010586 diagram Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 13
- 238000012545 processing Methods 0.000 description 12
- 238000005259 measurement Methods 0.000 description 11
- 238000003384 imaging method Methods 0.000 description 10
- 210000001747 pupil Anatomy 0.000 description 9
- 238000005286 illumination Methods 0.000 description 8
- 230000008901 benefit Effects 0.000 description 7
- 238000004590 computer program Methods 0.000 description 6
- 230000004044 response Effects 0.000 description 6
- 238000013519 translation Methods 0.000 description 6
- 230000003190 augmentative effect Effects 0.000 description 5
- 238000003708 edge detection Methods 0.000 description 5
- 238000010801 machine learning Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000009877 rendering Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 4
- 230000004075 alteration Effects 0.000 description 3
- 229920001621 AMOLED Polymers 0.000 description 2
- 230000004913 activation Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 210000003128 head Anatomy 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000001228 spectrum Methods 0.000 description 2
- 241000226585 Antennaria plantaginifolia Species 0.000 description 1
- 241000579895 Chlorostilbon Species 0.000 description 1
- 206010034960 Photophobia Diseases 0.000 description 1
- 206010034972 Photosensitivity reaction Diseases 0.000 description 1
- 241000287181 Sturnus vulgaris Species 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 239000006117 anti-reflective coating Substances 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 201000009310 astigmatism Diseases 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000000740 bleeding effect Effects 0.000 description 1
- 238000000576 coating method Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 229910052876 emerald Inorganic materials 0.000 description 1
- 239000010976 emerald Substances 0.000 description 1
- 238000010348 incorporation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 208000013469 light sensitivity Diseases 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 108091008695 photoreceptors Proteins 0.000 description 1
- 230000036211 photosensitivity Effects 0.000 description 1
- 230000010287 polarization Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 210000001525 retina Anatomy 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4015—Image demosaicing, e.g. colour filter arrays [CFA] or Bayer patterns
-
- 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
- G06N3/0455—Auto-encoder networks; Encoder-decoder 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/0464—Convolutional networks [CNN, ConvNet]
-
- 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/20—Scenes; Scene-specific elements in augmented reality scenes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/20—Indexing scheme for editing of 3D models
- G06T2219/2012—Colour editing, changing, or manipulating; Use of colour codes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- General Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Computer Hardware Design (AREA)
- Computer Graphics (AREA)
- Multimedia (AREA)
- Architecture (AREA)
- Image Analysis (AREA)
Abstract
本发明的一个实施例提出了一种用于执行稀疏颜色重建的技术。该技术包括:确定与第一输入图像相关联的多组像素值,其中,该多组像素值包括来自该第一输入图像的第一组亮度值和来自该第一输入图像的第一组稀疏颜色值。该技术还包括:经由神经网络,将一个或多个下采样操作和一个或多个上采样操作应用于与多组像素值相关联的特征图,以生成输出图像,该输出图像包括第一输入图像的第二组颜色值,其中,该第二组颜色值大于第一组稀疏颜色值。
Description
相关申请的交叉引用
本申请要求于2022年8月2日提交的、申请号为17/879,334的美国非临时专利申请的优先权和权益,其全部内容通过引用结合在本申请中。
技术领域
本公开的实施例总体上涉及机器学习和计算机视觉,并且更具体地,涉及使用深度神经网络的稀疏颜色重建。
背景技术
可穿戴设备(例如,虚拟现实(virtual reality,VR)、增强现实(augmentedreality,AR)和/或混合现实(mixed reality,MR)头戴式设备(headset))可以包括采集用户周围的物理空间的摄像头。例如,可穿戴设备可以包括一个或多个摄像头传感器,该一个或多个摄像头传感器采集来自用户周围的环境的光线。然后,来自该一个或多个摄像头传感器的像素值可以与AR内容、VR内容或其他生成的内容组合成图像或视频,这些图像或视频由可穿戴设备上的显示器输出给用户。
在一些情况下,可穿戴设备上的摄像头传感器往往比数码相机和其他类型的电子设备上的摄像头传感器更小、分辨率更低。例如,AR或VR头戴式设备中的摄像头传感器可能包括数百万的像素,而手机或数码相机中的摄像头传感器可能包括数千万的像素。此外,AR或VR头戴式设备上的摄像头传感器可以包括比手机或数码相机中的摄像头传感器更少数量的像素尺寸相同的像素,或者包括相同数量的但像素尺寸更小的像素。
可穿戴设备上较小的传感器分辨率和像素尺寸可能会对可穿戴设备上的摄像头所生成的图像的质量产生负面影响。例如,可穿戴设备的摄像头传感器中较小的像素尺寸会导致摄像头传感器对光较不敏感,而对噪声更加敏感。在弱光条件下,摄像头传感器中的给定像素的信噪比(signal to noise ratio,SNR)会进一步下降,从而导致更大的视觉细节的损失。当滤色器被放置在摄像头传感器中的感光点之上以允许摄像头传感器采集彩色图像(例如,通过测量来自环境的红色、绿色和蓝色(red,green,and blue,RGB)颜色值)时,摄像头传感器的灵敏度被进一步降低,这是因为每个滤色器仅让一小部分可用光进入对应的感光点。同时,摄像头传感器中的较少的像素数量降低了摄像头传感器所生成的图像的空间分辨率。
如上所述,本领域需要的是使用可穿戴设备上的摄像头传感器来采集图像的、更有效的技术。
发明内容
本发明的一个实施例提出了一种用于执行颜色重建的技术。该技术包括:确定与第一输入图像相关联的多组像素值,其中,该多组像素值包括来自该第一输入图像的第一组亮度值和来自该第一输入图像的第一组稀疏颜色值。该技术还包括:经由神经网络,将一个或多个下采样操作和一个或多个上采样操作应用于与多组像素值相关联的特征图,以生成输出图像,该输出图像包括第一输入图像的第二组颜色值,其中,该第二组颜色值大于第一组稀疏颜色值。
所公开的技术相对于现有技术的一个技术优势在于:输出图像将一组具有更高的光敏感度的全色白色像素所采集的视觉细节与一组稀疏彩色像素所采集的颜色信息相结合。因此,与使用类似尺寸的RGB传感器来生成彩色图像的传统技术相比,所公开的技术提供了更好的低光性能和图像质量。这些技术优势提供了对现有技术方法的一项或多项技术改进。
附图说明
为了可以详细理解各种实施例的上述特征,可以参考各种实施例对上面简要概述的发明概念进行更具体的描述,这些实施例中的一些实施例在附图中示出。然而,应当注意的是,附图仅示出了本发明概念的典型实施例,因此不应被视为以任何方式限制范围,并且存在其他等效的实施例。
图1示出了被配置为实现各种实施例的一个或多个方面的系统。
图2是根据各种实施例的图1的训练引擎和执行引擎的更详细的图示。
图3A示出了根据各种实施例的用于图2的红、绿、蓝、白(red,green,blue,white,RGBW)传感器的示例滤色器阵列图案。
图3B示出了根据各种实施例的用于图2的RGBW传感器的示例滤色器阵列图案。
图4是根据各种实施例的用于训练神经网络以执行稀疏颜色重建的方法步骤的流程图。
图5是根据各种实施例的用于执行稀疏颜色重建的方法步骤的流程图。
图6是根据各种实施例的控制台在其中操作的近眼显示(near-eye display,NED)系统的实施例的框图。
图7A是根据各种实施例的NED的示意图。
图7B是根据各种实施例的NED的另一示意图。
具体实施方式
在以下描述中,阐述了许多具体的细节,以提供对各种实施例的更透彻的理解。然而,对于本领域的技术人员来说,显而易见的是,可以在没有这些具体细节中的一个或多个细节的情况下,对本发明的概念进行实践。
概述
如上面所讨论的,AR、VR和其他类型的可穿戴设备上的摄像头传感器往往比手机或数码相机上的摄像头传感器分辨率更低、像素更小。这些较小的传感器和像素尺寸可能会对可穿戴设备所采集的图像的质量产生负面影响,特别是在光线较弱的情况下。
为了解决这些问题,所公开的实施例使用深度神经网络根据红、绿、蓝、白(RGBW)摄像头传感器所采集的像素值来重建彩色图像。RGBW摄像头传感器包括一组全色白色像素,该一组全色白色像素包括透明滤色器。这些透明滤色器允许这些全色白色像素采集场景中的光强度和视觉细节。RGBW传感器还包括一组较小的红、绿、蓝(RGB)像素,该一组RGB像素采集该场景中的颜色信息。例如,RGBW摄像头传感器可以包括大比例的全色白色像素、以及小比例(例如,1%、5%、11%、16%等)的RGB像素。大比例的白色像素允许RGBW摄像头传感器采集场景中的光强度和视觉细节,而较小比例的RGB像素用于对该场景的各个部分的颜色信息进行采样。
深度神经网络的输入包括灰度图像、边缘图像和三通道RGB图像,该灰度图像包括来自全色白色像素的亮度像素值,该边缘图像包括来自该灰度图像的边缘信息,该三通道RGB图像包括来自RGB像素的稀疏RGB像素值。深度神经网络包括U-Net架构,该U-Net架构对与输入相关联的特征图执行逐步下采样,随后对这些特征图执行逐步上采样。深度神经网络还包括如下项之间的跳跃连接:下采样层的输出;和处于相同分辨率的对应上采样层的输出。深度神经网络的输出包括场景的全彩色图像,该全彩色图像将来自灰度图像的视觉细节与来自稀疏RGB图像的颜色信息相结合。
系统概述
图1示出了被配置为实现各种实施例的一个或多个方面的计算设备100。在一个实施例中,计算设备100可以是台式计算机、膝上型计算机、智能手机、个人数字助理(personal digital assistant,PDA)、平板计算机、服务器、或被配置为接收输入、处理数据以及可选地显示图像、并且适于实践一个或多个实施例的任何其他类型的计算设备。计算设备100被配置为运行位于内存116中的训练引擎122和执行引擎124。
要注意的是,本文所描述的计算设备是说明性的,并且任何其他技术上可行的配置均落入本公开的范围内。例如,训练引擎122和执行引擎124的多个实例可以在分布式系统中的一组节点上执行,以实现计算设备100的功能。
在一个实施例中,计算设备100包括但不限于互连件(总线)112,该互连件(总线)连接一个或多个处理器102、输入/输出(input/output,I/O)设备接口104(该I/O设备接口104耦接到一个或多个输入/输出(I/O)设备108)、内存116、存储器114以及网络接口106。一个或多个处理器102可以是被实现为以下项的任何合适的处理器:中央处理单元(centralprocessing unit,CPU)、图形处理单元(graphics processing unit,GPU)、专用集成电路(ASIC)、现场可编程门阵列(application-specific integrated circuit,FPGA)、人工智能(artificial intelligence,AI)加速器、任何其他类型的处理单元或不同处理单元的组合(例如,被配置为与GPU结合操作的CPU)。通常,一个或多个处理器102可以是能够处理数据和/或执行软件应用程序的任何技术上可行的硬件单元。此外,在本公开的上下文中,计算设备100中所示出的计算元件可以对应于物理计算系统(例如,数据中心中的系统),或者可以是在计算云中执行的虚拟计算实例。
I/O设备108包括能够提供输入的设备(例如,键盘、鼠标和触摸屏等),还包括能够提供输出的设备(例如,显示设备)。此外,I/O设备108可以包括能够接收输入和提供输出这两者的设备,例如,触摸屏和通用串行总线(universal serial bus,USB)端口等。I/O设备108可以被配置为从计算设备100的终端用户(例如,设计者)接收各种类型的输入,并且还向该计算设备100的终端用户提供各种类型的输出,这些输出例如为,所显示的数字图像、或数字视频或文本。在一些实施例中,多个I/O设备108中的一个或多个I/O设备被配置为将计算设备100耦接到网络110。
网络110是允许在计算设备100和外部实体或设备之间交换数据的技术上可行的任何类型的通信网络,所述外部实体或设备例如为,网络服务器或另一联网的计算设备。例如,网络110可以包括广域网(wide area network,WAN)、局域网(local area network,LAN)、无线(WiFi)网络和/或因特网等。
存储器114包括用于应用程序和数据的非易失性存储器,并且可以包括固定或可移动磁盘驱动器、闪存设备、以及只读光盘驱动器(CD-ROM)、高密度只读光盘(DVD-ROM)、蓝光(Blu-Ray)、高清晰数字化视频光盘(HD-DVD)或其他磁、光或固态存储设备。训练引擎122和执行引擎124可以存储在存储器114中,并在被执行时被加载到内存116中。
内存116包括随机存取存储器(random access memory,RAM)模块、闪存单元、或任何其他类型的存储单元或它们的组合。一个或多个处理器102、I/O设备接口104和网络接口106被配置为从内存116读取数据、以及向内存116写入数据。内存116包括可以由一个或多个处理器102执行的各种软件程序、以及与所述软件程序相关联的应用程序数据,所述软件程序包括训练引擎122和执行引擎124。
在一些实施例中,训练引擎122训练机器学习模型,以执行与场景图像相关联的稀疏颜色重建。更具体地,训练引擎122训练深度神经网络以,给定多个像素位置的第一子集的一组光强度值和这些像素位置的第二子集的一组“稀疏”颜色值,来预测图像中所有像素位置的颜色像素值。例如,深度神经网络可以被训练成:基于图像中大比例(例如,84%至99%)的像素位置的亮度值、以及该图像中较小比例(例如,1%至16%)的像素位置的颜色值,来预测该图像中所有像素位置的RGB像素值。
执行引擎124执行经训练的机器学习模型,以将RGBW传感器所采集的图像转换为全彩色图像。经训练的机器学习模型的输入包括:由RGBW传感器中的全色白色像素采集的亮度值、从这些亮度值导出的边缘信息、以及由RGBW传感器中的RGB像素采集的颜色值。经训练的机器学习模型将这些输入转换成全彩色图像,该全彩色图像将亮度值所表示的视觉细节与来自稀疏颜色值的颜色信息相结合。
使用深度神经网络的稀疏颜色重建
图2是根据各种实施例的图1的训练引擎122和执行引擎124的更详细的图示。如上所述,训练引擎122和执行引擎124用于在稀疏颜色重建任务中训练和执行神经网络200。例如,训练引擎122和执行引擎124可以训练神经网络200以:给定场景的图像中的多个像素位置的一子集的一组亮度值220、以及该图像中的其余像素位置的一组颜色值224,来预测该图像中所有像素位置的RGB颜色值218。
如图2所示,神经网络200的输入包括与多通道图像对应的图像数据(也称为输入图像数据)212。在该多通道图像内,第一通道包括该多通道图像中的一组像素位置的一组亮度值220。例如,亮度值220可以包括由RGBW传感器202中具有由透明滤光器元件的感光点测量的全色白色像素值。第二通道包括根据亮度值220而生成的边缘像素值222。例如,可以通过将坎尼算子(Canny)、索贝尔算子(Sobel)、微分算子(differential)、罗伯茨算子(Roberts)和/或另一种类型的边缘检测技术应用于亮度值220来生成边缘像素值222。最后三个通道存储来自这样的一组像素位置的颜色值224:所述一组像素位置不同于和/或包括与亮度值220相关联的像素位置。例如,可以通过RGBW传感器202中的具有红色、绿色、蓝色或其他非透明滤色器的感光点来测量颜色值224。
在一些实施例中,神经网络200包括U-Net架构。该U-Net架构包括卷积编码器204,该卷积编码器根据图像数据212来生成经下采样的特征图226。该U-Net架构还包括解码器206,该解码器根据经下采样的特征图226来生成经上采样的特征图228。该U-Net架构还包括跳跃连接,这些跳跃连接将编码器204的各个层与解码器206中与相同特征图分辨率相关联的对应层相连接。
例如,编码器204可以包括一系列编码器块,这些编码器块根据图像数据212来生成经逐步下采样的特征图226。每个编码器块可以使用如下各项来对图像数据212或来自先前的编码器块的输入特征图执行下采样:两个3×3卷积、在每个3×3卷积之后的校正线性单元(rectified linear unit,RELU)激活函数、以及步长为2的2×2最大池化操作。该编码器块输出如下的特征图:该特征图具有比输入特征图更低的空间分辨率、以及比输入特征图更多的通道。解码器206可以包括一系列解码器块,这些解码器块根据经下采样的特征图226来生成经逐步上采样的特征图228。每个解码器块可以使用如下各项对来自最后的编码器块或先前的解码器块的输入特征图执行上采样:将输入特征图中的每个像素向量映射到2×2像素窗口的2×2上卷积、经上采样的特征图与来自编码器204的、具有相同分辨率的对应特征图的级联、两个3×3卷积、以及在每个3×3卷积之后的ReLU激活函数。
解码器206中的最后一层的输出包括输出图像216,该输出图像216具有输出图像216中的每个像素位置的颜色值218。例如,输出图像216可以包括这样的三个通道:所述三个通道为输出图像216中的每个像素位置指定红色值、绿色值和蓝色值(或与另一颜色模型相关联的颜色值218)。输出图像216中的视觉细节可以由图像数据212中的大多数像素位置的亮度值220来提供,并且输出图像216中的颜色可以由图像数据212中的较小比例的像素位置的颜色值224来提供。编码器204和解码器206可以使用边缘像素值222中的边缘信息,以防止颜色值224在亮度值220的边缘溢出。
在一个或多个实施例中,神经网络200适于与RGBW传感器202中的特定滤色器阵列图案和/或图像数据212中的一定程度的颜色稀疏度一起使用。例如,给定版本的神经网络200可以被训练和/或被执行,以根据如下的输入图像数据212生成多色的输出图像216:该输入的图像数据包括一定百分比(例如,1%、5%、11%、16%等)的颜色值224。给定版本的神经网络200也可以或替代地被训练和/或被执行,以根据如下的输入图像数据212生成输出图像216:该输入的图像数据包括根据RGBW传感器202中的某种滤色器阵列图案排列的红色、绿色、蓝色和白色像素值。
图3A示出了根据各种实施例的图2的RGBW传感器202的示例性滤色器阵列图案。如图3A所示,滤色器阵列图案包括6×6像素网格。该网格的中心包括四个彩色像素302至308,而该网格的其余部分包括全色白色像素。像素302是红色像素,像素304和306是绿色像素,并且像素308是蓝色像素。图3A中所示出的图案包括大约11%的彩色像素和大约89%的全色白色像素。
图3B示出了根据各种实施例的图2的RGBW传感器202的示例性滤色器阵列图案。如图3B所示,滤色器阵列图案包括18×18像素网格。该网格的中心包括四个彩色像素312至318,而该网格的其余部分包括全色白色像素。像素312是红色像素,像素314和316是绿色像素,并且像素318是蓝色像素。图3B中所示出的图案包括大约1%的彩色像素和大约99%的全色白色像素。
尽管图3A和图3B的滤色器阵列图案包括2×2彩色像素网格(该2×2彩色像素网格包括一个红色像素、一个蓝色像素和两个绿色像素),但是将要理解的是,RGBW传感器202可以包括彩色像素的其他布置和/或图案。例如,作为红色、绿色和/或蓝色像素的替代、或者除了红色、绿色和/或蓝色像素之外,RGBW传感器202可以包括青色、绿色、品红色、祖母绿和/或其他彩色像素。在另一示例中,RGBW传感器202可以包括沿水平行、沿竖直列、随机地和/或根据其他图案排列的彩色像素。在第三示例中,在RGBW传感器202中,测量亮度值和/或特定颜色的像素的数量和/或比例可以改变。
返回图2的论述,训练引擎122使用如下的训练数据214来训练神经网络200:该训练数据包括来自一组RGB图像230(或其他类型的多色图像)的像素值232。在一个或多个实施例中,像素值232包括:多个RGB图像230中的每个RGB图像230的一组像素位置的亮度值220、包括与亮度值220相关联的边缘信息的边缘像素值222、以及该多个RGB图像230中的每个RGB图像230中的一组不同(不相交的)的像素位置的颜色值224。例如,训练引擎122可以从一个或多个图像数据集中获得RGB图像230。训练引擎122可以根据神经网络200要适应的滤色器图案和/或颜色稀疏率,从每个RGB图像中的特定像素位置选择性地对红色颜色值、绿色颜色值和蓝色颜色值(统称为颜色值224)进行采样。训练引擎122还可以将每个RGB图像中剩余的像素位置的RGB像素值转换为灰度亮度值(也称为亮度值220)(例如,通过计算每个像素位置的红色值、绿色值和蓝色值的平均值或加权平均值)。在生成亮度值220之后,训练引擎122可以使用边缘检测技术来根据亮度值220计算边缘像素值222。
训练数据214还可以或替代地包括由一个或多个摄像头传感器测量的亮度值220和颜色值224。例如,分束器可以用于将来自同一场景的等量的光引导到两个或更多个摄像头传感器。一个摄像头传感器可以包括RGBW传感器202,该RGBW传感器采集单个图像,该单个图像包括一组像素位置处的亮度值220和一组不同的像素位置处的颜色值224。另一个摄像头传感器可以包括RGB传感器,该RGB传感器可以采集“地面真值”图像,该“地面真值”图像包括所有像素位置处的RGB像素值。这些摄像头传感器还可以或替代地包括单色灰度摄像头传感器和RGB摄像头传感器,该单色灰度摄像头传感器采集场景的第一图像内的所有像素位置的亮度值220,该RGB摄像头传感器采集该场景的第二图像内的所有像素位置的颜色值224。然后,可以通过对来自灰度图像中的某些像素位置的亮度值220进行采样、以及对来自RGB图像中的其他像素位置的颜色值224进行采样,来生成像素值232。
在确定了一批RGB图像230的像素值232之后,训练引擎122将像素值232输入到编码器204中,并且使用编码器204中的一系列编码器块根据像素值232来生成多组经逐步下采样的训练特征图234。训练引擎122还将来自编码器204的一些或所有训练特征图234输入到解码器206中的一系列解码器块中,并且使用这些解码器块生成多组经逐步上采样的训练特征图236。
训练引擎122针对输入到神经网络200中的每组像素值232,获得解码器输出210,该解码器输出包括对应的输出图像216。训练引擎122还计算以下项之间的一个或多个损失208:输出图像216;和从其中导出该组像素值232的对应的RGB图像230。然后,训练引擎122以最小化损失208的方式更新编码器204的参数和解码器206的参数。
例如,训练引擎122可以计算解码器输出210中的RGB像素值与RGB图像230中的对应地面真值像素值之间的L1损失、L2损失,和/或另一种误差的度量。训练引擎122还可以使用训练技术(例如,梯度下降和反向传播),来以减少解码器输出210与对应的RGB图像230中的地面真值像素值之间的后续的损失208的方式,迭代地更新编码器204的权重和解码器206的权重。
在一个或多个实施例中,训练引擎122使用来自RGB图像230的像素值232的固定尺寸的“分块(patch)”来训练神经网络200。例如,训练引擎122可以将多个RGB图像230中的每个RGB图像230分成256×256个分块,并针对每个分块生成像素值232。训练引擎122可以使用编码器204和解码器206来为每个分块生成训练特征图234和236、以及256×256个解码器输出210。然后,训练引擎122可以计算256×256个解码器输出与RGB图像230中的对应的256×256个分块之间的损失208,并且基于损失208来更新编码器204的参数和解码器206的参数。
在对神经网络200的训练完成之后,执行引擎124使用经训练的神经网络200来对未包括在神经网络200的训练数据214中的图像数据212执行稀疏颜色重建。例如,执行引擎124可以从RGBW传感器202所采集的图像获得亮度值220和颜色值224。执行引擎124还可以使用边缘检测技术来根据亮度值220生成边缘像素值222。然后,执行引擎124可以将亮度值220、边缘像素值222和颜色值224作为多通道图像输入编码器204中。执行引擎124可以使用编码器204中的一系列编码器块来生成与该多通道图像相关联的多组经下采样的特征图226。执行引擎124还可以使用解码器206中的一系列解码器块来生成与该多通道图像相关联的多组经上采样的特征图228。然后,执行引擎124可以从解码器206的最后一层获得输出图像216,该输出图像包括该多通道图像中每个像素位置的颜色值218。
如上所述,训练引擎122和执行引擎124包括如下的功能:该功能用于针对与RGBW传感器202相关联的各个滤色器阵列图案和/或稀疏率,训练和执行不同的神经网络200。训练引擎122和执行引擎124可以类似地被配置为训练和执行不同版本的神经网络200,以适应不同类型的输入和/或适应对该输入进行处理的不同方式。
首先,代替将边缘像素值222输入到神经网络200中或除了将边缘像素值222输入到神经网络200中之外,神经网络200还可以包括从图像数据212中的亮度值220学习边缘信息的一个或多个部件。例如,神经网络200可以包括这样的一个或多个分支和/或块:所述一个或多个分支和/或块根据亮度值220和/或颜色值224来生成边缘像素值222和/或边缘信息的其他表示。神经网络200可以包括附加的分支和/或块,这些附加的分支和/或块基于边缘像素值222、和/或与边缘像素值222、亮度值220和/或颜色值224相关联的特征图(例如,经下采样的特征图226和/或经上采样的特征图228)来生成输出图像216。
其次,神经网络200的输入可以包括多幅图像的亮度值220、边缘像素值222、颜色值224和/或其他类型的像素值。例如,用来执行对单个“目标”图像的稀疏颜色重建的图像数据212可以包括该目标图像的亮度值220、边缘像素值222和颜色值224,以及同一场景的一幅或多幅附加图像的亮度值220、边缘像素值222和/或颜色值224。可以由与RGBW传感器202包含在同一设备(例如,具有多个摄像头的手机)中的一个或多个摄像头传感器(例如,RGB传感器、单色传感器、其他RGBW传感器等)同时采集这些附加图像和该目标图像。为了处理这些附加图像的图像数据212,神经网络200可以包括一个或多个卷积层、变换块、注意机制(attention mechanisms)、和/或将来自附加图像的视觉细节、边缘信息和/或颜色信息结合到输出图像216中的其他部件。这些附加图像还可以或替代地被包括在RGBW传感器202所采集的图像时间序列中(例如,在“连拍”拍摄模式下采集的一系列图像、视频帧序列等)。为了处理该图像时间序列的图像数据212,神经网络200可以包括循环回路、变换块、时间块、和/或这样的其他部件:所述其他部件使用来自该序列中的一个或多个先前帧和/或一个或多个后续帧的特征图,为该序列中的目标图像生成输出图像216。
图4是根据各种实施例的用于训练神经网络以执行稀疏颜色重建的方法步骤的流程图。尽管这些方法步骤是结合图1和图2的系统来描述的,但是本领域的技术人员将理解的是,被配置为以任何顺序执行这些方法步骤的任何系统均落入本公开的范围内。
如图所示,在步骤402中,训练引擎122执行编码器神经网络,该编码器神经网络根据输入多通道图像来生成多组经下采样的特征图。例如,训练引擎122可以将包括训练图像的亮度值、边缘像素值、红色颜色值、绿色颜色值和蓝色颜色值的五通道图像、和/或该训练图像的固定尺寸的“分块”输入到U-Net架构的编码器部分。训练引擎122还可以使用该编码器中的一系列编码器块,根据该五通道图像来生成经逐步下采样的特征图。
在步骤404中,训练引擎122执行解码器神经网络,该解码器神经网络根据这些经下采样的特征图来生成多组经上采样的特征图。例如,训练引擎122可以使用U-Net架构的解码器部分中的一系列解码器块,以根据编码器神经网络输出的一些或所有经下采样的特征图来生成经逐步上采样的特征图,直到达到目标分辨率。每个解码器块的输入可以包括由该系列解码器块中的先前的解码器块输出的特征图、和/或由该编码器神经网络中的对应的编码器块生成的经下采样的特征图。
在步骤406中,训练引擎122基于解码器神经网络所生成的输出图像和与输入多通道图像相关联的地面真值图像之间的一个或多个损失,来更新编码器神经网络的参数和解码器神经网络的参数。例如,该输出图像可以包括该输入多通道图像中的每个像素位置的红色值、绿色值、蓝色值和/或其他颜色值。该地面真值图像可以对应于该输入多通道图像的“全色”版本,该输入多通道图像包括相同的像素位置的红色值、绿色值、蓝色值和/或其他颜色值。训练引擎122可以计算该输出图像中的颜色值与该地面真值图像中的对应颜色值之间的L1损失、L2损失和/或另一种误差的度量。训练引擎122然后可以使用梯度下降和反向传播以降低损失的方式来更新编码器神经网络中和解码器神经网络中的权重。
在步骤408中,训练引擎122确定对神经网络的训练是否完成。例如,当满足一个或多个条件时,训练引擎122可以确定训练完成。该一个或多个条件包括(但不限于):编码器神经网络和解码器神经网络的参数的收敛、损失降低到阈值以下、和/或一定数量的训练步骤、迭代、批处理和/或周期。当对神经网络的训练未完成时,训练引擎122继续执行步骤402至406。一旦满足该一个或多个条件,训练引擎122就结束训练神经网络的过程。
图5是根据各种实施例的用于执行稀疏颜色重建的方法步骤的流程图。尽管这些方法步骤是结合图1和图2的系统来描述的,但是本领域的技术人员将理解的是,被配置为以任何顺序执行这些方法步骤的任何系统均落入本公开的范围内。
如图所示,在步骤502中,执行引擎124生成多通道图像,该多通道图像包括:输入图像中的第一组像素位置的一组亮度值、与这些亮度值相关联的一组边缘像素值(也称为边缘图像)、以及该输入图像中的第二组像素位置的第一组稀疏颜色值(也称为第一组颜色值)。例如,执行引擎124可以从具有1%、5%、11%或16%的颜色稀疏度的RGBW传感器获得这些亮度值和颜色值。执行引擎124还可以使用边缘检测技术来将这些亮度值转换为边缘像素值。
在步骤504中,执行引擎124经由编码器神经网络,根据该多通道图像和/或与另一输入图像相关联的附加特征图来生成多组经下采样的特征图。例如,执行引擎124可以将多通道图像输入到一系列编码器块中。执行引擎124还可以将这些编码器块为另一图像(例如,由不同的摄像头采集的图像、和/或在不同时间点采集的图像)生成的一个或多个特征图输入到这些编码器块中的一些或全部编码器块中。然后,执行引擎124可以使用该一系列编码器块来生成与该输入图像和/或其他图像相关联的经逐步下采样的特征图。
在步骤506中,执行引擎124经由解码器神经网络,根据这些经下采样的特征图来生成多组经上采样的特征图。例如,执行引擎124将解码器神经网络中的一系列解码器块应用于该编码器神经网络中的编码器块所生成的一些或所有特征图,以生成与输入图像相关联的经逐步上采样的特征图。
在步骤508中,执行引擎124获得输出图像,该输出图像包括输入图像中的第一组和第二组像素位置的第二组颜色值。例如,执行引擎124可以从解码器神经网络的最后一层获得该输出图像。该输出图像可以包括三个颜色通道,该三个颜色通道用于存储输入图像中的每个像素位置的红色像素值、绿色像素值和蓝色像素值。在该输出图像内,像素值包括与多通道图像中的亮度值相关联的视觉细节、以及该多通道图像中的第一组颜色值所提供的颜色“提示”。
人工现实系统环境
本公开的实施例可以包括人工现实系统(artificial reality system),或者结合人工现实系统来实现。人工现实是在呈现给用户之前已经以某种方式进行了调整的现实形式,该人工现实例如可以包括虚拟现实(VR)、增强现实(AR)、混合现实(mixed reality,MR)、混合现实(hybrid reality),或它们的某种组合和/或衍生物。人工现实内容可以包括完全生成的内容或与采集到的(例如,真实世界)内容相结合的生成的内容。人工现实内容可以包括视频、音频、触觉反馈或它们的某种组合,并且以上中的任何一种都可以以单通道或多通道(例如,给观看者带来三维效果的立体视频)来呈现。此外,在一些实施例中,人工现实还可以与应用程序、产品、附件、服务或它们的某种组合相关联,这些应用程序、产品、附件、服务或它们的某种组合用于例如在人工现实中创建内容,和/或以其他方式用于人工现实中(例如,在人工现实中执行动作)。提供人工现实内容的人工现实系统可以在各种平台上实现,这些平台包括连接到主控计算机系统的头戴式显示器(HMD)、独立HMD、移动设备或计算系统、或能够向一位或多位观看者提供人工现实内容的任何其他硬件平台。
图6是根据各种实施例的控制台在其中操作的近眼显示(NED)系统600的实施例的框图。NED系统600可以在虚拟现实(VR)系统环境、增强现实(AR)系统环境、混合现实(MR)系统环境或它们的某种组合中运行。图6中所示的NED系统600包括NED 605、以及耦接到控制台670的输入/输出(I/O)接口675。
尽管图6示出了示例NED系统600包括一个NED 605和一个I/O接口675,但是在其他实施例中,NED系统600可以包括任意数量的这些部件。例如,可以存在多个NED 605,并且每个NED 605具有相关联的I/O接口675。每个NED 605和I/O接口675与控制台670通信。在替代配置中,系统600可以包括不同的部件和/或附加的部件。此外,在一些实施例中,包括在NED605、控制台670和I/O接口675内的各种部件可以按照与结合图1至图3B描述的方式不同的方式来分布。例如,控制台670的一些或全部功能可以由NED 605来提供,反之亦然。
近眼显示器605可以是向用户呈现内容的头戴式显示器。该内容可以包括:物理、真实世界环境的、包括计算机生成的元素(例如,二维或三维图像、二维或三维视频、声音等)的虚拟和/或增强视图。在一些实施例中,NED 605还可以向用户呈现音频内容。NED 605和/或控制台670可以经由I/O接口675将该音频内容发送到外部设备。该外部设备可以包括各种形式的扬声器系统和/或头戴式耳机。在各种实施例中,音频内容与NED 605所显示的视觉内容同步。
NED 605可以包括一个或多个刚性体,该一个或多个刚性体可以刚性地或非刚性地彼此耦接。多个刚性体之间的刚性耦接可以使得这些耦接的刚性体用作单个刚性实体。相反,多个刚性体之间的非刚性耦接可以允许这些刚性体相对于彼此移动。
如图6所示,NED 605可以包括深度摄像头组件(depth camera assembly,DCA)655、一个或多个定位器620、显示器625、光学组件630、一个或多个位置传感器635、惯性测量单元(inertial measurement unit,IMU)640、眼睛追踪系统645和变焦模块650。在一些实施例中,显示器625和光学组件630可以一起集成到投影组件中。NED 605的各种实施例可以具有比上面列出的这些部件更多、更少的部件,或具有与上面列出的这些部件不同的部件。此外,在各种实施例中,每个部件的功能可以部分地或完全地被一个或多个其他部件的功能所包含。
DCA 655采集如下的传感器数据:该传感器数据描述NED 605周围的区域的深度信息。可以通过多种深度成像技术中的一种深度成像技术或多种深度成像技术的组合来生成该传感器数据,这些深度成像技术例如为,三角测量、结构光成像、飞行时间成像、立体成像和激光扫描等。DCA 655可以使用传感器数据来计算NED 605周围区域的各种深度属性。附加地或替代地,DCA 655可以将该传感器数据传输到控制台670以供处理。此外,在各种实施例中,DCA 655在不同时间对传感器数据进行采集或采样。例如,DCA 655可以在时间窗口内的不同时间对传感器数据进行采样,以获得沿时间维度的传感器数据。
DCA 655包括照明源、成像设备和控制器。该照明源将光发射到NED 605周围的区域上。在一实施例中,所发射的光是结构光。该照明源包括多个发射器,每个发射器发射具有某些特性(例如,波长、偏振、相干性、时间行为等)的光。各发射器之间的特性可以相同或不同,并且这些发射器可以同时运行或单独运行。在一个实施例中,多个发射器可以是例如,激光二极管(例如,边缘发射器)、无机或有机发光二极管(light-emitting diode,LED)、垂直腔面发射激光器(vertical-cavity surface-emitting laser,VCSEL)或某种其他源。在一些实施例中,照明源中的单个发射器或多个发射器可以发射具有结构光图案的光。成像设备包括RGBW传感器202和/或其他类型的摄像头传感器,这些其它类型的摄像头传感器除了对多个发射器所生成的、被环境中的对象反射的光进行采集,还对NED 605周围的环境中的环境光进行采集。在各种实施例中,成像设备可以是红外摄像头,或者可以是被配置为在可见光光谱中操作的摄像头。控制器协调照明源如何发射光以及成像设备如何采集光。例如,该控制器可以确定所发射的光的亮度。在一些实施例中,该控制器还对所检测的光进行分析,以检测环境中的对象、以及与这些对象相关的位置信息。
各定位器620是位于NED 605上的、彼此相关的并且与NED 605上的特定参考点相关的特定位置处的对象。定位器620可以是发光二极管(LED)、隅角立方反射器(cornercube reflector)、反射标记、与NED 605运行时所处的环境形成对比的一种类型的光源、或它们的任意组合。在各定位器620是有源部件(例如,LED或其他类型的发光器件)的实施例中,这些定位器620可以发射处于可见光波段(例如,~360nm(纳米)至750nm)的光、处于红外(infrared,IR)波段(~750nm至1mm(毫米))的光、处于紫外波段(70nm至360nm)的光、处于电磁波谱的另一部分的光、或以上光的任意组合。
在一些实施例中,定位器620位于NED 605的外表面之下,该外表面对于定位器620所发射的光的波长或被定位器620反射的光的波长是透明的,或者该外表面是足够薄的,以基本上不衰减定位器620所发射的光的波长或被定位器620反射的光的波长。此外,在一些实施例中,NED 605的外表面或其他部分在光的可见光波段下是不透明的。因此,定位器620可以在如下的外表面下方以IR波段发射光:该外表面在IR波段下是透明的,但是在可见光波段下是不透明的。
显示器625根据从控制台670和/或一个或多个其他源接收的像素数据向用户显示二维或三维图像。在各种实施例中,显示器625包括单个显示器或多个显示器(例如,针对用户的每只眼睛,一单独显示器)。在一些实施例中,显示器625包括单个或多个波导显示器。可以通过以下显示器将光耦合到单个或多个波导显示器中:例如,液晶显示器(LCD)、有机发光二极管(organic light emitting diode,OLED)显示器、无机发光二极管(inorganiclight emitting diode,ILED)显示器、有源矩阵有机发光二极管(active-matrix organiclight-emitting diode,AMOLED)显示器、透明有机发光二极管(transparent organiclight emitting diode,TOLED)显示器、基于激光的显示器、一个或多个波导、其他类型的显示器、扫描仪、一维阵列等。此外,多种显示器类型的组合可以被结合到显示器625中,并且被单独、并行和/或组合使用。
光学组件630放大从显示器625接收到的图像光,校正与该图像光相关联的光学误差,并将校正后的图像光呈现给NED 605的用户。光学组件630包括多个光学元件。例如,光学组件630中可以包括以下光学元件中的一个或多个光学元件:光圈、菲涅耳透镜、凸透镜、凹透镜、滤光器、反射表面、或使图像光偏转、反射、折射和/或以某种方式改变图像光的任何其他合适的光学元件。此外,光学组件630可以包括不同光学元件的组合。在一些实施例中,光学组件630中的一个或多个光学元件可以具有一个或多个涂层,例如,部分反射涂层或抗反射涂层。
在一些实施例中,光学组件630可以被设计为校正一种或多种类型的光学误差。光学误差的示例包括桶形失真或枕形失真、纵向色差或横向色差。其它类型的光学误差还可以包括球面像差;色差;或由于透镜场曲、像散所引起的误差;以及其它类型的光学误差。在一些实施例中,传输到显示器625的视觉内容是预失真的,并且当来自显示器625的图像光穿过光学组件630的各种光学元件时,该光学组件630对该失真进行校正。在一些实施例中,光学组件630的光学元件作为投影组件被集成到显示器625中,该投影组件包括与一个或多个光学元件耦接的至少一个波导。
IMU 640是这样的电子设备:所述电子设备基于从多个位置传感器635中的一个或多个位置传感器接收的多个测量信号以及从DCA655接收的深度信息,生成指示NED 605的位置的数据。在NED 605的一些实施例中,IMU 640可以是专用硬件部件。在其他实施例中,IMU 640可以是在一个或多个处理器中实现的软件部件。
在操作中,位置传感器635响应于NED 605的运动而生成一个或多个测量信号。位置传感器635的示例包括:一个或多个加速计、一个或多个陀螺仪、一个或多个磁力计、一个或多个高度计、一个或多个倾斜计、和/或用于运动检测、漂移检测和/或误差检测的各种类型的传感器。位置传感器535可以位于IMU 640的外部、IMU 640的内部或它们的某种组合。
IMU 640基于来自一个或多个位置传感器635的一个或多个测量信号,生成这样的数据:所述数据指示近眼显示器605的、相对于近眼显示器605的初始位置的估计位置。例如,位置传感器635包括用于测量平移运动(向前/向后、向上/向下、向左/向右)的多个加速度计和用于测量转动运动(例如,俯仰、横摆以及翻滚)的多个陀螺仪。在一些实施例中,IMU640快速地对测量信号进行采样,并且根据所采样的数据计算NED 605的估计的当前位置。例如,IMU 640随时间对从加速度计接收到的测量信号进行积分来估计速度矢量,并且随时间对速度矢量进行积分来确定NED 605上的参考点的估计的当前位置。替代地,IMU 640将所采样的测量信号提供给控制台670,该控制台对采样数据进行分析以确定一个或多个测量误差。控制台670还可以向IMU 640发送一个或多个控制信号和/或测量误差,以配置IMU640来校正和/或减少一个或多个测量误差(例如,漂移误差)。参考点是可以用于描述NED605的位置的点。该参考点通常可以被定义为空间中的点,或者与NED 605的位置和/或取向相关的位置。
在各种实施例中,IMU 640从控制台670接收一个或多个参数。该一个或多个参数用于保持对NED 605的追踪。IMU 640可以基于所接收到的参数,来调整一个或多个IMU参数(例如,采样速率)。在一些实施例中,某些参数使IMU 640对参考点的初始位置进行更新,以使该IMU对应于参考点的下一位置。将参考点的初始位置更新为参考点的下一个经校准的位置有助于减少检测IMU 640的当前位置估计时的漂移误差。
在各种实施例中,眼睛追踪系统645被集成到NED 605中。眼睛追踪系统645可以包括一个或多个照明源(例如,红外照明源、可见光照明源)和一个或多个成像设备(例如,一个或多个摄像头)。在操作中,当用户佩戴NED 605时,眼睛追踪系统645生成与用户眼睛相关的追踪数据,并对该追踪数据进行分析。在各种实施例中,眼睛追踪系统645估计用户眼睛的角度取向。眼睛的该取向对应于用户在NED 605内的注视方向。用户眼睛的取向在本文中被定义为中央凹轴线的方向,该中央凹轴线是中央凹(眼睛的视网膜上具有最高浓度的光感受器的区域)和眼睛的瞳孔中心之间的轴线。通常,当用户的眼睛盯着一点时,用户眼睛的中央凹轴线会与该点相交。瞳孔轴线是眼睛的另一个轴线,该轴线定义为穿过瞳孔中心并垂直于角膜表面的轴线。通常,瞳孔轴线不会与中央凹轴线直接对齐。这两个轴线在瞳孔中心处相交,但中央凹轴线的取向与瞳孔轴线在横向偏移约-1°至6°,在纵向偏移约±4°。因为中央凹轴线是根据位于眼睛后部的中央凹来定义的,所以在一些眼睛追踪的实施例中,可能很难或不可能直接检测到该中央凹轴线。因此,在一些实施例中,对瞳孔轴线的取向进行检测,并且基于所检测的瞳孔轴线来估计中央凹轴线。
通常,眼睛的运动不仅对应于眼睛的角度旋转,而且还对应于眼睛的平移、眼睛扭转(torsion)的变化和/或眼睛形状的变化。眼睛追踪系统645还可以检测眼睛的平移,也即,眼睛相对于眼窝的位置的变化。在一些实施例中,眼睛的平移不是被直接检测的,而是基于从所检测的角度取向的映射来近似的。也可以检测与如下相对应的、眼睛的平移:眼睛的位置相对于眼睛追踪单元的检测部件的变化。这种类型的平移可能例如由于NED 605在用户头部的位置移动而发生。眼睛追踪系统645还可以检测眼睛的扭转,也即,眼睛绕瞳孔轴线的旋转。眼睛追踪系统645可以使用所检测的眼睛的扭转,来估计中央凹轴线相对于瞳孔轴线的方向。眼睛追踪系统645还可以追踪眼睛形状的变化,该变化可以被近似为倾斜或缩放线性变换或扭曲变形(例如,由于扭转变形)。眼睛追踪系统645可以基于瞳孔轴线的角度取向、眼睛的平移、眼睛的扭转和眼睛的当前形状的某种组合,来估计中央凹轴线。
由于可以确定用户双眼的方向,因此眼睛追踪系统645能够确定用户正在观看的位置。NED 605可以使用眼睛的取向来例如确定用户的瞳孔间距(inter-pupillarydistance,IPD)、确定注视方向、引入深度线索(depth cue)(例如,用户的主视线之外的模糊图像)、收集有关VR媒体中用户交互的启发式方法(heuristics)(例如,花费在任何特定主题、对象或帧(frame)上的时间随遭受的刺激的变化)、部分地基于用户的至少一只眼睛的取向的一些其他的功能、或者它们的任意组合。确定用户的注视方向可以包括:基于所确定的用户的左眼和右眼的取向,确定会聚点。会聚点可以是用户双眼的两条中央凹轴线相交的点(或者该两个轴线之间最近的点)。用户的注视方向可以是穿过该会聚点以及用户双眼的瞳孔之间的中点的线的方向。
在一些实施例中,变焦模块650被集成到NED 605中。变焦模块650可以通信地耦接到眼睛追踪系统645,以使变焦模块650能够从眼睛追踪系统645接收眼睛追踪信息。变焦模块650还可以基于从眼睛追踪系统645接收到的眼睛追踪信息来修改从显示器625发射的图像光的焦点。因此,变焦模块650可以减少在用户的眼睛解析图像光时可能产生的会聚-调节冲突。在各种实施例中,变焦模块650可以与光学组件630中的至少一个光学元件(例如,机械地或电气地)对接。
在操作中,变焦模块650可以调整光学组件630中的一个或多个光学元件的位置和/或取向,以便调整传播穿过光学组件630的图像光的焦点。在各种实施例中,变焦模块650可以使用从眼睛追踪系统645获得的眼睛追踪信息来确定如何调整光学组件630中的一个或多个光学元件。在一些实施例中,变焦模块650可以基于从眼睛追踪系统645获得的眼睛追踪信息来执行图像光的注视点渲染(foveated rendering),以便调整显示器625所发射的图像光的分辨率。在这种情况下,变焦模块650将显示器625配置为在用户眼睛注视的中央凹区域中显示高像素密度,在用户眼睛注视的其他区域中显示低像素密度。
I/O接口675促进了将动作请求从用户传送到控制台670。此外,I/O接口675促进了将设备反馈从控制台670传送到用户。动作请求是执行特定动作的请求。例如,动作请求可以是开始或结束采集图像或视频数据的指令、或执行应用程序内的特定动作的指令,该特定动作例如为,暂停视频播放、增加或降低音频播放的音量等。在各种实施例中,I/O接口675可以包括一个或多个输入设备。示例输入设备包括:键盘、鼠标、游戏控制器、操纵杆和/或用于接收动作请求并将动作请求传送给控制台670的的任何其它合适的设备。在一些实施例中,I/O接口675包括采集校准数据的IMU 640,该校准数据指示I/O接口675相对于I/O接口675的初始位置的所估计的当前位置。
在操作中,I/O接口675从用户接收动作请求,并将这些动作请求发送到控制台670。控制台670响应于接收到动作请求而执行相应的动作。例如,控制台670可以响应于接收到动作请求,配置I/O接口675以将触觉反馈发射到用户的手臂上。例如,控制台670可以配置I/O接口675以在接收到动作请求时,向用户递送触觉反馈。附加地或替代地,控制台670可以配置I/O接口675以在控制台670响应于接收到动作请求而执行动作时生成触觉反馈。
控制台670根据从以下项中的一项或多项接收到的信息向NED 605提供内容以供处理:NED 605的DCA655、眼睛追踪系统645、一个或多个其他部件,和I/O接口675。在图6示出的实施例中,控制台670包括应用程序库660和引擎665。在一些实施例中,控制台670可以具有比结合图6描述的这些模块和/或部件更多的、更少的模块和/或部件,或者可以具有与结合图6描述的这些模块和/或部件不同的模块和/或部件。类似地,以下进一步描述的功能可以按照与结合图6描述的方式不同的方式分布在控制台670的部件之中。
应用程序库660存储一个或多个应用程序以供控制台670执行。应用程序是一组指令,当该组指令被处理器执行时,执行一组特定的功能,例如,生成用于向用户呈现的内容。例如,应用程序可以响应于从用户接收到输入(例如,通过NED 605在用户移动他/她的头时的移动、经由I/O接口675等)来生成内容。应用程序的示例包括:游戏应用程序、会议应用程序、视频播放应用程序、或其他合适的应用程序。
在一些实施例中,引擎665基于从NED 605接收到的信息来生成NED 605周围的区域(即,“局部区域”)的三维映射。在一些实施例中,引擎665基于从NED 605接收到的深度数据,来确定该局部区域的三维映射的深度信息。在各种实施例中,引擎665使用从NED 605接收的深度数据来更新该局部区域的模型,并且部分地基于更新后的局部区域的模型来生成和/或修改媒体内容。
引擎665还可以执行NED系统600内的应用程序,并且接收NED 605的位置信息、加速度信息、速度信息、预测的未来位置、或它们的某种组合。基于接收到的信息,引擎665确定将要向NED 605发送的用于向用户呈现的各种形式的媒体内容。例如,如果接收到的信息指示用户已经看向左边,则引擎665生成用于NED 605的媒体内容,该媒体内容反应了用户在虚拟环境中或在使用附加内容增强了局部区域的环境中的移动。因此,引擎665可以生成和/或修改媒体内容(例如,视觉内容和/或音频内容),以呈现给用户。引擎665还可以将该媒体内容发送给NED 605。另外,引擎665可以响应于从I/O接口675接收到动作请求,在控制台670上执行的应用程序内执行动作。引擎665还可以在执行动作时提供反馈。例如,引擎665可以配置NED 605以生成视觉反馈和/或音频反馈,和/或可以配置I/O接口675以生成对用户的触觉反馈。
在一些实施例中,引擎665基于从眼睛追踪系统645接收到的眼睛追踪信息(例如,用户眼睛的取向),来确定提供给NED 605的媒体内容的分辨率,以用于在显示器625上呈现给用户。引擎665可以通过将显示器625配置为至少部分地基于从眼睛追踪系统645接收到的用户注视的方向来执行视觉内容的注视点渲染,来调整提供给NED 605的视觉内容的分辨率。引擎665将该内容提供给NED 605,该内容在显示器625上在用户注视的中央凹区域中具有高分辨率,而在其他区域中具有低分辨率,从而降低了NED 605的功耗。此外,使用注视点渲染在不影响用户的视觉体验质量的情况下,减少了渲染视觉内容时使用的计算周期数。在一些实施例中,引擎665还可以使用眼睛追踪信息来调整从显示器625发射的图像光的焦点,以便减少会聚-调节冲突。
图7A是根据各种实施例的NED 700的示意图。在各种实施例中,NED 700向用户呈现媒体。该媒体可以包括视觉内容、听觉内容和触觉内容。在一些实施例中,NED 700通过提供真实世界环境和/或计算机生成的内容来提供人工现实(例如,虚拟现实)内容。在一些实施例中,该计算机生成的内容可以包括视觉信息、听觉信息和触觉信息。NED 700是NED 605的一个实施例,并且包括前部刚性体705和带710。前部刚性体705包括:电子显示器625的电子显示元件(图7A中未示出)、光学组件630(图7A中未示出)、IMU 640、一个或多个位置传感器735、眼睛追踪系统745和多个定位器722。在图7A所示的实施例中,位置传感器735位于IMU 640内,并且IMU 640和位置传感器735对于用户均是不可见的。
多个定位器722相对于彼此并相对于参考点715位于前部刚性体705上的固定位置。在图7A的示例中,参考点715位于IMU 640的中心。多个定位器722中的每个定位器发射可由DCA655中的成像设备检测的光。在图7A的示例中,多个定位器722或这些定位器722的多个部分位于前部刚性体705的前侧720A、顶侧720B、底侧720C、右侧720D和左侧720E上。
NED 700包括眼睛追踪系统745。如上面所讨论的,眼睛追踪系统745可以包括将干涉结构光图案投射到用户眼睛上的结构光生成器、以及用于检测眼睛的被照明的部分的摄像头。该结构光生成器和该摄像头可以被定位为远离用户注视的轴线。在各种实施例中,眼睛追踪系统745可以附加地或替代地包括一个或多个飞行时间传感器和/或一个或多个立体深度传感器。在图7A中,眼睛追踪系统745位于用户注视的轴线下方,尽管眼睛追踪系统745可以替代地被放置于其他位置。此外,在一些实施例中,存在用于用户左眼的至少一个眼睛追踪单元、以及用于用户右眼的至少一个追踪单元。
在各种实施例中,眼睛追踪系统745包括位于NED 700内部的一个或多个摄像头。当用户正佩戴着NED 700时,眼睛追踪系统745的一个或多个摄像头可以向内指向用户的一只或两只眼睛,使得该一个或多个摄像头可以对正佩戴着NED 700的用户的一只或两只眼睛和用户的一个或多个眼睛区域进行成像。该一个或多个摄像头可以被定位为远离用户注视的轴线。在一些实施例中,眼睛追踪系统745包括用于左眼和右眼的单独的摄像头(例如,指向用户左眼的一个或多个摄像头,以及单独地指向用户右眼的一个或多个摄像头)。
图7B是根据各种实施例的NED 750的示意图。在各种实施例中,NED 750向用户呈现媒体。该媒体可以包括视觉内容、听觉内容和触觉内容。在一些实施例中,NED 750通过提供真实世界环境和/或计算机生成的内容来提供人工现实(例如,增强现实)内容。在一些实施例中,该计算机生成的内容可以包括视觉信息、听觉信息和触觉信息。NED 750是NED 605的一个实施例。
NED 750包括框架752和显示器754。在各种实施例中,NED 750可以包括一个或多个附加元件。显示器754可以位于NED 750上的与图7B中所示出的位置不同的位置。显示器754被配置为向用户提供内容,该内容包括视听内容。在一些实施例中,一个或多个显示器754可以位于框架752内。
NED 750还包括眼睛追踪系统745和一个或多个相应的模块756。这些模块756可以包括发射器(例如,光发射器)和/或传感器(例如,图像传感器、摄像头)。在各种实施例中,多个模块756沿框架752的内表面布置在不同位置,使得这些模块756面向正佩戴着NED 750的用户的眼睛。例如,多个模块756可以包括将结构光图案发射到眼睛的发射器、以及用于采集眼睛上的结构光图案的图像的图像传感器。作为另一示例,多个模块756可以包括多个飞行时间传感器,该多个飞行时间传感器用于将光引导到眼睛,并且在这些传感器的每个像素处测量光的传播时间。作为又一示例,多个模块756可以包括多个立体深度传感器,该多个立体深度传感器用于从不同的有利位置采集眼睛的图像。在各种实施例中,多个模块756还包括用于采集眼睛的2D图像的图像传感器。
总之,所公开的技术使用深度神经网络来对RGBW摄像头传感器所采集的图像执行稀疏颜色重建。深度神经网络的输入包括在RGBW传感器内的第一组像素位置处的全色白色像素(例如,感光点)所测量的一组亮度值。深度神经网络的输入还包括在RGBW传感器内的第二组像素位置处的红色、绿色或蓝色像素所测量的一组颜色值。例如,RGBW传感器可以包括稀疏滤色器阵列,该稀疏滤色器阵列具有采集亮度值的较大比例的白色像素、以及采集颜色值的较小比例(例如,1%至16%)的彩色像素。深度神经网络的输入还包括通过将边缘检测技术应用于亮度值而生成的边缘像素值。深度神经网络包括具有编码器和解码器的U-Net架构。编码器包括对与输入相关联的特征图进行逐步下采样的一系列编码器块,并且解码器包括对与输入相关联的特征图进行逐步上采样的一系列解码器块。解码器的最后一层生成输出图像,该输出图像包括RGBW传感器中的每个像素位置的多色(例如,红色、绿色和蓝色)像素值。
所公开的技术相对于现有技术的一个技术优势在于,输出图像将具有更高光敏性的全色白色像素所采集的视觉细节与彩色像素所采集的颜色信息相结合。因此,与使用类似尺寸的RGB传感器来生成彩色图像的传统技术相比,所公开的技术提供了更好的低光性能和图像质量。所公开的技术的另一技术优势是将来自附加图像的视觉细节和/或颜色结合到输出图像中,这进一步改善了与RGBW传感器相关联的低光性能和图像质量。与在不利用输入图像中的边缘信息的情况下执行颜色重建的技术相比,所公开的技术的另一技术优势是减少了输出图像中的渗色伪像。这些技术优势提供了对现有技术方法的一项或多项技术改进。
1.在一些实施例中,一种用于执行稀疏颜色重建的计算机实现的方法包括:确定与第一输入图像相关联的多组像素值,其中,该多组像素值包括来自第一输入图像的第一组亮度值和来自第一输入图像的第一组稀疏颜色值;以及经由神经网络,将一个或多个下采样操作和一个或多个上采样操作应用于与该多组像素值相关联的特征图,以生成输出图像,其中,该输出图像包括第一输入图像的第二组颜色值,并且其中,该第二组颜色值大于第一组稀疏颜色值。
2.根据第1条所述的计算机实现的方法,还包括:将神经网络应用于与第二输入图像相关联的附加特征图,以生成该输出图像。
3.根据第1至2条中任一条所述的计算机实现的方法,其中,第一输入图像包括第一视频帧,并且第二输入图像包括在该第一视频帧之前的第二视频帧。
4.根据第1至3条中的任一条所述的计算机实现的方法,其中,神经网络包括一个或多个循环回路,该一个或多个循环回路基于附加特征图,生成特征图的至少一个子集。
5.根据第1至4条中任一条所述的计算机实现的方法,还包括:基于第二组颜色值和第三组颜色值之间的一个或多个损失训练神经网络,该第三组颜色值包括在与第一输入图像相关联的地面真值图像中。
6.根据第1至5条中任一条所述的计算机实现的方法,其中,该一个或多个损失包括第二组颜色值与第三组颜色值之间的L1损失。
7.根据第1至6条中任一条所述的计算机实现的方法,其中,第一组稀疏颜色值在第一输入图像所包括的像素值的总数的1%至16%的范围内。
8.根据第1至7条中任一条所述的计算机实现的方法,其中,该多组像素值还包括与第一组亮度值相关联的一组边缘像素值。
9.根据第1至8条中任一条所述的计算机实现的方法,还包括:从RGBW传感器接收第一组亮度值和第一组稀疏颜色值。
10.根据第1至9条中任一条所述的计算机实现的方法,其中,神经网络包括U-Net架构。
11.在一些实施例中,一种或多种非暂态计算机可读介质存储指令,这些指令在由一个或多个处理器执行时,使该一个或多个处理器执行以下步骤:确定与第一输入图像相关联的多组像素值,其中,该多组像素值包括来自第一输入图像的第一组亮度值和来自第一输入图像的第一组稀疏颜色值;以及经由神经网络,将一个或多个下采样操作和一个或多个上采样操作应用于与该多组像素值相关联的特征图,以生成输出图像,其中,该输出图像包括第一输入图像的第二组颜色值,并且其中,该第二组颜色值大于第一组稀疏颜色值。
12.根据第11条所述的一种或多种非暂态计算机可读介质,其中,这些指令还使该一个或多个处理器执行如下步骤:将神经网络应用于与第二输入图像相关联的附加特征图,以生成该输出图像。
13.根据第11至12条中任一条所述的一种或多种非暂态计算机可读介质,其中,第一输入图像由第一摄像头采集,并且第二输入图像由第二摄像头采集。
14.根据第11至13条中任一条所述的一种或多种非暂态计算机可读介质,其中,这些指令还使得该一个或多个处理器执行如下步骤:基于第二组颜色值与第三组颜色值之间的一个或多个损失来训练神经网络,该第三组颜色值包括在与第一输入图像相关联的地面真值图像中。
15.根据第11至14条中任一条所述的一种或多种非暂态计算机可读介质,其中,该多组像素值与第一输入图像的一部分相关联。
16.根据第11至15条中任一条所述的一种或多种非暂态计算机可读介质,其中,该多组像素值还包括与第一组亮度值相关联的一组边缘像素值。
17.根据第11至16条中任一条所述的一种或多种非暂态计算机可读介质,其中,第二组颜色值是针对与第一组亮度值和第一组稀疏颜色值相关联的一组像素位置来确定的。
18.根据第11至17条中任一条所述的一种或多种非暂态计算机可读介质,其中,该第一组稀疏颜色值包括:第一输入图像中所包括的像素值的总数的1%、5%、11%或16%。
19.根据第11至18条中任一条所述的一种或多种非暂态计算机可读介质,其中,神经网络包括执行一个或多个下采样操作的编码器、以及执行一个或多个上采样操作的解码器。
20.在一些实施例中,一种系统包括:一个或多个存储器,该一个或多个存储器存储指令;以及一个或多个处理器,该一个或多个处理器耦接到该一个或多个存储器,并且该一个或多个处理器在执行这些指令时,被配置为:确定与第一输入图像相关联的多组像素值,其中,该多组像素值包括来自第一输入图像的第一组亮度值、来自第一输入图像的第一组稀疏颜色值、以及与该第一组亮度值相关联的一组边缘像素值;以及经由神经网络,将一个或多个下采样操作和一个或多个上采样操作应用于与该多组像素值相关联的特征图,以生成输出图像,其中,该输出图像包括第一输入图像的第二组颜色值,其中,该第二组颜色值大于第一组稀疏颜色值。
各权利要求中的任何权利要求中以任何方式所述的各权利要求要素中的任何权利要求要素和所有组合、和/或本申请中以任何方式所描述的任何要素均落入本发明和保护的预期范围内。
出于说明的目的,已经给出了对各种实施例的描述,但是这些描述并不旨在是穷举的或限制所公开的实施例。在不脱离所述实施例的范围和精神的情况下,许多修改和变化对于本领域的普通技术人员来说是显而易见的。
本实施例的各方面可以体现为系统、方法或计算机程序产品。因此,本公开的各方面可以采取完全硬件实施例的形式、完全软件实施例(包括固件、驻留软件、微代码等)的形式,或者是结合了软件方面和硬件方面的实施例的形式,这些软件和硬件在本文中通常被称为“模块”、“系统”或“计算机”。此外,本公开中所描述的任何硬件和/或软件技术、过程、功能、部件、引擎、模块或系统可以被实现为一个电路或一组电路。此外,本公开的各方面可以采用在一个或多个计算机可读介质中体现的计算机程序产品的形式,该计算机可读介质上包含计算机可读程序代码。
可以使用一个或多个计算机可读介质的任意组合。该计算机可读介质可以是计算机可读信号介质或计算机可读存储介质。计算机可读存储介质可以是例如但不限于电子、磁、光、电磁、红外或半导体系统、装置或设备、或前述系统、装置或设备的任何合适的组合。计算机可读存储介质的更具体的示例(非穷举列表)将包括以下:具有一条或多条导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(random access memory,RAM)、只读存储器(read-only memory,ROM)、可擦除可编程只读存储器(erasable programmable read-only memory,EPROM或闪存)、光纤、便携式光盘只读存储器(compact disc read-onlymemory,CD-ROM)、光存储器件、磁存储器件或上述存储介质的任何合适的组合。在本文的上下文中,计算机可读存储介质可以是能够包含或存储由指令执行系统、装置或设备使用、或与指令执行系统、装置或设备结合使用的程序的任何有形介质。
以上参照根据本公开的实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各方面。应当理解的是,流程图和/或框图的每个框以及流程图和/或框图中的多个框的组合可以由计算机程序指令来实现。这些计算机程序指令可以被提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,以产生机器。当经由计算机或其他可编程数据装置的处理器执行这些指令时,这些指令能够实现流程图和/或框图的一个或多个框中所指定的功能/动作。这样的处理器可以是但不限于通用处理器、专用处理器(special-purpose processor)、专用处理器(application-specificprocessor)或现场可编程门阵列。
附图中的流程图和框图示出了根据本公开的各种实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。在这点上,流程图或框图中的每个框可以表示代码的模块、段或部分,该代码的模块、段或部分包括用于实现指定逻辑功能的一个或多个可执行指令。还应当注意的是,在一些替代实施方式中,框中注明的功能可以不按照附图中注明的顺序发生。例如,根据所涉及的功能,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以以相反的顺序执行。还应当注意的是,框图和/或流程图中的每个框、以及框图和/或流程图中的多个框的组合可以由执行指定功能或动作的基于专用硬件的系统、或专用硬件和计算机指令的组合来实现。
尽管前述内容针对的是本公开的实施例,但是可以在不脱离本公开的基本范围的情况下设计本公开的其他和进一步的实施例,并且本公开的范围由所附权利要求确定。
Claims (20)
1.一种用于执行稀疏颜色重建的计算机实现的方法,所述方法包括:
确定与第一输入图像相关联的多组像素值,其中,所述多组像素值包括来自所述第一输入图像的第一组亮度值和来自所述第一输入图像的第一组稀疏颜色值;以及
经由神经网络,将一个或多个下采样操作和一个或多个上采样操作应用于与所述多组像素值相关联的特征图,以生成输出图像,其中,所述输出图像包括所述第一输入图像的第二组颜色值,并且其中,所述第二组颜色值大于所述第一组稀疏颜色值。
2.根据权利要求1所述的计算机实现的方法,还包括:将所述神经网络应用于与第二输入图像相关联的附加特征图,以生成所述输出图像。
3.根据权利要求2所述的计算机实现的方法,其中,所述第一输入图像包括第一视频帧,并且所述第二输入图像包括在所述第一视频帧之前的第二视频帧。
4.根据权利要求2所述的计算机实现的方法,其中,所述神经网络包括一个或多个循环回路,所述一个或多个循环回路基于所述附加特征图,生成所述特征图的至少一个子集。
5.根据权利要求1所述的计算机实现的方法,还包括:基于所述第二组颜色值与第三组颜色值之间的一个或多个损失来训练所述神经网络,所述第三组颜色值包括在与所述第一输入图像相关联的地面真值图像中。
6.根据权利要求5所述的计算机实现的方法,其中,所述一个或多个损失包括所述第二组颜色值与所述第三组颜色值之间的L1损失。
7.根据权利要求1所述的计算机实现的方法,其中,所述第一组稀疏颜色值在所述第一输入图像所包括的像素值的总数的1%至16%的范围内。
8.根据权利要求1所述的计算机实现的方法,其中,所述多组像素值还包括与所述第一组亮度值相关联的一组边缘像素值。
9.根据权利要求1所述的计算机实现的方法,还包括:从RGBW传感器接收所述第一组亮度值和所述第一组稀疏颜色值。
10.根据权利要求1所述的计算机实现的方法,其中,所述神经网络包括U-Net架构。
11.一种或多种非暂态计算机可读介质,所述一种或多种非暂态计算机可读介质存储指令,所述指令在由一个或多个处理器执行时,使所述一个或多个处理器执行如下步骤:
确定与第一输入图像相关联的多组像素值,其中,所述多组像素值包括来自所述第一输入图像的第一组亮度值和来自所述第一输入图像的第一组稀疏颜色值;以及
经由神经网络,将一个或多个下采样操作和一个或多个上采样操作应用于与所述多组像素值相关联的特征图,以生成输出图像,其中,所述输出图像包括所述第一输入图像的第二组颜色值,并且其中,所述第二组颜色值大于所述第一组稀疏颜色值。
12.根据权利要求11所述的一种或多种非暂态计算机可读介质,其中,所述指令还使所述一个或多个处理器执行如下步骤:将所述神经网络应用于与第二输入图像相关联的附加特征图,以生成所述输出图像。
13.根据权利要求12所述的一种或多种非暂态计算机可读介质,其中,所述第一输入图像由第一摄像头采集,并且所述第二输入图像由第二摄像头采集。
14.根据权利要求11所述的一种或多种非暂态计算机可读介质,其中,所述指令还使所述一个或多个处理器执行如下步骤:基于所述第二组颜色值与第三组颜色值之间的一个或多个损失来训练所述神经网络,所述第三组颜色值包括在与所述第一输入图像相关联的地面真值图像中。
15.根据权利要求11所述的一种或多种非暂态计算机可读介质,其中,所述多组像素值与所述第一输入图像的一部分相关联。
16.根据权利要求11所述的一种或多种非暂态计算机可读介质,其中,所述多组像素值还包括与所述第一组亮度值相关联的一组边缘像素值。
17.根据权利要求11所述的一种或多种非暂态计算机可读介质,其中,所述第二组颜色值是针对与所述第一组亮度值和所述第一组稀疏颜色值相关联的一组像素位置来确定的。
18.根据权利要求11所述的一种或多种非暂态计算机可读介质,其中,所述第一组稀疏颜色值包括:所述第一输入图像所包括的像素值的总数的1%、5%、11%或16%。
19.根据权利要求11所述的一种或多种非暂态计算机可读介质,其中,所述神经网络包括执行所述一个或多个下采样操作的编码器、以及执行所述一个或多个上采样操作的解码器。
20.一种系统,包括:
一个或多个存储器,所述一个或多个存储器存储指令,以及
一个或多个处理器,所述一个或多个处理器耦接到所述一个或多个存储器,并且所述一个或多个处理器在执行所述指令时,被配置为:
确定与第一输入图像相关联的多组像素值,其中,所述多组像素值包括来自所述第一输入图像的第一组亮度值、来自所述第一输入图像的第一组稀疏颜色值、以及与所述第一组亮度值相关联的一组边缘像素值;以及
经由神经网络,将一个或多个下采样操作和一个或多个上采样操作应用于与所述多组像素值相关联的特征图,以生成输出图像,其中,所述输出图像包括所述第一输入图像的第二组颜色值,其中,所述第二组颜色值大于所述第一组稀疏颜色值。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202217879334A | 2022-08-02 | 2022-08-02 | |
US17/879,334 | 2022-08-02 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117496098A true CN117496098A (zh) | 2024-02-02 |
Family
ID=87517323
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310962164.1A Pending CN117496098A (zh) | 2022-08-02 | 2023-08-01 | 使用深度神经网络的稀疏颜色重建 |
Country Status (2)
Country | Link |
---|---|
EP (1) | EP4318379A1 (zh) |
CN (1) | CN117496098A (zh) |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2595694A (en) * | 2020-06-03 | 2021-12-08 | King S College London | Method and system for joint demosaicking and spectral signature estimation |
-
2023
- 2023-07-27 EP EP23188069.1A patent/EP4318379A1/en active Pending
- 2023-08-01 CN CN202310962164.1A patent/CN117496098A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4318379A1 (en) | 2024-02-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7177213B2 (ja) | 視線追跡情報に基づく画像領域内の適応パラメータ | |
US11016301B1 (en) | Accommodation based optical correction | |
US10466779B1 (en) | Event camera for eye tracking | |
US9984507B2 (en) | Eye tracking for mitigating vergence and accommodation conflicts | |
US10636193B1 (en) | Generating graphical representation of a user's face and body using a monitoring system included on a head mounted display | |
US10878594B1 (en) | Boundary region glint tracking | |
US10120442B2 (en) | Eye tracking using a light field camera on a head-mounted display | |
US10529113B1 (en) | Generating graphical representation of facial expressions of a user wearing a head mounted display accounting for previously captured images of the user's facial expressions | |
US11156843B2 (en) | End-to-end artificial reality calibration testing | |
US10684674B2 (en) | Tracking portions of a user's face uncovered by a head mounted display worn by the user | |
US10430988B2 (en) | Facial animation using facial sensors within a head-mounted display | |
US10809429B1 (en) | Angle selective filter having curved surface for near eye displays | |
US11953688B1 (en) | High-resolution liquid crystal displays | |
US20210183102A1 (en) | Raycast calibration for artificial reality head-mounted displays | |
US10248842B1 (en) | Face tracking using structured light within a head-mounted display | |
US10795436B2 (en) | Determining fixation of a user's eyes from images of portions of the user's face enclosed by a head mounted display | |
US11435820B1 (en) | Gaze detection pipeline in an artificial reality system | |
US11747626B1 (en) | Display system with extended display area | |
US10698218B1 (en) | Display system with oscillating element | |
US10495882B1 (en) | Positioning cameras in a head mounted display to capture images of portions of a face of a user | |
US10848753B1 (en) | Eye-tracking system using a scanning laser assembly | |
EP4318379A1 (en) | Sparse color reconstruction using deep neural networks | |
US20230300470A1 (en) | Techniques for producing glints and iris illumination for eye tracking | |
CN117980796A (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 |