OpenCV使用filter2D实现图像对比度提升
Opencv 实现 提升 图像 使用 对比度
2023-09-14 09:05:26 时间
1、概述
案例:使用filter2d+掩码矩阵来实现图像对比度提升。
主要关注filter2d的前三个参数:
1.第一个参数:原始图像
2.第二个参数:卷积后的图像
3.第三个参数:图形深度,要和原图像相同
2、效果图
(看人物图像,左边人物比较模糊,提升对比度后突现由朦胧变为清晰)
3、示例代码
#include <opencv2/opencv.hpp>
#include <iostream>
#include <math.h>
using namespace cv;
using namespace std;
int main(int argc, char const *argv[])
{
Mat src,dst;
src = imread("girl.jpg");
if(!src.data){
cout << "count not load image ..."<<endl;
return -1;
}
imshow("src",src);
double t = getTickCount();
//定义一个增强对比度的卷积核
Mat kernel = (Mat_<char>(3,3)<<0, -1, 0, -1, 5, -1, 0, -1, 0);
//进行掩码卷积操作
filter2D(src,dst,src.depth(),kernel);
double timeconsume = (getTickCount()-t)/getTickFrequency();
cout <<"time timeconsume%f"<<timeconsume<<endl;
imshow("dst",dst);
waitKey(0);
return 0;
}
本文福利,莬费领取Qt开发学习资料包、技术视频,内容包括(C++语言基础,Qt编程入门,QT信号与槽机制,QT界面开发-图像绘制,QT网络,QT数据库编程,QT项目实战,QSS,OpenCV,Quick模块,面试题等等)↓↓↓↓↓↓见下面↓↓文章底部点击莬费领取↓↓
相关文章
- 使用C++ OpenCV实现椭圆区域检测与Aruco码的生成与检测并估计位姿
- OpenCV人脸识别的原理 .
- Canny算法解析,opencv源码实现及实例[通俗易懂]
- OpenCV对图像遍历的高效方法
- Docker安装OpenCV
- opencv 人脸识别 (二)训练和识别
- 使用C++ OpenCV实现椭圆区域检测与Aruco码的生成与检测并估计位姿
- 【OpenCV】Chapter9.边缘检测与图像分割
- opencv 矩阵操作函数
- OpenCV-Python实战(1) —— 给图片添加图片水印【利用 OpenCV 像素的读写原理实现】
- opencv remap matlab,如何使用OpenCV的remap函数?
- 【计算机视觉】使用OpenCV处理色彩空间(Python版)
- OpenCV这么简单为啥不学——1.5、解决putText中文乱码问题
- 【Android OpenCV】Visual Studio 创建支持 OpenCV 库的 CMake 工程 ② ( VS 中创建 CMake 工程 | CMake 工程中配置 OpenCV 头文件 )
- Linux 安装OpenCV简易指南(linux安装opencv)
- 学习Linux下的OpenCV技术,实现图像处理与分析(opencvlinux)
- 手把手教你如何用 OpenCV + Python 实现人脸识别
- 25 行 Python 代码实现人脸检测——OpenCV 技术教程