问题标签 [lanczos]

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.

0 投票
1 回答
1976 浏览

html - 如何在每次画布变换后实现 Lanczos 重采样,而无需制作新画布?

更新:一旦我让这个演示工作......神圣的烟雾,它很慢,就像 12-16 秒只进行 2 级渲染(当图像大约为 1000x2000 像素时)。这甚至不值得打扰。

我在这里的最佳答案中发现了这个非常棒且充满希望的代码:Resizing an image in an HTML5 canvas

...

然而,这个实现加载一个图像并渲染它,故事结束。

我一直在尝试重新实现此代码,以便在每次缩放现有画布时进行过滤(想想,放大和缩小图像或文档),而无需加载新图像或创建新画布。

我怎样才能让它以这种方式工作?或者这甚至可能吗?

0 投票
1 回答
1752 浏览

delphi - Delphi Fast(er) Lanczos 重采样

我想找到一些代码,用于使用Lanczos过滤器进行非常快速的位图重采样。目前使用这个: http: //pastebin.com/JxuqLXB9

我一直在寻找更快的实现,但无济于事。尝试了 GraphicsEx、Graphics32、madGraphics、JEDI 的一些实现,它们都比这慢。

0 投票
1 回答
11413 浏览

matlab - 获取对称矩阵的特征值和特征向量的简单 Lanczos 算法代码

我想使用 Lanczos 算法编写一个简单的程序(用 C 语言)。我遇到了一个 Matlab 示例,它帮助我进一步理解了算法,但是从这段代码中我找不到获取特征值和特征向量的方法。我可以遵循算法,但我认为我一定遗漏了一些东西。有人可以指导从这个示例中获取特征值,以便我可以理解该方法然后用 C 进行编码吗?

0 投票
3 回答
5089 浏览

image-resizing - Lanczos 重采样错误

我已经使用 Lanczos 重新采样编写了一个图像缩放器。我直接从 wikipedia 上的说明进行了实施。结果在视觉上看起来不错,但由于某种原因,它与 Matlab 使用 Lanczos 调整大小的结果不匹配(像素错误)。

有人看到任何错误吗?这根本不是我的专业领域...

这是我的过滤器(我默认使用 Lanczos3):

还有我调整图像大小的代码:

0 投票
2 回答
1685 浏览

r - 在 R 程序中使用 lanczos 低通滤波器

我想知道是否有任何软件包允许我们使用 Lanczos 过滤器。我找到了其他过滤器,例如 Butterworth,但我正在寻找 Lanczos 低通过滤器。

Lanczos 过滤器与巴特沃斯过滤器有何不同?任何建议或提示表示赞赏。

谢谢。

0 投票
2 回答
801 浏览

ios - 当 scaleKey 大于某个值时,Lanczos 缩放不工作

我有这个代码

因此,当 scaleKey 大于某个值时 output_uiimage 是黑色图像。

在我的情况下,如果键 kCIInputScaleKey > @0.52 的值,则结果是黑色图像。当我将图像旋转 90 度时,我得到了相同的结果,但值为 0.72(不是 0.52)。

库有什么问题或我的代码有错误?

如果需要,我有 iPhone 4、iOS 7.1.2、xCode 6.0。

0 投票
1 回答
5103 浏览

image-processing - 使用 Lanczos 过滤器进行图像 2 倍下采样

我正在尝试使用 Lanczos2 实现图像下采样。

但是,内核似乎到处都有零(因为如果 x 是整数,则 sin(pi*x)=0)除了中心像素

因此,如果下采样因子是整数(例如,输出大小是每个维度上原始大小的 1/2),那么 Lanczos 下采样会产生与最近邻插值完全相同的结果(仅在 2X 下采样中每隔一个像素取)。

我相信这不是故意的,所以我的问题是:我错过了什么?

如何使用 lanczos2 过滤器进行 2 倍下采样,结果是否与简单地采用其他所有像素不同?

0 投票
1 回答
2820 浏览

c - C语言中的Lanczos插值

我需要在 c 代码中实现以下公式: https ://en.wikipedia.org/wiki/Lanczos_resampling 因此我使用多维插值方法:

多维插值

其中 L(xi) 或 L(yi) 是:

Lanczos 内核

我正在使用 ppm 图像格式通过一个小脚本获取 rgb 值。这是我现在实际的 lanczos 方法:

这部分代码让我很困惑:

有人可以帮助我在 c 中处理这个 lanczos 插值吗?这是我完整的 C 文件:

http://pastebin.com/wdUHVh6U

谢谢!

0 投票
1 回答
935 浏览

image-processing - Lanczos SSE/AVX 实施

有人对如何使用 SSE/AVX(内在函数或程序集)实现Lanczos 图像重采样(放大和缩小)算法有任何提示吗?

我查看了一些 C 实现,但有很多分支,我真的不知道如何使用 SSE/AVX 巧妙地实现它。

示例 - 归一化的大罪:

对于值 x == 0,我应该如何返回 1?在那些索引上,我在 CMPPD 之后有 11...11(真)。

此外,我正在为灰度、8 位图片执行此操作,因此一个像素只有 (0..255)。使用 float 而不是 double 会对质量产生什么影响?是否可以一直使用 u_int8 并且根本不转换为实数(错误可能很大)?

0 投票
1 回答
60 浏览

c - 在 3 次迭代后重新启动 Lanczos 方法时获得 segfault coredump

所以我正在研究 Lanczos 算法的收敛。我用 C 语言实现它,我首先计算与 Krylov 子空间相关的正交矩阵 V 和三对角对称矩阵 T,然后计算 T 的特征值和特征向量以及 Ritz 向量来定义如果未达到公差,则为即将到来的迭代初始化向量。

在 while 循环中,我在进行下一次迭代之前验证是否达到了容差。该程序编译,但是当我执行它时,我在 3 次迭代后得到一个段错误核心转储,我正在使用 -g 编译,gdb 告诉我我在循环中有一个核心转储,用于计算 Ritz 矩阵(或 Ritz 向量是矩阵 A 的特征向量):

我想我正确地编写了我的程序,但我不知道问题出在哪里。感谢您对这些人的帮助!PS:编译 gcc -g -Wall -std=c99 test.c -o test -llapacke -lm

编码: