资源描述:
第 2期 2 0 0 6年 6月 矿 山 测 量 MI NE S URVEYI NG NO. 2 J u n . 2 0 0 6 Ma p I n f o环 境 下 矢 量 图 形 坐 标 校 正 的 5 6 “ 探 讨 蔡颖 , 赵泉华, 石金峰 辽宁工程技术大学, 辽宁 阜新1 2 3 0 0 0 摘要 Ma p l n f o以矢量形 式管理空问数据 , 但其软件本 身并没有提供对矢量图形进行精确校 正的方 法, 所以对由于图形旋转 、 扭曲而产生的误差无法消除。文中介绍 了一种在 Ma p l n f o环境下以 Ma p - B a s i c为 工具对 矢量 图形进 行 坐标校 正 的 方法 。 关键 词 M a p l n f o ; 仿 射 变换 ;坐标 校 正 中图分类 号 P 2 0 8 文 献标 识码 B 文章 编 号 1 0 0 1 3 5 8 X 2 0 0 6 0 2 0 0 1 3 0 2 Ma p l n f o是一个简单易用 、 大众化 的 G I S桌面软 件 , 它具有对地理空间数据进行存贮 、 管理 、 显示 、 查 询 、 分析和制图等基本的 G I S功能 , 在 国内具有 比较 大的用户群。但是 , M a p l n f o软件 只提供了栅格 图像 的精确坐标配准 控制点个数 ≥3 , 即可以在图上选 取 3个 以上的控制点 已知其精确坐标 , 通过计算 对 整 幅 图 像 进 行 坐 标 配 准。而 对 于 矢 量 图 形 , M a p h t b只提供了 2个控制点的配准 , 这显然是不够 精确 的, 例如对于图形旋转 、 扭曲产生 的误差就无法 消除。本文提 出了一种对 M a p l n f o中矢量 图形坐标 进 行校 正 的方 法 。 1 坐标校正的常用方法 Ma p l n f o以实体 型数 据结构组织 图形数据 , 点 、 线、 多边形 、 区域等要素的空间位置和相互关系都是 通过坐标来定义。如折线是由一组有序坐标对来定 义; 多边 形是 由一组 首尾 相 同 的有 序坐 标对 来表 示⋯ , 因此校正过程实质上是寻求一种数学关系 或 函数关系 , 描述变换前 图形坐标 , Y 与变换后图 形坐标 , , , 之间的换算, 其数学关 系一般描述 为 , Y f , Y , 这个数学关系常表示为一次 、 二次或 更高次 二元多项式 ] 。其 中一次 多项式 变 换 , 即仿射变换 是最 常用 也是 比较 简单 易行 的变换 方法 , 其表达式为 f 血 - 。 , 血 1 ‘ 、 ▲ , 【 , b l b 2 yb 仿射变换的特点是 1 直线变换后仍为直线; 2 平行线变换后仍为平行线 , 并保持简单的长度 比; 3 不同方向上的长度 比发生变化 。本文采用的就是 仿射变换方法。 2 Ma p l n f o中进行坐标校正的算法设计 在 M a p l n f o中, 点、 线 、 多边形 、 区域等都作为地 图对象来处理 , 共 有 1 0种类 型。在进 行坐标 校正 时 , 先通过函数 O b j e c t l n f o 返 回当前对象 的类型 , 然后分别对其进行校正。进行坐标校正 的具体步骤 为 1 选取控制点。为 了求解 1 式 中 的 6个 未 知系数 a , a , a , , b . , b 和 b , , 我们 首先要在 图上 找 到至少 3个不 在同一直线上 的已知控制点 , 用其 图 上坐标和对应的实际坐标组成 6个方程求解 , 从 而 得到整幅图的仿射变换系数。在一幅图 中, 具体 经 纬网点的理论坐标可 以经计算或根据标准经纬网求 得 , 为此 , 经纬网点往往作为校正用 的控制点 。其他 如三角点 、 G P S控制点 、 公里网的交点等都可 以通过 坐标表查得或通过实际的数学公式计算而得其实际 坐标 , 因此这些点也可以作为控制点。另外 , 为 了使 校正后的图形各处校正效果都 比较好 , 选 取的控制 点必须比较均匀的分布在图形各处 , 特别是边界 、 四 角要有控制点 , 以避免图形校正不能满幅。 2 用选取 的控制点 的图上坐标和对应 的实际 坐标组成方程求解 , 从而得 到了整幅图的仿射变换 系数。为了提高精度 , 选取的控制点数应大于三个 , 这时可以用最/ b-乘法来解方程。 3 通过 函数 O b j e c t l n f o 返 回当前对 象的类 型 , 对于不同的对象类 型用 不同的 函数获得 当前对 象的定位点坐标序列 , 并将其代入方程 1 求算出纠 正后的精确坐标 , 最后用 A l t e r O b j e c t 语 句将该对象 修改到正确 位 置。下 面 以点 对象 O B JT Y P E P O I N T 为例介绍具体编程过程 。 一 对X, Y 坐标就表示一个点对象 , 所以可以 1 3 维普资讯 第 2期 矿 山 测 量 2 0 0 6年 6月 用 0 h j e c t G e o g r a p h y 函数获取点 对象的 X、 Y坐标 O B J --G E OP O I N T X、 O B J G E OP O I N T Y , 代入 仿射变换公式, 即可算 出纠正后 的精确 坐标 X1 、 Y 1 即 1 式 中的 x , Y , 最后用 A l t e r O b j e c t 语句将该 对象修改到正确位置。其部分程序为 S u b P o i n t C h a n g e B u fl Db j A s O b j e c t Di m X1, YI, X, Y As F l o a t X 0b i e t Ge 0 g r p h yBu f f o b j ,OB JGEO P O I N T X Y 0 h j e c t G e 0 g r a p h y B u f f o b j , 0 B J G E O P O I N F Y X1a l X bl Y e1 Yla 2 X b 2 Y c 2 A l t e r O b j e c t B u f f o b j Ge o g r a p h y OBJ _GEOPOI NTX, XI A I t e r O b j e c t B u f f o b j G e o g r a p h y OB J GEO .POI NTY, Y 1 En d S u b 其他对象也用相似 的 疗法 , 首 先获取对象 的定 位点坐标 , 然后对每个点进行纠正 , 最后实现整幅图 的坐标的纠正 。程序流程如图 1所示。 1 4 图 1 程序 流程图 3 方 法的 改进 和探 讨 一 幅地 图上 , 每处的变形不 一定是完全一样 的, 误差也就有所不 同, 在这种情况下整幅地 图都采用 同一组变换 系数就不太合适 了。因此 , 可以使用分 块校正的方法进行改进。在一幅图上我们可以选取 足够多的已知控 制点 , 并使其尽可能均匀分布在整 幅图上 。然后 , 将每组相邻的 3个控制点连 线, 构筑 成一个三角 网, 这样每一个三角形就可以建立一个 仿射变换 , 计算出 自己的变换系数。当进行 纠正时 , 先要判断该对象是在 哪个 三角形内部, 然后就用该 组变换系数进行变换 0 。这个过程中应注意两个问 题 1 构筑三角网时可以采用 d e l a u n a y 三角网生成 算法 , 这种算法构筑的三角形更接近于正三 角形 , 从 而达到 i角 网的优化。 2 计算 出每组变换 系数后 应进行检查 , 如果 个别三角形求解得出的变换系数 与相邻三角形 的变换 系数相差较 大, 需 分析具体原 因后进行个别处 理。采用这种方法进行 纠正 , 就可 以将纠正的范 围缩小在每一 个三角形 内, 从 而可 以 得到更精确的纠正效果。 参考文献 [ 1 ] 张超 ,地理信 息 系统 实习教程 [ M] .北京 高等教育 出 版 社 . 2 0 0 0 . [ 2 ] 郭杰华 , 姚振 旺, 鲍 远律 , 张 旺生 .矢量地 图 的一种 自 动校正算法[ J ] .中图像图形学报 . 1 9 9 9 5 . [ 3 ] 徐庆荣 , 杜 遭生 , 黄伟 等 .计 算机地 图制 图原 理f M】 . 武汉 武汉测绘科技 大学出版社 。 1 9 9 7 . [ 4 ] 彭晓艳 .龙毅 , 毋河海 .基 于仿射 变换 的 Ma p l n f o矢量 图形坐标纠正 的方法探讨 [ J ] .测绘信息与 工程. 2 0 0 2, 2 7 5 . 作者简介 蔡颖 1 9 8 0一 , 辽亍工程技术大学在读研究生, 研 究方向地理信息系统与地图制图。 收稿 日期 2 0 0 51 2 0 1 维普资讯
展开阅读全文