ubuntu环境下编写中值滤波
时间: 2023-08-17 19:04:03 浏览: 117
中值滤波程序
中值滤波是一种常用的图像处理算法,可以用于图像去噪等应用场景。在 Ubuntu 环境下,可以使用 OpenCV 库来实现中值滤波。
以下是一段使用 OpenCV 实现中值滤波的示例代码:
```
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main()
{
// 读取图像
Mat img = imread("test.jpg", 0);
// 检查图像是否加载成功
if(img.empty())
{
cout << "Failed to load image" << endl;
return -1;
}
// 中值滤波
Mat dst;
medianBlur(img, dst, 5);
// 显示结果
namedWindow("Original Image", WINDOW_NORMAL);
namedWindow("Processed Image", WINDOW_NORMAL);
imshow("Original Image", img);
imshow("Processed Image", dst);
// 等待按键
waitKey(0);
return 0;
}
```
这段代码首先使用 `imread` 函数读取一张灰度图像,然后使用 `medianBlur` 函数对图像进行中值滤波。最后通过 `imshow` 函数显示原始图像和处理后的图像,`waitKey` 函数等待按键。其中 `medianBlur` 函数的第二个参数是输出图像,第三个参数是卷积核大小,表示取卷积核内像素的中值作为输出像素的值。
阅读全文