CN114762321B - 叠加视频帧以增强图像亮度 - Google Patents
叠加视频帧以增强图像亮度 Download PDFInfo
- Publication number
- CN114762321B CN114762321B CN202080077751.7A CN202080077751A CN114762321B CN 114762321 B CN114762321 B CN 114762321B CN 202080077751 A CN202080077751 A CN 202080077751A CN 114762321 B CN114762321 B CN 114762321B
- Authority
- CN
- China
- Prior art keywords
- video
- video frame
- brightness
- luminance
- frame
- 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
- 238000000034 method Methods 0.000 claims abstract description 56
- 238000012937 correction Methods 0.000 claims abstract description 37
- 238000012935 Averaging Methods 0.000 claims abstract description 8
- 230000002708 enhancing effect Effects 0.000 claims abstract description 6
- 235000019557 luminance Nutrition 0.000 claims description 117
- 230000015654 memory Effects 0.000 claims description 49
- 238000012545 processing Methods 0.000 claims description 19
- 241000023320 Luma <angiosperm> Species 0.000 claims description 17
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 claims description 17
- 230000003044 adaptive effect Effects 0.000 claims description 6
- 230000004044 response Effects 0.000 claims description 6
- 230000001965 increasing effect Effects 0.000 claims description 5
- 230000035945 sensitivity Effects 0.000 claims description 4
- 238000002156 mixing Methods 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 19
- 238000001514 detection method Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 11
- 238000012546 transfer Methods 0.000 description 5
- 230000010267 cellular communication Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000003321 amplification Effects 0.000 description 2
- 238000013475 authorization Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000003199 nucleic acid amplification method Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000003213 activating effect Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000012790 confirmation Methods 0.000 description 1
- 230000001815 facial effect Effects 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 229920006395 saturated elastomer Polymers 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 210000000707 wrist Anatomy 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/141—Systems for two-way working between two video terminals, e.g. videophone
- H04N7/147—Communication arrangements, e.g. identifying the communication as a video-communication, intermediate storage of the signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/44—Receiver circuitry for the reception of television signals according to analogue transmission standards
- H04N5/57—Control of contrast or brightness
- H04N5/58—Control of contrast or brightness in dependence upon ambient light
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/40—Image enhancement or restoration by the use of histogram techniques
-
- 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 by the use of more than one image, e.g. averaging, subtraction
-
- G06T5/92—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/70—Circuitry for compensating brightness variation in the scene
- H04N23/71—Circuitry for evaluating the brightness variation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/70—Circuitry for compensating brightness variation in the scene
- H04N23/72—Combination of two or more compensation controls
-
- 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
-
- 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/10016—Video; Image sequence
-
- 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/20072—Graph-based image processing
-
- 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/20172—Image enhancement details
- G06T2207/20208—High dynamic range [HDR] image processing
-
- 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
Abstract
一种在流传输期间增强视频的视频帧中的亮度的方法。该方法包括由处理器确定第一视频帧具有低亮度。该方法还包括由处理器应用线性校正以在第一视频帧中提供第一亮度增强,该第一亮度增强将预定最暗像素百分比的第一亮度修改为小于暗度阈值,或者将预定最亮像素百分比的第二亮度修改为大于亮度阈值。该方法还包括由处理器将第一视频帧的第一亮度增强与对应于在先视频帧的亮度增强集合进行平均,以生成经修改的视频。
Description
相关申请的交叉引用
本申请要求2019年12月12日提交的题为“叠加视频帧以增强图像亮度”的美国专利申请No.16/712,715的优先权,在此将其全文引入作为参考。
背景技术
在黑暗环境中的视频呼叫可能会导致视频亮度不足,难以看到视频中的对象。手动增加显示器的曝光可导致对象的面部看起来过度曝光。使用计算成本高的硬件或软件解决方案来校正亮度则可可能由于计算负担而导致流视频的帧速率降低。
本文提供的背景技术是为了一般性地呈现本公开的上下文的目的。在此背景技术部分中描述了本发明的发明人的工作,以及在提交时可能不具有现有技术资格的描述的各方面,既不明确地也不隐含地承认作为本公开的现有技术。
发明内容
实施例通常涉及一种在流传输期间增强视频中的视频帧的亮度的方法。该方法包括由处理器确定第一视频帧具有低亮度。该方法还包括由处理器在第一视频帧中应用线性校正以提供第一亮度增强,该第一亮度增强将预定最暗像素百分比的第一亮度修改为小于暗度阈值,或者将预定最亮像素百分比的第二亮度修改为大于亮度阈值。该方法还可以包括由处理器利用对应于在先视频帧的亮度增强集合来对第一视频帧的第一亮度增强进行平均,以生成修改后的视频。
在一些实施例中,所述方法还包括:由与所述处理器不同的图形处理单元(GPU)对所述第一视频帧进行缩小,其中所述第一视频帧存储在所述GPU的GPU存储器中,并且其中所述GPU存储器不能被所述处理器访问;由所述GPU将所述缩小后的第一视频帧传送到可由所述处理器访问的计算机处理存储器中;以及由所述处理器生成缩小的第一视频帧的亮度直方图,其中由GPU将线性校正应用到第一视频帧。在一些实施例中,被平均的视频帧集合中的视频帧的数量基于视频的帧速率或第一视频帧的输入亮度中的至少一个。在一些实施例中,基于环境光传感器值未达到第一阈值或指数移动平均帧亮度未达到第二阈值中的至少一个,来确定第一视频帧具有低亮度。在一些实施例中,将第一视频帧的第一亮度增强与对应于在先视频帧的亮度增强集合进行平均以产生经修改的视频。在一些实施例中,视频帧由耦接到处理器的摄像机捕获,并且该方法还包括由处理器确定经修改的视频是否满足亮度阈值,响应于确定该经修改的视频不满足亮度阈值,由处理器改变一个或多个摄像机设置,以及响应于确定该经修改的视频确实满足亮度阈值,显示经修改的视频。在一些实施例中,改变一个或多个摄像机设置包括增加曝光时间或修改图像传感器的灵敏度中的至少一个。在一些实施例中,该方法还包括对第一视频帧应用对比度受限自适应直方图均衡(CLAHE)。在一些实施例中,将CLAHE应用于第一视频帧包括:(a)将CLAHE应用于第一视频帧的亮度通道,(b)将CLAHE应用于第一视频帧的每个色度通道,以及(c)混合来自(a)和(b)的结果。在一些实施例中,该方法还包括通过计算帧集合的平均亮度的和的平方根来确定第一视频帧的总亮度,其中帧集合中的每个帧取平方数,确定乘数为0.5除以总亮度,以及通过将乘数乘以第一视频帧的输入值的平方和的平方根来确定最终输出值。在一些实施例中,确定总亮度包括确定第一总亮度超过阈值,响应于第一总亮度超过阈值,从该帧集合中移除第二帧,以及计算第二总亮度。
一种非暂时性计算机可读介质,其可包括存储于其上的指令,所述指令在由一个或一个以上计算机执行时致使所述一个或一个以上计算机执行操作,所述操作包括:确定第一视频帧具有低亮度,并且在第一视频帧中应用线性校正以提供第一亮度增强,该第一亮度增强将预定最暗像素百分比的第一亮度修改为小于暗度阈值,或者将预定最亮像素百分比的第二亮度修改为大于亮度阈值。
在一些实施例中,所述操作还包括:由与所述处理器不同的图形处理单元(GPU)对所述第一视频帧进行缩小,其中所述第一视频帧存储在所述GPU的GPU存储器中,并且其中所述GPU存储器不能被所述处理器访问;由所述GPU将所述缩小后的第一视频帧传送到可由所述处理器访问的计算机处理存储器中;以及由所述处理器生成缩小的第一视频帧的亮度直方图,其中由GPU将线性校正应用到第一视频帧。在一些实施例中,被平均的视频帧集合中的视频帧的数量基于视频的帧速率或第一视频帧的输入亮度中的至少一个。在一些实施例中,基于环境光传感器值未达到第一阈值或指数移动平均帧亮度未达到第二阈值中的至少一个,来确定第一视频帧具有低亮度。在一些实施例中,操作还包括将第一视频帧的第一亮度增强与对应于在先视频帧的亮度增强集合进行平均以产生经修改的视频。
系统可以包括一个或多个处理器;以及存储有由所述一个或多个处理器执行的指令的存储器,所述指令包括:确定第一视频帧具有低亮度,并在第一视频帧中应用线性校正以提供第一亮度增强,该第一亮度增强将预定最暗像素百分比的第一亮度修改为小于暗度阈值,或者将预定最亮像素百分比的第二亮度修改为大于亮度阈值。
在一些实施例中,所述指令还包括:由与所述处理器不同的图形处理单元(GPU)对所述第一视频帧进行缩小,其中所述第一视频帧存储在所述GPU的GPU存储器中,并且其中所述GPU存储器不能被所述处理器访问;由所述GPU将所述缩小后的第一视频帧传送到可由所述处理器访问的计算机处理存储器中;以及由所述处理器生成缩小的第一视频帧的亮度直方图,其中由GPU将线性校正应用到第一视频帧。在一些实施例中,被平均的视频帧集合中的视频帧的数量基于视频的帧速率或第一视频帧的输入亮度中的至少一个。在一些实施例中,基于环境光传感器值未达到第一阈值或指数移动平均帧亮度未达到第二阈值中的至少一个,来确定第一视频帧具有低亮度。在一些实施例中,所述指令进一步包括将所述第一视频帧的所述第一亮度增强与对应于在先视频帧的亮度增强集合进行平均以产生经修改的视频。
附图说明
该专利或申请文件包含至少一幅彩色附图。专利局将在请求和支付必要的费用的基础上提供本专利或专利申请出版物的彩色附图副本。
本公开以示例的方式说明,而不是限制在附图中的附图中,其中相似的附图标记用于指代相似的元件。
图1示出了根据一些实施例增强视频帧的亮度的示例环境的框图。
图2示出了根据一些实施例的增强视频帧的亮度的示例性计算设备的框图。
图3A示出了根据一些实施例的启用微光模式的示例用户界面。
图3B示出了根据一些实施例的一旦微光模式被启用的用户界面的示例。
图4A示出了根据一些实施例的应用对比度受限自适应直方图均衡(CLAHE)的示例方法的流程图。
图4B说明根据一些实施例使用图4A中所描述的CLAHE校正而改变的对应视频帧。
图5示出了根据一些实施例的用于增强视频帧的亮度的示例方法的流程图。
图6示出了根据一些实施例的获得用户同意启用微光模式的示例方法的流程图。
具体实施方式
为了解决在微光设置中提供高质量视频的问题,在此描述了增强视频帧的亮度的技术。首先,确定用户是否同意微光模式。如果用户未同意微光模式,则该方法等待直到用户同意(如果有的话)。如果用户的确同意微光模式,则视频应用程序分析视频帧以确定第一视频帧具有低亮度。对第一视频帧执行校正以产生经修改的视频。例如,应用线性校正,对比度受限自适应直方图均衡校正或总亮度确定来提供第一视频帧中的亮度增强。
视频应用程序确定修改后的视频是否满足亮度阈值。如果经修改的视频满足亮度阈值,那么分析后续视频帧以确定其是否具有低亮度。如果经修改的视频未能满足亮度阈值,则改变一个或多个摄像机设置。
下面描述的各种实施例具有几个优点。首先,亮度增强通过分析亮度值的分布而不是使用平均亮度值来避免对象在视频中的过度曝光或帧速率的降低。第二,下面描述的技术包括对与第一视频帧相关联的第一亮度增强与对应于在先视频帧的亮度增强集合进行平均,以生成降噪后的经修改的视频,其中噪声来自于增强视频帧的期间产生的放大。
示例环境
图1示出了其中增强视频帧的亮度的示例环境100的框图。所示的环境100包括视频服务器101,用户设备115a,115n和网络105。用户125a,125n可以与相应的用户设备115a,115n相关联。在一些实施例中,环境100可以包括图1中未示出的其它服务器或设备,或者可以不包括视频服务器101。在图1和其余附图中,在参考数字(例如,“115a”)之后的字母表示对具有该特定参考数字的元件的参考。在没有以下字母的文本中的参考数字,例如“115”,表示对带有该参考数字的元件的实施例的一般参考。
视频服务器101可以包括处理器,存储器和网络通信硬件。在一些实施例中,视频服务器101是硬件服务器。视频服务器101经由信号线102通信地耦接到网络105。信号线102可以是有线连接,例如以太网,同轴电缆,光纤电缆等,或无线连接,例如Wi-Fi,蓝牙或其它无线技术。在一些实施例中,视频服务器101经由网络105向一个或多个用户设备115a,115n发送数据和从一个或多个用户设备115a,115n接收数据。视频服务器101可以包括视频应用程序103a和数据库199。
视频应用程序103a可包括可操作的代码和例程,该代码和例程用以增强视频帧的亮度和/或将经修改的视频传输到另一用户装置115n。在一些实施例中,可使用包括中央处理单元(CPU),现场可编程门阵列(FPGA),专用集成电路(ASIC),任何其它类型的处理器或其组合的硬件来实施视频应用程序103a。在一些实施例中,视频应用程序103a可以使用硬件和软件的组合来实现。
数据库199可以存储视频,该视频包括从用户设备115接收的经修改的视频。当与生成经修改的视频的客户端设备相关联的用户提供存储视频的许可时,存储视频。数据库199可以存储被索引并与移动设备115的用户125的身份相关联的视频。例如,视频可以被索引,其中,该索引与将用户125描述为一个社交网络成员的元数据相关联,该社交网络包括连接到该社交网络的会员的简介的链接。数据库199还可以存储与用户125相关联的社交网络数据、用户125的用户偏好等。
在一些实施例中,视频应用程序103可以对视频帧执行面部识别。在这里讨论的系统和方法可以收集或使用关于用户的个人信息(例如,用户数据,关于用户的社交网络的信息,视频应用程序103对视频的存储和分析等)的情况下,向用户提供控制是否收集个人信息、是否存储个人信息、是否使用个人信息、是否分析图像或视频的机会。以及如何收集、存储和使用用户的信息。也就是说,这里讨论的系统和方法可以仅在从相关用户接收到明确的授权时才收集,存储和/或使用用户个人信息。例如,向用户提供对节目或特征是否收集关于该特定用户或与该节目或特征相关的其他用户的用户信息的控制。向要为其收集个人信息的每个用户呈现一个或多个选项,以允许对与该用户相关的信息收集进行控制,从而提供关于是否收集信息以及关于要收集信息的哪些部分的许可或授权。例如,可以通过通信网络向用户提供一个或多个这样的控制选项。此外,在存储或使用某些数据之前,可以以一种或多种方式来处理这些数据,以便去除个人可识别的信息。
用户设备115可以是包括存储器和硬件处理器的计算设备。例如,用户设备115可以包括台式计算机、移动设备、平板计算机、移动电话、可穿戴设备、头戴式显示器,移动电子邮件设备,便携式游戏机,便携式音乐播放器,读取器设备或能够访问网络105的另一电子设备。
在所示的实现中,用户设备115a经由信号线108耦接到网络105,并且用户设备115n经由信号线110耦接到网络105。信号线108和110可以是有线连接,例如以太网,同轴电缆,光纤电缆等,或无线连接,例如Wi-Fi,蓝牙或其它无线技术。用户设备115a,115n分别由用户125a,125n访问。图1中的用户设备115a,115n作为示例被使用。虽然图1示出了两个用户设备115a和115n,但是本公开适用于具有一个或多个用户设备115的系统体系结构。
在一些实施例中,用户设备115可以是用户125穿戴的可穿戴设备。例如,用户设备115a被包括作为夹子(例如腕带)的一部分、珠宝的一部分或一副眼镜的一部分。在另一示例中,用户设备115a可以是智能手表。视频应用程序103b可以生成从用户设备115a流传输的具有增强亮度的视频帧。
在一些实施例中,用户设备115a可以包括视频应用程序103b,其生成用于视频呼叫的具有增强的亮度的视频帧。视频应用程序103b可以确定第一视频帧具有低亮度,对第一视频帧应用亮度增强的校正,利用对应于在先视频帧的亮度增强集合来对第一视频帧的亮度增强进行平均以生成经修改的视频,并且将具有增强的亮度的经修改的视频发送到用户设备115。视频应用程序103b可针对来自一系列视频帧的附加帧(例如,在视频呼叫期间由用户装置115a捕获)重复此过程。
在通过网络105的视频呼叫期间,用户设备115a可以直接或经由视频服务器101将例如包括该组视频帧的视频流发送到用户设备115n。用户设备115n可以包括显示视频流的视频应用程序103c。
在所示的实现中,环境100的实体经由网络105通信地耦接。网络105可以是传统类型的有线或无线的,并且可以具有多种不同的配置,包括星形配置、令牌环配置或其它配置。此外,网络105可以包括局域网(LAN)、广域网(WAN)(例如,因特网)和/或多个设备可以通过其通信的其它互连数据路径。在一些实施例中,网络105可以是对等网络。网络105还可以耦接到电信网络或包括电信网络的用于以各种不同的通信协议发送数据的部分。在一些实施例中,网络105包括由IEEE 902.11规定的通信网络、无线局域网(WLAN)、计算机通信或用于发送和接收数据的蜂窝通信网络,所述数据包括经由短消息服务(SMS)、多媒体消息服务(MMS)、超文本传输协议(HTTP)、直接数据连接、电子邮件等。尽管图1示出了耦接到用户设备115和视频服务器101的一个网络105,但是实际上可以将一个或多个网络105耦接到这些实体。
示例性计算设备
图2示出了增强视频帧亮度的示例性计算设备200的框图。计算设备200可以是用户设备115或视频服务器101。计算设备200可以包括处理器235,存储器237,图形处理单元(GPU)239,通信单元241,摄像机243,显示器245和存储设备247。根据计算设备200的类型,可以存在附加的组件,或者可以省略一些先前的组件。视频应用程序103可以存储在存储器237中。在一些实施例中,计算设备200可以包括这里未列出的其它组件,例如电池等。计算设备200的组件可以通过总线218通信地耦接。总线218可以是在计算设备200的各个部分之间传送信号的通信总线。
处理器235包括算术逻辑单元、微处理器,通用控制器或某一其它处理器阵列执行计算并向显示装置提供指令。处理器235处理数据且可包括各种计算架构,包括复杂指令集计算机(CISC)架构、精简指令集计算机(RISC)架构或实施指令集组合的架构。尽管图2示出了单个处理器235,但是可以包括多个处理器235。在不同的实施例中,处理器235可以是单核处理器或多核处理器。其它处理器(例如,图形处理单元)、操作系统、传感器、显示器和/或物理配置可以是计算设备200的一部分。处理器235耦接到总线220以经由信号线222与其它组件通信。
存储器237存储可由处理器235执行的指令和/或数据。指令可以包括用于执行这里描述的技术的代码和/或例程。存储器237可以是动态随机存取存储器(DRAM)设备,静态RAM或一些其它存储器设备。在一些实施例中,存储器237还包括非易失性存储器,例如静态随机存取存储器(SRAM)设备或闪速存储器,或类似的永久存储设备和介质,包括硬盘驱动器、光盘只读存储器(CD-ROM)设备、DVD-ROM设备、DVD-RAM设备、DVD-RW设备、闪速存储器设备、或用于在更永久的基础上存储信息的一些其它大容量存储设备。存储器237包括可操作来执行视频应用程序程序103的代码和例程,这将在下面更详细地描述。存储器237耦接到总线220以经由信号线224与其它组件通信。
图形处理单元(GPU)239可包含可操作以按比例缩小视频帧的硬件。在一些实施例中,GPU 239包括GPU存储器,例如帧缓冲器,其存储可由GPU 239执行的指令和/或数据。所述指令可包括用于按比例缩小视频帧的代码和/或例程。在一些实施例中,GPU 239通过对视频帧中的单个像素进行采样来产生经下采样的视频帧。在一些实施例中,原始视频帧和相应的缩小视频帧被存储在GPU 239的存储器中。GPU 239可将经缩小的视频帧传输到与处理器239相关联的存储器237。在一些实现中,GPU 239可包括可并行执行操作的大量处理核心,例如256个核心、1000个核心等。例如,可以通过将视频帧划分成多个区域并使用GPU的单独核心来缩小每个区域来执行视频帧的缩小。这种操作可以以允许处理从包括GPU 239的客户端设备经由网络到其它设备的流视频(例如,被捕获,修改和流式传输的视频)的速率来提供按比例缩小的视频帧。在一些实施中,GPU 239可经由专用通信信道耦接到处理器235且可与装置200的其它组件隔离。在一些实施中,GPU 239可耦接到总线220以经由信号线220与其它组件通信。
通信单元241根据可以执行视频应用程序103的位置向用户设备115和视频服务器101中的至少一个发送数据和从用户设备115和视频服务器101中的至少一个接收数据。在一些实施例中,通信单元241包括无线收发器,用于使用一种或多种无线通信方法(包括IEEE 802.11、IEEE 802.16、蓝牙或其它合适的无线通信方法)与用户设备115、视频服务器101或其它通信信道交换数据。通信单元241耦接到总线220以经由信号线226与其它组件通信。
在一些实施例中,通信单元241包括蜂窝通信收发器,用于通过蜂窝通信网络发送和接收数据,包括经由短消息服务(SMS)、多媒体消息服务(MMS)、超文本传输协议(HTTP)、直接数据连接、电子邮件或其它合适类型的电子通信。在一些实施例中,通信单元241包括有线端口和/或无线收发器。通信单元241还向网络105提供用于使用标准网络协议分发文件和/或媒体对象的其它常规连接,所述标准网络协议包括但不限于用户数据报协议(UDP)、TCP/IP、HTTP、HTTP安全(HTTPS)、简单邮件传输协议(SMTP)、SPDY、快速UDP因特网连接(QUIC)等。
摄像机243可以包括可操作以捕获视频帧的硬件。例如,摄像机243可以从用户接口模块202接收指令,以开始捕获视频呼叫的视频帧。摄像机243可以包括一个或多个环境光传感器、图像传感器,例如CMOS传感器、深度传感器(例如红外传感器、飞行时间传感器等)和/或其它类型的传感器。环境光传感器可以是用于检测环境中存在的环境光量的光电检测器。在一些实现中,摄像机243可以包括多个透镜或其它图像捕获单元。深度传感器可以捕获深度数据,该深度数据指示所捕获的图像或视频的一个或多个像素距摄像机的深度(距离)。摄像机243可以从视频应用程序103接收指令以执行增加曝光时间或修改图像传感器的灵敏度中的至少一个。例如,摄像机243可以通过修改ISO设置来修改图像传感器。摄像机243耦接到总线220,用于通过信号线228与其它部件通信。
显示器245可以包括可操作以显示从视频应用程序103接收的图形数据的硬件。例如,显示器245可以呈现图形以显示视频的视频帧。显示器245可以是任何类型的显示器,例如液晶显示器(LCD)、OLED等。在一些实施例中,显示器245可以是投影屏幕。在一些实施例中,例如,当设备243是增强型实体设备时,显示器245可以是立体显示器。显示器245耦接到总线220以经由信号线230与其它组件通信。
存储设备247可以是存储提供这里描述的功能的数据的非暂时性计算机可读存储介质。在计算设备200是视频服务器101的实施例中,存储设备247可以包括图1中的数据库199。存储设备247可以是DRAM设备、SRAM设备、闪存或一些其它存储设备。在一些实施例中,存储设备247还包括非易失性存储器或类似的永久存储设备和介质,包括硬盘驱动器、CD-ROM设备、DVD-ROM设备、DVD-RAM设备、DVD-RW设备、闪存设备或用于永久存储信息的一些其它大容量存储设备。存储设备247耦接到总线220,用于通过信号线232与其它组件通信。
视频应用程序103可以包括用户接口模块202,检测模块204和亮度模块206。
用户接口模块202生成图形数据以显示用户接口。在一些实施例中,用户接口模块202包括可由处理器235执行以生成图形数据的一组指令。在一些实施例中,用户接口模块202存储在计算设备200的存储器237中,并且可以由处理器235访问和执行。
在一些实施例中,用户接口模块202生成图形数据以显示具有启动视频呼叫和修改与呼叫相关联的设置的选项的用户接口。所述设置可以包括用于微光模式的选项,所述微光模式在被启用时增强视频的视频帧的亮度。默认设置可以禁用微光模式。在一些实施例中,用户可启用微光模式作为应用于所有视频呼叫的设置。在一些实施例中,微光模式可以是可以在特定视频呼叫期间启用的设置。
转到图3A,示出了示例用户界面300,其包括可以通过选择“启用”选项来启用的微光模式选项305,或者可以通过选择“不启用”选项来取消微光模式选项305。在该示例中,在激活视频呼叫之前,使微光模式选项305可用,但是其它选项也是可能的。例如,用户接口模块202可以显示具有不同视频应用程序选项的设置页面,所述不同视频应用程序选项包括启用微光模式。在一些实施例中,一旦视频呼叫已经开始并且微光模式被启用,则微光模式不能自动关闭以避免微光模式在打开和关闭之间过多的次数。
转到图3B,一旦微光模式被启用,用户界面350的示例被示出。在该示例中,微光模式选项355通知用户微光模式被启用。用户可以通过转到设置来改变微光模式。
检测模块204确定视频中的视频帧是否具有低亮度。在一些实施例中,检测模块204包括可由处理器235执行以确定视频中的低亮度的一组指令。在一些实施例中,检测模块204存储在计算设备200的存储器237中,并且可以由处理器235访问和执行。
在一些实施例中,检测模块204可以在确定视频中的视频帧具有低亮度之前检查用户提供的用户同意。在未启用微光模式的一些实施例中,检测模块204可确定视频中的视频帧具有低亮度并指示用户接口模块202向用户提供视频具有低亮度的通知并建议用户启用微光模式。在一些实施例中,如果用户取消通知,则用户接口模块202可以增加指数回退,其中在检测到低亮度之后,随着用户继续不启用微光模式,用户接口模块202显示通知的天数增加。例如,如果用户不启用微光模式,则用户接口模块202等待一天以再次显示通知,然后是5天、25天、125天等。
检测模块204可基于从与摄像机243相关联的环境光传感器接收的环境光传感器值或未满足阈值的指数移动平均帧亮度中的一个或一个以上来确定视频中的视频帧具有低亮度。在一些实施例中,如果环境光传感器值不能满足第一阈值并且平均帧亮度不能满足第二阈值,则检测模块204可以确定视频帧具有低亮度。平均帧亮度被定义为帧中像素的平均亮度。例如,如果环境传感器值小于1流明环境光传感器值并且平均帧亮度小于30%,则检测模块204可以确定视频处于低亮度。
在一些实施例中,检测模块204不分析视频的每一帧以节省功率和/或电池寿命。取而代之的是,检测模块204可以分析每预定数值的视频帧,例如每第30帧。在每第30帧测量帧亮度的情况下,检测模块204检测每第30帧亮度的指数移动平均值。在一些实施例中,一旦检测到低亮度,则检测模块204可开始分析每一帧的帧亮度。
在一些实施例中,一旦检测模块204确定视频帧具有低亮度,则检测模块204确定用户是否已提供同意以自动提供亮度增强或是否需要再一次的同意。例如,如果需要再一次的同意,则检测模块204可以指示用户接口模块202生成向用户显示的通知,以获得用户确认,从而指示亮度模块206提供亮度增强。
亮度模块206向视频帧提供亮度增强以产生经修改的视频。在一些实施例中,亮度模块206包括可由处理器235执行以提供视频帧的亮度增强的一组指令。在一些实施例中,亮度模块206存储在计算设备200的存储器237中,并且可以由处理器235访问和执行。
在一些实施例中,一旦检测模块204确定视频帧具有低亮度,亮度模块206就可以实现对视频帧的一个或多个校正。例如,亮度模块206可应用线性校正,对比度受限自适应直方图或总亮度公式(平方根公式)。
示例线性校正
在视频帧的背景是暗的但视频帧中的人被很好地照亮的情况下,校正亮度的一些尝试可以包括使用单个平均亮度值。这可能导致人看起来过度暴露。线性校正通过查看亮度值的分布和校正具有不同亮度级的部分来解决这个问题。
在执行线性校正的情况下,亮度模块206可从存储器237接收GPU 239传递到存储器237的经缩小的视频帧。GPU 239执行视频帧的缩小并将第一视频帧存储在GPU存储器中。在一些实施例中,GPU存储器不可由处理器235访问。
亮度模块206可产生经缩小的视频帧的亮度直方图,所述经缩小的视频帧用于计算关于经缩小的视频帧的统计量,例如经缩小的视频帧内的亮度值的分布。亮度模块206可识别经缩小的视频帧的过亮或过暗的区域。例如,亮度模块206可以识别缩小的视频帧的最暗的百分之五,并将统计数据传送到GPU 239,该GPU 239对原始视频帧进行线性校正,以将最暗的百分之五校正为具有小于20%的亮度。在另一实例中,亮度模块206可识别最暗的3%,8%,10%等。亮度模块206还可识别经缩小的视频帧的最亮的百分之五。亮度模块206可以将统计数据传送到GPU 239,该GPU 239对原始视频帧进行线性校正,以将最亮的百分之五校正为具有大于80%的亮度。因此,校正仅被应用于像素的相对较小的部分,即在该示例中最暗和最亮的百分之五的像素,从而与校正一个帧中包含的整个像素相比,减少了计算中的计算工作量。进一步地,本段的示例示出了最暗和最亮的百分之五的像素。在最暗和最亮的2%到10%范围内的其它百分点的像素同样也是合适的,这取决于视频数据的性质和视频中的整体照明条件。同样,取决于视频数据的性质和视频中的整体照明条件,不同的暗度阈值(例如在10到30%之间的范围内)和/或不同的亮度阈值(例如在70到90%之间的范围内)可能是合适的。
GPU 239可应用线性校正以在视频帧中提供亮度增强,其将像素的预设最暗百分比(例如,最暗的5%)的第一亮度修改为小于暗度阈值(例如,大于20%),且将像素的预设最亮百分比(例如,最亮的5%)的第二亮度修改为大于亮度阈值(例如,大于80%)。
亮度模块206可将多个帧平均在一起以减少由放大引起的噪声。在一些实施例中,选择用于平均的帧的数目是基于视频的帧速度(帧速率)或视频帧的平均原始亮度中的至少一者。在一些实施例中,亮度模块206使用较低的帧数和帧速率来确定如何确保平均帧亮度的总和是亮度的至少30%。在一些实施例中,在每秒0-10帧(FPS)的情况下使用一帧;对于较快的帧速率,在帧速率是10-15FPS的情况下,平均的最大帧数可以是两个帧的平均;在帧速率是15-20FPS的情况下,可以是三帧平均;以及在帧速率是大于20FPS的情况下,可以是四个帧平均。在一些实施例中,亮度模块206保持指数移动使得平均帧的平均帧亮度大于30%。在一些实施例中,亮度模块206保持指数移动使得平均帧亮度保持在30%与70%之间。
示例性对比度受限自适应直方图均衡(CLAHE)校正
在一些实施例中,亮度模块206使用CLAHE校正来人工增加第一视频帧的动态范围。CLAHE校正是全帧直方图均衡技术,即使在图像的某些部分光线充足的情况下,它也能在图像的黑暗区域中显示出细节。亮度模块206可以使用CLAHE校正代替线性校正,或者作为补充校正。
对亮度通道应用CLAHE校正产生更亮的图像,但是结果帧可以具有比原始视频帧更少的饱和颜色。将CLAHE校正单独应用于色度通道可以增加饱和度,但是也可以产生颜色伪像。结果,为了将色彩增强保持在合理的范围内,亮度模块206可以将CLAHE的结果应用到亮度通道和色度通道。例如,亮度模块206可以通过以下步骤将CLAHE应用于视频帧:(a)将CLAHE应用于第一视频帧的亮度通道,(b)将CLAHE应用于图像的每个色度通道,以及(c)混合来自(a)和(b)的结果。
图4A和4B将被一起讨论。图4A示出了应用CLAHE校正的示例方法的流程图400。图4B说明使用CLAHE校正改变的视频帧的对应级450。在图4A中的框402,视频帧被分成Y、Cb、Cr通道,其中Y是亮度通道,Cb是蓝色差色度通道,而Cr是红色差色度通道。在图4B中,455是原始视频帧。将原始视频帧455分割成Y、Cb、Cr通道得到亮度通道(Y)460,蓝色差色度通道(Cb)465和红色差色度通道(Cr)470。
在图4A中的框404处,亮度模块206将CLAHE应用于亮度通道。这对应于图4B中的CLAHE应用亮度通道475。在图4A中的框406处,亮度模块206将CLAHE应用于蓝色差色度通道。这对应于图4B中的CLAHE应用的蓝色差色度通道480。在图4A中的框408处,亮度模块206将CLAHE应用于红色差色度通道。这对应于图4B中的CLAHE应用的色度红色通道485。
在框410,亮度模块206将图4B中的CLAHE所应用的亮度通道475与图4B中的蓝色差色度通道465和色度红色通道470合并,以形成后CbCr合并亮度通道490。在框412,亮度模块206将从CLAHE得到的图像合并,以形成全通道CLAHE,其中CLAHE被应用于所有通道。具体地,在图4B中,合并CLAHE所应用的亮度通道475,CLAHE所应用的蓝色差色度通道480和CLAHE所应用的红色差色度通道485以形成图4B中的CLAHE所有通道495。
在框414处,亮度模块206将后CbCr合并亮度通道490与CLAHE所有通道495混合以获得具有增强亮度的视频帧。在一些实施例中,亮度模块206应用50/50混合,其对应于图4B中的混合视频帧499。其它混合也是可能的,例如CLAHE亮度通道490的10-90%的范围,其余部分是CLAHE所有通道495。
示例性总亮度
在一些实施例中,亮度模块206通过对多个帧求和来模拟较长的曝光时间。因为撞击摄像机传感器的光子量与以红绿蓝(RGB)获得的值之间的关系不是线性的,为了达到线性空间,亮度模块将值提高到2.2的幂(假定摄像机243使用标准伽马)。然后回到编码的空间,其随后由接收用户设备(例如图1中的用户设备115n)的显示器解码,亮度模块206升高到功率1/2.2。为了简化和降低计算复杂度,可以使用2的幂和2的平方根来代替2.2。
亮度模块206可通过计算帧集合的平均亮度的和的平方根来确定帧的总亮度,其中帧集合中的每个帧取平方数。在一些实施例中,对于每个视频帧,亮度模块206使用先前的视频帧来使用以下公式确定总亮度:
其中,bi是帧i的平均亮度,n是帧的数量。
在一些实施方式中,亮度模块206进行计算以实现至少0.3的亮度级,其为0与1之间的每一帧的平均亮度。如果第一总亮度超过阈值亮度值(例如0.7),则亮度模块206从帧集合中移除一个帧,即使这将导致总亮度水平低于0.3。然后亮度模块206使用从较小的帧集合计算的第二总亮度。在一些实施例中,该帧集合不包括与第一帧相比早于0.1秒的帧,因为如果摄像机帧频较低,则它们可能导致过度的重影。
在亮度模块206确定用于该帧集合的多个帧之后,亮度模块206计算等于0.5/总亮度的乘数。乘法器可以通过以0.5的亮度级为目标来消除所使用的帧的数量中的任何波动。可以使用其它值来获得不同的输出亮度,其中较高的值导致较高的输出亮度。
对于视频帧中的每个像素和每个红绿蓝(RGB)颜色通道,亮度模块206计算最终输出值。亮度模块206可以使用以下等式:
其中cr是最终输出,并且ci是帧i的输入值。输入值可以是RGB颜色通道的单独值。因为每个帧具有多个输入和输出,所以对于帧中每个像素的每个颜色通道可以有一个输入值。
亮度模块206可使用总亮度来增强视频帧的亮度,而不是GPU 239应用线性校正或亮度模块206应用CLAHE校正。在一些实施例中,除了另一种校正方法之外,亮度模块206还使用总亮度。
在一些实施例中,一旦亮度模块206对视频帧实施校正,则亮度模块206确定经修改的视频(例如,第一视频帧,视频帧集合等)的亮度是否满足阈值亮度。如果经修改的视频未能满足阈值亮度,则亮度模块206可以改变一个或多个摄像机设置。例如,亮度模块206可以指示摄像机243执行增加曝光时间或修改图像传感器的灵敏度中的至少一个。亮度模块206可以通过指示摄像机243修改ISO设置来修改图像传感器。
示例性方法
图5示出了增强视频帧的亮度的示例方法500的流程图。方法500由存储在计算设备200(例如用户设备115,视频服务器101或部分用户设备115以及部分视频服务器101)上的视频应用程序103执行。
在框502,确定用户是否同意微光模式。如果用户没有同意微光模式,则方法500进行到图6中的步骤602。如果用户同意微光模式,则在框504,确定第一视频帧具有低亮度。在框506处,应用线性校正以在第一视频帧中提供亮度增强,所述亮度增强将像素的预设最暗百分比的第一亮度修改为小于暗度阈值,或将像素的预设最亮百分比的第二亮度修改为大于亮度阈值。可以替代地或另外地使用其它校正方法,例如CLAHE校正。在框508处,将第一视频帧的第一亮度增强与对应于在先视频帧的亮度增强集合进行平均以产生经修改的视频。
在框510,确定修改后的视频是否满足亮度阈值。如果经修改的视频满足亮度阈值,则方法500继续下一视频帧。视频应用程序103还可以将修改后的视频发送到用户设备115n和/或在用户设备115a的显示器245中显示修改后的视频。例如,亮度模块206可以分析每30个视频帧。如果修改后的视频未能满足亮度阈值,则方法500进行到框512,并且改变一个或多个摄像机设置。
图6示出了根据一些实施例的获得允许微光模式的用户同意的示例方法600的流程图。在框602,确定视频帧中存在低亮度。在框604,确定是否可以显示通知604。如果不能显示通知,则方法600返回到框602。如果可以示出通知,则在框606处示出通知。该通知可以包括消息,例如“已经检测到低亮度,是否要启用微光模式?”。
在框608,确定是否启用了微光模式。如果未启用微光模式,则方法600进行到增加指数回退的框610。例如,如果用户不想启用微光模式,则在另一天,五天,25天,125天等不会显示下一个通知。如果微光模式被启用,则方法600进行到框612。
在框612,启用微光模式。在框614,在视频帧中确定低亮度。在框616,执行亮度增强,并且方法600继续到框608。
在以上描述中,出于解释的目的,阐述了许多具体细节,以便提供对说明书的彻底理解。然而,对于本领域的技术人员显而易见的是,可以在没有这些具体细节的情况下实践本公开。在一些实例中,以框图形式示出了结构和设备,以避免使描述模糊。例如,可以主要参考用户接口和特定硬件来描述上述实施例。然而,实施例可适用于可接收数据和命令的任何类型的计算设备,以及提供服务的任何外围设备。
在说明书中提及“一些实施例”或“一些实例”意味着结合实施例或实例描述的特定特征,结构或特性可以被包括在说明书的至少一个实现中。在说明书的各个地方出现的短语“在一些实施例中”不一定都是指相同的实施例。
以上详细描述的某些部分是根据对计算机存储器内的数据位的操作的算法和符号表示来呈现的。这些算法描述和表示是数据处理领域的技术人员用来最有效地将他们工作的实质传达给本领域的其他技术人员的手段。算法在这里通常被认为是导致期望结果的自洽的步骤序列。这些步骤是那些需要物理量的物理操作的步骤。通常,尽管不是必须的,这些量采用能够被存储、传输、组合、比较和以其它方式操作的电或磁数据的形式。主要出于共同使用的原因,有时已经证明将这些数据称为位、值、元素、符号、字符、术语、数字等是方便的。
然而,应该记住,所有这些和类似的术语将与适当的物理量相关联,并且仅仅是应用于这些量的方便的标记。除非特别说明,否则如从以下讨论中显而易见的。应当理解,在整个说明书中,使用包括“处理”或“计算处理”或“计算”或“确定”或“显示”等的术语的讨论是指计算机系统或类似的电子计算设备的动作和过程,所述计算机系统或类似的电子计算设备将表示为计算机系统的寄存器和存储器内的物理(电子)量的数据操纵并转换为类似地表示为计算机系统的存储器或寄存器内的物理量的其它数据或其他这样的信息存储,传输或显示设备。
本说明书的实施例还可以涉及用于执行上述方法的一个或多个步骤的处理器。处理器可以是由存储在计算机中的计算机程序选择性地激活或重新配置的专用处理器。这种计算机程序可以存储在非暂时性计算机可读存储介质中,包括但不限于任何类型的盘,包括光盘、ROM、CD-ROM、磁盘、RAM、EPROM、EEPROM、磁卡或光卡,包括具有非易失性存储器的USB密钥的闪速存储器,或适于存储电子指令的任何类型的介质。每个都耦接到计算机系统总线。
本说明书可以采取一些完全硬件实施例,一些完全软件实施例或包含硬件和软件元件的一些实施例的形式。在一些实施例中,以软件来实现所述规范,所述软件包括但不限于固件、驻留软件、微代码等。
此外,该描述可以采取可从计算机可用或计算机可读介质访问的计算机程序产品的形式,所述计算机可用或计算机可读介质提供由计算机或任何指令执行系统使用或结合计算机或任何指令执行系统使用的程序代码。为了本说明的目的,计算机可用或计算机可读介质可以是能够包含、存储、通信、传播或传输由指令执行系统、装置或设备使用或结合指令执行系统、装置或设备使用的程序的任何装置。
适于存储或执行程序代码的数据处理系统将包括通过系统总线直接或间接耦接到存储器元件的至少一个处理器。存储器元件可包括在程序代码的实际执行期间使用的本地存储器,大容量存储器和高速缓冲存储器,所述高速缓冲存储器提供至少一些程序代码的临时存储以便减少在执行期间必须从大容量存储器中检索代码的次数。
Claims (15)
1.一种在流传输期间增强视频的视频帧中的亮度的方法,其特征在于,所述方法包括:
处理器确定第一视频帧具有低亮度;
通过计算视频帧集合的平均亮度的和的平方根来确定所述第一视频帧的总亮度,其中,所述视频帧集合的平均亮度的和为所述视频帧集合中的每个帧的平均亮度的平方和;
确定乘数,所述乘数是特定值除以所述总亮度;以及
通过将所述乘数乘以所述第一视频帧的输入值的平方和的平方根来确定最终输出值。
2.如权利要求1所述的方法,其特征在于,还包括:
与所述处理器不同的图形处理单元GPU对所述第一视频帧进行缩小,其中,所述第一视频帧存储在所述GPU的GPU存储器中,且其中,所述GPU存储器不可由所述处理器访问;
所述GPU将缩小的所述第一视频帧传送到所述处理器可访问的计算机处理存储器;
所述处理器生成缩小的所述第一视频帧的亮度直方图;
确定与像素的预定最暗百分比匹配的相应像素和与像素的预定最亮百分比匹配的相应像素,其中所述亮度直方图用于确定与所述像素的预定最暗百分比匹配的相应像 素和与所述像素的预定最亮百分比匹配的相应像 素;以及
所述GPU对所述第一视频帧提供线性校正,以在所述第一视频帧中提供第一亮度增强,所述第一亮度增强将所述像素的预定最暗百分比的第一亮度修改为小于暗度阈值,或者将所述像素的预定最亮百分比的第二亮度修改为大于亮度阈值。
3.如权利要求2所述的方法,其特征在于,被平均的视频帧集合中的多个所述视频帧的亮度基于视频的帧速率或所述第一视频帧的输入亮度中的至少一个。
4.如权利要求2所述的方法,其特征在于,还包括:
所述处理器将所述第一视频帧的所述第一亮度增强的亮度与对应于在先视频帧的亮度增强集合的亮度进行平均,以产生经修改的视频。
5.如权利要求4所述的方法,其特征在于,所述视频帧由耦接到所述处理器的摄像机捕获,所述方法进一步包括:
所述处理器确定所述经修改的视频是否满足亮度阈值;
响应于确定所述经修改的视频不满足所述亮度阈值,所述处理器改变一个或多个摄像机设置;以及
响应于确定所述经修改的视频确实满足所述亮度阈值,显示所述经修改的视频。
6.如权利要求5所述的方法,其特征在于,改变所述一个或多个摄像机设置包括增加曝光时间或修改图像传感器的灵敏度中的至少一个。
7.如权利要求1所述的方法,其特征在于,基于环境光传感器值未达到第一阈值或指数移动平均帧亮度未达到第二阈值中的至少一个来确定所述第一视频帧具有低亮度。
8.如权利要求1所述的方法,其特征在于,还包括:
对所述第一视频帧应用对比度受限自适应直方图均衡CLAHE。
9.如权利要求8所述的方法,其特征在于,将CLAHE应用于所述第一视频帧包括:(a)将CLAHE应用于所述第一视频帧的亮度通道,(b)将CLAHE应用于所述第一视频帧的每个色度通道,以及(c)混合来自(a)和(b)的结果。
10.如权利要求1所述的方法,其特征在于,所述乘数为0.5。
11.如权利要求1所述的方法,其特征在于,确定所述总亮度包括:
确定所述视频帧集合的第一总亮度超过阈值;
响应于所述第一总亮度超过所述阈值,从所述视频帧集合中移除第二帧;以及
计算第二总亮度。
12.一种系统,其特征在于,包括:
一个或多个处理器;以及
一种存储由所述一个或多个处理器执行的指令的存储器,所述指令包括:
确定第一视频帧具有低亮度;
通过计算视频帧集合的平均亮度的和的平方根来确定所述第一视频帧的总亮度,其中,所述视频帧集合的平均亮度的和为所述视频帧集合中的每个帧的平均亮度的平方和;
确定乘数,所述乘数是特定值除以所述总亮度;以及
通过将所述乘数乘以所述第一视频帧的输入值的平方和的平方根来确定最终输出值。
13.如权利要求12所述的系统,其特征在于,所述指令还包括:
与所述处理器不同的图形处理单元GPU对所述第一视频帧进行缩小,其中,所述第一视频帧存储在所述GPU的GPU存储器中,且其中,所述GPU存储器不可由所述处理器访问;
所述GPU将缩小后的所述第一视频帧传送到所述处理器可访问的计算机处理存储器;
所述处理器生成缩小的所述第一视频帧的亮度直方图;
确定与像素的预定最暗百分比匹配的相应像素和与像素的预定最亮百分比匹配的相应像素;以及
所述GPU对所述第一视频帧提供线性校正,以提供第一亮度增强,所述第一亮度增强将所述像素的预定最暗百分比的第一亮度修改为小于暗度阈值,或者将所述像素的预定最亮百分比的第二亮度修改为大于亮度阈值;
其中,所述亮度直方图用于确定与所述像素的预定最暗百分比匹配的相应像 素和与所述像素的预定最亮百分比匹配的相应像 素。
14.如权利要求13所述的系统,其特征在于,被平均的所述视频帧集合中的视频帧的数量基于视频的帧速率或所述第一视频帧的输入亮度中的至少一个。
15.如权利要求13所述的系统,其特征在于,所述指令还包括:
将所述第一视频帧的所述第一亮度增强的亮度与对应于在先视频帧的亮度增强集合的亮度进行平均,以产生经修改的视频。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310099102.2A CN116074632A (zh) | 2019-12-12 | 2020-08-06 | 叠加视频帧以增强图像亮度 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/712,715 US11223792B2 (en) | 2019-12-12 | 2019-12-12 | Summing-up video frames to enhance image brightness |
US16/712,715 | 2019-12-12 | ||
PCT/US2020/045254 WO2021118650A1 (en) | 2019-12-12 | 2020-08-06 | Summing-up video frames to enhance image brightness |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310099102.2A Division CN116074632A (zh) | 2019-12-12 | 2020-08-06 | 叠加视频帧以增强图像亮度 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114762321A CN114762321A (zh) | 2022-07-15 |
CN114762321B true CN114762321B (zh) | 2023-03-10 |
Family
ID=72145527
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080077751.7A Active CN114762321B (zh) | 2019-12-12 | 2020-08-06 | 叠加视频帧以增强图像亮度 |
CN202310099102.2A Pending CN116074632A (zh) | 2019-12-12 | 2020-08-06 | 叠加视频帧以增强图像亮度 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310099102.2A Pending CN116074632A (zh) | 2019-12-12 | 2020-08-06 | 叠加视频帧以增强图像亮度 |
Country Status (4)
Country | Link |
---|---|
US (2) | US11223792B2 (zh) |
EP (1) | EP3900325A1 (zh) |
CN (2) | CN114762321B (zh) |
WO (1) | WO2021118650A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11223792B2 (en) * | 2019-12-12 | 2022-01-11 | Google Llc | Summing-up video frames to enhance image brightness |
US11348470B1 (en) * | 2021-01-07 | 2022-05-31 | Rockwell Collins, Inc. | Apparent video brightness control and metric |
CN116309203B (zh) * | 2023-05-19 | 2023-08-01 | 中国人民解放军国防科技大学 | 一种偏振视觉自适应增强的无人平台运动估计方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6288721B1 (en) * | 1999-07-07 | 2001-09-11 | Litton Systems, Inc. | Rendering process and method for digital map illumination intensity shading |
US7003153B1 (en) * | 2000-09-29 | 2006-02-21 | Sharp Laboratories Of America, Inc. | Video contrast enhancement through partial histogram equalization |
CN106412383A (zh) * | 2015-07-31 | 2017-02-15 | 阿里巴巴集团控股有限公司 | 视频图像的处理方法和装置 |
US10277829B1 (en) * | 2016-08-12 | 2019-04-30 | Apple Inc. | Video capture in low-light conditions |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8866938B2 (en) * | 2013-03-06 | 2014-10-21 | International Business Machines Corporation | Frame to frame persistent shadow reduction within an image |
US9710715B2 (en) * | 2014-12-26 | 2017-07-18 | Ricoh Company, Ltd. | Image processing system, image processing device, and image processing method |
CN105407296B (zh) | 2015-11-18 | 2021-03-23 | 腾讯科技(深圳)有限公司 | 实时视频增强方法和装置 |
US11477372B2 (en) * | 2016-09-08 | 2022-10-18 | Lg Innotek Co., Ltd. | Image processing method and device supporting multiple modes and improved brightness uniformity, image conversion or stitching unit, and computer readable recording medium realizing the image processing method |
US11223792B2 (en) * | 2019-12-12 | 2022-01-11 | Google Llc | Summing-up video frames to enhance image brightness |
-
2019
- 2019-12-12 US US16/712,715 patent/US11223792B2/en active Active
-
2020
- 2020-08-06 CN CN202080077751.7A patent/CN114762321B/zh active Active
- 2020-08-06 EP EP20758062.2A patent/EP3900325A1/en not_active Withdrawn
- 2020-08-06 CN CN202310099102.2A patent/CN116074632A/zh active Pending
- 2020-08-06 WO PCT/US2020/045254 patent/WO2021118650A1/en unknown
-
2021
- 2021-12-15 US US17/552,136 patent/US11671557B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6288721B1 (en) * | 1999-07-07 | 2001-09-11 | Litton Systems, Inc. | Rendering process and method for digital map illumination intensity shading |
US7003153B1 (en) * | 2000-09-29 | 2006-02-21 | Sharp Laboratories Of America, Inc. | Video contrast enhancement through partial histogram equalization |
CN106412383A (zh) * | 2015-07-31 | 2017-02-15 | 阿里巴巴集团控股有限公司 | 视频图像的处理方法和装置 |
US10277829B1 (en) * | 2016-08-12 | 2019-04-30 | Apple Inc. | Video capture in low-light conditions |
Also Published As
Publication number | Publication date |
---|---|
CN114762321A (zh) | 2022-07-15 |
CN116074632A (zh) | 2023-05-05 |
WO2021118650A1 (en) | 2021-06-17 |
US11223792B2 (en) | 2022-01-11 |
US20210185271A1 (en) | 2021-06-17 |
US20220109804A1 (en) | 2022-04-07 |
US11671557B2 (en) | 2023-06-06 |
EP3900325A1 (en) | 2021-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114762321B (zh) | 叠加视频帧以增强图像亮度 | |
EP3476114B1 (en) | Systems and methods for changing operation modes of the optical filter of an imaging device | |
US20160094824A1 (en) | Image processing method, image processing apparatus and electronic device | |
US8446481B1 (en) | Interleaved capture for high dynamic range image acquisition and synthesis | |
US9077913B2 (en) | Simulating high dynamic range imaging with virtual long-exposure images | |
US9131201B1 (en) | Color correcting virtual long exposures with true long exposures | |
US11100613B2 (en) | Systems and methods for enhancing edges in images | |
JP6615917B2 (ja) | 実時間ビデオエンハンスメント方法、端末及び非一時的コンピュータ可読記憶媒体 | |
CN107395991B (zh) | 图像合成方法、装置、计算机可读存储介质和计算机设备 | |
TWI777112B (zh) | 圖像處理方法、電子設備和儲存介質 | |
US9704227B2 (en) | Method and apparatus for image enhancement | |
US20150063694A1 (en) | Techniques for combining images with varying brightness degrees | |
US20190313005A1 (en) | Tone mapping for high-dynamic-range images | |
EP2879375A1 (en) | Techniques to reduce color artifacts in a digital image | |
US11070705B2 (en) | System and method for image dynamic range adjusting | |
US10235745B2 (en) | Image processing method, computer storage medium, apparatus and terminal | |
US20150271416A1 (en) | Information Processing Method and Electronic Device | |
CN112819691B (zh) | 图像处理方法、装置、设备及可读存储介质 | |
CN110097520B (zh) | 图像处理方法和装置 | |
US20220301278A1 (en) | Image processing method and apparatus, storage medium, and electronic device | |
US10068151B2 (en) | Method, device and computer-readable medium for enhancing readability | |
WO2022111269A1 (zh) | 视频的细节增强方法、装置、移动终端和存储介质 | |
CN105976343B (zh) | 图片曝光的校正方法、装置及智能设备 | |
CN115527474A (zh) | 图像显示方法、装置、显示设备、投影设备及存储介质 | |
US9135687B2 (en) | Threshold setting apparatus, threshold setting method and recording medium in which program for threshold setting method is stored |
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 |