从视频里“擦除”框选的目标
video-object-removal - Just draw a bounding box and you can remove the object you want to remove
by zllrunning
本项目的相关论文入选 CVPR 2019。
论文标题:
《Fast Online Object Tracking and Segmentation: A Unifying Approach》《Deep Video Inpainting》(CVPR 2019)
Link :
http://openaccess.thecvf.com/content_CVPR_2019/supplemental/Wang_Fast_Online_Object_CVPR_2019_supplemental.pdf
* 本论文在AI研习社就能下载哦,更多CVPR论文,敬请扫码查看:
https://ai.yanxishe.com/page/resourceDetail/845
只需绘制一个边界框,你就可以擦除想要删除的对象。
Github项目地址:

安装

所有代码都已经在Ubuntu 16.04,Python 3.5,Pytorch 0.4.0,CUDA 8.0,GTX1080Ti GPU上进行了测试。
  • 克隆本项目仓库
git clone https://github.com/zllrunning/video-object-removal.git cd video-object-removalcd get_maskbash make.shcd ../inpaintingbash install.shcd ..

Demo

  • 下载 SiamMask 和 Inpainting 的预训练模型
  • 把它们放在 cp/ 文件夹中
  • 然后运行:
python demo.py --datadata/Human6
  • 当然了,它还
    支持视频文件的框选擦除

python demo.py --datadata/bag.avi
另一个可选参数: -  mask-dilation
python demo.py --datadata/Human6 --mask-dilation 24
这个参数控制用于掩模的扩张内核的大小,其作用是扩大掩模的范围以避免边缘问题。有关详细信息,请查看 inpainting/davis.py

查看效果

1. 框选出一个这样的边界框:
2. 框选对象将被擦除,并将修复后的视频保存在 results/inpainting 文件夹中。 
(编辑器限制,如果Gif图像过于模糊,请移步Github项目中查看。)
左图:原始图像,右图:擦除结果,原图:点这里查看
编者注:从效果上看擦除的效果还是不错的,但是存在的问题是:擦除后的画面中会出现部分的变形(即图中的人走过的位置),这应该是项目中需要改进的一点。

致谢

本项目基于 SiamMask 和 Deep-Video-Inpainting开发。非常感谢这些优秀的项目。

引用

@article{Wang2019SiamMask, title={Fast Online Object Tracking and Segmentation: A Unifying Approach}, author={Wang, Qiang and Zhang, Li and Bertinetto, Luca and Hu, Weiming and Torr, Philip HS}, journal={The IEEE Conference on Computer Vision and Pattern Recognition (CVPR)}, year={2019}}
@inproceedings{kim2019deep, title={Deep Video Inpainting}, author={Kim, Dahun and Woo, Sanghyun and Lee, Joon-Young and So Kweon, In}, booktitle={Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition}, pages={5792--5801}, year={2019}
你可能还想看
点这里查看本篇更多相关内容
继续阅读
阅读原文