





本书以CImage类为基础介绍了Visual C++.NET环境下的图像基础知识与图像处理常用算法的编程原理和方法。通过自建CImage仿真类,本书方法也适用于Visual C++环境。本书包括4个部分。第1部分介绍图像显示与存储的基础知识;第2部分介绍Visual C++.NET应用程序框架的建立,图形编程,图像的存取、显示与生成,以及图像的变化;第3部分介绍图像的点处理,邻域处理,二值图像的处理,形态学图像处理,彩色图像的处理,轮廓跟踪与线段编码;第4部分介绍CImage仿真类的建立与图像文件的读写。本书附有光盘,提供了演示程序的全部源代码以及处理所需的图像实例。 本书可作为计算机及相关专业数字图像处理的教材或教学参考书,也可作为电子、信息类专业的学生与科研人员在图像处理方面的参考书或程序库。
前 言 本书是2005年年初出版的《C/C++图像处理编程》一书的姊妹书。在编写《C/C++图像处理编程》一书时我有一个观点,即图像的处理与编程环境无关。我原认为该书中的程序虽然是以C语言编写的,但是学好以后很容易移植到其他编程环境,譬如Visual C++中。现在我才认识到这个观点并不全面。虽然,它对于有较好编程基础的读者来说也许是正确的,但是对于那些一开始就学习C++编程的读者来说情况就不同了。C语言与C++尽管在语言结构上比较接近,但毕竟有一定的差异。对于初学者来说,阅读此书还有一定的困难,同时希望他们学完书中的编程原理后再应用到自己的工作中也不现实。因此,最好能有一本既可从中学到一些新的知识,又能花费较少精力就可拿来使用的图书。这样就萌发了为这些读者用C++再写一本书的念头,于是决定与我校从事多年C++教学工作的金登男副教授一起合作编写本书。 本书与《C/C++图像处理编程》在取材和编程方法方面基本相似,都是选择图像处理应用中最为常用的图像基础知识、图像增强与图像分析进行介绍,选材以便于编程实现并具有实用价值为标准。两者的差别在于后者主要是用C语言编写的,从原理出发一步一步编写自己的程序,除了底层少数基本子程序外基本上是“自给自足”的。而本书则是用C++编写的,并且在编程过程中尽量使用MFC中的现有函数。因此,本书内容不是《C/C++图像处理编程》一书的简单翻版。 实际上,Visual C++.NET与Visual C++在图形、图像的编程方面并没有实质性的差异。选择Visual C++.NET作为本书的编程环境有以下几方面的原因。 第一...
第1章 图像基础知识 1
1.1 数字图像与图像处理 1
1.1.1 图像 1
1.1.2 数字图像 3
1.1.3 图像处理的主要内容 5
1.2 颜色模式 6
1.2.1 颜色的分类和特性 6
1.2.2 RGB颜色模式 8
1.2.3 CMYK颜色模式 9
1.2.4 HSV(HSB、HLS)颜色模式 11
1.3 彩色图像显示原理 13
1.3.1 黑白图像显示电路 13
1.3.2 不同类型图像的显示原理 14
1.3.3 调色板 18
1.3.4 调色板原理 18
1.3.5 电视图像采集卡 21
1.3.6 图像数据的存储、传送和处理 21
1.4 图像文件概述 23
1.4.1 图像文件 23
1.4.2 图像文件的结构 23
1.4.3 图像文件的常用参数 24
1.4.4 图像文件的类型 25
1.4.5 图像显示与存储的过程 26
1.4.6 不同显示格式间像素数据的转换 27
1.5 BMP图像文件 31
1.5.1 BMP文件的结构 31
1.5.2 位图文件头与位图信息头 32
1.5.3 主要参数 32
1.5.4 图像文件读入内存与显示 33
第2章 建立应用程序框架 36
2.1 创建Visual C++.NET程序 36
2.1.1 新建Visual C++.NET项目 36
2.1.2 选择应用程序类型 37
2.2 建立菜单 38
2.2.1 添加菜单资源 38
2.2.2 插入顶层... 查看详情