发明名称 基于三维全变差稀疏先验的高光谱解混压缩感知方法
摘要 本发明公开了一种基于三维全变差稀疏先验的高光谱解混压缩感知方法,用于解决现有联合光谱解混的高光谱图像压缩感知算法精度低的技术问题。技术方案是采用随机观测矩阵从原始数据中抽取少量的样本作为压缩数据。重建过程,根据解混压缩感知模型,从光谱库中选择适当的光谱作为的模型中的端元矩阵,进而引入丰度值矩阵的三维全变差稀疏先验,通过求解受限的线性优化问题,精确地求解丰度值矩阵。最后使用线性混合模型重建原始数据。在HYDICE卫星拍摄的urban数据上当压缩比为1:20时,归一化的均方误差(normalized mean squared error,NMSE)小于0.09,当压缩比为1:10时,归一化均方误差同样小于0.08,相对于已有的压缩感知类算法精度提升10%以上。
申请公布号 CN103871087B 申请公布日期 2016.07.13
申请号 CN201410102950.5 申请日期 2014.03.20
申请人 西北工业大学 发明人 魏巍;张磊;张艳宁;李飞
分类号 G06T9/00(2006.01)I 主分类号 G06T9/00(2006.01)I
代理机构 西北工业大学专利中心 61204 代理人 王鲜凯
主权项 一种基于三维全变差稀疏先验的高光谱解混压缩感知方法,其特征在于包括以下步骤:步骤一、对于高光谱图像<img file="FDA0000980069670000011.GIF" wi="578" he="93" />其中每一个像素的光谱x<sub>i</sub>表示成所有端元<img file="FDA0000980069670000012.GIF" wi="578" he="85" />的线性组合,如下:x<sub>i</sub>=Wh<sub>i</sub>           (1)其中,n<sub>p</sub>表示空间上包含的像素数目,n<sub>b</sub>表示波段数量,<img file="FDA0000980069670000013.GIF" wi="159" he="61" />为对应的丰度值向量;整个数据X表示成丰度值矩阵<img file="FDA0000980069670000014.GIF" wi="551" he="94" />和端元矩阵W的乘积:X=WH        (2)在H中,行方向是光谱维,每一行代表不同像素的光谱在同一个端元上的投影;列方向是空间维,每一列代表一个像素的光谱在不同端元上的投影;步骤二、采用满足高斯随机分布的归一化随机观测矩阵<img file="FDA0000980069670000015.GIF" wi="193" he="46" />对原始数据进行随机采样,得到压缩数据<img file="FDA0000980069670000016.GIF" wi="227" he="55" />如下:F=AX=AWH        (3)其中,m表示对长度为n<sub>b</sub>的信号压缩后的长度,m<n<sub>b</sub>;步骤三、对于有限的成像场景,根据场景信息从光谱库中抽取n<sub>e</sub>个光谱组成端元矩阵W;步骤四、(1)在H的光谱维上应用一维的全变差稀疏先验,结合H空间维上的稀疏性,得到H的三维全变差稀疏先验,如下:<img file="FDA0000980069670000017.GIF" wi="1590" he="191" />其中,e<sub>j</sub>和ε<sub>j</sub>分别表示<img file="FDA0000980069670000018.GIF" wi="75" he="48" />和<img file="FDA0000980069670000019.GIF" wi="69" he="54" />空间中的第j个单位向量;TV(x)描述的是<img file="FDA00009800696700000110.GIF" wi="139" he="54" />的全变差,D<sub>i</sub>(x)表示x梯度中的第i个分量;公式(4)中的第一部分表示H空间维上的二维全变差稀疏先验,其中对应的D<sub>i</sub>(·)为二维梯度;第二部分表示H光谱维上的一维全变差稀疏先验,其中对应的D<sub>i</sub>(·)为一维梯度;(2)构建丰度值的其他先验;将线性解混模型中常用的丰度值先验引入,分别是混合光谱在不同端元上丰度值投影非负且全和为1的限制,如下:<maths num="0001"><math><![CDATA[<mrow><msubsup><mn>1</mn><msub><mi>n</mi><mi>e</mi></msub><mi>T</mi></msubsup><mi>H</mi><mo>=</mo><msubsup><mn>1</mn><msub><mi>n</mi><mi>p</mi></msub><mi>T</mi></msubsup><mo>,</mo><mi>H</mi><mo>&gt;</mo><mn>0</mn><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>5</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000980069670000021.GIF" wi="1317" he="75" /></maths>其中,<img file="FDA0000980069670000022.GIF" wi="54" he="63" />和<img file="FDA0000980069670000023.GIF" wi="57" he="71" />是全部元素为1,长度分别为n<sub>e</sub>和n<sub>p</sub>的向量;(3)构建丰度值矩阵H的重建模型;结合公式(3)、(4)和(5)得到如下的重建模型:<maths num="0002"><math><![CDATA[<mrow><mtable><mtr><mtd><mrow><munder><mi>min</mi><mi>H</mi></munder><munderover><mo>&Sigma;</mo><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><msub><mi>n</mi><mi>p</mi></msub></munderover><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><msub><mi>n</mi><mi>e</mi></msub></munderover><mo>|</mo><msub><mi>D</mi><mi>i</mi></msub><mrow><mo>(</mo><msub><mi>He</mi><mi>j</mi></msub><mo>)</mo></mrow><mo>|</mo><mo>+</mo><munderover><mo>&Sigma;</mo><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><msub><mi>n</mi><mi>e</mi></msub></munderover><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><msub><mi>n</mi><mi>p</mi></msub></munderover><mo>|</mo><msub><mi>D</mi><mi>i</mi></msub><mrow><mo>(</mo><msubsup><mi>&epsiv;</mi><mi>j</mi><mi>T</mi></msubsup><mi>H</mi><mo>)</mo></mrow><mo>|</mo></mrow></mtd></mtr><mtr><mtd><mrow><mi>s</mi><mo>.</mo><mi>t</mi><mo>.</mo><mi>A</mi><mi>W</mi><mi>H</mi><mo>=</mo><mi>F</mi><mo>,</mo><msubsup><mn>1</mn><msub><mi>n</mi><mi>e</mi></msub><mi>T</mi></msubsup><mi>H</mi><mo>=</mo><msubsup><mn>1</mn><msub><mi>n</mi><mi>p</mi></msub><mi>T</mi></msubsup><mo>,</mo><mi>H</mi><mo>&gt;</mo><mn>0</mn></mrow></mtd></mtr></mtable><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>6</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000980069670000024.GIF" wi="1421" he="231" /></maths>为了方便后续求解,向公式(6)中引入分离变量v<sub>ij</sub>=D<sub>i</sub>(He<sub>j</sub>),<img file="FDA0000980069670000025.GIF" wi="283" he="85" />得到:<maths num="0003"><math><![CDATA[<mrow><mtable><mtr><mtd><mrow><munder><mi>min</mi><mrow><mi>H</mi><mo>,</mo><msub><mi>&upsi;</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>,</mo><msub><mi>u</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub></mrow></munder><munderover><mo>&Sigma;</mo><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><msub><mi>n</mi><mi>p</mi></msub></munderover><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><msub><mi>n</mi><mi>e</mi></msub></munderover><mo>|</mo><msub><mi>v</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>|</mo><mo>+</mo><munderover><mo>&Sigma;</mo><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><msub><mi>n</mi><mi>e</mi></msub></munderover><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><msub><mi>n</mi><mi>p</mi></msub></munderover><mo>|</mo><msub><mi>u</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>|</mo></mrow></mtd></mtr><mtr><mtd><mrow><mi>s</mi><mo>.</mo><mi>t</mi><mo>.</mo><msub><mi>v</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>=</mo><msub><mi>D</mi><mi>i</mi></msub><mrow><mo>(</mo><msub><mi>He</mi><mi>j</mi></msub><mo>)</mo></mrow><mo>,</mo><mo>&ForAll;</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>;</mo><msub><mi>u</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>=</mo><msub><mi>D</mi><mi>i</mi></msub><mrow><mo>(</mo><msubsup><mi>&epsiv;</mi><mi>j</mi><mi>T</mi></msubsup><mi>H</mi><mo>)</mo></mrow><mo>,</mo><mo>&ForAll;</mo><mi>i</mi><mo>,</mo><mi>j</mi><mo>;</mo><mi>A</mi><mi>W</mi><mi>H</mi><mo>=</mo><mi>F</mi><mo>,</mo><msubsup><mn>1</mn><msub><mi>n</mi><mi>e</mi></msub><mi>T</mi></msubsup><mi>H</mi><mo>=</mo><msubsup><mn>1</mn><msub><mi>n</mi><mi>p</mi></msub><mi>T</mi></msubsup><mo>,</mo><mi>H</mi><mo>&gt;</mo><mn>0</mn></mrow></mtd></mtr></mtable><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>7</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000980069670000026.GIF" wi="1806" he="238" /></maths>(4)求解公式(7)得到丰度值矩阵H的估计<img file="FDA0000980069670000027.GIF" wi="75" he="62" />具体求解过程如下:①使用增广拉格朗日方法,根据公式(7)构建H的增广拉格朗日方程<img file="FDA0000980069670000028.GIF" wi="171" he="62" /><img file="FDA0000980069670000029.GIF" wi="1740" he="437" />其中,α=2<sup>5</sup>,κ=2<sup>5</sup>,β=2<sup>13</sup>,γ=2<sup>5</sup>为二次项惩罚系数,λ<sub>ij</sub>,π<sub>ij</sub>,Π,υ为对应的拉格朗日乘子,初始化每个乘子的所有元素为0,||·||<sub>F</sub>表示Frobenius范数;②固定拉格朗日乘子和H,更新分离变量v<sub>ij</sub>,u<sub>ij</sub>;形式如下:<maths num="0004"><math><![CDATA[<mrow><mtable><mtr><mtd><mrow><msub><mi>v</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>=</mo><mi>max</mi><mo>{</mo><mo>|</mo><msub><mi>D</mi><mi>i</mi></msub><mrow><mo>(</mo><msub><mi>He</mi><mi>j</mi></msub><mo>)</mo></mrow><mo>-</mo><mfrac><msub><mi>&lambda;</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mi>&alpha;</mi></mfrac><mo>|</mo><mo>-</mo><mfrac><mn>1</mn><mi>&alpha;</mi></mfrac><mo>,</mo><mn>0</mn><mo>}</mo><mi>sgn</mi><mo>(</mo><mrow><msub><mi>D</mi><mi>i</mi></msub><mrow><mo>(</mo><mrow><msub><mi>He</mi><mi>j</mi></msub></mrow><mo>)</mo></mrow><mo>-</mo><mfrac><msub><mi>&lambda;</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mi>&alpha;</mi></mfrac></mrow><mo>)</mo></mrow></mtd></mtr><mtr><mtd><mrow><msub><mi>u</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>=</mo><mi>max</mi><mo>{</mo><mo>|</mo><msub><mi>D</mi><mi>i</mi></msub><mrow><mo>(</mo><msubsup><mi>&epsiv;</mi><mi>j</mi><mi>T</mi></msubsup><mi>H</mi><mo>)</mo></mrow><mo>-</mo><mfrac><msub><mi>&pi;</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mi>&kappa;</mi></mfrac><mo>|</mo><mo>-</mo><mfrac><mn>1</mn><mi>&kappa;</mi></mfrac><mo>,</mo><mn>0</mn><mo>}</mo><mi>sgn</mi><mo>(</mo><mrow><msub><mi>D</mi><mi>i</mi></msub><mrow><mo>(</mo><mrow><msubsup><mi>&epsiv;</mi><mi>j</mi><mi>T</mi></msubsup><mi>H</mi></mrow><mo>)</mo></mrow><mo>-</mo><mfrac><msub><mi>&pi;</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mi>&kappa;</mi></mfrac></mrow><mo>)</mo></mrow></mtd></mtr></mtable><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>9</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA00009800696700000210.GIF" wi="1566" he="326" /></maths>③固定拉格朗日乘子和分离变量v<sub>ij</sub>,u<sub>ij</sub>,采用梯度下降法更新H;假定第k次更新,由H<sup>k</sup>得到H<sup>k+1</sup>,形式如下:<img file="FDA00009800696700000211.GIF" wi="1373" he="71" />其中,<img file="FDA0000980069670000031.GIF" wi="141" he="65" />为<img file="FDA0000980069670000032.GIF" wi="162" he="67" />关于H一阶导数,形式如下:<img file="FDA0000980069670000033.GIF" wi="1590" he="327" />式中,τ为梯度下降步长;其计算分为初始化和细化两步;在初始化过程中,当第一次更新H<sup>0</sup>时,τ采用最速下降法进行初始化,之后更新H<sup>k</sup>,k=1,2,...时,对τ采用两点步长梯度法进行初始化;两点步长梯度法具体形式如下:<img file="FDA0000980069670000034.GIF" wi="1542" he="166" />其中,tr(·)表示矩阵的迹;τ的细化过程具体如下:(a)代入初始化的τ,根据公式(10)得到H<sup>k+1</sup>,设置参数δ=3.2×10<sup>‑4</sup>,η=0.6和计数器c=0;(b)判断H<sup>k+1</sup>是否满足如下的条件:<img file="FDA0000980069670000035.GIF" wi="1542" he="111" />如果不满足,更新计数器c=c+1;如果c<5,缩小步长τ=τ·η,继续循环判断是否满足(13);否则τ由最速下降法确定,然后由公式(13)得到更新的H<sup>k+1</sup>;否则,得到更新的H<sup>k+1</sup>;④固定更新后的v<sub>ij</sub>,u<sub>ij</sub>和H,使用如下公式更新拉格朗日乘子:<maths num="0005"><math><![CDATA[<mrow><mtable><mtr><mtd><mrow><msubsup><mi>&lambda;</mi><mrow><mi>i</mi><mi>j</mi></mrow><mrow><mi>k</mi><mo>+</mo><mn>1</mn></mrow></msubsup><mo>=</mo><msubsup><mi>&lambda;</mi><mrow><mi>i</mi><mi>j</mi></mrow><mi>k</mi></msubsup><mo>-</mo><mi>&alpha;</mi><mo>&lsqb;</mo><msub><mi>D</mi><mi>i</mi></msub><mrow><mo>(</mo><msub><mi>He</mi><mi>j</mi></msub><mo>)</mo></mrow><mo>-</mo><msub><mi>v</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>&rsqb;</mo><mo>,</mo></mrow></mtd><mtd><mrow><msubsup><mi>&pi;</mi><mrow><mi>i</mi><mi>j</mi></mrow><mrow><mi>k</mi><mo>+</mo><mn>1</mn></mrow></msubsup><mo>=</mo><msubsup><mi>&pi;</mi><mrow><mi>i</mi><mi>j</mi></mrow><mi>k</mi></msubsup><mo>-</mo><mi>&kappa;</mi><mo>&lsqb;</mo><msub><mi>D</mi><mi>i</mi></msub><mrow><mo>(</mo><msubsup><mi>&epsiv;</mi><mi>j</mi><mi>T</mi></msubsup><mi>H</mi><mo>)</mo></mrow><mo>-</mo><msub><mi>u</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>&rsqb;</mo></mrow></mtd></mtr><mtr><mtd><mrow><msup><mo>&Pi;</mo><mrow><mi>k</mi><mo>+</mo><mn>1</mn></mrow></msup><mo>=</mo><msup><mo>&Pi;</mo><mi>k</mi></msup><mo>-</mo><mi>&beta;</mi><mrow><mo>(</mo><mi>A</mi><mi>W</mi><mi>H</mi><mo>-</mo><mi>F</mi><mo>)</mo></mrow><mo>,</mo></mrow></mtd><mtd><mrow><msup><mi>&upsi;</mi><mrow><mi>k</mi><mo>+</mo><mn>1</mn></mrow></msup><mo>=</mo><msup><mi>&upsi;</mi><mi>k</mi></msup><mo>-</mo><mi>&gamma;</mi><msup><mrow><mo>(</mo><msubsup><mn>1</mn><msub><mi>n</mi><mi>e</mi></msub><mi>T</mi></msubsup><mi>H</mi><mo>-</mo><msubsup><mn>1</mn><msub><mi>n</mi><mi>p</mi></msub><mi>T</mi></msubsup><mo>)</mo></mrow><mi>T</mi></msup></mrow></mtd></mtr></mtable><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>14</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000980069670000036.GIF" wi="1558" he="173" /></maths>⑤循环步骤②、③和④直至收敛,得到的最终估计的丰度值矩阵<img file="FDA0000980069670000037.GIF" wi="75" he="63" />步骤五、结合选择的端元矩阵W和线性混合模型公式(2)得到重建的高光谱数据<img file="FDA0000980069670000038.GIF" wi="75" he="62" /><maths num="0006"><math><![CDATA[<mrow><mover><mi>X</mi><mo>^</mo></mover><mo>=</mo><mi>W</mi><mover><mi>H</mi><mo>^</mo></mover><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>15</mn><mo>)</mo></mrow><mo>.</mo></mrow>]]></math><img file="FDA0000980069670000039.GIF" wi="1262" he="63" /></maths>
地址 710072 陕西省西安市友谊西路127号