问题标签 [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.
matlab - Matlab的imrotate怎么这么快?
我正在尝试编写自己的使用线性插值的图像旋转函数(参见下面的代码)。在示例 256x256 图像上运行我的代码大约需要 8 秒,即每像素约 0.12 毫秒。在同一张图像上使用双线性插值运行 Matlab 的 imrotate 函数大约需要 0.2 秒,或每像素约 0.003 毫秒 - 大约提高了一百倍。
我猜我缺少一些矢量化优化,但我不知道在哪里。非常感谢任何建议。
代码如下;
c# - C#/Unity3D 中的分段线性整数曲线插值
是否有一种简单、有效的方法可以在 C# 中实现分段线性整数到整数曲线插值(对于 Unity3D,如果重要的话)?
详情如下:
- 分段线性曲线表示必须随着时间的推移而构建。第一个插值请求出现在我们拥有所有数据点之前
- 曲线是严格单调的
- 第一个点总是 (0, 0)
- 数据点的第一个坐标也是严格单调的到达时间,即点按它们的第一个坐标自然排序。
- 数据点不在会导致 4 字节整数溢出问题的范围内
- 输出不必是 100% 准确,因此舍入误差不是问题。
在 C++ 中,我会做这样的事情:
我可以看到我如何在 C# 中做一些类似这样的工作,但没有什么简洁或高效的。任何帮助将不胜感激。
编辑:我不需要更准确,并且对分段线性插值非常满意,因此更好的插值质量不是我的问题。
我正在寻找的是一种高效、简洁的方法。高效,我的意思是:依靠数据点自然排序的事实,以便能够使用二进制搜索来找到正确的段
sql - 对表格执行插值,按第三个字段分组
我有一个包含三列的 SQL Server 2008+ 表:
我需要能够为给定日期的所有增量生成一个费率表,并在必要时进行插值。我可以对 Delta 的单个值执行此操作,但同时为所有 Delta 执行此操作让我感到难过。
一些示例数据是
到目前为止,我想出的最好的是:
Where@NextDate
和@PreviousDate
are 从较早的计算中确定表中最接近测试日期的日期 ( @ForwardDate
)。这是必需的,因为我们需要确保所有插值都在相同的两个日期之间(如果其中一个日期缺少一个值,则给出 NULL)。我不想在每个 delta 值的不同日期之间进行插值。
这给了我似乎是结果的交叉连接
每个增量有 5 个结果。如有必要,我可以SELECT DISTINCT
这样做,但不禁认为这是作弊,我做错了什么。有没有更好的方法来消除对 的需要SELECT DISTINCT
?
matlab - 如何评估或绘制 SYM 对象?
我正在编写一个脚本来解决 matlab 中的拉格朗日插值问题。我是新手,我不知道它是如何工作的。
插值数据是下一个
然后我以这种方式构建多项式 od lagrange:
但是当我想评估它或者我想绘制它时,我不知道哪种方式。
有人能帮我吗?
c - 线性插值:基于二维表计算校正
我尝试做的事情不过是二维线性插值,但目前我找不到正确的方法。为了简单地描述这个问题:有一个大小为 3000x3000 像素的绘图区域,我必须在其中绘制一条水平线。为此,我从每个像素位置到下一个像素位置绘制点或短线,然后形成一条线。
现在必须对整个事物进行校正,校正信息可以在(对于此示例简化的)4 x 4 数组中找到,其中每个元素都包含一对描述校正后值的坐标。所以一个中性数组(没有校正)看起来像这样:
一个真正的校正表将包含描述要完成的校正的其他坐标:
因此,作为输入数据,我有没有校正的线上点的坐标、没有校正的字段值和校正数据。但是我如何计算现在应用校正值的线点,以便绘制扭曲的线,如图像右侧所示?我目前对 X 和 Y 使用两个单独的线性插值的方法不起作用,Y 位置在单元格边界上跳跃,但在单元格内不会平滑变化。
那么......任何想法如何做到这一点?
matlab - 在数组中的每个元素之间使用 MATLAB linspace
使用 MATLAB,我想在数组中的每个点之间进行线性插值。
使用interpolate
将以非线性方式进行。我想做的类似于产生低通滤波器系数。
我想出了一个解决方案,但我想避免使用for
循环:
没有循环可以做到这一点吗?
function - lerp 函数的逆函数的通用名称是什么?
函数 lerp() 是编程语言中的常用函数:
现在对于很多情况,我有一个反函数:
这个函数是这样构建的
和
但是我对“分数”这个名字不满意。这个函数有通用名称吗?
r - 没有 for 循环或嵌套 ifelse 的分段线性变换
我正在尝试对我的数据执行分段线性变换。这是一个描述转换的示例表:
如果我定义x <- c(1.75, 2.5)
了 ,我希望转换后的值是 2.75 和 6.5(我的元素将分别与 的第 2 行和第 3 行匹配dat
)。
我知道如何for
通过循环来解决这个问题,遍历 的行dat
并转换相应的值:
虽然这可行,但让我感到震惊的是,应该有一种更好的方法将x
值与行匹配dat
,然后在单个计算中执行所有插值。有人可以为我指出for
这个问题的非循环解决方案吗?
c# - 使用 Math.Net Numerics 具有大 x 值的不正确线性插值
我正在尝试使用 Math.NET Numerics 对 DateTime - Value 系列进行插值。我从线性插值开始,但得到了一些看起来很不一样的结果。
运行此测试:
这给出了:
请注意,2.4285 是完全错误的。在不同的时间(不同的刻度值),不同的值将是“错误的”。Math.NET 中是否存在 x 值较大的“错误”,还是我期望过高?