CN118119966A - 用于获得暗电流图像的***和方法 - Google Patents
用于获得暗电流图像的***和方法 Download PDFInfo
- Publication number
- CN118119966A CN118119966A CN202280070333.4A CN202280070333A CN118119966A CN 118119966 A CN118119966 A CN 118119966A CN 202280070333 A CN202280070333 A CN 202280070333A CN 118119966 A CN118119966 A CN 118119966A
- Authority
- CN
- China
- Prior art keywords
- image
- dark current
- pixel
- additional
- pixels
- 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
- 238000000034 method Methods 0.000 title description 20
- 238000003860 storage Methods 0.000 claims abstract description 32
- 238000001914 filtration Methods 0.000 claims description 19
- 230000004044 response Effects 0.000 claims description 6
- 238000005286 illumination Methods 0.000 claims description 4
- 230000002123 temporal effect Effects 0.000 claims description 4
- 238000004891 communication Methods 0.000 description 18
- 238000003384 imaging method Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 13
- 238000013528 artificial neural network Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000015654 memory Effects 0.000 description 4
- 238000003491 array Methods 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 3
- 230000009467 reduction Effects 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 239000003990 capacitor Substances 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 239000000428 dust Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005684 electric field Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- -1 haze Substances 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 239000010410 layer Substances 0.000 description 1
- 239000007788 liquid Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 239000000779 smoke Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
- 238000001931 thermography Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N25/00—Circuitry of solid-state image sensors [SSIS]; Control thereof
- H04N25/60—Noise processing, e.g. detecting, correcting, reducing or removing noise
- H04N25/63—Noise processing, e.g. detecting, correcting, reducing or removing noise applied to dark current
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/70—Denoising; Smoothing
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration using local operators
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N25/00—Circuitry of solid-state image sensors [SSIS]; Control thereof
- H04N25/40—Extracting pixel data from image sensors by controlling scanning circuits, e.g. by modifying the number of pixels sampled or to be sampled
- H04N25/46—Extracting pixel data from image sensors by controlling scanning circuits, e.g. by modifying the number of pixels sampled or to be sampled by combining or binning pixels
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N25/00—Circuitry of solid-state image sensors [SSIS]; Control thereof
- H04N25/60—Noise processing, e.g. detecting, correcting, reducing or removing noise
- H04N25/67—Noise processing, e.g. detecting, correcting, reducing or removing noise applied to fixed-pattern noise, e.g. non-uniformity of response
- H04N25/671—Noise processing, e.g. detecting, correcting, reducing or removing noise applied to fixed-pattern noise, e.g. non-uniformity of response for non-uniformity detection or correction
- H04N25/673—Noise processing, e.g. detecting, correcting, reducing or removing noise applied to fixed-pattern noise, e.g. non-uniformity of response for non-uniformity detection or correction by using reference sources
-
- 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/20024—Filtering details
- G06T2207/20032—Median filtering
-
- 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/20212—Image combination
- G06T2207/20216—Image averaging
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Image Processing (AREA)
Abstract
一种用于获得暗电流图像的***,包括一个或多个处理器以及存储指令的一个或多个硬件存储设备,指令由一个或多个处理器可执行以将***配置为执行各种动作。动作包括获得第一图像帧、通过将低通滤波器应用于第一图像帧以生成第一低通滤波图像、以及通过从第一图像帧中减去第一低通滤波图像来生成第一估计暗电流图像。
Description
背景技术
混合现实(MR)***,包括虚拟现实和增强现实***,因其能够为其用户创造真正独特的体验而受到广泛关注。作为参考,传统的虚拟现实(VR)***通过将其用户的视野限制在仅虚拟环境中来创建完全身临其境的体验。在VR***中,这常常是通过使用完全遮挡现实世界的任何视图的头戴式设备(HMD)来实现的。结果,用户完全沉浸在虚拟环境中。相比之下,传统的增强现实(AR)***通过视觉呈现放置在现实世界中或与现实世界交互的虚拟对象来创建增强现实体验。
如本文中所使用的,VR和AR***被可互换地描述和引用。除非另有说明,否则本文的描述同样适用于所有类型的混合现实***,其(如上详述的)包括AR***、VR现实***和/或能够显示虚拟对象的任何其他类似***。
一些MR***包括用于促进图像捕获、视频捕获和/或其他功能的一个或多个相机。例如,MR***的相机可以利用使用(多个)相机所获得的图像和/或深度信息来向用户提供用户环境的直通视图。MR***可以以各种方式提供直通视图。例如,MR***可以向用户呈现由MR***的(多个)相机捕获的原始图像。在其他情况下,MR***可以修改和/或重新投影所捕获的图像数据以对应于用户眼睛的视角,从而生成直通视图。MR***可以修改和/或重新投影所捕获的图像数据以使用针对由MR***获得的所捕获的环境的深度信息(例如,使用MR***的深度***,诸如飞行时间相机、测距仪、立体深度相机等)来生成直通视图。在一些情况下,MR***利用一个或多个预定义的深度值来生成直通视图(例如,通过执行平面重新投影)。
在一些情况下,通过修改和/或重新投影所捕获的图像数据而生成的直通视图可以至少部分地校正由用户的眼睛与MR***的(多个)相机之间的物理分离所引发的视角差异(被称为“视差问题”、“视差误差”或简称“视差”)。这种直通视图/图像可以被称为“视差校正直通”视图/图像。举例来说,视差校正直通图像对用户来说可能看起来就像是由与用户眼睛位于同一位置的相机捕获的一样。
直通视图可以帮助用户在过渡到混合现实环境中和/或在混合现实环境内导航时避免迷失方向和/或安全隐患。直通视图还可以增强低能见度环境中的用户视野。例如,配置有长波长热成像相机的混合现实***可以促进烟雾、霾、雾和/或灰尘中的可见性。同样,配置有低光成像相机的混合现实***促进在环境光水平低于人类视觉所需水平的黑暗环境中提高可见性。
为了促进环境的成像以用于生成直通视图,一些MR***包括利用互补金属氧化物半导体(CMOS)和/或电荷耦合器件(CCD)技术的图像传感器。例如,这种技术可以包括图像感测像素阵列,其中每个像素被配置为响应于检测到的光子而生成电子空穴对。电子可以被存储在每像素电容器中,并且存储在电容器中的电荷可以被读出以提供图像数据(例如,通过将所存储的电荷转换为电压)。
然而,这种图像传感器存在许多缺点。例如,传统图像传感器的信噪比可以受到读取噪声的严重影响,尤其是在低能见度条件下成像时。例如,在低光成像条件下(例如,在环境光低于约10lux的情况下,诸如在大约1毫勒克斯或以下的范围内),成像传感器可能仅检测到少量光子,这可能导致读取噪声和/或固定模式噪声接近或超过由成像像素检测到的信号并且降低信噪比。
当在低光条件下以高帧速率成像时,由CMOS或CCD图像传感器检测到的信号中的读取噪声和/或固定模式噪声的主导地位常常会被加剧。虽然较低的帧速率可以被用来允许CMOS或CCD传感器检测足够的光子,从而使信号避免受到读取噪声的主导,但是利用低的帧速率常常会引起所捕获的图像中的运动模糊。当在HMD或其他在使用过程中经历常规运动的设备上执行成像时,运动模糊尤其成问题。
除了影响直通成像之外,与传统图像传感器相关联的读取噪声和/或运动模糊还可能影响由HMD执行的其他操作,诸如后期重新投影、卷帘快门校正、对象跟踪(例如,手部跟踪)、表面重建、语义标记、对象的3D重建,等等。
为了解决与CMOS和/或CCD图像传感器相关联的缺点,已经出现了利用单光子雪崩二极管(SPAD)图像传感器的设备。SPAD像素在偏置电压下操作,该偏置电压使得SPAD能够检测单个光子。在检测到单个光子时,形成电子-空穴对,并且电子通过高电场被加速,引起雪崩倍增(例如,生成附加的电子-空穴对)。因此,每个检测到的光子都可能触发雪崩事件。SPAD可以以门控的方式进行操作(每个门对应于单独的快门操作),其中每个门控快门操作可以被配置为产生二进制输出。二进制输出可以包括“1”,其中在曝光期间检测到雪崩事件(例如,其中检测到光子),或者包括“0”,其中没有检测到雪崩事件。
单独的快门操作可以连续地执行并且在帧捕获时间段上被集成。可以对帧捕获时间段上的连续快门操作的二进制输出进行计数,并且可以基于所计数的二进制输出来计算强度值。
SPAD阵列可以形成图像传感器,其中每个SPAD形成SPAD阵列中的单独像素。为了捕获环境的图像,每个SPAD像素可以检测雪崩事件并且以本文描述的方式为连续快门操作提供二进制输出。可以对帧捕获时间段上的连续快门操作的每像素二进制输出进行计数,并且可以基于所计数的每像素二进制输出来计算每像素强度值。每像素强度值可以被用于形成环境的强度图像。
尽管SPAD传感器有望克服与CMOS或CCD传感器相关联的各种缺点,但是实现用于图像和/或视频捕获的SPAD传感器仍然与许多挑战相关。例如,存在对改进SPAD图像(特别是对于在低光条件下捕获的SPAD图像)的图像质量的持续需求和愿望。
本文要求保护的主题不限于解决任何缺点或仅在诸如上述那些环境中操作的实施例。相反,该背景技术仅被提供来说明可以实践本文描述的一些实施例的一个示例性技术领域。
发明内容
所公开的实施例包括用于获得暗电流图像的***、方法和装置。
一些实施例提供了一种***,其包括一个或多个处理器、以及存储指令的一个或多个硬件存储设备,所述指令由一个或多个处理器可执行以配置***以执行各种动作。动作包括获得第一图像帧、通过将低通滤波器应用于第一图像帧以生成第一低通滤波图像、以及通过从第一图像帧中减去第一低通滤波图像来生成第一估计暗电流图像。
提供本发明内容是为了以简化的形式介绍一些概念的选择,这些概念将在下面的具体实现中被进一步描述。本发明内容无意于标识所要求保护的主题的关键特征或基本特征,也无意于被用作对确定所要求保护的主题的范围的帮助。
附加的特征和优点将在下面的描述中阐述,并且部分地从描述中将是显而易见的,或者可以通过本文的教导的实践而被了解到。本发明的特征和优点可以借助于所附权利要求中特别指出的手段和组合来实现和获得。本发明的特征将从下面的描述和所附权利要求中变得更加明显,或者可以通过如下文阐述的本发明的实践来获悉。
附图说明
为了描述可以获得上述和其他优点和特征的方式,将参考附图中图示出的具体实施例对上面简要描述的主题进行更具体的描述。要理解的是,这些附图仅描绘了典型的实施例并且因此不应被认为是对范围的限制,实施例将通过使用附图以附加的特性和细节来描述和解释,其中:
图1图示了示例***的示例组件,该示例***可以包括或被用来实现一个或多个所公开的实施例;
图2图示了使用单光子雪崩二极管(SPAD)阵列捕获低光环境的图像帧的示例表示;
图3图示了基于SPAD图像来生成低通滤波图像的概念表示;
图4图示了基于SPAD图像和低通滤波图像来生成估计暗电流图像的概念表示;
图5图示了基于估计暗电流图像来生成最终暗电流图像的概念表示;
图6图示了描述与生成低通滤波图像相关联的动作的示例框图;
图7图示了执行下采样操作以生成下采样图像帧的概念表示;
图8图示了基于估计暗电流图像的对应像素来生成最终暗电流图像的输出像素的概念表示;
图9图示了使用时间滤波的SPAD图像和最终暗电流图像来生成暗电流补偿图像的概念表示;以及
图10图示了描绘与获得暗电流图像相关联的动作的示例流程图。
具体实施方式
所公开的实施例总体上涉及用于获得暗电流图像的***、方法和装置。
技术优势、改进和实际应用的示例
鉴于本公开,本领域技术人员将认识到,所公开的实施例中的至少一些可以被实现以解决与至少一些常规成像***相关联的各种缺点,特别是对于低光条件下的成像。以下部分概述了由所公开的实施例提供的一些示例改进和/或实际应用。然而,应当了解,以下仅是示例并且本文描述的实施例决不限于本文讨论的示例改进。
如上面所指出的,存在对改进SPAD图像的图像质量的持续需求和期望,特别是对于在低光条件下所捕获的SPAD图像。例如,与使用SPAD进行图像采集相关联的挑战是由暗电流引发的信号噪声。暗电流(有时被称为反向偏置漏电流)是指即使没有光子进入光敏器件(例如SPAD)时也会流过光敏器件的小电流。暗电流可以由热感应或由晶体学和/或制造不规则性和/或缺陷引起或引发。
在SPAD中,即使当SPAD未检测到光子时,暗电流也可以引起耗尽区中生成电子-空穴对,并可能触发雪崩事件。由暗电流引发的雪崩事件通常被计数为检测到的光子,这可以引起SPAD的二进制输出包括错误计数(或“暗计数”)。在SPAD图像中,暗计数可以引起分配给至少一些SPAD像素的强度值不准确地升高,这可能会向SPAD图像添加噪声。在一些情况下,在低光条件下成像时,暗计数的影响很突出,导致高固定图案噪声,其使用户体验降级。这些像素或像素组(也称为热簇)是比相邻像素具有更高暗电流(也称为“暗计数”)的区域。
用于补偿SPAD图像中的暗电流的一种技术包括获得暗电流图像,其指示SPAD阵列的哪些SPAD像素生成暗计数和/或由不同SPAD像素生成的暗计数的数量。在一些情况下,可以在设备校准期间通过覆盖SPAD传感器并执行图像捕获操作来捕获暗电流图像,从而产生指示SPAD像素之中的暗计数的位置和/或普遍性的暗电流图像。然后诸如通过执行从所捕获的SPAD图像中减去暗电流图像的减法操作,可以在运行时使用暗电流图像对使用SPAD阵列所捕获的图像进行修改以补偿暗计数。
然而,SPAD传感器可以随时间退化和/或以其他方式变化,这可以改变由SPAD像素生成的暗电流的量和/或可以引起附加的SPAD像素生成暗电流。因此,本公开的一方面是促进在运行时生成暗电流图像,从而提供能够生成更新后的暗电流图像的***,该更新后的暗电流图像虑及SPAD传感器随时间的退化和/或变化(例如,无需提示用户覆盖SPAD传感器以捕获更新后的暗电流图像)。
所公开的实施例包括或被配置为执行与在运行时生成暗电流图像相关联的各种动作。例如,被配置为获得暗电流图像的***可以被配置为获得图像帧(例如,使用SPAD阵列捕获的图像帧),通过将低通滤波器应用于图像以生成低通滤波图像帧,并通过从图像帧中减去低通滤波图像来生成估计暗电流图像。可以以类似的方式生成附加的估计暗电流图像(例如,每个都基于相应捕获的图像帧和相应生成的低通滤波图像)。多个估计暗电流图像可以被用来生成最终暗电流图像(例如,通过加权平均,其中基于周围像素的平均值来确定每像素权重)。
因此,可以使用在运行时捕获的图像来获得一个或多个最终暗电流图像。诸如通过从新捕获的图像(例如,新捕获的SPAD图像)中减去最终暗电流图像,最终暗电流图像可以被用来生成暗电流补偿图像。可以根据任何合适的间隔、定时或计划表在运行时捕获最终暗电流图像。
因此,根据本公开,可以以考虑图像传感器随时间退化的方式获得暗电流图像。此外,所公开的技术还可以以有利地避免在运行时对SPAD传感器温度数据的依赖的方式提供暗电流补偿功能性。
尽管本公开在至少一些方面集中于包括SPAD传感器的示例,但是本文公开的原理可以被应用于使用其他类型的图像传感器(例如,CMOS和/或CCD图像传感器)而捕获的图像。
刚刚描述了所公开的实施例的各种高级特征和益处中的一些,现在将注意力转向图1至图10。这些附图图示了与所公开的实施例相关的各种概念表示、架构、方法和支持说明。
用于获得暗电流图像的示例***和技术
图1图示了可以被用来实现一个或多个公开的实施例的***100的各种示例组件。例如,图1图示了***100可以包括(多个)处理器102、(多个)存储装置104、(多个)传感器110、(多个)SPAD阵列112、(多个)输入/输出***114(I/O***)114)和(多个)通信***116。虽然图1将***100图示为包括特定组件,但是鉴于本公开,人们将了解,***100可以包括任何数量的附加或备选组件。
(多个)处理器102可以包括一组或多组电子电路,其包括任意数量的逻辑单元、寄存器和/或控制单元以促进计算机可读指令(例如,形成计算机程序的指令)的执行。这样的计算机可读指令可以被存储在存储装置104内。存储装置104可以包括物理***存储器并且可以是易失性的、非易失性的或其某种组合。此外,存储装置104可以包括本地存储装置、远程存储装置(例如,可经由(多个)通信***116或其他方式访问)或其某种组合。下文将提供与处理器(例如,(多个)处理器102)和计算机存储介质(例如,存储装置104)相关的附加细节。
在一些实现中,(多个)处理器102可以包括或可配置为执行软件和/或硬件组件的任何组合,该软件和/或硬件组件可操作以促进使用机器学习模型或其他基于人工智能的结构/架构的处理。例如,(多个)处理器102可以包括和/或利用可操作来执行功能块和/或处理层的硬件组件或计算机可执行指令,该功能块和/或处理层以非限制性示例的方式被配置为单层神经网络网络、前馈神经网络、径向基函数网络、深度前馈网络、循环神经网络、长短期记忆(LSTM)网络、门控循环单元、自动编码器神经网络、变分自动编码器、去噪自动编码器、稀疏自动编码器、马尔可夫链、Hopfield神经网络、玻尔兹曼机网络、受限玻尔兹曼机网络、深度信念网络、深度卷积网络(或卷积神经网络)、反卷积神经网络、深度卷积逆图形网络、生成对抗网络、液体状态机、极限学习机、回声状态网络、深度残差网络、Kohonen网络、支持向量机、神经图灵机和/或其他网络。
如将更详细地描述的,(多个)处理器102可以被配置为执行存储在存储装置104内的指令106以执行与使用SPAD阵列的成像相关联的某些动作。这些动作可以至少部分地依赖于以易失性或非易失性方式存储在存储装置104上的数据108(例如,雪崩事件计数或跟踪等)。
在一些情况下,动作可以至少部分地依赖于从(多个)远程***118接收数据的(多个)通信***116,(多个)远程***118可以包括例如分开的***或计算设备、传感器和/或其他***。(多个)通信***118可以包括可操作以促进***内组件/设备之间和/或与***外组件/设备之间的通信的软件或硬件组件的任何组合。例如,(多个)通信***118可以包括端口、总线或用于与其他设备/组件通信的其他物理连接装置。附加地或备选地,(多个)通信***118可以包括可操作以通过任何合适的(多个)通信信道(例如,作为非限制性示例,蓝牙、超宽带、WLAN、红外通信等等)来与外部***和/或设备进行无线通信的***/设备。
图1图示了***100可以包括(多个)传感器110或与(多个)传感器110通信。(多个)传感器110可以包括用于捕获或测量表示可感知或可检测现象的数据的任何设备。作为非限制性示例,(多个)传感器110可以包括一个或多个图像传感器、麦克风、温度计、气压计、磁力计、加速计、陀螺仪和/或其他传感器。
图1还图示了(多个)传感器110可以包括(多个)SPAD阵列112。如图1中所描绘的,SPAD阵列112可以包括SPAD像素120的布置,每个SPAD像素120被配置为响应于感测到光子而促进雪崩事件,如上所述。在检测到光子之后,SPAD像素120可以被再充电以使SPAD像素120准备好检测附加的雪崩事件。(多个)SPAD阵列112可以在***100(例如,MR HMD)上被实现以促进各种功能,作为非限制性示例诸如图像捕获和/或计算机视觉任务。
此外,图1图示了***100可以包括(多个)I/O***114或与(多个)I/O***114通信。(多个)I/O***114可以包括任何类型的输入或输出设备,作为非限制性示例诸如触摸屏、鼠标、键盘、控制器等等,但不限于此。例如,(多个)I/O***114可以包括显示***,该显示***可以包括任意数量的显示面板、光学器件、激光扫描显示组件和/或其他组件。
图1概念性地表示***100的组件可以包括或利用各种类型的设备,诸如移动电子设备100A(例如,智能电话)、个人计算设备100B(例如,膝上型计算机)、混合现实头戴式显示器100C(HMD 100C)、飞行器100D(例如,无人机)和/或其他设备。尽管本描述在至少一些方面集中于利用HMD来实现本公开的技术,但是可以使用附加或备选类型的***。
图2图示了使用单光子雪崩二极管(SPAD)阵列捕获低光环境的图像帧的示例表示。具体地,图2示出了在低光环境206内捕获对象204的图像帧208、212和216的HMD 202。HMD 202在至少一些方面对应于上文公开的***100。例如,HMD 202可以包括SPAD阵列(例如,对应于(多个)SPAD阵列112),其包括SPAD像素(例如,对应于SPAD像素120)。SPAD阵列的每个SPAD像素均可配置为响应检测到的光子而触发雪崩事件。检测到的雪崩事件的数量可以被用来生成针对诸如图像帧208、212和216的强度图像的图像数据(例如,图像数据210、214和218)。HMD可以捕获在不同时间点和/或不同姿势的图像帧208、212、216。
从图2中可以明显看出,由用于形成图像帧216的SPAD像素的二进制计数所产生的图像数据218提供了对象204的噪声表示。例如,图2图示了在图像帧216内的高频噪声220,这可以至少部分地由从HMD 202的SPAD阵列的一个或多个SPAD像素中所获得的暗计数产生。在图像帧208和212中描绘了类似的高频噪声和暗计数。
根据本公开,如下文将更详细描述的,由SPAD传感器(或其他成像设备)捕获的图像帧可以被用来获得暗电流图像。这种暗电流图像可以被用来生成暗电流补偿图像(例如,通过从所捕获的图像中减去暗电流图像),其减少或消除了暗电流噪声的普遍性。参考图3至图5提供了被用来从运行时捕获的图像帧中获得暗电流图像的技术的概述。
图3图示了基于SPAD图像来生成低通滤波图像的概念表示。具体地,图3描绘了低通滤波器302,其被应用于图像帧208、212和216以生成相应的低通滤波图像308、312和316(分别对应于图像帧208、212和216)。如图3中所描绘的,低通滤波图像308、312和316包括相对于它们所基于的图像帧(即,针对低通滤波图像308的图像帧208、针对低通滤波图像312的图像帧212以及针对低通滤波图像316的图像帧216)而减少的高频噪声。就这一点而言,低通滤波图像308、312和316可以被视为总体上表示在图像帧208、212和216中捕获的一个或多个“背景”对象(例如,对象204),其中(显然)“前景”噪音基本上被滤掉。
低通滤波302可以包括各种类型的滤波操作中的一种或多种,诸如中值滤波、均值滤波、高斯滤波等等。中值滤波可以包括生成每个输出像素作为具有与输出像素的像素坐标相邻的像素坐标的输入像素的中值(例如,使用以输出像素坐标为中心的预定义的内核)。
尽管传统的中值滤波可以成功地减少输出图像中的高频噪声,但是中值滤波通常利用排序操作来从输入像素值之中确定中值,这可能是高计算成本且耗时的。因此,在一些实施例中,低通滤波302可以包括分层中值滤波,如将在下文中参考图6和图7更详细地描述的。
基于低通滤波图像,***可以生成估计暗电流图像。图4图示了基于SPAD图像和低通滤波图像来生成估计暗电流图像的概念表示。具体地,图4图示了应用于分别从低通滤波图像308、312和316的对应图像帧208、212和216中减去低通滤波图像308、312和316的减法402。可以逐个像素地执行减法402,从每个对应的所捕获的图像帧的每个对应像素值(具有相同的像素坐标)中减去每个低通滤波图像的每个像素值。
如上面所指出的,低通滤波图像可以被视为表示所捕获的场景的“背景”对象,而“前景”噪声被滤掉。沿着这些思路,所捕获的图像帧(例如,图像帧208、212和216)可以被视为包括“背景”对象以及“前景”噪声。因此,从所捕获的图像帧中减去低通滤波图像可以被视为产生包括“前景”噪声的图像,而“背景”对象基本上从其中被去除。这样的图像在图4中被表示为估计暗电流图像408、412和416,其被描绘为基于每个对应集合的图像帧和低通滤波图像的减法402的输出(即,从图像帧208中减去低通滤波图像308产生估计暗电流图像408,从图像帧212中减去低通滤波图像312产生估计暗电流图像412,并且从图像帧216中减去低通滤波图像316产生估计暗电流图像416)。
随着从估计暗电流图像408、412和416中基本上去除“背景”对象,估计暗电流图像408、412和416中示出的剩余“前景”高频噪声可以提供对由捕获图像帧208、212和216的SPAD阵列所产生的暗计数的估计(例如,产生暗计数的SPAD像素的估计)。然而,如图4的示例中所描绘的,由于低通滤波(例如,中值滤波或分层中值滤波)的性质,在估计暗电流图像408、412和416中进行减法402之后,“背景”对象的微弱表示可能仍然存在。
因此,在一些情况下,可以利用多个估计暗电流图像来生成进一步消除“背景”对象的最终暗电流图像,从而导致与图像传感器相关联的暗计数的更精确的表示(相对于估计暗电流图像)。图5图示了基于估计暗电流图像来生成最终暗电流图像的概念表示。具体地,图5图示了执行加权平均502以基于估计暗电流图像408、412和416来生成最终暗电流图像504。
加权平均502可以利用权重来组合/平均估计暗电流图像408、412和416中具有共同坐标的像素的像素值,以生成针对最终暗电流504的输出像素(具有相同坐标)的值。针对不同的估计暗电流图像408、412和416的每个共同坐标像素的权重可以以各种方式来确定,诸如通过使用相邻像素的平均像素值的负指数。与加权平均502相关的附加细节在下文中参考图8进行讨论。
如图5中所描绘的,最终暗电流图像504包括暗计数506,其中“背景”对象的表示基本上被去除。最终暗电流图像504因此可以被用来生成暗电流补偿图像(参见图9)。
如上所述,图6和图7提供了与上文参考图3讨论的低通滤波302相关的附加细节。参考图6和图7讨论的技术可以被视为分层中值滤波,其可以近似于传统中值滤波器的性能(例如,具有大内核),而不依赖于计算和/或时间密集型排序操作。
图6描绘了对(例如,图2至图5的)图像帧208执行下采样602以生成下采样图像帧604。下采样602包括基于输入图像(例如,图像帧208)的输入像素来生成针对下采样图像帧的输出像素604。在一些情况下,下采样图像帧604的每个输出像素从输入图像(例如,图像帧208)被生成为相应的输入像素集合的均值或中值。就这一点而言,下采样图像帧604可以包括比输入图像(例如,图像帧208)更低的图像分辨率。例如,下采样602可以被配置为生成具有宽度减小两倍并且高度减小两倍(其他因子也可以使用)。下面参考图7提供与下采样602相关的附加示例。
图6还图示了判定框606,因此,如果不满足停止条件(在图6中由靠近判定框606的“否”指示),则可以使用先前的下采样图像帧604作为输入再次执行下采样602。就这一点而言,可以迭代地执行下采样602,直到满足停止条件为止。任何合适的停止条件都在本公开的范围内,诸如完成预定次数的迭代、达到预定的输出图像大小或图像分辨率、达到特定量的降噪等。
在经由下采样602而生成下采样图像帧604之后(无论使用图像帧208还是先前的下采样图像帧604作为输入)并且在确定满足停止条件时(在图6中由接近判定框606的的“是”指示),***可以输出低通滤波图像308,其可以包括最近生成的下采样图像帧604。图6中讨论的示例过程可以构成图像帧208的低通滤波302以生成低通滤波图像308(参见图3)。
如上面所指出,如图6中所指出的迭代下采样602的性能可以被视为分层中值滤波。图7提供了与下采样602相关的附加细节,其使得迭代下采样操作能够逼近中值滤波器(例如,具有大内核),同时避免了计算密集型和时间密集型排序操作。
图7图示了图2至图4和图6的图像帧208,以及经由下采样602生成的图6的下采样图像帧604的表示。如上面所指出,根据下采样602,下采样图像帧604的每个输出像素可以基于根据来自输入图像(例如,图像帧208)的相应输入像素集合而计算的均值或中值来生成。
图7图示了图像帧208(输入图像)的像素集合702,其可以被用来生成下采样图像帧604(输出图像)的输出像素706。图7示出了像素集合702的像素包括相应的像素值(例如,强度值),包括像素值97、0、2和43。根据下采样602,可以基于像素集合702来计算平均像素值704,并且平均像素值702可以被用作针对输出像素706的像素值。然而,如图7中所图示,像素集合702的最大像素值和最小像素值可以被排除在平均像素值704的计算之外。例如,图7示出了分别与像素值97和0相关联的“最大”和“最小”标签。图7还示出了从像素值2和43朝向平均像素值704延伸的箭头,同时省略了从像素值97和0(最大和最小)朝向平均像素值704延伸的箭头。
换句话说,输出像素706的值可以通过以下方式来确定:将总像素值计算为像素集合702的像素值的和,根据像素集合702的像素值来确定最大值和最小值702、从总像素值中减去最大值和最小值,并将总像素值除以2。
通过从平均像素值704的计算中排除或以其他方式去除像素集合702的最大和最小像素值,仅剩余的两个中间像素值被用来确定平均像素值704,从而使平均像素值704表示整个像素集合702的中值像素值。因此,无需排序操作就可以获得像素集合702的四个像素值的中值的表示。这样的下采样操作可以被用来生成针对下采样图像帧604的每个输出像素。尽管图7中描绘的下采样仅将输入图像中的4个像素减少到输出图像中的单个像素(导致高度减小两倍并且宽度减小两倍),但是可以重复图7中描绘的下采样以近似于大内核中值滤波器的输出(例如,通过迭代性能,如上面参考图6所讨论的)。
如上面所指出,参考图4,可以从初始图像帧中减去低通滤波图像以生成估计暗电流图像(例如,估计暗电流图像408、412和416),并且参考图5,多个估计暗电流图像帧可以被用来经由加权平均来生成最终暗电流图像(例如,用于生成最终暗电流图像504的加权平均502)。图8提供了与估计暗电流图像的输入像素的加权平均相关的附加细节,以生成最终暗电流图像的输出像素。
具体地,图8示出了来自上面参考图5讨论的示例的估计暗电流图像408、412和416。图8还示出了图5的最终暗电流图像504,重点在于其特定输出像素802。图8还描绘了加权平均860以确定针对最终暗电流图像504的输出像素802的像素值。用于确定加权平均的公式的一般表示在下面的等式(1)中被提供以供参考:
其中W表示加权平均,n表示要被平均的项目的数量,xi表示要被平均的数据值,而wi表示要被应用于要被平均的数据值的权重。
对于输出像素802(且不失一般性地,对于最终暗电流图像504的任何输出像素),输出像素802的像素坐标可以被用来从输入图像帧确定具有共同像素坐标的对应的像素集合(例如,估计暗电流图像408、412和416)。例如,图8图示了估计暗电流图像408的对应像素808、估计暗电流图像412的对应像素812以及估计暗电流图像416的对应像素816,它们中的每个对应像素都具有与最终暗电流图像504的输出像素802的坐标共同的像素坐标。在图8的示例中,每个对应像素具有相关联的对应像素值。例如,对应像素808具有对应像素值810,对应像素812具有对应像素值814,并且对应像素816具有对应像素值818。例如可以使用这些对应像素值810、814和818作为在执行加权平均860时要被平均的数据值(例如,对应于等式(1)中的xi)。
被用来根据加权平均860对这些对应像素值进行平均以生成针对输出像素802的值的权重可以以各种方式来确定。在一些情况下,针对每个特定对应像素值的权重是基于该特定对应像素值周围的像素的平均像素值来确定的。周围像素的平均像素值可以被用作函数的输入,并且函数的输出可以提供权重值。可以使用的示例函数是负指数函数。对与对应像素值相关联的像素块的平均像素值使用负指数函数可以使所得到的权重有利地更加强调相关联的估计暗电流图像中的暗区域并且较少强调亮区域。暗区域可以提供暗电流的更直接表示,因为它们不捕获可能扭曲暗电流的表示的“背景”对象。相反,亮区域可能会导致更多的散粒噪声,这可能会将噪声注入暗电流的表示中。
因此,图8描绘了以估计暗电流图像408的对应像素808为中心的像素块828、以估计暗电流图像412的对应像素812为中心的像素块832、以及以估计暗电流图像416的对应像素816为中心的像素块836。图8还描绘了根据估计暗电流图像408的像素块828的像素计算的平均像素值830、根据估计暗电流图像412的像素块832的像素计算的平均像素值834,以及根据估计暗电流图像416的像素块836的像素计算的平均像素值838。这些平均像素值830、834和838可以被用来分别生成权重848、852和856,诸如通过使用平均像素值830、834和838作为加权函数(例如,负指数函数或其他函数)的输入。然后,权重848、852和856可以被用作与对应像素值810、814和818(例如,对应于等式(1)中的xi)的权重(例如,对应于等式(1)中的wi)以(例如,利用等式(1))经由加权平均860来确定输出像素802的值。
图8还图示了可以使用附加的或备选的输入来生成权重848、852和/或856。例如,图8示出了与估计暗电流图像408相关联的图像元数据850、与估计暗电流图像412相关联的图像元数据854、以及与估计暗电流图像416相关联的图像元数据858。图像元数据850、854和/或858可以被用来分别确定权重848、852和/或856。
图像元数据可以包括各种类型的信息,作为非限制性示例诸如时间新近度、温度、场景照度、姿势或运动数据等等。例如,因为暗计数普遍性可能受到设备温度的影响,并且设备温度可能随时间变化,所以可以将更大的权重分配给与更近的时间点相关联的估计暗电流图像的像素。附加地或备选地,可以基于不同估计暗电流图像之间的温度差异(和/或相对于当前设备温度)来分配权重。如上面所指出,具有较大照度的场景可能包括较大的散粒噪声。因此,可以基于场景照度和/或动态范围(例如,其可以基于灰度级直方图来确定)来分配权重,为具有低照度和/或动态范围的场景给予更大的权重。此外,在一些情况下,促进被用来生成最终暗电流图像的估计暗电流图像之间的场景多样性可以减少“背景”对象持续在最终暗电流图像内的机会。因此,可以基于估计暗电流图像之间的运动数据和/或姿势变化来分配权重。
图像元数据可以与估计暗电流图像相关联和/或与与估计暗电流图像相关联的图像(例如,所捕获的图像帧、低通滤波图像等)相关联。此外,可以利用任何前述或其他因素或图像元数据(例如,运动数据、照度、动态范围、温度、时间新近度等)来选择从其中生成估计暗电流图像的图像帧集合,以用于生成最终暗电流图像。此外,在一些实现中,基于更新后的所捕获的图像(例如,从所捕获的图像生成的更新后的估计暗电流图像)来更新最终暗电流图像504。在一些情况下,本文描述的用于获得暗电流图像(例如,被称为“最终暗电流图像”)的技术响应于检测到触发事件(诸如检测到低光环境(例如,基于所捕获的图像数据或其他传感器数据)、检测到特定设备温度等等)而被触发或选择性地被激活。
图9图示了来自图5和图8的估计暗电流图像504。图9图示了时间滤波图像902,其可以包括图2所捕获的图像帧208、212和216的组合(例如,时间上连续的图像帧的运动补偿组合)。图9此外还示出了执行减法904以从时间滤波图像902中减去暗电流图像504以提供暗电流补偿图像906,从该暗电流补偿图像906中基本上去除了暗电流噪声。应当了解,鉴于本公开,可以从任何图像帧中减去最终暗电流图像,无论该图像是否包括多个所捕获的图像帧的时间滤波组合。
因此,可以实现所公开的技术和实施例以促进暗电流图像的运行时生成,从而适应在初始相机校准之后可能发生的传感器条件和/或成像条件的变化。这样的暗电流图像可以被用于生成暗电流补偿图像,其可以被用于各种目的(例如,在低光或低能见度环境中的改进的直通图像)。
用于获得暗电流图像的(多个)示例方法
下面的讨论现在涉及可以根据本公开执行的多种方法和方法动作。尽管方法动作是按一定顺序来讨论的,并且在流程图中被图示为按特定顺序发生的,但是除非特别说明,否则不需要特定的顺序,或者因为一个动作依赖于在执行该动作之前完成的另一个动作而需要。人们将了解,本公开的某些实施例可以省略本文描述的一项或多项动作。
图10图示了描绘与获得暗电流图像相关联的动作的示例流程图1000。对流程图1000中表示的各种动作的讨论包括对参考图1更详细描述的各种硬件组件的引用。
流程图1000的动作1002包括获得第一图像帧。在一些情况下,利用***100的一个或多个组件(例如,(多个)处理器102、(多个)存储装置104、(多个)传感器110、(多个)SPAD阵列112、(多个)I/O***114、(多个)通信***116)和/或其他组件来执行动作1002。在一些情况下,使用图像传感器来捕获第一图像帧,诸如包括多个SPAD像素的单光子雪崩二极管(SPAD)阵列。
流程图1000的动作1004包括通过将低通滤波器应用于第一图像帧以生成第一低通滤波图像。在一些情况下,利用***100的一个或多个组件(例如,(多个)处理器102、(多个)存储装置104、(多个)传感器110、(多个)SPAD阵列112、(多个)I/O***114、(多个)通信***116)和/或其他组件来执行动作1004。在一些实现中,低通滤波器包括中值滤波器或分层中值滤波器。在一些实现中,将分层中值滤波器应用于第一图像帧包括:(i)迭代地执行一个或多个下采样操作,直到满足停止条件为止,以及(ii)响应于满足停止条件而输出第一低通滤波图像。
在一些情况下,针对一个或多个下采样操作中的每个下采样操作,基于从相应的输入像素集合中计算的均值或中值来生成每个相应的输出像素。每个相应的输入像素集合可以包括四个输入像素。
此外,在一些实现中,一个或多个下采样操作中的每个下采样操作将图像宽度减小两倍并且将图像高度减小两倍。每个相应的输出像素可以通过以下方式来生成:(i)从相应的输入像素集合中排除相应的最大值像素,(ii)从相应的输入像素集合中排除相应的最小值像素,以及(iii)计算相应的输入像素集合的剩余像素的平均值。
换句话说,在一些实现中,每个相应的输出像素通过以下方式来生成:(i)计算相应的输入像素集合的每个像素的像素值的和,(ii)从相应的输入像素集合中确定相应的最大值像素的最大值,(iii)从相应的输入像素集合中确定相应的最小值像素的最小值,(iv)通过从和中减去最大值和最小值来计算修改后的和,以及(v)将修改后的和除以二。
停止条件可以包括执行预定次数的迭代。
流程图1000的动作1006包括通过从第一图像帧中减去第一低通滤波图像来生成第一估计暗电流图像。在一些情况下,利用***100的一个或多个组件(例如,(多个)处理器102、(多个)存储装置104、(多个)传感器110、(多个)SPAD阵列112、(多个)I/O***114、(多个)通信***116)和/或其他组件来执行动作1006。
流程图1000的动作1008包括获得一个或多个附加图像帧。在一些情况下,利用***100的一个或多个组件(例如,(多个)处理器102、(多个)存储装置104、(多个)传感器110、(多个)SPAD阵列112、(多个)I/O***114、(多个)通信***116)和/或其他组件来执行动作1008。在一些实现中,基于与一个或多个附加图像帧相关联的运动数据、照度或动态范围来选择一个或多个附加图像帧。
流程图1000的动作1010包括针对一个或多个附加图像帧中的每个特定附加图像帧,通过对一个或多个附加图像帧中的特定附加图像帧进行低通滤波,生成相应的附加低通滤波图像。在一些情况下,利用***100的一个或多个组件(例如,(多个)处理器102、(多个)存储装置104、(多个)传感器110、(多个)SPAD阵列112、(多个)I/O***114、(多个)通信***116)和/或其他组件来执行动作1010。可以根据上文参考动作1004所讨论的原理来生成(多个)相应的附加低通滤波图像。
流程图1000的动作1012包括针对一个或多个附加图像帧中的每个特定附加图像帧,通过从一个或多个附加图像帧的特定附加图像帧中减去相应的附加低通滤波图像,生成相应的附加估计暗电流图像。在一些情况下,利用***100的一个或多个组件(例如,(多个)处理器102、(多个)存储装置104、(多个)传感器110、(多个)SPAD阵列112、(多个)I/O***114、(多个)通信***116)和/或其他组件来执行动作1012。
流程图1000的动作1014包括基于第一估计暗电流图像和相应的附加估计暗电流图像中的每个附加估计暗电流图像来生成最终暗电流图像。在一些情况下,利用***100的一个或多个组件(例如,(多个)处理器102、(多个)存储装置104、(多个)传感器110、(多个)SPAD阵列112、(多个)I/O***114、(多个)通信***116)和/或其他组件来执行动作1014。在一些实现中,生成最终暗电流图像包括计算第一估计暗电流图像和相应的附加估计暗电流图像中的每个附加估计暗电流图像的加权平均。计算加权平均可以包括:(i)针对最终暗电流图像的每个特定输出像素坐标集合,获得对应的像素值集合,对应的像素值集合包括与第一估计暗电流图像和相应的附加估计暗电流图像中具有与最终暗电流图像的特定输出像素坐标集合相匹配的像素坐标的每个附加估计暗电流图像的像素相关联的像素值,(ii)针对对应像素值集合中的每个特定像素值,确定相应的权重,该相应的权重是基于从以与特定像素值相关联的像素为中心的相应的像素块计算出的相应的平均像素值而被确定的,以及(iii)针对最终暗电流图像的每个特定输出像素坐标集合,使用相应的权重计算对应的像素值集合的加权平均以作为输出像素值。
在一些实现中,相应的权重中的每个权重被确定为相应的平均像素值的负指数。此外,在一些实现中,加权平均利用至少部分地基于与第一估计暗电流图像和相应的附加估计暗电流图像中的每一附加估计暗电流图像相关联的时间新近度而被分配的权重。
所公开的实施例可以包括或利用包括计算机硬件的专用或通用计算机,如下文更详细讨论的。所公开的实施例还包括用于承载或存储计算机可执行指令和/或数据结构的物理和其他计算机可读介质。这样的计算机可读介质可以是可由通用或专用计算机***访问的任何可用介质。以数据形式存储计算机可执行指令的计算机可读介质是一个或多个“物理计算机存储介质”或“(多个)硬件存储设备”。仅承载计算机可执行指令而不存储计算机可执行指令的计算机可读介质是“传输介质”。因此,作为示例而非限制,当前实施例可以包括至少两种截然不同的计算机可读介质:计算机存储介质和传输介质。
计算机存储介质(又名“硬件存储设备”)是计算机可读硬件存储设备,诸如RAM、ROM、EEPROM、CD-ROM、基于RAM的固态驱动器(“SSD”)、闪存、相变存储器(“PCM”)或其他类型的存储器、或其他光盘存储、磁盘存储或其他磁存储设备、或任何其他可以被用来以可由通用或专用计算机访问的计算机可执行指令、数据或数据结构的形式在硬件中存储所需程序代码的介质。
“网络”被定义为能够在计算机***和/或模块和/或其他电子设备之间传送电子数据的一个或多个数据链路。当信息通过网络或其他通信连接(硬连线、无线或硬连线或无线的组合)被传送或提供给计算机时,计算机正确地将连接视为传输介质。传输介质可以包括网络和/或数据链路,其可以被用来携带计算机可执行指令或数据结构形式的程序代码并且可以由通用或专用计算机访问。上述的组合也被包括在计算机可读介质的范围内。
此外,在到达各种计算机***组件时,计算机可执行指令或数据结构形式的程序代码装置可以自动地从传输计算机可读介质被传送到物理计算机可读存储介质(或反之亦然)。例如,通过网络或数据链路接收到的计算机可执行指令或数据结构可以被缓冲在网络接口模块(例如,“NIC”)内的RAM中,然后最终被传送到计算机***RAM和/或计算机***处的非易失性计算机可读物理存储介质。因此,计算机可读物理存储介质可以被包括在也(或者甚至主要)利用传输介质的计算机***组件中。
计算机可执行指令包括例如使通用计算机、专用计算机或专用处理设备执行特定功能或功能组的指令和数据。计算机可执行指令可以是例如二进制、诸如汇编语言的中间格式指令、或者甚至是源代码。尽管已经以特定于结构特征和/或方法动作的语言描述了本主题,但是应当理解,所附权利要求中定义的主题不一定限于上述特征或动作。相反,所描述的特征和动作作为实现权利要求的示例形式而被公开。
所公开的实施例可以包括或利用云计算。云模型可以由各种特性(例如,按需自助服务、广泛网络访问、资源池、快速弹性、可测量服务等)、服务模型(例如,软件即服务(“SaaS”)、平台即服务(“PaaS”)、基础设施即服务(“IaaS”)和部署模型(例如私有云、社区云、公共云、混合云等)组成。
本领域技术人员将了解,本发明可以在具有许多类型的计算机***配置的网络计算环境中被实践,包括个人计算机、台式计算机、膝上型计算机、消息处理器、手持设备、多处理器***、基于微处理器或可编程的消费电子产品、网络PC、小型计算机、大型计算机、移动电话、PDA、寻呼机、路由器、交换机、可穿戴设备等等。本发明还可以在分布式***环境中被实践,其中通过网络(或者通过硬连线数据链路、无线数据链路或者通过硬连线和无线数据链路的组合)来链接的多个计算机***(例如,本地和远程***)执行任务。在分布式***环境中,程序模块可以位于本地和/或远程存储器存储设备中。
备选地或附加地,本文描述的功能性可以至少部分地由一个或多个硬件逻辑组件来执行。例如但不限于,可以使用的硬件逻辑组件的说明性类型包括现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、***级芯片***(SOC)、复杂可编程逻辑器件(CPLD)、中央处理单元(CPU)、图形处理单元(GPU)等等。
如本文中所使用的,术语“可执行模块”、“可执行组件”、“组件”、“模块”或“引擎”可以指的是硬件处理单元或可以在一个或多个计算机***上执行的软件对象、例程或方法。本文描述的不同组件、模块、引擎和服务可以被实现为在一个或多个计算机***上执行的对象或处理器(例如,作为单独的线程)。
人们还将了解,本文公开的任何特征或操作可以如何与本文公开的其他特征和操作中的任何一个或组合进行组合。另外,任何一个附图中的内容或特征可以与任何其他附图中使用的任何内容或特征进行组合或与之结合使用。就这一点而言,任何一个附图中公开的内容不是相互排斥的,而是可以与来自任何其他附图的内容进行组合。
在不背离本发明的精神或特性的情况下,本发明可以以其他具体形式来实现。所描述的实施例在所有方面都应被视为仅是说明性的而非限制性的。因此,本发明的范围由所附权利要求而不是前述描述来指示。落入权利要求的等同物的含义和范围内的所有改变均被包含在其范围内。
Claims (15)
1.一种用于获得暗电流图像的***,包括:
一个或多个处理器;以及
一个或多个硬件存储设备,存储由所述一个或多个处理器可执行的指令以:
获得第一图像帧;
通过将低通滤波器应用于所述第一图像帧以生成第一低通滤波图像;以及
通过从所述第一图像帧中减去所述第一低通滤波图像来生成第一估计暗电流图像。
2.根据权利要求1所述的***,其中所述低通滤波器包括中值滤波器、均值滤波器或高斯滤波器。
3.根据权利要求2所述的***,其中所述中值滤波器包括中值滤波器,并且其中所述中值滤波器包括分层中值滤波器。
4.根据权利要求3所述的***,其中将所述分层中值滤波器应用于所述第一图像帧包括:
迭代地执行一个或多个下采样操作,直到停止条件被满足为止,其中针对所述一个或多个下采样操作中的每个下采样操作,每个相应的输出像素基于从相应的输入像素集合中计算的均值或中值而被生成;以及
响应于所述停止条件被满足,输出所述第一低通滤波图像。
5.根据权利要求4所述的***,其中所述一个或多个下采样操作中的每个下采样操作将图像宽度减小两倍并且将图像高度减小两倍。
6.根据权利要求4所述的***,其中每个相应的输出像素通过以下方式来生成:
从所述相应的输入像素集合中排除相应的最大值像素;
从所述相应的输入像素集合中排除相应的最小值像素;以及
计算所述相应的输入像素集合的剩余像素的平均值。
7.根据权利要求4所述的***,其中每个相应的输入像素集合包括四个输入像素。
8.根据权利要求7所述的***,其中每个相应的输出像素通过以下方式来生成:
计算所述相应的输入像素集合的每个像素的像素值之和;
从所述相应的输入像素集合中确定相应的最大值像素的最大值;
从所述相应的输入像素集合中确定相应的最小值像素的最小值;
通过从所述和中减去所述最大值和所述最小值来计算修改后的和;以及
将修改后的所述和除以二。
9.根据权利要求1所述的***,其中所述指令由所述一个或多个处理器可执行以将所述***还配置为:
获得一个或多个附加图像帧;
针对所述一个或多个附加图像帧中的每个特定附加图像帧,通过对所述一个或多个附加图像帧中的所述特定附加图像帧进行低通滤波,生成相应的附加低通滤波图像;以及
针对所述一个或多个附加图像帧中的每个特定附加图像帧,通过从所述一个或多个附加图像帧中的所述特定附加图像帧中减去所述相应的附加低通滤波图像,生成相应的附加估计暗电流图像。
10.根据权利要求9所述的***,其中所述一个或多个附加图像帧基于与所述一个或多个附加图像帧相关联的运动数据、照度或动态范围而被选择。
11.根据权利要求9所述的***,其中所述指令由所述一个或多个处理器可执行以将所述***还配置为:
基于所述第一估计暗电流图像和所述相应的附加估计暗电流图像中的每个附加估计暗电流图像来生成最终暗电流图像。
12.根据权利要求11所述的***,其中生成所述最终暗电流图像包括计算所述第一估计暗电流图像和所述相应的附加估计暗电流图像中的每个附加估计暗电流图像的加权平均。
13.根据权利要求12所述的***,其中计算所述加权平均包括:
针对所述最终暗电流图像的每个特定输出像素坐标集合,获得对应的像素值集合,所述对应的像素值集合包括与所述第一估计暗电流图像和所述相应的附加估计暗电流图像中具有与所述最终暗电流图像的所述特定输出像素坐标集合相匹配的像素坐标的每个附加估计暗电流图像的像素相关联的像素值;
针对所述对应的像素值集合中的每个特定像素值,确定相应的权重,所述相应的权重是基于从以与所述特定像素值相关联的所述像素为中心的相应的像素块计算的相应的平均像素值而被确定的;以及
针对所述最终暗电流图像的每个特定输出像素坐标集合,使用所述相应的权重计算所述对应的像素值集合的加权平均以作为输出像素值。
14.根据权利要求13所述的***,其中所述相应的权重中的每个权重被确定为所述相应的平均像素值的负指数。
15.根据权利要求12所述的***,其中所述加权平均利用至少部分地基于与所述第一估计暗电流图像和所述相应的附加估计暗电流图像中的每个附加估计暗电流图像相关联的时间新近度而被分配的权重。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/506,218 | 2021-10-20 | ||
US17/506,218 US11765475B2 (en) | 2021-10-20 | 2021-10-20 | Systems and methods for obtaining dark current images |
PCT/US2022/034207 WO2023069155A1 (en) | 2021-10-20 | 2022-06-21 | Systems and methods for obtaining dark current images |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118119966A true CN118119966A (zh) | 2024-05-31 |
Family
ID=82547252
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280070333.4A Pending CN118119966A (zh) | 2021-10-20 | 2022-06-21 | 用于获得暗电流图像的***和方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11765475B2 (zh) |
CN (1) | CN118119966A (zh) |
WO (1) | WO2023069155A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11696049B2 (en) * | 2021-05-28 | 2023-07-04 | Microsoft Technology Licensing, Llc | Systems and methods for dark current compensation in single photon avalanche diode imagery |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6714241B2 (en) | 2001-04-25 | 2004-03-30 | Hewlett-Packard Development Company, L.P. | Efficient dark current subtraction in an image sensor |
US7362911B1 (en) * | 2003-11-13 | 2008-04-22 | Pixim, Inc. | Removal of stationary noise pattern from digital images |
DE102005028892A1 (de) * | 2005-06-22 | 2006-12-28 | Siemens Ag | Bearbeitungsverfahren für ein zweidimensionales Anfangsbild und hiermit korrespondierende Gegenstände |
JP2008165312A (ja) * | 2006-12-27 | 2008-07-17 | Konica Minolta Holdings Inc | 画像処理装置及び画像処理方法 |
US20080284854A1 (en) * | 2007-05-18 | 2008-11-20 | Dts, Inc. | System and method of static pattern removal from movies captured using a digital CCD camera |
US8749635B2 (en) * | 2009-06-03 | 2014-06-10 | Flir Systems, Inc. | Infrared camera systems and methods for dual sensor applications |
US8355063B2 (en) | 2010-09-27 | 2013-01-15 | Sharp Laboratories Of America, Inc. | Camera noise reduction for machine vision systems |
EP2618560B1 (en) | 2012-01-18 | 2016-08-03 | Harvest Imaging bvba | Dark current correction for shutterless cameras |
JP6041502B2 (ja) | 2012-03-12 | 2016-12-07 | キヤノン株式会社 | 画像処理装置および制御方法 |
SE536859C2 (sv) * | 2012-12-11 | 2014-10-07 | Flir Systems Ab | Metod för bildbehandling och bildbehandlande anordning. |
JP2021005741A (ja) * | 2017-09-14 | 2021-01-14 | シャープ株式会社 | 画像符号化装置及び画像復号装置 |
JP7062430B2 (ja) * | 2017-12-15 | 2022-05-06 | キヤノン株式会社 | 撮像素子、撮像装置および画像処理方法 |
-
2021
- 2021-10-20 US US17/506,218 patent/US11765475B2/en active Active
-
2022
- 2022-06-21 CN CN202280070333.4A patent/CN118119966A/zh active Pending
- 2022-06-21 WO PCT/US2022/034207 patent/WO2023069155A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2023069155A1 (en) | 2023-04-27 |
US11765475B2 (en) | 2023-09-19 |
US20230117006A1 (en) | 2023-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109565551B (zh) | 对齐于参考帧合成图像 | |
CN109903324B (zh) | 一种深度图像获取方法及装置 | |
US20240112605A1 (en) | Systems and methods for adding persistence to single photon avalanche diode imagery | |
US11962922B2 (en) | Systems and methods for dark current compensation in single photon avalanche diode imagery | |
US20230300483A1 (en) | Systems and methods for obtaining color imagery using single photon avalanche diodes | |
US20230403385A1 (en) | Spad array for intensity image capture and time of flight capture | |
CN118140244A (zh) | 时间滤波权重计算 | |
US11539895B1 (en) | Systems, methods, and media for motion adaptive imaging using single-photon image sensor data | |
CN118119966A (zh) | 用于获得暗电流图像的***和方法 | |
US11985433B2 (en) | SPAD array for intensity image sensing on head-mounted displays | |
US11683593B2 (en) | High dynamic range image capture using single photon avalanche diodes | |
US11563908B2 (en) | Image acquisition techniques with reduced noise using single photon avalanche diodes | |
CN117413528A (zh) | 用于使用单光子雪崩二极管(spads)的功率高效的图像获取的***和方法 | |
US20220353489A1 (en) | Systems and methods for efficient generation of single photon avalanche diode imagery with persistence | |
US12010443B2 (en) | Systems and methods for selectively modifying gating rate in single photon avalanche diodes | |
US11849227B2 (en) | Image sensing pixel configurations for reduced sensor noise | |
US20240251182A1 (en) | Systems and methods for dark current compensation in single photon avalanche diode imagery | |
US20240054659A1 (en) | Object detection in dynamic lighting conditions | |
US20240242366A1 (en) | Model for Determining Consistent Depth of Moving Objects in Video | |
CN116888531A (zh) | 头戴式显示器中单光子雪崩二极管阵列的热缓解 | |
CN118318454A (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 |