详细内容或原文请订阅后点击阅览
来自 R 的 Deepfake 检测挑战
几个月前,亚马逊、Facebook、微软和其他贡献者发起了一项挑战,内容是区分真实视频和人工智能生成的(“假”)视频。我们展示了如何从 R 中应对这一挑战。
来源:RStudio AI博客简介
由于正确的帧选择和人脸检测,处理视频数据集(尤其是基于 AI 的假物体检测)非常具有挑战性。要从 R 应对这一挑战,可以利用 OpenCV、magick 和 keras 提供的功能。
magick
keras
我们的方法包括以下步骤:
- 读取所有视频从视频中捕获并提取图像从提取的图像中检测人脸裁剪人脸使用 Keras 构建图像分类模型
让我们快速介绍一下我们正在使用的非深度学习库。 OpenCV 是一个计算机视觉库,包括:
另一方面,magick 是一个开源图像处理库,它将有助于从视频数据集中读取和提取有用的特征:
magick
- 读取视频文件每秒从视频中提取图像从图像中裁剪人脸
在我们进行详细解释之前,读者应该知道没有必要复制粘贴代码块。因为在文章的最后,人们可以找到带有 GPU 加速的 Google Colab 链接。这个内核允许每个人运行并重现相同的结果。
数据探索
我们要分析的数据集由 AWS、Facebook、微软、人工智能媒体诚信指导委员会合作伙伴和各种学者提供。
数据集它包含真实视频和 AI 生成的虚假视频。总大小超过 470 GB。但是,示例 4 GB 数据集是单独提供的。
文件夹中的视频采用 mp4 格式,长度各不相同。我们的任务是确定每秒视频要捕获的图像数量。我们通常为每个视频拍摄 1-3 fps。
mp4注意:如果要提取所有帧,请将 fps 设置为 NULL。视频 = magick :: image_read_video ( = 2 ) vid_1 = 1