c++对图片进行锐化
时间: 2023-07-01 08:28:51 浏览: 81
数字图像处理图像锐化C++实现
5星 · 资源好评率100%
你可以使用C++中的OpenCV库来对图片进行锐化。下面是一个简单的示例代码:
```c++
#include <opencv2/opencv.hpp>
using namespace cv;
Mat Sharpen(Mat image, int strength)
{
//锐化矩阵
Mat kernel = (Mat_<float>(3, 3) <<
-1 * strength, -1 * strength, -1 * strength,
-1 * strength, 9 * strength, -1 * strength,
-1 * strength, -1 * strength, -1 * strength);
//锐化
Mat sharpenImage;
filter2D(image, sharpenImage, image.depth(), kernel);
return sharpenImage;
}
```
其中,参数 `image` 是待锐化的图片,`strength` 是锐化的强度,数值越大锐化效果越明显。调用示例:
```c++
Mat image = imread("test.jpg");
Mat sharpenImage = Sharpen(image, 3);
imwrite("sharpened.jpg", sharpenImage);
```
需要注意的是,OpenCV库在编译时需要链接对应的库文件。如果是使用Visual Studio进行编译,可以在项目属性中的“VC++目录”中添加OpenCV库的头文件和库文件路径,并在“链接器”->“输入”->“附加依赖项”中添加所需的库文件名。
阅读全文