论文笔记: Trajectory Clustering: A Partition-and-Group Framework

news2024/11/24 15:27:19

07 Sigmoid

使用类DBSCAN的思路对轨迹聚类

1 intro

1.1 轨迹聚类

  • 现有的轨迹聚类算法是将相似的轨迹作为一个整体进行聚类,从而发现共同的轨迹。
    • 但是这样容易错过一些共同的子轨迹(sub-trajectories)。
    • 而在实际中,当我们对特殊感兴趣的区域进行分析时,子轨迹就特别重要。
    • 图中有五条轨迹,在矩形中有一个共同的行为,用粗箭头表示。
    • 如果我们将这些轨迹作为一个整体来聚类,我们就无法发现共同的行为,因为它们最终向完全不同的方向移动
      • ——》作为一个整体来聚类会错过很多有价值的信息。

1.2  本文的思路

  • 本文提出TRACLUS算法,先将轨迹分段成线段,然后再对线段进行聚类,可以更准确地发现子轨迹。
  • 算法步骤分为分段(partitioning)和归组(grouping
    • 分段利用最小描述长度(minimum description length MDL)原理实现轨迹分段,将每一条轨迹最优的分为一组线段,这些线段输入到下一阶段。
    • 归组利用基于密度的线段聚类算法实现相似线段聚类。设计了一个距离函数来定义线段的密度
      • ——>基于密度的聚类方法是最适合用于线段的,因为它们可以发现任意形状的聚类,并可以滤波出噪声。可以很容易地看到,线段簇通常是任意形状的,而轨迹数据库通常包含大量的噪声

2 问题定义

  • 输入一组轨迹L=\{TR_1,\cdots,TR_{num_{tra}}\}
    • 一条轨迹是一组点的集合TR_i=p_1p_2\cdots p_{len_i},其中每一个点pj是一个d维的点(坐标),leni是这条轨迹的长度(点的数量)
    • 轨迹TRi的一条子轨迹是\mathrm{p}_{\mathrm{c}_1} \mathrm{p}_{\mathrm{c}_2} \cdots \mathrm{p}_{\mathrm{c}_{\mathrm{k}}}\left(1 \leq \mathrm{c}_1<\mathrm{c}_2<\cdots<\mathrm{c}_{\mathrm{k}}<\operatorname{len}_{\mathrm{i}}\right)
  • 输出:一组线段聚类O=\{C_1,\cdots,C_{num_{clus}}\}和每个线段聚类Ci的代表性轨迹
    • 一个cluster中是一组轨迹分段
      • 一个轨迹分段是一条线段p_ip_j (i<j),其中pi和pj都是从同一条轨迹中选择的点
    • 一条轨迹中的轨迹分段可能属于不同的多个聚类

3 模型

3.1 整体模型

3.2 轨迹距离函数

  • 对点集做聚类时,常用方法就是根据两点之间的欧氏距离来判断是否一类。
  • 在线段聚类时,论文使用的距离函数是由三个部分组成
    • 垂直距离d_\perp
    • 平行距离d_{||}
    • 角度距离d_\theta

 

 3.2 轨迹分段

  • 轨迹分段的首要目标是找到轨迹行为迅速变化的点(就是角度变化大的点),称之为特征点。
    • 从轨迹TR_i=p_1p_2\cdots p_{len_i}中确定了一组特征点\left\{\mathrm{p}_{\mathrm{c}_1}, \mathrm{p}_{\mathrm{c}_2}, \mathrm{p}_{\mathrm{c}_3}, \cdots, \mathrm{p}_{\mathrm{c}_{\mathrm{par}}}\right\}\left(\mathrm{c}_1<\mathrm{c}_2<\mathrm{c}_3<\cdots<\mathrm{c}_{\mathrm{par}_{\mathrm{i}}}\right)
    • 然后轨迹TRi分每个特征点分段,每个分段用两个连续特征点所连的线段表示
    • ——>TRi被分成一组(pari-1)个轨迹分段\{p_{c_1}p_{c_2},p_{c_2}p_{c_3},\cdots,p_{c_{par_{i-1}}c_{par}}\}

3.2.1 轨迹分段原则

  • 一个轨迹的最优分段要具有两个属性:
    • 准确性
      • 轨迹与其一组轨迹分段之间的差异应该尽可能小
        • ——>特征点不能太少。
    • 简洁性
      • 轨迹分段的数量应该尽可能少
  • 这两个属性在确定特征点数目时是相互矛盾的,这就需要调整算法以达到平衡

3.2.2 最小描述长度原则(Minimum Description Length,MDL)

  •  最小描述长度( MDL) 原理是通用编码领域研究的内容。
    • 基本原理是对于一组给定的数据 D ,如果要对其进行保存 ,为了节省存储空间, 一般采用某种模型对其进行编码压缩,然后再保存压缩后的数据。
    • 同时, 为了以后正确恢复这些实例数据,将所用的模型也保存起来。
    • ——>所以需要保存的数据长度( 比特数) 等于 数据进行编码压缩后的长度  加上 保存模型所需的数据长度,将该数据长度称为总描述长度。
    • 最小描述长度( MDL) 原理就是要求选择总描述长度最小的模型
  • MDL的代价有两部分L(H)和L(D|H)
    • H代表压缩模型,D代表数据
    • L(H)是描述压缩模型(或编码方式)所需要的长度
    • L(D∣H)是描述利用压缩模型所编码的数据所需要的长度
  • 类比到轨迹分段中,如下:
    • L(D|H)只考虑角度距离和垂直距离,不考虑平行距离
  •  假设一条轨迹TR_i=p_1p_2\cdots p_{len_i},一组特征点\left\{\mathrm{p}_{\mathrm{c}_1}, \mathrm{p}_{\mathrm{c}_2}, \mathrm{p}_{\mathrm{c}_3}, \cdots, \mathrm{p}_{\mathrm{c}_{\mathrm{par}}}\right\}\left(\mathrm{c}_1<\mathrm{c}_2<\mathrm{c}_3<\cdots<\mathrm{c}_{\mathrm{par}_{\mathrm{i}}}\right)

    • L(H)表示为

    • L(D|H)表示为:

      ——>因此,要得到最优的分段策略,那就是要最小MDL= L(H)+L(D|H),这能够准确平衡简洁性和准确性

3.2.3 近似计算方法

  • 但是因为要考虑到轨迹点的每一个子集,所以计算量是非常大
    • 论文引入一个近似计算的方法,关键思想是将局部最优的集合视为全局最优
  • MDL_{par}(p_i,p_j)表示pi和pj是 路径分段pipj之间仅有特征点时(也就是pipj之间的子线段都划归到pipj线段上了),pipj二者之间轨迹的MDL
  • MDL_{nopar}(p_i,p_j)表示pi和pj之间没有特征点时的MDL
    • 此时pipj之间就是原始轨迹,所以只有L(H),没有L(D|H)
  • 局部最优解是:当满足对于任意i<k≤j的k,都有MDL_{par}(p_i,p_k) \le MDL_{nopar}(p_i,p_k)时的最长pipj
    • 不等式的意思是:pi~pk的点,视作pipk轨迹分段对应的MDL,比pipk的点保持为原始轨迹对应的MDL小
      • 也就是说pipk是一个最优分段
      • 换句话说就是pk作为特征点的MDL比不作为特征点的代价小,那么pk可以成为一个特征点
    • 局部最优解找的就是距离i最远的、可以作为特征点的点j

算法如下

 

所以此时p4就是局部最优解 

3.3 聚类 

3.3.1 基于密度聚类的概念

将DBSCAN中关于点的聚类扩展到关于线段的聚类

  • 几个notation:
    • D是所有线段的集合
    • epsilon是两个线段距离的一个阈值
    • MinLns是聚类集合的最小线段数量
线段L_i \in D的ε邻域

核心线段

核心线段就是,和线段Li相距小于ε的线段数量 大于MinLns条

对比DBSCAN相应概念:如果数据点周围至少包含“minPoints”个点,则该数据点是核心点

直接密度可达

Lj是核心线段+Li在Lj的ε邻域内——>Li直接密度可达Lj

对比DBSCAN相应概念:

密度可达

存在一组线段L_i,L_{i+1},L_{i+2},\cdots,L_{j-1},L_j

其中Lk直接密度可达L_{k+1}(即L_{k+1}是核心线段)

那么Li密度可达Lj

对比DBSCAN相应概念:

密度连接

当存在一个核心点Lk,使得线段Li和线段Lj都密度可达Lk

那么Li 密度连接Lj

对比DBSCAN概念:

,mn

 

 

3.3.2 密度连接集

3.3.3 线段聚类方法

 

  • 有别于DBSCAN的就是14~16行,即并非所有的密度连接集都是一个线段聚类
    • 需要考虑这一簇的线段是从几条轨迹中得来的,如果小于阈值,那么这一簇线段不能被视为一个聚类
      • 举一个极端情况,一个簇中所有的线段都是从一个轨迹中提取出来的
    • ——>14~16行就是校验一个簇中轨迹的基数
      • |PTR(C_i)|=|\{TR(Lj)| \forall Lj \in C_i\}|

3.3.4 聚类算法的扩展

  • 每条线段可以有自己的权重
    • ——>此时可以修改 确定ε邻域基数 |N_\epsilon(L)|的方法,不再是简单地计算线段数量,而是计算线段的加权数量

 

参考内容:

GPS轨迹聚类算法TRACLUS介绍(一)_NieBP的博客-CSDN博客

GPS轨迹聚类算法TRACLUS介绍(二)_traclus-master_NieBP的博客-CSDN博客

 GPS轨迹聚类算法TRACLUS介绍(三)_NieBP的博客-CSDN博客

GPS轨迹聚类算法TRACLUS介绍(四)_NieBP的博客-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/558891.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

运行 100 万个并发任务需要多少内存?

在这篇博文中&#xff0c;我深入研究了 Rust、Go、Java、C#、Python、Node.js 和 Elixir 等流行语言在异步和多线程编程之间的内存消耗比较。 前段时间&#xff0c;我不得不比较一些旨在处理大量网络连接的计算机程序的性能。我看到这些程序的内存消耗存在巨大差异&#xff0c…

【Atlas200】华为AIPP配置文件使用

目录 AIPP介绍图像处理顺序例子&#xff1a;YUV420SP_U8转BGR格式归一化配置对应公式crop及padding功能配置生效AIPP转换模板 AIPP介绍 华为的AIPP&#xff08;AI Preprocessing&#xff09;是一种面向AI应用的图像预处理技术&#xff0c;旨在提高AI应用的效率和精度。AIPP支持…

C语言深度解析--数组

目录 一维数组的创建与初始化 一维数组的创建&#xff1a; 一维数组的初始化&#xff1a; 一维数组的使用&#xff1a; 一维数组在内存中的存储&#xff1a; 二维数组的创建与初始化 二维数组的创建&#xff1a; 二维数组的初始化&#xff1a; 二维数组的使用&#xf…

是面试官放水,还是公司太缺人了?华为原来这么容易就进了...

华为是大企业&#xff0c;是不是很难进去啊&#xff1f;” “在华为做软件测试&#xff0c;能得到很好的发展吗&#xff1f; 一进去就有9.5K&#xff0c;其实也没有想的那么难” 直到现在&#xff0c;心情都还是无比激动&#xff01; 本人211非科班&#xff0c;之前在字节和腾…

以“智”提质丨信创呼叫

随着人工智能、大数据、云计算等新兴技术飞速发展&#xff0c;呼叫中心、全媒体智能客服等现已被广泛应用于多个行业领域。其中&#xff0c;呼叫中心作为政企对外服务的重要窗口&#xff0c;已从“传统电话营销”发展到“智能呼叫中心”阶段&#xff0c;以客户服务为核心&#…

Windows下Elasticsearch下载安装

Windows下Elasticsearch下载安装 最近搭一个语义搜索web需要用到es。 1.下载 下载地址&#xff1a;官网下载地址 下载zip格式解压就行&#xff0c;这里我下载的是8.7.1 1.1解压启动 解压之后&#xff0c;进入elasticsearch的bin目录&#xff0c;通过点击elasticsearch.ba…

0基础学习VR全景平台篇第28章:场景管理—遮罩功能

本期为大家带来蛙色VR平台&#xff0c;场景管理模块-遮罩功能&#xff01; 功能位置示意 一、本功能将用在哪里&#xff1f; 遮罩分为两种&#xff0c;分别是地面遮罩和天空遮罩。 地面遮罩位于全景图底部的正中间&#xff0c;天空遮罩位于全景图顶部的正中间。 遮罩一方面可…

已解决python使用pymysql向mysql数据库插入数据报错pymysql.err.DataError: (1366, ‘‘)

已解决&#xff0c;在python代码是使用pymysql向mysql数据库插入数据时报错pymysql.err.DataError: (1366, ) 问题描述 我从某个网页上抓取并解析了一段html代码&#xff0c;然后将html代码转为utf-8格式&#xff0c;之后将html代码作为数据表的一个属性存入mysql数据库中&…

代码签名证书,保护应用程序安全性

在现代IT环境中&#xff0c;有大量不同的方式可以用来确保应用程序的安全性。其中一个就是从源头开始&#xff0c;让应用程序开发者能够对他们的代码进行数字签名&#xff0c;从而确保给定应用程序的完整性和真实性。 一直以来&#xff0c;认证机构安理会&#xff08;CASC&…

2023年必备的10款交互设计软件

交互设计可以帮助明确产品需求和功能、进行用户测试和获取反馈、减少开发成本、促进团队合作&#xff0c;并在展示和推销产品时起到关键作用。通过有效的产品交互设计&#xff0c;可以提高产品的质量、用户体验和市场竞争力。 什么是产品交互设计&#xff1f; 产品交互设计是…

Linux查看磁盘利用率(iostat)

使用iostat命令可以查看磁盘的负载情况。iostat命令可以显示磁盘的I/O统计信息&#xff0c;包括磁盘的读写速度、I/O请求队列长度、CPU利用率等。 参数 Device&#xff1a;磁盘分区的名称。rrqm/s&#xff1a;每秒钟合并的读请求。wrqm/s&#xff1a;每秒钟合并的写请求。r/s…

11-FastDFS文件服务器 和 Nginx

1、什么是FastDFS 1、开源的轻量级分布式文件系统,用于解决大数据量存储和负载均衡等问题。 2、优点: 支持HTTP协议传输文件(结合Nginx); 对文件内容做Hash处理,节约磁盘空间; 支持负载均衡、整体性能较佳。 3、FastDFS的二个角色:跟踪服务器(Tracker)、存储服务器…

StringBuffer与StringBuilder的区别

&#x1f3c6;今日学习目标&#xff1a; &#x1f340;StringBuffer与StringBuilder的区别 ✅创作者&#xff1a;林在闪闪发光 ⏰预计时间&#xff1a;30分钟 &#x1f389;个人主页&#xff1a;林在闪闪发光的个人主页 &#x1f341;林在闪闪发光的个人社区&#xff0c;欢迎你…

档案馆库房温湿度监控系统简单介绍

智慧档案馆八防一体化监控系统 智慧档案平台/温湿度/空气质量/漏水/视频/门禁/一体化管控平台 HONSOR多维空间可视化智慧档案库房建设一体化平台分享 三维可视化智慧档案馆库房一体化环境安全管控系统平台 1.系统告警要求&#xff1a; &#xff08;1&#xff09;告警方式&am…

[PCIE733]基于PCI Express总线架构的2路160MSPS AD采集、12路LVDS图像数据采集卡

板卡概述 PCIE733是一款基于PCI Express总线架构的&#xff0c;实现2路16-bit、160MSPS ADC采集功能、12路LVDS数据采集板卡。该板卡遵循PCI Express 2.0规范&#xff0c;全高半长尺寸&#xff0c;板卡采用Xilinx的28nm高性能FPGA处理器XC7K325T作为主控制器&#xff0c;板卡AD…

【dfs序+线段树】P3178 [HAOI2015]树上操作

这道题&#xff0c;昨天调到一点多都没调出来&#xff0c;眼睛都要瞎了 今天看着题解边看边调出来了&#xff0c;但是还是感觉不是很会 m d&#xff0c;学的第一道关于树的DS就搞成这样 感觉很寄啊 P3178 [HAOI2015]树上操作 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)…

事务、分布式事务以及seata

事务 事务就是用户定义的一系列数据库操作&#xff0c;这些操作可以视为一个完成的逻辑处理工作单元&#xff0c;要么全部执行&#xff0c;要么全部不执行&#xff0c;是不可分割的工作单元。 事务的四个特效ACID Atomic 原子性&#xff0c;原子性是指事务必须是一个原子的操…

手摸手教你Vite+Vue3项目初始化及开源部署到GItee

项目初始化 本片文章主要记录项目的环境&#xff0c;项目搭建。 在开始本次学习中&#xff0c;鉴于你有前端三件套和vue的知识基础。 文档创建于2023年5月20日&#xff0c;大家都去过情人节了~我在肝代码&#xff01; 环境的搭建 node版本使用18.16.0。 目前&#xff08;202…

重磅!超星未来发布全新NOVA-ADCU智能驾驶参考方案

近日&#xff0c;超星未来重磅发布基于惊蛰R1芯片面向多场景打造的全新NOVA-ADCU智能驾驶参考方案&#xff0c;并亮相科技成果展。方案覆盖高阶行泊一体、轻量级行泊一体、双目智驾、路侧感知等场景&#xff0c;携手产业链上下游伙伴构建开放共赢的智能驾驶新生态。 以智能驾驶…

一种新的算法模型,填补微生物组纵向研究数据中的缺失值

谷禾健康 微生物组的纵向研究是一种长期跟踪微生物组变化的研究方法。在这类研究中&#xff0c;样本从同一人群或个人中多次采集&#xff0c;通过检测样本中微生物群落丰度的变化&#xff08;如不同菌群的比例和种类&#xff09;&#xff0c;来了解微生物组随时间的变化趋势和特…