数字图像处理(c++ opencv)--持续更新
前言
目前从事传统图像处理方面的工作,因为在学校学习这方面不够多不够深入,因此工作前面几年基本是学习状态。
以目前的了解准备从一些方面进行传统图像处理算法方面的学习,集中在下面的文章中:
使用c++ opencv进行数字图像处理学习;
工具:VS2019, opencv4.53,冈萨雷斯《数字图像处理》第四版;
这里只是图像处理入门的一些知识,调用了opencv的一些简单函数或者实现了一些简单的图像处理算法。内容不算严谨,代码仅作示范。
目前关于c++数字图像处理的基础内容暂时完结,后面会继续更新其他关于c++数字图像处理方法的相关学习笔记。
环境配置
(1) visual studio2019配置opencv(详细教程)
(2) visual studio2019配置opencv(详细教程)升级版
一、基本操作
1、图像的读取、显示和保存
数字图像处理( c++ opencv):图像的读取、显示和保存
2、Mat创建图像(矩阵),获取图像信息,感兴趣区域(Rect)
数字图像处理(c++ opencv):Mat创建图像(矩阵),获取图像信息,感兴趣区域(Rect)
3、通过鼠标点击操作获取图像的像素坐标和像素值
数字图像处理( c++ opencv):通过鼠标点击操作获取图像的像素坐标和像素值
4、访问图像像素,遍历图像像素
数字图像处理( c++ opencv):访问图像像素,遍历图像像素
二、灰度变换和空间滤波基础
1、灰度变换(灰度反转,对数变换,冥律变换)
数字图像处理(c++ opencv):灰度变换(灰度反转,对数变换,冥律(伽马)变换)
2、 图像处理:直方图处理(直方图均衡化,直方图匹配(规定化))
数字图像处理(c++ opencv):直方图处理(直方图均衡化,直方图匹配(规定化))
3、 空间滤波基础,低通滤波-均值滤波器
数字图像处理(c++ opencv):空间滤波基础,低通滤波之均值滤波器
4、空间滤波-低通滤波-高斯滤波器
5、空间滤波-低通滤波-中值滤波器
6、锐化(高通)空间滤波器基础,锐化空间滤波之拉普拉斯(二阶导数滤波)
数字图像处理(c++ opencv):锐化(高通)空间滤波器基础,锐化空间滤波之拉普拉斯(二阶导数滤波)
三、频率域滤波
1、傅里叶变换及频谱图
2、频率域滤波–低通滤波–理想低通滤波
数字图像处理(c++ opencv) :频率域滤波--低通滤波--理想低通滤波
3、频率域滤波–低通滤波–高斯低通滤波
数字图像处理(c++ opencv):频率域滤波--低通滤波--高斯低通滤波
4、频率域滤波–低通滤波–巴特沃斯低通滤波
数字图像处理(c++ opencv):频率域滤波--低通滤波--巴特沃斯低通滤波
5、频率域滤波–高通滤波–理想高通滤波
数字图像处理(c++ opencv):频率域滤波--高通滤波--理想高通滤波
6、频率域滤波–高通滤波–高斯高通滤波
数字图像处理(c++ opencv) :频率域滤波--高通滤波--高斯高通滤波
7、频率域滤波–高通滤波–巴特沃斯高通滤波
数字图像处理(c++ opencv) :频率域滤波--高通滤波--巴特沃斯高通滤波
8、频率域滤波–拉普拉斯滤波(锐化)
数字图像处理(c++ opencv):频率域滤波--拉普拉斯滤波(锐化)
9、频率域滤波–同态滤波
数字图像处理(c++ opencv):频率域滤波--同态滤波
四、图像复原与重建
1、图像复原与重建--常见的噪声模型+图像中噪声模型的估计+常见的滤波方法
数字图像处理(c++ opencv):常见的噪声模型+图像中噪声模型的估计+常见的滤波方法
2、图像复原与重建-常见的滤波方法--均值滤波器--算数平均滤波器
数字图像处理(c++ opencv):图像复原与重建-常见的滤波方法--均值滤波器--算数平均滤波器
3、图像复原与重建-常见的滤波方法--均值滤波器--几何均值滤波器
数字图像处理(c++ opencv):图像复原与重建-常见的滤波方法--均值滤波器—几何均值滤波器
4、图像复原与重建-常见的滤波方法--均值滤波器--谐波平均滤波器
数字图像处理(c++ opencv):图像复原与重建-常见的滤波方法--均值滤波器—谐波均值滤波器
5、图像复原与重建-常见的滤波方法--均值滤波器--反谐波平均滤波器
数字图像处理(c++ opencv):图像复原与重建-常见的滤波方法--均值滤波器—反谐波均值滤波器
6、图像复原与重建-常见的滤波方法--统计排序滤波器--中值滤波器
数字图像处理(c++ opencv):图像复原与重建-常见的滤波方法--统计排序滤波器--中值滤波器
7、图像复原与重建-常见的滤波方法--统计排序滤波器--最大值滤波器
数字图像处理(c++ opencv):图像复原与重建-常见的滤波方法--统计排序滤波器--最大值滤波器
8、图像复原与重建-常见的滤波方法--统计排序滤波器--最小值滤波器
数字图像处理(c++ opencv):图像复原与重建-常见的滤波方法--统计排序滤波器--最小值滤波器
9、图像复原与重建-常见的滤波方法--统计排序滤波器--中点滤波器
数字图像处理(c++ opencv):图像复原与重建-常见的滤波方法--统计排序滤波器--中点滤波器
10、图像复原与重建-常见的滤波方法--统计排序滤波器--修正阿尔法均值滤波器
数字图像处理(c++ opencv):图像复原与重建-常见的滤波方法--统计排序滤波器--修正阿尔法均值滤波器
11、图像复原与重建-常见的滤波方法--自适应滤波器--自适应局部降噪滤波器
数字图像处理(c++ opencv):图像复原与重建-常见的滤波方法--自适应滤波器--自适应局部降噪滤波器
12、图像复原与重建-常见的滤波方法--自适应滤波器--自适应中值滤波器
数字图像处理(c++ opencv):图像复原与重建-常见的滤波方法--自适应滤波器--自适应中值滤波器
五、彩色图像处理
1、彩色图像处理-彩色基础与彩色模型
数字图像处理(c++ opencv):彩色图像处理-彩色基础与彩色模型
六、形态学图像处理
1、形态学图像处理--图像腐蚀与膨胀
数字图像处理(c++ opencv):形态学图像处理-图像腐蚀与膨胀
2、形态学图像处理--开运算闭运算
数字图像处理(c++ opencv):形态学图像处理-开运算与闭运算
3、形态学图像处理-- morphologyEx函数
数字图像处理(c++ opencv):形态学图像处理-morphologyEx函数实现腐蚀膨胀、开闭运算、击中-击不中变换、形态学梯度、顶帽黑帽变换
4、形态学图像处理--提取连通域
数字图像处理(c++ opencv):形态学图像处理-提取连通域
七、图像分割
1、图像分割--孤立点检测
2、图像分割--线检测
3、图像分割--基本边缘检测--边缘检测步骤、图像梯度以及常见的梯度算子
数字图像处理(c++ opencv):图像分割-基本边缘检测--边缘检测步骤、图像梯度以及常见的梯度算子
4、图像分割--基本边缘检测--Roberts、Prewitt、Sobel边缘检测
数字图像处理(c++ opencv):图像分割-基本边缘检测--Roberts、Prewitt、Sobel边缘检测
5、图像分割--基本边缘检测--Kirsch边缘检测
数字图像处理(c++ opencv):图像分割-基本边缘检测--Kirsch边缘检测
6、图像分割--基本边缘检测--log边缘检测
数字图像处理(c++ opencv):图像分割-基本边缘检测--log边缘检测
7、图像分割--基本边缘检测--canny边缘检测
数字图像处理(c++ opencv):图像分割-基本边缘检测--canny边缘检测
8、图像分割-阈值分割-全局阈值分割
数字图像处理(c++ opencv):图像分割-阈值分割-全局阈值分割