背景介绍:这篇文章发表于CVPR2019,
论文全称:Fast Online Object Tracking and Segmentation: A Unifying Approach代码连接:https://github.com/foolwood/SiamMask
CSDN博客代码详细解读:https://blog.csdn.net/yiran103/article/details/89243344
论文链接:CVPR 2019 https://arxiv.org/pdf/1812.05050.pdf
论文优秀博客解读:https://blog.csdn.net/shenziheng1/article/details/88586880
项目链接:http://www.robots.ox.ac.uk/~qwang/SiamMask/
效果展示:https://blog.csdn.net/zmdsjtu/article/details/88560351
原作者对此的思考 https://zhuanlan.zhihu.com/p/58154634作者信息:一作是中科院的qianwang
效果展示:
作者信息:
神经网络结构:
1 配置环境:
1 红色:
Ubuntu 16.04
Python 3.6
Pytorch 0.4.1
CUDA 9.2
RTX 2080 GPUs
2 黄色:
- 此指令自己下载并解压github代码的源文件,
- cd SiamMask;
进入SiamMask文件夹 (PS:win下会显示SiamMask-master,ubuntu是这个名字) - export SiamMask=$PWD;
--我们知道pwd在ubuntu是显示当前路径,而此处的export SiamMask=$PWD则是把当前路径给了SiamMask
你可以在终端输入SiamMask来查看,会显示当前路径。
但是这个SiamMask只有在当前终端输入会有效果。
--如果你想让在任何地方打开终端输入SiamMask都可以得到刚才赋予的路径,
则可以在/home下ctrl+h(PS:这是现实隐藏文件指令),这样就可以看到.bashrc文件,
打开在最后输入export SiamMask=/home/hp./../SiamMask/这样就可以在任何地方的终端输入SiamMask都可
得到这个目录/home/hp./../SiamMask/,
可以cd SiamMask来到达指定位置/home/hp./../SiamMask/
3 绿色:
设置环境
- conda create -n siammask python=3.6 (PS:???)
- source active siammask 激活siammask
- 按要求安装相应的文件这个txt全搞定
- bash make.sh
/------------------------------------------虚线框是我运行时遇到的问题---------------------------------------------\
前面都是按照说明做的1_第一种尝试:在这里运行指令 conda create -n siammask python=3.6
出现问题,报错如下:
I run this code (我运行这个指令) -->conda create -n siammask python=3.6 then i find this problem (发现如下问题) -------------------------------------------- Solving environment: failed (解决环境:失败) CondaHTTPError: HTTP 404 NOT FOUND for url https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/mian/noarch/repodata.json Elapsed: 00:00.046715 (运行) The remote server could not find the noarch directory for the requested channel with url: https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/mian (远程服务器无法找到noarch文件夹 请求通道url) As of conda 4.3, a valid channel must contain a noarch/repodata.json and associated noarch/repodata.json.bz2 file, even if noarch/repodata.json is empty. please request that the channel administrator create noarch/repodata.json and associated noarch/repodata.json.bz2 files. (conda 4.3,一个有效通道必须包含 noarch/repodata.json文件,即使它是空的。请请求通道管理员创建noarch/repodata.json并关联noarch/repodata.json.bz2文件) $ mkdir noarch $ echo '{}' > noarch/repodata.json $ bzip2 -k noarch/repodata.json You will need to adjust your conda configuration to proceed.(您需要调整conda配置才能继续。) Use conda config --show channels to view your configuration's current state.(使用conda config --show channels 来查看配置的当前状态) Further configuration help can be found at https://conda.io/docs/config.html.(进一步的配置帮助可以在https://conda.io/docs/config.html找到。)
PS:我的conda版本是4.5.11
2 然后按照终端的回馈指令
$ mkdir noarch
$ echo '{}' > noarch/repodata.json // echo的意思是显示,反馈结果.
// 在repodata.json文件中写入{}
$ bzip2 -k noarch/repodata.json // 参考 https://blog.csdn.net/zjc910997316/article/details/90046630// 压缩文件:
bzip2
-k messages
运行后
但是无济于事~注意:此时的json文件里面是{}
2_第二种尝试:
于是我参考如下博客https://blog.csdn.net/xtfge0915/article/details/84977765#_1
手动下载这个包
wget https://repo.anaconda.com/pkgs/main/noarch/repodata.json.bz2
但是会同样报错
3_第三种尝试
因为中国清华中科院conda镜像库都撤了,我通过minicanada直接跳过前两个
- conda create -n siammask python=3.6 (PS:???)
- source active siammask 激活siammask
而是使用激活自己的python 3.6
source activate env_py36 进入python36虚拟环境
\------------------------------------------虚线框是我运行时遇到的问题---------------------------------------------/
直接运行34
3 pip install -r requirements.txt
4 bash make.sh
4 黑色部分:
添加项目到python的路径
这个就是相当于win下的配置环境变量$PWD就是当前路径$PYTHONPATH就是系统的环境变量
:在ubunut下就相当于win的;
比如环境变量是/home/hp/zjc1/:/home/hp/zjc2/,$PWD是/home/hp/zjc0/SiamMask
执行命令之后就是/home/hp/zjc0/SiamMask:/home/hp/zjc1/:/home/hp/zjc2/
2 下载模型,运行Demo:
1 红色 设置环境
2 黄色 下载模型
2 蓝色 下载与训练模型
wget -q的意思就是不显示下载,这个http...pth,如果在win下粘贴在浏览器上就是直接下载
wget -q可以参考https://blog.csdn.net/zjc910997316/article/details/89891572
4 绿色 运行demo
- 进入siammask目录
- 把当前目录也放进PYTHONPATH环境变量中
- 重点是python ../../tools/demo.py
这里的../是返回上一级,运行之前
运行两个../就是返回到
上述目录下--resume ...就是可间断运行模型(PS:???)后面是json配置文件配置
可以运行了
运行成功的结果
运行结果:
3 测试模型