您的位置:首页 > 编程语言 > MATLAB

matlab中图像处理的基本函数(1)

2017-08-19 09:39 381 查看
2017-8-19

读取彩色图像(三维)

I1= imread('E:\training1\s.jpg');
I1是一个m*n*t的矩阵




彩色图像灰度化

I2=rgb2gray(I1);




灰度图像二值化

thresh = graythresh(I2);     %自动确定二值化阈值
I3 = im2bw(I2,thresh);
其中thresh是可变的二值化阈值,这里的值为0.5255




灰度图像进行中值滤波处理(降噪)

I4=medfilt2(I2,[3,3]); %中值滤波




灰度图像进行边缘检测(roberts算子)

grayPic=mat2gray(I2); %实现图像矩阵的归一化操作
[m,n]=size(grayPic);
newGrayPic=grayPic;%为保留图像的边缘一个像素
robertsNum=0; %经roberts算子计算得到的每个像素的值
robertThreshold=0.2; %设定阈值
for j=1:m-1 %进行边界提取
for k=1:n-1
robertsNum = abs(grayPic(j,k)-grayPic(j+1,k+1)) + abs(grayPic(j+1,k)-grayPic(j,k+1));
if(robertsNum > robertThreshold)
newGrayPic(j,k)=255;
else
newGrayPic(j,k)=0;
end
end
end


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  图像处理 matlab