用opencv的C++实现图片毛玻璃的特效
时间: 2023-06-18 09:07:10 浏览: 119
实现图片毛玻璃的特效,可以使用opencv中的模糊函数blur()。具体步骤如下:
1. 加载图片
使用opencv中的imread()函数加载图片,代码如下:
```
cv::Mat img = cv::imread("image.jpg");
```
2. 图片模糊
使用blur()函数进行模糊处理,代码如下:
```
cv::Mat blurImg;
cv::blur(img, blurImg, cv::Size(15, 15));
```
其中cv::Size(15, 15)表示模糊核的大小,可以根据需要进行调整。
3. 保存图片
使用imwrite()函数保存处理后的图片,代码如下:
```
cv::imwrite("blurImage.jpg", blurImg);
```
完整代码如下:
```
#include <opencv2/opencv.hpp>
#include <iostream>
int main(int argc, char** argv)
{
// 加载图片
cv::Mat img = cv::imread("image.jpg");
// 图片模糊
cv::Mat blurImg;
cv::blur(img, blurImg, cv::Size(15, 15));
// 保存图片
cv::imwrite("blurImage.jpg", blurImg);
return 0;
}
```
注意:使用该方法处理大图时可能会很慢,可以考虑使用OpenCV中的resize()函数将图片缩小后再进行处理。
阅读全文