【matlab 图像处理】matlab 图像处理常用函数

matlab 图像处理常用函数

常用函数有:imread,imshow,imwrite,rgb2gray,imresize,imhist,histeq等

imread 读图像

读取图像的简单函数

I = imread('sweden_input.jpg');   % 读取图像
% 还可以与其他函数嵌套使用 表示直接读取并使用函数处理图形
Image = im2double(imread('AG.jpg'));  % 将数字图像精度转换至双精度

imshow 展示图像

展示各种图像

% 程序第一张图像显示时可以不加figure;
imshow(Image);title('xxx');
% 一个窗口显示image图像
figure; imshow(image);title('图像主题');% figure :创建一个新的窗口,所有参数采用默认


% 使用subplot(xxx) 实现一个窗口展示多幅图像	前两个数字表示几行几列 最后一个数字表示从左至右从上至下第几个位置
subplot(121),imshow(p1),title('p1');   %  121 表示窗口分为一行两列 将此图像防置第一个位置 
subplot(122),imshow(p2),title('p2');   %  122 则表示放置在第二个位置

imwrite 写图像

1、保存到当前文件夹下:

imwrite(I,'xx.xxx');	% 将图像I 保存到当前目录下

2、保存到当前文件夹下一级某文件夹:

imwrite(I,'./xxx/xx.xxx');	% 保存图像路径

3、保存到当前文件夹上一级的某文件夹下:

imwrite(I,'../xxx/xx.xxx');

rgb2gray 彩色图像转灰度图像

在进项图像均衡化的时候必须先将图像灰度化则可使用此函数

% 2 : 可以看作是 to rgb-->gray
Image = rgb2gray(imread('xx.xxx'));		% 读取图像并灰度化

imresize 对图像做缩放处理

Image = imresize(I, [h w])

h和w分别指定目标图像的高度和宽度.这种格式允许图像缩放后长宽比例和原图像长宽比例相同,因此所产生的图像有可能发生畸变。

[…] = imresize(…, method)

method : 参数用于指定在改变图像尺寸时所使用的算法,可以为以下几种:

‘nearest’: 这个参数也是默认的, 即改变图像尺寸时采用最近邻插值算法;

‘bilinear’:采用双线性插值算法;

‘bicubic’: 采用双三次插值算法,

Image = imresize(I, m);
% 返回的图像的长宽是图像I的长宽的m倍,即缩放图像。 m大于1, 则放大图像; m小于1, 缩小图像。

Image = imresize(I, 0.5);	% 缩放0.5倍
Image = imresize(I, 0.5 , 'bilinear'); % 使用'bilinear'算法缩放

imhist 统计直方图

histgram = imhist(Image);                  % 直接调用函数 imhist(I,N): 统计并显示图像I的直方图,N为灰度级,默认256

figure;imhist(Image);title('灰度图像的直方图');  % 图像直方图

histeq 均衡化

% matlab 提供了直方图均衡化函数
% J = histeq(I,N)
% 对图形I进行均衡化处理,N为输出图像的灰度级数
 clc,clear,close all;
Image = imread('couple.bmp');
NewImage = histeq(Image,64);
subplot(121),imshow(Image);
subplot(122),imshow(NewImage);

你可能感兴趣的:(图像处理matlab,图像处理,matlab)