1.结合灰度形态学理论和文字的特征,消除道路上的文字噪声;
2.基于彩色栅格地图噪声特征的道路提取 ;
3.利用噪声的自身特征和数学形态学梯度来消除地图图像 中的噪声,从而达到识别与提取完整的道路网络的目标。
3.1 概述
传统的地图道路网络的识别与提取方法是:在生成城市矢量交通GIS 的过程中,对地图道路信息的获取都必须使用矢量绘图仪(数字化仪),通过手工将复杂的道路网络逐点输入计算机才能实现地图矢量化过程,难以迅速得到满足精度要求的GIS 矢量地图,其框图参见图3.1(a)。

随着人们对地理信息需求量的增加,随着地理信息处理的批量化,随着高性能计算机的制造使得处理海量地理信息越来越快,人工识别愈来愈成为一项既费时又费力的工作,地理信息的识别也越来越成为地理信息系统发展的瓶颈。基于此,建立一个提取城市地图道路的自动识别系统以取代目前的人工识别系统是非常必要的。自动识别系统根据地图的特征利用数字图像处理及模式识别的基本理论自动识别并提取出地图中道路网路,其框图参见图3.1(b)。对自动识别系统而言,如何构建图像识别系统是关键。一个图像识别系统一般可以分为三个主要部分:预处理、特征抽取、判决和分类(参见图3.2)。预处理的目的是除去干扰及差异,将原始信息变成适合于特征抽取的形式;然后对经过预处理的信息进行特征抽取;最后进行判决分类,得到识别结果。

3.2 地图的特征分析
本论文研究的地图来自《中国公路交通图册》(光盘版),地图同一图层的颜色分布很均衡,而由纸质地图通过扫描仪扫描进计算机,其颜色经常会受到破坏。图3.4(a)是合肥市城市交通地图的一部分,它具有一些明显的特征:
1. 地图中的文字大多数呈黑色,仅有少量其他颜色的文字,并且文字的笔画宽度远远
小于道路的宽度;
2. 地图上的普通道路以白色表示,对于一些具有特殊含义的道路用不同的颜色表示,且同一性质的道路的颜色基本一致;
3. 非路区域(以后简称区域)根据其不同的性质分别用不同的颜色标示,且同一性质的区域的颜色基本一致;
4. 地图上还有一些表示特殊意义的符号,如:红色五角星表示政府机关,红十字表示医院等;
5. 其灰度直方图(参见图3.4(b))没有明显的分段特性;在这幅地图中道路有三种灰度:156、171 和255,区域的灰度为168;
6. 地图中的有些文字的笔画之间存在粘连现象;
7. 有些道路之间的距离很小。
在地图图像的这些特征中,有些特征对地图中道路网络的识别和提取有很大的帮助(如我们可以利用文字的笔画特征消除文字噪声,这部分内容将在下面的相关章节中介绍),但是有些特征则是影响地图中道路网络识别与提取的关键因素(如道路上的粘连文字则是导致道路欠识别的主要因素,医院标志符号则是可能导致道路误识别一大隐患)。

3.3 地图图像分割
从图3.4(a)可以看到:与水相关的,如河流、湖泊等是用深浅不一的蓝色表示的;与绿地有关的,如公园、绿化带等是用绿色(RGB(103,169,121))表示的;城市区域是用棕色(RGB(191,162,142))表示;城市道路根据道路的性质(如:机动车单行道、机动车禁行路等) 不同分别用: 白色( RGB(255,255,255) )、绿色( RGB(130,179,108) )、粉红色(RGB(234,116,163))、橙色(RGB(239,157,70))等几种颜色表示。但是,在道路和区域中存在大量的文字及少量的表示特殊含义的标志,如医院的标号等等。
根据彩色城市地图的特点,我们将其划分为三个集合:(1)道路集R;(2)区域集A;(3)噪声集N。在这里,我们把不同性质的道路划分为道路集;绿地、河流及城市区域归入区域集;所有文字和表示特殊含义的标志作为噪声集。道路集、区域集和噪声集都是由一些具有颜色特征的像素点构成的集合。相应地,我们可以定义三个颜色集合:(1)道路颜色集RC;(2)区域颜色集AC;(3)噪声颜色集NC。这里,把构成道路集所有像素的颜色作为道路颜色集Rc;同理,把构成区域集所有像素的颜色作为区域颜色集AC,把构成噪声集所有像素的颜色作为噪声颜色集NC;
3.4 地图规范化处理
地图中,不同用途的道路一般采用不同的颜色表示(参见图3.6),例如用浅绿色表示过境车辆道路、用湖色表示货运机动车禁行路等;同样,区域也是用多种颜色标示,例如用深浅不一的蓝色代表区域块中湖泊,用绿色表示区域块中的绿地。地图中统一类对象用不同的颜色标示,这对道路网络的识别与提取非常不利。因此在道路网络识别和提取前,一般先要对地图图像进行规范化处理。地图图像规范化处理的目的是使道路和区域分别用一种颜色表示。本文根据城市交通地图图像的特点,把道路规范化成白色(RGB(255,255,255)),把区域规范化成灰色(RGB(168,168,168))。目前,常用的规范化方法是基于颜色距离公式的交互式方法。另外,地图中的有些特殊符号,如医院的标志符号,符号的中心为白色十字,它和普通道路的颜色一致,这样的符号对道道路网络的识别与提取有很大的干扰性。在识别与提取道路网络之前如果不先去除这些符号就可能产生道路误识别。为了提高道路网路识别的准确性,必须采取有效的措施来消除这些符号。地图中也有些特殊符号不会对道路的识别和提取过程产生影响,如符号中不含白色像素,就没有必要事先去除之。
综上所述,地图的规范化由两部分组成
(1)消除地图中的白色符号噪声;(2)道路集和区域集颜色规范化。
3.4.1 消除符号噪声
对于同一个地图集来说,同一种符号的大小一般相同。因此,可以采用模板匹配的方法来消除地图中的白色符号(含有白色像素的特殊符号)。但是,由于传统的模板匹配的方法存在一些固有缺陷,如果采用传统的模板匹配方法消除这些符号噪声往往达不到理想的效果。在地图图像中这些符号分布在不同的位置,符号的背景细节可能完全不同,一般很难得到一个理想化的样板;另外,采用传统的模板匹配的方法消除符号噪声的计算量很大。鉴于此,有必要对传统的模板匹配方法作一些改进,改进后的模板匹配算法如下:
1.根据白色符号的大小选择一个适当的方阵模板,例如:对于医院符号,可以采用19´19 的矩阵作为模板;
2.从白色符号中提取几个具有代表性的特征点(如医院符号,可以选取5 个特征点:白十字的中心点及和该点等距离的上下左右4 个红色点),并且以每个特征点的颜色来初始化模板相应位置的颜色,模板其他位置的颜色为任意值(处理过程中,不统计这些位置的值);
4. 扫描整幅地图,对地图中的每个和模板等大小的矩阵块(或称子图像)跟模板作比较,在某种相似测度下(如平方和最小或对应像素之间的颜色距离在一定的范围内等),如果图像的子图像和模板匹配,则把矩阵块中的白色像素置换成灰色(RGB(168,168,168))像素。
利用改进的模板匹配方法来识别对象,大大降低了时间复杂度。例如:用传统的方法识别医院符号需要比较361 次,而用改进的方法只需要比较5 次。这里,我们把符号中的白色像素替换成灰色像素是因为:地图图像的区域的主体颜色呈灰色且这些符号一般都处于区域之中。利用改进的模板匹配方法对图3.4(a)进行处理,处理的效果参见图3.5。

3.4.2 交互式规范化方法

Rc = {r | r = (255,255,255)}
Ac = {a | a = (168,168,168)}
事先提取图3.5 中的道路颜色和区域颜色并初始化道路颜色集Rc 和区域颜色集Ac,利用上述方法对图3.5 进行规范化处理,其处理的效果图参见图3.7(a)。

对地图图像进行规范化处理后,其灰度直方图3.7(b)有了明显的分段特性:道路处于高灰度区,区域处于中间灰度区,文字和符号等作为噪声主要分布在低灰度区。
3.5 噪声分类准则
对地图进行规范化处理后,道路上的像素颜色主要为白色,而区域主要由灰色像素构成。道路和区域上都存在一些其它颜色像素,我们把这些颜色的像素作为噪声。对于地图上的噪声,我们既不能用道路的颜色来替代,也不能用区域的颜色替换。因此,我们需要建立几种准则来判断哪些噪声像素属于道路以及哪些噪声像素应该被划为区域。在详细分析地图上噪声特征的基础,我们建立了以下几种噪声分类准则。
3.5.1 基于梯度算子的噪声分类准则
梯度法是图像锐化处理最常用的方法,利用梯度法能加强图像中比较尖锐的灰度过渡区。在图像轮廓上,像素的灰度有陡然变化,梯度值很大;在图像灰度变化平稳的区域,其梯度值较小;而在图像的等灰度区域,梯度值为零。梯度算子经常用来检测图像中物体的边缘,它是图像边缘分割的主要算子之一。利用梯度运算能加强图像中比较尖锐的灰度过渡区的特征,我们可以建立一个噪声分类准则。
形态学梯度算子和其它梯度算子相比,具有运算简单且易于实现的特点。基于梯度算子的噪声分类准则是建立在形态学梯度算子之上的,利用其它的梯度算子也可以得到类似的结论。在讨论这种噪声分类准则之前,先看看用图3.8(b)作为结构元素对图3.7(a)做形态学梯度运算的结果,其结果参见图3.8(a)。

从图3.8(a)可以看出:道路上的文字或噪声块边缘的像素的灰度值较大,而区域内文字或噪声块边缘像素的灰度值则相对较小。其主要原因是:构成道路像素的颜色为白色,它具有最高的灰度值255;道路上的噪声以黑色文字噪声居多,它们的灰度值很小;这样,道路像素的灰度值和道路上噪声像素的灰度值相差很大,而区域像素的灰度值和区域内噪声像素的灰度值相差相对较小。利用梯度运算的结果,可以消除道路上的部分噪声,但是不能用于消除区域内的噪声。基于梯度算子的噪声分类准则可以描述为:用梯度运算结果图中高灰度值像素的灰度值替换梯度运算前地图中相应像素的灰度值,而其它像素的灰度值保持不变。该方法处理道路上黑色文字噪声有一定的效果,但在处理非黑色文字噪声(如红色文字噪声)却毫无功效。利用这种噪声分类准则对图3.7(a)进行处理,其处理效果参见图3.9。

3.5.2 基于噪声特征的噪声分类准则
从图3.5 中,我们可以看出:地图上的噪声主要是文字噪声,还有一些表示特殊含义的符号和区域之间的分界线。对文字而言,文字的笔划有一定的宽度及笔划间有一定的间距,且文字的笔划一般在1~5 个像素之间,而道路的宽度一般远远大于文字笔划的宽度。另外,通过对文字的放大,我们还可以发现其他的一些重要特征:文字和区域及文字和道路之间存在过渡色,并且道路上的文字和道路之间的过渡色具有较大的灰度值,而区域内的文字和区域之间的过渡色的灰度值较小(参见图3.10)。就区域之间的分界线来说,这些线条一般都很细;对于一些表示特殊含义的符号和粘连的文字来说,噪声一般呈块状出现。
对于区域中的块状噪声,可以用适当阶数的方阵(如15X15 的方阵)来扫描整幅地图,如果方阵中所有的像素都属于区域或噪声(即像素的颜色不是白色),就把该方阵中心的一些像素归并到区域中。这里,没有把方阵中所有像素都划分为区域的目的是防止把道路上粘连文字块噪声误判为区域。对于线状的噪声(文字的笔划及区域的分界线),根据文字的笔划特征及其两侧像素的属性来判断这些噪声像素的归属:如果线状噪声两侧的像素都属于道路(噪声两则像素的颜色为白色),则把这些噪声像素归并到道路;如果线状噪声两侧的像素都属于区域(噪声两侧像素的颜色为灰色),则把这些噪声像素归并到区域;如果线状噪声两侧的像素分别属于道路和区域,则保留这些噪声像素。另外,利用文字过渡色的特征,可以把灰度值大于某阈值的噪声像素划分到道路中。
图3.11 是对图3.7(a)中噪声进行分类的实例。图3.11(a)是仅利用文字的笔划特征对道路上噪声进行分类的结果;图3.11(b)是仅利用文字的笔划特征对区域内噪声进行分类的结果;图3.11(c)是应用块状噪声分类准则对区域内噪声进行分类的结果;图3.11(d)是在没有加入过渡色特征的情况下,综合利用地图上噪声特征对图3.7(a)进行噪声分类的结果;图3.11(e)是在加入过渡色特征的情况下,综合利用地图上噪声特征对图3.7(a)进行噪声分类的结果。从图3.11(a)和3.11(b)可以看出:利用文字的笔划特征不能有效地对粘连文字及其它类型的块状噪声进行分类。从图3.11(e)可以看出:地图中未分类的噪声主要分布在道路和区域的交界处。对图3.11(e)进行二值化及反色处理即可得到图3.11(f)。


3.6 道路网络识别与提取过程
对地图进行消除符号噪声和规范化处理后,道路网络的识别与提取的问题就转化为如何正确分类地图中噪声。因此,道路网络识别与提取过程可以描述为:在消除符号噪声和地图规范化处理的基础上,对地图中的噪声进行分类。结合形态学梯度和噪声的一些特征,可以达到很好的噪声分类效果;此外,由图3.11(f)可知,仅利用噪声的自身特征也能获得较好的噪声分类结果。
结合梯度和噪声特征的道路网络识别与提取的处理步骤如下:
1. 消除符号噪声;
2. 地图规范化处理;
3. 用梯度消除道路上文字噪声;
4. 利用噪声特征消除噪声;
5. 二值化及反色处理;
6. 平滑处理以便消除毛刺或细小的孔洞
灰度形态学开运算具有消除细小物体、在纤细点处分离物理、在平滑较大物体的边界时不明显改变其面积的作用。而灰度形态学闭运算具有填充物体内细小空洞、连接邻近物体、在不明显改变物体面积的情况下平滑其边界的作用。因此,可以采用灰度形态学的开运算消除识别过程中产生的毛刺;用灰度形态学的闭运算可以填充道路网路内的细小孔洞。仅利用噪声特征的道路网络识别与提取的具体处理步骤如下:
1. 消除符号噪声;
2. 地图规范化处理;
3. 消除区域内的块状噪声和线形噪声;
4. 处理过渡色像素;
5. 利用文字的笔画特征处理道路上噪声;
6. 二值化及反色处理;
7. 平滑处理以便消除毛刺或细小的孔洞。
图3.12 是道路网络识别与提取的一个实例,其中:图(a)是待处理的原始地图(合肥市交通地图的局部);图(b)是对图(a)进行消除符号噪声和规范化处理得到的结果;图(c)是在图(b)的基础上,结合形态学梯度和噪声特征(不包含过渡色特征)对地图中的噪声分类后的结果;图(d)是在图(b)的基础上,利用噪声自身特征(包含过渡色特征)对地图中的噪声进行分类后的结果。

3.7 验证与分析
在上节中,我们对合肥市交通地图的局部进行了处理,并且取得的较好道路网络识别结果。为了验证城市交通地图道路网络识别算法的有效性,下面将利用上述的道路识别与提取过程对整幅合肥市交通地图进行道路网络的识别和提取。图3.13 是待处理的合肥市交通地图,图3.14 是结合梯度算子和噪声特征的道路网络识别和提取的结果,图3.15 是基于噪声特征的道路网络识别和提取的结果。



从图3.14 和图3.15 可以看出,本文提出的道路网络识别和提取算法是非常有效的。但是也存在少量的道路存在过识别或者欠识别或者两者均有的缺点。道路欠识别是由粘连的文字或块状噪声导致的,而引起道路过识别的主要原因有三:
1. 区域中存在未消除的噪声,并且这些噪声像素的颜色和道路颜色相同;
2. 在规范化处理过程中,区域内可能新引入一些白色像素;
3. 道路之间的间距很小,并且噪声连接相邻近的道路。
道路欠识别通常导致断路现象,而道路过识别往往会引发两种后果:
1. 区域中出现孤立块;
2. 多识别了道路(误识别的道路),并且该道路的两端和其他道路相连。
对于断路的情况来说,在道路细化后,道路断点一般成对出现。如果两个断点间的距离小于事先设定的阈值,则可以把这两个断点连接起来。由于中国科学技术大学GPS 实验室的道路矢量化软件提供了断点连接的功能,因此对这里断路的情形不作处理。对于道路过识别引起的误识别道路,目前还没有充分的判断准则,不过道路过识别导致区域中的孤立块却很容易消除。本文采用模板匹配的方法来去除区域中的孤立块,具体处理过程如下:
1. 选取适当大小的奇数阶矩阵模板,并初始化模板:模板的中心点设置为黑色,而模板矩阵的第一行和的一列以及最后一行和最后一列中的所有点均置为白色2. 扫描整幅地图,对地图中每个和模板同样大小的块与模板比较,如果地图中的矩阵块和模板相匹配,则把矩阵块中所有黑色像素替代为白色像素。
本文选用了两个模板: 21´ 21的矩阵和11´11的矩阵。较大的模板用来去除较大的且离道路较远的区域孤立块,较小的模板主要用来消除离道路较近的区域孤立块。我们使用该方法对图3.14 进行了处理,其处理的效果参见图3.16。

3.8 道路识别与提取系统简介
3.8.1 系统开发信息
本论文综合运用了前面叙述的图像处理、图像识别等理论构建了彩色城市交通地图道路识别与提取系统RoadExtr。该系统采用Microsoft Visual C++作为开发工具,以Windows 2000作为开发平台。图3.17 是该系统的界面, 其中显示的地图是杭州市交通地图( 2018´ 2855´ 24 位的BMP 图像)。

3.8.2 系统界面
1、 标题栏
标题栏显示该软件系统的名称“RoadExtr— 彩色城市交通地图道路识别与提取系统【中国科学技术大学GPS 实验室】”。
2、 状态栏
状态栏显示的是:1)当前鼠标的位置;2)鼠标位置处像素颜色的R、G、B、Y 值,其中Y 是该像素的亮度,亮度的计算公式为:Y = (0.30R + 0.59G + 0.11B) 。
3、 菜单栏
1) 文件:该菜单负责位图文件的打开和保存,以及退出系统;
2) 测试:实现对道路上噪声分类和对区域中的噪声分类以及图像的二值化和反色处理;
3) 灰度形态学:实现对灰度图像或彩色图像(先转化成灰度图)进行各种形态学操作,包括:腐蚀,膨胀,闭合和梯度;
4) 规范化:实现地图图像的规范化处理;
5) 道路识别:实现城市交通地图道路网络的识别和提取,即一次性完成道路的提取工作,最终结果黑白二值图;
6) 原图像:显示原来的图像,即显示打开文件的备份;
7) 查看:实现显示和隐藏工具栏、状态栏;
8) 帮助:该软件系统的一些文本信息。
3.8.3 运行结果界面
图3.18 所示为系统的运行结果界面,以上面的杭州市的地图为例,该界面显示出对该地图提取道路的结果。



