




已阅读5页,还剩64页未读, 继续免费阅读
(机械设计及理论专业论文)工程绘图中扫描图纸图像处理及识别方法的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
人造理【人学硕十学位论文 摘要 工程图纸矢量化是将纸质工程图纸扫描输入计算机后,对所得的扫描图像经过处理 和识别,最终重建其中的图形对象的过程,它是图纸复用、自动理解等应用的基础,技 术上涉及图形图像处理、人工智能和模式识别等多个领域,具有很高的学术价值和应用 价值。本文对工程绘图中扫描图纸的图像处理和识别方法进行了深入的研究。 从位图的基本构成的角度,本文运用最基本的方法,提取图像底层信息,实现对位 图的读取以及平移、缩放和旋转等基本操作。仔细分析了o p e n g l 环境下图像显示的特 点,解决了图像显示中左边或下边不能超出视区的问题,实现了对图像的局部观察。 图像处理方面,针对工程图纸图像中出现的噪声类型,本文采用均值滤波和中值滤 波等方法消除噪声,提高了图像的清晰度。然后,采用类间方差判断分析法选择最佳阀 值,并以此作为图像二值化的阀值,对灰度图像进行图像分割,将图像所包含的有用信 息提取出来,为进一步的识别作准备。 本文采用光栅矢量混合编辑技术,通过人机交互的方式,直接在光栅图像上对点 阵形式的几何图元进行交互拾取,实现对工程图像中直线、圆和圆弧等基本图元的识 别。提出了图元的一种拾取算法:首先对图元进行稀疏跟踪,通过图元径向方向上长度 的变化获取交点位箭,然后将已拾取的光栅图元删除,再根据交点位置填充其它图元的 删除缺口。 分析实验结果可知,本文的方法对光栅图像有很好的处理效果和较高的识别率,能 有效的抵制了噪声的干扰,特别对图元存在多条复杂交线的情形也取得了良好的效果。 关键词:矢量化;扫描图像:二值化;交互拾取;混合编辑 程绘幽中十j 描【型纸图像处理及识别方法的研究 t h er e s e a r c ho f p r o c e s s i n g a n d r e c o g i n z i n g a b o u tt h es c a n n e d e n g i n e e r i n gd r a w i n g a b s t r a c t e n g i n e e r i n gd r a w i n gv e c t o r i z a t i o ni s t h ep r o c e s so f p r o c e s s i n gt h es c a n n e di m a g ea n d r e c o g n i z i n g t h eg r a p h i co b j e c t sa n df i n a l l y ,g e n e r a t i n gt h ev e c t o rf o r m a tc a df i l e ,v e c t o r i z a t i o n i st h ef o u n d a t i o no ft h ea c t i v i t i e so fm u s i n go l d & a w i n ga n dt h ea u t o m a t i ci n t e r p r e t a t i o no f e n g i n e e r i n gd r a w i n g t h e r e f o r e ,v e c t o r i z a t i o nh a sh i g hs y s t e m a f i cl e a r n i n g a n da p p l i c a t i o n v a l u e t h i sp a p e rh a sc a r d e do nt h em s e 鲫c hc o n c e n t r a t e do ns c a n n e di m a g ep r o c e s s i n ga n d r e c o g n i t i o n m e t h o di ne n g i n e e r i n g d r a w i n g s t h i sp a p e rs t a n d so nc o n s t i t u t ee s s e n t i a l l yo ff i l e sa n ds u c c e e di nr e a d i n ga n db a s i c o p e r a t i o n su s i n g b a s i cm e t h o d ss u c ha sm o v i n g ,s c a l i n g ,r o t a t ee t c ,a l t e rc a r e f u l l ya n a l y z i n gt h e c h a r a c t e r i s t i c so f d i s p l a y i n gi m a g ei nt h eo p e n g l se n t i r o n m e n t ,t h i sp a p e rr e s o l v e st h a tl e f to r b o t i o mb o u n d a r yo f d i s p l a y i n gi m a g ec a n to v e r s t e pt h ev i e ww i n d o w , a n da c h i e v e si m a g ep a r t o b s e r v a t i o n h lt h er e s e a r c ho f i m a g ep r o c e s s i n g ,t h i sp a p e r c l e a r sa w a yn o i s e st ol i t tt h ei m a g ec l a r i t y a i m e da tt h en o i s ea r i s e ni ne n g h a e e f i n gd r a w i n gb ym e a n so fm e a nf i l t e r i n ga n dm e d i u m f i l t e r i n ge t c t h e n ,s e g m e n t si m a g e w i t ht h eb e s tb i n a r i z a t i o nt h r e s h o l df o u n d b yc a l c u l a t i n gt h e b e t w e e n c l a s sv a r i a n c et og e tu s e f u li n f o r m a t i o na n dp r e p a r ef o ri m a g er e c o g n i t i o n t h er a s t e r v e c t o rm i x e d e d i t i n g i si n t r o d u c e di nt h i sp a p e r b a s e do nt h i st e c h n o l o g y , t h e r a s t e r - f o r m e d g e o m e t r i c e n t i t i e sc a nb ev e c t o r i z e dd i r e c t l yf r o mr a s t e ri m a g eb ys i m p l e i n t e r a c t i v ep i c k s i nt h i sp a p e r , w es t u d yan e wa p p m a c ht op i c kr a s t e r - f o r m e dg e o m e t r i c e n t i t i e s :f i r s t l y , t h ep r o p o s e da l g o r i t h ms p a r s et r a c e sg e o m e t r i ce n t i t i e sa n dg e t sp o s i t i o n so f i n t e r s e c t i n gp o i n t sb ya n a l y z i n gv a r i e t i e so f t h ee n t i t y sl e n g t hi nr a d i a ld i r e c t i o n t h e nt h e p i c k e d r a s t e r - f o r m e dg e o m e t r i ci se r a s e d a tl a s t ,f i l l st h eq u a d r a n g l ed e c i d e db y t h ei n t e r s e c t i n g p o i n t s a f t e ra n a l y z i n ge x p e r i m e n t a lr e s u l t s ,w ec a l ls e et h ep r o p o s e da p p r o a c h e si nt h i sp a p e r h a v eag o o dp r o c e s s i n ge f f e c ta n dh i g h e rc o r r e c tp i c k i n gr a t e f o rr a s t e r - f o r m e dg e o m e t r i c e n t i t i e s a l s ot h e yh a v eg o o da n t i n o i s ea b i l i t y , e s p e c i a l l yf o rt h ec a s e w h e r et h ep i c k e de n t i t yi s i n t e r s e c t e dw i t hm a n y o t h e re n t i t i e s k e yw o r d s :v e c t o r i z a t i o n ;s c a n n e di m a g e ;b i n a r i z a t i o n ;i n t e r a c t i v ep i c k ;m i x e d e d i t i n g 一 人连理r 人学硕士学位论文 l 绪论 1 1 工程图纸矢量化产生的背景和意义 在长期的设计和生产过程中,人们积累了大量的纸质工程图纸。这些图纸是人们经 验和智慧的结晶,是进行新产品设计与开发的重要依据和基础。然而由于图纸量大,给 图纸的保存、管理和使用带来了不便。随着信息技术的发展,计算机辅助设计( c a d ) 技 术日益广泛的应用到了工程设计的各个领域,c a d 的准确性、智能性和易编辑性显著 的提高了制图效率,得到了人们的广泛认可并逐渐成为主流的设计方式。但是,现在的 大多数c a d 软件只能在c a d 图形数据文件格式下进行绘制和编辑,对于图像文件则 不能识别其内容。由于纸质工程图纸经扫描设备输入计算机时都采用图像文件存储,这 就造成现行的c a d 系统对原有的纸质工程图纸无法利用。于是,人们面临着这样一个 难题,即如何将原有的纸质工程图纸转换成c a d 图形数据文件。这一难题一旦解决, 不仅将使得保存在纸质图纸上的旧设计可以迅速方便地为今天所利用,也会促使人们彻 底抛弃纸质图纸而转向c a d 设计方式。 现行的c a d 系统主要采用人机交互的方式输入工程图纸( 即由人读图,逐个图素 的输入图形) ,这种图形输入方式相当于对原图进行了重新绘制,存在着繁琐、低效的 弊端,严重影响了生产效率【l 】。于是,人们希望开发出一种高度自动化和智能化的系统 来解决这一难题,这种系统被称为工程图纸处理及识别系统或工程图纸自动化处理系 统。工程图纸矢量化是将纸质工程图扫描输入计算机后,对所得的扫描图像经过处理、 分析和识别,最终重建其中的图形对象的过程,它是图纸复用、自动理解等应用的基 础,技术上涉及计算机图形学、图像处理、人工智能和模式识别等多个领域 2 1 ,处理过 程也包含多个方面和多个层次,有很多问题值得深入研究,具有很高的学术价值和应用 价值。 1 2 工程图纸矢量化系统的结构和功能 1 2 1 工程图纸矢量化技术 工程图纸矢量化系统利用扫描仪将工程图纸信息自动输入到计算机中,形成点阵图 像,经过图像预处理、图形矢量化等步骤,将光栅文件最终转换为c a d 图形数据文 件。工程图纸矢量化技术是整个工程图纸矢量化系统中的核心部分,只有很好地解决了 这个技术问题,原有的纸质图纸才能快速准确的转化成c a d 系统所能使用的矢量格 式,才能被充分的利用。 群绘蚓中扫描幽纸l 刘像处理及识别方法的研究 在工程图纸矢量化系统中,输入的是图纸文件的扫描图像即光栅( r a s t e r ) 格式, 输出的是图纸文件的矢量( v e c t o r ) 格式 3 。对于光栅文件来讲,它以一个一个点的方 式柬描述一幅图纸,每个点称为一个像素( p i x e l ) ,在计算机中用若干位来表示( 如1 位图,可表示黑白;8 位图,可表示2 5 6 种颜色或灰度;2 4 位图,可表示1 6 7 百万种 颜色) 。点与点之间至多是位置上的相邻关系,而无任何逻辑上的联系。对于这种形式 的图纸,如不是将所有像素形成原图像,人们无法知道它表示的是什么。光栅存储格式 有若干种,典型有b m p 、j p g 、g i f 等格式。对于矢量格式来讲,它是以一个一个的图 形单元的方式来描述一幅图纸的。一个图形单元可能是一条线、一个圆、一个多边形 等。要表示个图形单元,只需用若干个字节来描述其相关的属性。例如要描述一条直 线,可以用其两个端点的坐标,线的宽度,线的颜色等来描述。矢量格式也有许多种, 比较典型的有d w g 、d x f 、d r w 等格式。 光栅文件特点如下: f n 描述的是像素( 图中的每一个点) ,不失真,忠实于原图; ( 2 ) 文件尺寸与分辨率有相当大的关系( 用d p i 来衡量,d p i :d o tp e ri n c h ,每英 寸像素点数,li n c h 2 5 c m ) ; f 3 ) 相同幅面的图纸形成为光栅文件尺寸相等( 压缩后有变化) 。 矢量文件的特点如下: f n 描述的是图形单元。 f 2 ) 文件尺寸只与图形单元的多少和复杂程度有关,而与图纸的幅面无直接关系。 f 3 ) 易于处理( 如旋转、缩放等) ,可直接用现有的c a d 软件进行设计。 目前的图纸矢量化系统可分为如下三个层次【4 】。 ( 1 ) 光栅图像预处理; f 2 ) 光栅矢量混合编辑: f 3 ) 工程图纸智能识别。 光栅图像预处理主要工作是:将图纸通过工程扫描仪以光栅格式输入计算机,只在 光栅图像基础上进行图像处理,包括图纸的消蓝、图像轮廓的锐化、去噪声、去污等, 主要目的提高图纸的清晰度,此外还可进行点阵形式的编辑、图纸拼接,然后压缩存入 数据库,在输出时仍以点阵形式输出。 近年来,人们在图像处理的基础上发展了一种新的矢量化技术一光栅矢量混合编 辑 i l l s 。所谓光栅矢量混合编辑是指利用人的先验知识( 人为的指定图像中图元的几何 类型,如直线、圆等) ,通过人机交互的方式,直接在光栅图上对点阵形式的图元进行 2 人连理i ? 人学硕十学位论文 矢量化,它利用光栅图的高精度和矢量图的精确定位,使光栅元素和矢量图形同时存在 于一张设计图纸中。它的技术优势在于同时利用了目前高精度光栅输入的实现和成熟的 矢量图形技术,将二者结合起来,是一种高效快速、高精度的适用于工程应用的图形图 像技术。设计人员在光栅图的基础上编辑,凡是新添加的元素,在软件内部以矢量形式 描述,所以在同一图纸中光栅形式数据与矢量数据可能同时存在。最后,矢量数据可转 化为光栅格式。光栅矢量混合编辑方法放弃了将矢量化的文件作为唯一的图纸存储和 处理形式的想法,它并不一定要求扫描的图纸完全转换成矢量图,而是以光栅的格式存 放并直接进行修改和编辑。这种方式的一个好处在于它没有什么失真,在某些情况下图 纸档案是不允许有失真的,必须原样保存。其第二个好处是处理速度很快,它省却了进 行整图矢量化的时间( 有的矢量化过程霰要几十分钟) 。 光棍9 矢量混合编辑技术实现了对图纸局部矢量化及交互矢量化的功能,满足了图 纸管理部门对图纸的局部修改、更新、矫形、输出等应用。作为一个实用化的辅助工 具,它同时也是对工程图纸识别系统的一个必要的补充,提高了工程图纸识别系统的精 度和实用性。目前图纸矢量化系统比如德国的v p 、挪威的r x 、国内的t h - d a i m s 等,都采用了光栅矢量混合编辑的手段,这己是一种国际趋势了。事实证明,其结果 是可以令人满意的。 工程图纸识别的功能是:将光栅图像文件经智能化识别后转化为矢量图形文件,也 称工程图纸识别软件。矢量化的优劣直接影响到这些数字图纸能否真正用于c a d 技术 中,矢量化技术是工程图纸处理集成系统中的关键技术,是近年来固际上c a d 技术研 究的热点之- - 6 1 。目前国内外这类软件已有很多,但是纵观这些软件识别后的矢量结 果,普遍存在着畸变、孤立短线,以及理解深度不够等情况,用户仍需花大量时间编辑 才能使用,还需要进一步的研究和发展才能更好的用于工程生产的实际情况。 1 2 2 工程图纸矢量化系统的结构和功能 n - t c a d 是由大连理工大学机械学院自主版权开发的通用机械设计工程绘图系统, 现在在原有基础上增加了工程图纸矢量化部分,以实现对原有纸质工程图纸的修改和复 用。下面结合m c a d 简要介绍工程图纸矢量化系统的结构和功能f 7 - l 。 j ! h c a d 系统通过扫描仪获得图纸的光栅图像。在系统内部,图像和其它矢量图元 ( 比如直线,圆等) 共存于一个图纸文件中,地位完全相同。对矢量图元的各种操作 ( 比如平移、旋转、拷贝等) 对图像同样有效。系统采用光栅矢量混合编辑技术逐个 对图纸所包含的图元进行说别,最后完成整个图纸的矢量化。系统即可以输出光栅格式 群绘剀中扫描幽纸剀像处理及识别方法的研究 的文件,以便于用户保存、传输和管理,同时也可以输出矢量格式的文件,以实现与其 它c a d 系统的兼容。 j h c a d 系统各模块功能如下( 如图1 1 ,其中灰色部分是本文的研究内容) : 图1 1t 程图纸矢量化系统工作流程图 f i g 1 1f l o wc h a r to f e n g i n e e r i n gd r a w i n g sv e c t o r i z a t i o ns y s t e m 扫描图纸输入和预处理:把保存在计算机中的光栅图像。比如b m p 、j p g 或g 口 等输入矢量化系统并完成图像的前期处理。由于图纸的不洁、折皱、用笔的流水不均, 以及扫描仪的噪音等因素,描入后的图像中可能会出现一些孤立点、孔穴以及毛刺等噪 音,为了提高识别精度,必须将这些噪音去掉。根据工程图纸图像的特点,系统采用中 值滤波的方法可以填补图像上的凹陷或删除孤立点,对图像上的椒赫噪声和毛刺起到了 较好的抑制作用。该模块的功能主要还包括图纸的消蓝、狄度图的二值化、去噪声、去 污等,提高图纸的清晰度,以便于下一步的识别。 光栅矢量混合编辑:该模块通过指定图像中图元的几何类型,如直线、圆、圆 弧,通过人机交互的方式,直接在光栅图上对点阵形式的图元进行矢量化。也可对局部 图像进行修改、编辑或者添加某些图元或者重新构造某一图形。 矢量编辑:经过矢量化处理后的工程图纸由于各种原因存在着各静类型的误识别, 矢量参数也可能存在着偏差,离实用化有一定距离。矢量编辑模块为舭识别的实用化 提供了有利的支持,它对处理过程中所得到的矢量图元进行分析处理,找出各图元间的 形状和位置关系,纠正错误的图元并将强元附上一定的信息,使之更加能表现出原图纸 的含义】。比如:对手工图纸扫描后获得的图像中的线条和用光栅图形学产生的直线相 比,不是很直,在条手工直线上,可能识别出好几条直线来,这些直线位置紧凑,人 工观测不出来,需要加以校正。此外,机械图中有许多虚线,出于手工虚线中短线问的 距离太大,系统可能把每条短线都看作一一条独立的直线,虽然直接将它们打印输出并不 d 人连理:i 大学硕十学何论文 影响图的含义,但这势必要增加结果文件中线条的数量,不利于以后作进一步的处理, 所以需要将这些短线也找出来,合并为一条直线,并把它们的线型定义为虚线型。 图纸管理模块:该模块的目的在于能方便用户管理自己的图库。主要功能包括:图 纸查询、统计、权限管理、版本管理、压缩保存等 1 ”。 1 3 国内外图纸矢量化系统的研究现状及发展趋势 工程图纸矢量化的提出可以追溯到7 0 年代末、8 0 年代初,当时c a d 技术在国外 己开始普及,人们认识到传统的手工绘制图纸不能适应时代的要求,c a d 图纸将成为 未来工程设计领域的主角,另外计算机及其外部设备的发展在硬件设备上为系统的研究 提供了可能性,这一阶段主要是进行一般性研究和实验性研究,但是处理的基本过程和 基本思想己经形成。到了8 0 年代末、9 0 年代初,关于工程图纸自动化处理系统的研究 进入了一个新的阶段,研究更加广泛深入。人们对系统的认识也扩展到工程图纸的各个 部分,图形识别和文字符号识别等工作成为新的研究重点l i 。 近几年来,人们对矢量化技术的研究出现了很多成果,也开发了一些系统。国内出 现的一些图纸处理和识别系统主要有:清华大学的“清华图纸自动输入及管理系统” ( t h - d a i m s ) 、东北大学的“工程图纸处理系统”o e d d a u t o c a d ) 、东大阿尔派的 s e a s i x 系统和华中科技大学的“图形扫描输入与识别系统”( g 峪) 。 清华图纸自动输入及管理系统( t h - d a i m s ) ,是一个面向图纸复用和图纸档案 管理的软件产品,通过工程扫描仪和矢量化软件可以快速地将备类图纸输入并储存到计 算机中,对它们进行电子存档和c a d 中再利用。1 9 9 3 年9 月t h d a i m s 通过国家级 鉴定,同年1 1 月荣获第五届中国新技术新产品博览会金奖。t h - d a i m s 功能丰富、运 行可靠、使用方便、便于移植,作为一个微机环境下运行的图纸输入及管理系统,技术 上处于国内领先地位,与国外9 0 年代初期同类系统的功能相当,从使用功能来看,和 国外的矢量化软件相比并不逊色。该系统可以直接在光栅图像上拾取图元,这样不仅实 现了旧图的翻新,而且还可以在原图上进行二次设计,从而避免了重复描图,极大的提 高了设计人员的工作效率。 但是,t h - d a i m s 未能实现完全自动矢量化,而是在图纸的数字图像信息上直接进 行修改和设计工作。在这种纯图像处理方法中,不仅图纸是数字图像信息,就连新画上 去的线条、新写上去的文字也是数字图像信息,因此修改是一个难题。修改工作实际分 成两步完成:第一步删除要改动的线条,第二步画上新线条。在图像上删除线条有一定 的困难,也很费事。在用数字图像表示的图纸七,由于扫描仪的精度的限制,或者图纸 5 一 群绘蚓中= | | = | 描隆i 纸幽像处理及识别方法的研究 本身的质量不好,线条的边缘很不光滑,常常带有很多的毛刺,这样的图纸很难通过质 量检验,而要使线条光滑处理起来也不容易。 e d d a u t o c a d 采用了光栅,矢量混合编辑方法1 3 1 口】,把a u t o c a d 作为矢量编辑工 具,提供了方便灵活的图形处理手段,但处理过程中需要太多的人工参与,而且系统必 须在a u t o c a d 环境下使用,不能独立的完成矢量化工作。 另外东大阿尔派的s e a s i x 系统和华中理工大学c a d 中心研制的工程图纸信息系 统e d i s 也成功的利用光栅,矢量混合编辑技术,基本实现了对工程图图档管理的功能。 在国外,开始图纸矢量化的研究比较早,技术比较成熟,但是还没达到实用化的水 平。美国的c a d 专业杂志( ( c a d a l y s t ) ) 对全球光栅矢量化软件的评测中,德国的 v p s t u d i o 与挪威的r x a u t o l m a g e 同被评为五星级,是值得极度推荐的两个图纸矢量化 系统。c a d a l y s t 对它的设计评语为:它是现在能找到的近乎完美的光栅编辑和 矢量化软件,它几乎包含您所期望的一切光栅编辑和矢量化工具。 但是这一领域的专家k a r lt o m b r e 在评价当今矢量化研究的程度时却认为现有方法 尚未成熟:”n o n eo f t h e s em e t h o d sw o r k s ”。他进一步解释这个结论的含义:”a c t u a l l y ,t h e m e t h o d sd 0w o r k ,b u tn o n eo f t l l e mi sp e r f e c t ” 1 6 】。 现有方法的普遍缺点是精度和速度不高,对噪音、缺损敏感等,尚不能实现图纸矢 量完全自动化。由于在制图、保管、计算机输入等各个环节中,存在着人为造成的图线 质量的不确定性,加上工程图样又具有多样性和复杂性,因此,迄今为止,还没有一套 全自动的工程图样的光栅到矢量的转换软件,工程图矢量化研究仍然是数字图像处理和 模式识别领域中的一个热点。 1 4 工程图纸基本图元识别方法的研究 基本图元( 直线、圆和圆弧等) 的识别是工程图纸矢量化系统的技术基础,一直是 人们的研究重点。在长期的研究和实践过程中,在人们提出了许多图元识别算法,这些 算法在实际应用中能够实现对基本图元的识别,但还不够成熟完善。 文献f 1 7 1 9 1 介绍了基于细化的方法,这种方法反复用一组模板匹配图像中的各个象 素,“剥掉”轮廓象素,直到只剩下中一心骨架象素为止,将中,心骨架象素拟合成短折 线。这是一种比较经典、并被广泛采用的方法,它广泛应用于9 0 年代中期以前的矢量 化处理系统中,但存在明显的问题:首先,二值化图像细化以前,必须先进行平滑处 理,以消除位于象素层次的细小缺陷,耗费了大量的时间。其次,在细化过程中,为求 得图像的“骨架”而丢失了一些重要信息,使图形失真。例如,结点附近产生畸变,线 宽信息丢失,边界上的微小变化不仅引起一个分支的变化,而且还会产生新的分支。最 一6 人连理一人学硕士学位论文 后,在本质上,细化方法是一种“象素操作法”,即以象素为基本单位来考虑问题,它 突出了图像的局部性质,无法抵制噪声的干扰,难以正确地提取图元之间的拓扑关系。 而且图形输入以后,后续处理困难,修改不便,无法与高层次c a d 系统相连。 文献 2 0 2 3 提出了基于图段的整体识别算法,浚算法不必经过细化,而是从整体上 把握图纸中各类图线之间的相互关系,直接从图像中提取出各类图元,所以它不关注图 线中是否存在毛刺、噪音等缺陷。这种方法提出整体识别的思想,克服了传统细化算法 对噪声的敏感,提高了识别的效率。但在识别过程中,该方法需要提取图像中由图段表 示的几何信息,然后由分类后的图段生成若干链表,最后再按类识别,对于线条较稠 密、交点较多的图纸,因图段的边界判断不准确,图段的归类比较困难且计算量很大, 识别结果不够准确,所以其应用面不广。 文献 2 4 2 5 1 分别提出一种基于扫描线和基于行程段的线条整体识别算法。这种方 法虽然可以较准确的识别直线,但在扩展到圆弧时存在着明显的不足之处,因为该算法 利用扫描线的长度变化判断交点的位簧,由于圆弧本身扫描线的长度是不断变化的,比 如从0 度方向到4 5 度方向,扫描线的长度变化约为1 , 4 1 4 倍,所以它获得的交点位置 存在偏差,在处理交点区域时,不能准确填补其它图元的交点缺口,破坏了图纸整体的 矢量信息。本文通过研究直线、圆和圆弧的几何特征,对这一算法加以改进:由于光栅 图像中直线、圆和圆弧的线宽都不发生变化,即它们沿径向方向( 直线斜率的正交方 向,圆弧的半径方向) ,长度不变,因此利用这一特征,用图元径向而不是扫描线的长 度变化来确定交点的位置,这就避免了上述算法的不足之处,即可以准确的获得交点的 位置,又有效保护了其它图元的矢量信息。 1 5 本课题的研究内容 本课题以j h c a d 为依托,在w i n d o w s 平台上以v i s u a lc + + 为开发工具,主要完成 了扫描图像的预处理和光栅矢量混合编辑两大模块。 图像预处理主要完成扫描图像的前期处理,为后续的识别阶段作准备。具体的研究 内容包括:图像文件的读取、图像的均值滤波、中值滤波以及灰度图的二值化等。本文 在大量实验各种二值化方法的基础上,采用类间方差判断分析法,对图像二值化分割, 将图像中的有效信息从背景中分离出来。 光栅矢量混合编辑模块是图纸矢量化的核心部分,主要实现图纸的双向混合设计。 具体实现的功能如下: f 1 ) 光栅矢量分层显示,光栅层和矢量层可分层显示。 f 2 1 双向混合设计。光栅图上的直线、圆、圆弧等图元交互拾取到矢量层;矢量层 7 群绘图中扫描幽纸图像处理及识别方法的研究 上的各种图元可快速的点阵化为光栅图。 交互拾取过程:首先通过菜单项选择一种图元的几何类型( 直线、圆或圆弧) :j 瞎 鼠标移到欲拾取的图元上或图元附近,点击左键,此时系统将对该图元进行自动跟踪, 跟踪结束后提取该图元的矢量信息并把拾取结果按矢量的形式保存到矢量层。对直线而 言,就是要求得到点阵直线的轮廓信息、中心线、斜率、中心线的两个端点坐标以及线 宽;圆要求得到点阵圆的轮廓信息、中心线、圆心坐标和半径、线宽;圆弧除了得到圆 心坐标、半径和线宽外,还要有起始角与终止角。 光栅层编辑:对已拾取的光栅层上的图元可进行删除操作 矢量层编辑:将拾取结果( 矢量图形) 光栅化 在混合编辑系统中,可以用系统提供的矢量编辑工具在矢量层对图纸进行编辑、修 改、删除和添加等设计工作,输出时图纸以矢量格式保存。也可以将矢量图元光栅化, 输出时图纸以图像文件格式保存。此外,光栅图像和矢量图形也可以共存于一个图纸文 件中,可以保存下来以方便用户进一步的设计,也可以将文件直接送往打印机,输出纸 质工程图纸。 8 一 生堑型i ! 查! 兰堡:! :! ! ! 笪鲨壅 2 系统的面向对象分析及总体设计 2 1 面向对象技术 面向对象技术是目前流行的系统设计开发技术,它主要包括面向对象分析( o b j e c t o r i e n t e da n a l y s i s ,o o a ) 和面向对象程序设计( o b j e c to r i e n t e dp r o g r a m m i n g , o o p ) 1 2 6 - 2 8 。面向 对象程序设计技术解决了传统程序设计方法一结构化程序设计所不能解决的代码重用问 题。 结构化程序设计从系统的功能入手,按照工程的标准和严格的规范将系统分解为若 干功能模块,系统是实现模块功能的函数和过程的集合。由于用户的需求和软、硬件技 术的不断发展变化,按照功能划分设计的系统模块必然是易变的和不稳定的。这样开发 出来的模块可重用性不高。 面向对象程序设计从所处理的数据入手,以数据为中心而不是以服务( 功能) 为中 心来描述系统。它把编程问题视为一个数据集合,数据相对于功能而言,具有更强的稳 定性。 面向对象程序设计同结构化程序设计相比最大的区别就在于:前者首先关心的是所 要处理的数据,而后者首先关心的是功能。 面向对象程序设计是一种围绕真实世界的概念来组织模型的程序设计方法,它采用 对象( o b j e c t ) 来描述问题空间的实体。一般的认为,对象是包含现实世界物体特征的抽象 实体,它反映了系统为之保存信息和与它交互的能力。它是一些属性及服务的一个封装 体,在程序设计领域,可以用“对象= 数据+ 作用于这些数据上的操作”这一公式来表 达。 类( c l a s s ) 是具有相同操作功能和相同的数据格式( 属性) 的对象的集合。类可以看 作抽象数据类型的具体实现。抽象数据类型是数据类型抽象的表示形式。数据类型是指 数据的集合和作用于其上的操作的集合,而抽象数据类型不关心操作实现的细节。从外 部看,类型的行为可以用新定义的操作加以规定。类为对象集合的抽象,它规定了这些 对象的公共属性和方法:对象为类的一个实例。对象和类的关系相当于一般的程序设计 语言中变量和变量类型的关系。 消息是向某对象请求服务的种表达方式。对象内有方法和数据,外部的用户或对 象对该对象提出的服务请求,可以称为向该对象发送消息。合作是指两个对象之间共同 承担责任和分工。 面向对象的编程方法具有四个基本特征: 一9 群绘幽中扫描幽纸l 到像处理及以别方法的研究 ( 1 ) 抽象: 抽象( a b s t r a c t ) 就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意 与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的部分,暂时 不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。过程抽象是指任何 一个明确定义功能的操作都可被使用者看作单个的实体看待,尽管这个操作实际上可能 由一系列更低级的操作来完成。数据抽象定义了数据类型和旖加于该类型对象上的操 作,并限定了对象的值只能通过使用这些操作修改和观察。 ( 2 ) 继承: 继承( i n h e r i t a n c e ) 是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一 种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继 承。新类继承了原始类的特性,新类称为原始类的派生类( 子类) ,而原始类称为新类 的基类( 父类) 。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或 增加新的方法使之更适合特殊的需要。继承性很好的解决了软件的可重用性问题。比如 说,所有的w i n d o w s 应用程序都有一个窗口,它们可以看作都是从一个窗口类派生出 来的。但是有的应用程序用于文字处理,有的应用程序用于绘图,这是由于派生出了不 同的子类,各个子类添加了不同的特性。 ( 3 ) 封装: 封装( e n c a p s u l a t i o n ) 是面向对象的特征之一,是对象和类概念的主要特性。封装是把 过程和数据包围起来,对数据的访问只能通过已定义的接口。面向对象计算始于这个基 本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受 保护的接口访问其他对象。一旦定义了一个对象的特性,则有必要决定这些特性的可见 性,即哪些特性对外部世界是可见的,哪些特性用于表示内部状态。在这个阶段定义对 象的接口。通常,应禁止直接访问一个对象的实际表示,而应通过操作接口访问对象, 这称为信息隐藏。事实上,信息隐藏是用户对封装性的认识,封装则为信息隐藏提供支 持。封装保证了模块具有较好的独立性,使得程序维护修改较为容易。对应用程序的修 改仅限于类的内部,因而可以将应用程序修改带来的影响减少到最低限度。 f 4 ) 多态性: 多态性( p o l y m o r p h i s m ) 是指允许不同类的对象对同消息作出响应。比如同样的加 法,把两个时间加在一起和把两个整数加在一起肯定完全不同。又比如,同样的选择编 辑一粘贴操作,在字处理程序和绘图程序中有不同的效果。多态性包括参数化多态性和 1 0 人连理1 :火学硕十学位论文 包含多念性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了 应用程序函数同名问题。 面向对象程序设计具有许多优点: ( 1 ) 开发时间短,效率高,可靠性高,所开发的程序更健壮。由于面向对象编程的可 重用性,可以在应用程序中大量采用成熟的类库,从而缩短了开发时间。 f 2 ) 应用程序更易于维护、更新和升级。继承和封装使得应用程序的修改带来的影响 更加局部化。 2 2 系统的分析和设计 由于j i - i c a d 系统中的功能是由对象支持的,所以,在系统中设计开发实现图像处 理和识别功能时,必须分析它们应具备哪些功能需求,分析软件系统为这些需求所要执 行的操作序列是什么,并设计提供这些操作的对象。j i - i c a d 提供了完善的用户交互和 消息晌应机制。本节在j h c a d 系统框架基础之上,采用面向对象的设计思想,描述系 统的具体设计过程【2 。 2 2 1 类的设计 系统框架中提供了图元的基类t d r a w o b j e c t ,封装了对图元的操作,该类以虚函数 的形式提供了具体操作的接口,主要功能如下: f 1 ) 初始化:设定图元初始参数 ( 2 ) 显示:将新生成的图元显示在客户区 ( 3 ) 移动:将选中图元移动到指定位置 “) 缩放:将选中图元按指定比例缩放 f 5 ) 镜像:镜像选中图元 f 6 ) 拷贝:复制选中图元 f 7 ) 判断用户拾取点是否在图元上,若是则选中该图元 f 8 1 判断用户拾取窗口是否包含图元,若是则选中该图元 ( 9 1 序列化:实现图元的保存和读取 在j h c a d 中,图像和各种矢量图元具有等同的地位,对各种图元的操作对图像应 该同样适用。因此图像类t l m a g e o b j e c t 由图元基类t d r a w o b j e c t 派生而来,它继承了 t d r a w o b j e c t 的所有功能,并将它们应用到具体的图像上。此外,作为是图像处理和识 别的对象,它还具有自己的新增功能。t i m a g e o b j e c t 主要功能如下: ( 1 ) 保存和读取图像文件 f 2 1 显示:将新生成的图像显示客户区 ( 3 1 移动、缩放、镜像、拷贝图像 f 4 1 通过点取或窗口选取选取指定图像 程绘图中扫描图纸幽像处理及识别方法的硼究 图像预处理包括均值滤波、中值滤波以及二值化等多种方法,这些方法有许多共同 的操作,可以将它们封装在图像处理的基类t l m a g e p r o c e s s 中。类t i m a g e p r o c e s s 提供 了图像处理的公共接口,主要功能如下: ( 1 ) 获取图像文件的句柄,得到具体处理操作的对象 ( 2 ) 设定图像处理方法和操作的顺序 类t l m a g e g r a y 和t i m a g e f i l t e r 都是由图像处理类t i m a g e p r o c e s s 派生而来,前者主 要实现图像的灰度变换和二值化等,后者实现图像的均值滤波和中值滤波等。 在图元拾取过程中,由于图元分为直线、圆和圆弧等多种类型,所以将拾取的公共 接口和基础算法封装在图像识别的基类t l m a g e p i c k 中。类t l m a g e p i c k 主要功能如下: 对图像的象素级操作: f 1 ) 获取选中图像的数据 f 2 1 判断一个象素点是背景点还是目标点 ( 3 ) 判断一个象素点是否边界点 ( 4 ) 判断一个目标点是否内点 ( 5 ) 渲染一个象素点:将一个象素点变为指定颜色 ( 6 ) 渲染一条扫描线:将一条扫描线逐点变为指定颜色 ( 7 ) 渲染一个四边形:将四边形所包含的所有扫描线渲染为指定颜色 搜索种子段: ( 1 ) 设定搜索范围,由图像稀疏程度决定 ( 2 1 由用户输入点出发搜索指定图元类型( 直线、圆和圆弧) 的初始边界点 f 3 1 轮廓跟踪:从已知边界点出发,搜索该点8 邻域内另一个边界点的过程,按搜 索方向,可以分为顺时针和逆时针轮廓跟踪。 f 4 1 对图元定向跟踪:包括b r e s e n h a m 直线和圆弧跟踪算法 f 5 1 最d , - 乘法:从一组数据拟合指定图元的矢量参数 ( 6 ) 拾取种子段 f 7 ) 按“线宽均匀”原则判断拾取的种子段是否有效 为图元的拾取提供公共的虚函数接口: f 1 1 拾取初始种子段 跟踪过程 f 3 1 删除光栅 f 4 ) 交点区域处理 ( 5 ) 参数校正 类t l m a g e p i c k l i n e 、t l m a g e p i c k c i r c l e 和t l m a g e p i c k a r c 都是类t l m a g e p i c k 的派生 类,分别实现直线、圆和圆弧的拾取,根据各图元的几何特征,实现拾取的过程各不相 同。 图2 1 描绘了各类之剧的关系,其中类t l m a g e p i c k 和类t h n a g e p r o c e s s 都有一个类 t i m a g e o b j e c t d 的对象,它们之j l 自j 是包含关系。 1 2 人连理r 人学硕十学位论文 图2 1 类之间的关系 f i g 2 1c o r r e l a t i o no f c l a s s e s 2 2 2 光栅矢量混合编辑 光栅矢量混合编辑系统的特点是光栅图像和矢量图形可以共存于一个图纸文件中, 实现图纸的双向混合设计。具体设计过程如下: ( 1 ) 光栅矢量分层显示。 j h c a d 系统中,类c l a y e r 定义了一个图层,不同的图层可以具有不同的线型、颜 色、可见性和是否冻结等属性,这些属性在c l a y e r 中以成员变量表示,比如l i n e s t y l e 表示线型,p e n c o l o r 表示颜色,v i s i b i l i t y 表示可见性,f r e e z e 表示图层是否冻结等。 系统的图元基类t d r a w o b j e c t 有一个成员变量c l a y e r * p l a y e r ,它表示图元所在的 图层,通过设置p l a y e r 的属性值可以实现对这一图元图层的设罱。这样就可以将光栅 图像显示在光栅层,将矢量图形显示在矢量层,实现光栅图像和矢量图形的分层显示。 ( 2 1 双向混合设计 双向混合设计是针对光栅图像和矢量图形的,要求光栅图上的直线、圆、圆弧等图 元可以交互拾取到矢量层,矢量层上的各种图元也可快速的点阵化为光栅图。 1 3 料绘劁中扫描幽纸睦i 像处理及沈别方法的研究 珥e a d 系统的工具条基类t d r a w t o n 封装了对鼠标和键盘的消息响应,用户的各 种交互操作都由t d r a w t o o l 来传递。该类以虚函数
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 农发行滁州市明光市2025秋招群面案例总结模板
- 农发行哈尔滨市阿城区2025秋招笔试热点题型专练及答案
- 国家管网集团招聘笔试真题2024
- 亳州市事业单位招聘笔试真题2024
- 农发行临汾市隰县2025秋招小语种岗笔试题及答案
- 工业城市课件
- 2025年新能源商用车辆在新能源汽车充电桩销售公司运输领域的市场需求与应用报告
- 2025年新能源汽车二手车市场流通产业链协同研究报告
- 2025年风力发电场碳足迹评估与减排技术进展报告
- 新能源物流车推广应用对物流行业成本节约与市场竞争力的提升报告
- 体育与健康教学设计《手倒立前滚翻》
- NISP一级考前模拟训练题库200题(含答案)
- JJG 20-2001标准玻璃量器
- 2024外研版初中英语单词表汇总(七-九年级)中考复习必背
- 《大数据平台部署与运维》课程标准(含课程思政)
- 英语中的时间表达(示范课例)
- 项目产品研发各阶段质量控制输出文件
- 脊柱外科进修汇报
- 《史记》上册注音版
- 苏州大学文学院语言学纲要课程笔记
- 危重症患者护理文书书写规范-课件
评论
0/150
提交评论