Thomas Brinkhoff 基于路网的移动对象生成器的使用
Thomas Brinkhoff 基于路网的移动对象生成器的使用
文章补充
http://www.cnblogs.com/cmi-sh-love/p/6503275.html ⬅️点击
各个移动对象在路网中进行移动会产生一定的轨迹记录,这些轨迹是有一个一个的带时间戳的坐标点。不同移动对象会形成不同的轨迹,那么一种颜色就代表一个移动对象的轨迹记录。比方红色是汽车A的一系列坐标点,蓝色又表示汽车B的一系列坐标点。而通过移动对象的id号来区分不同的移动物体。
比如上图生成的轨迹数据,一种颜色代表一个物体的轨迹记录,不同颜色表示'移动对象id'不同的物体的轨迹记录,同一个颜色的多个点的集合表示一个物体的轨迹。
大家可以下载它的Demo直接点击run.bat 运行,也可以下载Complete source Code 导入eclipse运行。我这里下载的是完整的源码。
下载后解压然后import进eclipse
相关文件的说明
- 第一个是:properties.txt
这个是配置程序的文件,里面可以修改各种参数
- 第二个是:地图包
包括edge和node两个压缩文件,例如oldenburgGen.edge.zip,oldenburgGen.node.zip
运行
导入eclipse后运行时选择DefaultDataGenerator-generator2
点击Run
其中maximum time那里填入最大时间数,想生成100个时间片的纪录就填100,max.speed div填10,50,250,数字越大,移动对象移动的速度越慢,全部填写完成点击Compute进行生产数据。
生成的数据的说明
这是代码中对于数据的注释
* @param action the action of the object
* @param id object id
* @param repNum report number
* @param objClass object class
* @param time time stamp
* @param x current x-coordinate
* @param y current y-coordinate
* @param speed current speed
* @param doneDist the distance since the last reporting
* @param nextNodeX x-coordinate of the next node
* @param nextNodeY y-coordinate of the next node
1.物体的状态(是新点还是旧点或是消失点)
2.物体id ❤️
3.回报的编号
4.物体种类的id
5.时间戳 ❤️
6.x轴坐标 ❤️
7.y轴坐标 ❤️
8.当前速度
9.预期的下一个x轴坐标 (用于做未来预测)
10.预期的下一个y轴坐标。(用于做未来预测)
关于回报编号的说明
移动对象在计算的时候有一个回报位置的可能性,当回报的可能性为0时,下一个时间戳就不回报该移动对象,当回报可能性大于0时,移动对象的回报编号会+1,此时则回报该移动对象的数据。在初始化一个新的移动对象的时候,给某个移动对象的回报编号初始化为0。
补充:许多读者回信反馈地图运行看不见。
地图数据两个文件.node和.edge分别表示交通的结点以及路网的线路段,可以放置在项目根目录,和properties.txt文件同一个目录。我上传的项目已经包含地图数据。但是我的项目运行时,地图初始化大小是被缩放的很小的,在左上角的一个小点上。大家可以仔细观察。
我们要做的是对他进行缩放,在地图显示区域可以通过按下鼠标左键->拖动鼠标->释放鼠标左键来绘制一个矩形缩放区域。可以对地图进行缩放。
Thomas Brinkhoff 基于路网的移动对象生成器的使用的更多相关文章
- Thomas Brinkhoff 基于路网的移动对象生成器的使用[第二版]
Thomas Brinkhoff 基于路网的移动对象生成器的使用 Thomas Brinkhoff 基于路网的移动对象生成器的使用 相关操作的说明 相关文件的说明 运行 导入eclipse后运行时选择 ...
- 关于Thomas Brinkhoff移动对象生成器的修改
关于地图数据的写出 控制地图路径数据的输出 修改routing.Edge.java 路径写出源码 public void write (EntryWriter out) { out.print(id) ...
- 一种基于路网图层的GPS轨迹优化方案
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 GPS数据正常情况下有20M左右的偏移,在遇到高楼和桥梁等情况 ...
- 轨迹系列1——一种基于路网图层的GPS轨迹优化方案
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.背景 GPS数据正常情况下有20M左右的偏移,在遇到高楼和桥梁等情况 ...
- 迭代器&迭代对象&生成器
迭代器 & 迭代对象 & 生成器 包含__next__ 和 __iter__两个方法的对象为迭代器 __next__方法返回单个元素 __iter__方法返回迭代器本身 可迭代对象包含 ...
- 基于redis的分布式ID生成器
基于redis的分布式ID生成器
- 基于ABP的AppUser对象扩展
在ABP中AppUser表的数据字段是有限的,现在有个场景是和小程序对接,需要在AppUser表中添加一个OpenId字段.今天有个小伙伴在群中遇到的问题是基于ABP的AppUser对象扩展后,用 ...
- $Django 多表操作(增删改查,基于双下划线,对象的查询) 在Python脚本中调用Django环境
在Python脚本中调用Django环境. import osif __name__ == '__main__': os.environ.setdefault("DJANGO_SETTING ...
- 基于LSTM + keras 的诗歌生成器
最近在github 上发现了一个好玩的项目,一个基于LSTM + keras 实现的诗歌生成器,地址是:https://github.com/youyuge34/Poems_generator ...
随机推荐
- 2016年第七届蓝桥杯C/C++程序设计本科B组决赛
2.答案300 刁丝卫代码,比赛时long long写成int,结果成了263...一等擦肩而过... #include <iostream> #include <fstream&g ...
- ldap实现用户认证
LDAP的用户认证类. public class LDAPHelper { private DirectoryEntry _objDirectoryEntry; /// <summary> ...
- vuex 笔记
Vuex 笔记 一个简单的状态管理 单一数据源: const sourceOfTruth = {} const vmA = new Vue({ data: sourceOfTruth }) const ...
- CSV文件的规范
CSV文件,全程Comma-separated values,就是逗号分隔的数据文件.常用于数据集成的数据交换部分标准部分. 最近看到一个项目组在讨论接口文件CSV的规范,真是替他们着急.讨论点: 文 ...
- 解决Debian系统的Crontab执行时间时差问题
首先用 * * * * * date >> /root/log.log 做个测试,发现显示的是UTC的时间,但是直接执行date,得到的是CST的时间.可见在Debian里crontab的 ...
- 初学Python之os模块
OS模块是一个系统操作模块,是对本机的一些操作 os.name 显示操作系统,window:nt ,Linux/Unix:posix. os.getcwd() 显示运行的工作路径 os.list ...
- Tesla P4 在深度学习上的性价比辗压目前所有量产的FPGA
7000的价格, 5.5T FP, 75W不到的功耗,性能接近M40,敢问目前有哪个量产的FPGA能做到?还不算开发和维护的难度...KU115光PCIE+DMA+DDR4 controller+AX ...
- NNVM打造模块化深度学习系统(转)
[摘录理由]: 之所以摘录本文,主要原因是:该文配有开源代码(https://github.com/dmlc/nnvm):读者能够直接体会文中所述的意义,便于立刻展开研究. MXNet专栏 :NNVM ...
- 浅析NRF51822合并文件之app_valid_setting_apply
[原创出品§转载请注明出处] 出处:http://www.cnblogs.com/libra13179/p/5787084.html 我们打开app_valid_setting_apply.hex如下 ...
- 实时消息平台NSQ的特性
NSQ是GO语言开发的可用于大规模系统中的实时消息服务,但是和RabbitMQ等相比,它具有什么特色,什么场景下选择NSQ呢? NSQ的自身特色很明显,最主要的优势在如下三个方面: 1,性能.在多个著 ...