2. 甘肃省气象局数据实验室, 兰州 730020;
3. 甘肃省气象信息与技术装备保障中心, 兰州 730020
2. Data Laboratory of Gansu Provincial Meteorological Bureau, Lanzhou 730020;
3. Gansu Meteorological Information & Technical Support & Equipment Center, Lanzhou 730020
电接风向风速自记纸是客观记录风向风速随时间变化的气象实测资料之一。对于研究我国风向风速特征、尤其是沙尘暴特征具有重要意义; 并且对农业、城市建设、电讯、交通、风力发电等国民经济部门, 对防灾减灾策略的制定具有重要作用。然而, 对于非数字的图像资料依然缺乏有效的数字化处理手段, 使得这部分宝贵的气象资料得不到有效保存和开发利用[1]。
电接风向风速仪是我国自行研制和装备的自动观测仪器, 其自记记录数字化处理工作目前国内还没有开展。实施珍贵气象资料拯救工程, 是中国气象局《全国气象事业发展第十个五年计划》发展与建设的内容之一, 本系统受中国气象局委托开发。本系统所采取的技术和方法完全可以应用于其他行业和部门的曲线数字化处理。
1 主要研究内容及其组成本系统研究的主要内容是利用图像处理和模式识别等技术手段, 通过电子计算机分析识别出电接风向风速自记纸上的曲线所表征的数据, 并将数据保存到数据服务器。主要涉及3个问题:电接风向风速自记纸输入计算机; 计算机对电接风向风速自记纸自记曲线的识别与量化; 风向风速数据的存储与管理。因此电接风向风速自记纸数字化系统从功能上可分为3个模块:图像扫描模块、图像处理模块、数据库管理模块。其中, 图像处理模块是电接风向风速自记纸数字化系统的核心内容, 也是实现整个系统的重点和难点。
1.1 系统的工作流程系统将电接风向风速自记纸通过扫描仪输入到计算机并保存, 然后通过图像处理和识别技术对输入的电接风向风速自记纸图像中风自记曲线进行跟踪和识别, 并且提取出曲线所表征的数据, 最后将提取到的风向风速数据保存到数据服务器 (图 1)。
|
|
| 图 1. 系统的工作流程 Fig 1. The working flow of the system | |
1.2 图像扫描子系统
使用扫描仪将电接风向风速自记纸输入计算机。而从扫描仪读取图像通常使用扫描仪和数码相机自带的软件, 或者使用商用软件来实现。但是电接风向风速自记纸数字化系统是一个完整的系统, 调用第三方软件会降低系统的集成度, 也会给软件操作人员带来操作上的不便。因此电接风向风速自记纸数字化系统需要结合系统自身的特点来编写扫描捕获程序。在Windows下编写扫描捕获程序的过程实质上是调用扫描仪驱动程序的过程。市场上几乎所有扫描仪的驱动程序都是按照TWAIN工作组[2]制定的图像设备与应用程序之间的标准软件协议和应用程序编程接口标准来实现的, 因此, 通过应用TWAIN标准就可以编写扫描捕获程序, 这样既可以提高系统集成程度, 简化软件操作人员的使用, 又实现了应用程序与外围设备的无关性。
TWAIN (Toolkit Without An Interesting Name, 无注名工具包协议) 将图像输入软件划分为3个层次:应用软件、数据源管理软件和数据源软件 (图 2)。功能分别是:①数据源软件完成对图像生成设备硬件的控制, 通常由设备开发商编写的设备驱动程序包含在这一层。②数据源管理软件管理底层数据源软件与顶层应用软件之间的交互操作和数据传递, 将底层物理设备特性与具体应用隔绝开, 从而保证了用户图像输入程序的独立性。这个软件由TWAIN工作组编写的TWAIN开发包提供, 图像采集设备生产商和应用软件商免费使用。在Windows环境下, 它以动态链接库形式存在, 一般放在Windows系统目录中。③应用软件是由用户依照TWAIN协议编写的图像输入软件。
|
|
| 图 2. TWAIN的组成 Fig 2. The constitution of TWAIN | |
1.3 图像处理和跟踪识别子系统
电接风向风速自记纸输入计算机后, 需要经过图像预处理、风向风速曲线的分离和识别、风向风速曲线的矢量化处理、生成风向风速数据文件等一系列处理过程, 最终将风自记纸数据保存到数据服务器。
1.3.1 图像预处理图纸经扫描处理后转化为数字图像, 但是从纸质图像转化为数字图像的过程必然会使图像产生噪声以及图像的畸变。因此, 主要采用了中值滤波技术[3-4]对图像进行平滑处理, 同时, 图像的倾斜也需要进行矫正[5]。具体包括以下几个功能:阈值变换、图像平滑和锐化、滤波除噪、图像复原和基线提取。通过预处理, 提取出合适的参数, 为下一步的曲线跟踪提供了比较好的环境。这些图像预处理技术算法本文不再详述。
1.3.2 风向风速曲线的分离和识别根据自记纸图像文件中的背景和目标图像的灰度值的差别, 首先利用二值化去除背景图像轮廓, 切割出大致的目标图像轮廓。由于背景图像只是为了在人工识别的时候提供一个基准, 它的格式是固定的, 因此在提取数据的时候能够基于先验知识脱离背景信息而不会产生错误。在此过程中, 为保证目标图像的识别精度, 与其粘连的背景信息将不会被去除。通常有两种方法来完成:一种是基于灰度阈值的图像分割技术, 另一种是基于颜色聚类的图像分割技术[6-8]。该系统采用颜色聚类的图像分割技术提取目标图像, 使用这种方法的好处是可以更准确地提取到目标图像。
1.3.3 风自记曲线的跟踪和识别由于图像质量的原因或图像颜色聚类时的不完全性, 使得目标图像和背景的分离可能不够完全, 因此, 自记曲线从背景分离后还需要对分离出的曲线进行确认, 对风向风速曲线进行跟踪和识别, 对分离错误的部分进行纠正, 这个过程可以通过抽取曲线骨架的方法[9]来实现。电接风向风速自记纸记录两种曲线[10], 一种是风向曲线, 另一种是风速曲线, 由于这两种曲线的特点和量化的方式不同, 所以对它们分别进行处理。
1.3.3.1 风向曲线的跟踪和量化在电接风向风速自记纸上 (如图 3所示), 一共有4条风向曲线, 分别用于判定南/北、东北/西南、东/西、东南/西北, 每一条风向曲线都有一条风向基线, 风向基线是用于判定风向的参照线, 某一时刻风向的判别是由此时刻风向曲线相对于风向基线的位置决定的。例如在判定南北风的风向时, 如果某一时刻的风向曲线位于此南北风向基线的上方, 就代表是南风。位于此南北风向基线的下方, 就代表是北风。某一时刻真正的风向是以上4条风向曲线上表征风向的组合。例如某一时刻同时出现东风曲线和东北风曲线, 则此时刻风向为东北东, 4条风向曲线最多可以组合出16个风向。
|
|
| 图 3. 风向曲线 Fig 3. Wind direction curve | |
基于以上风向曲线的特点, 本系统在判定风向之前先跟踪提取出自记纸上的4条风向基线, 然后以提取到的每一条风向基线为时间轴, 以所得曲线的底边起始位置为基准, 以自记录仪记录风向曲线的时间间隔 (2.5 min) 为步长, 在每一条风向基线两侧搜索风向曲线, 逐段读取曲线上各段的纵坐标位于基线上下的状态, 并在读取状态的同时得出每2.5 min的风向值, 并按照气象规范的要求分析得出每10 min的风向值。
风向曲线上最窄的部分是风向基线上的点, 所以风向曲线的水平灰度投影的最小值部分极可能是风向基线上的点。因此, 先对自记纸图像中4条风向曲线的大致区域采用水平灰度投影法获取其投影曲线, 然后对每一条投影曲线进行分段排序处理, 找出投影曲线上的波谷点以及数值最小的非零点即可定位到风向基线上的点横坐标的位置x, 依据此横坐标位置x, 再以x为横坐标的一定区域做水平灰度投影即可搜索到风向基线上的点。
设灰度图像为I(x, y), 其大小为M×N, 水平灰度投影:
|
(1) |
式 (1) 中x, y是图像像素点的坐标位置, f(x, y) 是图像坐标 (x, y) 处的灰度值, P(y) 是y处的灰度投影值, N, M分别是图像的宽度和高度。
通过以上方法可以获得一系列风向基线上的点, 接下来通过曲线拟合的方法获取风向基线的方程, 采用曲线拟合的最小二乘法获取。
根据风向基线方程, 在风向基线两侧按2.5 min步长搜索风向信息。具体方法是先取得风向基线两侧2.5 min跨度的图像, 依次使用垂直灰度投影和水平灰度投影方法得到风向基线两侧风向曲线的宽度和高度, 按照预先设定的阈值确认风向曲线在风向基线两侧的状态, 并将结果保存到文件中。
1.3.3.2 风速曲线的跟踪风速曲线是以横坐标位置X代表时间, 纵坐标位置Y代表风行程的曲线。某一时间段内风速的计算是将此时间段内风速曲线纵坐标的跨度 (表征确定的风的行程) 除以横坐标的跨度 (表征确定的时间), 记为
|
(2) |
式 (2) 中, Xi-Xi-1是自记图纸上的时间间隔, Yi-Yi-1是在此时间间隔内自记曲线所代表的风的行程。
根据曲线的单调增减趋势跟踪图像信息:根据自记纸中风速部分的数据提取要求, 只要找到曲线的特征点[11], 就可以得到细化的曲线, 这条曲线呈波浪型, 从波峰到波谷或从波谷到波峰的每个分区间内的单调性都是固定的。利用这个特征, 首先根据单调性确定单调区间, 在单调区间内根据曲线趋势寻找有效的特征点[12-13]。但由于自记仪硬件原因, 在记录过程中不是所有的点都遵循这个单调性的, 因而对曲线进行反方向搜索也是必要的。其过程如图 4所示。
|
|
| 图 4. 曲线跟踪流程 Fig 4. Curve tracking flow chart | |
1.3.3.3 风速曲线的重构
在解决实际问题时, 往往碰到一些复杂的函数, 有的甚至给不出数学表达式, 只提供了一些离散的数据, 风速自记曲线就是其中的一种。将相邻两个采样点连接起来, 就是对风速曲线的重构, 因此, 分别计算相邻两个采样点连线的函数就可以得到风速曲线函数的近似, 这个函数叫做分段线性插值函数[14], 数值计算中常用的方法为
|
(3) |
式 (3) 中, hi=xi+1-xi, 而φ0(x)=1-x, φ1(x)=x, (xi, yi) 为采样点[15], i是曲线沿x轴方向的采样点序号, xi≤x≤xi+1是指当自变量x取值为区间 (xi, xi+1) 上的值时, 得到两个采样点之间的曲线值S(x)。
1.3.3.4 风速曲线的量化根据《地面气象观测规范》中规定, 对数据按照10 min的时间段提取风速曲线的特征点, 根据每200 m风速变化产生1个特征点的原理, 计算每10 min的平均风速值。根据气象观测规范的要求, 按照式 (2), 提取每10 min的风的行程, 并将其转化为风速。只需要将每10 min的细化曲线的纵坐标位置求差的绝对值, 然后即可转化。需要特殊处理的是波峰和波谷点的位置, 自记曲线的频率只会使每10 min之间只有1个波峰或波谷点, 如果波峰或波谷点正好处在10 min之间, 则将其位置与10 min的两个端点值分别求差的绝对值, 然后将其相加值转化为风速。另外, 《地面气象观测规范》中规定, 所提取的数据必须是整点10 min的数据, 然而, 因为自记仪的换纸是手工的, 自记纸中的起始时间和结束时间经常不是整点时间。为了满足要求, 在不足10 min的起始区间, 往后顺延10 min, 不足10 min的结束区间, 则采用向前推延10 min, 从而计算出整10 min的风速值。
1.4 数据存储子系统提取到的风向风速值必须按照气象观测规范的要求和格式存入到相应的文本文件中, 由于每一张自记纸只能记录1 d的数据, 而数字化的气象观测规范要求数字化之后的观测记录必须是连续的, 所以在生成了1个月的数据之后还要将离散的数据进行汇总, 这样才能获得连续的月数据。最后将获得的有效数据保存到SQL服务器, 同时编制检索程序, 以备业务人员使用。
2 实例分析在测试过程中, 选取了甘肃省定西 (1982年7月)、华家岭 (1995年10月)、西峰 (1998年12月)、安西 (1972年3月) 4个站不同时段的自记纸作为测试资料, 最大风速达27 m/s, 最小风速0, 样本量达到1.7万多条, 涵盖了甘肃省历年来记录的风速值范围, 对人工选值和系统提取值进行了逐一比较。
2.1 风速值测试结果通过对以上4站 (每站各1个月) 的人工与系统风速提取值的逐一比较, 得到表 1人工与系统提取值之差的绝对值所占比例, 从表 1可以看出人工与系统提取值之差在1 m/s之内的占97%, 占到所有样本的绝大多数, 但仍有3%的样本量差的绝对值大于1 m/s。通过跟踪分析, 曲线的粗细不均和人工订正数据时的遗漏是产生误差的主要原因。
|
|
表 1 定西 (1982年7月)、华家岭 (1995年10月)、西峰 (1998年12月)、安西 (1972年3月) 4站人工与系统提取风速值差的绝对值所占比例 Table 1 The absolute difference value between manual and system work percentage of Dingxi (July, 1982), HuaJialing (October, 1995), Xifeng (December, 1998), Anxi (March, 1972) |
人工选取的日风速最大值与系统提取的日风速最大值在日最大值出现的时间和大小方面都有一定的出入, 图 5是人工与系统提取的日最大值之差月变化曲线。从图 5中可以看出, 人工选取的日最大值与系统提取的日最大值相差1 m/s以内的有30 d, 占全月31 d的97%, 相差在1.3 m/s以内的1 d, 占全月31 d的3%。
|
|
| 图 5. 安西站1972年3月人工与系统提取的日最大风速值之差月变化曲线图 Fig 5. Max wind speed difference changes between manual and system of Anxi station in March, 1972 | |
产生差异的原因之一在于迹线粗细变化给风速值的选取带来一定影响。另外, 系统提取最大风速是按照每隔1 min的滑动窗口来提取的, 人工是以经验判断曲线的最陡处, 所以会产生差异。
2.2 风向测试结果通过对以上4站 (每站各1个月) 的人工与系统风向提取值的逐一比较, 风向总体测试情况如表 2所示, 人工选取的风向与系统提取的风向相符率占93.4%, 不相符率占6.6%, 基本符合数字化精度的要求。通过对日最多风向统计, 相符率达到99.8%, 另有0.2%的日最多风向值与人工选取的不相符。究其原因, 风速较小时风向摇摆不定, 使得人工和系统对风向的判别产生了一定偏差, 同时, 图像质量也是影响系统对风向判定的原因之一。
|
|
表 2 定西 (1982年7月)、华家岭 (1995年10月)、西峰 (1998年12月)、安西 (1972年3月) 4站风向相符率统计 Table 2 The consistent statistic in wind direction of Dingxi (July, 1982), Hua Jialing (October, 1995), Xifeng (December, 1998), Anxi (March, 1972) |
3 结束语
从测试结果来看, 系统提取到的风向风速值基本可以达到地面气象业务观测规范的要求。但受条件所限, 测试系统时使用的自记风资料最大风速只有甘肃省所记录的27 m/s风速值, 对更大风速值的自记纸需要做进一步测试分析。系统对风速风向值的识别与人工判别还有一定出入, 对系统的处理方法还需要作进一步的改进。
电接风向风速自记纸数字化处理系统的研制解决了多年来气象档案馆存放的风自记纸的开发和利用, 具有很强的现实意义和实用价值, 实践表明本系统所采用的方法完全可以应用到不同行业纸质记录曲线的数字化处理。
| [1] | 王伯民, 吕勇平, 张强. 降水自记纸彩色扫描数字化处理系统. 应用气象学报, 2004, 15, (6): 737–744. |
| [2] | TWAIN白皮书. TWAIN网站.http://www.twain.org. |
| [3] | 朗锐. 数字图像处理学. 北京: 希望电子出版社, 2003: 128-161. |
| [4] | 夏良正. 数字图像处理. 南京: 东南大学出版社, 1999: 197-218. |
| [5] | Kenneth R Castleman.数字图像处理.朱志刚, 译.北京:电子工业出版社, 2002: 380-381. |
| [6] | Lu Yaoxin, Liu Zhiqiang, Zhu Xianghua, Real time face detection using skin color model. Journal of China Universities of Posts and Telecommunications, 2004, 11, (3): 79–83. |
| [7] | Liao Pin, Shen Li, Chen Yiqiang, et al. Unified model in identity subspace for face recognition. J Comput Sci & Technol, 2004, 19, (5): 684–690. |
| [8] | 岳振军, 邱望成, 刘春林. 一种自适应的多目标图像分割方法. 中国图象图形学报, 2004, 9, (6): 674–676. |
| [9] | 李四明. 工程图纸输入与自动识别的改进细化算法. 计算机工程, 2003, 29, (16): 37–39. |
| [10] | 中国气象局.地面气象观测规范.北京:气象出版社, 2003: 49-55. |
| [11] | 沈萌红, 崔云峰. 基于节点的曲线图表矢量化算法研究. 计算机工程与应用, 2004, 40, (1): 96–98. |
| [12] | 郭桂蓉. 模糊模式识别. 长沙: 国防科技大学出版社, 1993: 134-197. |
| [13] | 边肇祺, 张学工. 模式识别. 北京: 清华大学出版社, 2000: 120-133. |
| [14] | 王能超. 数值分析简明教程. 北京: 高等教育出版社, 1984: 47-51. |
| [15] | 陶然, 王越, 周思永. 周期信号等效非均匀采样策略研究. 兵工学报, 1999, 20, (3): 238–242. |
2008, 19 (2): 227-232

