T-torch:以快速方式搜索轨迹 Sheng Wang, Zhifeng Bao, J. Shane Culpepper, Zizhe Xie, Qizhi Liu, Xiaolin Qin: Torch: A Search Engine for
Trajectory Data. SIGIR 2018: 535-544
T-Torch现在能够有效回答两种典型的查询类型:
我们可以在Porto收集的轨迹数据集。数据集是映射匹配和索引的。请在https://drive.google.com/open中下载它?
我们用Maven管理依赖的库。您可以在pom.xml文件中轻松安装所需的软件。
我们为路径查询提供了用例。 Main()方法在测试类中。
1. Engine engine = Engine.getBuilder().build();
2. List<List<TrajEntry>> queries = read();
3. QueryResult result = engine.findOnPath(queries.get(0));
T-Torch提供了高级级别的引擎,其中包含用于查询处理的简单API。
QueryResult ret = engine.findInRange(50, 50, 50);
范围查询用于检索穿过指定矩形区域的轨迹。为了定义矩形区域,需要三个参数。纬度和经度定义了中点,半径(以米为单位)共同代表矩形区域。
QueryResult ret = engine.findOnPath(query);
路径查询2用于检索与查询至少具有一个共同边缘的轨迹。它采用的参数是由坐标列表表示的“路径”。
QueryResult ret = engine.findOnStrictPath(query)
严格的路径查询2用于检索从头到尾严格通过整个查询的轨迹。它采用的参数是由坐标列表表示的“路径”。
QueryResult ret = engine.findTopK(query, 3);
Top-K查询根据指定的相似性度量返回K最高排名的轨迹。第一个参数是由坐标列表表示的“查询轨迹”,第二个是要返回的顶部结果的数量。
if (ret.mappingSucceed){
List<Trajectory<TrajEntry>> l = ret.getResultTrajectory();
String mapVformat = ret.getMapVFormat();
}else{
//do something
}
处理查询后,类型QueryResult的对象均匀返回。它包含原始形式的查询轨迹,地图匹配的查询轨迹和所有轨迹。另外,您可以在MAPV 3上投影这些,以实现可视化目的。
如果您想搜索自己的数据集,请按照以下步骤进行数据预处理:
从OpenStreetMap下载地图数据,其中收集了轨迹数据,它应以 *.osm.pbf格式为 *。您需要将其放入Resourses目录中。
将您的数据集预处理成我们程序支持的格式。地图匹配是将原始轨迹投射到真实道路网络上的技术。第一个参数是原始轨迹数据集的URI,而第二个参数“ Resource/porto.osm.pbf”应该是设置后的pbf文件1的URI,请调用start start()方法将原始轨迹转换为映射轨迹。绘制绘制后,在torch.base.db.db.dbmanager类中运行main()程序,以在磁盘上构建反向索引。请以我们的Porto数据集为例。
MapMatching mm = MapMatching.getBuilder().build("Resources/porto_raw_trajectory.txt","Resources/porto.osm.pbf");
mm.start();
trajectoryID [[latitude1,longtitude1],[latitude2,longtitude2],...]
如果您将此代码用于科学工作,请将其引用为:
Sheng Wang, Zhifeng Bao, J. Shane Culpepper, Zizhe Xie, Qizhi Liu, Xiaolin Qin: Torch: A Search Engine for
Trajectory Data. SIGIR 2018: 535-544
@inproceedings{wang2018torch,
author = {{Wang}, Sheng and {Bao}, Zhifeng and {Culpepper}, J. Shane and {Xie}, Zizhe and {Liu}, Qizhi and {Qin}, Xiaolin},
title = "{Torch: {A} Search Engine for Trajectory Data}",
booktitle = {Proceedings of the 41th International ACM SIGIR Conference on Research & Development in Information Retrieval},
organization = {ACM},
pages = {535--544},
year = 2018,
}