【青鸟飞扬教育】曲线点抽稀算法 - Python 实现

何为抽稀

在处理矢量化数据时,记录中往往会有很多重复数据,对进一步数据处理带来诸多不便。多余的数据一方面浪费了较多的存储空间,另一方面造成所要表达的图形不光滑或不符合标准。因此要通过某种规则,在保证矢量曲线形状不变的情况下, 最大限度地减少数据点个数,这个过程称为抽稀。

通俗的讲就是对曲线进行采样简化,即在曲线上取有限个点,将其变为折线,并且能够在一定程度保持原有形状。比较常用的两种抽稀算法是:道格拉斯 - 普克 (Douglas-Peuker) 算法和垂距限值法。

道格拉斯 - 普克 (Douglas-Peuker) 算法

Douglas-Peuker 算法 (DP 算法) 过程如下:

  • 1、连接曲线首尾两点 A、B;
  • 2、依次计算曲线上所有点到 A、B 两点所在曲线的距离;
  • 3、计算最大距离 D,如果 D 小于阈值 threshold, 则去掉曲线上出 A、B 外的所有点;如果 D 大于阈值 threshold, 则把曲线以最大距离分割成两段;
  • 4、对所有曲线分段重复 1-3 步骤,知道所有 D 均小于阈值。即完成抽稀。

这种算法的抽稀精度与阈值有很大关系,阈值越大,简化程度越大,点减少的越多;反之简化程度越低,点保留的越多,形状也越趋于原曲线。

垂距限值法

垂距限值法其实和 DP 算法原理一样,但是垂距限值不是从整体角度考虑,而是依次扫描每一个点,检查是否符合要求。

算法过程如下:

  • 1、以第二个点开始,计算第二个点到前一个点和后一个点所在直线的距离 d;
  • 2、如果 d 大于阈值,则保留第二个点,计算第三个点到第二个点和第四个点所在直线的距离 d; 若 d 小于阈值则舍弃第二个点,计算第三个点到第一个点和第四个点所在直线的距离 d;
  • 3、依次类推,直线曲线上倒数第二个点。
  • 最后
  • 其实 DP 算法和垂距限值法原理一样,DP 算法是从整体上考虑一条完整的曲线,实现时较垂距限值法复杂,但垂距限值法可能会在某些情况下导致局部最优。另外在实际使用中发现采用点到另外两点所在直线距离的方法来判断偏离,在曲线弧度比较大的情况下比较准确。如果在曲线弧度比较小,弯曲程度不明显时,这种方法抽稀效果不是很理想,建议使用三点所围成的三角形面积作为判断标准。

今日霍州(www.jrhz.info)©️

特别声明:[【青鸟飞扬教育】曲线点抽稀算法 - Python 实现] 该文观点仅代表作者本人,今日霍州系信息发布平台,霍州网仅提供信息存储空间服务。

猜你喜欢

殷秀梅、『华晨宇』手挽手下班引热议!殷秀梅与洋丈夫离婚了吗?(殷秀梅专场)

细品名人试图引导她透露前夫的名字,殷秀梅只轻描淡写地说,他是某个乐团的乐手,且对方已经有了新的家庭,她也不愿再多提,避免影响到别人。『华晨宇』作为新生代歌手的代表人物,他以其极具个性与辨识度的嗓音赢得了大量粉丝的…

殷秀梅、『华晨宇』手挽手下班引热议!殷秀梅与洋丈夫离婚了吗?(殷秀梅专场)

『周迅』现场被偶遇,身形娇小鼻子宽大显老,穿皱皱棉袄显廉价(『周迅』hm)

即便40岁,在《红高粱》中扮演21岁的九儿,她依旧让观众感受到角色的真实质感,没有刻意装年轻,全凭扎实演技撑起角色的生命力。『娱乐圈』️里对她长相的评价一直两极分化:王晶觉得她最多也就70分,又黑又矮;而陈凯…

『周迅』现场被偶遇,身形娇小鼻子宽大显老,穿皱皱棉袄显廉价(『周迅』hm)

黄金涨势凶猛 金价突破历史新高(黄金涨势凶猛的原因)

近期黄金价格迅速上涨。据财联社1月29日消息,现货黄金首次突破5500美元💵盎司大关,日内涨1.5%,周涨幅超过500美元💵或10%。同一天,国内黄金现货开盘价为1209.35元克,最高涨至1249.45元克

黄金涨势凶猛 金价突破历史新高(黄金涨势凶猛的原因)

西甲积分榜:巴萨先赛4分领跑 巩固争冠优势(西甲积分榜巴塞罗那皇马最新排名)

截至2026年2月1日,西甲联赛争冠形势趋于明朗。巴塞罗那在客场3-1战胜埃尔切后,以55分的积分、领先第二名4分的优势领跑积分榜

西甲积分榜:巴萨先赛4分领跑 巩固争冠优势(西甲积分榜巴塞罗那皇马最新排名)

周生生18K金钻石耳钉:职场女性♀️的优雅秘密武器(周生生18k金钻石耳饰)

清晨匆忙套上西装时,指尖触到耳垂的冰凉金属;会议中不经意撩发时,钻石折射的细碎光芒;下班后摘取首饰时,镜面抛光依然如新的质感——真正的好珠宝从不需要刻意展示,却能让你在每个细节里散发从容。后来发现是这对耳钉…

周生生18K金钻石耳钉:职场女性♀️的优雅秘密武器(周生生18k金钻石耳饰)