第1章 概论 1
1.1 数字图像处理及其特点 1
1.1.1 数字图像与图像处理 1
1.1.2 数字图像处理的特点 3
1.2 图像处理的目的及主要内容 4
1.2.1 数字图像处理的目的 4
1.2.2 数字图像处理的主要内容 5
1.3 数字图像处理的应用 6
1.4 数字图像处理的发展动向 11
习题 12
第2章 数字图像处理基础 13
2.1 图像数字化技术 13
2.1.1 采样 14
2.1.2 量化 15
2.1.3 采样与量化参数的选择 15
2.1.4 图像数字化设备 17
2.2 色度学基础与颜色模型 17
2.2.1 色度学基础 18
2.2.2 颜色模型 19
2.2.3 颜色变换 25
2.3 数字图像类型 27
2.3.1 位图 27
2.3.2 位图的有关术语 28
2.4 图像文件格式 29
2.4.1 BMP图像文件格式 29
2.4.2 其他文件格式 31
2.5 OpenCV编程简介 34
2.5.1 OpenCV简介 35
2.5.2 OpenCV的安装与配置 36
2.5.3 OpenCV的数据结构 43
2.5.4 读入、显示和存储图像 48
2.5.5 操作图像像素 50
2.5.6 图形交互和媒体接口HighGUI 53
习题 60
第3章 图像增强 61
3.1 灰度变换 61
3.1.1 灰度线性变换 61
3.1.2 分段线性变换 62
3.1.3 非线性变换 63
3.2 直方图修正 65
3.2.1 直方图的基本概念 65
3.2.2 直方图的性质 66
3.2.3 直方图的计算 67
3.2.4 直方图均衡化 67
3.2.5 直方图规定化 70
3.3 图像平滑 71
3.3.1 图像噪声 72
3.3.2 模板卷积 72
3.3.3 邻域平均 74
3.3.4 中值滤波 74
3.3.5 图像平均 77
3.4 图像锐化 77
3.4.1 微分法 78
3.4.2 非锐化滤波 80
3.4.3 高频增强滤波 80
3.5 伪彩色处理 81
3.5.1 灰度分层法 81
3.5.2 灰度变换法 82
3.5.3 频域滤波法 82
3.6 图像增强实例——同态滤波 83
习题 84
第4章 图像的几何变换 86
4.1 几何变换基础 86
4.1.1 概述 86
4.1.2 齐次坐标 86
4.1.3 二维图像几何变换的矩阵 88
4.2 图像比例缩放 89
4.2.1 图像比例缩放变换 89
4.2.2 比例缩放的实现 92
4.3 图像平移 93
4.3.1 图像平移变换 93
4.3.2 图像平移算法 94
4.4 图像镜像 94
4.4.1 图像镜像变换 94
4.4.2 图像镜像算法 95
4.5 图像旋转 96
4.5.1 图像的旋转变换 96
4.5.2 图像旋转的实现 98
4.6 图像复合变换 99
4.6.1 图像的复合变换 99
4.6.2 图像复合变换的示例 102
4.7 透视变换 104
4.7.1 透视变换 104
4.7.2 其他变换 106
4.8 应用实例——几何畸变的校正 108
习题 111
第5章 频域处理 112
5.1 频域与频域变换 112
5.2 傅立叶变换 113
5.2.1 连续函数的傅立叶变换 114
5.2.2 离散傅立叶变换 114
5.2.3 离散傅立叶变换的性质 115
5.2.4 离散傅立叶变换的OpenCV实现 118
5.3 频域变换的一般表达式 119
5.3.1 可分离变换 120
5.3.2 图像变换的矩阵表示 120
5.4 离散余弦变换(DCT) 121
5.4.1 一维离散余弦变换 121
5.4.2 二维离散余弦变换 122
5.5 频域中图像处理的实现 123
5.5.1 理解数字图像的频谱图 123
5.5.2 频域图像处理步骤 124
5.5.3 频域滤波 124
5.6 小波变换简介 127
5.6.1 小波变换的理论基础 128
5.6.2 离散小波变换在图像处理中的应用简介 134
习题 136
第6章 数学形态学处理 137
6.1 引言 137
6.1.1 数学形态学 137
6.1.2 基本符号和术语 137
6.2 二值形态学 139
6.2.1 腐蚀 139
6.2.2 膨胀 142
6.2.3 开、闭运算 143
6.2.4 击中/击不中变换 146
6.3 灰值形态学 149
6.3.1 灰值腐蚀 149
6.3.2 灰值膨胀 150
6.3.3 灰值开、闭运算 150
6.4 形态学的应用 152
6.4.1 形态学滤波 152
6.4.2 骨架提取 153
6.5 应用实例——角点检测 156
习题 159
第7章 图像分割 160
7.1 阈值分割 160
7.1.1 概述 160
7.1.2 全局阈值 162
7.1.3 局部阈值 165
7.1.4 动态阈值 166
7.2 基于区域的分割 167
7.2.1 区域生长 167
7.2.2 区域分裂与合并 168
7.3 边缘检测 169
7.3.1 微分算子 169
7.3.2 边界连接 172
7.3.3 哈夫变换 172
7.4 区域标记与轮廓跟踪 174
7.4.1 区域标记 174
7.4.2 轮廓提取 175
7.4.3 轮廓跟踪 175
7.5 分水岭分割 177
7.5.1 基本分水岭算法 177
7.5.2 Vincent-Soille算法 178
7.6 现代分割方法 180
7.6.1 Mean Shift 180
7.6.2 Graph Cuts 183
7.6.3 活动轮廓模型 185
7.7 图像分割实例 186
习题 188
第8章 图像特征与理解 189
8.1 图像的基本特征 189
8.1.1 几何特征 189
8.1.2 形状特征 193
8.2 角点特征 197
8.2.1 Moravec算法 198
8.2.2 Harris算法 198
8.2.3 SUSAN算法 199
8.3 纹理分析 201
8.3.1 统计法 202
8.3.2 空间自相关函数纹理测度 203
8.3.3 频谱法 203
8.3.4 联合概率矩阵法 204
8.3.5 纹理的句法结构分析法 205
8.4 不变矩特征 206
8.4.1 矩的定义 206
8.4.2 质心坐标与中心矩 206
8.4.3 不变矩 207
8.4.4 主轴 207
8.5 图像匹配 207
8.5.1 模板匹配 208
8.5.2 直方图匹配 209
8.6 局部不变特征点提取 212
8.6.1 SIFT不变特征提取算法 212
8.6.2 SURF不变特征提取算法 215
习题 217
第9章 图像编码 219
9.1 图像编码概述 219
9.1.1 图像编码基本原理与方法 219
9.1.2 图像编码新技术 223
9.1.3 图像编码评价 223
9.2 哈夫曼编码 224
9.3 香农-范诺编码 226
9.3.1 香农-范诺编码的基本方法 226
9.3.2 二分法香农-范诺编码方法 227
9.4 算术编码 228
9.5 行程编码 229
9.6 LZW编码 230
9.6.1 LZW编码方法 230
9.6.2 LZW编码实例 231
9.7 JPEG2000编码 233
9.7.1 JPEG2000概述 233
9.7.2 JPEG2000核心编码系统 234
9.7.3 JPEG2000编码实例 240
9.8 编程实例 241
习题 242
第10章 图像复原 243
10.1 图像退化与复原 243
10.1.1 图像降质的数学模型 243
10.1.2 离散图像退化的数学模型 245
10.2 非约束复原 247
10.2.1 逆滤波 247
10.2.2 非约束图像复原的病态性质 248
10.3 最小二乘类约束复原 249
10.3.1 维纳滤波 249
10.3.2 约束最小平方滤波 251
10.4 非线性复原方法 251
10.4.1 最大后验复原 251
10.4.2 最大熵复原 252
习题 253
第11章 工程实例 254
11.1 实例一——车辆牌照识别 254
11.1.1 车牌规格 255
11.1.2 车牌定位 255
11.1.3 字符分割 257
11.1.4 字符识别 260
11.2 实例二——细胞计数 261
11.2.1 图像预处理 262
11.2.2 阈值分割 262
11.2.3 形态学处理 263
11.2.4 填充孔洞 263
11.2.5 细胞计数及面积计算 264
11.3 实例三——蝴蝶与蛾的分类 264
11.3.1 图像预处理 265
11.3.2 图像分割 267
11.3.3 轮廓跟踪 268
11.3.4 特征提取 268
11.3.5 特征参数测量及特征筛选 268
11.3.6 昆虫识别 269
附录 图像处理的数学基础 271
参考文献 279