假设你有一个 1000 CGFloat
的数组s
...
at 13.0: 1000.001
at 14.0: 1152.934
at 15.0: 1000.909
at 16.0: 1200.666
...
而且您将需要任何值(value)的值(value)
平滑(13.40)== 大约 1085,比如说
所以,我们谈论的是 内核平滑 - 窗口函数。如
优秀文章:https://en.wikipedia.org/wiki/Kernel_smoother
iOS 是否在其中一个 GPU 框架中内置了类似的东西?
计算机不断地做这种事情是完全常见的,尤其是在图形子系统中。
如何在 iOS 中的 GPU 上执行此操作...可能在 Core 音频或
Compute
中堆? (当然,在 Swift 中手动操作很容易。)
最佳答案
对于在这里使用谷歌搜索的任何人,所提出的问题的一个接近解决方案 - 基本上是“在数组点之间获取平滑值” - 就是使用苹果自己的系统,苹果在 iOS 的任何地方都使用该系统(每一个动画,褪色等)。
幸运的是,这里有一篇来自 Apple 的优秀初学者文章:
https://developer.apple.com/documentation/accelerate/vdsp/linear_interpolation_functions/use_linear_interpolation_to_construct_new_data_points
有点相关,总是有机会提醒真正了不起的“每个 iOS/droid 工程师最好的 friend ”:
https://cubic-bezier.com/#.17,.67,.81,1.2
使用方法:https://stackoverflow.com/a/40363603/294884
关于ios - iOS是否内置了时间序列平滑,比如内核或高斯? (也许在 CoreImage 或 CoreAudio 中?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57509407/