【图像去噪】基于马尔可夫随机场实现图像去噪附matlab代码

简介: 【图像去噪】基于马尔可夫随机场实现图像去噪附matlab代码

1 简介

日常生活中,人们用图像进行信息的获取和交换,因此,图像处理的应用范

围一定涉及到人们的生活、工作和学习的各个方面。而随着社会的发展,人类活

动范围也随之扩大,随之变化的还有图像处理的应用范围。确切的说图像处理是

关于图像的获取、传输、存储、变换、显示、理解与综合利用的一门学科。图像

处理原来出现主要原因是用于提高图像的质量,它将人作为标准,通过改变图像

的视觉效果来达到改善的目的。在图像处理的过程中,运行程序输入的是劣质的

图像,最后输出的是经过处理后的质量得到完善的图像,目前常用的图像处理方

法有图像增强、复原、编码、压缩等。自 1975 年以后,图像处理技术得到深入发

展,而数字图像处理则向着更高、更深层次发展。人们已开始研究如何用计算机

系统诠释图像,实现类似人类视觉系统理解外部的目的,这被称为图像理解或计

算机视觉。

数字图像在采集和传输处理的过程中经常受到各种如设备环境等因素的影响。

例如设备中原件的灵敏性不均匀,雨天与晴天所得的图像不一,图像传输过程的

误差及人为原因等,都会对图像采集及传输造成影响。特别是存在于图像中的噪

声的影响,会使原本优化的图像质量发生改变。因此在对图像做进一步的操作之

前,我们通常先去除图像中的噪声。否则很可能使得我们对图像处理的时候所得

结果与实际需求发生较大偏差或误差。为了保留图像中的有用信息,而图像去噪

就成为图像处理中的一个重要环节,来减少或消除图像中的噪声和干扰。在实际

应用中,为了更好地完成图像后续处理(如图像分割,图像识别等),我们将图像去

噪作为图像处理与识别的预处理。因此如何能够在快速传递、储存和处理信息的

同时不改变信息的质量成了亟待解决的问题

马尔科夫随机场(Markov Random Field)它包含两层意思:一是什么是马尔

科夫,二是什么是随机场。 所谓的马尔科夫指的是马尔科夫的性质。当一个随机

过程在给定现在状态及所有过去状态情况下,其未来状态的条件概率分布仅依赖

于当前状态;换句话说,在给定现在状态时,它与过去状态(即该过程的历史路

径)是条件独立的,那么此随机过程即具有马尔科夫性。具有马尔可夫性质的过

程通常称之为马尔科夫过程。第一层理论已经被人们所熟悉,下面重点介绍马尔

科夫随机场的相关理论。

2 部分代码

%计算参数与去噪错误率的关系%图片读取并转换为二值图像clc;clear;close all;X=imread('rice.png');%读取图片[m n]=size(X);% X=rgb2gray(A);%将色彩变换为灰度for i=1:m    for j=1:n        if(X(i,j)<150)%以200为阈值            X(i,j)=0;        else            X(i,j)=255;        end    endendY=X;figuresubplot(131)imshow(X);%显示Xtitle('原图')%加入噪声,利用rand函数for i=1:m    for j=1:n        if(rand()<0.1)%以0.1的概率进行加噪            if(Y(i,j)==0)                Y(i,j)=255;            else                Y(i,j)=0;            end        end    endendsubplot(132)imshow(Y);%显示Xendx1=[1 1 1 1 1 1.5 1.5 1.5 1.5 1.5 2 2 2 2 2 2.5 2.5 2.5 2.5 2.5 3 3 3 3 3]';y1=[1 1.5 2 2.5 3 1 1.5 2 2.5 3 1 1.5 2 2.5 3 1 1.5 2 2.5 3 1 1.5 2 2.5 3]';z1=z';subplot(133)imshow(Y);%显示Xtitle('去噪图')%确定网格坐标(x和y方向的步长均取0.1)[X,Y]=meshgrid(min(x1):0.1:max(x1),min(y1):0.1:max(y1)); %在网格点位置插值求Z,注意:不同的插值方法得到的曲线光滑度不同Z=griddata(x1,y1,z1,X,Y,'v4');%绘制曲面figuresurf(X,Y,Z);xlabel('参数β');ylabel('参数η');zlabel('错误率');shading interp;colormap(jet);%figure;%imshow(Y)%disp(['error rate is %d' num2str(sum(sum(Y~=X))/(m*n))])

3 仿真结果

4 参考文献

[1]孟伟伟. 基于OpenCL的高阶马尔科夫随机场图像去噪的快速实现[D]. 西安电子科技大学.

博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

部分理论引用网络文献,若有侵权联系博主删除。



相关文章
|
11月前
|
算法 定位技术 计算机视觉
【水下图像增强】基于波长补偿与去雾的水下图像增强研究(Matlab代码实现)
【水下图像增强】基于波长补偿与去雾的水下图像增强研究(Matlab代码实现)
1157 0
|
11月前
|
算法 机器人 计算机视觉
【图像处理】水下图像增强的颜色平衡与融合技术研究(Matlab代码实现)
【图像处理】水下图像增强的颜色平衡与融合技术研究(Matlab代码实现)
343 0
|
11月前
|
机器学习/深度学习 算法 机器人
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
463 8
|
11月前
|
机器学习/深度学习 编解码 算法
基于OFDM技术的水下声学通信多径信道图像传输研究(Matlab代码实现)
基于OFDM技术的水下声学通信多径信道图像传输研究(Matlab代码实现)
433 8
|
11月前
|
机器学习/深度学习 算法 机器人
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
859 0
|
11月前
|
新能源 Java Go
【EI复现】参与调峰的储能系统配置方案及经济性分析(Matlab代码实现)
【EI复现】参与调峰的储能系统配置方案及经济性分析(Matlab代码实现)
335 0
|
11月前
|
机器学习/深度学习 数据采集 测试技术
基于CEEMDAN-VMD-BiLSTM的多变量输入单步时序预测研究(Matlab代码实现)
基于CEEMDAN-VMD-BiLSTM的多变量输入单步时序预测研究(Matlab代码实现)
395 8
|
11月前
|
机器学习/深度学习 算法 自动驾驶
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
560 8
|
11月前
|
编解码 运维 算法
【分布式能源选址与定容】光伏、储能双层优化配置接入配电网研究(Matlab代码实现)
【分布式能源选址与定容】光伏、储能双层优化配置接入配电网研究(Matlab代码实现)
863 12
|
11月前
|
人工智能 数据可视化 网络性能优化
【顶级SCI复现】虚拟电厂的多时间尺度调度:在考虑储能系统容量衰减的同时,整合发电与多用户负荷的灵活性研究(Matlab代码实现)
【顶级SCI复现】虚拟电厂的多时间尺度调度:在考虑储能系统容量衰减的同时,整合发电与多用户负荷的灵活性研究(Matlab代码实现)
335 9

热门文章

最新文章