发明名称 基于图像块组稀疏编码与成对映射的含噪高光谱图像超分辨率重构方法
摘要 本发明涉及一种基于图像块组稀疏编码与成对映射的高光谱含噪图像超分辨率重构方法。该方法分为模型训练和图像重构两个部分。在模型训练阶段,首先利用清晰图像块构造训练集,并将训练集图像块分组构成图像块组;随后利用高斯混合模型训练字典及成对映射关系。在图像重构阶段,首先将图像块分组;然后判断其所属的高斯类,选择相应的字典;最后利用成对映射方法调整其稀疏编码系数,从而求得无噪的高空间分辨率高光谱图像。
申请公布号 CN106296583A 申请公布日期 2017.01.04
申请号 CN201610620280.5 申请日期 2016.08.01
申请人 西北工业大学 发明人 李映;杨静;钟依彤
分类号 G06T3/40(2006.01)I 主分类号 G06T3/40(2006.01)I
代理机构 西北工业大学专利中心 61204 代理人 刘新琼
主权项 一种基于图像块组稀疏编码与成对映射的含噪高光谱图像超分辨率重构方法,其特征在于步骤如下:步骤1:构造图像块组步骤1a:输入无噪高分辨率HR训练图像块集合X={x<sub>i</sub>},对集合X中的图像块进行下采样操作,得到相应的无噪低分辨率LR训练图像块集合Y={y<sub>i</sub>},从而得到成对的图像块集合{x<sub>i</sub>,y<sub>i</sub>};步骤1b:按照欧式距离将这些成对的图像块分为N组,每组含有M对相似的图像块<img file="FDA0001066201320000011.GIF" wi="574" he="70" />步骤1c:将每一组相似的图像块对<img file="FDA0001066201320000012.GIF" wi="265" he="68" />拉直为列向量x<sub>n,m</sub>∈R<sup>P</sup>,y<sub>n,m</sub>∈R<sup>p</sup>,其中P与p分别为高/低分辨率图像块所含像素的个数,计算其相应的均值向量μ<sub>x</sub>,μ<sub>y</sub>;<maths num="0001"><math><![CDATA[<mrow><msub><mi>&mu;</mi><mi>x</mi></msub><mo>=</mo><mfrac><mn>1</mn><mi>M</mi></mfrac><munderover><mo>&Sigma;</mo><mrow><mi>m</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></munderover><msub><mi>x</mi><mrow><mi>n</mi><mo>,</mo><mi>m</mi></mrow></msub><mo>,</mo><msub><mi>&mu;</mi><mi>y</mi></msub><mo>=</mo><mfrac><mn>1</mn><mi>M</mi></mfrac><munderover><mo>&Sigma;</mo><mrow><mi>m</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></munderover><msub><mi>y</mi><mrow><mi>n</mi><mo>,</mo><mi>m</mi></mrow></msub><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001066201320000013.GIF" wi="1230" he="127" /></maths>计算<img file="FDA0001066201320000014.GIF" wi="665" he="63" />记<img file="FDA0001066201320000015.GIF" wi="1115" he="71" /><img file="FDA0001066201320000016.GIF" wi="157" he="63" />即为成对的高/低分辨率图像块组;步骤2:高斯混合模型学习步骤2a:随机初始化K对高斯模型{N<sub>x</sub>(μ<sub>xk</sub>,Σ<sub>xk</sub>),N<sub>y</sub>(μ<sub>yk</sub>,Σ<sub>yk</sub>)},k=1,…,K,其中μ,Σ分别为模型的均值和方差;步骤2b:利用期望最大化EM算法求解公式(2)所示的优化问题,得到参数μ<sub>xk</sub>,Σ<sub>xk</sub>,μ<sub>yk</sub>,Σ<sub>yk</sub>;<maths num="0002"><math><![CDATA[<mrow><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><munder><mrow><mi>arg</mi><mi>max</mi></mrow><mrow><msub><mi>&mu;</mi><mrow><mi>x</mi><mi>k</mi></mrow></msub><mo>,</mo><msub><mi>&Sigma;</mi><mrow><mi>x</mi><mi>k</mi></mrow></msub></mrow></munder><munderover><mi>&Sigma;</mi><mrow><mi>n</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></munderover><mi>ln</mi><mrow><mo>(</mo><mrow><munderover><mi>&Sigma;</mi><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>K</mi></munderover><msub><mi>&pi;</mi><mrow><mi>x</mi><mi>k</mi></mrow></msub><munderover><mi>&Pi;</mi><mrow><mi>m</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></munderover><msub><mi>N</mi><mi>x</mi></msub><mrow><mo>(</mo><mrow><msub><mover><mi>x</mi><mo>&OverBar;</mo></mover><mrow><mi>n</mi><mo>,</mo><mi>m</mi></mrow></msub><mo>|</mo><msub><mi>&mu;</mi><mrow><mi>x</mi><mi>k</mi></mrow></msub><mo>,</mo><msub><mi>&Sigma;</mi><mrow><mi>x</mi><mi>k</mi></mrow></msub></mrow><mo>)</mo></mrow></mrow><mo>)</mo></mrow></mrow></mtd></mtr><mtr><mtd><mrow><munder><mrow><mi>arg</mi><mi>max</mi></mrow><mrow><msub><mi>&mu;</mi><mrow><mi>y</mi><mi>k</mi></mrow></msub><mo>,</mo><msub><mi>&Sigma;</mi><mrow><mi>y</mi><mi>k</mi></mrow></msub></mrow></munder><munderover><mi>&Sigma;</mi><mrow><mi>n</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></munderover><mi>ln</mi><mrow><mo>(</mo><mrow><munderover><mi>&Sigma;</mi><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>K</mi></munderover><msub><mi>&pi;</mi><mrow><mi>y</mi><mi>k</mi></mrow></msub><munderover><mi>&Pi;</mi><mrow><mi>m</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></munderover><msub><mi>N</mi><mi>y</mi></msub><mrow><mo>(</mo><mrow><msub><mover><mi>y</mi><mo>&OverBar;</mo></mover><mrow><mi>n</mi><mo>,</mo><mi>m</mi></mrow></msub><mo>|</mo><msub><mi>&mu;</mi><mrow><mi>y</mi><mi>k</mi></mrow></msub><mo>,</mo><msub><mi>&Sigma;</mi><mrow><mi>y</mi><mi>k</mi></mrow></msub></mrow><mo>)</mo></mrow></mrow><mo>)</mo></mrow></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001066201320000017.GIF" wi="1350" he="293" /></maths>其中π<sub>xk</sub>,π<sub>yk</sub>为权值因子;步骤3:构造高/低分辨率字典对对于每一对高斯模型{N<sub>x</sub>(μ<sub>xk</sub>,Σ<sub>xk</sub>),N<sub>y</sub>(μ<sub>yk</sub>,Σ<sub>yk</sub>)}中的参数{Σ<sub>xk</sub>,Σ<sub>yk</sub>},利用奇异值分解SVD算法将其分解为:<img file="FDA0001066201320000021.GIF" wi="820" he="77" />其中Λ<sub>xk</sub>,Λ<sub>yk</sub>为由Σ<sub>xk</sub>,Σ<sub>yk</sub>的特征值组成的对角阵,<img file="FDA0001066201320000022.GIF" wi="229" he="63" />即为K对所求的高/低分辨率字典对;步骤4:映射关系学习步骤4a:由公式(3)判断每一组高/低分辨率图像块对<img file="FDA0001066201320000023.GIF" wi="474" he="70" />所对应的高斯模型k,其中c为常数;<maths num="0003"><math><![CDATA[<mrow><munder><mi>argmax</mi><mi>k</mi></munder><mi>ln</mi><mi> </mi><mi>P</mi><mrow><mo>(</mo><mi>k</mi><mo>|</mo><msub><mover><mi>Y</mi><mo>&OverBar;</mo></mover><mi>n</mi></msub><mo>)</mo></mrow><mo>=</mo><munder><mi>argmax</mi><mi>k</mi></munder><msubsup><mi>&Sigma;</mi><mrow><mi>m</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></msubsup><mi>ln</mi><mi> </mi><msub><mi>N</mi><mi>y</mi></msub><mrow><mo>(</mo><msub><mover><mi>y</mi><mo>&OverBar;</mo></mover><mrow><mi>n</mi><mo>,</mo><mi>m</mi></mrow></msub><mo>|</mo><mn>0</mn><mo>,</mo><msub><mi>&Sigma;</mi><mrow><mi>y</mi><mi>k</mi></mrow></msub><mo>)</mo></mrow><mo>-</mo><mi>ln</mi><mi> </mi><mi>c</mi><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>3</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001066201320000024.GIF" wi="1550" he="102" /></maths>步骤4b:由公式(4)求解图像块的稀疏表示系数,m=1,…,M,sgn(·)为符号函数;<maths num="0004"><math><![CDATA[<mrow><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><msub><mover><mi>&alpha;</mi><mo>^</mo></mover><mrow><mi>h</mi><mi>m</mi></mrow></msub><mo>=</mo><mi>sgn</mi><mrow><mo>(</mo><mrow><msup><mrow><mo>(</mo><msubsup><mi>D</mi><mi>h</mi><mi>k</mi></msubsup><mo>)</mo></mrow><mi>T</mi></msup><msub><mover><mi>x</mi><mo>&OverBar;</mo></mover><mrow><mi>n</mi><mo>,</mo><mi>m</mi></mrow></msub></mrow><mo>)</mo></mrow><mo>&CenterDot;</mo><mi>max</mi><mrow><mo>(</mo><mrow><mo>|</mo><msup><mrow><mo>(</mo><msubsup><mi>D</mi><mi>h</mi><mi>k</mi></msubsup><mo>)</mo></mrow><mi>T</mi></msup><msub><mover><mi>x</mi><mo>&OverBar;</mo></mover><mrow><mi>n</mi><mo>,</mo><mi>m</mi></mrow></msub><mo>|</mo><mo>-</mo><mn>1</mn><mo>/</mo><mn>2</mn><mo>,</mo><mn>0</mn></mrow><mo>)</mo></mrow></mrow></mtd></mtr><mtr><mtd><mrow><msub><mover><mi>&alpha;</mi><mo>^</mo></mover><mrow><mi>l</mi><mi>m</mi></mrow></msub><mo>=</mo><mi>sgn</mi><mrow><mo>(</mo><mrow><msup><mrow><mo>(</mo><msubsup><mi>D</mi><mi>l</mi><mi>k</mi></msubsup><mo>)</mo></mrow><mi>T</mi></msup><msub><mover><mi>y</mi><mo>&OverBar;</mo></mover><mrow><mi>n</mi><mo>,</mo><mi>m</mi></mrow></msub></mrow><mo>)</mo></mrow><mo>&CenterDot;</mo><mi>max</mi><mrow><mo>(</mo><mrow><mo>|</mo><msup><mrow><mo>(</mo><msubsup><mi>D</mi><mi>l</mi><mi>k</mi></msubsup><mo>)</mo></mrow><mi>T</mi></msup><msub><mover><mi>y</mi><mo>&OverBar;</mo></mover><mrow><mi>n</mi><mo>,</mo><mi>m</mi></mrow></msub><mo>|</mo><mo>-</mo><mn>1</mn><mo>/</mo><mn>2</mn><mo>,</mo><mn>0</mn></mrow><mo>)</mo></mrow></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>4</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001066201320000025.GIF" wi="1517" he="174" /></maths>步骤4c:由公式(5)学习高低图像块稀疏表示系数映射关系;<maths num="0005"><math><![CDATA[<mrow><msub><mover><mi>C</mi><mo>^</mo></mover><mi>k</mi></msub><mo>=</mo><mi>arg</mi><munder><mrow><mi>m</mi><mi>i</mi><mi>n</mi></mrow><msub><mi>C</mi><mi>k</mi></msub></munder><mo>|</mo><mo>|</mo><msub><mi>A</mi><mi>h</mi></msub><mo>-</mo><msub><mi>C</mi><mi>k</mi></msub><msub><mi>A</mi><mi>l</mi></msub><mo>|</mo><msup><mo>|</mo><mn>2</mn></msup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>5</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001066201320000026.GIF" wi="1230" he="94" /></maths>其中,<img file="FDA0001066201320000027.GIF" wi="574" he="79" />若存在不同组的图像块对<img file="FDA0001066201320000028.GIF" wi="158" he="63" />属于同一高斯模型k,则<img file="FDA0001066201320000029.GIF" wi="51" he="72" />为其均值;步骤5:输出K对高/低分辨率字典<img file="FDA00010662013200000210.GIF" wi="229" he="71" />以及成对映射关系<img file="FDA00010662013200000211.GIF" wi="166" he="103" />步骤6:图像重构步骤6a:输入低空间分辨率含噪高光谱图像Z,K对高/低分辨率字典<img file="FDA00010662013200000212.GIF" wi="227" he="70" />以及成对映射关系<img file="FDA00010662013200000213.GIF" wi="171" he="103" />初始化Z<sup>(0)</sup>=Z,t=1,HR高光谱图像G的初始化估计值<img file="FDA00010662013200000214.GIF" wi="84" he="62" />设为Z的s倍双三次插值图像;步骤6b:迭代规则化<img file="FDA00010662013200000215.GIF" wi="547" he="70" />δ为规则化常数;步骤6c:估计噪声标准差<img file="FDA00010662013200000216.GIF" wi="555" he="87" />η为常数;步骤6d:在高光谱图像Z<sup>(t)</sup>的各个波段图像中,搜索相似的图像块,构造图像块组<img file="FDA00010662013200000217.GIF" wi="585" he="70" />并计算每一组的均值μ<sub>z</sub>;步骤6e:针对每一组图像块<img file="FDA0001066201320000031.GIF" wi="81" he="63" />执行以下操作:由公式(6)选择后验概率最大的高斯模型k,c为常数;<maths num="0006"><math><![CDATA[<mrow><munder><mrow><mi>m</mi><mi>a</mi><mi>x</mi></mrow><mi>k</mi></munder><mi>ln</mi><mi> </mi><mi>P</mi><mrow><mo>(</mo><mi>k</mi><mo>|</mo><msub><mover><mi>Z</mi><mo>&OverBar;</mo></mover><mi>n</mi></msub><mo>)</mo></mrow><mo>=</mo><munder><mrow><mi>m</mi><mi>a</mi><mi>x</mi></mrow><mi>k</mi></munder><msubsup><mi>&Sigma;</mi><mrow><mi>m</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></msubsup><mi>ln</mi><mi> </mi><msub><mi>N</mi><mi>y</mi></msub><mrow><mo>(</mo><msub><mover><mi>z</mi><mo>&OverBar;</mo></mover><mrow><mi>n</mi><mo>,</mo><mi>m</mi></mrow></msub><mo>|</mo><mn>0</mn><mo>,</mo><msub><mi>&Sigma;</mi><mrow><mi>y</mi><mi>k</mi></mrow></msub><mo>+</mo><msup><mi>&sigma;</mi><mn>2</mn></msup><mo>)</mo></mrow><mo>-</mo><mi>ln</mi><mi> </mi><mi>c</mi><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>6</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001066201320000032.GIF" wi="1517" he="87" /></maths>由公式(7)计算含噪图像块组<img file="FDA0001066201320000033.GIF" wi="58" he="63" />在相应字典<img file="FDA0001066201320000034.GIF" wi="64" he="69" />下的稀疏编码<img file="FDA0001066201320000035.GIF" wi="275" he="78" /><maths num="0007"><math><![CDATA[<mrow><msub><mover><mi>&beta;</mi><mo>^</mo></mover><mrow><mi>l</mi><mi>m</mi></mrow></msub><mo>=</mo><mi>sgn</mi><mrow><mo>(</mo><msup><mrow><mo>(</mo><msubsup><mi>D</mi><mi>l</mi><mi>k</mi></msubsup><mo>)</mo></mrow><mi>T</mi></msup><msub><mover><mi>z</mi><mo>&OverBar;</mo></mover><mrow><mi>n</mi><mo>,</mo><mi>m</mi></mrow></msub><mo>)</mo></mrow><mo>&CenterDot;</mo><mi>m</mi><mi>a</mi><mi>x</mi><mrow><mo>(</mo><mo>|</mo><msup><mrow><mo>(</mo><msubsup><mi>D</mi><mi>l</mi><mi>k</mi></msubsup><mo>)</mo></mrow><mi>T</mi></msup><msub><mover><mi>z</mi><mo>&OverBar;</mo></mover><mrow><mi>n</mi><mo>,</mo><mi>m</mi></mrow></msub><mo>|</mo><mo>-</mo><mn>1</mn><mo>/</mo><mn>2</mn><mo>,</mo><mn>0</mn><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>7</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001066201320000036.GIF" wi="1422" he="77" /></maths>由公式(8)求解含噪低分辨率图像块组<img file="FDA0001066201320000037.GIF" wi="52" he="63" />相应的无噪高分辨率图像块组<img file="FDA0001066201320000038.GIF" wi="302" he="75" /><maths num="0008"><math><![CDATA[<mrow><msub><mover><mi>g</mi><mo>^</mo></mover><mrow><mi>n</mi><mo>,</mo><mi>m</mi></mrow></msub><mo>=</mo><msubsup><mi>D</mi><mi>h</mi><mi>k</mi></msubsup><msub><mover><mi>C</mi><mo>^</mo></mover><mi>k</mi></msub><msub><mover><mi>&beta;</mi><mo>^</mo></mover><mrow><mi>l</mi><mi>m</mi></mrow></msub><mo>+</mo><msub><mi>&mu;</mi><mi>z</mi></msub><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>8</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0001066201320000039.GIF" wi="1173" he="78" /></maths>步骤6f:整合无噪高分辨率图像块组<img file="FDA00010662013200000310.GIF" wi="162" he="70" />得到无噪高分辨率高光谱图像<img file="FDA00010662013200000311.GIF" wi="103" he="62" />步骤6g:t=t+1,返回步骤6b继续执行,直到达到最大迭代次数T<sub>max</sub>,输出高空间分辨率高光谱图像<img file="FDA00010662013200000312.GIF" wi="74" he="59" />
地址 710072 陕西省西安市友谊西路127号