问题标签 [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 投票
5 回答
6578 浏览

android - Android:使用比双线性更好的重采样算法调整位图大小(如 Lanczos3)

是否有任何方法或外部库可以使用Lanczos(理想情况下)或至少双三次算法来调整图像大小。在安卓下?(当然越快越好,但质量是优先的,处理时间是次要的)

到目前为止,我所拥有的一切都是这样的:

但是它使用双线性滤波器,输出质量很差。特别是如果您想保留细节(如细线或可读文本)。

有很多很好的 Java 库,例如这里讨论的: Java - resize image without loss quality

但是它总是依赖于 Java awt 类java.awt.image.BufferedImage,所以它不能在 Android 中使用。

有没有办法更改方法中的默认(双线性)过滤器Bitmap.createScaledBitmap()或像Morten Nobel 的库这样的库,它能够与android.graphics.Bitmap类一起工作(或使用一些原始表示,正如评论中的@Tron 所指出的那样)?

0 投票
1 回答
522 浏览

image-processing - 在 Golang 中使用 Lanczos 重采样的粗糙边缘

我一直在写一些在 Golang 中调整图像大小的基本方法。我看过几篇关于调整图像大小的帖子,但对于我的生活,我无法弄清楚我错过了什么......

本质上,我的问题是在 Golang 中调整图像大小时,我的结果似乎有很多锯齿。

我已经尝试迭代地对图像进行下采样,但这并没有带来太大的改进。

这是我的代码:

它的性能不是特别好,因为我想在查看优化之前获得高质量的结果。

有图像重采样经验的人有没有看到任何潜在的问题?

作为参考,这是我的源图像: 源图像

这是我的结果: 在此处输入图像描述

如果我删除递归调用,这是我的结果: 在此处输入图像描述

这是通过 Ruby 使用 RMagick/ImageMagick 的结果(我正在为此拍摄): 在此处输入图像描述

有人对我如何获得更平滑的缩小结果有建议吗?这个特殊的例子是一个相当大的缩减,但是 Rmagick 能够非常快速地以高质量缩减它,所以它一定是可能的。

我被告知 Lanczos3 Resampling 产生了很好的结果,这就是我在这里尝试使用的 - 我不确定我的实现是否正确。

另外,作为旁注:0xFF / 0xFFFF 转换是因为 golang 的“At”函数返回 [0, 0xFFFF] ([0, 65535]) 范围内的 rgba 值,但“Set”采用了用范围初始化的颜色[0, 0xFF] ([0, 255])

现在,我更关心质量而不是性能。

0 投票
1 回答
72 浏览

algorithm - 在具有两个元素的领域中利用 SIMD 实现 Peterson 和 Monico 的 Lanczos 算法

(这个问题可能与“无软件推荐”规则调情;我理解为什么它可能会被关闭)。

在他们的论文F_2 Lanczos revisited中,Peterson 和 Monico 给出了 Lanczos 算法的一个版本,用于在 Z/2Z 上找到线性映射的内核的子空间。如果我粗略地阅读了他们的论文是正确的(无论是与否显然不是 SO 的问题),那么所提出的算法需要多次迭代,这些迭代与所用机器的字长成反比。作者使用 64 位字长实现了他们的概念验证算法。

是否存在该算法的公开可用实现,该算法利用宽 SIMD 字(可能显着)加速?

0 投票
0 回答
510 浏览

python - 隐式重启 Lanczos 方法

我想为隐式重启 Lanczos 方法编写简单的玩具代码。没有隐式重启,代码可以完美运行,但是当我打开重启时,我无法得到正确的解决方案

据我所知,新构建的 w 应该与所有新的 Lanczos 向量正交。对于第一次重启,正交性得到了很好的保留,但从第二次重启开始,正交性被严重破坏,程序找不到合适的特征值。

我已经花了几十个小时来修复它。我差点放弃了……这是我的python代码

0 投票
1 回答
610 浏览

ios - 如何修复 Core Image 的 CILanczosScaleTransform 过滤器边框伪影?

我想为 iOS 实现图像缩小算法。在阅读了 Core ImagesCILanczosScaleTransform非常适合它之后,我通过以下方式实现了它:

它运行良好,但我得到了一个经典的边界伪影,这可能是由于算法的像素邻域基础。我在 Apple 的文档中找不到任何关于此的内容。有没有比渲染更大的图像然后裁剪边框来解决这个问题更聪明的方法?

在此处输入图像描述

0 投票
0 回答
435 浏览

android - OpenGL 中的 LANCZOS 插值

是否可以在 OpenGL for android 的 GPU 上实现 LANCZOS 插值,或者你会说这是 OpenCL 的任务吗?

时间性能和设备支持是重要的问题。

最好的问候,大卫

0 投票
0 回答
233 浏览

fortran - Fortran 中的即时 OpenMP 矩阵向量乘法

我正在编写一个 Fortran 代码来执行矩阵向量乘法。在矩阵元素没有预先存储的意义上,乘法是即时执行的。该代码在串行情况下运行良好,但是当我使用 OpenMP 实现并行化情况时,如下所示,我无法获得正确的输出。有人可以建议我做错了什么吗?

0 投票
2 回答
540 浏览

c# - C#中的图像缩小

我将图像大小减小到 8*8 以计算平均哈希值,以使用 C# 查找相似图像。我打算使用 Lanczos 算法来减小图像大小,因为它似乎给出了很好的结果(从互联网上读取,python 图像哈希算法也使用相同的方法)。你能指出我在哪里可以找到用 C# 实现的 Lanczos 算法吗?还有比 Lanczos 更好的方法。请在这里帮忙。

谢谢

0 投票
1 回答
198 浏览

julia - 特征值问题

我正在尝试对 julia 中的矩阵进行对角化,但矩阵本身太大而无法计算。但我可以有效地计算矩阵向量积。我正在寻找一种解决方案,以便我可以将矩阵向量积用于 eigs 并使用 lanzcos 方法解决。是否有一个包可以以矩阵向量积的形式给我一个输出?

有人可以帮忙吗?

0 投票
1 回答
213 浏览

python - scipy 的稀疏 eigs 产生错误的特征向量

我对以下问题有点困惑:

我正在计算量子通道的固定点,这意味着我想计算特定矩阵的前导特征向量。该矩阵的维数为 n^2 xn^2 并以这样的方式定义:重新整形为形状为 nxn 的矩阵的前导特征值是正矩阵(具有正特征值的自伴随)。

但是,如果我这样做,scipy.sparse.linalg.eigs我会得到错误的结果。但是,精确计算(使用scipy.linalg.eig)可以正常工作。我试着玩弄求解器的参数kncv但没有让 i 正常工作,除非我k=n**2在这种情况下设置eigs只是指eig. 但是,如果我确实想到通道(super_op在下面的脚本中)实际上被编码为LinearOperator. 所以我依靠使用eigs:/

有人知道如何正确运行吗?

提前感谢大家!

结果是:

为了完整性:

Python 3.5.2 numpy 1.16.1
scipy 1.2.1