opencv c++ 锐化
时间: 2023-09-10 13:08:27 浏览: 89
opencv实现边缘锐化
4星 · 用户满意度95%
OpenCV中可以使用卷积运算实现图像的锐化。卷积核可以使用预定义的核,也可以自己定义。下面是一个简单的锐化示例代码:
```c++
#include <opencv2/opencv.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main(int argc, char** argv)
{
// 读取图像
Mat src = imread("lena.jpg");
// 定义锐化卷积核
Mat kernel = (Mat_<char>(3, 3) << 0, -1, 0, -1, 5, -1, 0, -1, 0);
// 进行卷积运算
Mat dst;
filter2D(src, dst, src.depth(), kernel);
// 显示结果
imshow("src", src);
imshow("dst", dst);
waitKey(0);
return 0;
}
```
这里使用了一个$3\times3$的卷积核,对图像进行卷积运算得到锐化后的图像。在卷积核中,中心元素的权重较大,周围元素的权重较小,这样可以突出图像的边缘和细节。
阅读全文