Image Processing——图像处理教程(二)之MATLAB基础

图像处理的MATLAB基础

一、MATLAB在图像处理领域的优点

优秀的矩阵运算能力

图像处理教程(一) 中我们提到每一张图片都可以看做是一个由像素点组成的矩阵,黑白图片用一个二维矩阵就可以表示,彩色图片则要用三个二维矩阵,分别表示RGB三个颜色通道。

而MATLAB是十分擅长处理矩阵运算的科学计算软件,所以MATLAB处理图像信息就格外方便。

例如:一维向量可以表示为声音信号在时域上的离散采样信息,即可以表示一个声音信号;二维矩阵自然可以表示图像信息。

MATLAB内置了许多函数可以对矩阵做各样的处理,如sum()函数,mean()函数,imread(),imwrite()函数等等。

友好的编程语言与操作界面

不像其他高级语言(如C语言),在使用变量前必须预先定义变量,声明其数据类型,MATLAB可以直接对任意变量展开操作而不需要预先声明,MATLAB会自动为变量分配内存,确定其数据类型等。这无疑为我们编写程序带来了极大方便。

MATLAB的界面也十分友好,它既支持我们用MATLAB语言编写脚本、函数文件完成特定工作,也支持交互式的操作形式,比如种类丰富的工具箱Toolbox,许多工作动动鼠标即可完成。

二、MATLAB图像处理相关函数

本节内容的主要内容是向大家介绍一些常用的、必备的MATLAB图形处理函数。熟练掌握这些函数的用法对于以后的工作有着莫大的好处。下面我们从读取图片开始。

读取图片
myimage = imread('newborn.tif');

myimage是一个矩阵,存储着newborn.tif图片的像素信息;在imread( )函数中,以字符串的形式给出图片的名称。如果MATLAB的工作路径和图片存放的路径不一致,则要写成如下的形式,不然MATLAB会给出找不到图片的错误。

imread ('D:/dataset/image/newborn.tif');
% 注意语句后面的分号不要省略,否则我们的command window会被庞大无比的像素矩阵充满
显示图片

在读入整张图片之后,我们可以用imshow()命令将图片显示出来。

figure(1);
I = imshow(myimage);
title('newborn.tif');

显示图片的交互窗口

为了查看图片上某点的坐标和RBG值(或者灰度值),我们可以使用下面的函数:

impixelinfo; %注意,pixval on早在MATLAB 2008a就已经淘汰了

输入上面命令后,图片的左下角会出现一行信息,随着鼠标的滑动,显示不同点的左边和RGB信息(或灰度值信息)。
左下角impixelinfo命令

使用如下命令可以调整figure窗口的背景颜色:

% 调整背景为绿色
whitebg ('g');
whitebg ('green');
whitebg ([0 1 0]);% 绿色的RGB值
% 其他颜色还有 Cyan blue white magenta yellow red black 等等

这里写图片描述

获取图片信息
size(myimage)% 可以显示矩阵的大小尺寸,几行几列几页

myimage(100,200,2)% 显示第2页第100行第200列的值

impixel(myimage,100,200)% 显示myimage图片在100行200列处的色彩值

imfinfo('name_of_img.jpg');% 可以显示图片的详细信息

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值