软光敏算法学习之二

news2024/9/24 7:22:26

《监控设备日夜模式的切换方法、系统、设备及存储介质》专利学习笔记

一、主要原理:

      在夜模式下时,判断摄像头的传感器感知的光强度是否大于第一切换阈值;如果所述光强度大于第一切换阈值,则判断摄像头拍摄的图像中符合红外响应特征的图像区域在整个图像中的占比是否小于预设占比阈值;如果所述占比小于预设占比阈值,则确定当前帧符合切换日模式条件。通过采用本发明,在通过光强度判断是否切换到日模式的基础上,进一步结合了符合红外响应特征的图像区域占比的判断,避免受到红外光影响而导致误切换,提高了日夜模式切换的准确性,避免出现反复切换的问题,提高了日夜模式切换判断的鲁棒性。

基本流程图:

二、具体细节:

        红外光的波长一般是850nm或者940nm的,可以通过查看摄像头的传感器手册,了解摄像头的传感器对此波长的响应曲线。如下图所示,为某款sensor对各种波长的响应曲线,其中曲线R即为在不同的波长下红色通道的响应曲线,曲线G为不同的波长下绿色通道的响应曲线,曲线B为不同的波长下蓝色通道的响应曲线。

        从下图中可以看出,在特定的波长下,每个摄像头传感器的红色通道和绿色通道的响应值的比值是特定的,以及蓝色通道和绿色通道的响应值的比值也是特定的。在红外光850nm或者940nm的波长附近,大部分的摄像头的传感器的红色通道和绿色通道的响应值的比值都在1附近,大部分的摄像头的蓝色通道和绿色通道的响应值的比值也在1附近。

光照强度计算:

        采用如下公式计算摄像头的传感器感知的光强度cur_luma:

                                cur_luma=k*raw_luma/(shutter_time*gain)

        其中,k为预设常数,raw_luma为所述摄像头采集的raw图像的平均亮度,shutter_time为所述摄像头的传感器的曝光时间,gain为所述摄像头的传感器增益。在该实施例中,在上式计算摄像头的传感器感知的光强度之前,首先跳过n帧图像不作处理,此n帧的图像的曝光并不稳定。此处n的数值可以根据需要设定。

红外响应特征计算:

        计算所述符合红外响应特征的图像块的数量与所述图像中图像块的总数的比值,作为所述占比。即通过图像块的比值即可以得到符合红外响应特征的区域在整个图像中的占比。判断摄像头拍摄的图像中符合红外响应特征的图像区域在整个图像中的占比是否小于预设占比阈值,包括如下步骤:

  1. 对摄像头拍摄的图像进行分块,统计所述图像中图像块的总数;
  2. 统计符合红外响应特征的图像块的数量,所述符合红外响应特征的图像块为该图像块中对于各个颜色通道的像素值符合预设的红外响应特征的图像块;
  3. 计算所述符合红外响应特征的图像块的数量与所述图像中图像块的总数的比值,作为所述占比。

        在一些实施例中,采用如下步骤判断各个所述图像块是否为符合红外响应特征的图像块。对于各个图像块,判断该图像块是否满足如下公式:

        其中,ΣR,ΣB,ΣG分别为该图像块中对应于红色通道、蓝色通道、绿色通道的像素值之和,IRR/G为摄像头的传感器在红外光照射下对应于红色通道和绿色通道的响应值的比值,IRB/G 为摄像头的传感器在红外光照射下对应于蓝色通道和绿色通道的响应值的比值,k1<1<k2。如果满足,则确定该图像块符合红外响应特征。k1和k2的值可以根据需要设定和选择。例如k1设定为90%,k2设定为110%。如果一个图像块满足上述公式2和公式3,即该图像块与红外光照射时的红外响应特征的偏差不超过10%,则认为该图像块是符合红外响应特征的图像块。

        图像中过暗的区域,由于传感器接收到的响应值太小,算出来的比值

误差会比较大。对于图像中过亮的区域,由于可能存在有一个颜色通道过亮,导致超过

了传感器感知的上限的情况,从而导致比值计算错误。因此,需要去除图像中过亮或过暗的图像块。

        去除所述图像块中亮度不符合预设的亮度筛选条件的图像块,包括如下步骤:

        对于各个图像块,判断该图像块各个通道是否均满足如下公式:

        其中,ΣX为该图像块中该通道的像素值之和,Xcount为该图像块中该通道的像素点数量,LMAX为每个像素点的亮度最大值,这个和sensor输入数据的bit位有关。例如,输入8bit,则LMAX为255;输入10bit时,LMAX为1023.Thblack和Thover_exp分别为预设低亮度阈值和预设高亮度阈值。

        有红色、绿色、蓝色三通道时:

        其中,ΣR,ΣB,ΣG分别为该图像块中对应于红色通道、蓝色通道、绿色通道的像素值之和,Rcount为该图像块中红色像素点的数量,Gcount为该图像块中绿色像素点的数量,Bcount为该图像块中蓝色像素点的数量。

        对于一个图像块来说,如果其的值小于等于Thblack,则说明该图像块过暗,如果其大于等于Thover_exp,则说明该图像块过亮,都是需要排除在统计范围之外的。

  1. 确定当前帧符合切换日模式条件之后,还包括如下步骤:

    为了避免日夜模式的频繁来回切换,还可以增加切换次数的限制。具体地,如流程图2所示,如果所述符合切换日模式条件的连续帧数大于预设帧数阈值,则切换至日模式,包括如下步骤:

  1. 如果所述符合切换日模式条件的连续帧数大于预设帧数阈值,判断第一时间范围内日夜模式切换的次数是否大于预设次数阈值;
  2. 如果是,则在第二时间范围内锁定为夜模式,在第二时间范围之后可以再次判断当前采集的图像帧是否符合切换日模式条件,以及符合切换日模式条件的连续帧数是否大于预设帧数阈值,此处第二时间范围的时长和第一时间范围的时长可以根据需要设定和调整,第二时间范围可以与第一时间范围的时长相同,也可以不同;
  3. 否则,说明未达到切换次数的限制,切换至日模式。

讨论:

      了避免日夜模式的频繁来回切换,还可以增加切换次数的限制。频繁切换次数的限制是个不错的考虑。避免某些特定环境下来回切,影响用户体验。不过在某些情况下可能会耗费过多的切换时间。

      计算光照强度的时候,该专利是通过丢帧的方式获取稳定的曝光参数。对于外部亮度变化比较大的情况,N值如果取得太小,则N帧后可能获取到的曝光参数并非稳定状态下的曝光参数;N值如果取的稍大大,虽然能够在亮度环境变化较大的情况下获取到稳定的曝光参数,但是对于外部亮度变化比较小的情况下,增加了日夜切换的时间,用户体验不佳。

      是否可以通过主控的isp模块输出的曝光稳定标记来判断,这样就避免上述出现的情况。

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

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

相关文章

【源码解析】Spring Cloud Gateway的断言和过滤器源码解析

路由断言(Route Predicate)工厂 Spring Cloud Gateway包括许多内置的路由断言(Route Predicate)工厂&#xff0c;所有这些Predicate都与HTTP请求的不同属性匹配。多个Route Predicate工厂可以进行组合。 官方文档&#xff1a;https://docs.spring.io/spring-cloud-gateway/do…

TCP协议结构

文章目录 TCP---传输控制协议TCP报文结构 TCP—传输控制协议 缓冲区的意义 TCP协议是自带发送和接收缓冲区的&#xff0c;相当于malloc了两段内存空间。 系统调用接口send,write等并不是直接把数据发送到网络上&#xff0c;而是把数据拷贝到TCP的发送缓冲区&#xff0c;至此应…

Java读取Properties配置文件的6种方式

Java读取Properties的方式 项目结构&#xff1a;经典的maven项目结构 配置文件1和2内容一致&#xff1a; jdbc.drivercom.mysql.cj.jdbc.Driver jdbc.urlmysql://localhost:3306/database?useUnicodetrue&characterEncodingutf-8&serverTimezoneAsia/Shanghai jdbc.…

Axios二次封装

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 一、Axios是什么&#xff1f;二、为什么要对Axios进行二次封装三、Axios二次封装1.首先&#xff0c;安装 Axios&#xff1a;2.创建一个名为 http.js 的文件&#xf…

AI 工具合辑盘点(三)持续更新

人工智能技术的发展已经改变了我们的生活&#xff0c;越来越多的AI工具正在被广泛应用于各个领域。ChatGPT这样的代表性AI模型正在大放异彩&#xff0c;为我们带来了无数的便利和惊喜。在本文中&#xff0c;我们将介绍一系列优秀的AI工具&#xff0c;这些工具可以帮助你完成各种…

课程教学大纲系统的设计与实现

技术栈&#xff1a; Nginx、MySQL、Maven、SpringBoot、Spring、SpringMVC、MyBatis、HikariCP、fastjson、slf4j、Vue、NodeJS系统功能&#xff1a; 本系统分教师和管理员两种角色&#xff0c;不同角色可操作的功能不尽相同&#xff0c;各个角色具体功能如下&#xff1a;教师 …

Python实现哈里斯鹰优化算法(HHO)优化随机森林回归模型(RandomForestRegressor算法)项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档视频讲解&#xff09;&#xff0c;如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 2019年Heidari等人提出哈里斯鹰优化算法(Harris Hawk Optimization, HHO)&#xff0c;该算法有较强的全…

SpringCloud------Eureka单机版整合生产以及消费(四)

SpringCloud------Eureka&#xff08;四&#xff09; Eureka 读音&#xff1a;有瑞卡 Eureka基础知识 单机构架步骤 集群构建步骤 autuator微服务信息完善 服务发现Discovery eureka自我保护 服务注册与发现 包括&#xff1a; Eureka Zookeeper Consul Nacos 【分布式的CAP理…

FlinkCDC初体验

一、CDC简介 1.1 什么是CDC&#xff1f; CDC是 Change Data Capture(变更数据获取 )的简称。 核心思想是&#xff0c;监测并捕获数据库的 变动&#xff08;包括数据或数据表的插入 、 更新 以及 删除等&#xff09;&#xff0c;将这些变更按发生的顺序完整记录下 来&#xff0c…

【Flask】Python基于Flask应用

Flask介绍 Flask 是一款发布于2010年非常流行的 Python Web 框架。 特点 微框架、简洁&#xff0c;给开发者提供了很大的扩展性。Flask和相应的插件写得很好&#xff0c;用起来很爽。 开发效率非常高&#xff0c;比如使用 SQLAlchemy 的 ORM 操作数据库可以节省开发者大量书…

【LeetCode】数据结构题解(5)[分割链表]

分割链表 1.题目来源2.题目描述3.解题思路4.代码展示 所属专栏&#xff1a;玩转数据结构题型 博主首页&#xff1a;初阳785 代码托管&#xff1a;chuyang785 感谢大家的支持&#xff0c;您的点赞和关注是对我最大的支持&#xff01;&#xff01;&#xff01; 博主也会更加的努力…

聊一聊 GDB 调试程序时的几个实用命令

一&#xff1a;背景 1. 讲故事 用惯了宇宙第一的 Visual Studio 再用其他的开发工具还是有一点不习惯&#xff0c;不习惯在于想用的命令或者面板找不到&#xff0c;总的来说还是各有千秋吧&#xff0c;今天我们来聊一下几个在调试中比较实用的命令&#xff1a; 查看内存硬件…

B站java、计算机学习整理(菜鸟版本)

B站java、计算机学习整理&#xff08;菜鸟版本&#xff09; 简介1、入门篇2、工具篇3、数据库篇4、框架篇5、JVM 篇6、源码篇7、算法与数据结构8、操作系统9、计算机组成原理10、计算机网络11、 设计模式 简介 处在互联网时代&#xff0c;是一种幸福&#xff0c;因为各式各样的…

Win10系统开机自动蓝屏无法使用怎么U盘重装系统?

Win10系统开机自动蓝屏无法使用怎么U盘重装系统&#xff1f;今天和大家一起来分享Win10系统蓝屏之后怎么去进行修复的方法。很多用户都有遇到电脑蓝屏无法启动的问题&#xff0c;那么遇到这个问题之后怎么去重装系统呢&#xff1f;接下来我们来看看以下的解决方法分享吧。 准备…

Python突破某网游游戏JS加密限制,进行逆向解密,实现自动登录

前言 大家早好、午好、晚好吖 ❤ ~欢迎光临本文章 今天来分享一下如何使用Python突破某网游游戏JS加密限制&#xff0c;进行逆向解密&#xff0c;实现自动登录。 逆向目标 目标&#xff1a;某 7 网游登录 主页&#xff1a;aHR0cHM6Ly93d3cuMzcuY29tLw 接口&#xff1a;aHR…

牛客_华为_ HJ63 DNA序列

HJ63 DNA序列 st input() n int(input())max_ratio 0 ratio 0 res for i in range(0,len(st)-n1):s st[i:in]ratio s.count(C)s.count(G)if ratio > max_ratio:max_ratio ratiores s print(res)

cPanel XSS漏洞分析研究(CVE-2023-29489)

一、漏洞原理 漏洞简述 cPanel 是一套在网页寄存业中最享负盛名的商业软件&#xff0c;是基于于 Linux 和 BSD 系统及以 PHP 开发且性质为闭源软件&#xff1b;提供了足够强大和相当完整的主机管理功能&#xff0c;诸如&#xff1a;Webmail 及多种电邮协议、网页化 FTP 管理、…

【考前看几题】系统集成项目管理师-2022年上半年-上午真题(广东卷)

前言 汇总知识点、重点问题、难点 由问题引出知识点 软件技术、其他技术、管理基础、整体管理、范围管理、成本管理、人力资源管理 干系人管理、合同管理、采购管理、配置管理、质量管理、风险管理、安全管理 文章目录 前言软件技术、其他技术管理基础整体管理范围管理成本管理…

第12届蓝桥杯国赛真题剖析-2021年5月29日Scratch编程初中级组

[导读]&#xff1a;超平老师的《Scratch蓝桥杯真题解析100讲》已经全部完成&#xff0c;后续会不定期解读蓝桥杯真题&#xff0c;这是Scratch蓝桥杯真题解析第128讲。 第12届蓝桥杯Scratch国赛真题&#xff0c;这是2021年5月29日举办的全国总决赛&#xff0c;比赛仍然采取线上…

【java】Java 异常处理的十个建议

文章目录 前言一、尽量不要使用e.printStackTrace(),而是使用log打印。二、catch了异常&#xff0c;但是没有打印出具体的exception&#xff0c;无法更好定位问题三、不要用一个Exception捕捉所有可能的异常四、记得使用finally关闭流资源或者直接使用try-with-resource五、捕获…