Matlab
FrankJingle
这个作者很懒,什么都没留下…
展开
-
【Matlab数字图像处理】第五章:图像复原
%% find的用法clcclearf = imread('image/FigP0510(left).tif');imshow(f);I = find(f<128); %找到像素值小于128的点,并且重置为0,注意find的这种用法 f(I) = 0; figure,imshow(f);原创 2014-11-08 16:29:35 · 1701 阅读 · 0 评论 -
【Matlab数字图像处理】第九章:形态学
膨胀 A = imread('DIP3E_Original_Images_CH09/Fig0907(a)(text_gaps_1_and_2_pixels).tif');B = [0 1 0;1 1 1;0 1 0];A2 = imdilate(A,B);subplot(121),imshow(A);subplot(122),imshow(A2);原创 2014-11-08 20:24:16 · 1675 阅读 · 0 评论 -
频域处理 之 从空间滤波器获得频域滤波器
使用fspecial来生成空间滤波器使用ifftshift,使得原点位于频率矩形的左上角分别在空域和频域进行滤波,结果灰色调是由于存在负值,平均值在使用imshow后会变大,可以使用绝对值创建二值图像原创 2015-01-21 20:39:22 · 2748 阅读 · 0 评论 -
图像复原 之 噪声
使用imnoise函数给图像加噪声clc;clear;close all;f=imread('lena.jpg');f=rgb2gray(f);subplot(121);imshow(f);g=imnoise(f,'gaussian',0.01,0.01);subplot(122);imshow(g);自己写的噪声产生函数,效果如下:%% 使用自己写的噪声产生函数原创 2015-01-22 14:23:23 · 1566 阅读 · 0 评论 -
频域处理之傅立叶变换
读取灰度图像,显示如下:f=imread('lena.jpg');f=rgb2gray(f);F=fft2(f);imshow(f);figure;imshow(abs(F),[]);用 fft2() 进行傅立叶变换,用abs函数计算幅度,最终显示如下:四个角有亮点。可以使用fftshift将变换的原点移动到频率矩形的中心,效果如下图所示:原创 2015-01-21 13:27:15 · 1185 阅读 · 0 评论 -
频域处理 之 高通滤波与绘图
使用低通滤波器 clc,clear,close all;f=imread('lena.jpg');f=rgb2gray(f);figure,imshow(f);PQ=paddedsize(size(f));[U,V] = dftuv(PQ(1),PQ(2));D0 = 0.05*PQ(2);H = lpfilter('gaussian',PQ(1),PQ(2),D0);g =原创 2015-01-21 22:09:17 · 1957 阅读 · 0 评论 -
图像复原 之 空间滤波
对原图分别加上salt和pepper噪声:f=imread('lena.jpg');f=rgb2gray(f);figure,imshow(f);[M N] = size(f);R = imnoise2('salt & pepper',M,N,0.1,0);c = find(R == 0);gp = f;gp(c) = 0;figure,subplot(121);i原创 2015-01-22 15:49:27 · 1382 阅读 · 0 评论 -
matlab制作聚类数据
有时候经常看别人博客,希望复现别人的效果,然而作者经常不提供数据集,例如 自己手动的写坐标不仅麻烦而且容易出错,一个简单的办法是使用matlab的 ginput()函数来实现[x,y] = ginput(); 运行后,出现图形界面,点击鼠标,即可以用鼠标左键在画板上点击生成坐标,需要停止时,可以按enter即退出 运行scatter(x,y),可以看到效果原创 2015-06-18 10:53:37 · 4030 阅读 · 0 评论