CN111624636A - 数据处理方法、装置、电子设备及计算机可读介质 - Google Patents

数据处理方法、装置、电子设备及计算机可读介质 Download PDF

Info

Publication number
CN111624636A
CN111624636A CN202010451504.0A CN202010451504A CN111624636A CN 111624636 A CN111624636 A CN 111624636A CN 202010451504 A CN202010451504 A CN 202010451504A CN 111624636 A CN111624636 A CN 111624636A
Authority
CN
China
Prior art keywords
rotation
position points
point
time
virtual position
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.)
Granted
Application number
CN202010451504.0A
Other languages
English (en)
Other versions
CN111624636B (zh
Inventor
王宇辰
薛程
焦尚伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010451504.0A priority Critical patent/CN111624636B/zh
Publication of CN111624636A publication Critical patent/CN111624636A/zh
Application granted granted Critical
Publication of CN111624636B publication Critical patent/CN111624636B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO 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/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/38Determining a navigation solution using signals transmitted by a satellite radio beacon positioning system
    • G01S19/39Determining 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/393Trajectory determination or predictive tracking, e.g. Kalman filtering

Abstract

本申请公开了一种数据处理方法、装置、电子设备及计算机可读介质,该方法包括获取目标物体在移动路线上的至少两个位置点;获取至少两个虚拟位置点中每相邻的两个虚拟位置点之间的距离信息和方向信息;根据距离信息和方向信息确定每相邻的两个虚拟位置点对应的旋转信息;根据每相邻的两个虚拟位置点之间的旋转信息,在地图界面内的移动轨迹,目标物体对应的目标图像在移动轨迹上的每相邻的两个虚拟位置点之间移动的同时,根据每相邻的两个虚拟位置点对应的旋转信息旋转。该移动轨迹显示时,能够观察到目标物体在相邻的两个位置点边移动的同时边根据旋转信息旋转,能够以平滑转动的方式在弯道上移动,使得该目标物体所显示的轨迹更加合理。

Description

数据处理方法、装置、电子设备及计算机可读介质
技术领域
本申请涉及计算机技术领域,更具体地,涉及一种数据处理方法、装置、电子设备及计算机可读介质。
背景技术
目前,在进行目标移动路线描绘时,主要依赖GPS定位或者北斗定位,通过GPS定位或者北斗定位技术,实时获取目标的经纬度,然后在地图上描绘出目标的移动路线。然而,目前所显示的移动路线中,在目标转向的时候,所显示的轨迹不够合理。
发明内容
本申请提出了一种数据处理方法、装置、电子设备及计算机可读介质,以改善上述缺陷。
第一方面,本申请实施例提供了一种数据处理方法,包括:获取目标物体在真实环境内移动时移动路线上的至少两个物理位置点;确定每个所述物理位置点对应的虚拟位置点,每个所述虚拟位置点在地图界面内的位置对应一个所述物理位置点在所述移动路线上的位置;获取所述至少两个虚拟位置点中每相邻的两个所述虚拟位置点之间的距离信息和方向信息;根据所述距离信息和方向信息确定每相邻的两个所述虚拟位置点对应的旋转信息;根据每相邻的两个所述虚拟位置点对应的旋转信息,确定在所述地图界面内的移动轨迹,所述目标物体对应的目标图像在所述移动轨迹上的每相邻的两个所述虚拟位置点之间移动的同时,根据每相邻的两个所述虚拟位置点对应的旋转信息旋转。
第二方面,本申请实施例还提供了一种数据处理装置,包括:第一获取单元、第二获取单元、第三获取单元、确定单元和处理单元。第一获取单元,用于获取目标物体在真实环境内移动时移动路线上的至少两个物理位置点。第二获取单元,用于确定每个所述物理位置点对应的虚拟位置点,每个所述虚拟位置点在地图界面内的位置对应一个所述物理位置点在所述移动路线上的位置。第三获取单元,用于获取所述至少两个虚拟位置点中每相邻的两个所述虚拟位置点之间的距离信息和方向信息。确定单元,用于根据所述距离信息和方向信息确定每相邻的两个所述虚拟位置点对应的旋转信息。处理单元,用于根据每相邻的两个所述虚拟位置点对应的旋转信息,确定在所述地图界面内的移动轨迹,所述目标物体对应的目标图像在所述移动轨迹上的每相邻的两个所述虚拟位置点之间移动的同时,根据每相邻的两个所述虚拟位置点对应的旋转信息旋转。
第三方面,本申请实施例还提供了一种电子设备,包括:一个或多个处理器;存储器;一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行上述方法。
第四方面,本申请实施例还提供了一种计算机可读介质,所述可读存储介质存储有处理器可执行的程序代码,所述程序代码被所述处理器执行时使所述处理器执行上述方法。
本申请提供的数据处理方法、装置、电子设备及计算机可读介质,在目标物体在移动路线上移动时,获取目标物体在移动路线上的至少两个物理位置点,并确定每个所述物理位置点对应的虚拟位置点,其中,每个所述虚拟位置点在地图界面内的位置对应一个所述物理位置点在所述移动路线上的位置。然后,根据相邻的两个虚拟位置点之间的距离和方向信息确定目标物体在该两个虚拟位置点之间移动时的旋转信息,从而,在轨迹动画内,目标图像移动的同时还会旋转,即目标图像一边移动一边旋转。即能够观察到在所述地图界面内的移动轨迹中,目标图像在相邻的两个所述位置点边移动的同时边根据旋转信息旋转,从而能够使得用户观察到的目标图像移动到弯道的时候,能够以平滑转动的方式在弯道上移动,使得该目标图像所显示的轨迹更加合理。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了本申请一实施例提供的轨迹显示系统的示意图;
图2示出了本申请一实施例提供的轨迹显示界面的示意图;
图3示出了本申请另一实施例提供的轨迹显示系统的示意图;
图4示出了本申请另一实施例提供的轨迹显示界面的示意图;
图5示出了本申请又一实施例提供的轨迹显示系统的示意图;
图6示出了本申请一实施例提供的数据处理方法的方法流程图;
图7示出了本申请一实施例提供的方向信息的示意图;
图8示出了本申请一实施例提供的旋转时间对应的时间段与移动时间段至少部分重叠的示意图;
图9示出了本申请另一实施例提供的旋转时间对应的时间段与移动时间段至少部分重叠的示意图;
图10示出了本申请又一实施例提供的旋转时间对应的时间段与移动时间段至少部分重叠的示意图;
图11示出了本申请再一实施例提供的旋转时间对应的时间段与移动时间段至少部分重叠的示意图;
图12示出了本申请再另一实施例提供的旋转时间对应的时间段与移动时间段至少部分重叠的示意图;
图13示出了本申请实施例提供的显示内容的示意图;
图14示出了本申请另一实施例提供的数据处理方法的方法流程图;
图15示出了本申请一实施例提供的方向向量的示意图;
图16示出了本申请一实施例提供的旋转时间的时间起点和时间终点的示意图;
图17示出了本申请另一实施例提供的旋转时间的时间起点和时间终点的示意图;
图18示出了本申请又一实施例提供的数据处理方法的方法流程图;
图19示出了本申请再一实施例提供的数据处理方法的方法流程图;
图20示出了本申请一实施例提供的数据处理装置的模块框图;
图21示出了本申请另一实施例提供的数据处理装置的模块框图;
图22示出了本申请实施例提供的电子设备的模块框图;
图23示出了本申请实施例提供的用于保存或者携带实现根据本申请实施例的数据处理方法的程序代码的存储单元。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
目前,在进行目标移动轨迹描绘时,主要依赖GPS定位或者北斗定位,通过GPS定位或者北斗定位技术,实时获取目标的经纬度,然后在地图上描绘出目标的移动轨迹。然而,目前所显示的移动轨迹中,在目标转向的时候,所显示的轨迹不够合理。
目前,在外卖场景、网约车场景以及其他的用户需要查阅交通工具的移动轨迹的场景下,各个场景对应的客户端能够交通工具的移动轨迹,例如,网约车场景对应的客户端为乘客端,在乘客端会显示每个网约车订单对应的司机的位置和移动轨迹。其中,乘客端为乘客在使用网约车软件时打车使用的打车应用程序。
但是,发明人在研究中发现,目前所显示的交通工具的移动轨迹并不合理。具体地,以网约车场景为例,虽然能够在乘客端显示司机的交通工具的位置,或者显示交通工具的移动轨迹,但是,并不能够在乘客端平滑地显示交通工具的移动轨迹或无法正常显示交通工具的转向。
具体地,有些乘客端只能显示司机的交通工具的初始位置,这种显示方式使得用户体验度较差,无法使用户在乘客端体验到司机的交通工具实时位置的移动,并且乘客也不能够感知到司机的距离远近,该显示方式使得用户的网约车体验较差。
另外,有些乘客端所显示的交通工具的移动轨迹中,该交通工具跳跃移动,即移动不够连贯。这种显示方式虽然能够使得乘客观察到司机的位置在移动,但是,司机位置的移动并非实时的,对于乘客来说,虽然满足了对司机位置观察的基本要求,但是,由于司机位置的跳跃性,用户体验依然不够完美。
再者,有些乘客端所显示的交通工具的移动轨迹中,交通工具的移动虽然比较平滑,即比较连贯,但是转向不准确,即在弯道移动的时候,交通工具的转向与弯道不匹配,例如,转弯过大等类似情况,交通工具在该弯道的运动轨迹与弯道路线不一致,即交通工具运动轨迹的弧度与弯道路线的弧度不一致,从而降低用户体验。
为了克服上述缺陷,本申请实施例提供了一种数据处理方法、装置、电子设备及计算机可读介质,使得用户观察到的交通工具或者司机等物体移动到弯道的时候,能够以平滑转动的方式在弯道上移动,使得该物体所显示的轨迹更加合理。
为了清楚的描述本申请实施例,下面先对本申请实施例所应用的场景做介绍。如图1所示,图1示出了本申请一实施例提供的轨迹显示系统,轨迹显示系统包括用户终端100和服务器200,用户终端100和服务器200位于无线网络或有线网络中,用户终端100和服务器200进行数据交互。服务器200可以是单独的服务器,也可以是服务器集群,可以是本地服务器,也可以是云端服务器。
用户终端100内安装有能够显示物体移动轨迹的应用程序,具体的该应用程序为能够显示物体在地图上显示的移动轨迹的应用程序。作为一种实施方式,该物体可以是用户终端100。例如,该应用程序为具有导航功能的地图软件,用户能够使用该地图软件选定目的地之后,根据用户的当前位置和目的地位置显示规划路线,并且在规划路线上实时显示用户的移动轨迹。在一些实施例中,用户终端100在确定目的地之后,将目的地和用户终端100的当前位置发送至服务器200。例如,该用户终端100的当前位置可以是用户终端100内置的定位装置而采集的,该定位装置可以是GPS模块或北斗定位模块。服务器200根据目的地和用户终端100的当前位置确定导航路线,将该导航路线在用户终端100的应用程序的界面上显示,并且实时获取用户终端100的位置信息,并且实时更新导航路线以及用户在该导航路线上的位置。
如图2所示,在该界面内显示有与用户对应的标识图案201,该标识图案201用于在该界面上显示的地图中标注用户或用户终端的位置,该界面上还显示有导航路线202,当用户在地图上沿导航路线202移动的时候,标识图案201在导航路线202上的位置会根据用户终端采集的位置而改变。
如图3所示,图3示出了本申请一实施例提供的轨迹显示系统,轨迹显示系统包括第一用户终端100、第二用户终端300和服务器200,第一用户终端100、第二用户终端300和服务器200位于无线网络或有线网络中,第一用户终端100、第二用户终端300和服务器200进行数据交互。服务器200可以是单独的服务器,也可以是服务器集群,可以是本地服务器,也可以是云端服务器。
第一用户终端100和第二用户终端300内均安装有上述的能够显示显物体移动轨迹的应用程序,具体的该应用程序为能够显示物体在地图上显示的移动轨迹的应用程序。作为一种实施方式,该第一用户终端100和第二用户终端300能够互相显示对方在地图上的位置和移动轨迹。具体地,该第一用户终端100和第二用户终端300均安装有网约车软件,即该第一用户终端100的网约车软件为乘客端,第二用户终端300的网约车软件为司机端。并且,该第一用户终端100能够显示接驾过程和送驾过程,并且第一用户终端100和第二用户终端300均能够显示司乘同显的内容。其中,该司机端为司机在使用网约车软件时接单使用的打车应用程序,接驾过程为司机从自身位置到乘客的上车点的中间过程,送驾过程为司机从乘客上车点到乘客目的地的中间过程,司乘同显为司机端和乘客端在接驾过程和送驾过程同时显示司机的位置、轨迹和路线等信息,移动轨迹为乘客在使用打车应用程序时,通过打车应用程序看见的司机位置实时移动的路线,具体地,该移动轨迹为乘客端和司机端的界面上所显示的内容,可以由车辆在真实世界中的移动路线上的各个位置点而确定。
如图4所示,图4显示了第一用户终端100和第二用户终端300所显示的司机移动路径对应的显示界面,在该界面内显示有司机所驾驶以及乘客所乘坐的交通工具的位置信息和移动的轨迹和导航路线,具体地,图4中的交通工具标识图案301用于在该界面上显示的地图中标注该交通工具的位置,该界面上还显示有导航路线302,当交通工具在地图上沿导航路线302移动的时候,交通工具标识图案301在导航路线302上的位置会根据用户终端采集的位置而改变。
作为一种实施方式,上述确定用户终端或交通工具的位置点和移动轨迹的执行主体可以是上述服务器200,在图1所对应的系统内,服务器200获取用户终端100上报的位置点,根据该位置点确定用户终端在图2所示的界面上的显示位置和移动动画,即移动轨迹,在图3对应的系统内,第二用户终端300位于交通工具内的时候,上报自己的位置点至服务器200,服务器根据第二用户终端300的位置点确定交通工具在图4所示的界面上的显示位置和移动动画,并且在第一用户终端100上显示该界面,以便乘客能够通过第一用户终端观察到交通工具的位置和移动轨迹,从而获知司机的位置和移动轨迹。
作为另一种实施方式,上述确定用户终端或交通工具的位置点和移动轨迹的执行主体可以是程序组件,如图5所示,轨迹显示系统包括程序组件501和目标客户端502,其中,目标客户端502可以是上述的具有如图2和图4所示的能够显示物体位置点和移动轨迹的应用程序,该程序组件501用于采集用户终端或者司机端的位置点,并根据该位置点确定移动轨迹,交由目标客户端502显示。该程序组件501可以是SDK插件,SDK(SoftwareDevelopment Kit)插件,一般为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合。具体地,SDK插件内集成有多个应该访问接口,则智能终端能够通过所集成的访问接口与智能设备连接,该SDK插件能够与司机端通信连接,也能够与目标客户端502连接。
本申请实施例中,数据处理方法的执行主体可以是上述的服务器,也可以是上述的程序组件,该程序组件可以集成在该目标客户端内,也可以是作为一个与目标客户端相互独立的应用程序安装在终端内,还可以安装在服务器内,在此不做限定。于本申请实施例中,示例性的,该方法的执行主体可以是程序组件。
请参阅图6,图6示出了本申请一实施例提供的数据处理方法,用于使得用户观察到的目标物体移动到弯道的时候,能够以平滑转动的方式在弯道上移动,使得该目标物体所显示的轨迹更加合理。具体地,该方法可以包括:S601至S605。
S601:获取目标物体在真实环境内移动时移动路线上的至少两个物理位置点。
其中,移动路线是指目标物体在真实环境中由起点位置向目的地位置移动时,所行走的路线,具体地,该移动路线是目标物体在真实环境的道路上由起点位置向目的地位置移动的路线,则该物理位置点可以为目标物体在真实环境中在目标物体的移动路线上的行使轨迹点,即为真实环境中的位置坐标,该位置坐标可以是该目标物体在地球坐标系内的坐标点,即可以是经纬度。其中,物理位置点可以由上述的定位装置采集。
该移动路线不限定目标物体具体移动的某个固定的路线,即可以理解为,由起点位置向目的地位置移动的任何路线均可以作为移动路线。则该移动路线上的位置点,也并不限定在一条固定的路线上的位置点,而是可以指目标物体由起点位置开始向目的地位置移动的时候,按照指定时间间隔上报的物理位置点。该目标物体的物理位置点对应目标终端的物理位置点。例如,以网约车场景为例,该目标物体为司机所驾驶的交通工具,即乘客所需乘坐的交通工具。则该目标物体对应的目标终端可以是司机端,即目标物体的物理位置点为司机端的物理位置点。
作为一种实施方式,目标终端根据预设上报规则主动上报目标物体的物理位置点,具体地,目标终端根据预设上报规则主动获取目标物体的至少两个物理位置点,并将该至少两个物理位置点发送至程序组件。其中,预设上报规则可以是规定连续获取指定时间段内的N个物理位置点,其中,N为大于或等于2的正整数。该指定时间段作为该N个物理位置点的数据采集周期。
具体地,该指定时间段可以根据实际需求而设定,还可以根据预先收集的不同的交通工具在转弯时所消耗的时间而确定。例如,获取不同的交通工具在转弯时所消耗的时间,作为参考时间,根据所有的参考时间确定该指定时间段。在一些实施例中,可以将所有的参考时间内,最大的参考时间作为该指定时间段。在另一些实施例中,可以将所有的参考时间内,最小的参考时间作为该指定时间段。在又一些实施例中,可以将所有的参考时间的平均值作为该指定时间段。于本申请实施例中,该指定时间段可以是5秒。
作为另一种实施方式,本方法的执行主体,例如,程序组件,发送位置获取请求至目标物体对应的目标终端,指示目标终端上报目标物体在移动路线上的至少两个物理位置点。
以网约车场景为例,在乘客通过乘客端下单的时候,司机通过司机端接单,则司机端上报轨迹信息、路线信息和订单信息至服务端。其中,该轨迹信息包括司机端对应的交通工具,即目标物体的移动路线,该移动路线由该目标物体的多个物理位置点构成,路线信息可以是由乘客端下单的时候,输入的起点位置和目的地位置而确定的导航路线,具体地,可以是根据起点位置和目的地位置确定多个路线,由乘客通过乘客端或者司机通过司机端由多个路线内所选中的路线,作为路线信息,并且在订单结束之前,在有多个路线选择的情况下,该导航路线均可以由乘客端或司机端更改。
订单信息可以包括与乘客乘车的订单相关的信息,例如,该订单信息包括乘客信息、司机的交通工具的车辆身份信息以及司机的身份信息,该车辆身份信息可以包括车辆的型号和车牌号等信息,司机的身份信息可以包括司机的头像、姓名和联络方式等信息,该乘客信息可以包括乘客的身份信息,例如,该乘客的身份信息可以包括乘客端的标识,该标识可以是登录乘客的用户名信息,即该订单对应的乘客的身份信息,也可以是乘客端对应的终端的设备信息,该设备信息可以是终端的硬件标识,例如,该硬件标识可以是终端的MAC地址或者CPU标识。
服务端在获取到司机端上报的轨迹信息、路线信息和订单信息等数据之后,对所获取的数据进行处理,处理之后将轨迹信息、路线信息和订单信息发送至乘客端。其中,数据的处理可以包括通过订单信息确定乘客端的身份信息,根据该乘客端的身份信息将轨迹信息、路线信息和订单信息发送至该身份信息对应的乘客端。其中,乘客端和司机端对应的是同一种应用程序,即属于同一款应用程序,但是二者可能存在部分功能的不相同。
乘客端获取到轨迹信息、路线信息和订单信息,然后,在执行获取目标物体在移动路线上的至少两个物理位置点的操作,同时获取目标客户端配置的移动时间段,然后,执行S602至S603的步骤,以在司乘同显的过程中实现平滑移动。其中,目标客户端为乘客端和司机端对应的应用程序。例如,以某网约车软件为例,则目标客户端为该网约车软件,司机端和乘客端也都属于该网约车软件,二者可能存在功能差异。
S602:确定每个所述物理位置点对应的虚拟位置点。
其中,每个所述虚拟位置点在地图界面内的位置对应一个所述物理位置点在所述移动路线上的位置。其中,地图界面可以是上述的图2或图4所示的用于显示目标物体的导航路线或移动轨迹的界面,目标物体对应的目标图像能够在该地图界面内显示。
作为一种实施方式,该目标图像可以是该目标物体对应的显示内容,该目标图像在地图界面内的位置,能够表示该目标物体在真实环境内的位置。例如,该目标图像可以是上述图2所示的标识图案201或图4所示的交通工具标识图案301。
作为一种实施方式,可以预先获取目标物体在真实环境内的物理位置点和目标物体对应的目标图像在该地图界面内的虚拟位置点的映射关系,具体地,该物理位置点对应的物理位置,可以为目标物体在真实环境对应的世界坐标系内的物理坐标,该虚拟位置点对应的虚拟坐标,可以为目标图像在地图界面对应的像素坐标内的像素坐标,则不同像素坐标的虚拟位置点在地图界面内的位置不同。
则该映射关系的确定可以是基于该物理坐标与像素坐标之间的映射而确定,具体地,可以是该地图是根据真实环境内的街道或建筑物等标记物的物理位置而得到的,因此,各个建筑物或街道等标记物之间的位置关系可以等比例缩放得到该地图,从而,该地图界面内的每个虚拟位置点能够与真实环境内的各个物理位置点对应。
从而,根据该映射关系,确定每个所述物理位置点的物理坐标对应的像素坐标,每个像素坐标点对应一个虚拟位置点,进而就能够确定每个物理位置点对应的虚拟位置点。而由于所采集的是目标物体在真实环境内移动时移动路线上的物理位置点,而每个虚拟位置点与物理位置点对应,因此,每个所述虚拟位置点在地图界面内的位置对应一个所述物理位置点在所述移动路线上的位置。
S603:获取所述至少两个虚拟位置点中每相邻的两个所述虚拟位置点之间的距离信息和方向信息。
作为一种实施方式,由于每个所述虚拟位置点在地图界面内的位置对应一个所述物理位置点在所述移动路线上的位置,因此,各个虚拟位置点之间的距离信息与各个物理位置点之间的真实距离信息等比例变化,例如,物理位置点1和物理位置点2之间的真实距离为10米,物理位置点2和物理位置点3之间的真实距离为8米,则虚拟位置点1和虚拟位置点2之间的距离为5厘米,虚拟位置点2和虚拟位置点3之间的距离为4厘米。
各个虚拟位置点之间的方向信息保持与各个物理位置点之间的方向信息一致,即各个虚拟位置点在地图界面内之间的方位角度与各个物理位置点在真实环境内的方位角度一致。
作为一种实施方式,可以根据两个虚拟位置点在地图界面对应的像素坐标系内的像素坐标点确定两个虚拟位置点之间的距离。
作为一种实施方式,两个虚拟位置点之间的方向信息用于表示两个虚拟位置点相互之间的方位,例如,可以是一个虚拟位置点相对另一个虚拟位置点的方位,则该方位表示目标物体由一个虚拟位置点沿着直线移动至另一个虚拟位置点的移动方向。在一些实施例中,可以根据前述的坐标点确定每相邻的两个所述虚拟位置点之间的方向信息。具体地,每相邻的两个虚拟位置点之间的坐标确定该相邻的两个虚拟位置点之间的方向向量,则该方向向量的方向作为该相邻的两个虚拟位置点之间的方向信息。
如图7所示,假设物理位置点为三个,且按照移动路线的移动方向,该三个物理位置点依次为位置点1、位置点2和位置点3,即目标物体先到达位置点1,然后依次经过位置点2和位置点3。该三个物理位置点对应的虚拟位置点依次为a、b和c。虚拟位置点a的坐标为(xa,ya),虚拟位置点b的坐标为(xb,yb),虚拟位置点c的坐标为(xc,yc),根据(xa,ya)和(xb,yb)确定a和b之间的方向向量为
Figure BDA0002507744100000061
根据(xb,yb)和(xc,yc)确定b和c之间的方向向量为
Figure BDA0002507744100000062
其中,方向向量
Figure BDA0002507744100000063
为虚拟位置点a指向虚拟位置点b的方向,方向向量
Figure BDA0002507744100000064
为虚拟位置点b指向虚拟位置点c的方向。作为一种实施方式,该目标物体为交通工具的时候,该目标物体的目标图像可以是该交通工具的图像,两个虚拟位置点之间的方向向量的方向可以是该交通工具的图像沿着该两个虚拟位置点之间的直线移动的时候,该交通工具前进时的车头方向。
S604:根据所述距离信息和方向信息确定每相邻的两个所述虚拟位置点对应的旋转信息。
其中,旋转信息包括旋转角度。假设相邻的两个虚拟位置点中,前一个虚拟位置点命名为第一位置点,后一个虚拟位置点命名为第二位置点,则相邻的两个虚拟位置点对应的旋转角度用于表示目标物体的目标图像由第一位置点移动至第二位置点的时候,所需要转动的角度,具体地,该旋转角度可以是目标图像到达第一位置点时的移动方向与第一位置点和第二位置点之间的方向信息之间的方向夹角,即由该移动方向转动至该方向信息时所需要转动的角度,具体地,可以是该移动方向转动至该方向信息时所需要转动的最小角度。
如图7所示,以位置点a和位置点b为例,目标物体到达位置点a的移动方向为
Figure BDA0002507744100000065
位置点a和位置点b之间的方向向量为
Figure BDA0002507744100000066
确定
Figure BDA0002507744100000067
Figure BDA0002507744100000068
之间的夹角α,作为位置点a和位置点b对应的旋转角度。同理,
Figure BDA0002507744100000069
Figure BDA00025077441000000610
之间的旋转角度为β。
于本申请实施例中,目标图像到达某个虚拟位置点的移动方向与该虚拟位置点之前相邻的虚拟位置点之间的方向信息相关,即如果该虚拟位置点之前具有相邻的虚拟位置点,则该虚拟位置点的移动方向为该虚拟位置点之前相邻的虚拟位置点之间的方向信息,如果该虚拟位置点之前未有相邻的虚拟位置点,即该虚拟位置点作为初始虚拟位置点,则该确定该虚拟位置点的移动方向的实施方式可以参考后续实施例,在此不赘述。如图7所示,目标图像到达位置点b的移动方向为位置点a和位置点b之间的方向信息,即方向向量
Figure BDA00025077441000000611
另外,旋转信息还包括旋转时间,所述旋转时间用于表示所述目标图像在相邻的两个虚拟位置点之间移动时旋转所述旋转角度所需时间。
作为一种实施方式,相邻的两个虚拟位置点对应的旋转时间可以根据该预先获取的转动速度和相邻的两个虚拟位置点的旋转角度而确定,其中,该转动速度用于表示单位时间内转动的角度,具体地,可以是用预先根据实际需求而设定的,也可以是根据各个位置点之间的距离信息而确定的,具体地,可以参考后续实施例。
作为另一种实施方式,相邻的两个虚拟位置点对应的旋转时间可以根据相邻的两个虚拟位置点的距离信息而确定。具体地,根据上述的采集所有虚拟位置点的时间能够确定目标图像经过所有虚拟位置点的总时间,再根据相邻两个虚拟位置点之间的距离信息能够确定该距离在所有虚拟位置点的总距离之间的占比,将该占比对应的时间长度作为旋转时间。
在一些实施例中,可以预先获取目标物体在相邻两个虚拟位置点之间移动时的移动速度,再根据该两个虚拟位置点之间的距离能够得到目标图像在相邻两个虚拟位置点之间移动所需要的时间长度,命名为位移时间,其中,该位移时间与前述的移动时间段对应的时间长度可以不同,因为该位移时间内可能会包括目标物体静止的时间长度。
则在一些实施例中,将每相邻两个虚拟位置点之间对应的位移时间作为该相邻两个虚拟位置点对应的旋转时间,从而能够得到每相邻的两个虚拟位置点对应的旋转时间。
在另一些实施例中,在确定各个虚拟位置点之间的时间间隔的情况下,通过各个相邻的两个虚拟位置点之间的距离信息能够得到对所有虚拟位置点的整体时间划分,即对应每相邻的两个虚拟位置点划分一个时间段,该时间段可以作为该两个虚拟位置点对应的旋转时间,也可以作为该两个虚拟位置点对应的移动时间长度,该移动时间长度为目标图像在该两个虚拟位置点之间移动的时候,移动时间段对应的时间长度。
假设所有虚拟位置点的时间长度为T,所述至少两个虚拟位置点的数量为5个,分别为位置点a、位置点b、位置点c、位置点d和位置点e,各个相邻的两个虚拟位置点之间的距离信息分别为L1、L2、L3和L4,即L1为位置点a和位置点b之间的距离,L2为位置点b和位置点c之间的距离,L3为位置点c和位置点d之间的距离,L4为位置点d和位置点e之间的距离。
然后计算得到每个相邻的两个虚拟位置点之间的距离占总距离的比例,根据该比例确定该虚拟位置点的旋转时间。例如,总距离为LM,位置点a和位置点b之间的距离占比为L1/LM,然后,再与总时间T相乘,得到该位置点a和位置点b之间的旋转时间。
具体地,旋转时间为一个时间长度值,其对应有时间起点和时间终点,则时间起点和时间终点之间的时间段作为旋转时间对应的时间段,例如,时间起点为13点20分11秒,时间终点为13点20分12秒,则旋转时间为1秒,其对应的时间段为13点20分11秒至13点20分12秒。作为一种实施方式,针对位置点b和位置点c之间的旋转时间,其起点可以是位置点b,也可以是位置点b和位置点c之间的位置点,甚至还可以是位置点b与位置点a之间的位置点。因此,旋转时间的时间起点对应的位置记作起点位置,旋转时间的时间终点对应的位置记作终点位置,旋转时间对应的时间段可以是目标图像到达起点位置的时刻与目标图像到达终点位置的时刻之间的时间段。
例如,针对位置点b和位置点c之间的旋转时间,起点位置是位置点b,终点位置是位置点c,则表示该旋转时刻是目标图像由位置点b开始旋转至到达位置点c时完成旋转角度的旋转所经历的时间长度。而该旋转时间对应的时间段为目标图像到达位置点b的时刻至目标图像到达位置点c的时刻。
在一些实施例中,将目标图像在相邻的两个虚拟位置点之间移动时的时间段记为移动时间段,其中,该移动时间段对应的目标图像持续移动的时间段,如果目标图像在移动的过程中停止移动,即使目标图像未完成在该两个虚拟位置点之间的移动,保持停止移动状态时的时间段依然不计为移动时间段。例如,以位置点b和c举例,目标图像到达位置点b的时刻为t1,到达位置点b和c之间的某个位置点的时刻为t2,在该位置点停止一段时间,在时刻t3的时候,继续移动,到达位置点c的时刻为t4,则移动时间段包括t1至t2以及t3至t4,其中,t2至t3的时间段不算作移动时间段。其中,目标图像的移动状态可以与目标物体在真实环境内的移动状态一直,则该目标物体在真实环境内的移动状态可以通过目标物体内的运动状态检测装置而采集,例如,该目标物体是交通工具,则该运动状态检测装置为交通工具内的惯性测量仪。另外,该交通工具的移动状态还可以通过位于交通工具内的用户终端内的惯性测量单元检测。
于本申请实施例中,所述旋转时间对应的时间段与移动时间段至少部分重叠,其中,至少部分重叠包括全部重叠,即该时间段与移动时间段一致,即时间段的时间起点与移动时间段的时间起点相同,且时间段的时间终点与移动时间段的时间终点相同,至少部分重叠还包括部分重叠,即该时间段与移动时间段部分交集,在重叠的时间段内,目标图像既在旋转相邻两个虚拟位置点对应的旋转角度,又在由该相邻两个虚拟位置点中的一个虚拟位置点朝向另一个虚拟位置点移动。
假设将旋转时间对应的时间段命名为旋转时间段,下面分四种方式介绍旋转时间对应的时间段与移动时间段部分重叠的情况,但需要说明的是,并非限定转时间对应的时间段与移动时间段部分重叠的情况仅有以下四种。
如图8所示,图8示出了旋转时间段与移动时间段部分重叠的一种方式,Tx为旋转时间段,旋转时间段Tx的时间起点为t2,旋转时间段Tx的时间终点为t4,Ty为移动时间段,移动时间段Ty的时间起点为t1,移动时间段Ty的时间终点为t3,且时间先后顺序为t1、t2、t3和t4,旋转时间段与移动时间段的重叠的部分为t2至t3,旋转时间段Tx的时间起点t2位于移动时间段Ty的时间起点t1和时间终点t3之间,即时刻t2至t3为旋转时间段Tx与移动时间段Ty交集的部分。
如图9所示,图9示出了旋转时间段与移动时间段部分重叠的另一种方式,与图8类似,旋转时间段与移动时间段的重叠的部分为t2至t3,移动时间段Ty的时间起点t2位于旋转时间段Tx的时间起点t1和时间终点t3之间,即时刻t2至t3为旋转时间段Tx与移动时间段Ty交集的部分。
如图10所示,图10示出了旋转时间段与移动时间段部分重叠的又一种方式,与图8和9类似,旋转时间段与移动时间段的重叠的部分为t2至t3,旋转时间段Tx的时间起点t2和时间终点t3均位于移动时间段Ty的时间起点t1和时间终点t4之间,即整个旋转时间段作为旋转时间段与移动时间段Ty交集的部分。
如图11所示,图11示出了旋转时间段与移动时间段部分重叠的再一种方式,移动时间段Ty包括两个子时段,分别为Ty1和Ty2,其中,Ty1为时刻t1至t3之间,Ty2为时刻t4至t6之间,旋转时间段Tx的时间起点为t2,旋转时间段Tx的时间终点为t5,则由图11可以看出,旋转时间段Tx与移动时间段Ty交集的部分为t2至t3和t4至t5
需要说明的是,上述所示的相邻两个虚拟位置点对应的旋转时间段和移动时间段未重叠的部分,目标图像未在该两个虚拟位置点之间移动的同时,未根据该两个虚拟位置点的旋转信息转动,但是,并不表示目标图像无法在该未重叠的部分,根据其他的旋转信息转动。则在一些实施例中,在该未重叠的部分,目标物体仅移动而不旋转,而在另一些实施例中,在该未重叠的部分,目标物体可以根据其他的旋转信息转动,具体地,在后续实施例中介绍。
再者,如图12所示,图12示出了旋转时间段与移动时间段未重叠的情况,旋转时间段Tx的时间终点t2位于移动时间段Ty的时间起点t3之前,即目标图像在该两个虚拟位置点之间移动的时候,目标图像物旋转该两个虚拟位置点对应的旋转角度的时候,目标图像并没有在移动,即目标图像在原地旋转,而本申请实施例通过设置旋转时间对应的时间段与移动时间段至少部分重叠,使得目标图像能够一边移动一边旋转,使得目标图像在过弯的时候能够更加平滑。
另外,旋转时间段与移动时间段未重叠的一种情况还可以是,旋转时间段与移动时间段虽然有重叠的部分,但是重叠的部分非常小。因此,旋转时间对应的时间段与移动时间段至少部分重叠可以是,旋转时间对应的时间段与移动时间段存在重叠部分,其重叠部分的时间长度大于指定时间长度,其中,指定时间长度可以是0到1秒的数值,例如,可以是0.01秒,因此,对于旋转时间段与移动时间段的重叠部分小于或等于指定时间长度的情况,并不属于旋转时间对应的时间段与移动时间段至少部分重叠的情况。
S605:根据每相邻的两个所述虚拟位置点对应的旋转信息,确定在所述地图界面内的移动轨迹。
其中,该移动轨迹可以是根据各个虚拟位置点在该地图界面内的位置,以及每相邻的两个虚拟位置点之间的旋转角度和旋转时刻,以及预先确定的两个位置的移动时间段与旋转时间对应的时间段的重叠部分,生成的目标物体对应的图标图像在该地图界面上移动的动画。例如,该移动轨迹的某两个时间戳分别对应旋转时间的时间起点和时间终点,且移动轨迹的某两个时间戳分别对应移动时间段的时间起点和时间终点,且该时间戳的分部满足移动时间段与旋转时间对应的时间段的重叠关系。并且,目标物体在真实环境中的移动路线上的各个物理位置点对应目标图像在移动轨迹中的移动轨迹上的各个像素点,以及上述的旋转时刻的起点和终点也与移动轨迹上的像素点对应。
如图13所示,图13示出了该移动轨迹对应的多帧图像,其中,图13中所显示的小车,为该目标物体对应的目标图像,而图13中的多个小车用于表示同一辆小车在不同的时刻,即不同帧的图像中的位置,则可以看出,在移动轨迹中,小车在每相邻的两个所述虚拟位置点之间移动的同时,根据每相邻的两个虚拟位置点对应的旋转信息旋转。其中,不同帧的图像内的小车在图像内的位置,构成了小车在移动轨迹中的移动轨迹,可以看出,该移动轨迹是一个平滑的过程。
作为一种实施方式,本申请实施例的执行主体是程序组件,该程序组件集成在客户端,该客户端可以是上述的乘客端和司机端,该程序组件可以集成在该客户端内,由客户端将该移动轨迹在地图界面内显示,其中,该地图界面可以是客户端的开发者指定的界面,也可以是客户端的用户根据需求而指定的界面。
因此,本申请实施例提供的数据处理方法,根据该旋转角度和旋转时间确定移动轨迹,该移动轨迹显示的时候,能够观察到目标图像在相邻的两个虚拟位置点边移动的同时边根据旋转信息旋转,从而能够使得用户观察到的目标图像移动到弯道的时候,能够以平滑转动的方式在弯道上移动,使得该目标图像所显示的轨迹更加合理。
请参阅图14,图14示出了本申请一实施例提供的数据处理方法,用于使得用户观察到的目标图像移动到弯道的时候,能够以平滑转动的方式在弯道上移动,使得该目标图像所显示的轨迹更加合理。具体地,该方法可以包括:S1401至S1407。
S1401:获取目标物体在真实环境内移动时移动路线上的至少两个物理位置点。
S1402:确定每个所述物理位置点对应的虚拟位置点。
S1403:获取所述至少两个虚拟位置点中每相邻的两个所述虚拟位置点之间的距离信息和方向信息。
其中,S1401至S1403的实施方式可以参考前述实施例,在此不再赘述。
S1404:根据每相邻的两个所述虚拟位置点之间的方向信息,获取该相邻的两个所述虚拟位置点之间的旋转角度。
作为一种实施方式,可以根据前述实施例描述的内容,在确定相邻的两个虚拟位置点之间的旋转角度时,会根据目标图像到达该相邻的两个位置点中,前一个虚拟位置点的位置时,目标图像的移动方向和该相邻的两个虚拟位置点之间的方向信息来确定该旋转角度。则在一些实施例中,该移动方向可以是该相邻的两个虚拟位置点之前的相邻的两个虚拟位置点对应的方向信息。
作为一种实施方式,根据每相邻的两个所述虚拟位置点之间的方向信息,获取该相邻的两个所述虚拟位置点之间的旋转角度的实施方式可以是,根据每相邻的两个虚拟位置点之间的方向信息与该方向信息之前获取的方向信息,确定该相邻的两个虚拟位置点之间的旋转角度。
其中,相邻的两个虚拟位置点之间的方向信息之前获取的方向信息,可以是该相邻的两个虚拟位置点之前的相邻的两个虚拟位置点对应的方向信息。以上述图7为例,该位置点b和位置点c之间的方向信息
Figure BDA0002507744100000091
之前获取的方向信息为位置点a和位置点b之间的方向信息
Figure BDA0002507744100000092
即位置点b和位置点c之前的相邻的两个位置点为位置点a和位置点b。
然而,考虑到如果虚拟位置点所对应的物理位置点为本次所采集的第一个位置点,则该物理位置点之前并没有其他的位置点,从而无法获取该虚拟位置点对应的方向信息之前获取的方向信息,因此,可以将所有的虚拟位置点划分为初始位置点和其他位置点,具体地,该其他虚拟位置还可以继续划分为中间位置点和最终位置点,其中,安装目标物体依次经过所有位置点的顺序,第一位置点作为初始位置点,最后一个位置点作为最终位置点,其他的位置点作为中间位置点。
进一步,可以根据各个虚拟位置点的顺序将所有虚拟位置点划分为三个段,分别为初始段、中间段和最终段,初始段为初始位置点与所有中间位置点中的第一个位置点之间的轨迹,最终段为所有中间位置点中的最后一个位置点与最终位置点之间的轨迹,中间段为所有中间位置点中的第一个位置点和所有中间位置点中的最后一个位置点之间的轨迹。
则针对初始位置点和其他位置点,确定转动角度的方向不同。
具体地,若相邻的两个虚拟位置点为所述初始位置点与该初始位置点相邻的虚拟位置点,获取目标图像在所述初始位置点的移动方向,作为初始移动方向。根据所述初始位置点与所述初始位置点相邻的虚拟位置点之间的方向信息和所述初始移动方向,即中间段的方向信息,确定所述初始位置点与所述初始位置点相邻的虚拟位置点之间的旋转角度。
参考前述描述,目标图像在所述初始位置点的移动方向可以是目标图像到达初始位置点的时候,该目标图像的移动方向,该初始位置方向也可以命名为法向量。与所述初始位置点相邻的位置点为该初始位置点之后的第一位置点,将该初始位置点与该初始位置点相邻的位置点之间的方向信息记为初始法向量。具体地,可以将两个方向信息之间的夹角作为旋转角度。
若相邻的两个虚拟位置点为所述初始位置点之后的两个虚拟位置点,则根据该相邻的两个虚拟位置点之间的方向信息与该方向信息之前获取的方向信息,确定该相邻的两个虚拟位置点之间的旋转角度。具体地,可以参考前述实施例,根据方向向量确定旋转角度,在此不再赘述。
如图15所示,所采集的物理位置点为6个,该6个物理位置点对应的虚拟位置点分别为位置点a、位置点b、位置点c、位置点d、位置点e和位置点f,初始位置点为位置点a,最终位置点为位置点f,初始段为位置点a至位置点b,对应的方向信息为初始向量,位置点a处的初始移动方向为法向量,中间段为位置点b至位置点e,对应的方向信息依次为向量1、向量2和向量3,其中,向量1对应位置点b至位置点c,向量2对应位置点c至位置点d,向量3对应位置点d至位置点e,最终段为位置点e至位置点f,对应的方向信息为最终向量。
则如图15所示,初始段(即位置点a和位置点b之间)对应的旋转角度为α,该旋转角度α为法向量和初始向量的夹角,其他的相邻的两个虚拟位置点之间的旋转角度的确定,也可以该相邻的两个虚拟位置点之间的方向向量与前一个方向向量的夹角而确定,在此不再赘述。
需要说明的是,如果在本次采集至少两个物理位置点之后,继续采集最终位置点对应的物理位置点之后的位置点,作为下一次获取的至少两个虚拟位置点,则该最终位置点可以作为下一批至少两个虚拟位置点中的初始位置点,即最终向量可以作为下一批至少两个虚拟位置点中的初始位置点的法向量。
S1405:根据每相邻的两个所述虚拟位置点之间的旋转角度和各个相邻的两个所述虚拟位置点之间的距离信息,获取该相邻的两个所述虚拟位置点对应的旋转时间。
作为一种实施方式,每次采集到的目标物体在移动路线上的至少两个物理位置点的方式,可以是根据上述采集周期采集一定采样时间段内的N个物理位置点。该采样时间段可以是5秒,该采集周期可以是1秒,也就是说,按照1秒钟的间隔连续采集5个物理位置点,也就是说两个物理位置点之间的时间为1秒,则采集的5个物理位置点,对应的总时间为5秒。
在一些实施例中,可以根据各个相邻的两个虚拟位置点之间的距离信息确定目标图像的旋转速度。例如,可以统计各个相邻的两个所述虚拟位置点之间的旋转角度,得到总的旋转角度,然后,根据各个相邻的两个虚拟位置点之间的距离信息确定总距离,然后,根据该总的旋转角度和总距离的比值能够确定每移动1米所转动的角度值,即得到单位移动距离对应的转动角度,然后,就能够确定相邻的两个虚拟位置点之间的旋转角度对应的移动距离长度,再根据预先获取的移动速度确定目标图像每移动单位距离所花费的时间,由此就能够得到相邻的两个虚拟位置点之间的旋转角度对应的旋转时间。其中,该移动速度可以是预先定义的,即该移动速度对应目标图像在移动轨迹内的移动速度而不必一定与目标物体的实际移动速度一致,当然,也可以是根据目标图像在所有位置点的总的距离与总的移动时间计算得到的速度,在此不做限定。
例如,总的旋转角度是60°,总距离是M,则能够计算出单位移动距离对应的转动角度为60/M,然后,假设所有位置点对应的总的时间为5秒,则移动速度为M/5,由此能够确定出转动速度为12°/秒,如果相邻的两个位置点之间的转动角度为24度,则对应的旋转时间为2秒。
作为另一种实施方式,根据所述总距离信息确定转动速度,根据所述转动速度和每相邻的两个虚拟位置点之间的旋转角度,获取该相邻的两个虚拟位置点对应的旋转时间。
其中,所述转动速度用于表示转动指定角度所需要的时间。其中,该指定角度可以根据需求而设定,具体地,可以根据目标图像的移动轨迹的移动轨迹中,目标图像的转动效果而设定。
作为一种实施方式,获取本次所采集的所有的物理位置点对应的虚拟位置点内,每相邻的两个虚拟位置点对应的距离,然后将所有的距离求和得到总距离,记为totalDistance。
然后,根据总距离totalDistance得到的转动速度为c/totalDistance,记为rotateRoundTime,其中,c为系数,根据实际需求而设定,用于调整转动速度的快慢,该rotateRoundTime能够表示目标图像转动360°所需要的时间。
然后,根据以下公式获取相邻的两个虚拟位置点对应的旋转时间:
rotateTime=(w/360°)*rotateRoundTime;
其中,w为相邻的两个虚拟位置点之间的旋转角度,rotateTime为该相邻的两个虚拟位置点的旋转时间。
S1406:根据每相邻的两个所述虚拟位置点之间的旋转角度和旋转时间得到每相邻的两个所述虚拟位置点对应的旋转信息。
将上述得到的每相邻的两个虚拟位置点对应的旋转角度和旋转时间,作为该相邻的两个所述虚拟位置点对应的旋转信息。
另外,考虑到目标物体在真实场景中,在转弯的时候并非在某一个转角原地旋转,而会在转角之前和之后一段时间内进行旋转,因此可以把旋转时间分成两部分,前一半旋转时间是在虚拟位置点之前的某个位置开始旋转,后一半时间是在该虚拟位置点之后的某个位置停止旋转。
具体地,每相邻的两个所述虚拟位置点对应的旋转时间包括时间起点和时间终点,按照所述目标物体的移动路线,该相邻的两个所述虚拟位置点分别为第一位置点和第二位置点。例如,图15所示,中间段中的位置点b和位置点c中,按照目标物体的移动路线,目标物体先到达位置点b对应的物理位置点,再到达位置点c对应的物理位置点,位置点b可以作为位置点b和位置点c中的第一位置点,位置点c可以作为位置点b和位置点c中的第二位置点。
则相邻的两个虚拟位置点对应的旋转时间中,该旋转时间的时间起点对应于所述第一位置点和所述第二位置点之间的第一指定位置,该旋转时间的时间终点对应于所述第二位置点和第三位置点之间的第二指定位置,其中,所述第三位置点为所述第二位置点之后的位置点,具体地,第三位置点为所述第二位置点之后的相邻的位置点。
在一些实施例中,目标图像移动至第一指定位置的时候,开始对应于该旋转时间的旋转动作,在目标图像停止对应于该旋转时间的旋转动作的时候,目标图像移动至第二指定位置。
如图16所示,位置点b和位置点c对应的旋转时间中,其时间起点对应的位置为第一指定位置b1,其时间终点对应的位置为第二指定位置b2。可以看出,第一指定位置b1位于位置点a和位置点b之间,第二指定位置b2位于位置点b和位置点c之间,也就是说,位置点b和位置点c两个位置点对应的旋转时间的时间起点可以是在目标图像到达b之前就开始,在到达c之前就结束。
在一些实施例中,相邻的两个虚拟位置点的旋转时间对应的第一指定位置,可以位于该相邻的两个虚拟位置点之前的相邻的两个所述位置点对应的第二指定位置之后或者与该第二指定位置重合,即该第一指定位置可以位于前一个第二指定位置之后或者与该前一个第二指定位置重合。如图16所示,位置点c和位置点d两个位置点的旋转时间的时间起点对应的第一指定位置c1位于位置点b和位置点c两个位置点的旋转时间的时间终点对应的第二指定位置b2之后。
作为一种实施方式,相邻的两个虚拟位置点的旋转时间对应的第一指定位置与该相邻的两个位置点之前的相邻的两个虚拟位置点的旋转时间对应的第二指定位置,均位于该相邻的两个虚拟位置点之前的相邻的两个虚拟位置点之间,且该第一指定位置和第二指定位置可以分居该相邻的两个虚拟位置点之前的相邻的两个虚拟位置点之间的中间位置的两侧,也可以与该中间位置重合。
如图17所示,位置点b和位置点c之间具有第二指定位置b2和第一指定位置c1,其中,第二指定位置b2为位置点b和位置点c之间的旋转时间的时间终点所对应的位置,第一指定位置c1为位置点c和位置点d之间的旋转时间的时间起点所对应的位置。位置点b和位置点c之间的中间位置为z。第二指定位置b2位于位置点b和中间位置z之间,第一指定位置c1位于中间位置z和位置点c之间,即第二指定位置b2和第一指定位置c1分居中间位置z两侧。
在一些实施例中,该第二指定位置b2与中间位置z之间的距离记为第一距离,该第一指定位置c1与中间位置z之间的距离记为第二距离。作为一种实施方式,该第一距离和第二距离均为较小的数值。例如,该第一距离和第二距离均小于指定距离值,该指定距离值不大于该位置点b和位置点c之间的距离的M%,其中,M可以是0至20的数值。例如,该M可以是5,即第一距离和第二距离均为该位置点b和位置点c之间的距离的5%。从而,在第二指定位置b2与第一指定位置c1之间的距离内,目标图像没有旋转,可以仅平移,且该第二指定位置b2与第一指定位置c1之间的距离即第一距离和第二距离之和较小,以便目标图像的平移距离较短,且不影响目标图像旋转的连贯性。其中,平移是指目标图像由一个虚拟位置点朝向与该虚拟位置点相邻的虚拟位置点直线移动,即不旋转。
作为一种实施方式,相邻的两个所述虚拟位置点的旋转时间对应的第一指定位置,可以位于该相邻的两个所述虚拟位置点之前的相邻的两个所述虚拟位置点对应的第二指定位置重合,就上述的第二指定位置b2与第一指定位置c1可以重合,即在目标图像完成第二指定位置b2对应的旋转时间之后,立刻开始第一指定位置c1对应的旋转时间。
在一些实施例中,所述第一指定位置为所述第一位置点和所述第二位置点之间的中间位置,所述第二指定位置为所述第二位置点和第三位置点之间的中间位置。以图17为例,第二指定位置b2、中间位置z和第一指定位置c1重合。
在一些实施例中,初始位置点之前不存在位置点,最终位置点之后不存在位置点,则初始段对应的旋转时间的时间起点所对应的第一指定位置可以是初始位置点,最终段对应的旋转时间的时间终点所对应的第二指定位置可以是最终位置点。
在另一些实施中,初始段对应的旋转时间可以根据上述实施方式确定,当然,考虑到目标图像由初始位置进入的时候,可以保持平移而不旋转,则该初始段对应的旋转时间也可以为0。
S1407:根据每相邻的两个所述虚拟位置点对应的旋转信息,确定在所述地图界面内的移动轨迹。
因此,本申请实施例提供的数据处理方法,不仅可以实现上述方法实施例中的效果,而且还能够合理确定旋转时间的起点和终点,使得目标图像在到达预先转动旋转角度的虚拟位置点之前就预先开始旋转,更加符合目标物体在实际移动路线上的转弯效果。
作为一种实施方式,参考前述实施例,目标图像在移动轨迹中,在相邻两个虚拟位置点之间的移动包括平移动画和旋转动画,平移动画对应的时间为目标图像平移的时间段,即移动时间段,旋转动画对应的时间段为旋转时间对应的时间段。
因此,对于获取到的位置点,需要确定该位置点是仅用于平移还是用于旋转,亦或是同时用于平移和旋转。如图18所示,图18示出的数据处理方法包括:S1801至S1807。
S1801:获取目标物体在真实环境内移动时移动路线上的至少两个物理位置点。S1802:对所获取的物理位置点执行压缩处理。
作为一种实施方式,为了很好的实现平滑移动的效果,该方法的执行主体为程序组件,该程序组件可以被进程在上述的目标客户端内。该目标客户端的开发者会指定平滑移动的显示内容的显示界面,即指定在某个视图view内展示平滑移动效果。
程序组件在获取到多个物理位置点之后,会对该物理位置点做压缩处理,以去除无效的物理位置点,避免对整个显示效果造成干扰。
作为一种实施方式,程序组件依次获取目标客户端采集的目标物体的物理位置点,可以针对在获取到初始位置点之后每次获取的物理位置点执行压缩处理。具体地,程序组件获取到物理位置点之后,确定该物理位置点与前一位置点之间的距离是否大于指定阈值,如果大于,则将该物理位置点保留并继续获取物理位置点直至获取的物理位置点的数量满足数量需求,如果小于或等于,则舍弃该物理位置点,并继续获取物理位置点直至获取的物理位置点的数量满足数量需求。其中,数量需求可以是预先而定,例如,该数量需求可以是5。
在一些实施例中,该物理位置点与前一物理位置点之间的距离可以是该物理位置点的经纬度与前一物理位置点的经纬度之间的差值,即经纬差,该指定阈值可以是0.0000001,即如果物理位置点与前一物理位置点之间的经纬差大于0.0000001则将该位置点保留,并且执行S1803的操作。
S1803:确定每个所述物理位置点对应的虚拟位置点,每个所述虚拟位置点在地图界面内的位置对应一个所述物理位置点在所述移动路线上的位置。
S1804:获取目标图像的平移动画。
作为一种实施方式,针对所有虚拟位置点进行原始距离分片操作和原始时间分片操作。其中,原始距离分片操作是对于所有的虚拟位置点中,计算相邻的两个虚拟位置点之间的距离而得到的每相邻的两个虚拟位置点之间的直线距离的占比,具体地,获取各相邻的两个虚拟位置点之间的直线距离,将所有直线距离累加得到总直线距离,得到每相邻的两个虚拟位置点之间的直线距离与总直线距离的比值,即前述占比。
原始时间分片操作,是指根据每相邻的两个虚拟位置点之间的直线距离的占比和所有虚拟位置点对应的总时间而确定每相邻的两个虚拟位置点之间的平移时间。例如,将总时间与每相邻的两个虚拟位置点之间的直线距离的占比相乘,得到的结果为该每相邻的两个虚拟位置点之间的平移时间。
根据平移时间和平移距离,以及各个虚拟位置点在地图界面年内的位置,得到目标图像的平移动画。
S1805:判断是否需要旋转。
作为一种实施方式,通过目标客户端发送的指示信息能够确定是否需要旋转,则该指示信息用于表示需要在展示目标图像的移动轨迹的时候,使得目标图像能够一边移动一边旋转。在一些实施例中,该指示信息可以是指定参数,例如,该指定参数可以是needRotate。则确定需要旋转的代码实现如下:
(void)translateWithAnnotationView:(QAnnotationView*)annotationView
locations:(NSArray<id<QMULocation>>*)locations
duration:(CFTimeInterval)duration
rotateEnabled:(BOOL)needRotate
其中,annotationView表示平滑移动的对象,locations表示平滑移动需要经过的经纬度坐标点串,duration表示平滑移动时间,needRotate表示平滑移动过程中annotationView是否需要沿移动方向执行旋转动画。则如果needRotate为YES,则判定目标图像需要旋转,则如果needRotate为NO,则判定目标图像不需要旋转。
S1806:获取目标图像的旋转动画。
S1807:确定在地图界面内的移动轨迹。
其中,确定旋转动画的方式,可以是根据上述的旋转信息所确定的显示内容,然后,再根据平移动画更新该显示内容,更新后的显示内容作为目标图像的移动轨迹,即将平移动画和旋转动画合成之后得到的内容,即为目标图像的移动轨迹。
在一些实施例中,将每相邻两个虚拟位置点之间的平移时间累加作为时间终止值,该时间终止值可以作为最终位置点之后的相邻的虚拟位置点的平移时间的起点。
因此,本申请实施例提供的数据处理方法,不仅可以实现上述方法实施例中的效果,而且还能够对采集到的位置点压缩,避免使用无效的位置点确定显示内容。
另外,考虑到不同的相邻虚拟两位置点对应的旋转时间和旋转角度可能不同,如果前后两段的旋转时间相差过大,则会导致目标图像的旋转过于突兀。因此,请参阅图19所示的数据处理方法,该方法包括:S1901至S1910。
S1901:获取目标物体在真实环境内移动时移动路线上的至少两个物理位置点。
S1902:确定每个所述物理位置点对应的虚拟位置点,每个所述虚拟位置点在地图界面内的位置对应一个所述物理位置点在所述移动路线上的位置;
S1903:获取所述至少两个虚拟位置点中每相邻的两个所述虚拟位置点之间的距离信息和方向信息。
S1904:获取当前相邻的两个所述虚拟位置点对应的旋转角度以及目标图像旋转该旋转角度所需要的时间,作为第一旋转时间。
于本申请实施例中,基于所述距离信息和方向信息,根据时间修改规则确定每相邻的两个所述虚拟位置点对应的旋转信息,其中,时间修改规则包括S1904至S1908,即根据时间修改规则确定每相邻的两个虚拟位置点对应的旋转信息。
其中,获取目标图像旋转该旋转角度所需要的时间,即旋转时间的实施方式可以参考前述实施例。
S1905:获取目标图像在当前相邻的两个所述虚拟位置点之间移动所需要的平移时间。
其中,确定平移时间的实施方式,也可以参考前述实施例,在此不再赘述。
S1906:判断所述平移时间和第二旋转时间是否满足指定条件。
所述第二旋转时间为与当前相邻的两个所述虚拟位置点之前的相邻的两个所述虚拟位置点对应的所述旋转时间。
以上述图16和17中为例,假设当前相邻的两个所述虚拟位置点分别为位置点b和位置点c,确定目标图像在该位置点b和位置点c之间移动的时候,旋转该位置点b和位置点c对应的旋转角度所需要的时间为第一旋转时间,记为bcrotateTime,位置点a和位置点b之间的旋转时间为第二旋转时间,记为abrotateTime。位置点b和位置点c之间的平移时间记为bcTime。
其中,平移时间和第二旋转时间满足指定条件表示与第二旋转时间相比,平移时间过小,则如果第二旋转时间的时间终点位于该平移时间对应的两个位置点之间,会导致角度转动过快而导致转动不够平滑。
作为一种实施方式,判断所述平移时间和第二旋转时间是否满足指定条件的实施方式可以是获取平移时间和第二旋转时间的比值,如果该比值,小于指定比值,则判定所述平移时间和第二旋转时间满足指定条件;否则,判定所述平移时间和第二旋转时间不满足指定条件。其中,该指定比值可以是一个较小的数值,例如,0.1至0.5之间的数值。
作为另一种实施方式,判断所述平移时间和第二旋转时间是否满足指定条件的实施方式可以是,判断所述平移时间是否小于第二旋转时间,若小于,则判定所述平移时间和第二旋转时间满足指定条件;若大于或等于,则判定所述平移时间和第二旋转时间不满足指定条件。
以上述位置点b和位置点c为当前相邻的两个虚拟位置点为例,如果bcTime小于abrotateTime,则判定所述平移时间和第二旋转时间满足指定条件,否则,判定所述平移时间和第二旋转时间不满足指定条件。
在一些实施例中,可以使用MIN函数,通过MIN(2*(bcTime-abrotateTime),2*(bcrotateTime)),如果函数结果为负值,则表明bcTime小于abrotateTime,从而判定所述平移时间和第二旋转时间满足指定条件,否则,判定所述平移时间和第二旋转时间不满足指定条件。
S1907:将所述第一旋转时间作为当前相邻的两个所述虚拟位置点对应的旋转时间。
如果平移时间和第二旋转时间不满足指定条件,则将所述第一旋转时间作为当前相邻的两个所述虚拟位置点对应的旋转时间。
S1908:将所述当前相邻的两个所述虚拟位置点对应的旋转时间设置为指定数值。
其中,所述指定数值为大于0且小于0.1的数值。如果平移时间和第二旋转时间满足指定条件,将所述当前相邻的两个所述虚拟位置点对应的旋转时间设置为指定数值。由于指定数值为很小的数值,则旋转时间也很小,因此,在平移时间和第二旋转时间满足指定条件的时候,目标图像在当前相邻的两个所述虚拟位置点移动的时候,不旋转或者旋转的时间非常小,用户观察时,视觉感觉是目标图像在当前相邻的两个所述虚拟位置点未转动。于本申请实施例中,指定数值为0。
S1909:判断是否遍历完成。
如果未遍历完,即并非所有的相邻的两个虚拟位置点均对应有旋转信息,则将当前相邻的两个虚拟位置点之后相邻的两个虚拟位置点作为新的当前相邻的两个虚拟位置点,并返回执行S1904,直至获取到所有的相邻的两个位置点均对应的旋转信息。
S1910:根据每相邻的两个所述虚拟位置点对应的旋转信息,确定在所述地图界面内的移动轨迹。
因此,本申请实施例提供的数据处理方法,不仅可以实现上述方法实施例中的效果,而且还能够根据前后两个旋转时刻的关系,将前后旋转时刻差距较大的旋转时刻做优化处理,避免连续两次的旋转太过突兀。
请参阅图20,其示出了本申请实施例提供的一种数据处理装置的结构框图,该装置可以包括:第一获取单元2001、第二获取单元2002、第三获取单元2003、确定单元2004和处理单元2005。
第一获取单元2001,用于获取目标物体在真实环境内移动时移动路线上的至少两个物理位置点。
第二获取单元2002,用于确定每个所述物理位置点对应的虚拟位置点,每个所述虚拟位置点在地图界面内的位置对应一个所述物理位置点在所述移动路线上的位置。
第三获取单元2003,用于获取所述至少两个虚拟位置点中每相邻的两个所述虚拟位置点之间的距离信息和方向信息。
确定单元2004,用于根据所述距离信息和方向信息确定每相邻的两个所述虚拟位置点对应的旋转信息,所述旋转信息包括旋转角度和旋转时间,所述旋转时间用于表示所述目标物体的目标图像在相邻的两个虚拟位置点之间移动时旋转所述旋转角度所需时间,所述旋转时间对应的时间段与移动时间段至少部分重叠,所述移动时间段为所述目标图像在相邻的两个虚拟位置点之间移动时的时间段。
处理单元2004,用于根据每相邻的两个所述虚拟位置点对应的旋转信息,确定在所述地图界面内的移动轨迹,在所述移动轨迹内,所述目标物体对应的目标图像在所述移动轨迹上的每相邻的两个所述虚拟位置点之间移动的同时,根据每相邻的两个所述虚拟位置点对应的旋转信息旋转。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
请参阅图21,其示出了本申请实施例提供的一种数据处理装置的结构框图,该装置可以包括:第一获取单元2110、第二获取单元2120、第三获取单元2130、确定单元2140和处理单元2150。
第一获取单元2110,用于获取目标物体在真实环境内移动时移动路线上的至少两个物理位置点。
第二获取单元2120,用于确定每个所述物理位置点对应的虚拟位置点,每个所述虚拟位置点在地图界面内的位置对应一个所述物理位置点在所述移动路线上的位置。
第二获取单元2130,用于获取所述至少两个虚拟位置点中每相邻的两个所述虚拟位置点之间的距离信息和方向信息。
确定单元2140,用于根据所述距离信息和方向信息确定每相邻的两个所述虚拟位置点对应的旋转信息,所述旋转信息包括旋转角度和旋转时间,所述旋转时间用于表示所述目标物体的目标图像在相邻的两个虚拟位置点之间移动时旋转所述旋转角度所需时间,所述旋转时间对应的时间段与移动时间段至少部分重叠,所述移动时间段为所述目标图像在相邻的两个虚拟位置点之间移动时的时间段。
确定单元2140包括角度确定子单元2141、时间确定子单元2142和信息确定子单元2143。
角度确定子单元2141用于根据每相邻的两个所述虚拟位置点之间的方向信息,获取该相邻的两个所述虚拟位置点之间的旋转角度。
进一步地,角度确定子单元2141还用于根据每相邻的两个所述虚拟位置点之间的方向信息与该方向信息之前获取的方向信息,确定该相邻的两个所述虚拟位置点之间的旋转角度。
进一步地,角度确定子单元2141还用于若相邻的两个所述虚拟位置点为所述初始位置点与该初始位置点相邻的虚拟位置点,获取目标图像在所述初始位置点的移动方向,作为初始移动方向,根据所述初始位置点与所述初始位置点相邻的虚拟位置点之间的方向信息和所述初始移动方向,确定所述初始位置点与所述初始位置点相邻的虚拟位置点之间的旋转角度;
若相邻的两个所述虚拟位置点为所述初始位置点之后的两个虚拟位置点,则根据该相邻的两个所述虚拟位置点之间的方向信息与该方向信息之前获取的方向信息,确定该相邻的两个所述虚拟位置点之间的旋转角度。
时间确定子单元2142用于根据每相邻的两个所述虚拟位置点之间的旋转角度和各个相邻的两个所述虚拟位置点之间的距离信息,获取该相邻的两个所述虚拟位置点对应的旋转时间。
进一步地,时间确定子单元2142还用于根据各个相邻的两个所述虚拟位置点之间的距离信息得到总距离信息;根据所述总距离信息和每相邻的两个所述虚拟位置点之间的旋转角度,获取该相邻的两个所述虚拟位置点对应的旋转时间。
进一步地,时间确定子单元2142还用于根据所述总距离信息确定转动速度,所述转动速度用于表示转动指定角度所需要的时间;根据所述转动速度和每相邻的两个所述虚拟位置点之间的旋转角度,获取该相邻的两个所述虚拟位置点对应的旋转时间。
进一步地,时间确定子单元2142还用于根据下式获取相邻的两个所述虚拟位置点对应的旋转时间:
rotateTime=(w/360°)*rotateRoundTime;
其中,w为相邻的两个所述虚拟位置点之间的旋转角度,rotateRoundTime为转动速度,rotateTime为该相邻的两个所述虚拟位置点的旋转时间。
进一步地,每相邻的两个所述虚拟位置点对应的旋转时间包括时间起点和时间终点,按照所述目标物体的移动路线,该相邻的两个所述虚拟位置点分别为第一位置点和第二位置点;所述时间起点对应于所述第一位置点和所述第二位置点之间的第一指定位置,所述时间终点对应于所述第二位置点和第三位置点之间的第二指定位置,其中,所述第三位置点为所述第二位置点之后的虚拟位置点。
所述第一指定位置为所述第一位置点和所述第二位置点之间的中间位置,所述第二指定位置为所述第二位置点和第三位置点之间的中间位置。
处理单元2140,用于根据每相邻的两个所述虚拟位置点对应的旋转信息,确定在所述地图界面内的移动轨迹,所述目标物体在所述移动轨迹上的每相邻的两个所述虚拟位置点之间移动的同时,根据每相邻的两个所述虚拟位置点对应的旋转信息旋转。
进一步地,确定单元2140还用于基于所述距离信息和方向信息,根据时间修改规则确定每相邻的两个所述虚拟位置点对应的旋转信息;所述时间修改规则包括:获取当前相邻的两个所述虚拟位置点对应的旋转角度以及所述目标物体旋转该旋转角度所需要的时间,作为第一旋转时间;获取目标物体在当前相邻的两个所述虚拟位置点之间移动所需要的平移时间;判断所述平移时间和第二旋转时间是否满足指定条件,所述第二旋转时间为与当前相邻的两个所述虚拟位置点之前的相邻的两个所述虚拟位置点对应的所述旋转时间;若满足指定条件,则将所述当前相邻的两个所述虚拟位置点对应的旋转时间设置为指定数值,所述指定数值为大于0且小于0.1的数值。若不满足指定条件,则将所述第一旋转时间作为当前相邻的两个所述虚拟位置点对应的旋转时间。
进一步地,确定单元2140还用于判断所述平移时间是否小于第二旋转时间;若小于,则判定所述平移时间和第二旋转时间满足指定条件;若大于或等于,则判定所述平移时间和第二旋转时间不满足指定条件。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,模块相互之间的耦合可以是电性,机械或其它形式的耦合。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
请参考图22,其示出了本申请实施例提供的一种电子设备的结构框图。该电子设备10可以是智能手机、平板电脑、电子书等能够运行应用程序的电子设备,于本申请实施例中,该电子设备可以是上述用户终端,该用户终端内安装有目标客户端和程序组件。本申请中的电子设备10可以包括一个或多个如下部件:处理器110、存储器120、以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器120中并被配置为由一个或多个处理器110执行,一个或多个程序配置用于执行如前述方法实施例所描述的方法。
处理器110可以包括一个或者多个处理核。处理器110利用各种接口和线路连接整个电子设备10内的各个部分,通过运行或执行存储在存储器120内的指令、程序、代码集或指令集,以及调用存储在存储器120内的数据,执行电子设备10的各种功能和处理数据。可选地,处理器110可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器110可集成中央处理器(CentralProcessing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器110中,单独通过一块通信芯片进行实现。
存储器120可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器120可用于存储指令、程序、代码、代码集或指令集。存储器120可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储终端100在使用中所创建的数据(比如电话本、音视频数据、聊天记录数据)等。
请参考图23,其示出了本申请实施例提供的一种计算机可读存储介质的结构框图。该计算机可读介质2300中存储有程序代码,所述程序代码可被处理器调用执行上述方法实施例中所描述的方法。
计算机可读存储介质2300可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读存储介质2300包括非易失性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质2300具有执行上述方法中的任何方法步骤的程序代码2310的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码2310可以例如以适当形式进行压缩。
综上所述,本申请提供的数据处理方法、装置、电子设备及计算机可读介质,在目标物体在移动轨迹上移动时,获取目标物体在轨迹上的至少两个位置点,根据相邻的两个位置点之间的距离和方向信息确定目标物体在该两个位置点之间移动时的旋转角度和旋转时间,该旋转时间为目标物体在相邻的两个位置点之间移动时旋转所述旋转角度所需时间,所述旋转时间与所述目标物体在相邻的两个位置点之间移动时的时间段至少部分重叠,从而,目标物体移动的同时目标物体会旋转,即目标物体一边移动一边旋转。再根据该旋转角度和旋转时间确定显示内容,该显示内容显示的时候,能够观察到目标物体在相邻的两个所述位置点边移动的同时边根据旋转信息旋转,从而能够使得用户观察到的目标物体移动到弯道的时候,能够以平滑转动的方式在弯道上移动,使得该目标物体所显示的轨迹更加合理。
并且,在应用到网约车场景的时候,能够使得乘客体验大大提升,可以实时知道司机位置并且平滑的移动。本申请能够提升用户体验而且随着用户体验的提升,会吸引更多的用户使用该网约车平台。本申请能够避免道路转弯处可能会出现转弯不够顺滑或者摆头方向不对,本申请能够确实的保证乘客端的司机车辆显示正确并且转弯顺畅直线处平滑移动。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

Claims (15)

1.一种数据处理方法,其特征在于,包括:
获取目标物体在真实环境内移动时移动路线上的至少两个物理位置点;
确定每个所述物理位置点对应的虚拟位置点,每个所述虚拟位置点在地图界面内的位置对应一个所述物理位置点在所述移动路线上的位置;
获取所述至少两个虚拟位置点中每相邻的两个所述虚拟位置点之间的距离信息和方向信息;
根据所述距离信息和方向信息确定每相邻的两个所述虚拟位置点对应的旋转信息;
根据每相邻的两个所述虚拟位置点对应的旋转信息,确定在所述地图界面内的移动轨迹,所述目标物体对应的目标图像在所述移动轨迹上的每相邻的两个所述虚拟位置点之间移动的同时,根据每相邻的两个所述虚拟位置点对应的旋转信息旋转。
2.根据权利要求1所述的方法,其特征在于,所述旋转信息包括旋转角度和旋转时间,所述根据所述距离信息和方向信息确定每相邻的两个所述虚拟位置点对应的旋转信息,包括:
根据每相邻的两个所述虚拟位置点之间的方向信息,获取该相邻的两个所述虚拟位置点之间的旋转角度;
根据每相邻的两个所述虚拟位置点之间的旋转角度和各个相邻的两个所述虚拟位置点之间的距离信息,获取该相邻的两个所述虚拟位置点对应的旋转时间;
根据每相邻的两个所述虚拟位置点之间的旋转角度和旋转时间得到每相邻的两个所述虚拟位置点对应的旋转信息。
3.根据权利要求2所述的方法,其特征在于,所述根据每相邻的两个所述虚拟位置点之间的旋转角度和各个相邻的两个所述虚拟位置点之间的距离信息,获取该相邻的两个所述虚拟位置点对应的旋转时间,包括:
根据各个相邻的两个所述虚拟位置点之间的距离信息得到总距离信息;
根据所述总距离信息和每相邻的两个所述虚拟位置点之间的旋转角度,获取该相邻的两个所述虚拟位置点对应的旋转时间。
4.根据权利要求3所述的方法,其特征在于,所述根据所述总距离信息和每相邻的两个所述虚拟位置点之间的旋转角度,获取该相邻的两个所述虚拟位置点对应的旋转时间,包括:
根据所述总距离信息确定转动速度,所述转动速度用于表示转动指定角度所需要的时间;
根据所述转动速度和每相邻的两个所述虚拟位置点之间的旋转角度,获取该相邻的两个所述虚拟位置点对应的旋转时间。
5.根据权利要求4所述的方法,其特征在于,所述根据所述转动速度和每相邻的两个所述虚拟位置点之间的旋转角度,获取该相邻的两个所述虚拟位置点对应的旋转时间,包括:
根据下式获取相邻的两个所述虚拟位置点对应的旋转时间:
rotateTime=(w/360°)*rotateRoundTime;
其中,w为相邻的两个所述虚拟位置点之间的旋转角度,rotateRoundTime为转动速度,rotateTime为该相邻的两个所述虚拟位置点的旋转时间。
6.根据权利要求2所述的方法,其特征在于,所述根据每相邻的两个所述虚拟位置点之间的方向信息,获取该相邻的两个所述虚拟位置点之间的旋转角度,包括:
根据每相邻的两个所述虚拟位置点之间的方向信息与该方向信息之前获取的方向信息,确定该相邻的两个所述虚拟位置点之间的旋转角度。
7.根据权利要求6所述的方法,其特征在于,所述至少两个虚拟位置点包括初始位置点;根据每相邻的两个所述虚拟位置点之间的方向信息与该方向信息之前获取的方向信息,确定该相邻的两个所述虚拟位置点之间的旋转角度,包括:
若相邻的两个所述虚拟位置点为所述初始位置点与该初始位置点相邻的虚拟位置点,获取目标图像在所述初始位置点的移动方向,作为初始移动方向,根据所述初始位置点与所述初始位置点相邻的虚拟位置点之间的方向信息和所述初始移动方向,确定所述初始位置点与所述初始位置点相邻的虚拟位置点之间的旋转角度;
若相邻的两个所述虚拟位置点为所述初始位置点之后的两个虚拟位置点,则根据该相邻的两个所述虚拟位置点之间的方向信息与该方向信息之前获取的方向信息,确定该相邻的两个所述虚拟位置点之间的旋转角度。
8.根据权利要求1所述的方法,其特征在于,所述旋转信息包括旋转时间,每相邻的两个所述虚拟位置点对应的旋转时间包括时间起点和时间终点,按照所述目标物体的移动路线,该相邻的两个所述虚拟位置点分别为第一位置点和第二位置点;
所述时间起点对应于所述第一位置点和所述第二位置点之间的第一指定位置,所述时间终点对应于所述第二位置点和第三位置点之间的第二指定位置,其中,所述第三位置点为所述第二位置点之后的位置点。
9.根据权利要求8所述的方法,其特征在于,所述第一指定位置为所述第一位置点和所述第二位置点之间的中间位置,所述第二指定位置为所述第二位置点和第三位置点之间的中间位置。
10.根据权利要求1所述的方法,其特征在于,所述旋转信息包括旋转角度和旋转时间,所述根据所述距离信息和方向信息确定每相邻的两个所述虚拟位置点对应的旋转信息,包括:
基于所述距离信息和方向信息,根据时间修改规则确定每相邻的两个所述虚拟位置点对应的旋转信息;所述时间修改规则包括:
获取当前相邻的两个所述虚拟位置点对应的旋转角度以及所述目标物体旋转该旋转角度所需要的时间,作为第一旋转时间;
获取目标物体在当前相邻的两个所述虚拟位置点之间移动所需要的平移时间;
判断所述平移时间和第二旋转时间是否满足指定条件,所述第二旋转时间为与当前相邻的两个所述虚拟位置点之前的相邻的两个所述虚拟位置点对应的所述旋转时间;
若满足指定条件,则将所述当前相邻的两个所述虚拟位置点对应的旋转时间设置为指定数值,所述指定数值为大于0且小于0.1的数值。
11.根据权利要求10所述的方法,其特征在于,所述时间修改规则还包括:
若不满足指定条件,则将所述第一旋转时间作为当前相邻的两个所述虚拟位置点对应的旋转时间。
12.根据权利要求10所述的方法,其特征在于,所述判断所述平移时间和第二旋转时间是否满足指定条件,包括:
判断所述平移时间是否小于第二旋转时间;
若小于,则判定所述平移时间和第二旋转时间满足指定条件;
若大于或等于,则判定所述平移时间和第二旋转时间不满足指定条件。
13.一种数据处理装置,其特征在于,包括:
第一获取单元,用于获取目标物体在真实环境内移动时移动路线上的至少两个物理位置点;
第二获取单元,用于确定每个所述物理位置点对应的虚拟位置点,每个所述虚拟位置点在地图界面内的位置对应一个所述物理位置点在所述移动路线上的位置;
第三获取单元,用于获取所述至少两个虚拟位置点中每相邻的两个所述虚拟位置点之间的距离信息和方向信息;
确定单元,用于根据所述距离信息和方向信息确定每相邻的两个所述虚拟位置点对应的旋转信息;
处理单元,用于根据每相邻的两个所述虚拟位置点对应的旋转信息,确定在所述地图界面内的移动轨迹,所述目标物体对应的目标图像在所述移动轨迹上的每相邻的两个所述虚拟位置点之间移动的同时,根据每相邻的两个所述虚拟位置点对应的旋转信息旋转。
14.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器;
一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行如权利要求1-12任一项所述的方法。
15.一种计算机可读介质,其特征在于,所述可读介质存储有处理器可执行的程序代码,所述程序代码被所述处理器执行时使所述处理器执行权利要求1-12任一项所述方法。
CN202010451504.0A 2020-05-25 2020-05-25 数据处理方法、装置、电子设备及计算机可读介质 Active CN111624636B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010451504.0A CN111624636B (zh) 2020-05-25 2020-05-25 数据处理方法、装置、电子设备及计算机可读介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010451504.0A CN111624636B (zh) 2020-05-25 2020-05-25 数据处理方法、装置、电子设备及计算机可读介质

Publications (2)

Publication Number Publication Date
CN111624636A true CN111624636A (zh) 2020-09-04
CN111624636B CN111624636B (zh) 2023-06-20

Family

ID=72259093

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010451504.0A Active CN111624636B (zh) 2020-05-25 2020-05-25 数据处理方法、装置、电子设备及计算机可读介质

Country Status (1)

Country Link
CN (1) CN111624636B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113534807A (zh) * 2021-07-21 2021-10-22 北京优锘科技有限公司 一种实现机器人巡检可视化的方法、装置、设备和存储介质

Citations (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0355232A2 (en) * 1988-08-23 1990-02-28 Aisin Aw Co., Ltd. Road drawing system for a navigation apparatus
JP2005326179A (ja) * 2004-05-12 2005-11-24 Denso Corp ナビゲーション装置
CN1821719A (zh) * 2005-02-16 2006-08-23 Lg电子株式会社 导航系统中引导移动物体的行驶路线
DE102008021235A1 (de) * 2008-02-25 2009-09-03 Navigon Ag Verfahren zum Betrieb eines Navigationsgeräts
CN101750090A (zh) * 2009-12-30 2010-06-23 东软集团股份有限公司 利用轨迹点导航的导航装置
CN101922939A (zh) * 2009-06-11 2010-12-22 高德信息技术有限公司 一种导航过程中的地图匹配方法和装置
CN102967317A (zh) * 2011-08-29 2013-03-13 爱信艾达株式会社 移动引导系统、移动引导装置、移动引导方法和计算机程序
CN102997929A (zh) * 2011-09-08 2013-03-27 昆达电脑科技(昆山)有限公司 交互式模拟导航方法、电脑程序产品及导航装置
US20130166206A1 (en) * 2011-03-31 2013-06-27 Aisin Aw Co., Ltd. Travel guidance system, travel guidance apparatus, travel guidance method and computer program
CN103206952A (zh) * 2012-01-16 2013-07-17 联想(北京)有限公司 定位方法及装置
CN104641336A (zh) * 2012-07-16 2015-05-20 三星电子株式会社 移动终端中用于移动对象的方法和装置
US20160212384A1 (en) * 2015-01-20 2016-07-21 Fujitsu Ten Limited Image generation apparatus
US20170167889A1 (en) * 2015-12-14 2017-06-15 International Business Machines Corporation Road sinuosity to enhance speed approximation in road navigation
CN107346174A (zh) * 2017-06-15 2017-11-14 武汉秀宝软件有限公司 一种现实环境与虚拟环境的交互方法及系统
CN107796394A (zh) * 2016-09-05 2018-03-13 华为终端(东莞)有限公司 一种车辆室内定位方法、装置、系统及可穿戴式智能设备
CN108021014A (zh) * 2016-11-02 2018-05-11 卡西欧计算机株式会社 模拟显示装置、电子表、显示动作控制方法及存储介质
CN108355352A (zh) * 2018-01-31 2018-08-03 网易(杭州)网络有限公司 虚拟物体控制方法及装置、电子设备、存储介质
CN108955713A (zh) * 2017-05-27 2018-12-07 腾讯科技(北京)有限公司 行驶轨迹的显示方法及装置
CN110052027A (zh) * 2019-04-26 2019-07-26 腾讯科技(深圳)有限公司 虚拟场景中的虚拟对象控制方法、装置、设备及存储介质
CN110595487A (zh) * 2019-07-24 2019-12-20 平安科技(深圳)有限公司 行车轨迹生成方法、装置、计算机设备及存储介质
CN110694274A (zh) * 2019-10-15 2020-01-17 网易(杭州)网络有限公司 虚拟车辆的行驶状态预测方法、装置及电子设备
CN110874100A (zh) * 2018-08-13 2020-03-10 北京京东尚科信息技术有限公司 用于使用视觉稀疏地图进行自主导航的系统和方法
CN111051818A (zh) * 2017-08-04 2020-04-21 谷歌有限责任公司 提供导航方向
CN111044061A (zh) * 2018-10-12 2020-04-21 腾讯大地通途(北京)科技有限公司 一种导航方法、装置、设备及计算机可读存储介质

Patent Citations (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0355232A2 (en) * 1988-08-23 1990-02-28 Aisin Aw Co., Ltd. Road drawing system for a navigation apparatus
JP2005326179A (ja) * 2004-05-12 2005-11-24 Denso Corp ナビゲーション装置
CN1821719A (zh) * 2005-02-16 2006-08-23 Lg电子株式会社 导航系统中引导移动物体的行驶路线
DE102008021235A1 (de) * 2008-02-25 2009-09-03 Navigon Ag Verfahren zum Betrieb eines Navigationsgeräts
CN101922939A (zh) * 2009-06-11 2010-12-22 高德信息技术有限公司 一种导航过程中的地图匹配方法和装置
CN101750090A (zh) * 2009-12-30 2010-06-23 东软集团股份有限公司 利用轨迹点导航的导航装置
US20130166206A1 (en) * 2011-03-31 2013-06-27 Aisin Aw Co., Ltd. Travel guidance system, travel guidance apparatus, travel guidance method and computer program
CN102967317A (zh) * 2011-08-29 2013-03-13 爱信艾达株式会社 移动引导系统、移动引导装置、移动引导方法和计算机程序
CN102997929A (zh) * 2011-09-08 2013-03-27 昆达电脑科技(昆山)有限公司 交互式模拟导航方法、电脑程序产品及导航装置
CN103206952A (zh) * 2012-01-16 2013-07-17 联想(北京)有限公司 定位方法及装置
CN104641336A (zh) * 2012-07-16 2015-05-20 三星电子株式会社 移动终端中用于移动对象的方法和装置
US20160212384A1 (en) * 2015-01-20 2016-07-21 Fujitsu Ten Limited Image generation apparatus
US20170167889A1 (en) * 2015-12-14 2017-06-15 International Business Machines Corporation Road sinuosity to enhance speed approximation in road navigation
CN107796394A (zh) * 2016-09-05 2018-03-13 华为终端(东莞)有限公司 一种车辆室内定位方法、装置、系统及可穿戴式智能设备
CN108021014A (zh) * 2016-11-02 2018-05-11 卡西欧计算机株式会社 模拟显示装置、电子表、显示动作控制方法及存储介质
CN108955713A (zh) * 2017-05-27 2018-12-07 腾讯科技(北京)有限公司 行驶轨迹的显示方法及装置
CN107346174A (zh) * 2017-06-15 2017-11-14 武汉秀宝软件有限公司 一种现实环境与虚拟环境的交互方法及系统
CN111051818A (zh) * 2017-08-04 2020-04-21 谷歌有限责任公司 提供导航方向
CN108355352A (zh) * 2018-01-31 2018-08-03 网易(杭州)网络有限公司 虚拟物体控制方法及装置、电子设备、存储介质
CN110874100A (zh) * 2018-08-13 2020-03-10 北京京东尚科信息技术有限公司 用于使用视觉稀疏地图进行自主导航的系统和方法
CN111044061A (zh) * 2018-10-12 2020-04-21 腾讯大地通途(北京)科技有限公司 一种导航方法、装置、设备及计算机可读存储介质
CN110052027A (zh) * 2019-04-26 2019-07-26 腾讯科技(深圳)有限公司 虚拟场景中的虚拟对象控制方法、装置、设备及存储介质
CN110595487A (zh) * 2019-07-24 2019-12-20 平安科技(深圳)有限公司 行车轨迹生成方法、装置、计算机设备及存储介质
CN110694274A (zh) * 2019-10-15 2020-01-17 网易(杭州)网络有限公司 虚拟车辆的行驶状态预测方法、装置及电子设备

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
C. CHRISTOU, A. TZANAVARI, K. HERAKLEOUS, C. POULLIS: "Navigation in Virtual Reality Comparison of Gan-Directed and ointing Motion Control" *
于英浩: "基于虚拟现实的飞行器飞行状态监测系统设计" *
刘艳,黄珑: "在线地图模拟飞行轨迹的设计与实现" *
秦政: "基于移动增强现实的校园导航方法研究" *
郑菲菲,宋丽红,董静: "基于增强现实技术的导航系统研究" *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113534807A (zh) * 2021-07-21 2021-10-22 北京优锘科技有限公司 一种实现机器人巡检可视化的方法、装置、设备和存储介质
CN113534807B (zh) * 2021-07-21 2022-08-19 北京优锘科技有限公司 一种实现机器人巡检可视化的方法、装置、设备和存储介质

Also Published As

Publication number Publication date
CN111624636B (zh) 2023-06-20

Similar Documents

Publication Publication Date Title
EP3304945B1 (en) System, method, and apparatus for data processing and display
EP3467790B1 (en) Information processing device, information processing method, and storage medium
CN109141464A (zh) 导航变道提示方法和装置
CN105333883B (zh) 一种用于抬头显示器的导航路径轨迹显示方法和装置
CN103116451A (zh) 一种智能终端的虚拟角色交互方法、装置和系统
EP2878925B1 (en) Method and apparatus for probe-based routing
CN103905976A (zh) 一种社交网络用户查找方法、终端、服务器及系统
CN114641668A (zh) 拼车应用程序中的增强现实寻路
US20190219699A1 (en) Vehicle pose system
CN106802664B (zh) 一种无人机无头模式的飞行控制方法及无人机
CN105530607A (zh) 用户推荐方法、装置和系统
US20120092370A1 (en) Apparatus and method for amalgamating markers and markerless objects
CN113479195A (zh) 用于自动代客泊车的方法和用于执行所述方法的系统
US20190318535A1 (en) Display data processing method and apparatus
CN106556399A (zh) 导航处理方法、导航设备、移动终端设备及导航服务器
EP3521758A1 (en) Navigation route generating method and device
CN111325849B (zh) 虚拟内容显示方法、装置、终端设备及存储介质
CN112734341A (zh) 辅助导航的方法、装置及系统
CN111624636B (zh) 数据处理方法、装置、电子设备及计算机可读介质
JP6345381B2 (ja) 拡張現実システム
KR102023186B1 (ko) 지오펜싱 기반의 컨텐츠를 클라우드소싱하는 방법 및 그 시스템
CN112802159A (zh) 航线的渲染方法、装置及存储介质
CN112985419B (zh) 室内导航方法、装置、计算机设备及存储介质
CN113722043A (zh) 用于avp的场景显示方法、装置、电子设备与存储介质
US20240086828A1 (en) Aerial vehicle delivery of items

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