机器之心报道  参与:思源

只要画个边界框,模型就能自动追踪边界框内的物体,并在视频中隐藏它。最近,这个神奇的项目借助目标检测与图像修复,成功地让模型对视频中的物体视而不见,并通过伪造背景将物体从视频中抹去。

项目地址:https://github.com/zllrunning/video-object-removal

效果怎么样

我们先看看效果,左图是原视频,右图是模型擦除行人后的效果。基本上行人定位与追踪是没什么问题的,但比较困难的地方在于图像修复,即将行人那一部分像素删除后,重建合理的背景。

放大来看,如果背景比较简单,例如纯色说少纹理,那么修复效果是挺好的。但是纹理复杂的情况下,图像修复会出现一些问题,例如车道线对不齐等等。但总体来说,这个项目已经有很好的效果了。

此外,如果我们想获得上面修复的结果,只需要简单地框选目标就能完成。我们可以画一个边界框,然后模型就会处理视频,并将结果输出到 results/inpainting 文件夹中。

项目怎么用

项目的安装和使用也是比较简单的,作者还提供了完整的预训练模型。所以我们只需要配置 Python 3.5 和 PyTorch 0.4 就差不多能跑了,当然还得有一块 GPU。

具体而言,我们需要下载 GitHub 项目,然后转到 inpainting 目录下运行 install.sh 脚本,这就完成安装了。我们可以下载 SiamMask 和 Inpainting 两个预训练模型,并放在项目的 cp 文件夹下,然后就可以愉快地测试 Demo 了:

python demo.py --data data/Human6

视频文件也是可以直接测试的:

python demo.py --data data/bag.avi

上面两个命令行都会对图像或视频进行处理,并保存生成结果。

  • 预训练 SiamMask:http://www.robots.ox.ac.uk/~qwang/SiamMask_DAVIS.pth

  • 预训练 Inpainting:https://drive.google.com/file/d/1KAi9oQVBaJU9ytr7dYr2WwEcO5NLiJvo/view?usp=sharing

原理怎么样

前面介绍过,video-object-removal 主要借鉴了两项工作,即 SiamMask 与 Deep Video Inpainting,它们都是 CVPR 2019 的研究。通过 SiamMask 追踪视频中的目标,并将 Mask 传递给 Deep Video Inpainting,然后模型就能重建最终修复效果了。

视频实时追踪

在 SiamMask 中,研究者展示了如何在统一框架下,实时执行视觉追踪与半监督目标分割。在训练完成后,SiamMask 只依赖一个初始化的边界框,就能实时生成未知类别的目标分割掩码,并以每秒 55 帧的速率实时更新掩码。

论文:Fast Online Object Tracking and Segmentation: A Unifying Approach

  • 论文地址:https://arxiv.org/abs/1812.05050

  • GitHub:https://github.com/foolwood/SiamMask

SiamMask 的变体示意图,它可以选择 three-branch 的完整版来预测边界框和掩码,也可以选择 two-branch 的版本直接预测掩码。

SiamMask 的实时分割与追踪效果。

视频实时修复

视频修复旨在利用视频中合理的内容填补被删除的像素,在深度视频修复这篇论文中,研究者提出了一种深度架构来进行快速的视频修复。该模型建立在基于图像的编码器解码器模型上,并从近邻的一些视频帧收集信息,从而合成未知区域的图像内容。研究者表示他们的方法能构建更连贯和合理的视频修复,同时模型的高效性还能让这种修复实时进行。

论文:Deep Video Inpainting

  • 论文地址:https://arxiv.org/abs/1905.01639

  • GitHub:https://github.com/mcahny/Deep-Video-Inpainting

深度视频修复网络的整体结构,该网络会利用当前帧 t 以及 t-6、t-3、t+3、t+6 等图像帧的原始信息,从而根据前面的预测结果 Y_t-1 推断当前帧的修复结果 Y_t。此外,为了获得时序上的连贯性,作者会使用循环 feedback 和 ConvLSTM 模块,并使用 flow 和 warp 两个损失函数。

Deep Video Inpainting 的效果(无奈的是,视频中的阴影还在)。

参考链接:https://github.com/zllrunning/video-object-removal

声明:本文来自机器之心,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。