国赛----可见光室内定位

#初期试探
拿到题目后,反复读了题目。首先队内结合网上资料形成了两种方案,原理相同就是利用光信号到达的强度来定位。两者差距在于算法不同而已,一种利用计算得出位置,另一种就是经过测量得到一种位置与光强对应的表,然后通过查表得到位置。
##方法
产生三个不同频率的方波作为信号驱动三个LED灯发亮,然后再用光电二极管接收。(这里光电二极管、光电三极管、光敏电阻都考虑过。我们的光电三极管识别角度太小,光敏电阻形状不规整,容易造成旋转不对称不利于计算和精度的实现)。接收到的信号经过FFT(快速傅里叶变换)将频率幅度信息还原回来,就像下图
FFT图
这是我做过的最漂亮的一次,之后做的是后都有很大的杂波。(最后发现这个应该不是我们的实验数据而是直接用三个正弦波叠加做的fft,orz)


我们想通过不同频段对应幅度与距离的关系,确定LED距离传感器(光电二极管)的位置从而实现定位。


但这些是在极度理想的情况下,事实上灯的亮度很难保证是一个定值,这种装置也不一定具有旋转对称性(距离相同,不同方位强度可能不同),二极管以及发光装置都存在这一定程度的不对称性。
根据实际的测试发现,FFT的结果有很大的抖动,相同的测试环境下幅值甚至会有30%的差别,当然这里有一些是我们自身做的不到位,但是这种方法经过实验证明精度十分的堪忧。于是我们舍弃了这种方法。

#最终方案----摄像头定位
上一个方法我们尝试了接近了两天,最后抛弃了。于是我们的时间仅剩下了一天半,我们有先见之明提前买了摄像头当我们宣布上一个方案死亡时,我们就去尝试了摄像头的方案 摄像头是openmv 附带一个F7的芯片作为处理器,内部跑Python代码。
这里写图片描述
剩下的就是算法
##算法
核心是定位到光源的位置。然后自己(传感器)的位置就是图像中心的位置,已知三个点的位置和自已与三个点的相对位置,剩下的计算就不难了。

##障碍
当然实际上不可能只有这么简单,但也不难克服
我们的方案是,让摄像头的方向固定,然后利用算法,消除一些固定不准确造成的误差
1. 摄像头旋转造成的误差
2. 摄像头位置不水平造成的误差
3. 摄像头没有拍到全部光源,特殊情况的处理
4. 外界光源的干扰

前两个使用算法消除,后两个则是考虑到漏光面只有一处,还有相对的光源几何关系来消除。

  • 17
    点赞
  • 60
    收藏
    觉得还不错? 一键收藏
  • 16
    评论
Thanks to the highly-dense lighting infrastructure in public areas, visible light emerges as a promising means to indoor localization and navigation. State-of-the-art techniques generally require customized hardware (sensing boards), and mainly work with one single light source (e.g., customized LEDs). This greatly limits their application scope. In this paper, we propose NaviLight, a generic indoor localization and navigation framework based on existing lighting infrastructure with any unmodified light sources (e.g., LED, fluorescent, and incandescent lights). NaviLight simply adopts commercial off-the-shelf mobile phones as receivers, and light intensity values as location signatures. Unlike existing WiFi systems, a single light intensity value is not discriminative enough over space though the light intensity field does vary, which makes our design more challenging. We thus propose a LightPrint as a location signature using a vector of multiple light intensity values obtained during user’s walks. Such LightPrints are created by leveraging any user movement (of varying distance and direction) in order to minimize user efforts. A set of techniques are proposed to achieve quick LightPrint matching, which includes a coarse-grained classification and a fine-grained matching over dynamic time warping. We have implemented NaviLight to provide real-time service on Android phones in three typical indoor environments, covering a total area size over 1000m2. Our experiments show that NaviLight can achieve sub-meter localization accuracy to meet practical engineering requirements.
2023年网络建设与运维国赛的Linux部分将涉及大量与Linux操作系统相关的技术和实践。参赛选手需要具备扎实的Linux基础知识、熟悉常用的Linux命令和工具,以及对网络架构和运维流程有深入了解。以下是几个可能出现的考点和相关内容: 1. Linux 系统安装与配置:选手需要了解如何安装各种Linux发行版,并进行基本配置,如网络设置、用户管理和权限控制等。 2. Linux 网络服务:主要考察选手对于各种网络服务的搭建和配置能力,如Web服务器(Apache/Nginx)、数据库服务器(MySQL/PostgreSQL)和邮件服务器(Postfix/Dovecot)等。 3. Linux 系统监控与性能优化:选手需要熟悉Linux系统的监控和调优手段,如使用top、vmstat等工具进行性能监测,优化内存管理、磁盘IO等问题。 4. Linux 安全防护与应急响应:选手需要掌握Linux系统的安全防护策略,如配置防火墙、使用SELinux进行强化等;同时,还需了解常见的攻击方式和应急响应措施。 5. Shell 脚本编写:选手需要具备基本的Shell编程能力,能够使用Shell脚本实现日常运维任务的自动化。 在比赛中,选手需要灵活运用自己的知识和技能,通过实际操作和解决问题的能力展现自己的水平。此外,对于团队竞赛,选手之间的协作能力和分工合作也是考核的重点之一。 要在2023年的网络建设与运维国赛的Linux部分取得好成绩,选手们需要提前系统学习相关知识并进行实践,注重积累经验,不断完善自己的技能和能力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值