问题标签 [dct]

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 回答
210 浏览

c++ - IDCT矩阵的无分支生成?

我有一些在 GPU 上执行 IDCT 的代码。我注意到在 gpu 上生成 IDCT 矩阵似乎更快,而不是预先计算转换矩阵并将其放入常量内存中。

问题是生成 IDCT 矩阵的代码有一个不适合 GPU 的分支。

我想知道是否有任何替代方法可以在 GPU 上生成更快的 IDCT 矩阵?

0 投票
1 回答
309 浏览

components - How can we migrate inventory of files and components from one teamsite server to another? (unix box)

I have certain list of files (and components). We basically have two environments - test and prod. The new site has been set up in test and needs to migrate to prod.

Any way to do this? Also does this migration not impact UIDs (unique Ids/internal IDs)?

0 投票
2 回答
982 浏览

python - 在 Scipy(或其他库)中是否有与 Python 的 matlab 'idealfilter' 等效的东西?

我正在为 Python 寻找在 Matlab 中实现的时间序列Idealfilter的等效项。

我的目标是使用 Python 中的欧拉视频放大论文中使用的离散余弦变换实现一个理想的过滤器,以便从标准视频中获取人类的心跳。我正在使用他们的视频作为我的输入,并且我已经实现了带通滤波器方法,但是我无法找到一个可以在我的脚本中使用的理想滤波器方法。

他们声明他们使用 0.83 - 1.0Hz 的 DCT 实现了一个理想的滤波器。

我的问题是 Matlab 中的理想滤波器将截止频率作为输入,但我不认为它是用 dct 实现的。

相反,在 scipy.fftpack 中找到的 DCT 滤波器不会将频率截止值作为输入。

如果我必须以某种类型的连续使用这些,请告诉我。

如果存在这样的等效功能,我想尝试使用它,看看它是否会产生与他们获得的结果相似的结果。

0 投票
1 回答
4137 浏览

algorithm - C# 中 DCT、DFT 的简明实现?

我一直在研究用 C# 实现的离散余弦变换离散傅里叶变换的各种实现,但没有一个像我想要的那样简洁。

  • 一个奖励点是,代码源自一个更大的开源项目(即久经考验的)。

  • 具有最佳指针的答案将是公认的答案

目前发现

PS:原则上我正在寻找一维实现,但是“矢量化”输入数据是微不足道的,所以经典的二维实现同样受欢迎。

0 投票
0 回答
584 浏览

image-processing - 图像散列的离散余弦变换更灵活

我正在为我的图像使用感知散列的概念。使用 DCT 作为基础数学可以很好地工作。

我得到了很好的匹配图像,这些图像是相同的一些“攻击”,即纵横比、亮度、对比度和大多数与颜色变化相关的东西。

但是,我正在寻找更多的灵活性,并希望能够找到具有相似性质的图像,使用图像来搜索其他图像。类似于TinyEye的功能

DCT 让我获得了图像(结构)的最低频率。我可以在这里做些什么来增加灵活性吗?

0 投票
1 回答
4473 浏览

matlab - 无 FFT 的 DCT 2D

我正在尝试在 Matlab 中实现 DCT(离散余弦变换),但不使用快速傅里叶变换,只需使用下一个公式: 在此处输入图像描述

我知道这可能效率低下,但这样我就会知道它是如何工作的。

首先,我将灰度图像划分为 8x8 块,然后将公式应用于每个块。

我的dctII函数如下所示:

我还创建了一个求和函数以使事情更具可读性(至少对我而言)。

问题是我的算法的结果与 Matlab 预建函数dct2的结果不同。也许我根本没有得到 DCT 算法。你知道我做错了什么吗?我知道所有这些嵌套循环都会严重影响性能,但我无法想象如何在不使用 FFT 的情况下解决这个问题。

任何帮助将不胜感激,谢谢。

0 投票
1 回答
760 浏览

c++ - DCT 的输入值是多少?

所以我正在尝试编写一个简单的 bmp to jpeg 图像转换器程序。如您所知,jpeg 压缩、DCT、量化和熵编码涉及 3 个主要步骤。我想将在每个中间阶段计算的值写入文件。

现在我的问题是,在我将每个像素的 RGB 值转换为 YUV 格式并将其存储到 3 个单独的二维数组中之后,是否在每个数组上计算 DCT?因此给了我 3 个不同的阵列并应用了 DCT?如果这是正确的,那么下一步就是量化对应于 Y、U 和 V 的每个数组。然后必须对这些二维数组中的每一个应用熵编码。

这 3 个数组如何组合/写入文件,以便它们可以作为 .jpeg 文件读取?

0 投票
1 回答
738 浏览

c - 使用 libJPEG 访问 DCT 系数和量化值

我正在读取一个位图文件并使用 libJPEG 库将其压缩为 JPEG 文件,这很简单。但现在我想在压缩期间将每个中间阶段,即 DCT 和量化写入文件。有没有办法做到这一点?

0 投票
1 回答
482 浏览

cuda - CUDA DCT 仅在 blockDim.x 为 1 时有效

我刚开始学习 CUDA,只知道非常基本的东西。我正在尝试开发一个使用矩阵乘法方法执行 8x8 DCT 的 CUDA 程序。计算 8x8 DCT 系数矩阵 D,然后 DCT 变换为 D'AD。每个线程计算 1 个数据点,每个块为 8x8。我编写了一个顺序 DCT 并比较了输出文件中的结果。

这就是问题所在。当块数为 1xN 时,一切正常。当块数为 MxN 时(M 是任何大于 1 的数),内核给出错误的结果。我认为问题应该是我的块索引,但我找不到问题。

有人可以提供一些帮助吗?我知道这是一个非常基本的程序,但我真的需要它。任何意见将不胜感激!提前致谢!

0 投票
2 回答
991 浏览

ios - JPEG 保存到 ios 照片库后 DCT 系数发生变化

将 JPEG 图像保存到 iOS 照片库时有一个奇怪的变化。我不知道我是否做错了什么。我正在使用 libjpeg-turbo 访问 JPEG 图像,然后修改图像的 DCT 系数。修改后的图像(仅在 DCT 中,没有别的)保存在照片库中。但是打开保存的图像后,DCT系数与我在上一步中更改的不同。

详细地,让我解释一下我是如何为每个 DCT 添加 +1 的。我正在使用 libjpeg 库的“example.c”中的标准程序:

在此之后,我在文件中保存了一个新的 JPEG 图像,可以说“new.jpg”。现在我想将这个“new.jpg”保存到照片库中,所以我通过以下方式加载图像:

我还检查了 DCT 系数是否保持变化。在我检查了修改后的 DCT 之后,我将保存它:

图像“new.jpg”现在保存在照片库中。

到目前为止,一切都很好,DCT 系数的工作方式与 libjpeg 库一样。当我再次加载保存的图像并查看 DCT 系数时,就会发生变化。我发现 DCT 发生了变化,我不知道为什么。当您要保存 JPEG 图像时,iOS 是否使用了任何优化算法?为什么要更改 DCT。

我正在使用以下过程来读取保存的图像:

此外,这是原始 DCT 的示例,通过向所有添加 +1 修改的 DCT,以及在将其保存到照片库后为一个 8x8 块加载的 DCT:

任何帮助,将不胜感激。我真的不知道为什么在将图像保存到照片库后会更改 DCT。