gpt4 book ai didi

image-processing - 如何为图像中的每条水平线数据实现一维 FFT 滤波器

转载 作者:太空宇宙 更新时间:2023-11-03 21:16:47 29 4
gpt4 key购买 nike

我希望对图像的每条水平线应用频域滤波器,例如低通或带通。这可能使用 opencv 吗?

最佳答案

我认为您需要详细说明您的问题。也许,举一些具体的例子。

如果我将您的问题解释为:

你有一张 10 x 10 的图片

line 1

line 2

line 3 ...

line 10

您想在这些线路上独立应用一些滤波器(低通/带通)。

然后,首先您需要设计水平过滤器(使用您想要的任何工具)。

让我们假设(不失一般性)您有 2 个过滤器:

低通:1x10 图像

带通:1x10 图像

然后您可以使用 cv::dft 将这些滤波器转换为频域。还可以使用 cv::dft 将图像转换为频域。当然,您应该分别转换各个行。一种方法是:

cv::Mat im = cv::imread('myimage.jpg', 1);
cv::Mat one_row_in_frequency_domain;
for (int i=0; i<im.rows; i++){
cv::Mat one_row = im.row(i);
cv::dft(one_row, one_row_in_frequency_domain);

// Apply your filter by multiplying
}

关于image-processing - 如何为图像中的每条水平线数据实现一维 FFT 滤波器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3183078/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com