CN111368014B - 一种运动轨迹的生成方法、终端设备及存储介质 - Google Patents
一种运动轨迹的生成方法、终端设备及存储介质 Download PDFInfo
- Publication number
- CN111368014B CN111368014B CN201911342463.5A CN201911342463A CN111368014B CN 111368014 B CN111368014 B CN 111368014B CN 201911342463 A CN201911342463 A CN 201911342463A CN 111368014 B CN111368014 B CN 111368014B
- Authority
- CN
- China
- Prior art keywords
- point
- track
- current
- terminal equipment
- track point
- 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
- 238000000034 method Methods 0.000 title claims abstract description 84
- 238000003860 storage Methods 0.000 title claims abstract description 13
- 230000002776 aggregation Effects 0.000 claims abstract description 155
- 238000004220 aggregation Methods 0.000 claims abstract description 155
- 238000001914 filtration Methods 0.000 claims abstract description 110
- 230000008859 change Effects 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 description 14
- 230000000694 effects Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000012806 monitoring device Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 210000000707 wrist Anatomy 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/38—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
- G01S19/39—Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system the satellite radio beacon positioning system transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/42—Determining position
Landscapes
- Engineering & Computer Science (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Navigation (AREA)
- Traffic Control Systems (AREA)
Abstract
本申请实施例公开了一种运动轨迹的生成方法、终端设备及存储介质,应用于定位技术领域,以解决现有技术中的某区域无路网信息导致的无法获取运动轨迹的问题。所述方法包括:获取终端设备的当前轨迹点信息;当所述当前轨迹点信息中包括当前轨迹点的第一位置信息时,判断终端设备是否处于室外;当终端设备处于室外时,根据第一位置信息以及聚合点的第二位置信息获取第一距离;当根据第一距离确定满足第一预设过滤条件时,将当前轨迹点进行过滤合并得到过滤合并结果;过滤合并结果用于生成终端设备的运动轨迹。
Description
技术领域
本申请涉及定位技术领域,尤其涉及一种运动轨迹的生成方法、终端设备及存储介质。
背景技术
目前,各地图厂商使用路网信息,将用户设备的GPS(global positioningsystem,全球定位***)经纬度点进行绑路操作,从而优化轨迹展示效果。但是,当某区域无路网信息时,如果用户设备在此区域活动,则导致在该区域无法使用绑路操作,从而无法获取到该区域中的运动轨迹。
发明内容
本申请实施例提供了一种运动轨迹的生成方法、终端设备及存储介质,以解决现有技术中的某区域无路网信息导致的无法获取运动轨迹的问题。
根据本申请实施例的第一方面,提供一种运动轨迹的生成方法,所述方法包括:
获取终端设备的当前轨迹点信息;
当所述当前轨迹点信息中包括当前轨迹点的第一位置信息时,判断所述终端设备是否处于室外;
当所述终端设备处于室外时,根据所述第一位置信息以及聚合点的第二位置信息获取第一距离;
当根据所述第一距离确定满足第一预设过滤条件时,将所述当前轨迹点进行过滤合并得到过滤合并结果;所述过滤合并结果用于生成所述终端设备的运动轨迹。
可选地,所述方法还包括:
根据指定时间段内的多个轨迹点的过滤合并结果,生成所述终端设备的运动轨迹;
或者,
获取所述当前轨迹点的上一轨迹点的历史运动轨迹,并根据历史运动轨迹以及所述当前轨迹点的过滤合并结果,生成所述终端设备的运动轨迹。
可选地,所述方法还包括:
当根据所述第一距离确定不满足第一预设过滤条件时,根据所述第一位置信息以及所述聚合点的第二位置信息,获取当前斜率;
计算当前斜率与历史斜率之间的斜率差值;
当所述斜率差值在预设范围内时,根据所述第一位置信息以及所述聚合点的第二位置信息,获取目标斜率,并根据所述目标斜率获取所述终端设备的运动轨迹;或者,当所述斜率差值在预设范围外时,将所述当前轨迹点作为更新后的聚合点。
可选地,所述方法还包括:
当所述当前轨迹点信息中包括所述当前轨迹点的当前状态变更信息时,若所述当前状态变更消息指示存在室内外切换,则将所述当前轨迹点的当前状态标记为室内外切换状态。
可选地,所述方法还包括:
当所述终端设备处于室内时,对所述当前轨迹点进行室内信息标记;
所述室内信息包括以下至少一项:所述终端设备的当前楼层数、所述终端设备进入室内的门口位置、所述终端设备进入室内的初始运动方向以及所述终端设备在当前楼层的驻留时长。
可选地,所述方法还包括:
获取待检测轨迹点与对应的聚合点之间的第二距离;
当根据所述第二距离确定不满足第二预设过滤条件时,获取聚集容器中存储的轨迹点的总数量;所述聚集容器中存储的轨迹点为满足所述第二预设过滤条件的连续轨迹点;
当所述总数量大于等于预设数值时,将所述聚集容器中存储的轨迹点进行聚类合并得到新的聚类合并结果;
根据所述新的聚类合并结果更新所述终端设备的运动轨迹。
可选地,所述第一预设过滤条件包括:所述第一距离小于等于第一预设阈值;
或者,
所述第一距离与第一时长的比值小于等于第二预设阈值;所述第一时长为所述当前轨迹点的采集时刻与所述聚合点的采集时刻之间的时长。
根据本申请实施例的第二方面,提供一种终端设备,包括:
获取模块,用于获取终端设备的当前轨迹点信息;
处理模块,用于当所述当前轨迹点信息包括当前轨迹点的第一位置信息时,判断所述终端设备是否处于室外;
获取模块,还用于当所述终端设备处于室外时,根据所述第一位置信息以及聚合点的第二位置信息获取第一距离;
处理模块,还用于当根据所述第一距离确定满足第一预设过滤条件时,将所述当前轨迹点进行过滤合并得到过滤合并结果;所述过滤合并结果用于生成所述终端设备的运动轨迹。
可选地,所述处理模块,还用于根据指定时间段内的多个轨迹点的过滤合并结果,生成所述终端设备的运动轨迹;
或者,
获取所述当前轨迹点的上一轨迹点的历史运动轨迹,并根据历史运动轨迹以及所述当前轨迹点的过滤合并结果,生成所述终端设备的运动轨迹。
可选地,所述处理模块,还用于当根据所述第一距离确定不满足第一预设过滤条件时,根据所述第一位置信息以及所述聚合点的第二位置信息,获取当前斜率;以及,
计算当前斜率与历史斜率之间的斜率差值;
所述获取模块,还用于当所述斜率差值在预设范围内时,根据所述第一位置信息以及所述聚合点的第二位置信息,获取目标斜率,并根据所述目标斜率获取所述终端设备的运动轨迹;或者,还用于当所述斜率差值在预设范围外时,将所述当前轨迹点作为更新后的聚合点。
可选地,所述处理模块,还用于当所述当前轨迹点信息中包括所述当前轨迹点的当前状态变更信息时,若所述当前状态变更消息指示存在室内外切换,则将所述当前轨迹点的当前状态标记为室内外切换状态。
可选地,所述处理模块,还用于当所述终端设备处于室内时,对所述当前轨迹点进行室内信息标记;
所述室内信息包括以下至少一项:所述终端设备的当前楼层数、所述终端设备进入室内的门口位置、所述终端设备进入室内的初始运动方向以及所述终端设备在当前楼层的驻留时长。
可选地,所述获取模块,还用于获取待检测轨迹点与对应的聚合点之间的第二距离;以及,
当根据所述第二距离确定不满足第二预设过滤条件时,获取聚集容器中存储的轨迹点的总数量;所述聚集容器中存储的轨迹点为满足所述第二预设过滤条件的连续轨迹点;
所述处理模块,还用于当所述总数量大于等于预设数值时,将所述聚集容器中存储的轨迹点进行聚类合并得到新的聚类合并结果;以及,
根据所述新的聚类合并结果更新所述终端设备的运动轨迹。
可选地,所述第一预设过滤条件包括:所述第一距离小于等于第一预设阈值;
或者,
所述第一距离与第一时长的比值小于等于第二预设阈值;所述第一时长为所述当前轨迹点的采集时刻与所述聚合点的采集时刻之间的时长。
根据本申请实施例的第三方面,提供一种终端设备,所述终端设备包括:
存储有可执行程序代码的存储器;
与所述存储器耦合的处理器;
所述处理器调用所述存储器中存储的所述可执行程序代码,执行上述第一方面所述的运动轨迹的生成方法的步骤。
根据本申请实施例的第四方面,提供一种计算机可读存储介质,所述计算机可读存储介质存储计算机程序,其中,所述计算机程序使得计算机执行上述第一方面所述的运动轨迹的生成方法的步骤。
根据本申请实施例的第五方面,提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行本申请实施例第一方面所述的运动轨迹的生成方法的步骤。
从以上技术方案可以看出,本申请实施例具有以下优点:
通过实施本申请实施例,可以获取终端设备的当前轨迹点信息;当所述当前轨迹点信息中包括当前轨迹点的第一位置信息时,判断所述终端设备是否处于室外;当所述终端设备处于室外时,根据所述第一位置信息以及聚合点的第二位置信息获取第一距离;当根据所述第一距离确定满足第一预设过滤条件时,将所述当前轨迹点进行过滤合并得到过滤合并结果;所述过滤合并结果用于生成所述终端设备的运动轨迹。
这样,可以在确定终端设备处于室外的情况下,基于当前轨迹点和聚合点之间的距离,确定是否将当前轨迹点进行过滤合并,如果需要将当前轨迹点进行过滤合并,则可以根据过滤合并结果生成终端设备的运动轨迹。因此,本申请可以不依赖路网信息进行运动轨迹生成,使得终端设备在无路网信息的区域仍可以获取到运动轨迹。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例和现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,还可以根据这些附图获得其它的附图。
图1为本申请实施例示出的第一种运动轨迹的生成方法的流程示意图;
图2为本申请实施例示出的第二种运动轨迹的生成方法的流程示意图;
图3为本申请实施例示出的第三种运动轨迹的生成方法的流程示意图;
图4为本申请实施例示出的第一种终端设备的结构框图;
图5为本申请实施例示出的第二种终端设备的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,都应当属于本申请保护的范围。
需要说明的是,本申请实施例及附图中的术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、***、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请实施例可以应用于生成运动轨迹的场景。目前,智能手机、运动手环、手表等可以给用户提供很多运动信息,其中运动轨迹就是一个非常重要的信息,它记录了用户在运动模式下(如跑步、开车、骑行以及散步等中的至少一种)的运动轨迹、速度和距离,这些信息可以进行运动后分析和分享。
但是,现有技术中生成运动轨迹的方法存在较多问题。例如,在车载导航场景中,需要强依赖路网信息,比如百度地图的鹰眼功能,从而导致成本较高。又如,如果终端设备需要在某个区域进行绑路操作,且该某个区域的周围存在有路网信息的临近区域,则终端设备在该某个区域静止或者小范围移动时,终端设备在该某个区域的轨迹点会一定概率地绑定至临近区域的路网线路上,导致运动轨迹失真。再如,现有技术中的绑路过程需要大量的GPS经纬度信息,使得地图应用程序需要保存大量数据才能使用绑路功能服务,存储成本高。
为了解决上述问题,本申请可以在确定终端设备处于室外的情况下,基于当前轨迹点和聚合点之间的距离,确定是否将当前轨迹点进行过滤合并,如果需要将当前轨迹点进行过滤合并,则可以根据过滤合并结果生成终端设备的运动轨迹。这样,本申请可以不依赖路网信息进行轨迹生成,使得终端设备在无路网信息的区域仍可以获取到运动轨迹。并且,本申请中需要对轨迹点进行过滤合并,所以降低了生成运动轨迹的过程中使用的轨迹点数量,避免了内存的过度占用。
下面结合实施例对本申请进行详细说明。
实施例一
图1为本申请实施例示出的一种运动轨迹的生成方法的流程示意图,如图1所示,所述方法可以包括以下步骤:
101、终端设备获取终端设备的当前轨迹点信息。
可以理解的是,本申请中的终端设备可以包括手机、平板电脑、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、手持计算机、上网本、个人数字助理(personal digital assistant,PDA)、可穿戴设备(如手表、手腕、眼镜、头盔、头带等)等,本申请实施例对终端设备的具体形式不做特殊限制。
应理解,当前轨迹点信息可以包括当前状态变更信息、当前轨迹点的第一位置信息中的至少一个。当然,当前轨迹点信息还可以包括其他信息,例如当前轨迹点信息还可以包括终端设备的当前状态,该当前状态可以为终端设备处于室内或者室外,上述的当前状态变更消息可以由终端设备的当前状态确定。
其中,第一位置信息可以为GPS经纬度信息。这样,后续步骤中可以根据当前状态获取到室外的轨迹点,并根据第一位置信息对室外的轨迹点进行过滤合并。或者,根据当前状态获取到室内的轨迹点,并根据第一位置信息将室内的轨迹点合并为一个轨迹点。
另外,当前状态变更消息用于表示终端设备是否存在室内外切换,这里的室内外切换可以为终端设备从室内切换至室外,或者,终端设备从室外切换至室内。这样,后续步骤中可以根据当前状态变更消息确定终端设备存在室内外切换的情况下,终端设备可以将当前轨迹点的当前状态标记为室内外切换状态,或者记录当前轨迹点的当前状态。如果根据当前状态变更消息确定终端设备不存在室内外切换的情况下,终端设备可以将当前轨迹点的当前状态标记为未切换状态。可选地,由于未发生室内外切换,所以可以无需记录当前轨迹点的当前状态。
102、当所述当前轨迹点信息中包括当前轨迹点的第一位置信息时,终端设备判断所述终端设备是否处于室外。
在一些实施例中,本申请可以根据步骤101中所述的室内外状态确定终端设备是否处于室外。
在另一些实施例中,可以通过在室内外环境中接收GPS信号强度减弱的性质以及表征来自GPS的信号强度波形的性质等确定终端设备是否处于室外。
例如,可以根据是否接收到GPS信号来进行室内外判断,若接收到GPS信号,则可以确定终端设备处于室外,若未接收到GPS信号,则可以确定终端设备处于室内。
又如,基于来自定位卫星的信号的接收灵敏度以及所捕捉到的卫星的数量及其变化状态来进行室内外判断。
再如,根据来自多个定位卫星的卫星信号的信号强度的平均强度是否在与室内相对应的信号强度范围内和/或在与室外相对应的信号强度范围内来进行室内外判断。
上述判断终端设备处于室内还是室外的方法只是示例性说明,本申请对此不做特殊限制。
需要说明的是,本申请中的过滤合并过程主要是针对室外的轨迹点进行合并。而对于室内,可以将室内的轨迹点合并至一个轨迹点,例如,可以将终端设备临近进入室内之前的任一轨迹点作为该室内的轨迹点;又如,可以将终端设备临近进入室内之前最高定位精度的轨迹点作为该室内的轨迹点,等等。综上,本步骤需要判断终端设备是否处于室外,以便在终端设备处于室外的情况下,执行后续过滤合并的步骤。
103、当所述终端设备处于室外时,终端设备根据所述第一位置信息以及聚合点的第二位置信息获取第一距离。
在本申请实施例中,该聚合点为根据上一轨迹点的位置信息得到的。比如,如果根据上一轨迹点的位置信息以及待确定聚合点的位置信息确定上一轨迹点无需进行过滤合并,则将该上一轨迹点作为该聚合点;如果根据上一轨迹点的位置信息以及待确定聚合点的位置信息确定上一轨迹点需要进行过滤合并,则将待确定聚合点作为该聚合点。
需要说明的是,当采集完成第一个轨迹点后,可以将第一个轨迹点作为该聚合点。
应理解,本申请中涉及的轨迹点均存在对应的轨迹点信息,轨迹点信息可以包括状态变更信息、位置信息以及轨迹点的采集时刻。这样,本申请可以将各个轨迹点按照采集时刻的先后顺序预先进行排序,从而可以根据排序结果获取需要使用的轨迹点。其中,排序结果可以为轨迹点队列,并且轨迹点队列中的轨迹点按照采集时刻的先后顺序依次进行排序。
104、当根据所述第一距离确定满足第一预设过滤条件时,终端设备将所述当前轨迹点进行过滤合并得到过滤合并结果;过滤合并结果用于生成终端设备的运动轨迹。
可以理解的是,该第一预设过滤条件可以包括第一距离小于等于第一预设阈值;
或者,
第一距离与第一时长的比值小于等于第二预设阈值;第一时长为当前轨迹点的采集时刻与聚合点的采集时刻之间的时长。
应理解,通过判断聚合点与当前轨迹点之间的直线距离或者移动速度是否在其对应的预置范围内,从而实现了过滤合并,该过滤合并也可以理解为聚合合并。这样,可以在终端设备处于静止状态或者在小范围移动时,通过一个位置或者少量的位置进行运动轨迹的生成,避免了运动轨迹中显示结果较复杂的问题。
需要说明的是,通过上述过滤合并的过程,可以将无需使用的一些轨迹点进行过滤合并,并保留需要使用的另一些轨迹点。应理解,这里的无需使用的一些轨迹点为:与该另一些轨迹点存在重复的噪点,或者,与该另一些轨迹点之间的距离变化较小的噪点。所以本申请可以避免噪点导致的运动轨迹的显示效果较差的问题。
可选地,在步骤104之后,还可以执行以下步骤:
105、终端设备获取当前轨迹点的上一轨迹点的历史运动轨迹,并根据历史运动轨迹以及所述当前轨迹点的过滤合并结果,生成所述终端设备的运动轨迹。
一种实施例中,终端设备在获取到当前轨迹点之后,可以根据获取到的当前轨迹点生成当前时刻的运动轨迹。
其中,本申请中的终端设备可以按照预设周期采集轨迹点。这样,假设终端设备对上一周期采集到的上一轨迹点进行过滤合并后,得到上一周期之前的历史运动轨迹。并在当前周期采集到当前轨迹点的情况下,如果当前轨迹点与聚合点之间的第一距离满足第一预设过滤条件,则可以认为该当前轨迹点的过滤合并结果为将当前轨迹点合并至聚合点,所以将历史运动轨迹作为当前周期之前的运动轨迹。
或者,
如果当前轨迹点与聚合点之间的第一距离不满足第一预设过滤条件,则可以将当前轨迹点与历史运动轨迹中的聚合点进行连接,得到终端设备当前时刻的运动轨迹。
可选地,步骤105还可以包括:根据指定时间段内的多个轨迹点的过滤合并结果,生成所述终端设备的运动轨迹。
考虑到本申请可以应用于记录运动轨迹的场景,但是,如果对用户实时地进行定位,则会导致需要存储的数据量较大,以及可能存在冗余数据。比如,用户可能并不关心上班路上的轨迹,所以可以无需获取上班路上的位置信息并生成对应的运动轨迹。所以,该指定时间段可以为用户预先设置的时间段。例如,用户经常在下午7点至8点跑步,则可以将下午7点至8点设置为指定时间段,以便生成用户的跑步轨迹。
可选地,本申请可以在终端设备的设置页面中设置有虚拟开关控件。这样,在接收到用户对虚拟开关控件的第一触发操作后,开始采集第一个轨迹点,并将第一个轨迹点作为聚合点。接着采集第二个轨迹点,并当根据第二个轨迹点和第一个轨迹点之间的距离确定满足第一预设过滤条件时,将第二个轨迹点进行过滤合并,即可以将第二个轨迹点合并至第一个轨迹点,也可以认为,第二个轨迹点忽略不计。然后获取第三个轨迹点,并当根据第三个轨迹点和第一个轨迹点之间的距离确定满足第一预设过滤条件时,继续将第三个轨迹点合并至第一个轨迹点;或者,当根据第三个轨迹点和第一个轨迹点之间的距离确定不满足第一预设过滤条件时,可以将第三个轨迹点作为更新后的聚合点,并根据更新后的聚合点重新执行上述过滤合并的过程。依次类推,可以对之后采集到的每个轨迹点依次执行本申请实施例中步骤101至步骤104的过程。
这样,一种实施例中,在接收到用户对虚拟开关控件的第二触发操作后,结束采集轨迹点,并根据各个轨迹点的过滤合并结果生成终端设备的运动轨迹。
可以理解的是,上述的第一触发操作和第二触发操作分别为不同的操作。示例性的,如果该虚拟开关控件为滑动按钮,则该第一触发操作可以为向第一方向的滑动操作,该第二触发操作可以为第二方向的滑动操作。如果该虚拟开关控件为重力按压按钮,则该第一触发操作可以为第一压力范围的点击操作,该第二触发操作可以为第二压力范围的点击操作。
应理解,上述的第一触发操作和第二触发操作可以为相同的操作。示例性的,如果该虚拟开关按钮为点击按钮,则该第一触发操作和第二触发操作可以都为按压操作。其中,终端设备开机后,该虚拟开关按钮的初始状态可以为关闭状态,在用户第i次按压该点击按钮时,则确定第i次的按压操作为第一触发操作,在用户第i+1次按压该点击按钮时,则确定第i+1次的按压操作为第二触发操作,i为正整数且可以为基数。上述示例只是示例性说明,本申请对此不做特殊限制。
综上,由于用户需要查看该指定时间段内最终的运动轨迹,所以本申请可以在指定时间段内获取到每个轨迹点时,根据步骤101至步骤104的过程判断是否需要对该每个轨迹点进行过滤合并。这样,该多个轨迹点可以为需要进行过滤合并的轨迹点,此时,本申请可以将多个轨迹点分别合并至对应的历史聚合点,从而可以根据指定时间段内的历史聚合点获取运动轨迹。
示例性的,如果多个轨迹点包括最后一个轨迹点,则可以将指定时间段内的历史聚合点依次进行连接得到运动轨迹;如果多个轨迹点不包括最后一个轨迹点,则可以将指定时间段内的历史聚合点以及最后一个轨迹点依次进行连接得到运动轨迹。
当然,多个轨迹点还可以为指定时间段内除最后一个轨迹点以外的其他轨迹点,这样,可以根据多个轨迹点的过滤合并结果生成待连接运动轨迹,并将待连接运动轨迹与最后一个轨迹点进行连接生成运动轨迹。
通过实施本申请实施例,可以在确定终端设备处于室外的情况下,基于当前轨迹点和聚合点之间的距离,确定是否将当前轨迹点进行过滤合并,如果需要将当前轨迹点进行过滤合并,则可以根据过滤合并结果生成终端设备的运动轨迹。这样,本申请可以不依赖路网信息进行轨迹生成,使得终端设备在无路网信息的区域仍可以获取到运动轨迹。
实施例二
图2为本申请实施例示出的一种运动轨迹的生成方法的流程示意图,如图2所示,所述方法可以包括以下步骤:
201、终端设备获取终端设备的当前轨迹点信息。
详细内容可以参考步骤101,此处不再赘述。
202、终端设备判断当前轨迹点信息中是否包括当前轨迹点的第一位置信息。
如果当前轨迹点信息中包括当前轨迹点的第一位置信息,执行步骤203;
如果当前轨迹点信息中包括当前轨迹点的当前状态变更信息,执行步骤213。
203、终端设备判断所述终端设备是否处于室外。
详细内容可以参考步骤102,此处不再赘述。
如果终端设备处于室外,执行步骤204和步骤205;
如果终端设备处于室内,执行步骤206和步骤207。
204、终端设备根据所述第一位置信息以及聚合点的第二位置信息获取第一距离。
应理解,本申请中的第一距离可以为欧式距离、曼哈顿距离、切比雪夫距离、闵可夫斯基距离或者马氏距离等等,本申请对此不做特殊限制。
聚合点的获取过程可以参考步骤103,此处不再赘述。
205、终端设备根据第一距离判断是否满足第一预设过滤条件。
可以理解的是,该第一预设过滤条件可以包括第一距离小于等于第一预设阈值;
或者,
第一距离与第一时长的比值小于等于第二预设阈值;第一时长为当前轨迹点的采集时刻与聚合点的采集时刻之间的时长。
应理解,通过判断聚合点与其他轨迹点之间的直线距离或者移动速度是否在其对应的预置范围内,从而实现了过滤合并,过滤合并也可以理解为聚合合并。这样,终端设备在某区域中处于静止状态或者在小范围移动时,在保证轨迹真实的情况下,可以将聚合点和其他轨迹点合并至一个轨迹点(比如该一个轨迹点为聚合点)或者少量的几个轨迹点,从而保证了生成的运动轨迹更加清晰,避免了运动轨迹中显示结果较复杂的问题。另外,若终端设备在该某个区域的周围存在有路网信息的临近区域,通过本申请中的方法,可以避免终端设备在该某个区域的轨迹点大概率地绑定至临近区域的路网线路上导致的运动轨迹失真的问题。
如果根据第一距离确定满足第一预设过滤条件,执行步骤206;
如果根据第一距离确定不满足第一预设过滤条件,执行步骤208至步骤210。
206、终端设备将所述当前轨迹点进行过滤合并得到过滤合并结果。
可以理解的是,这里的过滤合并可以理解为:将当前轨迹点合并至聚合点,也可以认为,当前轨迹点忽略不计。
这里的过滤合并还可以理解为:将当前轨迹点的当前状态合并至聚合点的状态,也可以认为,当前状态忽略不计。这里的当前状态可以为终端设备处于室内或者室外。
可选地,在步骤206之后,还可以执行步骤207。
207、终端设备根据所述过滤合并结果生成所述终端设备的运动轨迹。
具体内容可以参考步骤105,此处不再赘述。
可以理解的是,通过上述过程,可以将无需使用的一些轨迹点进行过滤合并,并保留需要使用的另一些轨迹点。应理解,这里的无需使用的一些轨迹点为:与该另一些轨迹点存在重复的噪点,或者,与该另一些轨迹点之间的距离变化较小的噪点。所以本申请可以避免存在噪点导致运动轨迹的显示效果降低的问题。
208、终端设备根据所述第一位置信息以及聚合点的第二位置信息,获取当前斜率。
可以理解的是,这里的第一位置信息和第二位置信息相当于两个坐标点,这样,通过两个坐标点可以得到当前轨迹点和聚合点之间直线的斜率。
应理解,当前斜率的获取过程是一个简单的数据公式算法,因为本申请计算的是相对接近的两个位置,所以可将地球表面比拟成一个由X轴和Y轴构成的平面,经纬度分别对应X值和Y值。这样,由于两个位置距离较近,使得以平面为参考进行计算,误差可忽略不计。
209、终端设备计算当前斜率与历史斜率之间的斜率差值。
可以理解的是,后续步骤中可以将接近于一条直线上的点归并至这条直线上。另外,计算两个位置之间直线的斜率,并通过计算得到的斜率与存储的历史斜率获取斜率差值,从而通过斜率差值判断不同直线间的短距离方向是否相对一致。这里,设置为短距离的原因为:当不同斜率的两条直线无限延伸时,角度的差值范围效果会越来越明显,所以当两个位置之间的距离不同时,斜率差值的范围也会随之变动。综上,距离越大,斜率差值越小。
在本申请实施例中,该历史斜率可以根据聚合点的第二位置信息以及聚合点对应的下一轨迹点的位置信息得到。
当然,本申请中还可以采用其他方式确定该历史斜率,例如,若该当前轨迹点为第三个轨迹点,则该历史斜率为根据聚合点的第二位置信息以及第二个轨迹点的位置信息得到;若该当前轨迹点为第三个轨迹点之后的其他轨迹点,则该历史斜率为根据聚合点的第二位置信息以及第三个轨迹点的位置信息得到。其中,本申请可以将各个轨迹点按照采集时刻的先后顺序预先进行排序,从而可以根据排序结果获取到需要使用的轨迹点。上述示例只是示例性说明,本申请对此不做特殊限制。
210、终端设备判断斜率差值是否在预设范围内。
如果斜率差值在预设范围内,则执行步骤211;
如果斜率差值在预设范围外,则执行步骤212。
211、终端设备根据所述第一位置信息以及所述聚合点的第二位置信息,获取目标斜率,并根据所述目标斜率获取所述终端设备的运动轨迹。
可以理解的是,当终端设备进行直线运动时,使用斜率算法合并可有效减少GPS定位偏差导致展示的轨迹线多锯齿现象,比如生成的运动轨迹类似高频率的心电图一般。而本申请通过斜率算法合并使得运动轨迹线显示更加平滑,以及趋于一条直线,并且,无论终端设备当前所处区域的附近是否包含道路信息,均可以使用本申请中的运动轨迹生成方法以优化运动轨迹的展示效果。
一种实施例中,所述根据所述目标斜率获取所述终端设备的运动轨迹可以包括:根据聚合点的第二位置信息、当前轨迹点的第一位置信息以及目标斜率生成聚合点与当前轨迹点之间的运动轨迹。
另一种实施例中,所述根据所述目标斜率获取所述终端设备的运动轨迹可以包括:获取聚合点之前的待合并历史运动轨迹,并根据聚合点的第二位置信息、当前轨迹点的第一位置信息以及目标斜率生成当前运动轨迹,并将待合并历史运动轨迹与当前运动轨迹进行合并得到终端设备的运动轨迹。
需要说明的是,上述两种实施例中,根据聚合点的第二位置信息、当前轨迹点的第一位置信息以及目标斜率生成聚合点与当前轨迹点之间的运动轨迹可以为:将聚合点作为运动轨迹的起始点,将当前轨迹点作为运动轨迹的终点,以及将目标斜率作为运动轨迹的斜率。
或者,
将聚合点作为运动轨迹的起始点,将聚合点的下一轨迹点作为运动轨迹上的一个点,并且聚合点和聚合点的下一轨迹点之间的斜率为该历史斜率,将当前轨迹点作为运动轨迹的终点,以及聚合点的下一轨迹点以及当前轨迹点之间的斜率为目标斜率。
可选地,为了提高运动轨迹的展示效果,可以将该运动轨迹的线条的粗度设置为大于等于预设粗度值的数值,使得生成的运动轨迹中不存在锯齿形状。上述示例只是示例性说明,本申请对此不做特殊限制。
212、终端设备将所述当前轨迹点作为更新后的聚合点。
这样,由于该当前轨迹点与聚合点距离较远,以及当前轨迹点不在历史斜率对应的直线上,所以无法将该当前轨迹点进行过滤合并。这样,本申请需要从当前轨迹点开始重新执行上述所述201至步骤210的过程。
在一些实施例中,终端设备可以根据聚合点、特定轨迹点以及当前轨迹点,生成终端设备在聚合点以及当前轨迹点之间的运动轨迹。比如,可以将聚合点与特定轨迹点进行连接,以及将特定轨迹点与当前轨迹点进行连接,以便得到该运动轨迹。
在另一些实施例中,终端设备可以根据聚合点、聚合点的下一轨迹点、特定轨迹点以及当前轨迹点,生成终端设备在聚合点以及当前轨迹点之间的运动轨迹。比如,可以将聚合点与聚合点的下一轨迹点进行连接,将聚合点的下一轨迹点与特定轨迹点进行连接,以及将特定轨迹点与当前轨迹点进行连接,以便得到该运动轨迹。
其中,这里的特定轨迹点可以为当前轨迹点之前未过滤合并至聚合点的轨迹点,以及特定轨迹点与聚合点对应的斜率与历史斜率之间的斜率差值在预设范围内,且特定轨迹点为与当前轨迹点距离最近的轨迹点。
另外,本申请是以轨迹点过滤合并的方式作为优化运动轨迹展示的主要手段,所以无需使用地图应用程序(如百度地图、高德地图等),从而在展示运动轨迹时无需保留地图应用程序上传的所有GPS经纬度数据,而可以保留经过合并过滤得到的轨迹点,从而可以节省大量的存储空间。
213、终端设备判断当前状态变更消息是否指示存在室内外切换。
如果当前状态变更消息指示存在室内外切换,则执行步骤214至步骤216;
如果当前状态变更消息指示不存在室内外切换,则执行步骤206。
214、终端设备将当前轨迹点的当前状态标记为室内外切换状态。
可选地,本步骤还可以为:根据当前状态变更消息记录当前轨迹点的当前状态。
215、当室内外切换包括室外向室内切换时,终端设备获取室内的轨迹点,并将室内的轨迹点合并为目标轨迹点。
应理解,这里可以将室内的轨迹点合并为一个轨迹点。
另外,本申请考虑到用户处于室内时,通常会关注用户在室内的室内信息。所以本申请还可以对当前轨迹点进行室内信息标记。
其中,室内信息可以包括以下至少一项:终端设备的当前楼层数、终端设备进入室内的门口位置、终端设备进入室内的初始运动方向以及终端设备在当前楼层的驻留时长。
示例性的,门口位置可以根据终端设备临近进入室内之前的若干个位置信息确定。例如,可以从若干个位置信息中获取定位精度最高的位置信息得到该门口位置。
示例性的,终端设备进入室内的初始运动方向可以根据终端设备临近进入室内之前的若干个位置信息确定。例如,可以根据该若干个位置信息确定终端设备临近进入室内的外部运动方向,并将该外部运动方向作为该初始运动方向。
示例性的,该当前楼层数的确定方法可以为多种方法。例如,可以获取初始楼层,以及获取当前所在楼层的气压值与初始楼层的气压值之间的气压差值,从而通过气压差值以及初始楼层确定该当前楼层数。又如,室内的不同楼层的WiFi(Wireless-Fidelity,无线保真)不同,所以可以通过终端设备连接的当前WiFi确定终端设备的当前楼层数,等等。
示例性的,在检测到终端设备进入到一个楼层后,开始计时,并在检测到终端设备离开该楼层时,停止计时得到该楼层的驻留时长。上述示例只是示例性说明,本申请对此不做特殊限制。
216、终端设备根据目标轨迹点生成所述终端设备的运动轨迹。
可以理解的是,终端设备可以获取本次出行的历史轨迹点,这样可以根据历史轨迹点以及目标轨迹点生成本次出行的运动轨迹。当然,本申请还可以获取终端设备在指定时间段的历史轨迹点,这样可以根据历史轨迹点生成指定时间段的运动轨迹。上述所述的历史轨迹点可以为通过本申请中的方法进行过滤合并后得到的轨迹点。具体过程可以参考步骤105,此处不再赘述。
通过实施本申请实施例,可以在确定终端设备处于室外的情况下,基于当前轨迹点和聚合点之间的距离,确定是否将当前轨迹点进行过滤合并,如果需要将当前轨迹点进行过滤合并,则可以根据过滤合并结果生成终端设备的运动轨迹。如果无需将当前轨迹点进行过滤合并,则需要进一步地根据斜率差值进行斜率合并。这样,可以根据过滤合并得到的轨迹点或者合并得到的斜率得到运动轨迹,使得运动轨迹的展示效果清晰明了,避免了终端设备处于静止或者小范围移动时导致的运动轨迹显示复杂,以及终端终端设备处于直线运动时导致的运动轨迹显示成锯齿状的问题。
另外,本申请可以不依赖路网信息进行轨迹生成,使得终端设备在无路网信息的区域仍可以获取到运动轨迹。
此外,在确定终端设备处于室内的情况下,可以将室内的轨迹点作为一个轨迹点,避免室内的轨迹点中存在噪点数据导致的运动轨迹显示效果较差的问题。
实施例三
图3所示的实施例可以应用于图1或者图2所示实施例中,可选地,可以在终端设备生成运动轨迹之后(例如步骤105之后或者步骤207之后),执行图3所示的实施例;或者,可以在终端设备将当前轨迹点进行过滤合并之后(例如步骤104之后或者步骤206之后),执行图3所示的实施例。当然,图3所示的实施例也可以为单独的一个实施例,本申请对此不做特殊限制。
如图3所示,所述方法可以包括以下步骤:
301、终端设备获取待检测轨迹点与对应的聚合点之间的第二距离。
可以理解的是,图1或者图2涉及的过滤合并结果中可以包括消除噪点数据的轨迹点,所以本申请可以从过滤合并结果中获取待检测轨迹点,以便进行进一步地过滤合并。其中,过滤合并结果中的轨迹点可以按照采集时刻进行排序,并且滤合并结果中的轨迹点存在对应的聚合点,因此,本步骤需要根据排序结果获取待检测轨迹点,并获取待检测轨迹点与对应的聚合点之间的第二距离。比如,可以从排序结果中的第二个轨迹点开始执行本申请实施例中的步骤301和步骤302。
当然,本申请中的待检测轨迹点也可以为在图1或者图2涉及的生成运动轨迹之后,获取到的新的轨迹点。或者,该待检测轨迹点为图1或图2中的当前轨迹点。本申请对此不做特殊限制。
302、终端设备根据所述第二距离确定是否满足第二预设过滤条件。
可以理解的是,该第二预设过滤条件可以包括第二距离小于等于第三预设阈值;第三预设阈值大于第一预设阈值;
或者,
第二距离与第二时长的比值小于等于第四预设阈值;第二时长为待检测轨迹点的采集时刻与聚合点的采集时刻之间的时长;第四预设阈值大于第二预设阈值。
如果根据第二距离确定满足第二预设过滤条件,则执行步骤303和步骤304;
如果根据第二距离确定不满足第二预设过滤条件,则执行步骤306和步骤307。
303、终端设备将待检测轨迹点存储至聚集容器。
应理解,该聚集容器用于存储满足第二预设过滤条件的连续轨迹点。其中,连续轨迹点表示采集时刻为相邻时刻的轨迹点。比如,按照预设周期采集轨迹点,则在当前周期采集到的轨迹点与上一周期采集到的轨迹点为连续两个轨迹点,当前周期采集到的轨迹点与下一周期采集到的轨迹点为连续两个轨迹点,所以可以认为上一周期采集到的轨迹点、当前周期采集到的轨迹点以及下一周期采集到的轨迹点为连续轨迹点。上述示例只是示例性说明,本申请对此不做特殊限制。
304、终端设备判断待检测轨迹点是否为最后一个轨迹点。
其中,该最后一个轨迹点可以为过滤合并结果中的轨迹点。
如果待检测轨迹点为最后一个轨迹点,则执行步骤305;
如果待检测轨迹点不为最后一个轨迹点,则将待检测轨迹点的下一个轨迹点更新为待检测轨迹点,并返回步骤301。
305、终端设备根据历史轨迹点的过滤合并结果以及待检测轨迹点更新终端设备的运动轨迹。
其中,该历史轨迹点可以为待检测轨迹点之前的轨迹点,以及不包括聚集容器中存储的轨迹点。
一种实施例中,如果聚集容器中存储的轨迹点的总数量大于等于预设数值,则可以确定聚集容器中存储的轨迹点与对应的聚合点在同一区域,例如,可能处于某个室内。
所以一种方式为:可以将聚集容器中存储的轨迹点与对应的聚合点进行合并,比如将该聚集容器中存储的轨迹点与对应的聚合点合并为该聚合点。这样,根据历史轨迹点的过滤合并结果更新终端设备的运动轨迹。
或者,
另一种方式为:将聚集容器中存储的除待检测轨迹点以外的其他轨迹点与对应的聚合点进行合并,比如,将聚集容器中存储的除待检测轨迹点以外的其他轨迹点与对应的聚合点合并为该聚合点,所以该其他轨迹点可以无需用于更新运动轨迹,此时根据历史轨迹点的过滤合并结果以及待检测轨迹点更新终端设备的运动轨迹。进一步地,可以根据历史轨迹点的过滤合并结果生成待合并运动轨迹,并将待检测轨迹点与待合并运动轨迹进行合并得到更新后的运动轨迹。
可选地,如果聚集容器中存储的轨迹点的总数量小于预设数值,则可以根据聚集容器中存储的轨迹点以及历史轨迹点的过滤合并结果更新运动轨迹。
另一种实施例中,可以根据历史轨迹点的过滤合并结果生成待合并运动轨迹,并将聚集容器中存储的轨迹点与待合并运动轨迹进行合并得到更新后的运动轨迹。
具体过程可以参考步骤105,此处不再赘述。
306、终端设备获取聚集容器中存储的轨迹点数量;所述聚集容器中存储的轨迹点为满足所述第二预设过滤条件的连续轨迹点。
307、终端设备判断所述聚集容器中存储的轨迹点的总数量是否大于等于预设数值。
示例性的,本申请实施例中的预设数值可以设置为3,当然,还可以是其他数值,本申请对此不做特殊限制。这样,通过设置该预设数值,使得多个连续的轨迹点与对应的聚合点均存在距离较小或者速度变化较小时,确定多个连续的轨迹点与对应的聚合点存在移动范围较小,所以可以对该多个连续的轨迹点与其对应的聚合点进行聚合,提高了聚合的准确率。
如果聚集容器中存储的轨迹点的总数量大于等于预设数值,执行步骤308;
如果聚集容器中存储的轨迹点的总数量小于预设数值,如果待检测轨迹点存在对应的下一个轨迹点,则将待检测轨迹点的下一个轨迹点更新为待检测轨迹点,并返回步骤301。
308、终端设备将聚集容器中存储的轨迹点进行聚类合并得到新的聚类合并结果。
需要说明的是,由于聚集容器中存储的轨迹点可以进行聚类合并,所以新的聚类合并结果可能表示为同一区域,比如某个室内,所以本申请可以确定终端设备在该同一区域的总驻留时长。
309、终端设备根据所述新的聚类合并结果更新所述终端设备的运动轨迹。
步骤308和步骤309的具体内容可以参考步骤305,此处不再赘述。
通过实施本申请实施例,可以在确定终端设备处于室外的情况下,可以进行两次过滤合并的过程,从而可以进一步地使得运动轨迹的展示效果清晰明了,避免了终端设备处于静止或者小范围移动时导致的运动轨迹显示复杂,以及避免过度地过滤合并导致的运动轨迹失真的问题。
可选地,在通过上述图1至图3任一所述的方法获取到终端设备的运动轨迹之后,终端设备可以将运动轨迹发送至监控设备,以便监控设备可以实时对终端设备的用户进行监控。从而实现了监控需要关注的用户的运动轨迹。
可选地,在通过上述图1至图3任一所述的方法获取到终端设备的运动轨迹之后,终端设备可以判断运动轨迹是否为预设的安全区域范围,并在确定运动轨迹不为预设的安全区域范围内,可以将运动轨迹发送至监控设备。比如,该安全区域范围为学生的上学路线,这样,如果学生本次出行的运动轨迹不为上学路线,则向家长发送本次出行的运动轨迹。从而实现了安全监控。
可选地,在通过上述图1至图3任一所述的方法获取到终端设备的运动轨迹之后,如果用户在某个时间段经过该运动轨迹的概率较高,则可以获取该运动轨迹上的各个商家的店铺信息(如店铺经营范围等)。这样,可以根据终端设备中安装的应用程序的历史交易信息获取用户关注的目标物品,从而可以根据目标物品匹配运动轨迹上的目标商家,并向用户推荐该目标商家。从而实现了根据用户需求推荐有效信息。
比如,用户在“XX应用程序”中经常订购饺子,则若该运动轨迹上的某个商家经营饺子,则可以将该某个商家向用户推荐。
实施例四
图4为本申请实施例示出的一种终端设备40的结构框图,如图4所示,所述终端设备40包括:
获取模块401,用于获取终端设备的当前轨迹点信息;
处理模块402,用于当所述当前轨迹点信息包括当前轨迹点的第一位置信息时,判断所述终端设备是否处于室外;
获取模块401,还用于当所述终端设备处于室外时,根据所述第一位置信息以及聚合点的第二位置信息获取第一距离;
处理模块402,还用于当根据所述第一距离确定满足第一预设过滤条件时,将所述当前轨迹点进行过滤合并得到过滤合并结果;所述过滤合并结果用于生成所述终端设备的运动轨迹。
所述处理模块402,还用于根据指定时间段内的多个轨迹点的过滤合并结果,生成所述终端设备的运动轨迹;
或者,
获取所述当前轨迹点的上一轨迹点的历史运动轨迹,并根据历史运动轨迹以及所述当前轨迹点的过滤合并结果,生成所述终端设备的运动轨迹。
可选地,所述处理模块402,还用于当根据所述第一距离确定不满足第一预设过滤条件时,根据所述第一位置信息以及所述聚合点的第二位置信息,获取当前斜率;以及,
计算当前斜率与历史斜率之间的斜率差值;
所述获取模块401,还用于当所述斜率差值在预设范围内时,根据所述第一位置信息以及所述聚合点的第二位置信息,获取目标斜率,并根据所述目标斜率获取所述终端设备的运动轨迹;或者,还用于当所述斜率差值在预设范围外时,将所述当前轨迹点作为更新后的聚合点。
可选地,所述处理模块402,还用于当所述当前轨迹点信息中包括所述当前轨迹点的当前状态变更信息时,若所述当前状态变更消息指示存在室内外切换,则将所述当前轨迹点的当前状态标记为室内外切换状态。
可选地,所述处理模块402,还用于当所述终端设备处于室内时,对所述当前轨迹点进行室内信息标记;
所述室内信息包括以下至少一项:所述终端设备的当前楼层数、所述终端设备进入室内的门口位置、所述终端设备进入室内的初始运动方向以及所述终端设备在当前楼层的驻留时长。
可选地,所述获取模块401,还用于获取待检测轨迹点与对应的聚合点之间的第二距离;以及,
当根据所述第二距离确定不满足第二预设过滤条件时,获取聚集容器中存储的轨迹点的总数量;所述聚集容器中存储的轨迹点为满足所述第二预设过滤条件的连续轨迹点;
所述处理模块402,还用于当所述总数量大于等于预设数值时,将所述聚集容器中存储的轨迹点进行聚类合并得到新的聚类合并结果;以及,
根据所述新的聚类合并结果更新所述终端设备的运动轨迹。
可选地,所述第一预设过滤条件包括:所述第一距离小于等于第一预设阈值;
或者,
所述第一距离与第一时长的比值小于等于第二预设阈值;所述第一时长为所述当前轨迹点的采集时刻与所述聚合点的采集时刻之间的时长。
通过实施本申请实施例,可以在确定终端设备处于室外的情况下,基于当前轨迹点和聚合点之间的距离,确定是否将当前轨迹点进行过滤合并,如果需要将当前轨迹点进行过滤合并,则可以根据过滤合并结果生成终端设备的运动轨迹。这样,本申请可以不依赖路网信息进行轨迹生成,使得终端设备在无路网信息的区域仍可以获取到运动轨迹。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
请参阅图5,图5是本申请实施例公开的一种终端设备的结构框图。如图5所示,该终端设备可以包括:
存储有可执行程序代码的存储器501;
与存储器501耦合的处理器502;
其中,处理器502调用存储器501中存储的可执行程序代码,执行以上各方法实施例中的方法的部分或全部步骤。
本申请实施例还公开一种计算机可读存储介质,其中,计算机可读存储介质存储了程序代码,其中,程序代码包括用于执行以上各方法实施例中的方法的部分或全部步骤的指令。
本申请实施例还公开一种计算机程序产品,其中,当计算机程序产品在计算机上运行时,使得计算机执行如以上各方法实施例中的方法的部分或全部步骤。
本申请实施例还公开一种应用发布平台,其中,应用发布平台用于发布计算机程序产品,其中,当计算机程序产品在计算机上运行时,使得计算机执行如以上各方法实施例中的方法的部分或全部步骤。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
以上对本申请实施例公开的一种运动轨迹的生成方法、终端设备及存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种运动轨迹的生成方法,其特征在于,包括:
获取终端设备的当前轨迹点信息;
当所述当前轨迹点信息中包括当前轨迹点的第一位置信息时,判断所述终端设备是否处于室外;
当所述终端设备处于室外时,根据所述第一位置信息以及聚合点的第二位置信息获取第一距离;所述聚合点在根据上一轨迹点的位置信息以及待确定聚合点的位置信息确定所述上一轨迹点无需进行过滤合并的情况下,为所述上一轨迹点;所述聚合点在根据所述上一轨迹点的位置信息以及所述待确定聚合点的位置信息确定所述上一轨迹点需要进行过滤合并的情况下,为所述待确定聚合点;
当根据所述第一距离确定满足第一预设过滤条件时,将所述当前轨迹点合并至所述聚合点,或者,将所述当前轨迹点的当前状态合并至所述聚合点的状态,得到过滤合并结果;所述过滤合并结果用于生成所述终端设备的运动轨迹。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据指定时间段内的多个轨迹点的过滤合并结果,生成所述终端设备的运动轨迹;
或者,
获取所述当前轨迹点的上一轨迹点的历史运动轨迹,并根据历史运动轨迹以及所述当前轨迹点的过滤合并结果,生成所述终端设备的运动轨迹。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当根据所述第一距离确定不满足第一预设过滤条件时,根据所述第一位置信息以及所述聚合点的第二位置信息,获取当前斜率;
计算当前斜率与历史斜率之间的斜率差值;
当所述斜率差值在预设范围内时,根据所述第一位置信息以及所述聚合点的第二位置信息,获取目标斜率,并根据所述目标斜率获取所述终端设备的运动轨迹;或者,当所述斜率差值在预设范围外时,将所述当前轨迹点作为更新后的聚合点。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述当前轨迹点信息中包括所述当前轨迹点的当前状态变更信息时,若所述当前状态变更消息指示存在室内外切换,则将所述当前轨迹点的当前状态标记为室内外切换状态。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
当所述终端设备处于室内时,对所述当前轨迹点进行室内信息标记;
所述室内信息包括以下至少一项:所述终端设备的当前楼层数、所述终端设备进入室内的门口位置、所述终端设备进入室内的初始运动方向以及所述终端设备在当前楼层的驻留时长。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取待检测轨迹点与对应的聚合点之间的第二距离;
当根据所述第二距离确定不满足第二预设过滤条件时,获取聚集容器中存储的轨迹点的总数量;所述聚集容器中存储的轨迹点为满足所述第二预设过滤条件的连续轨迹点;
当所述总数量大于等于预设数值时,将所述聚集容器中存储的轨迹点进行聚类合并得到新的聚类合并结果;
根据所述新的聚类合并结果更新所述终端设备的运动轨迹。
7.根据权利要求1所述的方法,其特征在于,所述第一预设过滤条件包括:所述第一距离小于等于第一预设阈值;
或者,
所述第一距离与第一时长的比值小于等于第二预设阈值;所述第一时长为所述当前轨迹点的采集时刻与所述聚合点的采集时刻之间的时长。
8.一种终端设备,其特征在于,包括:
获取模块,用于获取终端设备的当前轨迹点信息;
处理模块,用于当所述当前轨迹点信息包括当前轨迹点的第一位置信息时,判断所述终端设备是否处于室外;
获取模块,还用于当所述终端设备处于室外时,根据所述第一位置信息以及聚合点的第二位置信息获取第一距离;所述聚合点在根据上一轨迹点的位置信息以及待确定聚合点的位置信息确定所述上一轨迹点无需进行过滤合并的情况下,为所述上一轨迹点;所述聚合点在根据所述上一轨迹点的位置信息以及所述待确定聚合点的位置信息确定所述上一轨迹点需要进行过滤合并的情况下,为所述待确定聚合点;
处理模块,还用于当根据所述第一距离确定满足第一预设过滤条件时,将所述当前轨迹点合并至所述聚合点,或者,将所述当前轨迹点的当前状态合并至所述聚合点的状态,得到过滤合并结果;所述过滤合并结果用于生成所述终端设备的运动轨迹。
9.一种终端设备,其特征在于,所述终端设备包括:
存储有可执行程序代码的存储器;
与所述存储器耦合的处理器;
所述处理器调用所述存储器中存储的所述可执行程序代码,执行权利要求1至7任一项所述的运动轨迹的生成方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储计算机程序,其中,所述计算机程序使得计算机执行权利要求1至7任一项所述的运动轨迹的生成方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911342463.5A CN111368014B (zh) | 2019-12-23 | 2019-12-23 | 一种运动轨迹的生成方法、终端设备及存储介质 |
PCT/CN2020/138428 WO2021129630A1 (zh) | 2019-12-23 | 2020-12-22 | 一种运动轨迹的生成方法、终端设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911342463.5A CN111368014B (zh) | 2019-12-23 | 2019-12-23 | 一种运动轨迹的生成方法、终端设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111368014A CN111368014A (zh) | 2020-07-03 |
CN111368014B true CN111368014B (zh) | 2024-04-19 |
Family
ID=71206301
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911342463.5A Active CN111368014B (zh) | 2019-12-23 | 2019-12-23 | 一种运动轨迹的生成方法、终端设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111368014B (zh) |
WO (1) | WO2021129630A1 (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111368014B (zh) * | 2019-12-23 | 2024-04-19 | 广东小天才科技有限公司 | 一种运动轨迹的生成方法、终端设备及存储介质 |
CN114095853B (zh) * | 2020-07-30 | 2023-04-14 | 华为技术有限公司 | 一种生成室内地图的方法和装置 |
CN114363460B (zh) * | 2020-09-30 | 2023-02-03 | 华为技术有限公司 | 运动轨迹的显示方法、电子设备及可读存储介质 |
CN112346095A (zh) * | 2020-10-29 | 2021-02-09 | 广东小天才科技有限公司 | 判断用户处于快速移动状态的方法及装置、智能穿戴设备 |
CN114449451A (zh) * | 2020-11-06 | 2022-05-06 | 中国联合网络通信集团有限公司 | 终端的运动轨迹的确定方法及装置 |
CN114646313A (zh) * | 2020-12-17 | 2022-06-21 | 中兴通讯股份有限公司 | 一种用户轨迹定位方法、电子设备及计算机存储介质 |
CN112434809B (zh) * | 2021-01-26 | 2021-04-06 | 成都点泽智能科技有限公司 | 基于主动学习的模型训练方法、装置及服务器 |
CN113395652B (zh) * | 2021-06-04 | 2022-09-23 | 青岛海信移动通信技术股份有限公司 | 一种室内定位的方法、装置及存储介质 |
CN114298225A (zh) * | 2021-12-29 | 2022-04-08 | 上海商汤临港智能科技有限公司 | 轨迹点筛选及轨迹生成方法、装置、电子设备、存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104075725A (zh) * | 2014-06-27 | 2014-10-01 | 腾讯科技(深圳)有限公司 | 一种导航路线生成方法及相关设备、*** |
CN104570027A (zh) * | 2013-10-25 | 2015-04-29 | 上海尚戴科技发展有限公司 | 解决轨迹记录数据存储的***及其方法 |
CN104819726A (zh) * | 2015-05-15 | 2015-08-05 | 百度在线网络技术(北京)有限公司 | 导航数据处理方法、装置及导航终端 |
CN105740275A (zh) * | 2014-12-10 | 2016-07-06 | 北京神州泰岳软件股份有限公司 | 地图显示方法及装置 |
CN106448431A (zh) * | 2016-08-24 | 2017-02-22 | 电子科技大学 | 一种采用众包方式的基于手机传感器的室内平面图构建方法 |
CN106908821A (zh) * | 2017-02-28 | 2017-06-30 | 北京交通大学 | 一种室内外无缝定位切换方法 |
CN108668233A (zh) * | 2017-03-31 | 2018-10-16 | 高德软件有限公司 | 一种建筑物入口检测方法及*** |
CN108681545A (zh) * | 2018-03-23 | 2018-10-19 | 广州北斗物联网有限公司 | 一种行驶轨迹的轨迹点优化方法、装置、设备及介质 |
CN109269514A (zh) * | 2017-07-18 | 2019-01-25 | 华为技术有限公司 | 确定运动轨迹的方法和装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7702459B2 (en) * | 2006-10-17 | 2010-04-20 | Alpine Electronics, Inc. | GPS accuracy adjustment to mitigate multipath problems for MEMS based integrated INS/GPS navigation systems |
CN104992072B (zh) * | 2015-07-21 | 2017-10-27 | 江苏北斗卫星应用产业研究院有限公司 | 基于空间网格剖分的作业地块自动识别与面积统计方法 |
CN107249167A (zh) * | 2017-04-10 | 2017-10-13 | 沈磊 | 室内综合定位平台及定位方法 |
CN111368014B (zh) * | 2019-12-23 | 2024-04-19 | 广东小天才科技有限公司 | 一种运动轨迹的生成方法、终端设备及存储介质 |
-
2019
- 2019-12-23 CN CN201911342463.5A patent/CN111368014B/zh active Active
-
2020
- 2020-12-22 WO PCT/CN2020/138428 patent/WO2021129630A1/zh active Application Filing
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104570027A (zh) * | 2013-10-25 | 2015-04-29 | 上海尚戴科技发展有限公司 | 解决轨迹记录数据存储的***及其方法 |
CN104075725A (zh) * | 2014-06-27 | 2014-10-01 | 腾讯科技(深圳)有限公司 | 一种导航路线生成方法及相关设备、*** |
CN105740275A (zh) * | 2014-12-10 | 2016-07-06 | 北京神州泰岳软件股份有限公司 | 地图显示方法及装置 |
CN104819726A (zh) * | 2015-05-15 | 2015-08-05 | 百度在线网络技术(北京)有限公司 | 导航数据处理方法、装置及导航终端 |
CN106448431A (zh) * | 2016-08-24 | 2017-02-22 | 电子科技大学 | 一种采用众包方式的基于手机传感器的室内平面图构建方法 |
CN106908821A (zh) * | 2017-02-28 | 2017-06-30 | 北京交通大学 | 一种室内外无缝定位切换方法 |
CN108668233A (zh) * | 2017-03-31 | 2018-10-16 | 高德软件有限公司 | 一种建筑物入口检测方法及*** |
CN109269514A (zh) * | 2017-07-18 | 2019-01-25 | 华为技术有限公司 | 确定运动轨迹的方法和装置 |
CN108681545A (zh) * | 2018-03-23 | 2018-10-19 | 广州北斗物联网有限公司 | 一种行驶轨迹的轨迹点优化方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111368014A (zh) | 2020-07-03 |
WO2021129630A1 (zh) | 2021-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111368014B (zh) | 一种运动轨迹的生成方法、终端设备及存储介质 | |
EP3076131B1 (en) | Navigation method and device | |
CN105737833B (zh) | 室内导航方法及装置 | |
US9684835B2 (en) | Image processing system, image processing method, and program | |
CN112041848A (zh) | 人数统计和跟踪***及方法 | |
CN110727757A (zh) | 轨迹数据的处理方法及装置、电子设备 | |
CN111010547A (zh) | 目标对象的追踪方法及装置、存储介质、电子装置 | |
CN110645999A (zh) | 导航方法、装置、服务器、终端及存储介质 | |
EP3053129A1 (en) | Marker based activity transition models | |
CN111380530A (zh) | 导航方法及相关产品 | |
CN111225340A (zh) | 一种景区寻物方法、装置及存储介质 | |
JP2018100921A (ja) | 移動軌跡に応じて地図上の経路を推定するプログラム、装置及び方法 | |
KR20210084447A (ko) | 목표 추적 방법, 장치, 전자 디바이스 및 기록 매체 | |
CN112752067A (zh) | 目标追踪方法、装置、电子设备及存储介质 | |
CN112802347B (zh) | 通过交通路口车辆的行驶速度确定方法、装置和设备 | |
CN113313909A (zh) | 智能眼镜的数据处理方法、装置及智能眼镜 | |
CN114143501A (zh) | 一种城市街道基建施工道路提醒监控***及道路数据终端 | |
JP2018092368A (ja) | 移動物状態量推定装置及びプログラム | |
CN107292916B (zh) | 目标关联方法、存储设备、直录播互动终端 | |
CN111611938B (zh) | 一种逆行方向确定方法及装置 | |
CN113721235B (zh) | 对象状态确定方法、装置、电子设备以及存储介质 | |
US20240117575A1 (en) | Infrastructure diagnostic device, infrastructure diagnostic method, and recording medium | |
JP2013054560A (ja) | 目的地予測装置 | |
CN115544389A (zh) | 门店路程时间确定方法及装置、电子设备及可读存储介质 | |
CN116399336A (zh) | 一种多用户协同定位方法、装置、电子设备及存储介质 |
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 |