《矢量-栅格转换ppt课件.ppt》由会员分享,可在线阅读,更多相关《矢量-栅格转换ppt课件.ppt(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、空间数据结构转换空间数据结构转换一、由矢量向栅格数据格式转换重点:确定栅格单元的大小。重点:确定栅格单元的大小。 已知:已知: Xmax、Xmin和和Ymax、Ymin;I,J。 求:栅格单元的边长求:栅格单元的边长X和和Y。它们之间的关系为:它们之间的关系为:Y=Y=(Xmax-XminXmax-Xmin)/J/JX=X=(Ymax-YminYmax-Ymin)/I/I XY(0,0)JIxminxmaxyminymaxXYn 设矢量坐标点(设矢量坐标点(x,y)x,y),转换后的栅格单元行列值(,转换后的栅格单元行列值(I,J),I,J),则有:则有:I=1+INTI=1+INT(Ymax
2、-YYmax-Y)/Y/YJ=1+INTJ=1+INT(X-XminX-Xmin)/X/X 式中式中INTINT表示取整函数。栅格点的值用点的属性表示。表示取整函数。栅格点的值用点的属性表示。l点的栅格化点的栅格化n 线的栅格化可以分解成对组成折线的每个线段的栅格化。线的栅格化可以分解成对组成折线的每个线段的栅格化。n 设线段的两端点坐标分别为(设线段的两端点坐标分别为(x x1 1,y,y1 1)和()和(x x2 2,y,y2 2)。其中有)。其中有y y2 2yy1 1。 根据点栅格化方法,求得两端点的行列号为(根据点栅格化方法,求得两端点的行列号为(I I1 1,J,J1 1) )和(
3、和(I I2 2,J,J2 2)。)。I = I = | I| I2 2 - I- I1 1| | ,J= J= | J| J2 2 - J- J1 1| | ,分两种情况处理:,分两种情况处理:I I J J 和和 J J I I 。 当当I I J J ,平行于平行于x x轴的做每一行的中心扫描线,再求每一条扫轴的做每一行的中心扫描线,再求每一条扫描线与线段的交点,按点的栅格化方法将交点转化为栅格坐标。描线与线段的交点,按点的栅格化方法将交点转化为栅格坐标。 当当J J I I ,平行于平行于y y轴的做每一列的中心扫描线,再求每一条扫轴的做每一列的中心扫描线,再求每一条扫描线与线段的交点
4、,按点的栅格化犯法将交点转化为栅格坐标。描线与线段的交点,按点的栅格化犯法将交点转化为栅格坐标。 l线的栅格化(扫描线法)线的栅格化(扫描线法)n 如果如果I I J J ,扫描线与线段的交点的坐标为扫描线与线段的交点的坐标为 Y Yi i=Y=Ymaxmax-Y-Y(I-1/2)(I-1/2) X Xi i=(X=(X2 2-X-X1 1)/(Y)/(Y2 2-Y-Y1 1)(Y)(Yi i-Y-Y1 1)+X)+X1 1 如果如果J J I I,扫描线与线段的交点的坐标为扫描线与线段的交点的坐标为 X Xi i=X=Xmaxmax-X-X(J-1/2)(J-1/2) X Xi i=(Y=(
5、Y2 2-Y-Y1 1)/(X)/(X2 2-X-X1 1)(X)(Xi i-X-X1 1)+Y)+Y1 1 l线的栅格化线的栅格化n 例:设两个端点的行、列号已经求出,其行号例:设两个端点的行、列号已经求出,其行号为为3 3和和7 7,则中间网格的行号必为,则中间网格的行号必为4 4、5 5、6 6。n l线的栅格化线的栅格化l多边形(面域)栅格化多边形(面域)栅格化(1 1)射线算法)射线算法 由待判点向图外某点引射线,判断该射线与某多边形所有边界相交的总次数,如果相交偶数次,则待判点如果相交偶数次,则待判点在该多边形外部,如为奇数次,则待判点在该多边形内在该多边形外部,如为奇数次,则待判
6、点在该多边形内部部,如下图所示。 二值化二值化 将原来栅格单元的灰度值G(i,j)(256级)压缩为两个灰阶,即0和1两级。 方法: 定义阈值T, RminT=T then R=1; else R=0;二、由栅格向矢量数据格式转换细化细化 细化的目的是消除线划横断面栅格数的差异,使得每一条线只保留代表其轴线或周围轮廓线(对面状符号而言)位置的单个栅格的宽度单个栅格的宽度。细化细化 1)N(p)为为p的邻点的数值的和;的邻点的数值的和;2)图像像素联接数)图像像素联接数T(p),如果旋转着,如果旋转着看像素周围的点,看像素周围的点,T(p)就是就是p周围周围8个点个点从从0变成变成1的次数,它反
7、映了像素邻点的的次数,它反映了像素邻点的联接的块数。联接的块数。3)pW,pE,pS,pN分别指像素左侧、分别指像素左侧、右侧、下边、上边邻点的数值。右侧、下边、上边邻点的数值。p像素周围的像素周围的8个个直接相邻像素直接相邻像素 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 (a)T=0 (b)T=0 (c)T=1 (d)T=1 (e)T=2 (f)T=2 (g)T=2 (h)T=3 (i)T=4 像素连接数像素连接数细化细化算法步骤如下算法步骤如下Zhang-Suen,19
8、84: 1:对于栅格图像中的每个点:对于栅格图像中的每个点p,进行如下操作:如果,进行如下操作:如果2 N(p) 6并且并且T(p)=1并且并且pNpSpE=0并且并且pWpEpS=0,则标志,则标志p点;点;2:将所有被标志的栅格点赋值为:将所有被标志的栅格点赋值为0,如果没有被标志的点,则算,如果没有被标志的点,则算法结束;法结束;3:对于栅格图像中的每个点:对于栅格图像中的每个点p,进行如下操作:如果,进行如下操作:如果2 N(p) 6并并且且T(p)=1并且并且pNpSpW=0并且并且pWpEpN=0,则标志,则标志p点;点;4:将所有被标志的栅格点赋值为:将所有被标志的栅格点赋值为0,如果没有被标志的点,则算,如果没有被标志的点,则算法结束;法结束;5:转到第一步。:转到第一步。边界线跟踪边界线跟踪拓扑关系生成拓扑关系生成去除多余点及曲线圆滑去除多余点及曲线圆滑(a)(b)(c)(d)