本文记录了笔者在win下跑siammask的全过程,仅用于参考,若有问题还请指教

  • windows环境下运行Siammask
    • 前言
    • 注意事项
    • 提前的环境部署
      • Git安装
      • Anaconda3安装
      • CUDA9.2安装
      • cuDNN安装
    • 正式开始部署SiamMask
      • 下载SiamMask
      • 部署环境(如果可以直接安装torch)
      • 部署环境(如果不能直接安装torch)
      • 下载SiamMask模型
      • 跑Demo

windows环境下运行Siammask

前言

由于笔者初入CV,电脑配置较差,若在虚拟机中运行ubuntu再跑Siammask哪怕是demo也只有1.2fps,实在难以接受,故尝试将Siammask移至win环境下运行。
鉴于网上还没有在win环境下运行Siammask的文章,在此进行记录,希望能对你有所帮助。
同时因为刚刚接触CV不到一个月,仍处于一脸懵逼的小白阶段,若本文出现什么问题还请指点!谢谢!

注意事项

  1. 在此强烈建议如有条件请在Ubuntu下运行Siammask!
    作者的推荐环境就是Ubuntu,有问题也能更好的得到解决。好了不废话了开始。
  2. 本文中所有作者提到的命令(包括作者需要的环境部署),全程在git bash下完成输入,其余额外的环境要求可能在cmd中完成
    若出现需要在cmd中输入的命令时,会特意写出,否则均默认为在git bash中完成
  3. 暂无

提前的环境部署

系统版本为win10 1607(内部版本号14393.447)
Git version 2.22.0.windows.1
Anaconda3 v1.9.7
CUDA v9.2
cuDNN v7.6.3.30(对应v9.2版本的CUDA的就可以)

Git安装

git安装很简单,去官网下载安装包,然后一步步来就好了
估计都会我就不说了,就是注意装完之后,打开git bash在里面输入自己的名字和邮箱,用来提交版本的时候区分是谁弄的,不过本文可能用不到

$ git config --global user.name "Your Name"
$ git config --global user.email "email@example.com"

如果实在有不会用的,推荐去看看廖雪峰老师写的教程,个人感觉写的还不错,我就是看这个学的

Anaconda3安装

怎么装这个网上好多教程不说了,主要就是装过之后,因为“网络不太好”,最好换个国内的镜像来下载东西。
推荐清华源,现在已经取得了官方授权并继续运行了
具体教程这里 https://blog.csdn.net/kaige2111/article/details/90727476
注意一下的地方就是,新版的Anaconda有些已经不支持http的源了,必须要用https的,https的源在版权风波关停之后,现在已知的只有清华的了,北科大那个前一段说空间不够停了,那个链接现在也是重定向到了清华的
然后就是这一步,要输入的命令是在cmd里面完成

顺带推荐一下,里面自带的Jupyter写笔记挺好用的,支持MarkDown和LaTeX,也可以直接写python和一些其他的简单代码段插在笔记里运行,还可以写点基本的交互,也可以复制成纯文本出来。现在已经全拿这个写笔记了,剩下要用的自己查吧

CUDA9.2安装

感觉这个教程网上也有好多了,贴几篇还可以的,主要留着写后面(其实是我没找到我安装时候最合适的那一篇了)
https://blog.csdn.net/u010618587/article/details/82940528
https://blog.csdn.net/yanying1113/article/details/85088951

装完之后可以在cmd里敲个 nvcc -V 看看能不能用,V一定要是大写才行Orz

还是提几个注意的地方注意一下

  1. 这里并不一定必须是9.2版本呢,只是Siammask作者使用的环境是9.2,所以就直接一起用9.2了

  2. 安装之前,先确定一下自己是什么显卡,这里的CUDA并不支持所有的显卡,这个可以去官网上查,能找到

  3. 安装的时候最开始让你选的路径(还没出现黑+绿色窗口时)是一个解压的路径,这个路径随便选,不过最好单独建个文件夹让它解压到那里面,因为我装的时候发现专门建立给它解压用的文件夹在安装成功之后直接就给我删了,不知道是不是都会删,要是里面有别的东西万一删了就凉凉了

  4. 安装到下面这一步的时候最好选下面的那个自定义,系统用的英文的所以是这个Custom,因为上面那个在汉语系统里写的好像是精简,但实际上是全都装了,还不让自定义路径。

  5. 自定义选择要装什么的时候如果只是做这个,装下面这四个就够了

    Development
    Samples
    Runtime
    Documentation
    如果装了vs要用,还要多选一个"Visul Studio Integration",剩下的没必要装,浪费地方。亲测自己电脑装这四个+vs那个能用
    当然,如果嫌自己显卡驱动版本太老的也可以把Driver components勾上升个级,不过要是比这个新就算了吧

  6. 写自定义路径的时候记得安到哪了,下面装cuDNN要用

cuDNN安装

官网下载,要注册账户填个问卷的,然后才让下。注意下的时候,要选对自己的cuDNN版本,下下来就是个压缩包,解压之后找到上面装CUDA的路径里面的
NVDIA GPU Computing Toolkit\CUDA\v9.2
按bin lib 和 include 文件夹把里面东西对应都扔进去就行了

正式开始部署SiamMask

下载SiamMask

这里开始命令就都是在git bash里面了,先贴下项目主页,可以跟这里面的来
先建个文件夹,最好英文名,文件夹名字别太长,下面图里面有出现中文路径的话是我装完之后才想起来的,千万别学我

打开git bash切换到要装的目录之后,按下面命令来

先复制资源并添加临时环境变量,用于之后切换目录方便

$ git clone https://github.com/foolwood/SiamMask.git && cd SiamMask
$ export SiamMask=$PWD

加完之后,可以echo一下SiamMask看看加没加上

部署环境(如果可以直接安装torch)

然后在git bash中执行这些

$ conda create -n siammask python=3.6
$ source activate siammask
$ pip install -r requirements.txt
$ bash make.sh

执行第一句的时候有可能报错,说不支持这个bash

CommandNotFoundError: Your shell has not been properly
To initialize your shell, run$ conda init <SHELL_NAME>

直接按提示来敲下面这句,后面的bash是你用的终端名称,如果敲错了会告诉你都有哪些

$ conda init bash

然后按照提示关掉git bash再重启,重新敲一边就能运行了

然后第二行的

$ source activate siammask

版本不同有可能变成

$ conda activate siammask

前面两句运行没问题之后,先别输入第三句,去改一下requirements.txt,把里面那个
torch==0.4.1
后面的0.4.1改成1.2.0或者1.2.0.post1还有1.2.0.post2也行,因为win版本的pytorch没有0.4.1版本,编号方式不一样。注意这一行作者写了两次不知道为什么,两行都要改

还有就是建议国内家里“网不好”的童鞋,把第三行的

$ pip install -r requirements.txt

改成下面的

$ pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/

同样是把源换成清华(良心大学清华的人看到请联系我商谈广告费事宜 )的镜像站下载,要不然装一半可能就凉凉

如果装了之后没报错,那恭喜你可以继续了,下面那个“部署环境(如果不能直接安装torch)”就可以直接跳过了,用不上。如果第三行报错装不上,直接跳到下面那个里面去

装完之后继续上面第四行运行make.sh,然后把当前路径加到环境变量里

$ export PYTHONPATH=$PWD:$PYTHONPATH

部署环境(如果不能直接安装torch)

在做完上面的之后,如果卡到第三步报错,就是装不上就按照这步来。
保险起见,建议把项目文件夹直接删了,重新建一遍,笔者就是这么来的,不过你也可以先试试下面直接来行不行。
敲完前两行命令之后在安装requirements.txt里面的东西之前,请先打开你安装的Anaconda3,切换到这个空间

注意一定要是你建立的siammask空间,不是base,要不然没用
然后看右半边里面那一行一行的东西,全都是已经安装在这个空间里的软件,只有在这个空间里才能用。
把上面的 Installed 换成 Not installed,然后在右面的搜索框里输入 torch

应该会有个_pytorch_selectpytorch,把这两个都装了就行了,虽然这里提供的torch是1.0.1版本,但是能用。

装过之后,去改一下requirements.txt,把里面的torch==0.4.1直接删掉,注意有两行,都删掉,然后再在git bash里面运行那行应该就没问题了

$ pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/

和上面一样,也是成功运行之后先make.sh一下,再加一下环境变量

$ bash make.sh
$ export PYTHONPATH=$PWD:$PYTHONPATH

下载SiamMask模型

$ cd $SiamMask/experiments/siammask_sharp
$ wget http://www.robots.ox.ac.uk/~qwang/SiamMask_VOT.pth
$ wget http://www.robots.ox.ac.uk/~qwang/SiamMask_DAVIS.pth
$ export PYTHONPATH=$PWD:$PYTHONPATH

这几行应该没什么问题,切换到对应目录,然后下载两个作者提前训练好的模型放到里面去。再把当前路径加到PYTHONPATH环境变量里

MSI1@MSI MINGW64 /d/Study/CV/Week 4_0902-0906_原始SiamMask效果测试/SiamMask/experiments/siammask_sharp (master)
$ cd $SiamMask/experiments/siammask
bash: cd: too many arguments
(siammask)

对了如果第一行报上面这个错,说明环境变量没法在cd里用,我也没查清楚为什么,echo的时候确实对应的变量里只有一个,但是就是不行,这个时候cd按照正常方法换吧,别用$SiamMask就行了。对python代码执行没影响的,可以正常读取。如果有大佬知道为什么请多指教

跑Demo

$ python ../../tools/demo.py --resume SiamMask_DAVIS.pth --config config_davis.json

就这么一句,运行就完了,然后等着会出来个框,里面是图像第一帧,先鼠标框选,然后按Space或者Enter,就可以看效果了。



到此为止,windows环境下运行SiamMask中的Demo就完成了,下面还会继续尝试在windows上训练和改进SiamMask,直到配的电脑到手。如果有什么地方有问题,解决之后说不定还会记下来。
就是这样,希望对你有所帮助。

windows10下部署环境并运行Siammask中的demo全过程记录相关推荐

  1. Windows10下java环境配置

    Windows10下java环境配置 假期重新装了window10的操作系统,现在重新配置一下java的开发环境. 想记录一下这些步骤,以防时间久了忘记. 更新:2018年5月8日 推荐使用一键安装J ...

  2. 【Windows10下.sh文件的运行】‘bash’ is not recognized as an internal or external command

    问题描述 由于要下载数据集,需要在Win10下用bash指令. 但是在cmd直接运行,会出现'bash' is not recognized as an internal or external co ...

  3. windows10下配置环境变量

    环境变量 -> 系统变量中: 新建变量JAVA_HOME,值:jdk的安装路径 新建变量CLASSPATH,值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\ ...

  4. windows10下Kafka环境搭建

    内容小白,包含JDK+Zookeeper+Kafka三部分. JDK: 1)   安装包:Java SE Development Kit 9.0.1       下载地址:http://www.ora ...

  5. windows10搭建CUDA环境并运行示例

    文章目录 1. 配置检查 2. 安装vs 3. 安装CUDA 4. 检测CUDA是否安装成功 5. 配置VS开发环境运行CUDA 6. 新建CUDA项目 6. 可能遇到的一些问题 1. 配置检查 我的 ...

  6. windows10下Qt环境OpenCV配置【CMake环境】

            对于刚开始了解OpenCV或是用不到OpenCV_contrib库的情况,不建议自己编译OpenCV.交叉编译最大的问题就是无法正常下载需要的库.早些年玩OpenWRT编译一次需要几天 ...

  7. linux下设置程序后台运行,linux中如何让进程在后台运行

    一. nohup / setsid / & 使用场景: 如果只是临时有一个命令需要长时间运行,什么方法能最简便的保证它在后台稳定运行呢? 我们的解决办法就有两种途径:要么让进程忽略 HUP 信 ...

  8. cocos2dx学习之路(一)———windows10下cocos2dx环境配置

    (一).准备所需工具 1.开发工具Visual Studio 2015[官网地址]当然大家根据自己喜好下载各种版本,笔者只是觉得2015版本大小比较合适,也用习惯了.(https://visualst ...

  9. 【AS】Windows10下Git环境变量配置

    很久没用回Windows了,最近因为工作原因又回归到Windows的怀抱,配置完AS的开发环境后使用Git管理本地代码时提示: 'git' 不是内部或外部命令,也不是可运行的程序 或批处理文件. 去百 ...

  10. reporting services报表部署错误:运行配置文件中指定的扩展时出现异常。 ---> 超过了最大请求长度。

    昨天熬夜到凌晨才解决!!!!!! 1.打开报表服务器的安装目录中的web.config,比如我的目录在C:\Program Files\Microsoft SQL Server Reporting S ...

最新文章

  1. Strategy Analytics:物联网安全令人担忧,成本节约效益也不确定
  2. 正方体最快最简单画_素描新手入门第一幅画可不只是“正方体”
  3. [转载]敏捷开发之Scrum扫盲篇
  4. 熊猫烧香当年到底有多残忍?
  5. sql server 性能_SQL Server硬件性能调整
  6. oracle 主键自增函数_Oracle数据库中创建自增主键的实例教程
  7. Java中的可变参数方法
  8. BS 百度Blog的字节限制!!!!!!!!!
  9. 自从我不管事后,员工们肯定舒心多了
  10. vue 后台系统引入pdf安装包
  11. Codeforces D. Genius‘s Gambit
  12. Windows装机必备软件列表
  13. java调用高德地图获取经纬度
  14. 吃货在东京 -- 记那段吃不饱的日子 之五 保护加班后的胃
  15. OpenCL “速成”冲刺【第二天】
  16. 史上最全! 全球 22 种开源商业收入模式
  17. 通达OA使用手册(一)
  18. Linux性能分析工具详解
  19. 服务器上的404页面
  20. Flutter Widget详解

热门文章

  1. 解决nginx启动时域名解析失败而导致服务启动失败的问题
  2. curl: (51) Unable to communicate securely with peer: requested domain name does not match the server
  3. BI相关的内容---BI是什么,主要工作的内容有哪些?
  4. 关于数独--九宫格的算法实现
  5. 领导提拔你的原因,只有这点最真实,其他都是瞎扯!
  6. Off the coast 将图片放入Markdown!
  7. python读取grib2文件
  8. 从Ajax聊一聊Jsonp hijacking
  9. 小学知识三角函数和差化积
  10. excel入门/常用的技巧