您当前的位置: 首页 >  算法

slandarer

暂无认证

  • 1浏览

    0关注

    248博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

MATLAB | 矢量曲线压缩之——道格拉斯-普克算法

slandarer 发布时间:2022-04-09 00:03:12 ,浏览量:1

PART.0 算法描述
  1. 在曲线首尾两点间虚连一条直线,求出其余各点到该直线的距离。

  2. 选其最大者与阈值相比较,若大于阈值,则离该直线距离最大的点保留,否则将直线两端点间各点全部舍去。

  3. 依据所保留的点,将已知曲线分成两部分处理,重复第1、2步操作,迭代操作,即仍选距离最大者与阈值比较,依次取舍,直到无点可舍去,最后得到满足给定精度限差的曲线点坐标。

在这里插入图片描述 在这里插入图片描述 LongTime Later 在这里插入图片描述

PART.1 工具函数

为了代码简单易理解,这里使用了二分迭代,含详细注释代码如下

function nPntSet=dp(pntSet,TH)
% @author : slandarer
% pntSet  : 二维数据点
% TH      : 距离阈值

% 向量运算:计算所有点到首位两点连线距离
vertV=[pntSet(end,2)-pntSet(1,2),-pntSet(end,1)+pntSet(1,1)];
baseL=abs(sum((pntSet-pntSet(1,:)).*vertV./norm(vertV),2));

if max(baseL)            
关注
打赏
1664692598
查看更多评论
0.1346s