学习目标
①较深的专业知识
②较强的应用能力和实践动手能力
③良好的编程素质
④培养创新精神
⑤从事图像处理的专业人才
扩展知识
当今用于图像处理的最流行的两种语言:C++,matlab
1.1 数字图像的基本概念
图像:光照的情况下,反射光到了成像系统里得出这个物体的像;目前主流是二维图像,慢慢发展到三维图像
图像和图形的区别
图形:
由指令集合组成;
指令由位置,形状,颜色等描述;
记录的是坐标值;
颜色隐含,统一描述;
显示时执行命令,转变为屏幕上所显示的形状和颜色。
图像:
光度值(亮度或彩色);
位置按规则方式排列;
坐标值隐含。
大矩阵
左边:是肉眼所见形状 右边:计算机里对该图的表达
图示计算机表达:二维矩阵,由9个像素构成,每个像素位置是固定的在矩阵里边,并且排序顺序已经固定好了显示这个数值。这里的*数值就是颜色*。
每一个元素称之为像素,每一个像素值可以认为是颜色值。
问题:那么红,绿,蓝三个分量颜色哪去了?
(这个颜色是一个颜色表的索引值,所以还是对应了一个颜色值)
这个大矩阵:含有图像的宽,图像的高;宽和高相乘就是分辨率。
后续所学,都是讲对图像的处理,进一步说就是对数据的处理。
这个数据就是二维的数据,数学中的矩阵。
处理的方法有多种:领域法,平域法,空间域法等。
f:代表该像素彩色或灰度值;脚码代表像素的坐标位置。
图像数字化的精度
图像空间分辨率:
指图像数字化的空间精细程度。
灰度级分辨率:
即颜色深度,表示每一像素的颜色值所占的二进制位数。颜色深度越大则能表示的颜色数目越多。
分辨率越高:图像越清楚
分辨率越低:图像越模糊
左边(4位):可清晰表达出由黑到白的过渡
右边(1位):只有黑和白,没有过渡的变化
对比得出结论
某个像素所占的颜色的数目越多,就越逼真,越接近大自然的真实
目前说的真彩色:用的24位
可想而知能表达出丰富的颜色
图像处理系统
图像数字化设备→图像处理计算机→输出设备
数字图像处理的目的:
①提高图像的视感质量,达到赏心悦目的目的
>图像去除噪声,改变图像的亮度,颜色,增强图像中的某些成分,抑制某些成分,对图像进行几何变换等,从而改善图像的质量。
增强:亮度,颜色
抑制:去噪
几何变换:图像的放大,缩小,旋转,镜像等
②提取图像中的某些特征,以便于分析
>常用作模式识别,计算机视觉的预处理等。这些特征包括很多方面,如频域特性,灰度/颜色特性,边界/区域特性,纹理特性,形状特性等。
③图像识别
>在分析的基础上,进行内容识别,例:汽车牌照识别,人脸识别,虹膜识别,指纹识别等。
过程:
计算机:采集→分析→识别
④对图像数据压缩,便于存储和传输。
>提高存储量,提高网络的速度。
1.2 图像处理技术简介
图像处理是交叉边缘学科:
是计算机,传感器,信息技术,信号处理,人工智能等的交叉学科和技术。
利用计算机对图像进行去除噪声,增强,复原,分割,提取特征等理论,方法和技术成为数字图像处理。
重点:预处理,图像分割
数字图像处理技术
①图像获取,表示和表现
这一过程主要包括摄取图像,光电转换及数字化等几个步骤。
把模拟图像信号转化为数字形式,以及显示和表现出现(如打印)。
②图像复原
当造成图像退化(t图像品质下降)的原因已知时,复原技术可以对图像进行校正。
关键:对每种退化都需要有一个合理地模型。
复原技术是基于模型和数据的图像恢复,其目的是消除退化的影响,从而产生一个等价于理想成像系统所获得的图像。
③图像增强
并非是针对退化,只能通过实验和分析误差,选择一种合适方法。
④图像分割
为达到识别和理解的目的,按照一定的规则将图像分割成区域(物体)。
人类视觉系统将复杂场景中的对象分开,识别。但计算机视觉却是一个难题。
将各种方法融合,提高处理的可靠性和有效性是研究的热点。
目前,汽车牌照识别,人脸识别已经应用到生活领域,在医学上还有待提高。
⑤图像分析
应用的目标几乎均涉及到图像分析,即分割,特征提取和表示,从而有利于计算机对图像进行分类,识别和理解。如医学图像处理,不仅要检测出物体(如肿瘤)的存在,而且还要检测物体的大小。
⑥图像重建
图像增强,图像复原输入时图像,处理后输出也是图像。
而图像重建与上述不同,输入的是某种数据,而经过处理后得到的结果是图像。
⑦图像压缩编码
数据量庞大,必须亚索。
>减少数据存储量
>降低数据率以减少传输带宽
>压缩信息量,便于特征提取,为后续识别作准备
数字图像处理流程
流程分为三个阶段:
图像处理阶段→图像分析阶段→图像理解阶段
处理阶段:
在像素级上进行处理
>几何校正
>灰度变换处理
>图像平滑处理
>图像锐化处理
分析阶段:
>检测
>分割
>测量
>特征提取
分析的结果能为用户提供描述目标特点和性质的数据。
理解阶段:
对图像里各目标的性质和它们之间相互关系的研究,与人类的思维类似。
>对描述对象抽象出来
>了解图像内容
>解释客观场景
>指导和规划行为
常用技术
点处理:灰度变化
域处理:主要有卷积,中值滤波和边缘检测。
1.3图像处理技术的应用
①遥感航天中的应用
②生物医学中的应用
③工业应用
④军事公安领域中的应用
⑤其他应用
1.4图像的存储格式
图像的分类:
按照颜色深度分类:常用图像文件(这三种图像存储格式和颜色表现都有区别)
①黑白图像:两种颜色,没有层次感
②8位索引图像:灰度图像(0-255),伪彩色图像,不是真彩色
(③④)24位真彩色图像:彩色图像
①黑白图像(二值图像或单色图像)
②8位索引图像
一个数据矩阵X和一个调色板矩阵MAP
两个矩阵:一个是颜色的索引表矩阵,一个是颜色的每个像素的数值矩阵(数据矩阵)
数据矩阵和索引表的关系:*数据矩阵每个元素的值就是索引号*
所以到这里明白了为什么图像是彩色的?
答:图像有颜色,由RGB三原色构成,但是数据矩阵并没有RGB三个分量的值,而是存的是RGB颜色值的索引号
灰度图像:各像素信息由一个量化的灰度级来描述,没有彩色信息。
8位灰度索引图像
(1)文件带有图像颜色索引表。
fred(x,y) = fgreen(x,y) = fblue(x,y)
(2)像素值是图像颜色表的索引地址。由8位组成,从0-255.
颜色表里的表象是相等的(即蓝绿红三个分量相等)。
如果一个颜色表的三个分量值相等,而且数据区里面每个像素占八位(这个八位是指的这个索引号),这样的图像就是灰度图像
如上截取灰度图像中的8x8个像素块,对应的每个像素块的索引号,它的索引号对应它的颜色(RGB),可以看大RGB颜色分量是相等的。还可以看出,黑的索引号低,白的索引号高。
对于灰度图像来说,索引号等于颜色的浓度值。比如说127这块,每个分量都是127。如果像素的值很低,对应图像很暗;反之像素的值很高,对应图像很亮。
之后会学习对数据区统计多少像素有多少个,画出直方图来分析分布情况。数据区的浓度值虽然是序号值,但是在使用上相当于颜色值。
彩色图像
是指每个像素的信息由RGB三原色构成的图像,其中RGB是由不同的灰度级来描述的。当三个分量都取满值的时候,就是白色的。
8位伪彩色索引图像
(1)颜色表红,绿,蓝分量值不全相等。
(2)像素值是图像颜色表的索引地址。
因为伪彩色只能表现256中颜色中一种颜色,颜色跨越还是比较高,但不细腻。
灰度图像并不是没有颜色,而是三个分量颜色相等。灰度图像与伪彩色图像的区别在于颜色索引表的不同,对比上面的索引表就知道了。
24位真彩色图像
(1)每一像素由RGB三个分量组成。
(2)每个分量各占8位,取值范围为0-255,每个像素24位。
它的颜色浓度级别量化的非常细,每个分量占8位,一般表示
(0,0,0)~(255,255,255),三个分量构成一个像素,一共24位。
真彩色图像表示
我们知道灰度图像只有一个矩阵,矩阵的数值是颜色表的索引号;
而对于真彩色图像的数据区是三个矩阵,红色一个矩阵,绿色一个矩阵,蓝色一个矩阵。这是按位平面来说的
对每一个分量来说,仍然是8位的。
所以对真彩色图像的表示及处理和8位是有区别的,需要注意。
图像的显示流程:
开始→得到数据起始位置指针,并得到图像的宽,高等信息→
(判断是否带有颜色表)
是(8位)→使用文件中颜色表创建调色板→调色板调入设备环境(内存)→以调色板来显示图像→(显示完后)恢复到原调色板
否(24位)→直接用RGB去显示像素
只有伪彩色,灰度图像8位的索引这两种图像的时候要用到调色板;真彩色不用调色板。
图像文件格式
(1)BMP(BitMaP)格式
BMP位图可以进行绘画操作,常用
(2)GIF(Graphics Interchange Format)格式
GIF主要用于不同平台上交流和传输,而不是作为文件的存储格式。最大不能超过64M,颜色最多为256色。
(3)TIFF(Tagged Image Format File)格式
TIF文件的设计考虑了扩展性,方便性和可修改性,是最复杂的一种。要求用更多的代码来控制它,结果导致文件读写速度慢,代码长。不通用,不常见。
(4)JPEG(Joint Photographic Expert Group)格式
JPEG是一种压缩格式
1.5BMP文件存储格式
BMP文件组成
BMP文件头
位图信息头
颜色表
位图数据
①位图文件头结构
BITMAPFILEHEADER
②位图信息头结构
BITMAPINFOHEADER
③位图颜色表RGB QUAD
④位图像素数据
BMP文件头
typedef struct tagBITMAPFILEHEADER
{
WORD bfType;//BM文件标识符
DWORD bfSize;//文件大小,字节
WORD bfReserved1;//0
WORD bfReserved2;//0
DWORD bfOffBits;//位图数据的起始位置
}BITMAPFILEHEADER;
位图信息头
typedef struct tagBITMAPINFOHEADER
{
DWORD biSize;//本结构的大小
LONG biWidth;
LONG biHeight;
WORD biPlanes;
WORD biBitCount;//每个像素所需的位数
DWORD biCompression;//位图亚索类型
DWORD biSizeImage;//位图的大小
LONG biXPelsPerMeter;
LONG biYPelsPerMeter;
DWORD biClrUsed;//颜色数
DWORD biClrImportant;//重要的颜色数
}BITMAPINFOHEADER;
颜色表
typedef struct tagRGBQUAD
{
BYTE rgbBlue;//蓝色
BYTE rgbGreen;//绿色
BYTE rgbRed;//红色
BYTE rgbReserved;//0
}RGBQUAD;
位图信息--BITMAPINFO结构
struct tagBITMAPINFO
{
BITMAPINFOHEADER bmiHeader;
RGBQUAD bmiColors[1];//颜色表
}BITMAPINFO;
对于8位位图文件调色板
调色板 256项;
所占字节数:256*4=1024;
1024/16=64行;
总行数43h=4*16+3=67行;
文件头占 3行;
每行16字节,可以存储4个表项,64*4=256个表项。