创建用于从拆分帧识别视频分辨率的 CNN 模型

Create CNN model for video resolution recognition from split frames

我正在从事一个涉及视频分辨率识别的学生项目
我的工作是根据视频准备训练数据集(我正在从 YT 下载这些电影)并按照以下步骤进行

  1. 正在下载各种质量(2160p、1440p、 1080p,720p...)
  2. 从每个下载的视频中提取帧(大约 20-30 帧)
  3. 将每一帧升级到相同的分辨率(在我的例子中我升级了 所有帧为 4K)
    提取的帧具有不同的尺寸,因此我需要将它们全部扩展到相同的分辨率
  4. 将这些放大的帧拆分为 100x100 块

完成这个过程后,他得到了大量排序后的数据
下面是它的外观图片

在左侧,您可以看到按分辨率排序的目录
在随机下载视频的中间目录
右边第四点提到的每个视频每个质量100x100块

我想要实现的结果是,来自与训练相同的准备数据集的模型能够正确识别质量(例如,完整的视频输出为 1080p)
现在我想知道使用CNN的现成模型的选择。

我的问题:

  1. 你认为我应该使用什么解决方案?
  2. 现在的这组数据,我应该怎么标注或者做不同的一组数据?

非常感谢您的回答

看来您实际上是在尝试解决比 KernelGAN:

的判别器更简单的问题

Sefi Bell-Kligler、Assaf Shocher、Michal Irani Blind Super-Resolution Kernel Estimation using an Internal-GAN(NeurIPS 2019)。

在他们的工作中,他们试图估计与 HR 和 LR 图像相关的任意下采样内核。你的工作要简单得多:你只尝试 select 在几个已知的上采样内核之间。由于你的放大方法是已知的,所以你只需要恢复放大的量。

我建议您从具有类似于 KernelGAN 鉴别器的架构的 CNN 开始。但是,我会考虑显着增加感受野,以便它可以推理从 144p 到 4K 的升级。

旁注:

  1. 放大时不要改变帧的纵横比!这将使您的问题变得更加困难:您将需要估计 两个 个放大参数 (horizontal/vertical) 而不是一个
  2. 不要提前裁剪 100x100 区域 - 让您的 Dataset 的转换作为随机增强为您完成。