posted @ 2012-02-09 23:42 无忧consume 阅读(478) 评论(0) 推荐(0) 编辑
2012年2月9日
摘要:
C++中的临时变量许多人对临时变量的理解仅仅限于: string temp; 其实,从C++的观点来看,这根本就不是临时变量,而是局部变量. C++的临时变量是编译器在需要的时候自动生成的临时性变量,它们并不在代码中出现.但是它们在编译器生成的二进制编码中是存在的, 也创建和销毁.在C++语言中,临时变量的问题格外的重要,因为每个用户自定义类型的临时变量都要出发用户自定义的构造函数和析构函数(如果用户提供了) 又是该死的编译器!又该有人抱怨编译器总在自己背后干着偷偷摸摸的事情了.但是如果离开了编译器的这些工作,我们可能寸步难行. 如果X是一个用户自定义的类型,有默认构造函数,拷贝构... 阅读全文
摘要:
指向const对象的指针 const int *pi; ()pi指向const变量,不必初始化,但不可以修改其值 const 可以指向非const变量,但是值就不定了,因为非const值可以修改,相应的const变量的值也会变const指针(本身的值不可以修改所指对象,但是可以修改所指对象的值,必须初始化) int * const pi;指向const对象的const指针const+typedef 例如: typedef string * pstring; const pstring cstr;等价于 string *const;因为const修饰的值指针因此是指常指针,而不是指... 阅读全文
posted @ 2012-02-09 23:09 无忧consume 阅读(105) 评论(0) 推荐(0) 编辑
摘要:
图像的灰度化原理和实现一、图像的灰度化处理的基本原理 将彩色图像转化成为灰度图像的过程成为图像的灰度化处理。彩色图像中的每个像素的颜色有R、G、B三个分量决定,而每个分量有255中值可取,这样一个像素点可以有1600多万(255*255*255)的颜色的变化范围。而灰度图像是R、G、B三个分量相同的一种特殊的彩色图像,其一个像素点的变化范围为255种,所以在数字图像处理种一般先将各种格式的图像转变成灰度图像以使后续的图像的计算量变得少一些。灰度图像的描述与彩色图像一样仍然反映了整幅图像的整体和局部的色度和亮度等级的分布和特征。图像的灰度化处理可用两种方法来实现。 第一种方法使求出每个像素点.. 阅读全文
posted @ 2012-02-09 21:51 无忧consume 阅读(477) 评论(0) 推荐(0) 编辑
摘要:
图像的二值化原理和实现1、图像的二值化的基本原理 图像的二值化处理就是讲图像上的点的灰度置为0或255,也就是讲整个图像呈现出明显的黑白效果。即将256个亮度等级的灰度图像通过适当的阀值选取而获得仍然可以反映图像整体和局部特征的二值化图像。在数字图像处理中,二值图像占有非常重要的地位,特别是在实用的图像处理中,以二值图像处理实现而构成的系统是很多的,要进行二值图像的处理与分析,首先要把灰度图像二值化,得到二值化图像,这样子有利于再对图像做进一步处理时,图像的集合性质只与像素值为0或255的点的位置有关,不再涉及像素的多级值,使处理变得简单,而且数据的处理和压缩量小。为了得到理想的二值图像,一. 阅读全文
posted @ 2012-02-09 21:38 无忧consume 阅读(1288) 评论(0) 推荐(0) 编辑
摘要:
Sobel边缘检测和边缘细化 在对图像进行边缘检测处理时,得到的结果并不是理想的边缘,而是一幅灰度图像。有时在进行图像识别的时候需要获得图像的单点宽边缘,这就需要对边缘检测的结果进行细化增强。Sobel边缘细化的原理 图像的边缘检测处理可以简单理解为提取图像中区域的轮廓。图像中区域的划分以像素灰度为依据,每个区域中的像素灰度大致相同,而区域之间的边界就称为边缘,寻找这些边缘就是图像边缘检测的目的。 图像边缘检测的结果直观地看类似图像的骨架,对图像边缘检测结果的细化是图像边缘细化很好的示例,如图11-27所示,其中a为原始图像,b为a图像的Sobel边缘检测结果。图11-27图像的边缘检测... 阅读全文
posted @ 2012-02-09 15:47 无忧consume 阅读(849) 评论(0) 推荐(0) 编辑
摘要:
Sobel边缘检测算法/************************************************************************ Sobel边缘检测 (scale=0.5)*参数: image0为原图形,image1为边缘检测结果,w、h为图像的宽和高*当type为true时,差分结果取水平和垂直方向差分中较大者,否则取平均值************************************************************************/voidSideSobel(BYTE* image0, BYTE* image1,un 阅读全文
posted @ 2012-02-09 15:44 无忧consume 阅读(326) 评论(0) 推荐(0) 编辑
摘要:
Robert 边缘检测算子#include "math.h"// Robert算子/*-----------| N2 | N3 |-----------| N0 | N1 |-----------计算公式 sqrt((N0 - N3)2 + (N1 - N2)2)void Robert(BYTE* image0, BYTE* image1, unsigned int w, unsigned int h){int x, y, aR, aG, aB, a;long n;for(y = 0; y < h -1; ++y){for(x = 0; x < w -1; ++ 阅读全文
posted @ 2012-02-09 15:39 无忧consume 阅读(1197) 评论(0) 推荐(0) 编辑
摘要:
百科名片花形矢量图 矢量图是根据几何特性来绘制图形,矢量可以是一个点或一条线,矢量图只能靠软件生成,文件占用内在空间较小,因为这种类型的图像文件包含独立的分离图像,可以自由无限制的重新组合。它的特点是放大后图像不会失真,和分辨率无关,文件占用空间较小,适用于图形设计、文字设计和一些标志设计、版式设计等。简介释义 矢量图,也称为面向对象的图像或绘图图像,在数学上定义为一系列由线连接的点。矢量文件中的图形元素称为对象。每个对象都是一个自成一体的实体,它具有颜色、形状、轮廓、大小和屏幕位置等属性。矢量图的定义位图与矢量图 矢量图使用直线和曲线来描述图形,这些图形的元素是一些点、线、矩形、多边形... 阅读全文
posted @ 2012-02-09 13:57 无忧consume 阅读(854) 评论(0) 推荐(0) 编辑