【2020华为云AI实战营】 基于ModelArts使用OSVOS算法实现视频物体分割
视频物体分割就是从视频所有图像中将感兴趣物体的区域完整地分割出来,并不需要分割视频中的所有物体
三个研究方向:半监督、交互式和无监督
OSVOS算法训练,只需要第一帧图片和标注即可训练
视频物体分割的应用:抠图换背景、人像留色摄影和抠图使目标消失
下面我们开始本案例的学习,由于本案例的代码是在华为云ModelArts Notebook上运行,所以需要先按照如下步骤来进行Notebook环境的准备。
进入ModelArts
点击如下链接:https://www.huaweicloud.com/product/modelarts.html , 进入ModelArts主页。点击“立即使用”按钮,输入用户名和密码登录,进入ModelArts使用页面。进入控制台:
创建ModelArts Notebook¶
下面,我们在ModelArts中创建一个Notebook开发环境,ModelArts Notebook提供网页版的Python开发环境,可以方便的编写、运行代码,并查看运行结果。
第一步:在ModelArts服务主界面依次点击“开发环境”、“创建”
第二步:填写notebook所需的参数:
参数 | 说明 |
---|---|
计费方式 | 按需计费 |
名称 | 自定义名称 |
工作环境 | Python3 |
资源池 | 公共资源池 |
类型 | GPU |
规格 | [限时免费]体验规格GPU版 |
存储配置 | OBS |
第三步:配置好Notebook参数后,点击下一步,进入Notebook信息预览。确认无误后,点击“立即创建”
第四步:创建完成后,返回开发环境主界面,等待Notebook创建完毕后,打开Notebook,进行下一步操作。
第五步:点击右上角的"New",然后创建Pytorch-1.0.0开发环境
2.1 准备代码和数据
相关代码、数据和模型都已准备好存放在OBS中,执行下面一段代码即可将其拷贝到Notebook中
注意!安装完以上模块后,会有一些c++库的更新,因此需要点击本页面顶部菜单栏的 Kernel,再点 Restart
然后运行后面的8个cell的代码,(先运行cell1到cell7,然后打开terminal运行四行代码,然后最后才是运行cell8,然后就是打完收工)
后面的代码从下图cell1开始,一直到cell7的时候。-完全代码可以参考附件。
回到 ModelArts Notebook 页面,按照下图打开一个terminal:
然后复制以下四条命令到terminal中粘贴执行,执行过程耗时约2分半:
source activate /home/ma-user/anaconda3/envs/Pytorch-1.0.0
cd `find ~/work/ -name "Deep-Flow-Guided-Video-Inpainting"` bash install_scripts.sh python tools/video_inpaint.py --frame_dir ../OSVOS-PyTorch/DAVIS_2016/JPEGImages/480p/flamingo --MASK_ROOT ../OSVOS-PyTorch/DAVIS_2016/Annotations/480p/flamingo --img_size 512 832 --FlowNet2 --DFC --ResNet101 --Propagation --enlarge_mask
最后运行cell8,就是出结果的了。结果如下:
- 点赞
- 收藏
- 关注作者
评论(0)