张 博,张 晨
同济大学软件学院,上海 201804
云迹风目前已成为一种重要的卫星产品[1],可以作为陆地观测网常规风测量的补充资料.在海洋、高原、沙漠等测站稀少或无测站地区,它俨然成为主要或唯一的风信息源[3]。因此云导风的精度是决定强风量级和影响范围的关键因素。构建云导风模型首要条件即,构建灰度矩阵元素行列号(灰度图的平面坐标系)对应于经纬度坐标的变换公式,来确定卫星云图中灰度矩阵每个元素对应的采样点在地球上的经纬度。
本文采用空间立体解析几何及空间投影的思想将卫星云图的拍摄构建一个空间几何模型,然后利用已有数据推导出该相互换算的计算公式,并利用Matlab 软件编程计算出灰度矩阵中题目规定范围内的经纬度值。
图1 卫星云图拍摄模型
云的运动通过云的运动场来描述,其反映了真实世界中云的运动。而风矢场可以看作是云的运动场在二维云图上的投影,携带着有关云的运动和结构的丰富信息。通过对风矢场的研究就可以从相邻序列图像中近似计算出不能直接得到的云的运动场。基于块匹配的方法是在云图序列的顺序图像对之间实施的一种对应,将风矢定义为使得不同时刻卫星云图区域之间产生最佳拟合的位移[3]。
设卫星云图上的点(x,y)在时刻的灰度为I(x,y,t),
给定两幅顺序图像I1 和I2,以图像I1 中的每个像素点(x,y)为中心建立一个大小为(2n)×(2n)的相关块w,在图像I2 的对应像素点(x,y)为中心的(2n)×(2n)的搜索区ϖs。搜索范围可根据两图像间最大可能位移N,也就是云图中像素点可能的最大位移范围为(-N,N)。N 的值由先验知识来确定,搜索范围的大小决定算法的效率,搜索范围越大则计算量越大,反之则小。
采用加和差平方来计算搜索区域上(2n ) × (2 n)窗口的误差分布。
协方差矩阵特征值的倒数可以用作风矢估计的置信区间。
上述基于匹配法的风矢计算方法仅适用于刚体运动的情况,而实际在这里云的变化是复杂无常的,而且并非刚体运动。因此选取一种基于类似金字塔式的风矢迭代法来解决此类问题。基本思想就如同构造图像序列的金字塔,高层部分是基层部分在平滑后的下采样形式,而原始的图像层数则为零。可以经过计算把图像分解成预计的层数后,相邻幅间图像的运动量会逐渐缩小,直到能够满足风矢计算的相关规定,同时还可以直接对风矢进行估计。在计算的过程中应该由高到低逐步进行,先把风矢增量计算出来,然后一级一级的加到初始值上,依次计算,最后进行投影重建。经过整个过程的推算,直到估算出原始图像的风矢。
1)相邻两张云图亮度是恒定的;
2)相邻两张图像之间的运动不能大于一个像素。
但在实际应用中,一般的云图图像序列很难满足上述条件,因此用传统的风矢计算方法很难得到精确的风矢场。引入金字塔多分辨率结构,由粗糙到精确计算风矢场可以较好的解决该问题。
金字塔是一组图像序列,序列中的每一级图像均是其前级云图低通滤波得到的[8]。其中用 G0表示输入的连续两张云图原始图像,Gk表示第k 层图像,它的每一像素都是由窗口函数w 对第k-1 层图像矩阵进行加权平均得到的。设云图元素的横坐标和纵坐标分别用,i j 表示,则层间的运算可表示为:
其中, w( m, n )为窗口函数,设 w( m, n )为5×5 时,且满足以下约束条件:1、可分离性;2、归一化;3、对称性;4、奇偶项等贡献性。按照这4 个约束,构造出:w( 0) = 0.4, w( 1) = w( -1 ) = 0.25, w( 2) = w(-2 ) =0.05
从层间的运算公式可以看出,从底层到高层,图像大小以倍率减小。此时,金字塔顶部两张云图的运动小于一个像素,满足基本风矢的计算条件,可根据基本风矢公式计算出其标准的风矢场。具体的算法流程为:
1)最高层即第n 层计算标准风矢
当其为非奇异矩阵时式(5.3.6)可得到解析解,其中所有的和都是在邻域Ω 上的点得到的。
2)计算到第i 层时
3)循环第2 步,直至计算出第0 层风矢场。
块匹配方法采用均匀采样的方式进行计算,所以实现简单。但是灵活性不强,而且受限于采样方式,不能有效地在特征密集区域反映数据特征。
基于金字塔的风矢度量模型能够自适应地搜索窗口大小,运算速度快,具有较强的鲁棒性。在我们的实验中,基于金字塔的风矢度量模型得到的结果更加符合实际情况(见图2(a)和(b))。
图2
(a)基于块匹配模型获得的21:00 时刻的风矢场。(b)基于金字塔模型获得的21:00 时刻的风矢场
(注:图中风矢标志中绿点标示风矢起始点,红线标示风矢的方向和大小)
其中,fn 为风矢初始点所在邻域,tn 为风矢目标点所在邻域,fn 和tn 具有相同的邻域个数N,C 为风矢个数。
表1
上述两种模型在不同的块尺寸下,所得的平均准确度。由数据可见,基于金字塔和图像特征方法的准确度均优于块匹配方法。(测试数据为IR1_2030.mat, IR1_2100.mat, IR1_2130.mat)
在通常云图数据量比较庞大,因而在云导风的风矢场计算中,减少数据量加快算法运行速度十分关键。基于块匹配的方法,自适应性比较弱。如果块采样过于密集则运算量过大,而块采样稀疏则匹配结果不佳。因而我们建议采用基于金字塔和特征点相结合的方法。通过获取特征点,在一开始就避开变化较小(即零风矢)的区域,大幅降低数据量。
[1]国家卫星气象中心,风云二号C星业务产品与卫星数据格式释用手册[S],2005.11,内部资料.
[2]Schmetz J, Holmlund K, Hoffman J, et al, Operational Cloud-Motion Winds from Meteosat Infrared Images[J], J Appl Meteor,1993,32(7):1206-1225.
[3]许建民.FY-2气象卫星的数据处理[J].上海航天,2005,26(5):82-86.