一种结合白平衡统计信息和曝光信息的软光敏算法专利学习(专利三)

news2024/11/17 9:34:13

基础理论:

亮度计算:

      对于白天模式而言,IR滤光片处于过滤红外光的状态,也就是说,摄像机的感光芯片所感受到的环境光中的红外光几乎为零;而对于夜晚模式而言,IR滤光片处于不过滤红外光的状态,也就是说,摄像机的感光芯片所感受到的环境光中是包括可见光和红外光两部分的。由大量的实验数据表明,根据上述公式( 1 )计算出的摄像机所处环境光的环境亮度L中的红外光的亮度几乎为零,可简单理解为,白天模式下计算出的环境亮度L中仅包括可见光成分;而对于夜晚模式而言,根据上述公式( 1 )计算出的摄像机所处环境光的环境亮度L中也是包括红外光和可见光的。总而言之,在误差允许范围内,根据公式( 1 )计算得到的环境亮度L能够用来模拟摄像机的感光芯片真正感受的环境光的环境亮度。

      参见下图,为本发明实施例提供的一种暗室可见光环境下的环境亮度与环境照度的测试结果,其中,纵轴为根据上述计算公式计算出来的环境光的环境亮度L,横轴为根据专用的照度检测设备检测得到的环境照度。可以看出,计算得到环境亮度L在一定误差允许范围内可以反映当前的环境光的环境照度。需要说明的是,本发明实施例中是根据计算得到的环境光的环境亮度来反映该环境光的环境照度的。当然,上面提及的计算摄像机所处环境光的环境亮度L仅仅是众多可实现方式中的一种具体情况,本发明不需要对计算摄像机所处环境光的环境亮度L的具体实现方式进行限定。

可见光比列计算:

      一般来说,摄像机的感光芯片的红、绿、蓝各个颜色通道对于可见光和红外光的感光特性是不一样的,具体的:对于红外光光谱段而言,感光芯片的每个颜色通道的感光特性具有一致性,即:各个通道的颜色分量的数值差异不大;然而,对于可见光光谱段而言,感光芯片的各个通道的感光特性往往具有有较大的差异性。举例而言,参见图3b,为本发明实施例提供的一种摄像机感光芯片中各个颜色通道的感光光谱。可以看出,在红外段( 大于850nm的范围),感光芯片的每个颜色通道的感光特性大致一样,但是在可见光段( 400-750nm的范围),各通道感光特性却有较大差异,比如在600-750nm段,红色感光元件的感光特性最好,绿色和蓝色感光元件的感光特性相近,而在500-600nm段,绿色感光元件的感光特性最好,蓝色和红色感光元件的感光特性相近,在400-500nm段,蓝色感光元件的感光特性最好,红色和绿色感光元件的感光特性相近。

      摄像机工作模式的切换主要是依赖环境光中的可见光部分的进行判断的。因此,本领域内的技术人员可以通过计算在摄像机所处环境光下,其感光芯片的各个颜色通道的颜色分量的差值来近似判断摄像机所处场景下的可见光的光照强度的大小,并且,各个颜色通道的对应的光照强度的差值越大,表明摄像机所处环境光中可见光成分所占比例越大,反之,表明摄像机所处环境光中可见光成分越小。

      计算R1、G1、B1三个值之间的差异,一种实现方式中,可以计算|Gl-Rl|以及|Gl-Bl|。可以理解的,当计算得到的二者之间的差异越大,则认为环境光中的可见光部分所占的比例越大,当这个差异高于某一阈值时则认为摄像机所处环境光为白天应用场景,因此可以将摄像机的工作模式切换至白天模式。

防震荡措施:

      本实施例提供的方案并不是在判断得环境亮度L大于阈值TLD的情况下立即对摄像机进行工作模式的切换的,而是从判断环境亮度L大于阈值TLD的情况下对摄像机的工作模式进行标记,并统计被连续标记为状态SD的标记时长TD,这样主要是考虑到环境光的瞬间变化情况,例如,瞬间变暗或瞬间变亮,避免因这种抖动因素造成摄像机工作模式的来回切换。

白天模式切换逻辑

夜视模式切换逻辑

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/972577.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ABB 3BHB002916R0001 UFC721AE模拟输入卡

通道数目: UFC721AE 模拟输入卡通常具有多个输入通道,可以同时监测多个模拟信号。 输入类型: 这种卡片通常支持不同类型的模拟输入,例如电压信号、电流信号或其他传感器信号。 精度: UFC721AE 模拟输入卡通常具有高精…

树莓 LUMA-OLED.EXAMPLE使用

详细介绍在文件目录下的README.rst中 第一步 $ sudo usermod -a -G i2c,spi,gpio pi //好像没什么用 $ sudo apt install python3-dev python3-pip python3-numpy libfreetype6-dev libjpeg-dev build-essential //安装依赖包,树莓派中好像已经有了 $ sudo a…

Seata 笔记

Seata 笔记 分布式事务理论基础 CAP 定理 Consistency 一致性:用户访问分布式系统中的任意节点得到的结果都是一致的Availability 可用性:用户和访问任意健康节点都必须得到响应而不是超时拒绝Partition tolernance 分区容错性:出现独立分…

解决本地jar包导入maven

1、确定是否安装maven 2、输入导入命令 命令说明 <path-to-file>为你jar包所在的路径&#xff08;尽量简单并且不要含中文&#xff09; <group-id>为grouId号&#xff0c;与<artifact-id>组成唯一识别你jar包的坐标&#xff0c;当不在公共资源jar包中&#…

libbpf-bootstrap安卓aarch64适配交叉编译

1.为什么移植 疑惑 起初我也认为&#xff0c;像libbpf-bootstrap这样在ebpf程序开发中很常用的框架&#xff0c;理应支持不同架构的交叉编译。尤其是向内核态的ebpf程序本身就是直接通过clang的-target btf直接生成字节码&#xff0c;各个内核上的ebpf虚拟机大同小异&#xf…

万字解读 Android 车机核心 :CarService 的构成和链路~

前言 关于 Android 车机&#xff0c;之前分析过方控上自定义按键的输入机制和中控上旋钮输入的原理&#xff0c;但都局限于 Car Service 内 Input 相关模块。 一文了解 Android 车机如何处理中控的旋钮输入从实体按键看 Android 车载的自定义事件机制 本文将结合 Android 系…

LabVIEW开发感应电机在线匝间短路故障诊断系统

LabVIEW开发感应电机在线匝间短路故障诊断系统 工业中使用的超过85%的电动机是三相感应电动机。它们因其可靠性、设计便利性、高性能和过载能力而被广泛用于不同的应用&#xff0c;例如制造、加工、电力系统、运输等。无论它们的能力如何&#xff0c;它们都被认为是现代工业学…

Consider defining a bean of type问题解决

Consider defining a bean of type问题解决 Consider defining a bean of type问题解决 包之后&#xff0c;发现项目直接报错Consider defining a bean of type。 会有一些包你明明Autowired 但是还是找不到什么bean 导致你项目启动不了 解决方法一: 这个问题主要是因为项目拆包…

安卓 MeasureCache优化了什么?

安卓绘制原理概览_油炸板蓝根的博客-CSDN博客 搜了一下&#xff0c;全网居然没有人提过 measureCache。 在前文中提到过&#xff0c;measure的时候&#xff0c;如果命中了 measureCache&#xff0c;会跳过 onMeasure&#xff0c;同时会设置 PFLAG3_MEASURE_NEEDED_BEFORE_LAYOU…

【已解决】oracle获取最近2学年的数据

已解决 &#xff1a;oracle获取最近2学年的数据 SELECT * FROM (SELECT * FROM xx.JWXT_XSKB WHERE AND xn IN (‘2023-2024’,‘2022-2023’)); 问题 某某系统课表数据过大&#xff0c;要求只获取最近2学年的数据&#xff0c;不能写死。 思路 mysql 在子查询的WHERE子句中…

从0到1学会Git(第二部分):Git的本地操作和管理

写在前面:本文介绍了在本地仓库进行文件的处理以及本地的合并等操作。 前置知识:文件可以处在三个区域&#xff0c;分别为工作区&#xff0c;暂存区和本地仓库&#xff0c;我们此文的目标即是将文件存储在本地仓库中。我们可以将文件的区域理解为&#xff0c;cpu中&#xff0c…

苍穹外卖技术栈

重难点详解 1、定义全局异常 2、ThreadLocal ThreadLocal 并不是一个Thread&#xff0c;而是Thread的一个局部变量ThreadLocal 为每一个线程提供独立的存储空间&#xff0c;具有线程隔离的效果&#xff0c;只有在线程内才能取到值&#xff0c;线程外则不能访问 public void …

linux入门---动静态库的加载

目录标题 为什么会有动态库和静态库静态库的实现动态库的实现动静态库的加载 为什么会有动态库和静态库 我们来模拟一个场景&#xff0c;首先创建两个头文件 根据文件名便可以得知add.h头文件中存放的是加法函数的声明&#xff0c;sub.h头文件中存放的是减法函数的声明&#…

【每日运维】U盘启动盘安装 ESXi 6.7.0 安装卡在 loading /bnxtroce.v00

问题描述 ● ESXi 6.7.0 安装进度卡在loading /bnxtroce.v00 进度处 处理方法 ● 重新制作启动盘&#xff0c;写入方式改为&#xff1a;【USB-ZIPv2】 ● 设置服务器的 bios设置&#xff0c;启动方式改为【UEFI】 ● 重启开机安装即可

蛋白与蛋白互作预测 蛋白互作预测protein

How to prepare structures for HADDOCK? – Bonvin Labhttps://www.bonvinlab.org/software/bpg/structures/RosettaDock: 蛋白-蛋白复合物对接预测 - 知乎 (zhihu.com) 要进行LPR1-SEPP1复合物的结合亲和力预测&#xff0c;您可以按照以下步骤进行&#xff1a; 获取蛋白质结…

MySQL的Json类型个人用法详解

前言 虽然MySQL很早就添加了Json类型&#xff0c;但是在业务开发过程中还是很少设计带这种类型的表。少不代表没有&#xff0c;当真正要对Json类型进行特定查询&#xff0c;修改&#xff0c;插入和优化等操作时&#xff0c;却感觉一下子想不起那些函数怎么使用。比如把json里的…

vue实现列表自动滚动效果

效果如图&#xff1a; 1.下载插件 npm install vue-seamless-scroll --save 2.在main.js中引入注册 import scroll from vue-seamless-scroll Vue.use(scroll) 3.在页面中使用&#xff08;写一个固定的表头 el-table:show-header"status" 设置为false,自带的表头不…

嵌入式虚拟仿真实验教学平台使用教程之搭建课程计划

嵌入式虚拟仿真实验教学平台使用教程之创建课程计划 所谓「课程计划」就是将一系列实验按照一定的顺序组织成一个教学计划&#xff0c;和传统的教学计划模式比较类似。接下来我将为大家讲解如何通过该平台创建属于自己的课程计划。 嵌入式虚拟仿真实验教学平台提供了两种创建课…

Python综合案例(基本地图使用)

一、基本地图的使用 基本代码&#xff1a; """ 演示地图可视化的基本使用 """ from pyecharts.charts import Map from pyecharts.options import VisualMapOpts# 准备地图对象 map Map() # 准备数据 data [("北京", 99),("…

js获得相对路径文件,并上传到服务器

如何通过js获得相对路径文件 已知一个相对路径文件&#xff0c;如何使用js将该文件读取为File格式&#xff0c;最后上传到服务器中呢。 1.最简单的解决方案——fetch 代码 import ./index.scss// js通过相对路径获取文件 function FetchGetLocalFile() {const fetchLocalFile …