094、真实世界超分挑战:噪声、模糊与压缩伪影的联合处理
094、真实世界超分挑战:噪声、模糊与压缩伪影的联合处理上周调一个真实场景的超分模型,客户发来一段监控视频,画面里车牌号被压缩得像马赛克拼图,边缘还带着那种经典的振铃伪影。我第一反应是“上ESRGAN啊”,结果跑完一看,模型把噪声当成了纹理,车牌上的数字直接多了一笔。这种坑,干过真实超分的人应该都懂——合成数据训出来的模型,碰到真实退化,基本就是翻车现场。真实世界的退化不是单一的高斯模糊加双三次下采样,那是实验室里的玩具。实际场景里,噪声、模糊、压缩伪影这三兄弟是抱团出现的,而且它们的耦合方式千奇百怪。比如JPEG压缩会在块边界产生不连续的伪影,而运动模糊又会把这些块边界抹成一条条拖尾,模型如果只针对其中一种退化做优化,处理另一种时就会产生新的artifact。退化模型的真实化改造传统的退化模型长这样:y = (x * k) ↓s + n,其中k是模糊核,↓s是下采样,n是噪声。但真实场景里,压缩伪影是在下采样之后才加入的,而且压缩过程本身会引入量化噪声和块效应。所以正确的退化链应该是:模糊→下采样→加噪声→压缩。顺序不能乱,我之前试过把压缩放在下采样前面,结果模型学出来的东西在真实数据上完全不能用,因为真实视频的压缩是在分辨率降低之后才做的。这里有个细节容易踩坑:压缩伪影的强度不是均匀的。JPEG压缩在平坦区域会产生块效应,在纹理区域反而表现成高频细节丢失。所以单纯加一个固定的压缩质量参数是不够的,需要模拟不同区域的压缩差异。我常用的做法是分块随机压缩,每块的压缩质量在30到95之间随机采样,块大小也随机,这样模型才能学会区分“

相关新闻