【问题标题】:Create CNN model for video resolution recognition from split frames从分割帧创建用于视频分辨率识别的 CNN 模型
【发布时间】:2022-01-17 09:42:30
【问题描述】:

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

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

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

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

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

我的问题:

  1. 您认为我应该在这里使用什么解决方案?
  2. 对于当前的数据集,我应该如何标记它或做不同的数据集?

非常感谢您的回答

【问题讨论】:

  • 恕我直言,这是一个奇怪的想法。因为有效分辨率(AKA 图像带宽)本质上取决于图像内容。听起来像是垃圾进垃圾出的方法。

标签: tensorflow image-processing deep-learning pytorch conv-neural-network


【解决方案1】:

看起来你实际上是在尝试解决一个比KernelGAN的鉴别器更容易的问题:

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

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

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

旁注:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-01-27
    • 2018-01-18
    • 2020-12-13
    • 2012-07-01
    • 2012-01-30
    • 2016-03-27
    • 2016-06-08
    • 1970-01-01
    相关资源
    最近更新 更多