CN114067851B - 信号源处理方法、装置及非易失性存储介质 - Google Patents
信号源处理方法、装置及非易失性存储介质 Download PDFInfo
- Publication number
- CN114067851B CN114067851B CN202111163531.9A CN202111163531A CN114067851B CN 114067851 B CN114067851 B CN 114067851B CN 202111163531 A CN202111163531 A CN 202111163531A CN 114067851 B CN114067851 B CN 114067851B
- Authority
- CN
- China
- Prior art keywords
- signal source
- source data
- thread
- data
- queue
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012545 processing Methods 0.000 claims abstract description 81
- 238000000034 method Methods 0.000 claims abstract description 43
- 238000003672 processing method Methods 0.000 claims abstract description 32
- 238000012544 monitoring process Methods 0.000 claims description 42
- 230000008569 process Effects 0.000 claims description 27
- 230000000903 blocking effect Effects 0.000 claims description 17
- 238000006243 chemical reaction Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 4
- 230000004807 localization Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 6
- 230000003068 static effect Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000007613 environmental effect Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W64/00—Locating users or terminals or network equipment for network management purposes, e.g. mobility management
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
Abstract
本申请公开了一种信号源处理方法、装置及非易失性存储介质。其中,该方法包括:获取终端设备当前扫描到的信号源产生的信号源数据,其中,信号源数据用于预测与当前环境对应的定位结果;对信号源产生的信号源数据进行录制,得到录制结果;对录制结果进行回放,获取定位结果。本申请解决了相关技术中,在待定位对象的环境发生变化时,无法对待定位对象进行精准定位的技术问题。
Description
技术领域
本申请涉及定位技术领域,具体而言,涉及一种信号源处理方法、装置及非易失性存储介质。
背景技术
目前,人们在出行,尤其是在陌生的环境中行走或者行驶时,通常会借助终端设备上安装的具备地图导航功能的应用软件,该应用软件能够基于终端设备的定位位置,引导使用该终端设备的用户沿着相应的导航路线顺利到达目的地。
在现有技术中,可以通过终端设备(例如,手机、车辆)搭载的GNSS模块对终端设备进行定位,但GNSS信号存在被遮挡而导致定位失灵的情况,为此,现有技术提供了多源融合定位技术,该技术通过终端设备接收或扫描到的各种信号源(GNSS、基站、Wifi、蓝牙、传感器等)数据,和部署在服务侧的在线定位算法、部署在终端设备侧的离线定位算法以及相关的调度策略,持续输出终端设备的定位位置。可见,信号源数据是定位算法持续输出定位位置的基础。
在定位算法和定位逻辑不发生变化的情况下,终端设备的定位位置的精度(简称为定位精度)会受到终端设备接收或扫描到的信号源数据的准确度的影响。而终端设备自身状态和终端设备所在区域的环境因素,会对终端设备接收或扫描到的信号源数据的准确度产生影响,信号源数据的准确度下降就会导致定位精度下降,定位精度一旦下降会对基于定位位置的各类服务(导航服务、网约车服务、生活服务等)产生影响。因此,在终端设备自身状态或环境因素不可控也不可预测的情况下,如何保证定位位置的可预期性,是本领域技术人员要解决的问题。
发明内容
本申请实施例提供了一种信号源处理方法、装置及非易失性存储介质,以至少解决相关技术中,在待定位对象的环境发生变化时,无法对待定位对象进行精准定位的技术问题。
根据本申请实施例的一个方面,提供了一种信号源处理方法,包括:获取终端设备当前扫描到的信号源产生的信号源数据,其中,信号源数据用于预测与当前环境对应的定位结果;对信号源产生的信号源数据进行录制,得到录制结果;对录制结果进行回放,获取定位结果。
根据本申请实施例的另一方面,还提供了一种信号源处理装置,包括:获取模块,用于获取终端设备当前扫描到的信号源产生的信号源数据,其中,信号源数据用于预测与当前环境对应的定位结果;录制模块,用于对信号源产生的信号源数据进行录制,得到录制结果;处理模块,用于对录制结果进行回放,获取定位结果。
根据本申请实施例的另一方面,还提供了一种非易失性存储介质,该非易失性存储介质中存储有计算机程序,其中,计算机程序被设置为运行时执行上述的信号源处理方法。
在本申请实施例中,采用对终端设备当前扫描到的信号源产生的信号源数据进行录制的方式,在获取终端设备当前扫描到的、用于预测与当前环境对应的定位结果的信号源产生的信号源数据之后,对信号源产生的信号源数据进行录制,得到录制结果,然后再对录制结果进行回放,获取定位结果。
在上述过程中,信号源数据是终端设备当前扫描到的信号源所产生的数据,即终端设备当前扫描到的信号源所产生的信号源数据与终端设备的当前环境有关,因此,在对信号源产生的信号源数据进行录制的过程中,能够将可变的环境通过录制的方式固定下来,然后在使用上述的信号源数据时,通过回放的方式对录制结果进行回放,实现了将不可控的系统信号源替换为回放的信号源,上层业务通过回放的信号源可无限次回放当时的场景,降低了环境变化对定位结果的影响,从而保证了定位结果的确定性(即可预期性)和准确性。
由此可见,本申请所提供的方案达到了保证环境变化时定位结果准确性的目的,从而实现了对待定位对象进行准确定位的技术效果,进而解决了相关技术中,在待定位对象的环境发生变化时,无法对待定位对象进行精准定位的技术问题。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的一种可选的用于实现信号源处理方法的计算设备的硬件结构框图;
图2是根据本申请实施例的一种信号源处理方法的流程图;
图3是根据本申请实施例的一种可选的录制初始化的示意图;
图4是根据本申请实施例的一种可选的开始录制的流程图;
图5是根据本申请实施例的一种可选的结束录制的流程图;
图6是根据本申请实施例的一种可选的回放初始化的示意图;
图7是根据本申请实施例的一种可选的信号源回放的流程示意图;
图8是根据本申请实施例的一种可选的回放结束的流程图;
图9是根据本申请实施例的一种信号源处理装置的示意图;
图10是根据本申请实施例的一种计算设备的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本申请实施例,还提供了一种信号源处理方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例一所提供的信号源处理方法实施例可以在移动终端、计算设备或者类似的运算装置中执行。图1示出了一种用于实现信号源处理方法的计算设备(或移动设备)的硬件结构框图。如图1所示,计算设备10(或移动设备10)可以包括一个或多个(图中采用102a、102b,……,102n来示出)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器104、以及用于通信功能的传输模块106。除此以外,还可以包括:显示器、输入/输出接口(I/O接口)、通用串行总线(USB)端口(可以作为BUS总线的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算设备10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
应当注意到的是上述一个或多个处理器102和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到计算设备10(或移动设备)中的其他元件中的任意一个内。如本申请实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
存储器104可用于存储应用软件的软件程序以及模块,如本申请实施例中的信号源处理方法对应的程序指令/数据存储装置,处理器102通过运行存储在存储器104内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的信号源处理方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算设备10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算设备10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
显示器可以例如触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与计算设备10(或移动设备)的用户界面进行交互。
此处需要说明的是,在一些可选实施例中,上述图1所示的计算机设备(或移动设备)可以包括硬件元件(包括电路)、软件元件(包括存储在计算机可读介质上的计算机代码)、或硬件元件和软件元件两者的结合。应当指出的是,图1仅为特定具体实例的一个实例,并且旨在示出可存在于上述计算机设备(或移动设备)中的部件的类型。
在上述运行环境下,本申请提供了如图2所示的信号源处理方法。图2是根据本申请实施例一的信号源处理方法的流程图,由图2可知,该方法至少包括如下步骤:
步骤S202,获取终端设备当前扫描到的信号源产生的信号源数据,其中,信号源数据用于预测与当前环境对应的定位结果。
在步骤S202中,当前环境可以为待定位对象所处的环境,其中,待定位对象可以车辆、人、动物等。可选的,在待定位对象为车辆的情况下,终端设备可设置在车辆中,该终端设备可获取当前环境下的多种类型信号源,例如,终端设备可以为车辆中的导航系统,也可以为车辆上的人所持有的具有导航功能的设备(例如,手机);在待定位对象为人的情况下,人持有终端设备,该终端设备可获取当前环境下的多种类型信号源,其中,终端设备人所持有的具有导航功能的设备(例如,手机)。
另外,在步骤S202中,信号源为定位时所需要使用到的系统信号,包括但不限于GNSS(Global Navigation Satellite System,全球导航卫星系统)采集到的信息、基站采集到的信息、WIFI信息、蓝牙信息以及相关传感器所采集到的信息。
在一种可选的实施例中,车辆上具有终端设备,该终端设备实时获取车辆行驶过程中的所扫描到的多种类型的信号源,例如,终端设备上具有WIFI模块,其可获取该车辆周围所能检测到的WIFI信息(例如,WIFI信号的数量以及WIFI信号的强度等);终端设备上还可具有蓝牙模块,其可检测到该车辆周围需进行蓝牙连接的设备;终端设备还可具有温度传感器、湿度传感器等,其可获取该车辆周围的环境信息(例如,环境温度、湿度等)。另外,终端设备还可基于GNSS获取车辆的位置信息,同时还可获取基站的位置信息、设备信息等信息。
需要说明的是,上述以当前环境为室外环境为例进行说明,在实际应用中,当前环境还可为室内环境,例如,用户手持终端设备(例如,手机)在室内移动,此时,终端设备获取的是室内环境下所扫描到的信号源所产生的信号源数据。
步骤S204,对信号源产生的信号源数据进行录制,得到录制结果。
在步骤S204中,可通过数据库的方式对所需要的信号源数据进行录制,可选的,该数据库可以为云端数据库,在该场景中,终端设备在对信号源数据进行录制之后,将录制结果发送至云端数据库进行存储。
需要说明的是,通过步骤S204的录制方式,能够将可变的环境固定下来,从而降低了环境变化对定位结果的影响。
步骤S206,对录制结果进行回放,获取定位结果。
在步骤S206中,对录制结果进行回放实现的是对录制的信号源数据的回放,可选的,可按照信号源数据的录制顺序对录制结果进行回放。其中,录制结果可回放至定位软件开发工具包中,以实现终端设备通过定位软件开发工具包进行位置定位。
需要说明的是,通过步骤S206可将不可控的系统信号源数据替换为回放的信号源数据,从而可以较大概率的保证定位结果输出的可预期性,而且,在对录制结果进行多次回放之后,所得到的定位结果也是相同的,从而保证了基于回放结果确定的定位结果的准确性。
此外,还需要说明的是,现有的导航系统通过定位引擎日志的方式仅能回放导航场景中的信号源数据,而无法回放其他场景(例如,室内场景)的信号源数据。而本申请录制的是当前场景的信号源数据,当前场景可以为室外场景,也可以为室内场景,还可以为主图场景,在实际应用中,无需考虑上层业务的使用方法,以及上层业务使用场景,从而实现了全场景的信号源数据的回放,使得本申请所提供的方案具有更广的适用场景。
基于上述步骤S202至步骤S206所限定的方案,可以获知,在本申请实施例中,采用对终端设备当前扫描到的信号源产生的信号源数据进行录制的方式,在终端设备当前扫描到的、用于预测与当前环境对应的定位结果的信号源产生的信号源数据之后,对信号源产生的信号源数据进行录制,得到录制结果,然后再对录制结果进行回放,获取定位结果。
容易注意到的是,在上述过程中,信号源数据是终端设备当前扫描到的信号源所产生的数据,即终端设备当前扫描到的信号源所产生的信号源数据与终端设备的当前环境有关,因此,在对信号源产生的信号源数据进行录制的过程中,能够将可变的环境通过录制的方式固定下来,然后在使用上述的信号源数据时,通过回放的方式对录制结果进行回放,实现了将不可控的系统信号源替换为回放的信号源,上层业务通过回放的信号源可无限次回放当时的场景,降低了环境变化对定位结果的影响,从而保证了定位结果的确定性(即可预期性)和准确性。
由此可见,本申请所提供的方案达到了保证环境变化时定位结果准确性的目的,从而实现了对待定位对象进行准确定位的技术效果,进而解决了相关技术中,在待定位对象的环境发生变化时,无法对待定位对象进行精准定位的技术问题。
在一种可选的实施例中,在对信号源产生的信号源数据进行录制的过程中,主要涉及对信号源录制的初始化、开始录制以及结束录制三个过程。
可选的,在对信号源录制的初始化过程中,首先,获取录制配置信息,然后,基于录制配置信息创建数据库文件,并在数据库文件中分别为不同类型的信号源创建对应的信号源数据表,基于录制配置信息对信号源管理器进行初始化,并调用初始化后的信号源管理器分别为不同类型的信号源添加对应的信号源记录器,最后,基于录制配置信息对每种类型的信号源对应的监听线程进行初始化。
其中,图3示出了一种可选的录制初始化的示意图,由图3可知,在进行录制初始化的过程中,首先控制终端设备读取录制配置信息,可选的,该录制配置信息可用于对存储信号源数据的数据库进行配置,其中,该录制配置信息包括但不限于静态数据请求频率、入库类型、数据库文件名称等。
可选的,静态数据为持续保持不变的数据,该数据可由终端设备或者服务器直接访问得到,例如,WIFI开关的数据(例如,1表示WIFI开关处于开启状态;0表示WIFI开关处于关闭状态)、内存数据(例如,1表示内存处于占用状态,0表示内存处于空闲状态)、电量数据(例如,剩余电量)。
另外,入库类型表征了写入数据库文件中的数据的类型,例如,GPS数据类型、WIFI数据类型等。在对信号源数据进行回放时,可通过入库类型选择需要回放的信号源数据,而无需对所有的信号源数据都进行回放,从而使得信号源数据的回放更加灵活。
在获取到录制配置信息之后,基于录制配置信息创建数据库文件,可选的,数据库文件中存储的数据类型为上述写入数据库的数据类型,数据库文件的名称即为上述数据库文件名称。
进一步的,在创建数据库文件之后,对信号源管理器进行初始化,其中,信号源管理器可对信号源数据进行管理,例如,通过信号源管理器可从不同类型的信号源中选择需要监听的目标类型的信号源。然后,再添加不同类型的信号源记录器,其中,不同类型的信号源由对应类型的信号源记录器进行记录。可选的,信号源记录器可将对应类型的信号源写入到缓存队列中,缓存队列中的信号源最终写入数据库文件中。
更进一步的,由图3可知,在添加不同类型的信号源之后,创建不同类型的信号源数据表,同样的,不同类型的信号源的信号源数据存储在不同类型的信号源数据表中。最后,对不同类型的信号源的类型对应的监听线程进行初始化,从而实现了对信号源录制的初始化。
在一种可选的实施例中,在对信号源录制初始化之后,即可开始对信号源产生的信号源数据进行录制,具体的,首先,调用与信号源的类型对应的监听线程,由监听线程监听信号源产生的信号源数据,然后再调用与信号源的类型对应的信号源记录器,由信号源记录器将信号源的类型对应的监听线程监听到的信号源数据记录至信号源的类型对应的缓存队列,最后由信号源记录器将缓存队列中存储的信号源写入信号源的类型对应的信号源数据表。
可选的,图4示出了一种可选的开始录制的流程图,终端设备中具有计时器,在开始对信号源数据进行录制时,终端设备开启计时器,记录开始录制的时间。然后,终端设备调用通过信号源管理器从多种类型信号源中所选择的信号源的动态数据和静态数据,其中,动态数据为随着待定位对象的移动而发生持续变化的数据,例如,随着待定位对象的移动,GPS列表、WIFI列表等中的数据不断增加等。
然后,与所选择的信号源的类型对应的信号源记录器通过每种类型的信号源的信号源接口将信号源数据(即上述的动态数据以及静态数据)记录至对应的缓存队列中,最后通过信号源记录器将缓存队列中的信号源数据批量写入至对应的信号源数据表中。
需要说明的是,不同类型的信号源对应不同类型的信号源接口,不同类型的信号源对应不同的信号源记录器,并且,不同类型的信号源对应不同的信号源数据表,其中,通过信号源接口将信号源数据记录至对应的缓存队列中,该信号源接口具有通用性,可避免不同的系统仅能兼容对应的数据格式的问题,可选的,信号源接口能够兼容的系统包括但不限于Android系统的数据格式。
在一种可选的实施例中,由图4可知,在将缓存队列中存储的信号源数据写入与该信号源的类型对应的信号源数据表之前,需要判断缓存队列中信号源数据的存储量与预设阈值的大小。具体的,在调用信号源的类型对应的监听线程监听信号源数据的过程中,判断缓存队列的存储量是否大于预设阈值,当确定缓存队列的存储量大于预设阈值时,将缓存队列中存储的信号源数据写入信号源数据表,并将写入信号源数据表的信号源数据从缓存队列中删除。
在另一种可选的实施例中,当缓存队列的存储量不大于预设阈值的时长超过预设时长时,也可将缓存队列中存储的信号源数据批量写入信号源数据表中,例如,终端设备的计时器在开始录制信号源数据时开始计时,当信号源管理器检测到某一类型的信号源的缓存队列中的存储量长时间达不到预设阈值,则该类型信号源对应的信号源记录器将对应类型的缓存队列中的信号源数据写入至对应类型的信号源数据表中。该过程可避免信号源数据长时间存储在缓存队列中,导致长时间占用内存进而影响系统性能的问题。
可选的,图5示出了一种可选的结束录制的流程图,由图5可知,在结束录制之前,当停止调用信号源的类型对应的监听线程监听信号源数据时,首先需要判断缓存队列中是否存在尚未写入信号源数据表的剩余信号源数据;当确定缓存队列中存在剩余信号源数据时,将剩余信号源数据写入信号源数据表,并将写入信号源数据表的剩余信号源数据从缓存队列中删除;当确定缓存队列中不存在剩余信号源数据时,释放信号源的类型对应的监听线程和缓存队列。
需要说明的是,由图5可知,在停止调用信号源的类型对应的监听线程之前,还需要对信号源管理器对应的数据进行解注册,其中,通过停止各种信号采集的方式来实现对信号源管理器对应的数据进行解注册。
在一种可选的实施例中,当终端设备接收到停止数据采集的控制指令时,终端设备停止对信号源管理器对应的数据进行解注册。在另一种可选的实施例中,当终端设备无法采集到数据时,例如,终端设备发生故障,或者,终端设备中采集数据或接收数据的部件发生故障时,终端设备停止对信号源管理器对应的数据进行解注册,以避免终端设备发生故障,或者,终端设备中采集数据或接收数据的部件发生故障时,继续采集数据,导致采集到的数据存在误差的问题。
在一种可选的实施例中,在对信号源数据进行回放的过程中,也涉及三个阶段,即对信号源数据回放的初始化、开始回放以及结束回放三个阶段。
可选的,图6示出了一种可选的回放初始化的示意图,在对信号源数据进行回放的过程中,首先获取回放配置信息,并对数据库进行初始化,其中,回放配置信息包括但不限于选择的需要回放的数据库文件、阻塞队列的大小、入库类型等。
需要说明的是,阻塞队列中包含了等待回放的信号源数据,例如,需要对GPS信号源数据进行回放,只有在GPS信号源数据对应的回放时间达到之后,才从阻塞队列中获取该GPS信号源数据,并对其进行回放,回放时间未达到的信号源数据,则需在阻塞队列中,继续等待,直到回放时间达到后,再从阻塞队列中取出。
可选的,由图6可知,在获取回放配置信息之后,进一步,基于回放配置信息对信号源管理器进行初始化,并通过信号源管理器分别为不同类型的信号源添加对应的信号源回放器,然后基于回放配置信息对每种类型的信号源对应的工作线程进行初始化。
需要说明的是,信号源工作线程包括:信号源读取线程、信号源队列线程、信号源分发线程、信号源处理线程、信号源回调线程。其中,信号源读取线程用于读取数据库文件中待分发信号源数据;信号源队列线程用于从阻塞队列中获取待分发信号源数据;信号源分发线程用于获取待分发信号源数据;信号源处理线程用于对待分发信号源数据进行处理;信号源回调线程用于对待分发信号源数据进行数据回调。
在一种可选的实施例中,对录制结果进行回放的过程中,首先调用信号源读取线程从数据库文件中读取待分发信号源数据,并将待分发信号源数据缓存至阻塞队列,然后调用信号源队列线程,由信号源队列线程按照待分发信号源数据写入数据库文件时的写入时间先后顺序,从阻塞队列获取待分发信号源数据,并存储至消息队列,再调用信号源分发线程,由信号源分发线程按照写入时间的先后顺序从消息队列获取待分发信号源数据。然后再确定待分发信号源数据是否为回调数据,当确定待分发信号源数据不是回调数据时,调用信号源处理线程对待分发信号源数据进行字节序列转化处理以得到处理结果,并将处理结果存储至内存;当确定待分发信号源数据为回调数据时,调用信号源分发线程将待分发信号源数据分发至信号源回调线程,调用信号源回调线程在对待分发信号源数据进行字节序列转化处理后进行数据回调以获取定位结果。
需要说明的是,信号源处理线程至少包括静态数据处理线程,其中,在待分发信号源数据不是回调数据时,可调用静态数据处理线程对待分发信号源数据进行字节序列转化处理,其中,字节序列转化处理可以为但不限于数据反序列化处理。
此外,还需要说明的是,每种类型的信号源的待分发信号源数据具有单独的阻塞队列,并在对信号源数据进行回放时,对同一种类型的信号源的待分发信号源数据进行单独回放。另外,每种类型的信号源的待分发信号源数据都单独具有对应的信号源工作线程,即不同类型的信号源的待分发信号源数据的信号源读取线程、信号源队列线程、信号源分发线程、信号源处理线程以及信号源回放线程都是不同的,从而使得在调用对应的信号源工作线程对对应类型的信号源的待分发信号源数据进行处理时,不会对其他类型的信号源的待分发信号源数据造成影响,保证了不同类型的信号源的待分发信号源数据之间的独立性。
可选的,图7示出了一种上述的信号源回放的流程示意图,由图7可知,在调用信号源读取线程从数据库文件中读取待分发信号源数据之前,还需要记录开始回放时间。
在一种可选的实施例中,图8示出了一种可选的回放结束的流程图,由图8可知,在结束回放的过程中,首先,停止调用信号源工作线程,然后再释放信号源工作线程和待分发信号源数据所占用的存储资源,在释放信号源工作线程以及存储资源之后,信号源数据的回放结束。
进一步的,在对信号源数据进行回放的过程中,可将回放的信号源数据回放给终端设备的定位服务接口,从而使得上层业务可使用回放的信号源数据无限次的回放当时的场景,进而避免了可变的环境对定位结果的影响。
由上述内容可知,本申请所提供的方案可录制所有定位用到的信号源数据,即对当时所处的环境进行录制,然后可从录制的多个信号源中选择需要回放的信号源,再按照录制顺序对选择的需要回放的信号源数据进行回放。整个过程无需考虑上层业务的使用场景,并能够进行全场景信号源数据回放,适用场景更加广泛。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的信号源处理方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
实施例2
根据本申请实施例,还提供了一种用于实施上述信号源处理方法的信号源处理装置,如图9所示,该装置90包括:获取模块901、录制模块903以及处理模块905。
其中,获取模块901,用于获取终端设备当前扫描到的信号源产生的信号源数据,其中,信号源数据用于预测与当前环境对应的定位结果;录制模块903,用于对信号源产生的信号源数据进行录制,得到录制结果;处理模块905,用于对录制结果进行回放,获取定位结果。
此处需要说明的是,上述获取模块901、录制模块903以及处理模块905对应于实施例1中的步骤S202至步骤S206,三个模块与对应的步骤所实现的实例和应用场景相同,但不限于上述实施例一所公开的内容。需要说明的是,上述模块作为装置的一部分可以运行在实施例一提供的计算设备10中。
可选的,录制模块包括:第一调用模块、第二调用模块以及第一处理模块。其中,第一调用模块,用于调用与信号源的类型对应的监听线程,由监听线程监听信号源产生的信号源数据;第二调用模块,用于调用与信号源的类型对应的信号源记录器,由信号源记录器将信号源的类型对应的监听线程监听到的信号源数据记录至信号源的类型对应的缓存队列;第一处理模块,用于由信号源记录器将缓存队列中存储的信号源写入信号源的类型对应的信号源数据表。
可选的,第一处理模块包括:第一判断模块、第二处理模块、第二判断模块以及第三处理模块。其中,第一判断模块,用于在调用信号源的类型对应的监听线程监听信号源数据的过程中,判断缓存队列的存储量是否大于预设阈值;第二处理模块,用于当确定缓存队列的存储量大于预设阈值时,将缓存队列中存储的信号源数据写入信号源数据表,并将写入信号源数据表的信号源数据从缓存队列中删除;第二判断模块,用于当停止调用信号源的类型对应的监听线程监听信号源数据时,判断缓存队列中是否存在尚未写入信号源数据表的剩余信号源数据;第三处理模块,用于当确定缓存队列中存在剩余信号源数据时,将剩余信号源数据写入信号源数据表,并将写入信号源数据表的剩余信号源数据从缓存队列中删除。
可选的,信号源处理装置还包括:第四处理模块,用于当确定缓存队列中不存在剩余信号源数据时,释放信号源的类型对应的监听线程和缓存队列。
可选的,信号源处理装置还包括:第一获取模块、第一创建模块、第二创建模块、第五处理模块以及第六处理模块。其中,第一获取模块,用于获取录制配置信息;第一创建模块,用于基于录制配置信息创建数据库文件;第二创建模块,用于在数据库文件中分别为不同类型的信号源创建对应的信号源数据表;第五处理模块,用于基于录制配置信息对信号源管理器进行初始化,并调用初始化后的信号源管理器分别为不同类型的信号源添加对应的信号源记录器;第六处理模块,用于基于录制配置信息对每种类型的信号源对应的监听线程进行初始化。
可选的,处理模块包括:第三调用模块、缓存模块、第四调用模块、第五调用模块、第一确定模块、第六调用模块以及第七调用模块。其中,第三调用模块,用于调用信号源读取线程从数据库文件中读取待分发信号源数据;缓存模块,用于将待分发信号源数据缓存至阻塞队列;第四调用模块,用于调用信号源队列线程,由信号源队列线程按照待分发信号源数据写入数据库文件时的写入时间先后顺序,从阻塞队列获取待分发信号源数据,并存储至消息队列;第五调用模块,用于调用信号源分发线程,由信号源分发线程按照写入时间的先后顺序从消息队列获取待分发信号源数据;第一确定模块,用于确定待分发信号源数据是否为回调数据;第六调用模块,用于当确定待分发信号源数据不是回调数据时,调用信号源处理线程对待分发信号源数据进行字节序列转化处理以得到处理结果,并将处理结果存储至内存;第七调用模块,用于当确定待分发信号源数据是回调数据时,调用信号源分发线程将待分发信号源数据分发至信号源回调线程,调用信号源回调线程在对待分发信号源数据进行字节序列转化处理后进行数据回调以获取定位结果。
可选的,录制结果回放至定位软件开发工具包。
可选的,信号源处理装置还包括:第二获取模块、第七处理模块以及第八处理模块。其中,第二获取模块,用于获取回放配置信息;第七处理模块,用于基于回放配置信息对信号源管理器进行初始化,并通过信号源管理器分别为不同类型的信号源添加对应的信号源回放器;第八处理模块,用于基于回放配置信息对每种类型的信号源对应的工作线程进行初始化,其中,工作线程包括:信号源读取线程、信号源队列线程、信号源分发线程、信号源处理线程、信号源回调线程。
实施例3
根据本申请实施例,还提供了一种用于实施上述信号源处理方法的电子设备,该电子设备包括:处理器以及存储器。
其中,存储器,与处理器连接,用于为处理器提供处理以下处理步骤的指令:获取终端设备当前扫描到的信号源产生的信号源数据,其中,信号源数据用于预测与当前环境对应的定位结果;对信号源产生的信号源数据进行录制,得到录制结果;对录制结果进行回放,获取定位结果。
由上可知,在本申请实施例中,采用的对所有信号源进行录制的方式,在获取当前环境下的多种类型信号源之后,通过对多种类型信号源进行录制,得到录制结果,并对录制结果进行回放,获取定位结果。
容易注意到的是,在上述过程中,对当前环境下的多种类型信号源进行录制,从而将可变的环境通过录制的方式固定下来,然后在使用上述对应类型的信号源时,通过回放的方式进行回放,实现了将不可控的系统信号源替换为回放的信号源,上层业务通过回放的信号源可无限次回放当时的场景,降低了环境变化对定位结果的影响,从而保证了定位结果输出的准确性。
由此可见,本申请所提供的方案达到了保证环境变化时定位结果准确性的目的,从而实现了对待定位对象进行准确定位的技术效果,进而解决了相关技术中,在待定位对象的环境发生变化时,无法对待定位对象进行精准定位的技术问题。
需要说明的是,本实施例中的处理器可执行实施例1中的信号源处理方法,其中,信号源处理方法的相关内容已在实施例1中进行说明,在此不再赘述。
实施例4
本申请的实施例可以提供一种计算设备,该计算设备可以是计算设备群中的任意一个计算设备。可选地,在本实施例中,上述计算设备也可以替换为移动终端等终端设备。
可选地,在本实施例中,上述计算设备可以位于计算机网络的多个网络设备中的至少一个网络设备。
在本实施例中,上述计算设备可以执行信号源处理方法中以下步骤的程序代码:获取终端设备当前扫描到的信号源产生的信号源数据,其中,信号源数据用于预测与当前环境对应的定位结果;对信号源产生的信号源数据进行录制,得到录制结果;对录制结果进行回放,获取定位结果。
可选地,图10是根据本申请实施例的一种计算设备的结构框图。如图10所示,该计算设备10可以包括:一个或多个(图中仅示出一个)处理器1002、存储器1004以及外设接口1006。
其中,存储器可用于存储软件程序以及模块,如本申请实施例中的信号源处理方法和装置对应的程序指令/模块,处理器通过运行存储在存储器内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的信号源处理方法。存储器可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至计算设备10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤:获取终端设备当前扫描到的信号源产生的信号源数据,其中,信号源数据用于预测与当前环境对应的定位结果;对信号源产生的信号源数据进行录制,得到录制结果;对录制结果进行回放,获取定位结果。
可选的,上述处理器还可以执行如下步骤的程序代码:调用与信号源的类型对应的监听线程,由监听线程监听信号源产生的信号源数据;调用与信号源的类型对应的信号源记录器,由信号源记录器将信号源的类型对应的监听线程监听到的信号源数据记录至信号源的类型对应的缓存队列;由信号源记录器将缓存队列中存储的信号源写入信号源的类型对应的信号源数据表。
可选的,上述处理器还可以执行如下步骤的程序代码:在调用信号源的类型对应的监听线程监听信号源数据的过程中,判断缓存队列的存储量是否大于预设阈值;当确定缓存队列的存储量大于预设阈值时,将缓存队列中存储的信号源数据写入信号源数据表,并将写入信号源数据表的信号源数据从缓存队列中删除;当停止调用信号源的类型对应的监听线程监听信号源数据时,判断缓存队列中是否存在尚未写入信号源数据表的剩余信号源数据;当确定缓存队列中存在剩余信号源数据时,将剩余信号源数据写入信号源数据表,并将写入信号源数据表的剩余信号源数据从缓存队列中删除。
可选的,上述处理器还可以执行如下步骤的程序代码:当确定缓存队列中不存在剩余信号源数据时,释放信号源的类型对应的监听线程和缓存队列。
可选的,上述处理器还可以执行如下步骤的程序代码:获取录制配置信息;基于录制配置信息创建数据库文件;在数据库文件中分别为不同类型的信号源创建对应的信号源数据表;基于录制配置信息对信号源管理器进行初始化,并调用初始化后的信号源管理器分别为不同类型的信号源添加对应的信号源记录器;基于录制配置信息对每种类型的信号源对应的监听线程进行初始化。
可选的,上述处理器还可以执行如下步骤的程序代码:调用信号源读取线程从数据库文件中读取待分发信号源数据;将待分发信号源数据缓存至阻塞队列;调用信号源队列线程,由信号源队列线程按照待分发信号源数据写入数据库文件时的写入时间先后顺序,从阻塞队列获取待分发信号源数据,并存储至消息队列;调用信号源分发线程,由信号源分发线程按照写入时间的先后顺序从消息队列获取待分发信号源数据;确定待分发信号源数据是否为回调数据;当确定待分发信号源数据不是回调数据时,调用信号源处理线程对待分发信号源数据进行字节序列转化处理以得到处理结果,并将处理结果存储至内存;当确定待分发信号源数据是回调数据时,调用信号源分发线程将待分发信号源数据分发至信号源回调线程,调用信号源回调线程在对待分发信号源数据进行字节序列转化处理后进行数据回调以获取定位结果。其中,录制结果回放至定位软件开发工具包。
可选的,上述处理器还可以执行如下步骤的程序代码:获取回放配置信息;基于回放配置信息对信号源管理器进行初始化,并通过信号源管理器分别为不同类型的信号源添加对应的信号源回放器;基于回放配置信息对每种类型的信号源对应的工作线程进行初始化,其中,工作线程包括:信号源读取线程、信号源队列线程、信号源分发线程、信号源处理线程、信号源回调线程。
本领域普通技术人员可以理解,图10所示的结构仅为示意,计算设备也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌声电脑以及移动互联网设备(MobileInternet Devices,MID)、PAD等终端设备。图10其并不对上述电子装置的结构造成限定。例如,计算设备10还可包括比图10中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图10所示不同的配置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。
实施例5
本申请的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于保存上述实施例一所提供的信号源处理方法所执行的程序代码。
可选地,在本实施例中,上述存储介质可以位于计算机网络中计算设备群中的任意一个计算设备中,或者位于移动终端群中的任意一个移动终端中。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:获取终端设备当前扫描到的信号源产生的信号源数据,其中,信号源数据用于预测与当前环境对应的定位结果;对信号源产生的信号源数据进行录制,得到录制结果;对录制结果进行回放,获取定位结果。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:调用与信号源的类型对应的监听线程,由监听线程监听信号源产生的信号源数据;调用与信号源的类型对应的信号源记录器,由信号源记录器将信号源的类型对应的监听线程监听到的信号源数据记录至信号源的类型对应的缓存队列;由信号源记录器将缓存队列中存储的信号源写入信号源的类型对应的信号源数据表。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:在调用信号源的类型对应的监听线程监听信号源数据的过程中,判断缓存队列的存储量是否大于预设阈值;当确定缓存队列的存储量大于预设阈值时,将缓存队列中存储的信号源数据写入信号源数据表,并将写入信号源数据表的信号源数据从缓存队列中删除;当停止调用信号源的类型对应的监听线程监听信号源数据时,判断缓存队列中是否存在尚未写入信号源数据表的剩余信号源数据;当确定缓存队列中存在剩余信号源数据时,将剩余信号源数据写入信号源数据表,并将写入信号源数据表的剩余信号源数据从缓存队列中删除。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:当确定缓存队列中不存在剩余信号源数据时,释放信号源的类型对应的监听线程和缓存队列。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:获取录制配置信息;基于录制配置信息创建数据库文件;在数据库文件中分别为不同类型的信号源创建对应的信号源数据表;基于录制配置信息对信号源管理器进行初始化,并调用初始化后的信号源管理器分别为不同类型的信号源添加对应的信号源记录器;基于录制配置信息对每种类型的信号源对应的监听线程进行初始化。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:调用信号源读取线程从数据库文件中读取待分发信号源数据;将待分发信号源数据缓存至阻塞队列;调用信号源队列线程,由信号源队列线程按照待分发信号源数据写入数据库文件时的写入时间先后顺序,从阻塞队列获取待分发信号源数据,并存储至消息队列;调用信号源分发线程,由信号源分发线程按照写入时间的先后顺序从消息队列获取待分发信号源数据;确定待分发信号源数据是否为回调数据;当确定待分发信号源数据不是回调数据时,调用信号源处理线程对待分发信号源数据进行字节序列转化处理以得到处理结果,并将处理结果存储至内存;当确定待分发信号源数据是回调数据时,调用信号源分发线程将待分发信号源数据分发至信号源回调线程,调用信号源回调线程在对待分发信号源数据进行字节序列转化处理后进行数据回调以获取定位结果。其中,录制结果回放至定位软件开发工具包。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:获取回放配置信息;基于回放配置信息对信号源管理器进行初始化,并通过信号源管理器分别为不同类型的信号源添加对应的信号源回放器;基于回放配置信息对每种类型的信号源对应的工作线程进行初始化,其中,工作线程包括:信号源读取线程、信号源队列线程、信号源分发线程、信号源处理线程、信号源回调线程。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (9)
1.一种信号源处理方法,其中,包括:
获取终端设备当前扫描到的信号源产生的信号源数据,其中,所述信号源数据用于预测与当前环境对应的定位结果,所述信号源数据在所述终端设备扫描过程中,通过调用与所述信号源的类型对应的监听线程来监听得到;
调用与所述信号源的类型对应的信号源记录器,将所述监听线程监听到的所述信号源数据记录至所述信号源的类型对应的缓存队列;
利用所述信号源记录器将所述缓存队列中存储的所述信号源数据写入所述信号源的类型对应的信号源数据表;
对所述信号源数据表中写入的所述信号源数据进行回放,获取所述定位结果。
2.根据权利要求1所述的信号源处理方法,其中,所述利用所述信号源记录器将所述缓存队列中存储的所述信号源数据写入所述信号源的类型对应的信号源数据表包括:
在调用所述信号源的类型对应的监听线程监听所述信号源数据的过程中,判断所述缓存队列的存储量是否大于预设阈值;
当确定所述缓存队列的存储量大于所述预设阈值时,将所述缓存队列中存储的信号源数据写入所述信号源数据表,并将写入所述信号源数据表的信号源数据从所述缓存队列中删除;
当停止调用所述信号源的类型对应的监听线程监听所述信号源数据时,判断所述缓存队列中是否存在尚未写入所述信号源数据表的剩余信号源数据;
当确定所述缓存队列中存在所述剩余信号源数据时,将所述剩余信号源数据写入所述信号源数据表,并将写入所述信号源数据表的所述剩余信号源数据从所述缓存队列中删除。
3.根据权利要求2所述的信号源处理方法,其中,所述方法还包括:
当确定所述缓存队列中不存在所述剩余信号源数据时,释放所述信号源的类型对应的监听线程和所述缓存队列。
4.根据权利要求1所述的信号源处理方法,其中,所述方法还包括:
获取录制配置信息;
基于所述录制配置信息创建数据库文件;
在所述数据库文件中分别为不同类型的信号源创建对应的信号源数据表;
基于所述录制配置信息对信号源管理器进行初始化,并调用初始化后的信号源管理器分别为所述不同类型的信号源添加对应的信号源记录器;
基于所述录制配置信息对每种类型的信号源对应的监听线程进行初始化。
5.根据权利要求4所述的信号源处理方法,其中,对所述信号源数据表中写入的所述信号源数据进行回放,获取所述定位结果包括:
调用信号源读取线程从所述数据库文件中读取待分发信号源数据;
将所述待分发信号源数据缓存至阻塞队列;
调用信号源队列线程,由所述信号源队列线程按照所述待分发信号源数据写入所述数据库文件时的写入时间先后顺序,从所述阻塞队列获取所述待分发信号源数据,并存储至消息队列;
调用信号源分发线程,由所述信号源分发线程按照所述写入时间的先后顺序从所述消息队列获取所述待分发信号源数据;
确定所述待分发信号源数据是否为回调数据;
当确定所述待分发信号源数据不是回调数据时,调用信号源处理线程对所述待分发信号源数据进行字节序列转化处理以得到处理结果,并将所述处理结果存储至内存;
当确定所述待分发信号源数据是回调数据时,调用所述信号源分发线程将所述待分发信号源数据分发至信号源回调线程,调用所述信号源回调线程在对所述待分发信号源数据进行字节序列转化处理后进行数据回调以获取所述定位结果。
6.根据权利要求1所述的信号源处理方法,其中,所述信号源数据表中写入的所述信号源数据回放至定位软件开发工具包。
7.根据权利要求5所述的信号源处理方法,其中,所述方法还包括:
获取回放配置信息;
基于所述回放配置信息对信号源管理器进行初始化,并通过所述信号源管理器分别为不同类型的信号源添加对应的信号源回放器;
基于所述回放配置信息对每种类型的信号源对应的工作线程进行初始化,其中,所述工作线程包括:所述信号源读取线程、所述信号源队列线程、所述信号源分发线程、所述信号源处理线程、所述信号源回调线程。
8.一种信号源处理装置,其中,包括:
获取模块,用于获取终端设备当前扫描到的信号源产生的信号源数据,其中,所述信号源数据用于预测与当前环境对应的定位结果,所述信号源数据在所述终端设备扫描过程中,通过调用与所述信号源的类型对应的监听线程来监听得到;
录制模块,用于调用与所述信号源的类型对应的信号源记录器,将所述监听线程监听到的所述信号源数据记录至所述信号源的类型对应的缓存队列;利用所述信号源记录器将所述缓存队列中存储的所述信号源数据写入所述信号源的类型对应的信号源数据表;
处理模块,用于对所述信号源数据表中写入的所述信号源数据进行回放,获取所述定位结果。
9.一种非易失性存储介质,其中,所述非易失性存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至7任一项中所述的信号源处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111163531.9A CN114067851B (zh) | 2021-09-30 | 2021-09-30 | 信号源处理方法、装置及非易失性存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111163531.9A CN114067851B (zh) | 2021-09-30 | 2021-09-30 | 信号源处理方法、装置及非易失性存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114067851A CN114067851A (zh) | 2022-02-18 |
CN114067851B true CN114067851B (zh) | 2023-07-21 |
Family
ID=80234057
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111163531.9A Active CN114067851B (zh) | 2021-09-30 | 2021-09-30 | 信号源处理方法、装置及非易失性存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114067851B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6329946B1 (en) * | 2000-05-31 | 2001-12-11 | Mitsubishi Denki Kabushiki Kaisha | GPS position measuring system and GPS position measuring apparatus |
CN109783543A (zh) * | 2019-01-14 | 2019-05-21 | 广州虎牙信息科技有限公司 | 数据查询方法、装置、设备和存储介质 |
CN110377341A (zh) * | 2019-06-10 | 2019-10-25 | 北京字节跳动网络技术有限公司 | 一种监听无响应异常的方法、装置、介质和电子设备 |
CN112218148A (zh) * | 2020-09-11 | 2021-01-12 | 杭州易现先进科技有限公司 | 屏幕录制方法、装置、计算机设备和计算机可读存储介质 |
CN112817866A (zh) * | 2021-02-25 | 2021-05-18 | 北京百家科技集团有限公司 | 录制回放方法、装置、系统、计算机设备以及存储介质 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101810039A (zh) * | 2007-09-26 | 2010-08-18 | 京瓷株式会社 | 便携式终端、基站以及便携式终端的位置确定方法 |
CN103024154B (zh) * | 2012-11-29 | 2014-07-16 | 北京购阿购技术服务有限公司 | 移动智能设备室内定位方法 |
CN103309732A (zh) * | 2013-05-15 | 2013-09-18 | 中国矿业大学(北京) | 防止探地雷达数据采集系统中数据溢出的方法 |
CN105444771A (zh) * | 2014-08-18 | 2016-03-30 | 北京国基科技股份有限公司 | 导航处理方法 |
CN104768224A (zh) * | 2015-04-09 | 2015-07-08 | 浙江嘉兴掌通网络科技有限公司 | 一种基于低功耗蓝牙实现定位和导航系统及其方法 |
CN106028098A (zh) * | 2016-05-26 | 2016-10-12 | 努比亚技术有限公司 | 视频录制方法、装置及终端 |
CN107783164A (zh) * | 2017-09-13 | 2018-03-09 | 深圳先进技术研究院 | 一种终端设备的室内外定位方法及系统 |
CN107786739B (zh) * | 2017-10-18 | 2020-09-18 | 维沃移动通信有限公司 | 一种信息获取方法及移动终端 |
CN110636446A (zh) * | 2019-10-17 | 2019-12-31 | 众虎物联网(广州)有限公司 | 一种基于室内定位的信号录制与回放方法及系统 |
-
2021
- 2021-09-30 CN CN202111163531.9A patent/CN114067851B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6329946B1 (en) * | 2000-05-31 | 2001-12-11 | Mitsubishi Denki Kabushiki Kaisha | GPS position measuring system and GPS position measuring apparatus |
CN109783543A (zh) * | 2019-01-14 | 2019-05-21 | 广州虎牙信息科技有限公司 | 数据查询方法、装置、设备和存储介质 |
CN110377341A (zh) * | 2019-06-10 | 2019-10-25 | 北京字节跳动网络技术有限公司 | 一种监听无响应异常的方法、装置、介质和电子设备 |
CN112218148A (zh) * | 2020-09-11 | 2021-01-12 | 杭州易现先进科技有限公司 | 屏幕录制方法、装置、计算机设备和计算机可读存储介质 |
CN112817866A (zh) * | 2021-02-25 | 2021-05-18 | 北京百家科技集团有限公司 | 录制回放方法、装置、系统、计算机设备以及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114067851A (zh) | 2022-02-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6955092B2 (ja) | 端末の電力消費を低減するための方法、および端末 | |
EP3618563A1 (en) | System, method, and device for exposing wireless module data storage | |
CN104063305A (zh) | 智能终端软件的压力测试方法、装置和系统 | |
CN108924885B (zh) | 信息获取方法及装置 | |
CN107562539B (zh) | 应用程序处理方法和装置、计算机设备、存储介质 | |
JP2016521946A (ja) | ジオフェンスイベントの融合 | |
KR20180013608A (ko) | 전자 장치의 전력 소모 감소를 위한 방법 및 장치 | |
KR20170033121A (ko) | 서비스 처리 방법 및 이를 구현하는 전자 장치 | |
CN107544842A (zh) | 应用程序处理方法和装置、计算机设备、存储介质 | |
CN112218115B (zh) | 流媒体音视频同步的控制方法、装置、计算机设备 | |
CN111176549A (zh) | 基于云存储的数据存储方法、装置和存储介质 | |
AU2017435235B2 (en) | Application management method and terminal | |
CN110619100A (zh) | 用于获取数据的方法和装置 | |
CN112666942A (zh) | 自移动机器人及其路径规划方法、装置、设备和存储介质 | |
CN110781149A (zh) | 管理直播间信息的方法、装置、设备及存储介质 | |
CN114067851B (zh) | 信号源处理方法、装置及非易失性存储介质 | |
KR20170089642A (ko) | 전자 장치의 히스토리 정보 관리 장치 및 방법 | |
CN107688498B (zh) | 应用程序处理方法和装置、计算机设备、存储介质 | |
CN110086880B (zh) | 创建网络请求的实例的方法和装置 | |
KR101584286B1 (ko) | 사용자 위치 기반 스마트 여행 기록 시스템 | |
KR20180127831A (ko) | 전자 장치 및 그의 정보 공유 방법 | |
CN110851430B (zh) | 移动轨迹信息的存储方法、服务器以及计算机存储介质 | |
CN115061743B (zh) | 接口调用方法及装置、计算机可读介质和电子设备 | |
US10397772B2 (en) | Nomination of a primary cell phone from a pool of cell phones | |
KR20180069635A (ko) | 서버, 전자 장치 및 데이터 관리 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |