1、目录CONTENTS栅格化矢量化0102栅格化01l将数据用矢量数字化的方法输入计算机或以矢量的方式存在计算机中。如:行政边界、交通干线、土地利用类型等l表现为点、线、多边形数据矢量栅格化1、栅格化l确定栅格矩阵(行列数/分辨率)l点的变换、线的变换以及多边形的变换(面的变换)1、栅格化l准备好矢量数据或矢量地图;l构架一个与地图等大小的格网,选取好适当的格网密度或分辨率,依据范围则可以算出格网的行列数。l根据地图上的点、线、多边形相对这个格网的配置及其属性来确定每一个项元的数值。1、栅格化l矢量数据转换成栅格数据后,图形的几何精度必然要降低,所以选择栅格尺寸的大小要尽量满足精度要求,使之不过
2、多地损失地理信息。l为了提高精度,栅格需要细化,但栅格细化,数据量将以平方指数递增,因此,精度和数据量是确定栅格大小的最重要的影响因素。l在转换之前需要确定栅格单元的大小,栅格单元的大小又称为栅格图像的分辨率,直接决定了栅格数据的精度 确定栅格矩阵1、栅格化 确定栅格矩阵YXOJIyx(0,0)XmaxYminXminYmaxI=(Ymax-Ymin)/dyJ=(Xmax-Xmin)/dxI,J为整数,尾数入上去为整数,尾数入上去dx=(Xmax-Xmin)/Jdy=(Ymax-Ymin)/I1、栅格化 点的栅格化maxmin1 INT/1 INT/ppIyydyJxxdx 点的变换十分简单,
3、只要这个点落在那个网格中,就是属于那个网格元素,根据该点状对象的特性赋予该像元属性值。1、栅格化 线的栅格化线是由多个直线段组成的,因此线的栅格化的核心就是直线段如何由矢量数据转换为栅格数据。YX(X1,Y1)(X2,Y2)假定一线段两端点之间经过若干个网格元素(至少一个),两端点坐标为(X1,Y1),(X2,Y2)1、栅格化 面的栅格化a、基于弧段数据的栅格化方法:1.按行或列做中心扫描线2.求交点栅格坐标的行列值3.判断交点左右多边形数值4.交点排序并逐段生成栅格数据特点:计算量较大,算法比较复杂。1、栅格化面的栅格化abcdef10p边界线的转化与线的栅格化方法相同,接下来就是属性的填充
4、p填充的方法很多,关键问题是正确判断哪些栅格单元位于多边形之内,哪些位于多边形之外。为此,多边形必须严格封闭,没有缝隙1、栅格化面的栅格化0001000100000010000000010000111011100010011011000111000000011101100001001110100011000011111111101、栅格化 面的栅格化b、多边形内部属性填充方法(基于多边形数据的栅格化方法):p内部点扩散法p射线算法p平行线扫描法与铅垂线跌落法p边界代数充填算法p边界点跟踪算法1、栅格化面的栅格化内部点扩散算法内部点扩散算法缺点缺点程序设计复杂,需要在栅格阵列中搜索,占用内存很大
5、,在内存程序设计复杂,需要在栅格阵列中搜索,占用内存很大,在内存受限时很难采用受限时很难采用在一定的栅格精度上,在一定的栅格精度上,如果复杂图形的同一多边形的两条边界落如果复杂图形的同一多边形的两条边界落在同一个或相邻的两个栅格内在同一个或相邻的两个栅格内,会造成多边形不连通,不能完成,会造成多边形不连通,不能完成多边形的填充多边形的填充1、栅格化面的栅格化射线法射线法概念:概念:射线算法,又称为射线算法,又称为检验交点数检验交点数,是,是逐点判别逐点判别数据栅格点数据栅格点在某多边形之外或在多边形内来决定是否记录该点在某多边形之外或在多边形内来决定是否记录该点基本原理:基本原理:具体实现是具
6、体实现是由待判点向图外某点引射线由待判点向图外某点引射线,判断该射,判断该射线与某多边形所有边界相交的总次数,判断的基本原理:线与某多边形所有边界相交的总次数,判断的基本原理:如相交如相交偶数偶数次,则待判点在该多边形的次,则待判点在该多边形的外部外部如相交如相交奇数奇数次,则待判点在该多边形的次,则待判点在该多边形的内部内部1、栅格化面的栅格化N=0N=2N=1N=3N=4射线法射线法基本原理基本原理1、栅格化面的栅格化射线法射线法特殊情况:奇异点特殊情况:奇异点1、栅格化面的栅格化平行线扫描法与铅垂线跌落法平行线扫描法与铅垂线跌落法基本原理基本原理射线算法的改进射线算法的改进,将射线改为沿
7、,将射线改为沿栅格阵列栅格阵列列方向或行方向扫描线列方向或行方向扫描线,判断与射线算法相似。省去了计判断与射线算法相似。省去了计算射线与多边形边界交点的大量算射线与多边形边界交点的大量运算,大大提高了效率运算,大大提高了效率。又称为。又称为扫描算法扫描算法XYRfebagdcMN1、栅格化面的栅格化边界代数填充算法边界代数填充算法基本思想:基本思想:基于积分思想基于积分思想的矢量格式向栅格格式转换算法,它适合于的矢量格式向栅格格式转换算法,它适合于记录记录拓扑关系拓扑关系的多边形矢量数据转换为栅格结构的多边形矢量数据转换为栅格结构实现过程实现过程:初始化的栅格阵列初始化的栅格阵列各栅格值为零各
8、栅格值为零以栅格行列为参考坐标轴,由多边形某点开始顺时针以栅格行列为参考坐标轴,由多边形某点开始顺时针搜索边界线搜索边界线边界边界上行上行时,边界左侧行坐标相同的栅格被时,边界左侧行坐标相同的栅格被减去减去a a,边界边界下行下行时,边界左侧行坐标相同的栅格被时,边界左侧行坐标相同的栅格被加上加上a a1、栅格化面的栅格化边界代数填充算法边界代数填充算法1、栅格化面的栅格化边界点跟踪算法边界点跟踪算法p以多边形为单位p按顺时针方向跟踪单元格:上行L;横向N;下行R(如果为岛屿,则相反)p逐行扫描,充填LR间的单元格N NLRN NLRLRLRLRN N N矢量化02矢量化定义与要求p定义及要求
9、:从栅格单元转换到几何图形的过程称为矢量化,矢量化过程要保证以下两点要求:p拓扑转换,即保持栅格表示出的连通性与邻接性p转换物体正确的外形矢量化一般转化步骤p边界提取p边缘锐化(遥感影像或分类栅格,面状地物)p线的细化(扫描矢量图,线状地物)p二值化p边界追踪p拓扑关系生成p线的简化及曲线矢量化一般转化步骤1 1、边界提取、边界提取边缘提取(数字图像处理)边缘提取(数字图像处理)Lenna的的Sobel边界边界 Lenna的的Prewitt边界边界原始图片原始图片矢量化一般转化步骤1 1、边界提取、边界提取线的细化线的细化将占有多个栅格宽的图形要素缩减为只有将占有多个栅格宽的图形要素缩减为只有
10、1 1个像素个像素剥皮法:剥皮法:每次剥掉等于一个栅格宽的一层,最后只留下彼此连通的由单个栅格组每次剥掉等于一个栅格宽的一层,最后只留下彼此连通的由单个栅格组成的图形成的图形剥皮法剥皮法保持图像的连接性不变保持图像的连接性不变和和关键部分关键部分矢量化一般转化步骤1 1、边界提取、边界提取线的细化线的细化剥皮法剥皮法算法原理算法原理剥皮法剥皮法过程过程矢量化一般转化步骤1 1、边界提取、边界提取线的细化线的细化骨架法骨架法:确定图形的骨架,而将非骨架上的多余栅格删除确定图形的骨架,而将非骨架上的多余栅格删除基本原理基本原理:扫描全图,凡是:扫描全图,凡是像元值为像元值为1 1的栅格都用的栅格都
11、用V V值取代值取代。V V值是该栅格与北、值是该栅格与北、东和北东三个相邻栅格像元值之和,即:东和北东三个相邻栅格像元值之和,即:保留最大保留最大V V值的栅格,删去其他栅格,但必须保证连通值的栅格,删去其他栅格,但必须保证连通。因最大因最大V V值的栅格只值的栅格只能分布在图形的中心线、骨架上能分布在图形的中心线、骨架上,因此选取最大值栅格的过程就是细化的过,因此选取最大值栅格的过程就是细化的过程程矢量化一般转化步骤1 1、边界提取、边界提取二值化二值化一般情况下,栅格数据是按一般情况下,栅格数据是按0 0255255的不同灰度值表达的的不同灰度值表达的为了简化追踪算法,为了简化追踪算法,
12、需把需把256256个灰阶压缩为个灰阶压缩为2 2个灰阶个灰阶,即,即0 0和和1 1两级。为此,两级。为此,假设任一格网的灰度值为假设任一格网的灰度值为G(i,j),G(i,j),阀值为阀值为T T,那么,根据下式就可以得到,那么,根据下式就可以得到二值图二值图G(i,j)=1 f(i,j)=T0 f(i,j)=T矢量化一般转化步骤2 2、边界追踪、边界追踪目的:目的:就是将细化处理后的栅格数据,整理为从结点出发的线段或闭就是将细化处理后的栅格数据,整理为从结点出发的线段或闭合的线条,并以矢量形式存储(坐标)合的线条,并以矢量形式存储(坐标)基本原理:基本原理:对每个边界弧段由一个结点向另一
13、个结点搜索,通常对每对每个边界弧段由一个结点向另一个结点搜索,通常对每个已知边界点需除了进入方向的其他个已知边界点需除了进入方向的其他7 7个方向搜索下一个边界点,直到个方向搜索下一个边界点,直到连成边界弧段连成边界弧段)2.()2.(maxminYiYYYXjXXX矢量化一般转化步骤p目的:由于搜索是逐个栅格进行的,所以弧段或多边形的数据列十分密集。为了减少存储量,在保证线段精度的情况下可以删除部分数据点p 曲线光滑:假象曲线为一组离散点,寻找形式较简单、性能良好的曲线解析式插值方式插值方式逼近方式逼近方式3 3、线的简化及曲线线的简化及曲线圆滑圆滑矢量化一般转化步骤4 4、拓扑关系生成拓扑关系生成目的:目的:判断弧段与多边形间的空间关系判断弧段与多边形间的空间关系,以形成完整的拓扑结构并建以形成完整的拓扑结构并建立与属性数据的关系立与属性数据的关系方法:方法:参阅上一讲参阅上一讲THANKS谢谢聆听