1 简介
图像噪声的去除一直是图像处理领域的难点,以往介绍的去噪方法主要用于去除二值图像的噪声,不能用于灰度图像的去噪,而且在去噪的同时会引起图像的模糊,为了解决问题,根据PCNN的工作原理和噪声的特点提出了一种基于PCNN的去噪方法.计算机仿真实验结果表明该方法能在有效去除椒盐噪声的同时,很好地保留了图像的细节,防止了图像的模糊,对图像的恢复,图像的识别是十分有益的,但对于严重的高斯噪声,去除效果还不是很理想,该算法有待改进.
2 部分代码
%测试DENOISE函数clcclose allclear allimage=imread('lena.jpg');%imwrite(imnoise(image,'salt & pepper',0.1),'lena1加噪10.bmp')%tic%显示源图像figuresubplot(231)%subplot(221)imshow(image);title('原始无噪声图像')%添加噪声X=double(imnoise(image,'sa',0.1));%subplot(222)subplot(232)imshow(X/255)title('添加了椒盐噪声的图像')% % %中值滤波去除噪声X_medfilt = medfilt2(X);X_medfilt = medfilt2(X_medfilt);subplot(233)imshow(X_medfilt/255);title('中值滤波去除噪声')% % %均值滤波去除噪声l=ones(3);l=l/9;X_mean = conv2(X,l);subplot(234)imshow(X_mean/255);title('均值滤波去除噪声')%subplot(235)imshow(X/255);title('去除salt噪声后的结果')% imwrite(X/255,'去除salt噪声_simply.jpg')cal_entropy(uint8(X))%下面为去除pepper噪声过程disp('开始去除pepper噪声:');X=255-X;X=denoise_gj(X);% X=denoise_simply(X);disp('去除pepper噪声结束。');X=255-X;%subplot(224)subplot(236)imshow(X/255)title('去除pepper噪声后的结果')% imwrite(X/255,'去除pepper噪声_simply.jpg')cal_entropy(uint8(X))%toc
3 仿真结果
4 参考文献
[1]邹文洁. "基于PCNN神经网络的图像去噪算法研究." 计算机仿真 25.8(2008):4.
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。
部分理论引用网络文献,若有侵权联系博主删除。