钱 鹏,刘 明,李彦婧,潘 兰
(中国石化华东分公司物探研究院,江苏 南京 210000)
测井资料在石油天然气及煤层气勘探开发中起着极其重要的作用。目前,测井曲线通过绘制在图纸图件上来表达信息。然而以图纸图件保存的测井信息,不利于后人进一步深入研究,信息查询、数据导出再利用等一些基本操作无法在这些载体上实现。现有测井资料数字化相关软件,由科研人员自行开发较多,商业化销售较少,其中广泛推广使用的Mapgis商业软件尽管也可以为工程图件数字化,但是由于没有很强的针对性,数字化一口井所需的时间以及识别精度并不能全部达到要求,效率较低下。因此,研究测井曲线数字化,如何高效便捷地识别测井曲线并提取曲线数据,是亟待解决的问题。
工程图纸图像矢量化是国内外热门的研究课题,自上世纪70年代起至90年代,已经涌现了大量的矢量化技术研究成果,现在矢量化已广泛应用在地理信息系统、工程业等很多领域[1-5]。测井资料数字化作为其中一个研究领域,国内曾有清华大学自动化系有过该方面的研究[6-8]。原石油部也曾从国外引进并在国内推广过一种基于LAG数据结构的测井曲线跟踪软件,该软件受限于标准坐标图纸,缺少通用性,先后经过清华大学、哈尔滨工程大学、大庆石油学院等师生对其跟踪结果进行了一定的校正、修改和处理[1,2,7]。四川大学图像信息研究所也在原石油部推广的软件的基础上开发出了测井曲线矢量化软件,能够处理简单的测井曲线[1,2,7]。国外测井曲线矢量化软件中起步比较早的、较著名的软件是NEURALOG,该软件在处理过程中,遇到连续曲线和其它曲线交叉时,停顿比较频繁,经人工干预后才能继续跟踪;对于虚线,则完全依赖于操作人员手工逐点点取;背景对曲线识别也会产生很大的影响[1,2,6,7,9]。
测井资料数字化技术方法的研究,现主要基于工程图纸图像矢量化技术[10-20]:一类是基于细化方法的矢量化,即细化线条再进行像素点追踪,该方法处理速度慢,且效果受图像背景影响很大;另一类是基于像素的线条轮廓追踪,充分利用了线条轮廓的方向,但还是基于线条追踪,抗噪性能差。此后的研究方向包括消除背景、抗噪、图像预处理提高信噪比以及追踪方法的改进等[21-24]。
当前,测井曲线数字化大体流程可以归纳为:用数字化扫描仪处理图纸得到黑白图像,再自动矢量化输出矢量图形文件。其技术研究已经逐步提高了自动追踪能力,精确度和速度比起以往也有了较大的改善,并且进一步弱化了人工干预,强化了全程自动化。软件识别率为70%~85%。然而系统设计比较繁杂、用户学习成本高,设计思路没有脱离工程图纸矢量化的范畴。
本文尝试从新的角度出发,以测井图件为基础,设计一套专门针对测井曲线的识别与数据提取算法,并开发一套便捷高效的软件系统。下面对系统功能和核心算法进行介绍。
本项数字化研究的目标是在图件的基础上为测井资料的深入分析研究和应用提供可靠、可操作的测井数据体。数据输入是栅格图像,需要区分矢量图形和栅格图像的概念。
矢量图形也被称作向量图,记录点线面的坐标位置以及颜色、形状、轮廓、大小和屏幕位置等等信息,根据几何元素特性(如点、线、矩形、多边形、圆和弧线等等)来绘制图形,由一系列程序指令来执行并显示。与矢量图形相对应的是栅格图像,也被称为光栅图像、点阵图、像素图,最小单位是由像素构成,每个像素有自己的颜色。栅格图像的点阵分得越细,图像分辨率就越高,图像也越有细节,同时存储容量也越大。
由于输入是栅格图像,最终输出结果是二维数据体,为了保证系统在文件数据管理上的高效,输出文件不需要也不应该包含其他冗余的信息。现阶段工程图纸图像矢量化和测井资料的数字化相关软件,其输出结果多为矢量图形,即不仅记录点、线、面、文字的坐标位置,还包括各种图形元素的颜色、形状、轮廓、大小和屏幕位置等信息,若有明码格式文件输出,在用户不了解文件格式的内容编排时,是不容易快速获取有效数据体的。
本系统的任务是对保存在栅格图像上的测井曲线进行正确识别,并准确提取曲线数据,之后直接输出二维数据体。输出功能是其与现有软件的区别之一。
绘制在图纸图件上的测井曲线形态千差万别,但也可以总结出一些共有的特征。图1所示是常见的几种测井曲线图件类型。
图1 测井曲线图件的特征Fig.1 Features of logging curve images
对测井曲线图件分析总结,可归纳出它们的一些共同特点:
1)测井曲线以栅格图像的形式呈现,包括jpg、png、bmp、tiff等常见图像格式。
2)测井曲线的背景有坐标网格线,坐标分为等间隔的笛卡尔平面直角坐标系和不等间隔的半对数坐标系。
3)曲线与坐标网格线相交。
4)部分曲线之间有相交。
5)曲线之间通过颜色和线型加以区分,线型包括实线与虚线(点线、划线、点划线等)。
根据系统目标和任务,在分析处理对象的基础上,将需实现的功能划分为三大模块:输入模块、识别与提取模块和输出模块(图2),其中核心模块是测井曲线的识别与数据提取。下面介绍系统具体的功能。
图2 流程示意图Fig.2 Diagram of process flow
输入模块的功能设计为:读取jpg、png、bmp、tiff等常见图像格式,并以此作为数据输入源,做初步的图像剪裁处理和坐标校正的预处理,等待识别与提取模块的处理。整个过程是人机交互式操作。
输出模块的功能设计为:在显示区域中将等待输出的二维数据体可视化,以此来检查提取的数据是否正确;如果正确则以文本格式记录,保存到磁盘;若不正确则返回识别与提取模块中重新处理。其中显示区域将分为两块相同大小的区域,分别显示原图和提取的数据重绘图。设定为相同大小的目的是确保待输出数据重新绘制后,曲线的比例与原图件中测井曲线比例完全相同。在此条件下,曲线形态完全一致视为正确,否则需重新处理。这段验证结果的过程交由用户去判断。
识别与提取模块的功能设计为:正确识别并提取不同坐标系下的曲线;正确识别并提取背景网格下的曲线;识别相交曲线并正确提取目标曲线数据;识别实线、虚线曲线并正确提取目标曲线数据。这些功能即是在下面所列的条件限制下系统要完成的任务:
1)不同的坐标系:笛卡尔平面直角坐标系和半对数坐标系。
2)背景坐标网格的干扰。
3)曲线相交织引起的干扰。
4)实线与虚线共存引起的相互干扰。
这些限制条件不会单独地出现,在这些条件下完成曲线正确识别与提取,需要开发一套合适的、具有针对性的算法。
识别与提取模块也设计为全程可视化操作,即时显示识别的结果,以便让用户能及时地跟踪识别提取过程。识别过程中,会将识别的曲线叠合在原图上,并在显示区域中显示,然后由用户判断,保证识别结果的准确。
在设计系统时分别在识别提取模块和输出模块上,各有一次由用户判断处理结果的质量验证,其目的是及时确保识别、提取、输出的准确(图3)。
图3 系统功能划分Fig.3 Division of system function
在识别提取模块的设计中,曲线与背景坐标网格线交织,多条曲线相交,虚线与实线共存一直是图像识别中的难点。经过调研前人在曲线识别方面的研究成果,发现有两个潜在的传统误区:
第一个误区是,过分关注于消除背景网格线,而忽略了研究识别曲线本身才是重点。为了消除背景坐标网格线前人做了很多尝试,从空域识别到频域分析,应用了很多方法,但背景消除并不是很完美,依然会有网格线残留甚至会引入新的干扰,尤其是频域去噪方法,把背景网格线作为噪声消除,这却导致了背景网格线一旦是不均匀间隔,自动消除算法就不适用,而且这还需要用户有信号分析的理论基础,增加了软件学习成本。
第二个误区是,过分强调识别过程全自动化。这样在设计普适性算法时,算法复杂度高,CPU计算时间长,也就意味着用户等待响应的时间增长;同时也因为考虑算法的普适,导致稳定性和识别率都大打折扣,一味追求全自动化而牺牲了计算速度和识别精度,这也不符合人机交互系统的设计原则。
因此在设计系统的过程中,试图避开这两个误区,采用自顶向下的理念,算法研究尝试从新的角度出发,将上面的复杂问题逐步分解细化来求解。
从之前总结的曲线特征里,不难发现色彩是测井曲线图件自带的共有特性。人眼可以通过颜色立刻区分不同的曲线,受此启发,以曲线颜色作为设计的切入点,并参考模式识别的相关理论知识,提出颜色识别、背景网格线自动消除、人机交互抠除干扰的一套算法来实现以上核心功能。
进行绿色建筑设计,就一定要选用科学节能的建筑材料,对于高层民用建筑来讲,设计者要注重材料的环保与节能性,尽量使用可以循环的材料,避免使用质量低劣、污染较高的材料,更不得采用国家和地方禁止和限制使用的建筑材料及制品。可以充分利用本地材料以及自然材料,这样可以降低运费与资金,节省资源。另外,还可以回收一些废弃物,可以对其中还有利用价值的材料进行重复利用,从而达到节能的效果。在具体设计时,可以简化建筑的造型,且无大量装饰性构件,只要将建筑设计得美观大方即可,结构形式可以选择混凝土结构、钢结构等强度质量较高的结构体系进行设计。
在设计识别提取模块的功能时,如果能在不消除背景坐标网格的情况下直接识别出目标曲线,则尽量不去做背景消除;同样的,多条曲线相交,虚线实线共存时,若能直接识别出目标曲线,则尽量不去做干扰曲线的剔除。这样设计既提高了算法的稳定性也缩短了整个流程处理的时间。经过多次编程试验,在算法设计上首先应用颜色识别解决以上问题,并对颜色识别无法完成的任务再进行针对性去干扰处理。具体步骤如下:
1)通过颜色识别,直接识别出目标曲线,并提取数据。
2)若通过颜色识别,不止识别出目标曲线,同时与目标曲线颜色相同的背景坐标网格线也被识别出来,则针对此情况设计背景网格线自动消除算法,并提取数据。
3)若通过颜色识别,不止识别出目标曲线,同时与目标曲线颜色相同的其他曲线也被识别出来,则引入人工交互,抠除干扰,并提取数据。
4)若通过颜色识别,不止识别出目标曲线,同时与目标曲线颜色相同的背景网格线及其他曲线也被识别出来,则先进行网格线自动消除处理,再引入人工交互,抠除干扰曲线,并提取数据。
颜色识别算法流程如下:
1)RGB颜色空间转换到HSV颜色空间。
2)由用户给出检测点,给出HSV三分量容差(容差可直接套用预定义的缺省值)。
3)对每个像素进行搜索,符合条件的像素进行存储。
4)可视化显示:对识别的像素设置为全透明,不识别的像素设置为半透明,应用图层概念,叠合在原图上显示,以供验证识别结果。
5)若通过用户验证则结束本模块流程;若不符合用户要求则返回到步骤2继续。
在颜色识别的基础上,选择性地执行网格自动消除,能降低不必要的运算量,大大提高系统运行效率。背景坐标网格线自动消除算法流程为:
1)逐行扫描像素点,若某一行的像素点都同时符合坐标网格线的判定条件,则记录下行号。
2)逐列扫描像素点,若某一列的像素点都同时符合坐标网格线的判定条件,则记录下列号。
3)对符合行号和列号的像素点进行消除。
执行以上流程,背景坐标网格都能被很好地消除,若没有干扰曲线,那么留下的像素点就是目标曲线像素点,便可直接进入提取环节,少部分重叠被消除的像素点通过再提取过程中计算补全。
在颜色识别与网格线消除的基础上,通过人机交互,抠除非目标曲线或其他干扰,剩余目标曲线,其算法流程为:
1)通过人机交互鼠标点击,得到区域节点。
2)按点击顺序连接各个节点得到剔除区域。
3)将区域内的像素点剔除。
以上算法复杂度低,大大提高了计算机处理速度,而且人工参与保证了结果的准确性。
颜色识别、背景网格线消除和非目标曲线干扰交互抠除,单独看这三个算法,每一个都是很简单的流程,在能实现目标的前提下,算法设计得越简单,后期编程就越容易优化,相反的,不必要的情况下把算法设计得过于复杂,步骤繁多且相互之间有复杂的联系,那么整个算法的复杂度也很难在后期编程中优化降低,这样就无法达到高效软件的要求。
在执行完一整套算法流程后,无论目标曲线是实线还是虚线,曲线是否相交,均可以被准确地识别提取出来。之后对其进行坐标换算和插值处理,即可输出曲线数据结果。识别与提取的整个过程都设计为可视化过程,以确保每一步结果都能够及时反馈,即时修改,提高效率并保证结果的准确性。
下面通过几个实例来演示本系统。图4是系统初始化界面,其中有两个坐标系分别表示两块显示区域。左侧用于显示测井曲线图件,右侧用于可视化提取结果,左右显示区的大小比例相等。图片经过预处理剪裁后,会不等比例自动缩放以适应左侧显示区域大小。
图4 系统界面Fig.4 System user interface
图5是对补偿密度曲线(以点线表示的虚线)识别并提取的示意图,其中(a)图是测井曲线原图件中待提取的部分曲线截图;(b)图是导入系统后经过剪裁和坐标校正的预处理之后的截图,截图中左侧图片的坐标轴是像素坐标;(c)图是颜色识别结果截图;(d)图是干扰剔除的截图;(e)图是最终提取曲线的结果截图。
图6是某原始测井曲线图件与目标曲线(AC曲线)完整提取结果的对比。其中黑色粗线是原始的AC曲线,红色虚线是经过软件系统识别提取之后的数据重绘,将重绘曲线与原始曲线叠合显示,形态吻合准确。
通过以上示例对系统的整体功能做了一个大致演示,分别在简单情况和复杂情况下,都准确地识别并提取出了目标测井曲线。
在经过数字化相关技术方法的调研后,尝试从另一个角度出发,专门针对测井曲线识别与数据提取这一方面进行了研究。在研究过程中提出了一套曲线识别与数据提取算法,并完成了数字化软件的编写,整个软件系统的设计过程都在文中作了阐述。通过实际应用表现,本软件系统提高了工作效率,也保证了输出数据的精度,能够方便高效地为测井资料的深入分析研究和应用提供可靠的、可操作的测井数据体,满足科研生产的需要。
图5 测井曲线的识别与提取实例Fig.5 Identification and extraction examples of logging curves
图6 原始测井曲线图件与成果对比Fig.6 Comparison between result and originalimage of logging curve
[1]刘巍.测井图纸矢量化技术研究[D]:[硕士学位论文].哈尔滨:哈尔滨工业大学,2009.
[2]王浩.测井图纸校正及数字化技术研究[D]:[硕士学位论文].哈尔滨:哈尔滨工业大学,2007.
[3]邹修明,张岳新.栅格地图矢量化关键技术研究与实现[J].计算机工程与应用,2003,39(19):102-138.
[4]李增兵,张晓帆.线性体图像自动矢量化算法研究[J].现代测绘,2006,29(3):11-16.
[5]黄光球,陆秋琴,张纲要.矿业工程图自动矢量化转换方法[J].中国矿业,2003,12(4):15-18.
[6]左航.测井曲线的自动识别与提取[D]:[硕士学位论文].成都:四川大学,2003.
[7]鲁超.地球物理测井曲线自动识别方法研究[D]:[硕士学位论文].西安:西安石油大学,2010.
[8]李新友,唐泽圣,张凤昌,等.TH-DAIMS 3.0清华图纸自动输入与管理系统[J].计算机辅助设计与图形学学报,1997,9(5):451-455.
[9]余艳梅,罗代升,何小海,等.测井曲线智能数字化系统的设计与开发[J].计算机工程与设计,2008,29(24):6405-6406.
[10]余学军,彭立中.二值图象曲线轮廓提取的新算法[J].中国图像图形学报,2002,7(3):272-275.
[11]张志鸿,董秉枢.工程图形识别中一种矢量跟踪法[J].清华大学学报:自然科学版,1996,36(3):84-89.
[12]陆宗骐,张秋萍.工程图纸矢量化中的线条轮廓跟踪法[J].中国图象图形学报,1997,2(2):878-882.
[13]郁晓红,李伟青.工程图纸中虚线的提取算法[J].计算机应用与软件,1999,16(3):16-19.
[14]王宗倡,武文波.CAD下栅格图像纠正研究[J].矿山测量,2001,29(4):51-52.
[15]李伟青,彭群生.EDrus:一个基于整体识别方法的工程图纸转换系统[J].浙江大学学报(理学版),2000,27(3):296-301.
[16]王嘉阳,王灿东.自动跟踪地图数字化[J].小型计算机系统,2000,21(8):829-832.
[17]冉家琼,邓小武,刘业新.测井工程图纸图像的曲线追踪及其矢量化[J].石油地球物理探,1999,34(增刊):33-38.
[18]王金鹤,欧宗瑛,夏晓东.工程扫描图像的骨架提取和识别技术综述[J].计算机工程,1999,25(6):3-5.
[19]丁伟东,袁景淇.工程图纸矢量化方法研究[J].计算机工程,2006,32(24):157-158.
[20]徐尧东,张忠苗,岑岗.工程图扫描输入与识别技术[J].计算机辅助工程,1997,12(4):44-51.
[21]杨姝.测井曲线数字化方法研究[D]:[硕士学位论文].北京:中国石油勘探开发研究院,2003.
[22]曹爱军,史杏荣,孙贞寿.基于多层神经网络的交叉线自动识别[J].中国图象图形学报,2000,5(2):149-152.
[23]罗峰,余艳梅,吴晓红,等.曲线矢量化中的背景去噪方法[J].计算机应用,2005,25(4):929-930.
[24]罗峰,余艳梅,刘飞,等.测井曲线矢量化中的预处理方法研究[J].中国测试技术,2005,31(3):40-41.