发明名称 基于X波段雷达图像和粒子群优化的海表面流信息提取方法
摘要 本发明提出一种基于X波段雷达图像和粒子群优化的海表面流信息提取方法,属于海浪参数反演技术领域。本方法首先初始化粒子的位置、速度等参数,并提供了船速初始化法和估流初始化法来确定粒子的初始位置,然后将初始的位置作为粒子所经的最佳位置,通过计算各粒子的适应度函数的值,选取值最小的粒子的位置作为种群的当前最佳位置,然后更新粒子在下一代的速度和位置,并计算更新后的位置的适应度函数的值,根据该值更新各粒子的最佳位置以及种群的最佳位置,不停迭代,直到达到了停止条件结束。本方法提高了海流信息估计的准确性,大大降低了海流反演过程中陷入局部最优的可能性。
申请公布号 CN102662164A 申请公布日期 2012.09.12
申请号 CN201210073712.7 申请日期 2012.03.20
申请人 哈尔滨工程大学 发明人 刘利强;戴运桃;范志超;张丽娜
分类号 G01S7/41(2006.01)I;G01S13/89(2006.01)I 主分类号 G01S7/41(2006.01)I
代理机构 北京永创新实专利事务所 11121 代理人 周长琪
主权项 1.一种基于X波段雷达图像和粒子群优化的海表面流信息提取方法,其特征在于,该方法包括如下步骤:步骤一、初始化参数,所述的参数包括粒子位置、粒子速度、惯性权重的最大值和最小值、自身学习因子、全局学习因子、最大迭代次数、以及迭代停止阈值,具体是:粒子位置<img file="FDA0000145051420000011.GIF" wi="335" he="74" />其中,<img file="FDA0000145051420000012.GIF" wi="160" he="63" />为第i个粒子海表面流的x,y方向分量大小,i=1,2,...,n,表示第i个粒子,n≥1为粒子的种群数量,l表示种群代数,初始l=1;粒子速度<img file="FDA0000145051420000013.GIF" wi="241" he="76" />r<sub>x</sub>,r<sub>y</sub>为服从标准正态分布的随机数;惯性权重的最大值w<sub>max</sub>和最小值w<sub>min</sub>:0<w<sub>max</sub>≤1,0≤w<sub>min</sub>≤w<sub>max</sub>;自身学习因子c<sub>1</sub>>0;全局学习因子c<sub>2</sub>>0;最大迭代次数l<sub>max</sub>;迭代停止阀值ξ≥2;步骤二、首先,对于每个粒子,将该粒子在第l=1代时的粒子位置作为该粒子当前的最佳位置<img file="FDA0000145051420000014.GIF" wi="74" he="57" /><maths num="0001"><![CDATA[<math><mrow><msubsup><mi>P</mi><mi>i</mi><mi>b</mi></msubsup><mo>=</mo><mrow><mo>(</mo><msubsup><mi>U</mi><mrow><mi>x</mi><mo>,</mo><mi>i</mi></mrow><mi>l</mi></msubsup><mo>,</mo><msubsup><mi>U</mi><mrow><mi>y</mi><mo>,</mo><mi>i</mi></mrow><mi>l</mi></msubsup><mo>)</mo></mrow><mo>=</mo><msubsup><mi>U</mi><mi>i</mi><mi>l</mi></msubsup><mo>,</mo></mrow></math>]]></maths>i=1,2,...,n;然后,确定当代各粒子的适应度函数<img file="FDA0000145051420000016.GIF" wi="126" he="57" />的值:<maths num="0002"><![CDATA[<math><mrow><mi>F</mi><mrow><mo>(</mo><msubsup><mi>U</mi><mi>i</mi><mi>l</mi></msubsup><mo>)</mo></mrow><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><msup><mi>i</mi><mo>&prime;</mo></msup><mo>=</mo><mn>1</mn></mrow><mrow><msub><mi>n</mi><mn>3</mn></msub><mo>/</mo><mn>2</mn><mo>+</mo><mn>1</mn></mrow></munderover><munderover><mi>&Sigma;</mi><mrow><msup><mi>j</mi><mo>&prime;</mo></msup><mo>=</mo><mn>1</mn></mrow><msub><mi>n</mi><mn>2</mn></msub></munderover><munderover><mi>&Sigma;</mi><mrow><msup><mi>k</mi><mo>&prime;</mo></msup><mo>=</mo><mn>1</mn></mrow><msub><mi>n</mi><mn>1</mn></msub></munderover><mrow><mo>(</mo><msup><mrow><mo>|</mo><msub><mi>w</mi><msup><mi>i</mi><mo>&prime;</mo></msup></msub><mo>-</mo><msup><mi>w</mi><mo>&prime;</mo></msup><mrow><mo>(</mo><mover><msup><mi>k</mi><mrow><msup><mi>j</mi><mo>&prime;</mo></msup><mo>,</mo><msup><mi>k</mi><mo>&prime;</mo></msup></mrow></msup><mo>&RightArrow;</mo></mover><mo>)</mo></mrow><mo>|</mo></mrow><mi>&mu;</mi></msup><mo>&CenterDot;</mo><mi>A</mi><mo>)</mo></mrow></mrow></math>]]></maths><maths num="0003"><![CDATA[<math><mrow><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><msup><mi>i</mi><mo>&prime;</mo></msup><mo>=</mo><mn>1</mn></mrow><mrow><msub><mi>n</mi><mn>3</mn></msub><mo>/</mo><mn>2</mn><mo>+</mo><mn>1</mn></mrow></munderover><munderover><mi>&Sigma;</mi><mrow><msup><mi>j</mi><mo>&prime;</mo></msup><mo>=</mo><mn>1</mn></mrow><msub><mi>n</mi><mn>2</mn></msub></munderover><munderover><mi>&Sigma;</mi><mrow><msup><mi>k</mi><mo>&prime;</mo></msup><mo>=</mo><mn>1</mn></mrow><msub><mi>n</mi><mn>1</mn></msub></munderover><mrow><mo>(</mo><msup><mrow><mo>|</mo><msub><mi>w</mi><msup><mi>i</mi><mo>&prime;</mo></msup></msub><mo>-</mo><mrow><mo>(</mo><mi>p</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><msqrt><mfrac><mrow><mi>g</mi><mo>|</mo><mo>|</mo><mover><msup><mi>k</mi><mrow><msup><mi>j</mi><mo>&prime;</mo></msup><mo>,</mo><msup><mi>k</mi><mo>&prime;</mo></msup></mrow></msup><mo>&RightArrow;</mo></mover><mo>|</mo><mo>|</mo></mrow><mrow><mi>p</mi><mo>+</mo><mn>1</mn></mrow></mfrac><mi>tanh</mi><mrow><mo>(</mo><mfrac><mrow><mo>|</mo><mo>|</mo><mover><msup><mi>k</mi><mrow><msup><mi>j</mi><mo>&prime;</mo></msup><mo>,</mo><msup><mi>k</mi><mo>&prime;</mo></msup></mrow></msup><mo>&RightArrow;</mo></mover><mo>|</mo><mo>|</mo><mi>d</mi></mrow><mrow><mi>p</mi><mo>+</mo><mn>1</mn></mrow></mfrac><mo>)</mo></mrow></msqrt><mo>-</mo><msubsup><mi>k</mi><mi>x</mi><mrow><msup><mi>j</mi><mo>&prime;</mo></msup><mo>,</mo><msup><mi>k</mi><mo>&prime;</mo></msup></mrow></msubsup><msubsup><mi>U</mi><mrow><mi>x</mi><mo>,</mo><mi>i</mi></mrow><mi>l</mi></msubsup><mo>-</mo><msubsup><mi>k</mi><mi>y</mi><mrow><msup><mi>j</mi><mo>&prime;</mo></msup><mo>,</mo><msup><mi>k</mi><mo>&prime;</mo></msup></mrow></msubsup><msubsup><mi>U</mi><mrow><mi>y</mi><mo>,</mo><mi>i</mi></mrow><mi>l</mi></msubsup><mo>+</mo><mi>B</mi><mo>|</mo></mrow><mi>&mu;</mi></msup><mo>&CenterDot;</mo><mi>A</mi><mo>)</mo></mrow></mrow></math>]]></maths>其中,i=1,2,...,n,w<sub>i′</sub>表示雷达图像经傅里叶变换后波频率的实际值,<img file="FDA0000145051420000019.GIF" wi="167" he="68" />表示在海流为<img file="FDA00001450514200000110.GIF" wi="49" he="57" />时对应的波频率的理论值,<img file="FDA00001450514200000111.GIF" wi="362" he="76" />是波数矢量,w<sub>i′</sub>、<img file="FDA00001450514200000112.GIF" wi="85" he="57" />由32幅或64幅连续的X波段雷达图像经三维傅里叶变换得到;n<sub>3</sub>为X波段雷达图像的数量,n<sub>3</sub>=32或n<sub>3</sub>=64;在32幅或64幅连续的雷达图像上的相同位置,采用一个矩形框来选定雷达图像的一部分,n<sub>1</sub>,n<sub>2</sub>分别等于矩形框中雷达图像的横向和纵向像素点的个数;d是水深;g是重力加速度;μ>0为误差函数阶次;A>0为能量加权量,设X波段雷达图像能量谱为<img file="FDA00001450514200000113.GIF" wi="383" he="72" />当<maths num="0004"><![CDATA[<math><mrow><mi>A</mi><mo>=</mo><mi>fft</mi><msup><mrow><mo>(</mo><msub><mi>w</mi><msup><mi>i</mi><mo>&prime;</mo></msup></msub><mo>,</mo><msubsup><mi>k</mi><mi>x</mi><mrow><msup><mi>j</mi><mo>&prime;</mo></msup><mo>,</mo><msup><mi>k</mi><mo>&prime;</mo></msup></mrow></msubsup><mo>,</mo><msubsup><mi>k</mi><mi>y</mi><mrow><msup><mi>j</mi><mo>&prime;</mo></msup><mo>,</mo><msup><mi>k</mi><mo>&prime;</mo></msup></mrow></msubsup><mo>)</mo></mrow><mi>f</mi></msup></mrow></math>]]></maths>时,表示对差值<img file="FDA00001450514200000115.GIF" wi="279" he="94" />进行f次方的能量加权;p为色散关系的阶次,是关于i′,j′,k′的函数,确定p=0,1,2三种取值下的差值e(p,i′,j′,k′),选取其中差值最大所对应的p值,差值e(p,i′,j′,k′)的公式为:<maths num="0005"><![CDATA[<math><mrow><mi>e</mi><mrow><mo>(</mo><mi>p</mi><mo>,</mo><msup><mi>i</mi><mo>&prime;</mo></msup><mo>,</mo><msup><mi>j</mi><mo>&prime;</mo></msup><mo>,</mo><msup><mi>k</mi><mo>&prime;</mo></msup><mo>)</mo></mrow><mo>=</mo><msub><mi>w</mi><msup><mi>i</mi><mo>&prime;</mo></msup></msub><mo>-</mo><mrow><mo>(</mo><mi>p</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><msqrt><mfrac><mrow><mi>g</mi><mo>|</mo><mo>|</mo><mover><msup><mi>k</mi><mrow><msup><mi>j</mi><mo>&prime;</mo></msup><mo>,</mo><msup><mi>k</mi><mo>&prime;</mo></msup></mrow></msup><mo>&RightArrow;</mo></mover><mo>|</mo><mo>|</mo></mrow><mrow><mi>p</mi><mo>+</mo><mn>1</mn></mrow></mfrac><mi>tanh</mi><mrow><mo>(</mo><mfrac><mrow><mo>|</mo><mo>|</mo><mover><msup><mi>k</mi><mrow><msup><mi>j</mi><mo>&prime;</mo></msup><mo>,</mo><msup><mi>k</mi><mo>&prime;</mo></msup></mrow></msup><mo>&RightArrow;</mo></mover><mo>|</mo><mo>|</mo><mi>d</mi></mrow><mrow><mi>p</mi><mo>+</mo><mn>1</mn></mrow></mfrac><mo>)</mo></mrow></msqrt><mo>-</mo><msubsup><mi>k</mi><mi>x</mi><mrow><msup><mi>j</mi><mo>&prime;</mo></msup><mo>,</mo><msup><mi>k</mi><mo>&prime;</mo></msup></mrow></msubsup><msubsup><mi>U</mi><mrow><mi>x</mi><mo>,</mo><mi>i</mi></mrow><mi>l</mi></msubsup><mo>-</mo><msubsup><mi>k</mi><mi>y</mi><mrow><msup><mi>j</mi><mo>&prime;</mo></msup><msup><mrow><mo>,</mo><mi>k</mi></mrow><mo>&prime;</mo></msup></mrow></msubsup><msubsup><mi>U</mi><mrow><mi>y</mi><mo>,</mo><mi>i</mi></mrow><mi>l</mi></msubsup><mo>+</mo><mi>B</mi></mrow></math>]]></maths>其中,B表示混叠效应影响,B=m·w<sub>N</sub>,参数<img file="FDA00001450514200000117.GIF" wi="449" he="157" />foor(x)表示对x取下整,w<sub>N</sub>表示雷达图像的截断频率;最后,选取适应度函数的值最小的粒子,将该粒子的位置记录为第l=1代时的种群所发现的最佳位置P<sup>g</sup>;步骤三、更新各粒子在第l+1代的位移<img file="FDA0000145051420000021.GIF" wi="94" he="68" /><maths num="0006"><![CDATA[<math><mrow><mover><msubsup><mi>&upsi;</mi><mi>i</mi><mrow><mi>l</mi><mo>+</mo><mn>1</mn></mrow></msubsup><mo>&RightArrow;</mo></mover><mo>=</mo><mi>&omega;</mi><mo>&CenterDot;</mo><mover><msubsup><mi>&upsi;</mi><mi>i</mi><mi>l</mi></msubsup><mo>&RightArrow;</mo></mover><mo>+</mo><msub><mi>c</mi><mn>1</mn></msub><msubsup><mi>r</mi><mn>1</mn><mi>l</mi></msubsup><mo>&CenterDot;</mo><mover><mrow><msubsup><mi>U</mi><mi>i</mi><mi>l</mi></msubsup><msubsup><mi>P</mi><mi>i</mi><mi>b</mi></msubsup></mrow><mo>&RightArrow;</mo></mover><mo>+</mo><msub><mi>c</mi><mn>2</mn></msub><msubsup><mi>r</mi><mn>2</mn><mi>l</mi></msubsup><mo>&CenterDot;</mo><mover><mrow><msubsup><mi>U</mi><mi>i</mi><mi>l</mi></msubsup><msup><mi>P</mi><mi>g</mi></msup></mrow><mo>&RightArrow;</mo></mover><mo>,</mo></mrow></math>]]></maths>i=1,2,...,n其中,惯性权重<img file="FDA0000145051420000023.GIF" wi="637" he="124" />u≥0为单调控制量,取u=1;<img file="FDA0000145051420000024.GIF" wi="87" he="57" />为第l代的[0,1]区间服从平均分布的随机数;步骤四、更新各粒子在第l+1代的位置<img file="FDA0000145051420000025.GIF" wi="98" he="57" /><maths num="0007"><![CDATA[<math><mrow><msubsup><mi>U</mi><mi>i</mi><mrow><mi>l</mi><mo>+</mo><mn>1</mn></mrow></msubsup><mo>=</mo><msubsup><mi>U</mi><mi>i</mi><mi>l</mi></msubsup><mo>+</mo><mover><msubsup><mi>&upsi;</mi><mi>i</mi><mrow><mi>l</mi><mo>+</mo><mn>1</mn></mrow></msubsup><mo>&RightArrow;</mo></mover><mo>,</mo></mrow></math>]]></maths>i=1,2,...,n其中,第l+1代的各粒子的位置<img file="FDA0000145051420000027.GIF" wi="378" he="74" />步骤五、首先,确定各粒子在第l+1代的适应度函数<img file="FDA0000145051420000028.GIF" wi="179" he="57" />i=1,2,...,n:<maths num="0008"><![CDATA[<math><mrow><mi>F</mi><mrow><mo>(</mo><msubsup><mi>U</mi><mi>i</mi><mrow><mi>l</mi><mo>+</mo><mn>1</mn></mrow></msubsup><mo>)</mo></mrow><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><msup><mi>i</mi><mo>&prime;</mo></msup><mo>=</mo><mn>1</mn></mrow><mrow><msub><mi>n</mi><mn>3</mn></msub><mo>/</mo><mn>2</mn><mo>+</mo><mn>1</mn></mrow></munderover><munderover><mi>&Sigma;</mi><mrow><msup><mi>j</mi><mo>&prime;</mo></msup><mo>=</mo><mn>1</mn></mrow><msub><mi>n</mi><mn>2</mn></msub></munderover><munderover><mi>&Sigma;</mi><mrow><msup><mi>k</mi><mo>&prime;</mo></msup><mo>=</mo><mn>1</mn></mrow><msub><mi>n</mi><mn>1</mn></msub></munderover><mrow><mo>(</mo><msup><mrow><mo>|</mo><msub><mi>w</mi><msup><mi>i</mi><mo>&prime;</mo></msup></msub><mo>-</mo><mrow><mo>(</mo><mi>p</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><msqrt><mfrac><mrow><mi>g</mi><mo>|</mo><mo>|</mo><mover><msup><mi>k</mi><mrow><msup><mi>j</mi><mo>&prime;</mo></msup><mo>,</mo><msup><mi>k</mi><mo>&prime;</mo></msup></mrow></msup><mo>&RightArrow;</mo></mover><mo>|</mo><mo>|</mo></mrow><mrow><mi>p</mi><mo>+</mo><mn>1</mn></mrow></mfrac><mi>tanh</mi><mrow><mo>(</mo><mfrac><mrow><mo>|</mo><mo>|</mo><mover><msup><mi>k</mi><mrow><msup><mi>j</mi><mo>&prime;</mo></msup><mo>,</mo><msup><mi>k</mi><mo>&prime;</mo></msup></mrow></msup><mo>&RightArrow;</mo></mover><mo>|</mo><mo>|</mo><mi>d</mi></mrow><mrow><mi>p</mi><mo>+</mo><mn>1</mn></mrow></mfrac><mo>)</mo></mrow></msqrt><mo>-</mo><msubsup><mi>k</mi><mi>x</mi><mrow><msup><mi>j</mi><mo>&prime;</mo></msup><mo>,</mo><msup><mi>k</mi><mo>&prime;</mo></msup></mrow></msubsup><msubsup><mi>U</mi><mrow><mi>x</mi><mo>,</mo><mi>i</mi></mrow><mrow><mi>l</mi><mo>+</mo><mn>1</mn></mrow></msubsup><mo>-</mo><msubsup><mi>k</mi><mi>y</mi><mrow><msup><mi>j</mi><mo>&prime;</mo></msup><mo>,</mo><msup><mi>k</mi><mo>&prime;</mo></msup></mrow></msubsup><msubsup><mi>U</mi><mrow><mi>y</mi><mo>,</mo><mi>i</mi></mrow><mrow><mi>l</mi><mo>+</mo><mn>1</mn></mrow></msubsup><mo>+</mo><mi>B</mi><mo>|</mo></mrow><mi>&mu;</mi></msup><mo>&CenterDot;</mo><mi>A</mi><mo>)</mo></mrow></mrow></math>]]></maths>然后,更新每个粒子的最佳位置,具体是:对每个粒子,比较该粒子当前的最佳位置的适应度函数的值与该粒子在第l+1代的适应度函数的值,将其中较小的适应度函数的值对应的位置更新为该粒子的最佳位置;步骤六、更新种群的最佳位置P<sup>g</sup>,具体:设<img file="FDA00001450514200000210.GIF" wi="49" he="57" />为当前各粒子的最佳位置<img file="FDA00001450514200000211.GIF" wi="91" he="73" />中适应度函数值最小的位置,比较当前种群最佳位置的适应度函数值F(P<sup>g</sup>)与<img file="FDA00001450514200000212.GIF" wi="49" he="57" />的适应度函数值<img file="FDA00001450514200000213.GIF" wi="150" he="57" />若<img file="FDA00001450514200000214.GIF" wi="329" he="57" />则令<img file="FDA00001450514200000215.GIF" wi="184" he="57" />否则,保持P<sup>g</sup>的值不变;步骤七、更新l=l+1,若更新后的迭代次数l大于最大迭代次数l<sub>max</sub>或者种群的最佳位置P<sup>g</sup>在连续的ξ次迭代中都未发生变化,则结束本方法,否则转步骤三继续执行。
地址 150001 黑龙江省哈尔滨市南岗区南通大街145号1号楼