- 博客(35)
- 资源 (1)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 数字图像处理c++ opencv(VS2019 opencv4.53)持续更新
系列文章目录文章目录系列文章目录前言一、基本操作1.图像的读取,显示,保存2.前言使用c++ opencv进行数字图像处理学习;工具:VS2019, opencv4.53;持续更新一、基本操作1.图像的读取,显示,保存图像的读取,显示,保存2....
2021-07-27 15:45:41
3989
原创 matlab数字图像处理:图像复原及重建--常见的噪声模型以及滤波方法
文章目录前言一、图像退化/复原过程的模型二、常见空间域噪声模型1.高斯噪声2.瑞利噪声3.伽马噪声4.指数噪声5.均匀分布噪声6.脉冲(椒盐)噪声三、图像中噪声判别四、空间滤波去噪1.算数均值滤波器及MATLAB代码2.几何均值滤波器及MATLAB代码3.谐波均值滤波器及MATLAB代码4.逆谐波均值滤波器及MATLAB代码5.中值滤波器及MATLAB代码6.最大值、最小值滤波器及MATLAB代码7.中点滤波器及MATLAB代码8.修正的阿尔法均值滤波器及MATLAB代码9.自适应局部降低噪声滤波器及MA.
2022-03-31 10:47:17
6011
原创 数字图像处理(c++ opencv):图像复原与重建--常见的噪声模型—高斯噪声
文章目录前言一、原理1.概率密度函数及示意图灰度分布表示曲线2.高斯随机数的产生2.代码前言数字图像处理c++ opencv(VS2019 opencv4.53)持续更新一、原理1.概率密度函数及示意图灰度分布表示曲线2.高斯随机数的产生Box-Muller 算法:先得到服从均匀分布的随机数,再将服从均匀分布的随机数转变为服从正态分布。设U1和U2是服从均匀分布的随机数,则通过下列公式或者得到正态分布随机数Z,然后通过均值和标准差计算对应的高斯随机数:2.代码代码如下.
2022-03-30 18:36:24
5238
原创 c++ opencv数字图像处理:频率域滤波--同态滤波
文章目录前言一、同态滤波原理1.处理原理二、同态滤波器模板及MATLAB代码1.同态滤波器2.代码前言数字图像处理c++ opencv(VS2019 opencv4.53)持续更新一、同态滤波原理1.处理原理(1)认为图像f(x,y)由两部分组成:照射分量i(x,y),反射分量r(x,y):f(x,y)=i(x,y)∗r(x,y)f(x,y)=i(x,y)*r(x,y)f(x,y)=i(x,y)∗r(x,y)(2)但上式不能直接用于对两个分量在频率域进行处理,因为乘积的傅里叶变换不等于变.
2021-12-01 14:31:50
4260
1
原创 c++ opencv数字图像处理:频率域滤波--拉普拉斯滤波(锐化)
文章目录前言一、拉普拉斯二、代码前言数字图像处理c++ opencv(VS2019 opencv4.53)持续更新一、拉普拉斯频率域中的拉普拉斯:二、代码主代码:#include<iostream>#include<opencv2/opencv.hpp>#include "MY_DFT.h"#include <math.h>#define M_PI 3.14159265358979323846using namespace cv;u.
2021-11-30 17:52:38
1597
原创 c++ opencv数字图像处理:频率域滤波--高通滤波--理想高通滤波
文章目录前言一、理想高通滤波器(IHPF)二、代码前言数字图像处理c++ opencv(VS2019 opencv4.53)持续更新一、理想高通滤波器(IHPF)二、代码主代码:#include<iostream>#include<opencv2/opencv.hpp>#include "MY_DFT.h"using namespace cv;using namespace std;int main(){ Mat image, image_gr.
2021-11-30 16:40:23
2186
原创 c++ opencv数字图像处理:频率域滤波--高通滤波--高斯高通滤波
文章目录前言一、高斯高通滤波器(GHPF)二、代码前言数字图像处理c++ opencv(VS2019 opencv4.53)持续更新一、高斯高通滤波器(GHPF)D2(u,v)为距离中心点的距离平方,D0为设置半径D^2(u,v)为距离中心点的距离平方,D_0为设置半径D2(u,v)为距离中心点的距离平方,D0为设置半径二、代码主代码:#include<iostream>#include<opencv2/opencv.hpp>#include "MY_D.
2021-11-30 16:34:16
2705
原创 c++ opencv数字图像处理:频率域滤波--高通滤波--巴特沃斯高通滤波
文章目录前言一、巴特沃斯高通滤波器(BHPF)二、代码前言数字图像处理c++ opencv(VS2019 opencv4.53)持续更新一、巴特沃斯高通滤波器(BHPF)D2(u,v)为距离中心点的距离平方,D0为设置半径,通过n的值来调整滤波器D^2(u,v)为距离中心点的距离平方,D_0为设置半径,通过n的值来调整滤波器D2(u,v)为距离中心点的距离平方,D0为设置半径,通过n的值来调整滤波器二、代码主代码:#include<iostream>#include&.
2021-11-30 16:25:47
4609
原创 c++ opencv数字图像处理:频率域滤波--低通滤波--巴特沃斯低通滤波
文章目录前言一、巴特沃斯低通滤波器(BLPF)二、代码三、说明前言数字图像处理c++ opencv(VS2019 opencv4.53)持续更新一、巴特沃斯低通滤波器(BLPF)D2(u,v)为距离中心点的距离平方,D0为设置半径,通过n的值来调整滤波器D^2(u,v)为距离中心点的距离平方,D_0为设置半径,通过n的值来调整滤波器D2(u,v)为距离中心点的距离平方,D0为设置半径,通过n的值来调整滤波器二、代码主代码:#include<iostream>#inc.
2021-11-30 10:15:36
2073
原创 c++ opencv数字图像处理:频率域滤波--低通滤波--高斯低通滤波
文章目录前言一、高斯低通滤波器(GLPF)二、代码三、说明前言数字图像处理c++ opencv(VS2019 opencv4.53)持续更新一、高斯低通滤波器(GLPF)二、代码主代码:#include<iostream>#include<opencv2/opencv.hpp>#include "MY_DFT.h"#include "Salt.h"using namespace cv;using namespace std;int main().
2021-11-30 09:30:17
1256
原创 c++ opencv数字图像处理:频率域滤波--低通滤波--理想低通滤波
文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言数字图像处理c++ opencv(VS2019 opencv4.53)持续更新一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as sn.
2021-11-29 14:30:49
4868
原创 c++ opencv数字图像处理:频率域滤波基础,傅里叶变换及频谱图
文章目录前言一、傅里叶变换1.傅里叶级数概念2.傅里叶级数公式3.傅里叶变换二、频谱图1.引入库2.读入数据总结前言数字图像处理c++ opencv(VS2019 opencv4.53)持续更新一、傅里叶变换1.傅里叶级数概念维基百科:傅里叶级数(Fourier series)是把类似波的函数表示成简单正弦波的方式。更正式地说,对于满足狄利克雷定理的周期函数,其傅里叶级数是由一组简单振荡函数(正弦与余弦函数,或等价的复指数函数)的加权和表示的方法。即 任何函数都可以分解为一组简单的正弦与余.
2021-11-26 10:56:02
4065
原创 c++bug1:程序正确,退出时出错(execommon文档中出现异常)。
某一天,在用VS时运行前两天正常的代码时,程序正确出结果,但是在结束程序时出现错误:检查程序未果。去谷歌搜索,发现有人也遇到这个错误,一个个尝试,发现有一篇文章说是因为金山词霸打开的原因导致出现错误。我就想是不是最近安装了什么新软件或者有什么程序正在运行导致这个错误。于是打开任务管理器发现一个下载视频的软件正在后台进程运行中,关闭后程序回复正常。如果有类似错误,大家可以看看后台进程有什么问题。...
2021-11-24 10:13:17
3066
2
原创 c++ opencv数字图像处理:锐化(高通)空间滤波器基础,锐化空间滤波之拉普拉斯(二阶导数滤波)
文章目录前言一、锐化空间滤波基础二、使用步骤1.引入库2.读入数据总结前言数字图像处理c++ opencv(VS2019 opencv4.53)持续更新一、锐化空间滤波基础一阶导数定义为差分二、使用步骤1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsimport warningswarnings.filterwarni.
2021-11-19 15:33:27
4370
原创 c++ opencv数字图像处理:低通滤波之统计排序滤波器(中值滤波器)
文章目录前言一、中值滤波器1.代码前言数字图像处理c++ opencv(VS2019 opencv4.53)持续更新一、中值滤波器中值滤波器即取领域像素值的中值作为像素结果1.代码代码如下(示例):#include<iostream>#include<opencv2/opencv.hpp>#include"Salt.h"using namespace cv;using namespace std;//定义高斯滤波函数void myfilter(in.
2021-11-18 15:45:57
2599
原创 c++ opencv数字图像处理:低通滤波之高斯滤波器
文章目录前言一、数学基础:高斯函数1.一维高斯函数2.二维高斯函数二、高斯滤波器1.程序2.读入数据总结前言数字图像处理c++ opencv(VS2019 opencv4.53)持续更新一、数学基础:高斯函数1.一维高斯函数在统计学与概率论中,高斯函数是正态分布(高斯分布)的密度函数,一维高斯表达式如下:其中,其中a、b与 c为实数常数,且a > 0.a表示得到曲线的高度;b(μ)是指曲线在x轴的中心;c(σ)指width(与半峰全宽有关);2.二维高斯函数二维高斯表.
2021-11-18 14:13:09
3696
2
原创 c++ opencv数字图像处理:空间滤波基础,低通滤波之均值滤波(盒式滤波)器
文章目录前言一、可分离滤波器核二、盒式滤波器核三、低通高斯滤波器核四、统计排序(非线性)滤波器五、opencv函数总结1.引入库前言数字图像处理c++ opencv(VS2019 opencv4.53)持续更新一、可分离滤波器核二、盒式滤波器核三、低通高斯滤波器核四、统计排序(非线性)滤波器五、opencv函数总结1.引入库代码如下(示例):import numpy as np...
2021-11-16 14:22:37
4314
原创 c++ opencv 图像处理:直方图处理(直方图均衡化,直方图匹配(规定化))
文章目录前言一、直方图(histogram)二、直方图处理1.直方图均衡化2.直方图匹配(规定化)3.局部直方图处理4.直方图统计量增强图像三、opencv函数总结前言数字图像处理c++ opencv(VS2019 opencv4.53)持续更新一、直方图(histogram)非归一化直方图:h(rk)=nkh(r_k)=n_k h(rk)=nk其中rkr_krk为图像像素灰度值,比如常见的0-255,nkn_knk为图像中某一灰度级的像素个数。归一化直方图:p(rk)=h(r.
2021-09-22 16:30:23
16592
5
原创 c++ opencv 图像处理:灰度变换(灰度反转,对数变换,冥律(伽马)变换)
文章目录前言一、灰度变换1.灰度反转2.对数变换3.冥律(伽马)变换4.分段线性变换前言数字图像处理c++ opencv(VS2019 opencv4.53)持续更新一、灰度变换灰度变换原理:利用变换函数T将原图像素灰度值r映射为像素值s。s=T(r) s=T( r ) s=T(r)1.灰度反转灰度反转:将亮暗对调,可以增强图像暗色区域中的细节.s=L−1−rs=L-1-rs=L−1−rL为图像灰度级。代码如下(示例):#include<iostream>#in.
2021-09-16 16:38:11
9959
2
原创 c++ opencv数字图像处理:访问图像像素,遍历图像像素
文章目录前言一、访问图像像素1.访问(j,i)处像素2.例子:在图像中加入白色椒盐噪声二、遍历图像像素1.指针扫描2.迭代器扫描总结前言一、访问图像像素1.访问(j,i)处像素以8位(0~255)灰度图像和BGR彩色图像为例,用at可以访问图像像素://灰度图像:image.at<uchar>(j, i) //j为行数,i为列数//BGR彩色图像image.at<Vec3b>(j, i)[0] //B分量image.at<Vec3b>(j, i)[.
2021-08-23 18:49:11
3047
原创 c++ opensv数字图像处理3:通过鼠标点击操作获取图像的像素坐标和像素值
文章目录前言一、创建鼠标操作函数的头文件:onMouse.h二、创建鼠标操作函数的源文件:onMouse.cpp三、示例前言c++ opencv 数字图像处理在matlab中进行图像处理时,在图像窗口可以点击图像像素查看对应的像素值,比较方便。在c++ opencv中需要自己编程达到对应效果,在图像处理之前可以创建对应的函数文件来辅助进行图像处理。一、创建鼠标操作函数的头文件:onMouse.h#include<iostream>#include<opencv2/ope.
2021-08-14 15:52:17
1651
原创 c++ opencv数字图像处理2:Mat创建图像(矩阵),获取图像信息,感兴趣区域(Rect)
文章目录前言一、创建图像(矩阵):Mat二、操作图像矩阵的像素前言在数字图像处理中,图像的形式实际是一个矩阵,对图像的各种处理也就是对矩阵进行处理。一、创建图像(矩阵):Mat使用Mat创建图像(矩阵)的常用形式有:1.创建一个空图像,大小为0Mat image1;2.指定矩阵大小,指定数据类型:Mat image1(100,100,CV_8U);这里包含三个参数:矩阵行数,矩阵列数,数据类型;其中数据类型有很多种,常用的应该有:CV_8U:8位无符号型(0~255),即灰.
2021-07-28 15:42:13
8364
1
原创 c++ opencv(VS2019, opencv4.53) 数字图像处理1:图像的读取(imread),显示(imshow),保存(imwrite).
文章目录前言一、图像的读取及显示代码二、函数详解1.imread函数2.namedWindow函数3.imshow函数4.imwrite函数前言c++ opencv 数字图像处理起步一、图像的读取及显示代码#include <opencv2/core.hpp>#include <opencv2/highgui.hpp>#include<iostream>using namespace cv;using namespace std;int m.
2021-07-26 17:02:52
2811
原创 二维图像中的Hessian矩阵(及MATLAB代码)
文章目录一、图像中Hessian矩阵的定义及公式推导二、MATLAB代码一、图像中Hessian矩阵的定义及公式推导对于二维图像f(x,y)f(x,y)f(x,y),在点x,yx,yx,y处的Hessian矩阵定义为:H(x,y)=[IxxIxyIxyIyy]H(x,y)= \left[ \begin{matrix} I_{xx} & I_{xy} \\ I_{xy} &I_{yy} \\ \end{matrix} \right].
2021-03-24 14:36:39
3215
7
原创 数字图像处理学习笔记9:图像复原及重建1(常见噪声及滤波方法、噪声判别方法)
文章目录前言一、图像退化/复原过程的模型二、使用步骤1.引入库2.读入数据总结前言图像增强处理是根据自己需要,按照主观要求去改善图像。图像复原则是一个客观的过程,将图像恢复到退化前的原图像。一、图像退化/复原过程的模型如上图所示,图像退化过程是对原图像用一个退化函数进行处理后加上一个加性噪声,退化后的图像为g(x,y)g(x,y)g(x,y)。对于退化后的图像,使用一个复原滤波器进行处理得到f(x,y)f(x,y)f(x,y)二、使用步骤1.引入库代码如下(示例):import .
2020-12-14 17:49:15
4123
原创 数字图像处理学习笔记8:频率域滤波4(拉普拉斯算子)
文章目录一、频率域的拉普拉斯算子1.原理2.编程步骤二、MATLAB代码1.代码2.结果一、频率域的拉普拉斯算子1.原理(1)拉普拉斯在频率域的滤波器可以表示为:H(u,v)=−4π2D2(u,v)H(u,v)=-4π^2D^2(u,v)H(u,v)=−4π2D2(u,v)(2)∇2f(x,y)=F−1[H(u,v)∗F(u,v)]\nabla^2f(x,y)=F^{-1}[H(u,v)*F(u,v)]∇2f(x,y)=F−1[H(u,v)∗F(u,v)](3)g(x,y)=f(x,y).
2020-12-01 10:08:38
3783
原创 数字图像处理学习笔记7:频率域滤波3(同态滤波)
文章目录前言一、同态滤波原理1.处理原理二、同态滤波器模板及MATLAB代码1.同态滤波器2.MATLAB代码三、改变参数前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。一、同态滤波原理1.处理原理(1)认为图像f(x,y)由两部分组成:照射分量i(x,y),反射分量r(x,y):f(x,y)=i(x,y)∗r(x,y)f(x,y)=i(x,y)*r(x,y)f(x,y)=.
2020-11-30 18:04:35
1995
6
原创 数字图像处理学习笔记6:频率域滤波2(钝化滤波、高提升滤波、高频强调滤波)
文章目录前言一、钝化滤波以及高提升滤波1.计算步骤2.MATLAB代码二、高频强调滤波1.高频强调滤波器2.MATLAB代码前言在上一篇文章中讲了利用频谱图进行低通平滑滤波与高通锐化滤波:https://blog.csdn.net/qq_44785013/article/details/110132798钝化滤波、高提升滤波以及高频强调滤波则是在低通滤波与高频滤波得到的结果上,进一步计算以获得更好的结果。除此之外,还有同态滤波以及拉普拉斯滤波等频率域图像增强方法。一、钝化滤波以及高提升滤波1.
2020-11-30 16:22:09
4718
原创 数字图像处理学习笔记5:频率域滤波1(傅里叶频谱图,低通滤波-平滑,高通滤波-锐化)
文章目录前言一、傅里叶变换:傅里叶频谱图二、使用步骤1.引入库2.读入数据总结前言频率域滤波步骤:一、傅里叶变换:傅里叶频谱图二、使用步骤1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsimport warningswarnings.filterwarnings('ignore')import sslssl._c.
2020-11-26 15:50:27
10514
1
原创 一种快速灰度校正算法(处理亮度不均等情况)(含MATLAB代码)
文章目录前言一、步骤详解二、使用步骤1.引入库2.读入数据总结前言方法来源:[1]高建贞,任明武,杨静宇.一种快速实用的灰度校正算法[J].中国图象图形学报,2002(06):30-34.MATLAB代码:经MATLAB R2019a实现一、步骤详解示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotli.
2020-10-30 15:35:22
4473
2
原创 数字图像处理学习笔记4:图像增强之空间滤波2(一阶微分锐化滤波(梯度),二阶微分锐化(拉普拉斯),非锐化掩蔽)
文章目录前言一、一阶微分和二阶微分的定义二、一阶微分锐化滤波:梯度1.梯度2.sobel算子及MATLAB代码二、二阶微分锐化滤波:拉普拉斯算子1.拉普拉斯算子2.拉普拉斯算子MATLAB代码三、非锐化掩蔽 和 高提升滤波1.非锐化掩蔽 和 高提升滤波2.MATLAB代码总结前言锐化滤波的主要目的是突出灰度的过渡部分,比如图像中物体的边缘。一、一阶微分和二阶微分的定义一阶微分:(1)在恒定灰度值得区域一阶微分值为零;(2)在灰度变化的台阶以及斜坡处一阶微分值非零;(3)沿着斜坡的一阶微分.
2020-10-27 17:12:13
4635
原创 数字图像处理学习笔记3:图像增强之空间滤波1(平滑滤波:均值滤波、中值滤波)
文章目录前言一、平滑滤波二、使用步骤1.引入库2.读入数据总结前言使用一些滤波器对图像进行处理。一、平滑滤波示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsimport warningswarnings.filterwa.
2020-10-24 10:04:07
3068
3
原创 数字图像处理学习笔记2:图像增强之直方图处理(直方图均衡,直方图匹配)
文章目录前言一、直方图均衡1.处理方法二、使用步骤1.引入库2.读入数据总结前言直方图反映了图像整体灰度级的分布情况。一、直方图均衡顾名思义,人为使图像的灰度级分布更加均衡。1.处理方法二、使用步骤1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsimport warningswarnings.filterwarning.
2020-10-20 15:51:01
1687
2
原创 从零开始OpenCV遇到的问题一
问题1:anaconda与opencv安装问题解决非法:(1)安装anaconda是选择path选项(2)在cmd中输入pip install opencv_python问题2:使用spyder读取并显示图片时出错:error: OpenCV(4.4.0) C:\Users\appveyor\AppData\Local\Temp\1\pip-req-build-n4ekh6o5\opencv\modules\highgui\src\window.cpp:376: error: (-215:Asser
2020-08-21 18:32:40
7964
一种快速灰度校正方法
2020-10-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人