Questions tagged «trajectory»

9
从GPS轨迹创建基于折线的“热图”?
今年冬天,我计划使用GPS跟踪下坡滑雪/单板滑雪。我的大部分骑行都将在同一度假村进行。我希望能够创建一种“热图”,以显示我在给定区域内进行的运行次数。当我向数据库中添加越来越多的GPS轨迹时,我的目标是看到一种最频繁旅行的区域的线性热图。考虑到下坡滑雪的性质,您会希望上坡的吊椅索道将是“最热”的路线,因为它将是唯一一遍又一遍的地方。 假设1)我的轨迹每次都不相同,以及2)进行一次“运行”所覆盖的区域可能是几百英尺宽,那么分析这种“线性”数据以创建一种分类的最佳方法可能是什么热图?我的想法是缓冲线条,然后将多边形相交以得到某种维恩图图。我更喜欢使用开源技术。我已经加载了QGIS和PostGIS并可以使用。 更新:关于@ blah238的响应,我在想一些可能可以“收集”通过某个区域的通过次数(“行程”),然后以计数表示的东西。从概念上讲,这类似于ArcGIS的“ 收集事件 ”(但对于线而不是点)或将双线折叠为中心线(但对于大致相同区域中的多条线)。 类似概念的一个更直观的示例可能是交通流图,其中高度拥挤的区域等同于“高度行驶”的滑雪道/区域: 我阅读了以下问题,这些问题可能会提出一些想法,但是它们并没有真正解决我要完成的任务: 聚类轨迹((x,y)点的GPS数据)和数据挖掘 使用GPS路线管理错误(理论框架?)

2
寻求算法来检测圆以及圆的起点和终点?
我从固定滑翔机飞行员那里获得了许多飞行数据,这些数据以固定间隔的gps修复的形式出现。我想分析飞行路径,并检测滑翔机飞行员在发现热量时将进行的“绕圈”的开始和结束。 理想情况下,一种算法将为我提供直线上的起点和终点,从而定义一个“圆”。这些点可以等于gps修复之一,不需要插值。 我只是可以沿着飞行路线行走,检查转弯速率,并有一些标准来确定滑翔机是否在盘旋。 当我使用带有PostGIS扩展名的PostgreSQL时,我很好奇是否有更好的方法可以解决此问题。我已经有一个过程来计算两个线段的角度: CREATE OR REPLACE FUNCTION angle_between( _p1 GEOMETRY(PointZ,4326), _p2 GEOMETRY(PointZ,4326), _p3 GEOMETRY(PointZ,4326) ) RETURNS DECIMAL AS $$ DECLARE az1 FLOAT; az3 FLOAT; BEGIN az1 = st_azimuth(_p2,_p1); az3 = st_azimuth(_p2,_p3); IF az3 > az1 THEN RETURN ( degrees(az3 - az1)::decimal - 180 ); ELSE RETURN ( degrees(az3 - …

2
如何对GPS轨迹进行最佳建模以进行存储,可视化和分析?
我正在考虑编写处理GPS航迹和航点的软件(主要是存储,显示和计算速度,坡度和一些简单的统计数据)。 我想知道关于跟踪点的概念上最健壮的数据模型应该是什么,下面是一些“候选对象”: 将航迹视为航迹点序列: 1.1。由于地图投影为2D,因此轨迹被视为“ 2D”。跟踪点可能有高程,也可能没有时间戳。高程和时间戳记被视为“附加”,“可选”。对于地面应用,海拔是lat / lon的直接函数(可通过DEM获得)。 1.2。轨道被认为是“ 3D”,因为地理空间实际上是3D,并且接收器的轨迹是3D(因此2D投影是数据缩减的一种形式)。时间戳可能存在或不存在(轨迹可能是手工绘制的)。 1.3。轨道被视为“ 4D”(3个空间+时间)。因此,手绘地图是一种特殊情况,其中高程和时间戳存在null或不存在,但Trackpoint属性始终为“有”。 轨道被视为流的字典,其中所有流的长度相等。这里有一个纬度列表,一个经度列表,一个高程列表,一个时间戳等,这使每个属性的统计信息变得容易计算,并且从某种意义上说,Trackpoint的概念在某种意义上是“虚拟的”许多溪流的横截面。 如果我理解正确,GPX格式采用1.1。KML采用1.2。(不支持时间戳),并且Strava API采用2.(JSON格式),但最终这些只是用于序列化和存储的FILE格式,而不必用于建模,计算表示和数字运算。 在面向对象的意义上,是否存在任何可取的形式,为什么?(我相信,强类型和合理的建模至少可以避免那些没有意义的操作)。 编辑:一些“有趣的”附加问题: 手绘轨迹在概念上与设备记录的轨迹日志是否相同?它们应该是不同的数据类型吗? KML将空高程存储为零是否应该被视为“正确”?零是高程,如果您不知道高程,则不应该为其指定数字零,不是吗? 在具有高程的轨道中,是否从DEM数据(“离线”)或GPS数据或气压数据(“现场”)中提取高程,这有关系吗?是否应该在Track对象中标记它?是否保存到其他Trackpoint属性?忽略了吗?它们应该是不同的集合数据类型吗? 如果我在地图编辑器中编辑了设备记录的轨道(添加,移动和删除点),或者合并了不同日期的轨道,应如何处理轨道点中的时间戳?是否应该将它们“重置”为null?是否应创建与以前类型不同的对象(跟踪点集合)?

1
寻找轨迹相似度
在最后的学术工作中,我开发了一种GPS轨迹的压缩算法。我可以通过计算压缩轨迹与原始轨迹之间的同步欧氏距离(SED)来估计时空压缩的质量,并根据著名的压缩算法评估我的算法的性能。 像我的时空算法会减少试图保持尽可能多的时间信息的轨迹。空间算法(例如Douglas-Peucker算法)仅参考空间特征即可实现压缩。 现在会发生什么?考虑到时空方面,我的算法比DP更好。我可以通过SED测量来确保这一点。如果绘制三个轨迹(原始,矿山和DP压缩),则用DP压缩的轨迹与原始轨迹的拟合度更高。仅靠眼睛的测量不能满足我的需求:实际上,我需要一个误差度量,该误差度量以数字方式证明了DP算法在空间上比我的算法更好。 因此,我可以这样写:“参考时空因素,我的算法比DP更好,因为它的SED因子小于DP的SED因子。可惜,简单的空间因子奖励DP算法,因为它(新指标的名称)比我的好”。 我一直在考虑垂直欧几里德距离,但是我真的不知道这是否有用。动态时间扭曲?我可以使用什么指标?
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.