首页>参考读物>计算机科学与技术>软件与程序设计

Visual C++数字图像处理技术详解
作者 : 刘海波 沈晶 郭耸 等编著
出版日期 : 2010-06-07
ISBN : 978-7-111-30420-3
定价 : 69.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 557
开本 : 16
原书名 : Visual C++数字图像处理技术大全
原出版社:
属性分类: 店面
包含CD :
绝版 : 未绝版
图书简介

本书以数字图像处理技术为主线,全面地介绍在Visual C++环境下进行数字图像处理程序设计的方法,内容涵盖了数字图像的变换、增强、复原、重建、形态学处理、分割、匹配、压缩编码、特效处理等,各种方法均给出基本原理、典型算法、Visual C++源码及综合应用案例。同时,本书还介绍了Visual C++与VTK、OpenCV和MATLAB等开发平台相结合进行数字图像处理的程序设计技术。
本书内容全面,讲解深入浅出,层次分明,注重知识的系统性、针对性和先进性,注重理论结合实践,培养工程应用能力。另外,本书配套光盘中有综合实例的完整源程序,便于学习和在实际开发中使用。
本书适合数字图像处理与分析、计算机视觉和多媒体信息处理等相关领域的研究人员、工程技术人员、教师和学生作为技术参考手册使用,也适合数字图像处理程序设计初学者作为教材使用。

图书特色

本书系统论述了基于Visual C++的数字图像处理的基本理论、基本方法与实用技巧;深入剖析了数字图像处理程序的设计思想、编程步骤与调试手段,将作者多年积累的工程实践经验以案例形式呈现给读者。
图像几何变换:平移、旋转、镜像、转置、缩放、插值
图像正交变换:离散傅里叶变换、离散余弦变换、离散沃尔什变换、K-L变换、SVD变换、小波变换
图像增强:灰度变换增强、直方图增强、平滑、锐化、频域增强、彩色增强
图像复原:线性复原、非线性复原、盲目复原、几何复原
图像重建:傅里叶反投影重建、卷积反投影重建、代数重建、超分辨率重建、三维图像的面绘制和体绘制
形态学处理:二值图像和灰度图像的腐蚀、膨胀、开运算、闭运算、击中击不中变换、骨架提取、灰值形态学梯度计算、Top-Hat变换
图像分割:边缘检测、阈值分割、边界分割、区域生长、彩色分割、分水岭分割、水平集分割
图像匹配:归一化积相关灰度匹配、序贯相似性检测、不变矩匹配、距离变换、最小均方误差匹配
压缩编码:Huffman编码、Shannon-Fano编码、算术编码、游程编码、线性预测编码、位平面编码、有损预测编码、变换编码、JPEG 2000编码
特效处理:扫描、移动、百叶窗、栅条、马赛克、雨滴等显示特效以及底片、雕刻、黑白、雾化和素描等滤镜效果
混合编程:Visual C++结合VTK编程、Visual C++结合OpenCV编程、Visual C++结合MATLAB编程
● 图像浏览器 ● 照片处理器
● CT图像重建 ● 白细胞检测
● 指纹提取 ● 遥感图像匹配
● 人脸检测 ● 运动物体跟踪
● 车牌识别

图书前言

数字图像处理研究利用计算机进行图像信息处理的基本理论和方法,已在航空航天、生物医学工程、工业检测、机器人视觉、公安司法、导航制导、安保监控、文化艺术等诸多领域得到非常广泛的应用。
  数字图像处理技术的研究和应用离不开程序设计,Visual C++则是最强大、最常用的数字图像处理程序开发工具之一。本书全面地介绍了在Visual C++环境下进行数字图像处理的程序设计方法,内容涵盖了数字图像处理的理论基础和常用数字图像处理方法的Visual C++实现技术,各种方法均给出基本原理、典型算法及其完整的Visual C++源码。每种算法的源代码均以函数形式给出,读者在理解了相关代码的功能后可以直接用这些代码组合成各种功能更强大的数字图像处理应用程序。
本书特点
  本书主要有以下特点。
1. 技术全面,内容充实
  本书全面涵盖了从图像的变换、增强、复原、重建、分割、匹配、形态学处理到压缩编码和特效处理等常用的数字图像处理技术和典型算法,同时还介绍了Visual C++与VTK、OpenCV和MATLAB相结合开发数字图像处理系统的技术。通过阅读本书读者可以全面掌握Visual C++数字图像处理的核心技术和周边相关技术。
2. 循序渐进,深入浅出
  为了方便初学者学习,本书从数字图像处理的基本概念讲起,逐步引入数字图像处理的专门理论和核心技术,再过渡到高级综合应用。对每项处理技术的讲解也是从基本原理开始,再给出算法描述,然后结合应用实例讲解开发过程。读者不需要具备数字图像处理知识就能循序渐进地掌握本书的内容,也可以根据自己的知识基础选择阅读本书时的切入点和对内容进行取舍。
3. 理论凝练,算法清晰
  本书在清楚讲述问题的情况下,对繁杂的数字图像处理理论做了大量的简化和凝练工作,这体现在最基本的原理、最核心的计算公式和清晰简明的算法描述。读者不必再花大量的精力从理论堆里去发掘算法步骤,可以直接从给出的算法步骤开始编程实践。
4. 代码完整,讲解详尽
  在介绍完基本原理和算法步骤之后,本书对每个算法、每章的实例和最后的车牌识别系统综合应用案例都给出了完整的源代码,对开发步骤做了详尽的讲解,并对关键的代码部分进行了详细的注释说明,每段代码都给出了运行结果。读者可以参照基本原理、算法描述和运行结果去阅读源程序,以便加深理解。
5. 结合应用,注重实践
  书中提供了大量的综合应用实例,结合实例详细透析了数字图像处理系统的开发过程,每章都从工程实践的角度总结了作者多年来在数字图像处理领域的开发经验、常见的问题及其解决方法。
主要内容
  本书分为4篇,共15章。各章的主要内容如下。
第一篇  数字图像处理编程基础
  第1章:主要介绍数字图像处理的基本知识,包括颜色模式、调色板、常用数字图像文件格式以及使用Visual C++对数字图像进行处理的基础方法。如果读者没有接触过数字图像处理技术,本章可以引导读者进入数字图像处理领域。
第二篇  数字图像处理核心技术
  第2章:介绍了图像几何变换的方法,包括图像的平移、旋转、镜像、转置、缩放以及插值算法等。通过阅读本章读者可以学习到图像编辑中最为常用的图像变换技术。
  第3章:介绍了图像正交变换的方法,包括离散傅里叶变换、离散余弦变换、离散沃尔什变换、K-L变换、SVD变换和小波变换等。通过阅读本章读者可以学习到图像分析中常用的特征提取技术。
  第4章:介绍了图像增强方法,包括灰度变换增强、直方图增强、图像平滑和锐化、频域增强和彩色增强等,通过阅读本章读者可以学习到改进图像视觉效果或突出图像某个区域的图像处理技术。
  第5章:介绍了图像复原方法,包括线性复原、非线性复原、盲目复原与几何复原等。通过阅读本章读者可以学习到数码相机及图像处理软件中常用的将模糊或几何畸变的图像进行还原的技术。
  第6章:介绍了图像重建方法,包括傅里叶反投影重建、卷积反投影重建、代数重建、超分辨率重建以及三维图像的面绘制和体绘制算法,同时还介绍了图像重建常用的VTK工具包。通过阅读本章读者可以学习到医学图像处理、虚拟现实和数字地球中常用的根据投影数据重建图像的技术。
  第7章:介绍了图像形态学处理方法,包括二值图像和灰度图像的腐蚀、膨胀、开运算和闭运算、击中击不中变换、骨架提取、灰值形态学梯度计算和Top-Hat变换等。通过阅读本章读者可以学习到数学形态学的基本理论及其用于数字图像处理的技术。
  第8章:介绍了图像分割方法,包括传统的边缘检测法、阈值分割法、边界分割法、区域生长法、彩色分割法和新兴的分水岭分割法与水平集分割法。通过阅读本章读者可以学习到图像分析中常用的目标提取技术。
  第9章:介绍了图像匹配方法,包括基于像素的归一化积相关灰度匹配和序贯相似性检测法匹配以及基于特征的不变矩匹配、距离变换匹配及最小均方误差匹配等。通过阅读本章读者可以学习到图像识别、计算机视觉和多源图像融合中常用的图像匹配技术。
第三篇  数字图像媒体处理技术
  第10章:介绍了图像压缩编码方法,包括Huffman编码、Shannon-Fano编码、算术编码、游程编码、线性预测编码以及有损预测编码和变换编码等,特别介绍了目前广泛使用的JPEG 2000编码。通过阅读本章读者可以学习到Internet、移动通信、数字图书馆以及电子商务等领域广泛使用的图像压缩技术。
  第11章:介绍了图像显示特效和滤镜效果的实现方法,包括扫描、移动、百叶窗、栅条、马赛克和雨滴等显示特效以及底片、雕刻、黑白、雾化和素描等滤镜效果。通过阅读本章读者可以学习到数码照片处理软件中常用的图像特效处理技术。
第四篇  数字图像编程高级应用
  第12章:介绍了Visual C++结合OpenCV编程的方法,包括OpenCV的安装与编程环境配置、OpenCV编程风格、数据结构、常用函数及使用方法等。通过阅读本章读者可以学习到在Visual C++中利用OpenCV源码库开发数字图像处理系统的技术。
  第13章:介绍了Visual C++结合MATLAB编程的方法,包括利用MATLAB和Simulink进行数字图像处理的基本方法以及Visual C++通过MATLAB引擎、MCC和MATCOM调用MATLAB的基本方法。通过阅读本章读者可以学习到Visual C++和MATLAB混合编程技术。
  第14章:给出了一个完整的车牌识别系统综合应用实例,包括车牌定位、倾斜校正、字符分割、牌号识别等全过程。通过阅读本章读者能从工程应用的角度加深对数字图像处理技术的认识和理解。
读者对象
   数字图像处理系统开发人员
   计算机视觉系统开发人员
   多媒体信息处理系统开发人员
   数字图像处理相关领域科研人员
   数字图像处理编程爱好者
   Visual C++程序设计爱好者
   高等院校的教师和学生
本书光盘
   程序源代码:包含书中各章实例和综合应用实例的完整源代码及测试用的图像文件,读者可以按照书中的说明对程序源代码进行编译和运行。
   开源软件包:包含最新版本的VTK、CMAKE和OpenCV开源软件包,读者可以直接安装,按照书中相应章节的介绍使用。
  本书主要由刘海波、沈晶、郭耸编著,参加本书编著和资料整理的还有李平科、于化龙、宋锋、林玉娥、朱长明、王勇、石磊、周长建、马梦成、刘胜宇、吴艳霞、刘萌、梁晓丽、宫洁、宁士勇、陆志鹏、沈祺等。李平科和郭耸完成了全书的统稿工作,刘海波和沈晶审校了全书。本书得到中央高校基本科研业务费专项资金资助,在编写过程中得到了海军潜艇学院宋一兵高工和哈尔滨工程大学郭方方副教授的大力支持,在此特别表示感谢!
  感谢您选择了本书,希望我们的努力对您的工作和学习有所帮助,也希望您把对本书的意见和建议告诉我们。
作者:gdz_zero@126.com
编辑:sdl@hzbook.com
作者
2010年5月

上架指导

计算机\程序设计

封底文字

本书系统论述了基于Visual C++的数字图像处理的思想、编程与调试方法,将工程实践中得到的经验以案例形式介绍给读者。

涵盖内容
? 图像几何变换:平移、旋转、镜像、转置、缩放、插值
? 图像正交变换,离散傅立叶变换、离散余弦变换、离散沃尔什变换、K-L变换、SVD变换、小波变换
? 图像增强:灰度变换增强、直方图增强、平滑、锐化、频域增强、彩色增强
? 图像复原:线性复原、非线性复原、盲复原、几何复原
? 图像重建:傅立叶反投影重建、卷积反投影重建、代数重建、超分辨率重建、三维图像的面绘制和体绘制
? 图像形态学处理:二值图像和灰度图像的腐蚀、膨胀、开运算、闭运算、击中击不中变换、骨架抽取、灰值形态学梯度计算、Top-Hat变换
? 图像分割:边缘检测、阈值分割、边界分割、区域生长、彩色分割、分水岭分割、水平集分割
? 图像匹配:归一化积相关灰度匹配、序贯相似性检测、不变矩匹配、距离变换、最小均方误差匹配
? 图像压缩编码:Huffman编码、Shannon-Fano编码、算术编码、游程编码、线性预测编码、有损预测编码、变换编码、JPEG2000编码
? 图像特效处理:扫描、移动、百叶窗、栅条、马赛克、雨滴等显示特效以及底片、黑白、雾化和素描等滤镜效果
? 图像处理混合编程:Visual C++结合VTK、OpenCV、MATLAB

综合实例
? 图像浏览器
? 照片处理器
? CT图像重建
? 白细胞检测
? 指纹提取
? 遥感图像匹配
? 人脸检测
? 运动物体跟踪
? 车牌识别

作者简介

刘海波 沈晶 郭耸 等编著:暂无简介

图书目录

前言
第一篇  数字图像处理编程基础
第1章 Visual C++图像处理基础 1
1.1 Visual C++概述 1
1.2 数字图像处理的研究内容
及应用领域 2
1.3 颜色模式和调色板 4
1.3.1 颜色模式 4
1.3.2 Windows调色板 6
1.4 数字图像文件格式 11
1.4.1 BMP文件格式 11
1.4.2 其他文件格式 13
1.5 使用Visual C++处理数字
图像的基本方法 18
1.5.1 使用GDI+处理数字图像 18
1.5.2 使用DIB处理数字图像 22
1.5.3 使用自定义类CDib处理
数字图像 26
1.6 综合实例—图像浏览器 37
1.7 实践拓展 42
第二篇  数字图像处理核心技术
第2章 图像几何变换 45
2.1 图像位置变换 45
2.1.1 图像平移 46
2.1.2 图像旋转 49
2.1.3 图像镜像 54
2.1.4 图像转置 58
2.2 图像尺度变换 60
2.2.1 图像缩放 60
2.2.2 插值算法 64
2.3 综合实例—魔镜 70
2.4 实践拓展 83
第3章 图像正交变换 85
3.1 基本正交变换 85
3.1.1 离散傅里叶变换 85
3.1.2 离散余弦变换 95
3.1.3 离散沃尔什变换 99
3.2 特征变换 105
3.2.1 K-L变换 105
3.2.2 SVD变换 110
3.2.3 小波变换 115
3.3 综合实例—特征提取 123
3.4 实践拓展 130
第4章 图像增强 132
4.1 灰度变换增强 132
4.1.1 线性灰度增强 132
4.1.2 分段线性灰度增强 134
4.1.3 非线性灰度增强 136
4.2 直方图增强 138
4.2.1 直方图统计 138
4.2.2 直方图均衡化 140
4.2.3 直方图规定化 142
4.3 图像平滑 145
4.3.1 邻域平均法 145
4.3.2 加权平均法 147
4.3.3 选择式掩膜平滑 149
4.3.4 中值滤波法 154
4.4 图像锐化 156
4.4.1 梯度锐化 156
4.4.2 拉普拉斯掩膜锐化 158
4.5 频域增强 161
4.5.1 低通滤波 162
4.5.2 高通滤波 165
4.5.3 带阻滤波 167
4.5.4 同态滤波 168
4.6 彩色增强 168
4.6.1 真彩色增强 168
4.6.2 假彩色增强 169
4.6.3 伪彩色增强 169
4.7 综合实例—照片处理器 170
4.8 实践拓展 177
第5章 图像复原 178
5.1 图像退化模型 178
5.2 线性复原 178
5.2.1 无约束逆滤波 179
5.2.2 有约束维纳滤波 182
5.2.3 有约束最小平方滤波 185
5.2.4 运动模糊图像复原 189
5.3 非线性复原 194
5.3.1 最大后验复原 194
5.3.2 最大熵复原 199
5.3.3 投影复原 204
5.4 盲目复原与几何复原 207
5.4.1 盲目图像复原 207
5.4.2 图像几何畸变的校正 211
5.5 综合实例—模糊照片复原 214
5.6 实践拓展 217
第6章 图像重建 219
6.1 图像重建与可视化工具VTK 219
6.1.1 图像重建 219
6.1.2 可视化工具VTK 219
6.2 VTK的安装与配置 222
6.2.1 安装前的准备 223
6.2.2 开始实施安装 223
6.2.3 Visual Studio 2005环境
的配置 226
6.2.4 测试开发环境 228
6.3 传统重建算法 229
6.3.1 傅里叶反投影重建 229
6.3.2 卷积反投影重建 231
6.3.3 代数重建 232
6.3.4 超分辨率重建 233
6.4 三维重建数据可视化 233
6.4.1 三维图像的面绘制 234
6.4.2 三维图像的体绘制 237
6.5 综合实例—CT图像重建 239
6.6 实践拓展 243
第7章 形态学处理 245
7.1 形态学基本概念 245
7.2 二值图像形态学处理 246
7.2.1 图像腐蚀 246
7.2.2 图像膨胀 249
7.2.3 开运算和闭运算 251
7.2.4 击中击不中变换 254
7.2.5 骨架提取 257
7.3 灰度图像形态学处理 260
7.3.1 灰值腐蚀和膨胀 260
7.3.2 灰值开运算和闭运算 265
7.3.3 灰值形态学梯度 268
7.3.4 Top-Hat变换 269
7.4 综合实例—白细胞检测 271
7.5 实践拓展 275
第8章 图像分割 276
8.1 边缘检测法 276
8.1.1 Roberts算子 276
8.1.2 Sobel算子 278
8.1.3 Prewitt算子 281
8.1.4 Krisch算子 282
8.1.5 Laplacian算子 287
8.1.6 Gauss-Laplacian算子 289
8.2 阈值分割法 290
8.2.1 最大方差阈值分割 291
8.2.2 自适应阈值分割 293
8.3 边界分割法 296
8.3.1 轮廓提取 296
8.3.2 边界跟踪 298
8.4 其他分割法 301
8.4.1 区域生长法 301
8.4.2 彩色分割法 303
8.4.3 分水岭分割法 306
8.4.4 水平集分割法 310
8.5 综合实例—指纹提取 313
8.6 实践拓展 316
第9章 图像匹配 318
9.1 基于像素的匹配 318
9.1.1 归一化积相关灰度匹配 318
9.1.2 序贯相似性检测法匹配 322
9.2 基于特征的匹配 327
9.2.1 不变矩匹配法 327
9.2.2 距离变换匹配法 332
9.2.3 最小均方误差匹配法 340
9.3 综合实例—遥感图像匹配 346
9.4 实践拓展 355
第三篇  数字图像媒体处理技术
第10章 图像压缩编码 357
10.1 无损压缩 357
10.1.1 Huffman编码 358
10.1.2 Shannon-Fano编码 364
10.1.3 算术编码 371
10.1.4 游程编码 378
10.1.5 线性预测编码 378
10.1.6 位平面编码 379
10.2 有损压缩 382
10.2.1 有损预测编码 382
10.2.2 变换编码 390
10.3 JPEG 2000编码 392
10.3.1 JPEG 2000 概述 392
10.3.2 JPEG 2000编码过程 393
10.3.3 JPEG 2000 图像压缩码
流格式 397
10.4 综合实例—图像编码
解码器 399
10.5 实践拓展 405
第11章 图像特效 406
11.1 显示特效 406
11.1.1 扫描特效 407
11.1.2 移动特效 408
11.1.3 百叶窗特效 410
11.1.4 栅条特效 411
11.1.5 马赛克特效 414
11.1.6 雨滴特效 415
11.2 滤镜效果 416
11.2.1 底片效果 416
11.2.2 雕刻效果 417
11.2.3 黑白效果 419
11.2.4 雾化效果 421
11.2.5 素描效果 423
11.3 综合实例—图像特效
编辑器 425
11.4 实践拓展 440
第四篇  数字图像编程高级应用
第12章 Visual C++结合
OpenCV编程 443
12.1 OpenCV概述 443
12.2 OpenCV编程环境 445
12.2.1 OpenCV的获取 445
12.2.2 OpenCV的安装和
Visual C++的配置 446
12.3 OpenCV编程基础 448
12.3.1 OpenCV编程规范 448
12.3.2 OpenCV基础数据结构 451
12.3.3 OpenCV动态数据结构 457
12.3.4 OpenCV常用函数 462
12.3.5 在Visual C++环境下
使用OpenCV 477
12.4 综合实例—人脸检测 478
12.5 实践拓展 480
第13章 Visual C++结合
MATLAB编程 482
13.1 MATLAB概述 482
13.2 MATLAB图像处理 482
13.2.1 MATLAB程序设计基础 483
13.2.2 MATLAB图像处理工具箱 486
13.2.3 Simulink视频和图像处理
模块 489
13.3 在Visual C++中调用
MATLAB 490
13.3.1 使用MATLAB引擎 490
13.3.2 使用MATLAB编译器 497
13.3.3 使用MATCOM 504
13.3.4 在VC中调用Simulink
模型 510
13.4 综合实例—运动物体跟踪 515
13.5 实践拓展 522
第14章 车牌识别系统综合应用 524
14.1 车牌识别系统概述 524
14.2 车牌识别系统架构 524
14.2.1 系统硬件平台 524
14.2.2 系统软件平台 525
14.3 车牌定位 526
14.3.1 车辆图像采集与预处理 526
14.3.2 车牌区域定位 529
14.4 字符分割 531
14.4.1 图像二值化 531
14.4.2 倾斜校正 531
14.4.3 分割字符 532
14.5 车牌识别 534
14.5.1 字符特征提取 534
14.5.2 分类器设计 535
14.5.3 字符识别 544
14.6 实践拓展 545
参考文献 546

教学资源推荐
作者: 曹青 邱李华 郭志强
作者: [美] 托尼·加迪斯(Tony Gaddis) 著
作者: [美] 凯·霍斯特曼(Cay Horstmann) 兰斯·尼塞斯(Rance Necaise) 著
作者: [美] 罗伯特·塞奇威克(Robert Sedgewick) 凯文·韦恩(Kevin Wayne) 罗伯特·唐德罗(Robert Dondero) 著
参考读物推荐
作者: David Berube
作者: 申屠青春主编   宋波 张鹏 汪晓明 季宙栋 左川民 编著
作者: Cedric Beust;Hani Suleiman