Correction Filter for Single Image Super-Resolution:Robustifying Off-the-Shelf Deep Super-Resolvers,作者是来自以色列特拉维夫大学Tel Aviv University的三位研究者。
代码:https://github.com/shadyabh/Correction-Filter
PDF: https://openaccess.thecvf.com/content_CVPR_2020/papers/Abu_Hussein_Correction_Filter_for_Single_Image_Super-Resolution_Robustifying_Off-the-Shelf_Deep_Super-Resolvers_CVPR_2020_paper.pdf
在以往的超分辨率模型当中,都是使用基于已知的下采样模型得到的低分辨率图片进行训练的,这对于未知下采样的图片效果不好。本文设计了一个解析解(分闭解/解析解指能通过有限次运算得到结果的解析表达式,二元一次方程的解就是一个典型的解析解)的矫正滤波器来使低分辨率图像成为该网络训练使用的下采样低分辨率图像,进而增强已有的超分辨图像的效果。
当真实的下采样核已知,可以将低分辨率图像转化为网络训练时下采样模型(双三次)对应的LR图。当真实的下采样核未知,本文提出算法推算所需要的矫正器。
numer=分子,denom=分母
pseudoinverse:伪逆矩阵:https://www.zhihu.com/question/47688307
论文通过一系列假设和证明过程,得出计算矫正器H的合理性。
图来自论文的CVPR PPT汇报,很想知道为什么h可以用这一个式子来表示,现在实在不明白啊
在不知道降采样核的情况下,通过最小化目标函数(损失函数的感觉),计算超分辨率后再通过迭代后的k降采样,和原低分辨率图像差值,进行的一系列运算,来迭代优化k, 然后代入h表达式得出h值。
附:双三次插值原理https://blog.csdn.net/nandina179/article/details/85330552
torch.irfft:https://pytorch.org/docs/master/generated/torch.irfft.html
pad:https://pytorch.org/docs/master/nn.functional.html?highlight=pad#torch.nn.functional.pad
https://www.cnblogs.com/wanghui-garcia/p/11265843.html
请路过的大神多多指点感激不尽