Matlab图像处理(02)-图像基础
数据类
Matlab中和IPT中支持的基本数据类型如下:
名称 | 描述 |
double | 双精度浮点数,范围-10308~10308 8字节 |
uint8 | 无符号1字节整数,范围[0, 255] |
uint16 | 无符号2字节整数,范围[0, 65535] |
uint32 | 无符号4字节整数,范围[0, 4294967295] |
int8 | 有符号1字节整数,范围[-128, 127] |
int16 | 有符号2字节整数,范围[-32768, 32767] |
int32 | 有符号4字节整数,范围[-2147483648, 2147483648] |
single | 单精度浮点数,范围-1038~1038 4字节 |
char | 字符 |
logical | 值为0或1 |
图像类型
Matlab的IPT(Image Process Toolbox)支持如下四种类型的图像:
- 亮度图像(Intensity images)
- 二值图像(Binary images)
- 索引图像(Indexed images)
- RGB图像(RGB images)
大多数的单色图像的处理运算是通过二值图像或者亮度图像来进行的。首先学习这两种类型的图像。
亮度图像
一幅亮度图像是一个数据矩阵,其归一化的取值表示亮度。其亮度图像像素都是uint8类或者uint16类,则它们的整数范围分别为「0, 255」和「0, 65535」。若图像是double类,则像素的取值就是浮点数,其归一化亮度图像取值范围就是「0, 1」。
二值图像
二值图像在Matlab中具有非常特殊的意义。一幅二值图像是一个取值只有0和1的逻辑数组。因而,一个取值只包含0和1的uint8类数组,在Matlab中并不认为是二值图像。使用logical函数可以把数值数组转化为二值数组。如:
B = logical(A);
使用islogical可以测试一个数组是否是逻辑数组:
islogical(A);
术语注释
注意数据类与图像类型之间的差别与联系。提到幅图像时,会说uint8亮度图像。uint8为数据类,亮度为图像类型。
数据类间的转换
数据类间的转换使用如下方式:
B = data_class_name(A)data_class_name为数据类型。如A为uint8类型数组,B=double(A)会产生一个双精度的数组B。如果C是一个聚会范围为[0, 255]的double数组,命令D=uint8(C)会产生一个uint8类数组。如果C中包含有[0, 255]之外的值,则转换为uint8数组时,会将所有小于0的值转换为0,大于255的值转换为255。
图像类型和类型间的转换
IPT提供了执行必要缩放的函数,进行图像类和类型间进行转换。如f为double的2x2的图像:
f = -0.5000 0.5000 0.7500 1.5000执行转换
g = im2uint8(f) g = 0 128 191 255
可以看到,im2uint8将所有输入小于0的值设置为0,而将输入大于1的值设置为255,再将其他数据乘以255。还有其他的转换函数如下:
名称 | 将输入转换为 | 有效的输入图像数据类 |
---|---|---|
im2uint8 | uint8 | logical, uint8, uint16, double |
im2uint16 | uint16 | logical, uint8, uint16, double |
mat2gray | double, 范围[0, 1] | double |
im2double | double | logical, uint8, uint16, double |
im2bw | logical | uint8, uint16, double |
函数im2uint16与im2uint8类似。
函数mat2gray用于把任意的double类数组转换为归一化的double类数组,如:
g = mat2gray(A, [Amin, Amax])图像g的取值范围在[0, 1]之间,规定小于Amin的值转换为0,大于Amax的值转换为1。如果不给定Amin和Amax参数,则将A中的最小值和最大值分别赋给Amin和Amax。
im2double用于将输入转换为[0, 1]之间的double类。
im2bw用于将亮度图像转换为二值图像:
g = im2bw(f, T)图像f中的小于T的值转换为0,其他值转换为1。域值T是一个[0, 1]之间的值。
作者:马 岩(Furzoom) (http://www.cnblogs.com/furzoom/)
版权声明:本文的版权归作者与博客园共同所有。转载时请在明显地方注明本文的详细链接,未经作者同意请不要删除此段声明,感谢您为保护知识产权做出的贡献。
版权声明:本文的版权归作者与博客园共同所有。转载时请在明显地方注明本文的详细链接,未经作者同意请不要删除此段声明,感谢您为保护知识产权做出的贡献。