手机中常用的传感器
文章目录
- 重力传感器 Gravity sensor
- 三维坐标
- 加速度传感器 Accelerometer
- 三维坐标
- 陀螺仪 Gyroscope
- 三维坐标
- 磁力传感器 Magnetometer
- 三维坐标
- 光线传感器 Light Sensor
- 接近传感器 Proximity Sensor
- 其他
- 传感器协同工作
- 相机自动调整
传感器有唤醒和非唤醒属性
关于重力传感器和加速度传感器,还需要多查询确认
可以用QSensorTest、SensorBox查看传感器
重力传感器 Gravity sensor
定义:确定设备的竖直方向和位置
应用:
- 屏幕自动旋转:旋转手机时检测设备的旋转方向和速度,从而自动调整屏幕方向
- 晃动检测:检测手机的晃动和振动,摇晃手机来控制游戏、拍照等应用,拍照防抖
三维坐标
XYZ轴是指设备内部加速度计或陀螺仪等传感器用于测量运动和方向的三个虚拟轴。这些轴帮助确定手机在空间中的相对位置和移动。通常,这三个轴的定义如下:
-
X轴:通常沿着手机的宽度方向。如果你将手机水平放置在桌面上,屏幕朝上,那么从左边缘到右边缘的方向被视为X轴的正方向。
-
Y轴:通常沿着手机的高度方向。在同样的情况下,从手机底部到顶部的方向被视为Y轴的正方向。
-
Z轴:垂直于手机屏幕,穿过手机中心。如果手机水平放置,那么从手机背面穿过屏幕到正面的方向被视为Z轴的正方向。
加速度传感器 Accelerometer
定义:检测设备的加速度和变化速率,可用加速度衡量(m/s²)
应用:
- 屏幕自动旋转:旋转手机时检测设备的旋转方向和速度,从而自动调整屏幕方向
- 晃动检测:检测手机的晃动和振动,摇晃手机来控制游戏、拍照等应用,拍照防抖
- 步数计数:计算步数、跑步距离等
- 图像稳定:拍照或录像时,检测设备的晃动和运动,减少抖动和模糊
- (存疑)振动反馈:实现触摸屏幕时的振动反馈,在交互应用中触发设备的振动反馈
三维坐标
手机水平放置在桌面上时X轴默认为0,Y轴默认为0,Z轴默认为9.8m/s²(重力加速度)
- X轴:对应长边,向左倾斜为正值,向右倾斜为负值
- Y轴:对应短边,向下倾斜为正值,向上倾斜为负值
- Z轴:正面朝上为正值,正面朝下为负值
陀螺仪 Gyroscope
定义:测试角速度和角位移,可用角速度衡量(rad/s)
应用:
- 相机参数自动调整:与加速度传感器、光线传感器等协作帮助手机确认设备的方向和角度,从而实现自动调整白平衡、对焦、曝光补偿等参数
三维坐标
- X轴:对应短边,向下倾斜为正值,向上倾斜为负值
- Y轴:对应长边,向右倾斜为正值,向左倾斜为负值
- Z轴:水平放置旋转,向左为正值,向右为负值
磁力传感器 Magnetometer
定义:感知和测量周围磁场强度,检测磁场的大小和方向,并将这些信息转换为电信号输出,磁场强度可用磁感应强度衡量(μT微特斯拉,磁场强弱和方向),由XYZ轴的磁场强度计算得出
应用:
- 指南针:指示磁场方向
- 地图导航:导航的箭头会随着手机转向而转动
三维坐标
磁场是有方向的,其正负是相对于所选择的参考方向
- X轴与东西方向对应,当指向南北方向时,X轴为0
- Y轴与南北方向对应,当指向东西方向时,Y轴为0
- Z轴与垂直地面方向对应,当与地球磁场垂直向上且无磁场干扰时,Z轴为0,实际中通常不会出现
光线传感器 Light Sensor
定义:检测周围的光线强度,可用照度衡量(Lux勒克斯,单位面积入射光的总光通量,是人眼感知的光强)
应用:
- 自动调节屏幕亮度:不同光线环境下自适应调整
- 调整相机曝光等参数
接近传感器 Proximity Sensor
定义:检测设备是否靠近物体,通常只区分有物体靠近和无物体靠近两种状态
应用:
- 自动调节或关闭屏幕:在耳边打电话时自动调节屏幕亮度或关闭屏幕,防止误触屏幕
- 自动解锁:抬手亮屏
其他
还有距离传感器、指纹传感器、霍尔传感器、气压传感器,暂不叙述。
传感器协同工作
实际运用中可能会需要多个传感器协同工作来更好地实现某一功能
相机自动调整
- 光线传感器:环境光线调整曝光
- 陀螺仪:相机倾斜或旋转,保持画面稳定
- 加速度传感器:相机加速度和运动状态,保持画面稳定
- 距离传感器:物像距离,帮助对焦
相关文章:
手机中常用的传感器
文章目录 重力传感器 Gravity sensor三维坐标 加速度传感器 Accelerometer三维坐标 陀螺仪 Gyroscope三维坐标 磁力传感器 Magnetometer三维坐标 光线传感器 Light Sensor接近传感器 Proximity Sensor其他传感器协同工作相机自动调整 传感器有唤醒和非唤醒属性 关于重力传感器和…...
电脑工作电压是多少你要看看光驱电源上面标的输入电压范围
要确定电脑的工作电压,必须查看电源上标注的输入电压范围。 国内法规规定民用220V电压范围为10%-15%,也就是说通信220V电压正常范围为187--242V,供电设备一般为180V。 --250V电压范围,即正常情况下电脑电源电压不低于187V即可工作…...
自动驾驶---Motion Planning之Speed Boundary
1 背景 在上篇博客《自动驾驶---Motion Planning之Path Boundary》中,笔者主要介绍了path boundary的一些内容,通过将道路中感兴趣区域的动静态障碍物投影到车道坐标系中,用于确定L或者S的边界,并利用道路信息再确定Speed的边界,最后结合粗糙的速度曲线和路径曲线,即可使…...
php文件操作
一、文件读取的5种方法 1,file_get_contents: 将整个文件读入一个字符串 file_get_contents( string $filename, bool $use_include_path false, ?resource $context null, int $offset 0, ?int $length null ): string|false 可以读取本地的文件也可以用来打…...
计算机设计大赛 目标检测-行人车辆检测流量计数
文章目录 前言1\. 目标检测概况1.1 什么是目标检测?1.2 发展阶段 2\. 行人检测2.1 行人检测简介2.2 行人检测技术难点2.3 行人检测实现效果2.4 关键代码-训练过程 最后 前言 🔥 优质竞赛项目系列,今天要分享的是 行人车辆目标检测计数系统 …...
Java二叉树 (2)
🐵本篇文章将对二叉树的一些基础操作进行梳理和讲解 一、操作简述 int size(Node root); // 获取树中节点的个数int getLeafNodeCount(Node root); // 获取叶子节点的个数int getKLevelNodeCount(Node root,int k); // 获取第K层节点的个数int getHeight(Node r…...
R语言数学建模(三)—— 模型工作流
R语言数学建模(三)—— 模型工作流 文章目录 R语言数学建模(三)—— 模型工作流前言一、模型工作流1.1 模型的起点和终点在哪里?1.2 Workflow基础1.3 将原始变量添加到workflow()1.4 workflow()如何使用formula基于树的…...
Android谈谈ArrayList和LinkedList的区别?
Android中的ArrayList和LinkedList都是Java集合框架中的List接口的实现,但它们在内部数据结构和性能特性上有所不同: 1. **内部数据结构**: - ArrayList是基于动态数组(可调整大小的数组)实现的。它在内存中是连续…...
Appcms存储型XSS漏洞复现
君衍. 一、环境介绍二、环境部署三、测试回显四、多次注入1、第一条评论2、第二条评论3、管理员登录查看 五、编写脚本获取cookie 一、环境介绍 这里需要注意,我没有找到原有的该环境源码包,因为这个是很久前的漏洞了,在XSS学习中可以查看下…...
springcloud-alibaba Sentinel入门
Releases alibaba/Sentinel GitHubSentinel下载官方 在cmd 里面运行 启动命令 java -jar sentinel-dashboard-1.8.6.jar 启动成功前提 java环境 ,已经注册到服务注册中心,8080端口没有被占用 启动后访问地址为 qhttp://localhost:8080http://lo…...
Linux系统——web服务拓展练习
目录 一、实验环境搭建 1. Centos 7-5——Client 2. Centos 7-1——网关服务器 3. Centos 7-2——Web1 4. Centos 7-3——Web2 5. Centos 7-4——Nginx 二、在Nginx服务器上搭建LNMP服务,并且能够对外提供Discuz论坛服务;在Web1、Web2服务器上搭建…...
SQLite3中的callback回调函数注意的细节
调用 sqlite3_exec(sqlite3*, const char *sql, sqlite_callback, void *data, char **errmsg)该例程提供了一个执行 SQL 命令的快捷方式, SQL 命令由 sql 参数提供,可以由多个 SQL 命令组成。 在这里, 第一个参数 sqlite3 是打开的数据库对…...
2024华北医院信息网络大会最新演讲嘉宾
大会背景 近年来,我国医疗行业信息化取得了飞跃式的发展,医疗信息化对医疗行业有着重要的支撑作用。2021年国家卫健委、中医药管理局联合印发《公立医院高质量发展促进行动(2021-2025年)》,提出重点建设“三位一体…...
指数移动平均(EMA)
文章目录 前言EMA的定义在深度学习中的应用PyTorch代码实现yolov5中模型的EMA实现 参考 前言 在深度学习中,经常会使用EMA(指数移动平均)这个方法对模型的参数做平均,以求提高测试指标并增加模型鲁棒。实际上,_EMA可以…...
无线表格识别模型LORE转换库:ConvertLOREToONNX
引言 总有小伙伴问到阿里的无线表格识别模型是如何转换为ONNX格式的。这个说来有些惭愧,现有的ONNX模型是很久之前转换的了,转换环境已经丢失,且没有做任何笔记。 今天下定决心再次尝试转换,庆幸的是转换成功了。于是有了转换笔…...
C# 视频转图片
在 C# 中将视频转换为图像可以使用 FFmpeg 库。下面是一个示例代码来完成这个任务: using System; using System.Diagnostics;class Program {static void Main(string[] args){string inputFile "input_video.mp4"; // 输入的视频文件路径string outpu…...
LINUX ADC使用
监测 ADC ,使用CAT 查看: LINUX ADC基本使用 &adc {pinctrl-names "default";pinctrl-0 <&adc6>;pinctrl-1 <&adc7>;pinctrl-2 <&adc8>;pinctrl-3 <&adc9>;pinctrl-4 <&adc10>;pinctrl-5 …...
Ubuntu 基本操作-嵌入式 Linux 入门
在 Ubuntu 基本操作 里面基本就分为两部分: 安装 VMware 运行 Ubuntu熟悉 Ubuntu 的各种操作、命令 如果你对 Ubuntu 比较熟悉的话,安装完 VMware 运行 Ubuntu 之后就可以来学习下一章节了。 1. 安装 VMware 运行 Ubuntu 我们首先来看看怎么去安装 V…...
Pytorch可形变卷积分类模型与可视化
E:. │ archs.py │ dataset.py │ deform_conv_v2.py │ train.py │ utils.py │ visual_net.py │ ├─grad_cam │ 2.png │ 3.png │ ├─image │ ├─1 │ │ 154.png │ │ 2.png │ │ │ ├─2 │ │ 143.png │…...
Mysql 表逻辑分区原理和应用
MySQL的表逻辑分区是一种数据库设计技术,它允许将一个表的数据分布在多个物理分区中,但在逻辑上仍然表现为一个单一的表。这种方式可以提高查询性能、简化数据管理,并有助于高效地进行大数据量的存储和访问。逻辑分区基于特定的规则ÿ…...
MPNet:旋转机械轻量化故障诊断模型详解python代码复现
目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...
synchronized 学习
学习源: https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖,也要考虑性能问题(场景) 2.常见面试问题: sync出…...
23-Oracle 23 ai 区块链表(Blockchain Table)
小伙伴有没有在金融强合规的领域中遇见,必须要保持数据不可变,管理员都无法修改和留痕的要求。比如医疗的电子病历中,影像检查检验结果不可篡改行的,药品追溯过程中数据只可插入无法删除的特性需求;登录日志、修改日志…...
如何在看板中体现优先级变化
在看板中有效体现优先级变化的关键措施包括:采用颜色或标签标识优先级、设置任务排序规则、使用独立的优先级列或泳道、结合自动化规则同步优先级变化、建立定期的优先级审查流程。其中,设置任务排序规则尤其重要,因为它让看板视觉上直观地体…...
SCAU期末笔记 - 数据分析与数据挖掘题库解析
这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...
iPhone密码忘记了办?iPhoneUnlocker,iPhone解锁工具Aiseesoft iPhone Unlocker 高级注册版分享
平时用 iPhone 的时候,难免会碰到解锁的麻烦事。比如密码忘了、人脸识别 / 指纹识别突然不灵,或者买了二手 iPhone 却被原来的 iCloud 账号锁住,这时候就需要靠谱的解锁工具来帮忙了。Aiseesoft iPhone Unlocker 就是专门解决这些问题的软件&…...
涂鸦T5AI手搓语音、emoji、otto机器人从入门到实战
“🤖手搓TuyaAI语音指令 😍秒变表情包大师,让萌系Otto机器人🔥玩出智能新花样!开整!” 🤖 Otto机器人 → 直接点明主体 手搓TuyaAI语音 → 强调 自主编程/自定义 语音控制(TuyaAI…...
Android Bitmap治理全解析:从加载优化到泄漏防控的全生命周期管理
引言 Bitmap(位图)是Android应用内存占用的“头号杀手”。一张1080P(1920x1080)的图片以ARGB_8888格式加载时,内存占用高达8MB(192010804字节)。据统计,超过60%的应用OOM崩溃与Bitm…...
A2A JS SDK 完整教程:快速入门指南
目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库ÿ…...
如何更改默认 Crontab 编辑器 ?
在 Linux 领域中,crontab 是您可能经常遇到的一个术语。这个实用程序在类 unix 操作系统上可用,用于调度在预定义时间和间隔自动执行的任务。这对管理员和高级用户非常有益,允许他们自动执行各种系统任务。 编辑 Crontab 文件通常使用文本编…...
