- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在为 iOS 开发一个绘画应用程序,为了获得平滑的线条,我对样本点应用了 Ramer–Douglas–Peucker 算法。
该算法适用于点的整个向量,结果随着点的增加而变化。它会导致结果曲线在用户绘画时“跳跃”。
这个问题有已知的解决方案吗?
最佳答案
我从未实现或使用过这种算法,但我能想到两种可能的解决方案:
将算法应用于线路的离散部分。也就是说,等到用户绘制了 10 个点,然后在点 0..9 上运行算法。然后等到用户绘制了接下来的 10 个点并在点 10..19 上运行算法,依此类推。一个可能的警告是它可能会在点 10、20 等处产生副作用,但我真的不知道用户是否会注意到它。
等到用户完成绘制,然后在整条线上运行一次算法。我以前在应用中看到过这种方法。
这两者的优点是您在每个点上运行的算法不超过两次(在后一种情况下恰好一次),而如果每次添加一个点时都运行算法,您最终会运行它每次添加一个点时,都会对之前的每个点进行处理,这可能会降低性能。
正如我所说,这不是我的专业领域,但我希望它能给你一些想法。
关于algorithm - 画线时 Ramer–Douglas–Peucker 算法的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21866123/
边缘检测 我已经使用 Soble 运算符来获得一些有用的点。这是我的 al: for (int x = 0; x 40){ mEdgePoints.add(n
我计划使用 Douglas-Peucker 算法来减少点数(除非有人知道更好的例子)。数据是一维的,正在构造的曲线是二维的 给出一个减少的点的外壳我需要一个将穿过所有点的样条(我认为拉格朗日插值可以做
使用计数器暂停执行以显示各个处理步骤来逐步完成道格拉斯普克线简化算法是否可行?我不确定是否可能。如果是这样的话,一个特定的数据结构建议这样做。我只看到了递归的解决方案,不确定这是否可行? 最佳答案 是
我正在尝试使用 Douglas-Peucker 算法减少多边形的顶点 - 这对于线条和路径非常有效。 我的问题是我要优化的多边形是封闭的。 When choosing 2 random adjacen
我在阅读这里的文章后实现了一个路径简化算法: http://losingfight.com/blog/2011/05/30/how-to-implement-a-vector-brush/ 它非常适合
我阅读了一篇关于三角形标志检测的研究论文,该论文使用 canny 边缘检测,然后应用 Ramer-Douglas-Peucker 来检测图像中的三角形标志,例如在下面的照片中。 我设法为我的图像应用c
有没有办法在python中也找到rdp算法丢弃的点? 算法: from rdp import rdp rdp([[1, 1], [2, 2], [3, 3], [4, 4]]) 给出压缩后剩余的点数:
我正在为 iOS 开发一个绘画应用程序,为了获得平滑的线条,我对样本点应用了 Ramer–Douglas–Peucker 算法。 该算法适用于点的整个向量,结果随着点的增加而变化。它会导致结果曲线在用
我正在尝试实现一个行简化算法。我发现的主要 2 种算法是: Ramer-Douglas-Peucker Visvalingam-Whyat 目前,我正在 Matlab 上对它们进行一些模拟,以确定哪个
Douglas-Peucker 算法是一种直线泛化算法,它从原始 GPS 轨迹点集中递归地选择点。 但该算法不适用于GPS轨迹数据,因为要同时考虑空间和时间数据,而DP只考虑空间谓词。 有几种 DP
绘制地理多边形不是 R 的强项,但如果 done well 会很有收获.我使用的是来自英国的数据,多边形边界中的细节高得离谱,这使得任何绘图或操作功能(尤其是在运行 fortify 以使其可 ggpl
我想为 RDP algorithm 修改以下 python 脚本目的是不使用 epsilon 而是选择我想在最后保留的点数: class DPAlgorithm(): def distance
我是一名优秀的程序员,十分优秀!