上面两篇博客,解释了概率有向图(贝叶斯网),和用其解释条件独立。本篇将研究马尔可夫随机场(Markov random fields),也叫无向图模型,或称为马尔科夫网(Markov network)

下面附上,上述实验的matlab代码。没有插入matlab选项,大家复制到matlab里面看吧。下次我用python实现吧

% PRML image de-noising
clc;
clear;
close all;
A=imread('a.jpg');%读入名字为a.jpg的图片
imshow(A);
M=;
N=;%把图片处理一下大小
A=imresize(A,[M,N]);
X = rgb2gray(A); for i=:M%%二值化图像,要根据实验图像来改天阈值,本实验阈值为200
for j=:N
if(X(i,j)<)%200为阈值,请您根据实际实验图片改变
X(i,j)=;
else
X(i,j)=;
end end
end
Y=X%把原图X保存在Y里
imshow(X)%显示X
for i=:M%这两个for循环是改变二值化图像10%点的值。
for j=:N
if(rand()<0.1)%以百分之10的概率进行改变
if(Y(i,j)==)
% Y(i,j)=;
Y(i,j)=;
else
Y(i,j)=;
end
end
end
end
figure;
imshow(Y);%显示带有噪声的图像 YY=zeros(M,N)
for i=:M%把{,}转换为{-,+}
for j=:N if Y(i,j)==
YY(i,j)=;
else
YY(i,j)=-;
end end
end %参数设置
beta=1.0;
yita=2.1;
h=;
%step1
R=YY; %R是要逼近X的图像,YY是噪声图像 %step2
Change=
while Change %系统扫描法,可以试试随机选点法的效果
Change=;
for i=:M-
for j=:N-
temp=R(i,j);
%若这个点状态为+,计算这一点的能量。
%解释一下为什么是2*beta..因为这个点不仅影响自己的能量函数,也影响了周围四个点的能量函数。
%所以-*beta=-beat*(..)-beat*(...).第一项相当于它自己的能量函数,第二项相当于周围能量函数的一部分。
%R(i,j)不会对其他点的能量造成影响,所以只考虑(i,j)点的能量与其组成团的点的部分能量函数即可。
R(i,j)=;
Epos=h*R(i,j)-*beta*(R(i+,j)*R(i,j)+R(i-,j)*R(i,j)+R(i,j+)*R(i,j)+R(i,j-)*R(i,j))-yita*R(i,j)*YY(i,j);
R(i,j)=-;
Eneg=h*R(i,j)-*beta*(R(i+,j)*R(i,j)+R(i-,j)*R(i,j)+R(i,j+)*R(i,j)+R(i,j-)*R(i,j))-yita*R(i,j)*YY(i,j);
if Epos~=Eneg
R(i,j)=1.0*(Epos<Eneg)+(Epos>Eneg)*-1.0;
else
R(i,j)=temp;
end
if temp~=R(i,j)
Change=;%若有变化则继续while1的系统扫描,若每个点都没有改变则结束程序
end
end
end
end for i=:M
for j=:N
if(R(i,j)==)
Y(i,j)=;
else
Y(i,j)=;
end
end
end
figure;
imshow(Y)
%错误的概率
disp( ['error rate is %d ' num2str(sum(sum(Y~=X))/(M*N))])

参考文献:

本blog参考书籍(PRML8.3节)

ICM算法参考(Kittler and Foglein,1984)

本人水平有限,怀着分享学习的态度发表此文,欢迎大家批评,交流。感谢您的阅读。
欢迎转载本文,转载时请附上本文地址:http://www.cnblogs.com/Dzhouqi/p/3207601.html
另外:欢迎访问我的博客 http://www.cnblogs.com/Dzhouqi/

马尔可夫随机场(Markov random fields) 概率无向图模型 马尔科夫网(Markov network)的更多相关文章

  1. Markov Random Fields

    We have seen that directed graphical models specify a factorization of the joint distribution over a ...

  2. 条件随机场 Conditional Random Fields

    简介 假设你有冠西哥一天生活中的照片(这些照片是按时间排好序的),然后你很无聊的想给每张照片打标签(Tag),比如这张是冠西哥在吃饭,那张是冠西哥在睡觉,那么你该怎么做呢? 一种方法是不管这些照片的序 ...

  3. 随机场(Random field)

    一.随机场定义 http://zh.wikipedia.org/zh-cn/随机场 随机场(Random field)定义如下: 在概率论中, 由样本空间Ω = {0, 1, …, G − 1}n取样 ...

  4. 条件随机场(Conditional random field)

    条件随机场真是把我给折磨坏了啊,本以为一本小小的<统计学习方法>攻坚剩下最后一章,心情还是十分愉悦的,打算一口气把它看完,结果真正啃起来真是无比的艰难啊,每一句对我都好像是天书一般,怎么这 ...

  5. 马尔科夫随机场(MRF)及其在图像降噪中的matlab实现

    (Markov Random Field)马尔科夫随机场,本质上是一种概率无向图模型 下面从概率图模型说起,主要参考PR&ML 第八章 Graphical Model (图模型) 定义:A g ...

  6. PGM:无向图模型:马尔可夫网

    http://blog.csdn.net/pipisorry/article/details/52489321 马尔可夫网 马尔可夫网在计算机视觉领域通常称为马尔可夫随机场(Markov random ...

  7. 马尔科夫随机场(Markov Random Field)

    马尔可夫随机场(Markov Random Field),它包含两层意思:一是什么是马尔可夫,二是什么是随机场. 马尔可夫过程可以理解为其当前的状态只与上一刻有关而与以前的是没有关系的.X(t+1)= ...

  8. 马尔科夫随机场模型(MRF-Markov Random Field)

    原文: http://blog.sina.com.cn/s/blog_92c398b00102vs3q.html 马尔科夫过程​ 隐马尔科夫过程​​ 与马尔科夫相比,隐马尔可夫模型则是双重随机过程,不 ...

  9. PGM学习之七 MRF,马尔科夫随机场

    之前自己做实验也用过MRF(Markov Random Filed,马尔科夫随机场),基本原理理解,但是很多细节的地方都不求甚解.恰好趁学习PGM的时间,整理一下在机器视觉与图像分析领域的MRF的相关 ...

随机推荐

  1. 011杰信-创建购销合同Excel报表系列-4-建立合同货物(修改,删除):合同货物表是购销合同表的子表

    前面的一篇文章做的是修改删除,这篇文章做的是合同货物的修改和删除. 业务功能如下:

  2. imx lcd HV和DE模式转换

    有些时候拿到的lcd手册中关于芯片的时序使用的DE模式的,而imx6内核中使用的参数设置趋势HV模式,应此就需要将DE模式的参数转化为HV模式. 参考链接: https://community.nxp ...

  3. 如果想要跨平台,在file类下有separtor(),返回锁出平台的文件分隔符

    对于命令:File f2=new file(“d:\\abc\\789\\1.txt”) 这个命令不具备跨平台性,因为不同的OS的文件系统很不相同. 如果想要跨平台,在file类下有separtor( ...

  4. 【BZOJ】1031: [JSOI2007]字符加密Cipher(后缀数组)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1031 很容易想到这就是将字符串复制到自己末尾然后后缀数组搞出sa然后按区间输出即可. 然后换了下模板 ...

  5. 前端gulp自动化构建配置

    为了节省http请求次数.节约带宽,加速页面渲染速度,达到更好用户体验的目的.现在普遍的做法是在上线之前做静态资源的打包构建,也就是静态资源的合并压缩: 这里使用的是gulp,当然现在有更强大的模块化 ...

  6. JVM内存简析

    1.程序计数器: 这是一块较小的内存空间,它的作用可以看作是当前线程所执行的字节码的行号指示器,线程私有. 2.Java虚拟机栈: 它是Java方法执行的内存模型,每一个方法被调用到执行完成的过程,就 ...

  7. Excel 一个工作表进行按行数拆分

    1. 如下Excel表,总共有120多行数据,如何将以50行数据为一个工作表进行拆分 Sub ZheFenSheet() Dim r, c, i, WJhangshu, WJshu, bt As Lo ...

  8. JS内存泄漏排查方法-Chrome Profiles

    原文链接:http://caibaojian.com/chrome-profiles.html 一.概述 Google Chrome浏览器提供了非常强大的JS调试工具,Heap Profiling便是 ...

  9. Sass之二(进阶篇)

    源码链接:http://pan.baidu.com/s/1o8M51hC 1. 数据类型 1.1 Number 数字类型,小数类型,带有像素单位的数字类型,全部都属于Number类型 Number类型 ...

  10. 基于注解的形式配置Bean

    基于注解的方式配置Bean:也就说我们在每个Bean的类名前面注解一下,Spring会自动帮我们扫描Bean放进IOC容器中 I基于注解的方式配置Bean(没有依赖关系的Bean)有两个步骤: 1组件 ...