发明名称 一种基于压缩感知的计算多光谱成像图谱的重构方法
摘要 本发明公开了一种基于压缩感知的计算多光谱成像图谱的重构方法。本发明的方法基于由望远镜成像模块,数字微反射镜DMD及控制模块,光学汇聚透镜,滤光片轮,光电倍增管PMT,数据采集模块和多光谱图像重构模块组成的系统实现。系统按照预先所设置调制模板的数学形式调制目标场景的空间信息,再经由后续数据计算方法反演得到目标场景的多光谱图像。本发明的优点是:无需任何扫描,目标场景图像重构所需的数据量少,探测灵敏度高,结构简单。
申请公布号 CN104154998B 申请公布日期 2016.03.30
申请号 CN201410401863.X 申请日期 2014.08.15
申请人 中国科学院上海技术物理研究所 发明人 马彦鹏;舒嵘;亓洪兴;葛明锋;王义坤;王雨曦
分类号 G01J3/28(2006.01)I;G06T5/50(2006.01)I 主分类号 G01J3/28(2006.01)I
代理机构 上海新天专利代理有限公司 31213 代理人 郭英
主权项 一种基于压缩感知的计算多光谱成像图谱的重构方法,它基于包括望远镜成像模块(1),数字微反射镜DMD及控制模块(2),光学汇聚透镜(3),滤光片轮(4),单像素光电倍增管PMT(5),数据采集模块(6)和多光谱图像重构模块(7)的计算多光谱成像系统实现;其特征在于方法如下:由控制模块(2)加载到数字微反射镜DMD上的调制模板依次为:θ<sub>1</sub>(m,n),θ<sub>2</sub>(m,n)...θ<sub>k</sub>(m,n)其中:k为调制次数,θ<sub>k</sub>(m,n)为高斯随机分布的m×n阶矩阵;在每个调制模板调制过程中,由数据采集模块(6)采集,得到的k组数字信号依次为:f<sub>1</sub>(x,y,λ<sub>1</sub>),f<sub>1</sub>(x,y,λ<sub>2</sub>)...f<sub>1</sub>(x,y,λ<sub>L</sub>)f<sub>2</sub>(x,y,λ<sub>1</sub>),f<sub>2</sub>(x,y,λ<sub>2</sub>)...f<sub>2</sub>(x,y,λ<sub>L</sub>)……f<sub>k</sub>(x,y,λ<sub>1</sub>),f<sub>k</sub>(x,y,λ<sub>2</sub>)...f<sub>k</sub>(x,y,λ<sub>L</sub>)其中:x,y为目标场景的二维空间信息坐标;λ<sub>L</sub>为滤光片轮(4)允许通过的波段;对上述数据具体处理步骤如下:1)对目标场景的第一个谱段的图像重构,将数据采集模块(6)采集到的信号整理写成如下(A)式:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><msub><mi>f</mi><mn>1</mn></msub><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><msub><mi>&lambda;</mi><mi>1</mi></msub><mo>)</mo></mrow><mo>=</mo><msub><mi>&theta;</mi><mn>1</mn></msub><mrow><mo>(</mo><mi>m</mi><mo>,</mo><mi>n</mi><mo>)</mo></mrow><mo>&CenterDot;</mo><mi>&phi;</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><msub><mi>&lambda;</mi><mi>1</mi></msub><mo>)</mo></mrow><mo>+</mo><msub><mi>e</mi><mn>11</mn></msub></mrow></mtd></mtr><mtr><mtd><mrow><msub><mi>f</mi><mn>2</mn></msub><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><msub><mi>&lambda;</mi><mi>1</mi></msub><mo>)</mo></mrow><mo>=</mo><msub><mi>&theta;</mi><mn>2</mn></msub><mrow><mo>(</mo><mi>m</mi><mo>,</mo><mi>n</mi><mo>)</mo></mrow><mo>&CenterDot;</mo><mi>&phi;</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><msub><mi>&lambda;</mi><mi>1</mi></msub><mo>)</mo></mrow><mo>+</mo><msub><mi>e</mi><mn>21</mn></msub></mrow></mtd></mtr><mtr><mtd><mo>&CenterDot;</mo></mtd></mtr><mtr><mtd><mo>&CenterDot;</mo></mtd></mtr><mtr><mtd><mo>&CenterDot;</mo></mtd></mtr><mtr><mtd><mrow><msub><mi>f</mi><mi>k</mi></msub><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><msub><mi>&lambda;</mi><mi>1</mi></msub><mo>)</mo></mrow><mo>=</mo><msub><mi>&theta;</mi><mi>k</mi></msub><mrow><mo>(</mo><mi>m</mi><mo>,</mo><mi>n</mi><mo>)</mo></mrow><mo>&CenterDot;</mo><mi>&phi;</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><msub><mi>&lambda;</mi><mi>1</mi></msub><mo>)</mo></mrow><mo>+</mo><msub><mi>e</mi><mrow><mi>k</mi><mn>1</mn></mrow></msub></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mi>A</mi><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000869420030000011.GIF" wi="1598" he="415" /></maths>上式中,e<sub>11</sub>,e<sub>21</sub>...e<sub>k1</sub>为单像素光电倍增管PMT(5)的噪声;φ(x,y,λ<sub>1</sub>)为待重构的目标场景的第一个波段的图像,像素大小为:m×n;将(A)式用矩阵方程表示为如下(B)式:F=Θ·Φ+E   (B)上式中,F是由信号f<sub>1</sub>(x,y,λ<sub>1</sub>),f<sub>2</sub>(x,y,λ<sub>1</sub>)...f<sub>k</sub>(x,y,λ<sub>1</sub>)组成的k×1矩阵;Θ为k×N矩阵,行数k即为调制次数,列数N=m×n为调制模板θ<sub>k</sub>(m,n)的元数个数,Θ的每一行由对应的θ<sub>k</sub>(m,n)重新排列而成;Φ是由φ(x,y,λ<sub>1</sub>)组成的N×1矩阵;E是由e<sub>11</sub>,e<sub>21</sub>...e<sub>k1</sub>组成的k×1阶噪声矩阵;对于Φ,在离散余弦变换下,将其稀疏表示为如下(C)式:Φ=Ψ·α   (C)上式中,α为Φ的稀疏表示,它是一个N×1矩阵;Ψ是N×N阶离散余弦变换矩阵;于是,可以将(B)式重新表示为如下(D)式所示:F=Θ·Φ+E=Θ·Ψ·α+E=T·α+E   (D)上式中,T为k×N矩阵,(D)式中,只有α为未知数;图像重构的方法就是求解(D)式中的稀疏系数α,将其转化为如下式(E)的优化问题:<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><mtable><mtr><mtd><mrow><mover><mi>&alpha;</mi><mo>^</mo></mover><mo>=</mo><mi>arg</mi><mi> </mi><mi>m</mi><mi>i</mi><mi>n</mi><mo>|</mo><mo>|</mo><mi>&alpha;</mi><mo>|</mo><msub><mo>|</mo><msub><mi>L</mi><mn>1</mn></msub></msub><mo>,</mo></mrow></mtd><mtd><mrow><mi>s</mi><mi>t</mi><mo>.</mo></mrow></mtd><mtd><mrow><mi>F</mi><mo>=</mo><mi>T</mi><mo>&CenterDot;</mo><mi>&alpha;</mi></mrow></mtd></mtr></mtable><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mi>E</mi><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000869420030000021.GIF" wi="1478" he="93" /></maths>上式中,L<sub>1</sub>表示1范数,<img file="FDA0000869420030000022.GIF" wi="69" he="79" />为α的最优近似解;(E)式的优化求解算法步骤如下:第一步:初始化一个空矩阵I=[ ],残差矩阵R=F;第二步:将残差矩阵R与T中的每一列分别做内积,并找到内积最大的那一列,将本列取出并添加到矩阵I中;第三步:更新残差,R=F‑I·(I<sup>T</sup>·I)<sup>‑1</sup>·I<sup>T</sup>·F,其中I<sup>T</sup>为I的转置矩阵(I<sup>T</sup>·I)<sup>‑1</sup>为(I<sup>T</sup>·I)的逆矩阵;第四步:不断顺序循环第二歩和第三步,如果残差R满足:<img file="FDA0000869420030000031.GIF" wi="285" he="167" />则退出循环,然后转到第五步,其中<img file="FDA0000869420030000032.GIF" wi="166" he="167" />为矩阵R中的所有元素做平方然后求和,r为预先设定的误差门限,一般取r&lt;0.5;R<sub>i</sub>为第i次循环计算得到残差矩阵;第五步:最终(E)式求得的解为如下(F)式:<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><mover><mi>&alpha;</mi><mo>^</mo></mover><mo>=</mo><msup><mrow><mo>(</mo><msup><mi>I</mi><mi>T</mi></msup><mo>&CenterDot;</mo><mi>I</mi><mo>)</mo></mrow><mrow><mo>-</mo><mn>1</mn></mrow></msup><mo>&CenterDot;</mo><msup><mi>I</mi><mi>T</mi></msup><mo>&CenterDot;</mo><mi>F</mi><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mi>F</mi><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000869420030000033.GIF" wi="1380" he="118" /></maths>最终求得的第一个谱段的图像信息表示为如下式:<maths num="0004" id="cmaths0004"><math><![CDATA[<mrow><mi>&Phi;</mi><mo>=</mo><mi>&Psi;</mi><mo>&CenterDot;</mo><mover><mi>&alpha;</mi><mo>^</mo></mover><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mi>G</mi><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000869420030000034.GIF" wi="1086" he="79" /></maths>将(G)式中的N×1阶矩阵Φ重新排列成m×n阶矩阵即可得到该谱段目标场景的二维像;2)对于第二个谱段的图像重构,将数据采集模块(6)采集到的信号重新整理,也就是将步骤1)中的(A)式写成如下式:<maths num="0005" id="cmaths0005"><math><![CDATA[<mrow><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><msub><mi>f</mi><mn>1</mn></msub><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><msub><mi>&lambda;</mi><mn>2</mn></msub><mo>)</mo></mrow><mo>=</mo><msub><mi>&theta;</mi><mn>1</mn></msub><mrow><mo>(</mo><mi>m</mi><mo>,</mo><mi>n</mi><mo>)</mo></mrow><mo>&CenterDot;</mo><mi>&phi;</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><msub><mi>&lambda;</mi><mn>2</mn></msub><mo>)</mo></mrow><mo>+</mo><msub><mi>e</mi><mn>12</mn></msub></mrow></mtd></mtr><mtr><mtd><mrow><msub><mi>f</mi><mn>2</mn></msub><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><msub><mi>&lambda;</mi><mn>2</mn></msub><mo>)</mo></mrow><mo>=</mo><msub><mi>&theta;</mi><mn>2</mn></msub><mrow><mo>(</mo><mi>m</mi><mo>,</mo><mi>n</mi><mo>)</mo></mrow><mo>&CenterDot;</mo><mi>&phi;</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><msub><mi>&lambda;</mi><mn>2</mn></msub><mo>)</mo></mrow><mo>+</mo><msub><mi>e</mi><mn>22</mn></msub></mrow></mtd></mtr><mtr><mtd><mo>&CenterDot;</mo></mtd></mtr><mtr><mtd><mo>&CenterDot;</mo></mtd></mtr><mtr><mtd><mo>&CenterDot;</mo></mtd></mtr><mtr><mtd><mrow><msub><mi>f</mi><mi>k</mi></msub><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><msub><mi>&lambda;</mi><mn>2</mn></msub><mo>)</mo></mrow><mo>=</mo><msub><mi>&theta;</mi><mi>k</mi></msub><mrow><mo>(</mo><mi>m</mi><mo>,</mo><mi>n</mi><mo>)</mo></mrow><mo>&CenterDot;</mo><mi>&phi;</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><msub><mi>&lambda;</mi><mn>2</mn></msub><mo>)</mo></mrow><mo>+</mo><msub><mi>e</mi><mrow><mi>k</mi><mn>2</mn></mrow></msub></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mi>H</mi><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000869420030000035.GIF" wi="1580" he="415" /></maths>上式中,e<sub>12</sub>,e<sub>22</sub>...e<sub>k2</sub>为单像素光电倍增管PMT(5)的噪声;φ(x,y,λ<sub>2</sub>)为待重构的目标场景的第二个波段的图像,像素大小为:m×n;同理,依次类推,对于第L个谱段的图像重构,将步骤1)中的(A)式写成如下式:<maths num="0006" id="cmaths0006"><math><![CDATA[<mrow><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><msub><mi>f</mi><mn>1</mn></msub><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><msub><mi>&lambda;</mi><mi>L</mi></msub><mo>)</mo></mrow><mo>=</mo><msub><mi>&theta;</mi><mn>1</mn></msub><mrow><mo>(</mo><mi>m</mi><mo>,</mo><mi>n</mi><mo>)</mo></mrow><mo>&CenterDot;</mo><mi>&phi;</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><msub><mi>&lambda;</mi><mi>L</mi></msub><mo>)</mo></mrow><mo>+</mo><msub><mi>e</mi><mrow><mn>1</mn><mi>L</mi></mrow></msub></mrow></mtd></mtr><mtr><mtd><mrow><msub><mi>f</mi><mn>2</mn></msub><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><msub><mi>&lambda;</mi><mi>L</mi></msub><mo>)</mo></mrow><mo>=</mo><msub><mi>&theta;</mi><mn>2</mn></msub><mrow><mo>(</mo><mi>m</mi><mo>,</mo><mi>n</mi><mo>)</mo></mrow><mo>&CenterDot;</mo><mi>&phi;</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><msub><mi>&lambda;</mi><mi>L</mi></msub><mo>)</mo></mrow><mo>+</mo><msub><mi>e</mi><mrow><mn>2</mn><mi>L</mi></mrow></msub></mrow></mtd></mtr><mtr><mtd><mo>&CenterDot;</mo></mtd></mtr><mtr><mtd><mo>&CenterDot;</mo></mtd></mtr><mtr><mtd><mo>&CenterDot;</mo></mtd></mtr><mtr><mtd><mrow><msub><mi>f</mi><mi>k</mi></msub><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><msub><mi>&lambda;</mi><mi>L</mi></msub><mo>)</mo></mrow><mo>=</mo><msub><mi>&theta;</mi><mi>k</mi></msub><mrow><mo>(</mo><mi>m</mi><mo>,</mo><mi>n</mi><mo>)</mo></mrow><mo>&CenterDot;</mo><mi>&phi;</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><msub><mi>&lambda;</mi><mi>L</mi></msub><mo>)</mo></mrow><mo>+</mo><msub><mi>e</mi><mrow><mi>k</mi><mi>L</mi></mrow></msub></mrow></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mi>I</mi><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000869420030000041.GIF" wi="1598" he="413" /></maths>上式中,e<sub>1L</sub>,e<sub>2L</sub>...e<sub>kL</sub>为单像素光电倍增管PMT(5)的噪声;φ(x,y,λ<sub>L</sub>)为待重构的目标场景的第L个波段的图像,像素大小为:m×n;对第2到第L个谱段的图像重构,采用上述步骤1)的处理方法,最终得到目标场景的多光谱图像。
地址 200083 上海市虹口区玉田路500号