167、视频超分中的时序一致性:从帧间损失到循环一致性的约束方法
167、视频超分中的时序一致性:从帧间损失到循环一致性的约束方法去年做某个安防项目的时候,客户反馈了一个让我头疼的问题:单帧超分效果明明不错,可一旦跑视频流,画面就开始“闪烁”——同一块招牌,前一帧清晰锐利,后一帧边缘抖动,再下一帧纹理突然模糊。这种时序不一致的问题,在视频超分里几乎是绕不开的坎。后来我翻了不少论文,也踩了不少坑,发现解决这个问题的核心思路其实就两条:一是让相邻帧之间的变化“平滑”,二是让整个序列的映射关系“自洽”。今天就把我折腾过的几种约束方法掰开揉碎聊一聊。帧间损失:最朴素的“拉近”手段最早我尝试的是直接对相邻帧的输出加约束。做法很简单:把第t帧和第t+1帧的超分结果做差,计算L1或L2损失,让网络尽量输出“看起来差不多”的结果。# 别这样写:直接对像素做差loss_temporal=torch.mean((output_t-output_t_plus_1)