1.数字图像的表示:
一副图片用二维函数f(x,y)表示,x,y为空间坐标,(x,y)对应的幅度f为(x,y)这一点的亮度。灰度表示黑白图像的亮度。彩色图像是由独立的红绿蓝独立的单色图像组合。
图像的数字化要求对坐标和幅度进行数字化。对坐标值数字化叫取样,对幅度数字化叫量化。当x,y分量及幅值f都是有限且离散的量时,称图像为数字图像。
图像的矩阵表示:
矩阵中的每个元素称为像素。将数字图像表示成matlab矩阵:
其中f(1,1)=f(0,0)(第一个图片中),两种表示出了原点的平移之外,其他都是相同的。MATLAB中的矩阵通过矩阵名以变量的形式存储。
2.图像的输入/输出和显示:imread('filename');imshow(f)
>>f = imread(';);
将图像读取到数组f中。(‘;’用于禁止输出)
>>imshow(f)
显示图像
>>figure,imshow(g)
显示g图像,不删除上述f图像。
此外,仅适用于jpeg图像的imwrite语法:imwrite(f,'filename','quality',q),q是介于0-100的整数,q越小,图像退化越严重。
3.图像类型
1.灰度图像
2.二值图像
3.索引图像
4.RGB图像
大多数单色图像的处理运算都是通过二值图像和灰度图像进行的。先对灰度图像和二值图像进行介绍。
灰度图像:灰度图像是数据矩阵,矩阵的值表示灰度的浓淡。由于灰度图像中的元素可以用uint8,uint16或double或single等类表示,故取值范围不同。
二值图像:二值图像是取值只有0或1的逻辑数组。logical(a)用于将数值数组转换为二值图像。islogical(a)用于判断数组是否为逻辑类。
4. 注意
在.m文件中,函数定义形式:function [outputs] = name(inputs)。
矩阵运算和数组运算在加法和减法是相同的,但是A*B表示传统的矩阵乘法,A.*B表示数组乘法。