问题标签 [linear-interpolation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 线性插值如何在经典 Perlin 噪声中工作?
昨天我将经典的 Perlin 噪声(源代码:http: //mrl.nyu.edu/~perlin/doc/oscar.html#noise)移植到 JavaScript。奇怪的是,生成的噪音看起来与我预期的有很大不同。经典的 Perlin 噪声使用线性插值/lerp,但噪声是平滑的而不是边缘的。它看起来更像余弦插值。似乎 Perlin 以不同的方式使用 lerp 函数。
这是移植到 JavaScript 的原始代码(带有画布图片):http: //jsfiddle.net/fDTbv/
这是有趣的部分:
u 和 v 总是在变化。为什么?不应该是 u 和 v 代表 sx 之前的点和 sx 之后的点,因此不要改变?
我将代码更改为“我所期望的”它的外观:http: //jsfiddle.net/8Xv8G/
有趣的部分:
我的问题:为什么 Perlin 使用 lerp 函数的方式如此不同?
matlab - 缺失数据的修正线性插值
想象一组具有给定 x 值(作为列向量)和几个 y 值组合在矩阵中的数据(列向量的行向量)。矩阵中的某些值不可用:
现在我有一个用于插值的新 x 值的列向量。
我的目标是找到一种快速的方法来插入给定 x_i 值的所有 y 值。如果 y 值中有 NaN 值,我想使用缺失数据之前的 y 值。在示例情况下,这将是 中的数据Y(49, :)
。
如果我使用interp1
,我会得到 NaN 值,并且对于大型x
和执行速度很慢x_i
:
另一种方法是interp1q
,它大约快两倍。
什么是允许我修改的非常快速的方法?
可能的想法:
- 进行后处理
Y_i1
以消除- 值NaN
。 - 使用循环和 - 命令的组合
find
始终使用邻居而不进行插值。
matlab - 网格数据双线性插值 MATLAB
我有一个表格数据
我喜欢在 MATLAB 中的数据(图像中的橙色突出显示)之间使用双线性插值。我不知道如何使用 interp1 或 interp2。
如果我假设蓝色行是 x,蓝色列是 y,并且之间的数据是 k(x,y)。所以我有三个向量,我将扩展向量 x 和稍后的向量 y,以插入数据。
你能帮帮我吗?
我将不胜感激任何帮助和评论。
python - scipy.interpolate.LinearNDInterpolator 没有产生所需的功能
我没有使用 LinearNDInterpolator 获得所需的 2D 线性插值功能。以下代码尝试在 4 个结点 (0,0)、(1,0)、(0,1)、(1,1) 之间进行插值。interp2d 给了我预期的(线性插值)结果,但 LinearNDInterpolator 正在做其他事情,我无法弄清楚。也许我没有正确使用 API。不幸的是,我找不到关于使用的详细文档。有人可以帮助或将我指向正确的论坛(mathoverflow?)来写信吗?
python - 使用 Python 对固定日期进行线性插值
例如,我有一组日期和一组以不同间隔拍摄的日期。
只是为了说明起见,假设数字是从今天(9 月 29 日)到现在(12 月 29 日)三个月后的每天,从三个月后到两年后的每月一次,从两年到 10 年的每季度一次,再过 50 年之后的每年一次年。
现在的要求是,我们仍然遵循所有日期间隔“模式”,但时间序列应该从每个季度末开始(所以 3 月 31 日、6 月 30 日、9 月 30 日和 12 月 31 日),数字线性插值在-之间。因此,使用上面的示例,我的新系列应该是从 9 月 30 日(第一季度末)到 12 月 31 日的每日数字,从 2012 年 12 月 31 日到 2014 年 12 月 31 日的每月数字,从 2014 年 12 月 31 日到 2022 年 12 月 31 日的每季度以及之后的每年,新时间序列中所有不在旧时间序列中的价格都是使用线性插值计算的)。
有什么方法可以有效地做到这一点,有没有我可以使用的代码示例?
感谢您的帮助!
r - 插值时间序列
我有两组具有不同时间戳的数据。一组数据包含校准数据,另一组包含样本数据。校准的频率远低于样品。
我想做的是将校准数据(低频)插入到样本时间序列(高频)上。
(我看到的)最大的问题是数据的频率随机变化。
你们有没有人不得不做类似的事情?是否有一个 chron 或 zoo 函数可以满足我的要求(将低频数据插入到两个 ts 都是随机的高频数据上)?
python - Linear Interpolation using numpy.interp
I have a 1 dimensional array A of floats that is mostly good but a few of the values are missing. Missing data is replace with nan(not a number). I have to replace the missing values in the array by linear interpolation from the nearby good values. So, for example:
should return
What's the best of way of doing this using Python?
Any help would be much appreciated
Thanks
java - 当 ViewPager 从右向左滚动时,LinearInterpolator 无法正常工作
我正在使用 v4 ViewPager 并按照下面的链接可以使用插值器设置滚动速度和滚动动画。
当像这样在构造函数中被问到时,我使用了线性插值器
现在,因为我的 viewpages 中有许多视图页面。在它下面我添加了由点组成的寻呼机。
按下一个点用smoothScrolling 设置当前页面。使用触摸事件,我可以获得需要显示的正确页码。在知道这一点后,我调用这个方法来平滑滚动。
现在一切正常。但只有当我选择一个与所选页面点正确的点时。它使用线性动画正确滚动。
但是当我选择留给所选页面点的点时。它不滚动。它只是直接跳转到没有滚动动画的页面。
所以我很困惑如何解决这个问题。这与插值器或滚动器有关吗?
任何帮助,将不胜感激。
谢谢
matlab - Matlab,2点之间的直线,n点之间
我想制作一个需要 2 个数据点的函数:(x1, y1)
和(x2, y2)
.
然后我想返回一个函数f
,它是点之间的直线,N
点之间有点。
如果我接受 2 个数据点的 x 和 y 坐标,那么我可以这样做:
接着:
这足够了吗?
此外,我一直在网上搜索,但找不到任何可以做到这一点的功能。但如果有那么请指教。
ios - 使用 GL_FLOAT 和 GL_LUMINANCE 进行线性插值?
我正在 iPad 3 上使用 OpenGL ES 2.0 开发应用程序。我试图从GL_UNSIGNED_BYTE
调用“ ”时glTexImage2D()
切换为“ ”和“ ”参数。(以前)GL_FLOAT
type
GL_LUMINANCE
internalFormat
format
GL_RGBA
问题:线性插值现在消失了。当你放大时,它是非常像素化的而不是平滑的,就像线性插值一样。我需要切换到GL_RGBA
而不是GL_LUMINANCE
?是否使用GL_LUMINANCE
自动禁用插值?
在我的着色器中,我开始:
就像我之前使用GL_UNSIGNED_BYTE
. TexCoordOut
是顶点着色器的插值输出。为什么在切换到亮度和浮动后不再插值?
ps 我在打电话:
就在之前glTexImage2D()
,但我的印象是这些调用在 OpenGL ES 2.0 下什么都不做。