【图像增强】基于脉冲神经网络PCNN实现图像增强附matlab代码
【图像增强】基于脉冲神经网络PCNN实现图像增强附matlab代码
TT_Matlab
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,完整matlab代码或者程序定制加qq1575304183。
1 简介
从20世纪90年代开始,由Eckhorn等对猫的视觉皮层神经元脉冲同步震荡现象的研究,得到了哺乳动物神经元模型。对Eckhorn提出的模型进行一些改进,就得到了脉冲耦合神经网络(PCNN,(Pulse-Coupled Neural Networks)模型。该模型具有对图像二维空间相似、灰度相似的像素进行分组的特点,并能减小图像局部灰度差值,弥补图像局部微小间断,这是其他图像分割方法无法比拟的特点。PCNN主要用于特征提取、边缘信息分析、图像分割、目标识别,其应用研究正在逐步深入。目前基于该PCNN模型的大型图像诊断系统、军事目标识别系统、图像分割和目标分类系统等正在进行研制中。本文通过将脉冲耦合神经网络应用到医学图像处理中,在HIS色彩空间上的彩色图像增强算法。该算法能够在平滑图像、突出图像边缘的同时,通过对亮度强度分量的均衡化处理和对饱和度分量的非线性指数调整,改善了医学图像的视觉效果和图像色彩的真实效果。文章利用MATLAB软件实现PCNN的模拟,并通过PCNN独有的优势对医学图像进行增强处理。
2 部分代码
function
Y_Normalized
=
Data_Normalized
(
Y
,method)
%将
Y
的元素线性标准化到[
0
,
1
]之间
%可以有两种方式:
1
.
min
-
0
,
max
-
1
;
2
.
min
-
1
,
max
-
0
,因为
Y
的值一般都为负,不知其意义是值越大效果越大还是绝对值越大效果越大
%应该为第一种,但第二种效果也挺好看,因为
HSI
模型中
I
反映的是亮度,与颜色无关
if
nargin==
1
method=
0
;
end
Y_min
=
min
(
min
(
Y
));
Y_max
=
max
(
max
(
Y
));
if
method==
0
Y_Normalized
=(
Y
-
Y_min
)/(
Y_max
-
Y_min
);
else
Y_Normalized
=(
Y
-
Y_max
)/(
Y_min
-
Y_max
);
end
end
3 仿真结果
4 参考文献
[1]马振兴. 基于脉冲耦合神经网络的医学图像增强处理[D]. 北京邮电大学, 2008.
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。
部分理论引用网络文献,若有侵权联系博主删除。
-
2023年血糖新标准公布,不是3.9-6.1,快来看看你的血糖正常吗? 2023-02-07
-
2023年各省最新电价一览!8省中午执行谷段电价! 2023-01-03
-
GB 55009-2021《燃气工程项目规范》(含条文说明),2022年1月1日起实施 2021-11-07
-
PPT导出高分辨率图片的四种方法 2022-09-22
-
2023年最新!国家电网27家省级电力公司负责人大盘点 2023-03-14
-
全国消防救援总队主官及简历(2023.2) 2023-02-10
-
盘点 l 中国石油大庆油田现任领导班子 2023-02-28
-
我们的前辈!历届全国工程勘察设计大师完整名单! 2022-11-18
-
关于某送变电公司“4·22”人身死亡事故的快报 2022-04-26
