主页

当前位置: 主页 > 学术动态 > 正文
姓名 位置
时间

公元2023年,小雪。退休后的“杠精”苏格拉顶教授照旧穿着他那招牌破皮袄来到罗马市中心的钟楼广场练摊,晒太阳。练摊主要是拉着人聊天,把天聊死,这几乎是他最惬意的事情。他也是这个广场上唯一一个吃肉夹馍而不擦嘴的人,他说这是教授最后的倔强。当然,别人可不在乎这些,只是想办法躲开。可是,今天却不同,竟然有人找上门了。你看,刚从广州开完国际会议的国际级青年人才格小孔特意找苏格拉顶讨论问题,因为新近的多次会议都有人在质疑计算成像的分辨率问题,据说,苏格拉顶这个希腊1.5级教授(一级教授最高,其次是二级)最懂行。于是,就有了下面的对话。

1.悖论

格小孔向苏格拉顶施了一礼,说:“苏格拉顶教授,我请教您一个问题。在广州的遥感大会上有位专家提问——如果一幅低分辨率的图像可以超分辨率重建的话,那么重建后的图像依然可以看做是较低分辨率的图像;再用一次超分辨率重建算法,它的分辨率会进一步提升;接着,反复不停地用超分辨率重建算法,一直迭代下去,那么图像的分辨率就可以无限提升。按照这个逻辑,我们成像时,完全没有必要设计大型复杂的光学系统,成像分辨率再低都不怕,因为我们可以超分辨率重建啊。因此,有了超分辨率这一神器,我们再也不需要去研究那些各种各样的成像方法了。苏格拉顶,你说对吗?”

图片

图 超分辨率重建

苏格拉顶说:“年轻人,你说的其实是两个问题,一个是纯粹的超分辨率重建,另一个是光学系统的设计问题。我们先看一个通俗的例子——你的生命从一个细胞开始长到现在,每天都在长高一点。按照你的说法,那么你现在应该至少有几十米高了。可是,你现在的身高还不是只有1.68米?”

格小孔脸都红了,身高对他来说是个大问题,忙分辩道:“苏格拉顶,你跑题了。这跟人的成长不同。人在幼儿期和青春期成长得比较快,但到了成年以后再也不会长高了,而且,身高与遗传有关。我们现在讨论的是超分辨率的问题。众所周知,超分辨率算法的确能提升图像的分辨率,从早期的插值算法到现在的深度学习,算法越来越牛,而且,在很多领域中已经应用了。你看,我们现在用的手机,天上的卫星遥感,都在使用一些超分辨率算法。”

图片图片

图 基于插值与深度学习的超分辨率

苏格拉顶说:“年轻人,你认为超分辨率与人的成长不同,但有一点却是相同的,那就是你认为人的成长是有条件的,而忽略了超分辨率算法的条件,这才是问题的关键。”

格小孔说:“苏格拉顶,你看,光学系统的MTF和点扩散函数,具体体现其实就是弥散斑的大小。如果你的探测器像元尺寸为6.5 μm,而你设计的‘计算光学系统’光学分辨率大小为26 μm,甚至更大,而你说经过计算成像重建之后,却能够满足探测器成像要求,也就是重建出来的图像分辨率(艾里斑半径)小于13μm(对应两个像元尺寸)。如果按照你的说法,你们在卫星上运行的这些光学载荷,1 m分辨率的可以经过你的算法就能得到0.5 m的分辨率,你说对吗?”

图片

图 光学系统的MTF和点扩散函数

苏格拉顶说:“格小孔,你的这个说法看起来似乎很正确,但却忽略了退化的原因。退化原因不同,退化模型自然不同,图像恢复的结果自然也不同。理想成像模型是不存在退化的,也就是点扩散函数值恒为1;而一旦有了退化,就需要用退化模型来解决图像恢复了。当然,在光学系统设计得像差很小的时候,我们也可以认为成像已经接近理想状态。”

图片

图 图像退化示例

格小孔说:“苏格拉顶,你说的这个就有点抽象了。”

2.释疑

苏格拉顶说:“格小孔,我给你举个例子吧。村里有100户人家,在没有银行之前,每户人家都把钱存在自己家里自己管起来。很显然,每户人家都知道自己有多少钱。后来,村里开设了一家银行,银行有利息,于是这100户人家都把钱存到银行里,银行开一个存款单,每户人家根据存款单就知道自己有多少钱。可是只有一个银行风险比较大,于是,村里又新增了4家不同的银行,每家银行利息不同,特点也不同。村民觉得不能把钱全放在一个银行,于是在每家银行都会存一些钱,同样,银行都会给一个存款单。很显然,即使存在多家银行,每户人家也都知道自己有多少钱,只是稍微麻烦一点,把存款单加起来算算就行。当然,如果考虑利息的话,那就更复杂一点。”

格小孔说:“你是说银行就相当于探测器的像元,是吧?没有银行的情况就相当于传统成像,每户人家相当于物方的一个点,每个像元存储这个点的强度值,其实就相当于这户人家的存款,一一对应。

图片

图 每个像元存储点的强度值

“只有一家银行时,只有一个存储单元,只能存一个数值,但这个数值包含的是全村人的总存款信息,也就是物方信息只有一个像素的像,要解出每户人家的存款必须要有一个查找表(Look Up Table,LUT),而且这个查找表必须要有空间位置信息和存款额信息,才能还原每户的存款信息,也就是成像。很显然,这种成像方式需要大量的预先知识,也就是那个查找表,才可能成出像来。这基本不太可能,因为建立查找表的代价甚至比成像还高,不值得。

图片

图 查找表(Look Up Table,LUT)

“你说的第三种情况就更有意思了,有5家银行,100户储户,看起来情况比第二种好一些,但还是需要一个查找表才行,而且比第二种情况还复杂的是它还需要一种计算规则,才能一一对应算出空间每一个点的像素值,缺一不可。”

“苏格拉顶,我看这个行不通啊!”

苏格拉顶说:“年轻人,你说的很有道理。我们再进一步考虑这个问题,假设有100户人家和100个银行呢?”

格小孔说:“苏格拉顶,你是不是疯了!没有人会这么做的。”

苏格拉顶说:“是啊,格小孔。很多人背地里叫我杠精,其实杠精是不分边界条件毫无逻辑推理而言的不讲道理之人。我只是举个例子,又不是让你真去开100家银行。”

图片

格小孔说:“好吧,那我顺着你的逻辑来。100个储户是固定的,100家银行的每一家既可以只服务专门一个储户,实际上就是做了这个储户的管家,也可以服务这100个储户中的任何一个,是吧?”

苏格拉顶说:“很好。”

格小孔说:“苏格拉顶,我知道你为什么煞费苦心地设置100个储户和100家银行了。储户代表物方,银行对应的则是像方,设置100个储户就能与100个银行一一对应了,此时就是物像共轭的经典成像模式;如果允许储户在多个银行存钱,这就意味着物方一个点存储在像方多个像元中,如果要知道每个储户到底有多少存款,就需要拿出存单一一算一算就可以了。存单就是那个解译算法,不过,此时不需要查找表了,因为储户数和银行数是一致的。”

苏格拉顶点点头,说:“年轻人,你真是个人才!我推荐你当一个欧洲自然工程院院士吧,我的学生柏推图在那里注册了机构并做院长,300个W就够了。柏推图一直让我推荐人,给我点买肉夹馍的钱。”

格小孔脸一红,说:“苏格拉顶,我还年轻……我们还是继续讨论分辨率这个问题吧。我似乎明白了一点。”

苏格拉顶双手合十,说:“善哉善哉!我的学生柏推图本来也很聪明,可惜他一心只想当院士,结果,哎……”

格小孔打断他,说:“苏格拉顶,其实你已经说得很明白了。不过,按照传统的成像方法做不是已经很好了吗?何必还要这么费劲做像素间的混叠呢?很显然,这种方法要付出代价。”

图片

图 像素混叠

苏格拉顶说:“你说的对,这种代价是计算层面的,只要算力够就可以。难道你就没想过传统成像的代价吗?”

格小孔想了想,摇摇头。

苏格拉顶咬了一口肉夹馍,继续说:“传统成像最大的特点是物像共轭,物方一点与像方一点一一对应,但为了做到这一点,在光学系统设计上需要付出很高的代价,那就是修正诸如畸变、场曲、色散等各种像差,导致光学系统很复杂,想做小、做轻、低成本都很难。你看看你的iPhone 15手机摄像头都是凸出来的,都是这些原因。在航天应用中要做大口径,那就更不得了。不是有航天相机重量与口径三次方成正比这一说法吗?越大的口径,付出代价越高。你应该知道,光学系统的加工周期和成本与口径成指数关系啊!”

图片

图 手机镜头

格小孔说:“是的,苏格拉顶,在广州的会议上,就有专家是针对光学遥感的分辨率问题提出疑问。一个做计算光学系统设计的学者提出用低精度镜面做高精度成像的报告,吸引了很多人的眼球。但是,很多人都在质疑:低精度镜面的MTF比高精度镜面差了不少,需要做类似超分辨率图像重建的算法恢复出接近高精度镜面的图像。这听起来很好,低精度镜面意味着加工周期短了很多,成本也大幅降低,而航天光学相机载荷的研制往往都很长,成本也很高,300 mm口径的镜子至少需要9个月的周期,大口径就更长了,而且装调也很困难。但是,它的缺点是MTF下降,用传统光学测试评价,很显然,它处于劣势无疑,于是,它引入了重建算法,但这个算法需要一个合理的解释,才能被广泛认可,否则,很多人就可能得出一个不停做‘超分辨率重建算法可以无限提升分辨率’的悖论。”

图片

图 低精度镜面高精度成像

苏格拉顶说:“这个问题很及时。我问你一个问题,格小孔。100个储户在100家银行中都可以存钱,凭存单计算存款,这很容易理解,难道偏要逼着每个储户只能存一家银行吗?”

格小孔说:“这些我都能理解,但是你得说出一个道理啊!”

3.解惑

苏格拉顶说:“好的,格小孔。为了不引起其他争议,我们做一个假设,那就是光学系统的分辨率恰好符合探测器的采样频率,即光学系统的光学分辨率恰好等于两个探测器像元尺寸。当然,真实情况肯定不是这样,大多数情况是两个探测器像元尺寸大于光学分辨率,此时光学设计上存在一定的冗余,衍射极限一定能满足空间采样频率的需求,也就是采样后的分辨率就是成像的空间分辨率;还有一种情况是两个探测器像元尺寸小于光学分辨率,这种情况经常被称之为超采样,尽管空间分辨率看起来很高,但受限于衍射极限,在可分辨线对数的测试上却达不到采样频率的指标,很多人把这种情况俗称为‘光学镜头喂不饱探测器’,采样后的分辨率达不到应有的空间分辨率。”

图片

图 欠采样、正常采样和过采样

格小孔说:“苏格拉顶,你说直接一点吧。”

苏格拉顶说:“一开始你提出6.5 μm像元大小,计算光学系统的弥散斑覆盖了13.0 μm,也就是4个像元,这其实相当于一个储户把钱存在了四家银行,对吧?”

格小孔说:“那也不意味着每个储户都有存单依据啊。”

苏格拉顶说:“你说到了问题的关键。其实,在之前的遥感图像处理过程中,经常会用一种MTFC方法,也就是调制传递函数补偿方法,其目的也是要建立一个存款查找表,只不过是在求解反问题的时候,这个查找表没有办法真正建立起来,没办法,只能折中得到一个统计性的查找表。既然是统计性的,那就意味着建立了一个在概率上的约束,最后的求解并不准确,只是将多解问题进行了约束。”

格小孔说:“你的依据是什么?”

苏格拉顶说:“其实计算光学系统可以被认为是一种编码的光学系统,看成两部分组成:存在某些像差的光学系统+编码。如果把成像系统看成线性的,那么,存在某些像差的光学系统有一个点扩散函数h,这个编码可以认为是一个卷积核k,此时,整个系统的点扩散函数就是它们两个的卷积形式h*k。当然,像差和编码都会对MTF产生影响。

图片

图 卷积过程

“回到存单这样的对应关系上,我们可以假设光学系统的弥散斑覆盖了几个像素,理论上讲,从它的点扩散函数上就可以认为是储户的存单,分别能够还原每个储户的存款情况,也就是可以恢复出与‘理想’光学系统一样的成像结果。

“‘理想’光学系统则是一个储户存一个银行的模式,也就是说它不存在多个银行存款的单据,自然就不可能从其他银行提取款项。自然,你想用图像恢复算法重建一次,再做重建时,退化模型已经变了啊!也就是,不满足重建条件时,再做超分辨率重建已无意义,这才是最重要的。其实,这种情况在光学上对应的是系统的鲁棒性,也就是成像状态必须是稳定的,要求很高。

“而计算光学系统设计不同,它的目标恰恰就是每个储户都会对应有存单,也就是查找表要更准确。但是,它恰恰是一个非稳态的成像过程,查找表的求解也是个问题。现在很多人采用深度学习的方法,通过大量的数据训练,结果看起来还不错。”

格小孔说:“苏格拉顶,你说的其实包含了两个意思:一是针对图像的超分辨率重建问题,做完一次重建算法之后获得了一幅高分辨率的图像,但此时的高分辨率图像已经不满足该超分辨率重建的前提条件了,再做一次重建无益;二是采用了计算光学系统设计的镜头,其退化模型已经固定,甚至可以根据物理设计模型甚至用成像实验测试方法获得该模型,用它来做图像重建算法,可以获得与传统成像相同的一对一映射物像共轭关系。与超分辨率重建一样,该重建算法也只能用一次,而且只能对该成像结果使用;这也就是说,不可能把计算光学系统设计的重建算法应用在传统成像模型中。你说对吧?”

苏格拉顶说:“格小孔,你真聪明!超分辨率呢,其实可以理解为你买一个理财,这个理财要求你在银行里存不少于多少天,然后才能获得额外的更多的钱。很显然,理财是有门槛的,需要付出代价的,不可能平白无故多出钱来。这个门槛,其实就是超分辨率重建的条件。如果说你想用这笔钱再做一期理财,你得到了理财周期才能完成下一个,前提是这个理财还必须存在。你理解了吧?”

格小孔说:“有道理。我是不是可以进一步这样理解:压缩感知成像方法其实是做了100个人分别在10家公司工作,这10家公司互相有着复杂的股权关系,公司把钱存在4家银行,他们的收入既包含工资还有分红,那么每个人有多少钱就需要根据股权等复杂关系才能计算出来,是吧?”

苏格拉顶叹了口气,说:“你真是个好苗子!这个问题以后有机会了我再进一步讨论。可惜啊,我已经退休了,退休前几天我就把办公室的私人用品像蚂蚁搬家般全都搬走了,从此不再踏入一步。否则啊,我就把你纳入麾下。可惜,可惜……”

苏格拉顶喝了一口蝌蚪啃蜡(注:CocaCola初入中国时的翻译),叹了一口气,他的学生柏推图本应可以领军的……

图片

图 蝌蚪啃蜡

4.精减

格小孔说:“苏格拉顶,我还有个问题想请教你。你一直在强调计算光学系统设计,它与传统的光学系统设计到底有什么本质不同?带来的好处是什么?”

苏格拉顶说:“这个问题很好。成像光学无非两点主要功能:一是汇聚能量,二是建立物像投影关系。传统光学系统和计算光学系统在汇聚能量方面相差无几,可以忽略,我们只讨论物像关系。从数学的角度来看,传统光学系统设计方法,其实是建立了一个一对一的物像共轭映射关系;而计算光学系统设计则是打破了函数的一对一线性映射关系,建立了一种更为复杂的函数映射关系,目的是为了降低光学系统设计的难度。这是因为在实际光学系统设计时,需要综合考虑诸如球差、彗差、像散、像曲、畸变、色散等各种像差,以达到应用的目的,这个过程在数学上其实是在解方程组,需要多个方程来求解,一个方程就意味着镜片的一个‘面’,多个方程就需要多个‘面’,代价就是镜片越来越多,加工和装调越来越复杂,镜头越来越重,成本也就越来越高。”

图片

图 摄像镜头的镜片组

格小孔说:“那从信息的角度怎么看呢?”

苏格拉顶说:“好,我们再来从信息的角度看这个问题,无论是传统的光学系统设计,还是计算光学系统设计,本质都是获取‘物’的信息,只是信息传递的方式不同。”

格小孔说:“这我就有些糊涂了,都是通过镜头获取并传递信息,怎么会不同?”

苏格拉顶说:“传统光学系统设计的理念是优先保证像质,信息是在这个前提下获取的,而计算光学系统则是以信息传递为准则,首要考虑的是信息获取多少,如何解译,然后再看光学上如何设计。”

格小孔说:“你的意思是只要能保证信息进入到光学系统中,而且有能建立一个像储户在银行里存钱一样的数学关系,就能保证计算光学系统像传统光学系统一样实现高分辨率成像,当然图像是重建的,是吧?这样带来的好处是不再盯着像差看光学系统如何设计,光学系统可以简化很多,甚至面型的精度都可以降低,你说对吗?”

苏格拉顶说:“格小孔,你说的对。这其实就是计算光学系统的精髓所在。”

格小孔说:“可是,减少光学镜片的数量,会造成方程组是欠定的,你还得要设计多个面吧?”

苏格拉顶说:“不,格小孔,我们可以在面型上做文章……”

格小孔说:“你说的是自由曲面还是编码?”

图片

图 自由曲面设计

苏格拉顶说:“这两种都可以,实际上,我们也可以认为自由曲面是一种特殊的编码。”

5.熵增

格小孔说:“编码听起来不错,可是怎么设计才能保证更好呢?”

苏格拉顶说:“这是个好问题,但我只能说一个准则,那就是能保证这个编码能解译出所需的信息。现在这个阶段,依据光学加工工艺和光学材料本身来考虑这个问题更实际。比如说,一个加工好的光学系统,即使没有专门的面型编码设计,但它的面型已经不满足可见光λ/50的镜面精度要求,而是做成了λ/10,考虑这样的镜子如何高精度成像。”

图片

图 光学编码

格小孔说:“这个有些难吧?”

苏格拉顶说:“是很难,但可行。”

格小孔说:“苏老师,你没开玩笑吧?”

苏格拉顶说:“格小孔,明年你就会看到这样的镜面成像在卫星上验证了。现在镜子都加工好了,金属铝的镜面。”

格小孔有点吃惊,苏格拉顶吃完最后一口肉夹馍,把蝌蚪啃蜡喝个精光,说:“这个配肉夹馍确实不错,解腻。”

苏格拉顶看了一眼格小孔,说:“小孔,其实,这个计算光学系统在重建上还有一些问题需要考虑。”

格小孔说:“什么问题?”

苏格拉顶说:“数字计算问题。”

格小孔说:“我记得看过《计算光学成像中的数学问题思考|邵晓鹏专栏⑧》那篇文章,是不是说的就是这个问题。”

苏格拉顶点点头,意味深长地说:“可惜,那篇文章读的人不多啊!”

格小孔说:“现在是短视频的时代,谁还看文章啊!”

苏格拉顶摇摇头,继续说:“那些从纯数学的角度看很完美的公式,在数字计算时却需要考虑特别的算法,去规避除以0、无穷等问题,引入的数字噪声也是一害啊!你看看,凡是经过数字处理的图像,都会导致信息熵增加的问题,很多信息会损失掉,信噪比低的情况下尤为明显。你看看手机拍的照片就能看出端倪。”

格小孔说:“有办法解决吗?”

苏格拉顶说:“当然有,这需要更多的人一起去研究算法,提升图像重建的质量,如果能接近传统光学系统的成像结果,应用就没问题了。当然,还需要高速重建算法,这些都需要一步步来。”

说到这里,苏格拉顶陷入了短暂的沉思,然后说道:“有一个问题,我们需要好好考虑,那就是信息熵的变化能够带来成像质量的多大变化。通俗地讲,就是一斤熵换取多少斤分辨率的提升,哈哈哈哈……”

格小孔说:“谢谢你,苏格拉顶。今天是小雪,记得吃饺子,补补脑子。”

苏格拉顶说:“一句话——解模糊是要弄清楚每个人到底存了多少钱,超分辨率是想‘凭空’生出更多的钱。至于怎么解、怎么生,那就靠你们的本事了。”

说完,迈开大步,头也不回,嘴也不擦,走向远方。

 

上一篇:海洋光学成像——从老子的《道德经》说起 | 邵晓鹏专栏(第二季)⑬

下一篇:“破镜重圆”——光学合成孔径 | 邵晓鹏专栏第二季⑪

【关闭】