室内定位引擎产品系统

我要开发同款
m1rroringC2026年10月06日
6阅读

技术信息

语言技术
C++、C、Android、iOS
系统类型
Android应用、iOS应用
行业分类
物联网、开发工具

作品详情

行业场景

室内定位引擎基于室内定位方法,在室内空间及没有GPS和无线基站信号的环境中,为手机、可穿戴设备提供当前位置及运动轨迹,配合室内地图、路径规划、导航功能,服务于商场导购、医院导医、保安巡逻、车场寻车等行业场景。

功能介绍

室内定位引擎基于运动传感器采集设备的运动数据和环境数据,包括:3轴加速度、3轴角速度、3轴地磁、气压等,经过算法迭代计算获得设备相对位置及轨迹信息。与后台定位数据服务平台交互,利用WiFi、蓝牙信标、建筑结构、地磁等信息,修正当前位置。封装设备交互、核心算法和底层逻辑,形成SDK,提供应用开发接口,支持Android、iOS及c程序接口。

项目实现

本人作为算法核心研究人员,提出算法思路,进行数据采集、算法验证,模拟工具开发,并开发建立SDK和Demo应用。

SDK架构:
1.设备访问层
Android平台,基于SensorManager,Java封装数据采集逻辑,实现采集模块;
iOS平台,基于CoreMontion,Objective-C/C++封装数据采集逻辑,实现采集模块;
采集模块采集必要数据组织为内部数据结构,通过数据同步机制同步给核心算法模块。
2.数据访问层
封装后台定位数据服务平台的访问接口,基于HTTP,调用RESTful接口,获取指纹及环境数据,进行本地缓存。同时,提供核心算法模块访问API。
3.定位解算
基于C/C++实现PDR定位算法,与数据采集模块同步耦合,对数据进行伴随式处理。
4.应用逻辑封装层
Android平台,基于JNI封装底层逻辑;
iOS平台,基于Objective-C/C++封装底层逻辑;
以本地原生代码实现融合定位和修正逻辑,结合数据访问模块,根据指纹数据、环境数据等进行融合定位及位置修正。
5.应用接口层
以本地原生代码实现SDK与上层应用的接口,以listener、接口回调等方式,向应用层报告实时位置、位置置信度等信息。

Demo应用:
1.交互层
Android、iOS均采用原生代码实现应用框架,主要交互部分是基于地图的界面,采用潜入浏览器方式。基于js调用浏览器引擎提供本地接口回调实现与原生应用逻辑的交互。
地图的实现,在Demo中,底图通过建筑平面图片经过经纬度矫正及配准实现(实际应用通过搭建瓦片图服务提供),通过ESRI的js地图SDK实现地图加载,位置、轨迹、兴趣点等的绘制。
2.控制层
建立控制器类,提供实时位置获取、楼层切换、兴趣点信息获取、导航等交互操作,并调用SDK接口或应用逻辑模块实现。
3.SDK
初始化运行环境,实时解算位置信息,并报告。

示例图片

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论