关于手机中Camera Sensor Flicker产生原因和解决方法

news2024/11/20 14:44:22

Camera flicker相信在一部分中低端机里可以看到的现象(拍灯最为明显)。
在这里插入图片描述
在了解Camera flicker前,先了解一些词汇。

快门:快门是照相机用来控制感光片有效曝光时间的机构。是照相机的一个重要组成部分,它的结构、形式及功能是衡量照相机档次的一个重要因素。

关于曝光,分为Global Shutter和Rolling Shutter。Global Shutter即整幅场景在同一时间曝光实现的,Sensor所有像素点同时收集光线,同时曝光。在曝光开始的时候,sensor开始收集光线;曝光结束时,光线收集电路被切断。Sensor值读出来即为一幅画面。

Rolling Shutter即通过逐行曝光的方式实现的。在曝光开始的时候,Sensor逐行扫描进行曝光,直至所有像素点均被曝光。同一帧画面不同行下,各行存在着很多像素点。行与行之间的像素的曝光时长是一致的。然而行与行之间的像素曝光的开始时间是不相同的。所以不同行在相同的曝光时长下,接受的能量也就不一定相同,进而形成了flicker在这里插入图片描述
以220V 50HZ的交流电信号为例,信号周期为20ms,然而功率周期为10ms,灯的亮度随着功率的变化而变化,即1秒钟灯会发生100次闪烁。因人眼对光强变化有一定的迟滞和适应性,所以无法观察到光源的亮度变化,但依然会增加人眼的疲劳程度。然而对于Camera Sensor而言,没有人眼的迟滞和适应过程,所以对光源亮度的变化是比较敏感的。
在这里插入图片描述
(图片来自网络)
上图为在工频的环境下,sensor 一帧内每一行曝光的亮度的变化。
分别有10ms、8ms、12ms三种曝光时长。
曝光是sensor的每一个像素的能量积累,这里使用面积表示,面积是由积分计算所得。可以看出只有当曝光时长为功率周期10ms时,前后的面积是稳定不变的,即所获得的能量始终不变,即最终表现的亮度始终如一。

所以为避免flicker,最好的即是让曝光时长为光能量周期的整数倍时间

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

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

相关文章

HarmonyOS 鸿蒙应用开发 DevEco Studio环境搭建 (值得收藏哦)

目录 1、华为开发者官网下载 DevEco Studio 2、安装DevEco Studi 3、安装过程具体步骤 4、认证华为开发者账号 5、编写第一个鸿蒙应用 1、华为开发者官网下载 DevEco Studio 前往:华为开发者官网地址 下载,我这里下载的 deveco-studio-3.1.0.500版…

如何为 kNN 搜索选择最佳 k 和 num_candidates

作者:Madhusudhan Konda 如何选择最好的 k 和 num_candidates? 向量搜索在当前的生成式人工智能/机器学习领域中已经成为一个改变游戏规则的技术。它允许我们基于语义含义而不仅仅是精确的关键词匹配来找到相似的项目。 Elasticsearch的 k-近邻&#x…

Pandas 创建层次化索引

1.创建多层次索引 1.1 隐式构造 最常见的方法是给DataFrame构造函数的index参数传递两个或更多的数组 # 导入pandasimport numpy as npimport pandas as pd​data np.random.randint(0,100,size(6,6))​# 行索引index [ ["1班","1班","1班&qu…

Java+原生HTML+ WebSocket+MySQL云HIS信息管理系统源码 支持一体化电子病历四级

Java原生HTML WebSocketMySQL云HIS信息管理系统源码 支持一体化电子病历四级 云HIS电子病历系统是一种基于云计算技术的医疗信息管理系统,旨在实现医疗信息的数字化、标准化和共享化。该系统通过云计算平台,将医院内部的各个业务模块(如门诊、…

buu[HCTF 2018]WarmUp(代码审计)

buu[HCTF 2018]WarmUp&#xff08;代码审计&#xff09; 题目 访问source.php <?phphighlight_file(__FILE__);class emmm{public static function checkFile(&$page){$whitelist ["source">"source.php","hint">"hint.php…

【吊打面试官系列】Java高并发篇 - ReadWriteLock 是什么 ?

大家好&#xff0c;我是锋哥。今天分享关于 【ReadWriteLock 是什么 &#xff1f;】面试题&#xff0c;希望对大家有帮助&#xff1b; ReadWriteLock 是什么 &#xff1f; 首先明确一下&#xff0c;不是说 ReentrantLock 不好&#xff0c;只是 ReentrantLock 某些时候有局限。 …

Hadoop+Spark大数据技术 实验8 Spark SQL结构化

9.2 创建DataFrame对象的方式 val dfUsers spark.read.load("/usr/local/spark/examples/src/main/resources/users.parquet") dfUsers: org.apache.spark.sql.DataFrame [name: string, favorite_color: string ... 1 more field] dfUsers.show() -----------…

【传知代码】掩码自回归编码器法(论文复现)

前言&#xff1a;在探索现代数据科学的前沿领域时&#xff0c;掩码自回归编码器法&#xff08;Masked Autoencoder&#xff0c;简称MAE&#xff09;无疑是一个引人注目的亮点。这一技术&#xff0c;凭借其独特的训练机制和卓越的性能&#xff0c;已经在图像识别、自然语言处理以…

K8s 搭建 FileBeat+ELK 分布式日志收集系统 以及 KQL 语法介绍

一、K8s FileBeat ELK 介绍 ELK&#xff0c;即Elasticsearch、Logstash和Kibana三个开源软件的组合&#xff0c;是由Elastic公司提供的一套完整的日志管理解决方案。Elasticsearch是一个高度可扩展的开源全文搜索和分析引擎&#xff0c;它允许你快速地、近乎实时地存储、搜索…

PCB设计——返回路径

回流基本概念 从电路理论上看&#xff0c;信号是由电流传播的&#xff0c;明确的说是电子的运动&#xff0c;电子流的特性之一就是电子从不在任何地方停留&#xff0c;无论电流流到哪里&#xff0c;必然要回来&#xff0c;因此电流总是在环路中流动&#xff0c;从源到负载然后从…

高效使用 LaTeX 技巧

但对于一般人而言&#xff0c;你不需要通过学习 Vim 来达到高效编辑 LaTeX 的方式。而是通过一些比较容易实现的方式&#xff0c;使得你能够在原来的基础上更加高效得使用 LaTeX&#xff0c;并达到以思考的速度输入 LaTeX 的方式。 在第一部分&#xff0c;我会首先介绍高效编辑…

1301-习题1-1高等数学

1. 求下列函数的自然定义域 自然定义域就是使函数有意义的定义域。 常见自然定义域&#xff1a; 开根号 x \sqrt x x ​&#xff1a; x ≥ 0 x \ge 0 x≥0自变量为分式的分母 1 x \frac{1}{x} x1​&#xff1a; x ≠ 0 x \ne 0 x0三角函数 tan ⁡ x cot ⁡ x \tan x \cot x …

告别登录烦恼,WPS免登录修改器体验!(如何实现不登录使用WPS)

文章目录 &#x1f4d6; 介绍 &#x1f4d6;&#x1f3e1; 演示环境 &#x1f3e1;&#x1f4d2; 解决方案 &#x1f4d2;&#x1f388; 获取方式 &#x1f388;⚓️ 相关链接 ⚓️ &#x1f4d6; 介绍 &#x1f4d6; 想象一下&#xff0c;如果你能够绕过繁琐的登录流程&#x…

探秘机器学习经典:K-近邻算法(KNN)全解析

在浩瀚的机器学习宇宙中,K-近邻算法(K-Nearest Neighbors,简称KNN)如同一颗璀璨的明星,以其简洁直观的原理和广泛的应用范围,赢得了众多数据科学家的喜爱。今天,让我们一起揭开KNN的神秘面纱,深入探讨它的运作机制、优缺点、应用场景,以及如何在实际项目中灵活运用。 …

从零到一建设数据中台 - 数据治理路径

一、数据治理的内容 数据治理用于规范数据的生成以及使用,改进数据质量,对数据进行加工处理,提升数据价值。提供识别和度量数据质量能力、数据清洗转换能力、数据加工三个核心能力。 数据汇集:数据汇集是数据中台数据接入的入口,所有数据来自于业务系统、日志、文件、网络…

JDBC总结

目录 JDBC(java database connection) JDBC连接数据库步骤: 1. 在项目中添加jar文件,如图所示 2.加载驱动类 向数据库中插入数据代码示例: 第一种: 第二种: 查询操作 : 第一种: 第二种: JDBC(java database connection) java数据库连接.api(应用程序编程接口) ,可…

esp32开发中CMakeLists.txt文件在编译时添加打印信息

在使用CMakeLists.txt文件时&#xff0c;我们时常会对一些宏定义表示的具体路径表示迷茫&#xff0c;不太确定具体表示的路径是哪个&#xff0c;这个时候就希望能在编译的时候打印当前文件中使用的宏定义表示的路径的具体信息。 就像下图中&#xff0c;编译时打印出 CMAKE_CU…

牛客NC391 快乐数【simple 模拟法 Java/Go/PHP】

题目 题目链接&#xff1a; https://www.nowcoder.com/practice/293b9ddd48444fa493dd17da0feb192d 思路 直接模拟即可Java代码 import java.util.*;public class Solution {/*** 代码中的类名、方法名、参数名已经指定&#xff0c;请勿修改&#xff0c;直接返回方法规定的值…

serverless在点淘的质量保障实践

SERVERLESS能够将应用分为研发域和运维域&#xff0c;使两者独立迭代&#xff0c;降低运维成本&#xff0c;提升研发效率。点淘作为试点项目&#xff0c;经历了包括功能回归、压力测试和监控验证在内的质量保障流程&#xff0c;并在实践中遇到了各种问题&#xff0c;如依赖梳理…

VOS3000被DDOS攻击后该怎么办

VOS3000遭受DDoS攻击的应对措施 当VOS3000遭受DDoS攻击时&#xff0c;可以采取以下几个步骤来应对&#xff1a; 立即启动防火墙&#xff1a;尽管难以完全阻止DDoS攻击&#xff0c;但防火墙可以在一定程度上帮助抵御攻击&#xff0c;减轻其造成的危害。 联系服务器提供商&#…