MMTracking目标跟踪环境搭建(一)

news2024/11/24 16:08:46

1、环境搭建

创建conda虚拟环境并激活。

conda create -n mmtrack python=3.8 -y
conda activate mmtrack 

按照官方说明安装 PyTorch 和 torchvision

可以通过指定版本号切换到其他版本。

#如果网不好,可以这样安装
pip3 install torch==1.8.2+cu102 torchvision==0.9.2+cu102 torchaudio===0.8.2 -f https://download.pytorch.org/whl/lts/1.8/torch_lts.html  -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com

pip install torch==1.11.0+cu115 torchvision==0.12.0+cu115 torchaudio==0.11.0 -f https://download.pytorch.org/whl/torch_stable.html  -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
#验证是否安装成功

>>> import torchvision
>>> import torch
>>> import.__version__
  File "<stdin>", line 1
    import.__version__
          ^
SyntaxError: invalid syntax
>>> torch.__version__
'1.8.2+cu102'

这里我们使用 PyTorch 1.10.0 和 CUDA 11.1。
使用 conda 安装

conda install pytorch=1.11.0 torchvision cudatoolkit=11.3 -c pytorch

使用 pip 安装

pip install torch==1.11.0+cu113 torchvision==0.12.0+cu113 --extra-index-url https://download.pytorch.org/whl/cu113

安装mmengine

pip install mmengine  -f https://download.pytorch.org/whl/lts/1.8/torch_lts.html  -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com

安装mmcv

我们建议您安装预构建包,如下所示。

pip install 'mmcv>=2.0.0rc1' -f https://download.openmmlab.com/mmcv/dist/{cu_version}/{torch_version}/index.html

pip install 'mmcv>=2.0.0rc1' -f https://download.openmmlab.com/mmcv/dist/cu102/torch1.8.0/index.html -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com

mmcv 仅在 PyTorch 1.x.0 上编译,因为兼容性通常在 1.x.0 和 1.x.1 之间。如果你的PyTorch版本是1.x.1,你可以安装用PyTorch 1.x.0编译的mmcv,通常效果很好。

We can ignore the micro version of PyTorch

pip install 'mmcv>=2.0.0rc1' -f https://download.openmmlab.com/mmcv/dist/cu113/torch1.11.0/index.html

请参阅此处,了解与不同 PyTorch 和 CUDA 版本兼容的不同版本的 MMCV。或者您可以选择通过以下命令从源代码编译 mmcv

git clone -b 2.x https://github.com/open-mmlab/mmcv.git
cd mmcv
MMCV_WITH_OPS=1 pip install -e .  # package mmcv, which contains cuda ops, will be installed after this step
# pip install -e .  # package mmcv, which contains no cuda ops, will be installed after this step
cd ..

重要提示:如果安装了 mmcv,则需要先运行 pip uninstall mmcv-lite。因为如果mmcv-lite和mmcv都安装的话,就会出现ModuleNotFoundError。

安装MMDetection

pip install 'mmdet>=3.0.0rc0' -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com

或者,如果您想修改代码,您也可以从源代码构建 MMDetection:

git clone -b 3.x https://github.com/open-mmlab/mmdetection.git
cd mmdetection
pip install -r requirements/build.txt
pip install -v -e .  # or "python setup.py develop"  -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com

Clone the MMTracking repository.

git clone -b 1.x https://github.com/open-mmlab/mmtracking.git
cd mmtracking

安装构建需求,然后安装MMTracking。

pip install -r requirements/build.txt
pip install -v -e .  # or "python setup.py develop"

安装额外的依赖项

对于 MOT 评估(必填):

pip install git+https://github.com/JonathonLuiten/TrackEval.git

用于 VOT 评估(可选)

pip install git+https://github.com/votchallenge/toolkit.git

对于 LVIS 评估(可选):

pip install git+https://github.com/lvis-dataset/lvis-api.git

对于 TAO 评估(可选):

pip install git+https://github.com/TAO-Dataset/tao.git

笔记:

A。按照上述说明,MMTracking 安装在devmode 下,任何本地对代码的修改都会生效,无需重新安装。

b. 如果您想使用opencv-python-headless而不是opencv-python,可以在安装 MMCV 之前安装它。

从头开始的设置脚本
假设您已经安装了 CUDA 10.1,这里有一个使用 conda 设置 MMTracking 的完整脚本。

conda create -n open-mmlab python=3.9 -y
conda activate open-mmlab

conda install pytorch=1.11.0 torchvision cudatoolkit=11.3 -c pytorch

pip install mmengine

# install the latest mmcv
pip install 'mmcv>=2.0.0rc1' -f https://download.openmmlab.com/mmcv/dist/cu113/torch1.11.0/index.html

# install mmdetection
pip install 'mmdet>=3.0.0rc0'

# install mmtracking
git clone -b 1.x https://github.com/open-mmlab/mmtracking.git
cd mmtracking
pip install -r requirements/build.txt
pip install -v -e .
pip install git+https://github.com/JonathonLuiten/TrackEval.git
pip install git+https://github.com/votchallenge/toolkit.git (optional)
pip install git+https://github.com/lvis-dataset/lvis-api.git (optional)
pip install git+https://github.com/TAO-Dataset/tao.git (optional)

安装库版本

(mmtrack) lhy@thales-Super-Server:/media/lhy/mmtracking$ pip list
Package                Version     Editable project location
---------------------- ----------- -------------------------
addict                 2.4.0
albumentations         1.3.0
astroid                2.11.7
asynctest              0.13.0
attributee             0.1.5
attrs                  21.4.0
charset-normalizer     2.0.12
click                  8.1.3
click-plugins          1.1.1
cligj                  0.7.2
codecov                2.1.12
colorama               0.4.5
coverage               6.4.1
cycler                 0.11.0
Cython                 0.29.30
dotty-dict             1.3.0
Fiona                  1.8.22
flake8                 4.0.1
flatbuffers            2.0
fonttools              4.33.3
geojson                2.5.0
geopandas              0.12.1
idna                   3.3
imagecorruptions       1.1.2
imageio                2.19.3
importlib-metadata     6.8.0
iniconfig              1.1.1
interrogate            1.5.0
isort                  4.3.21
joblib                 1.3.1
kiwisolver             1.4.3
kwarray                0.6.2
lap                    0.4.0
lazy-object-proxy      1.7.1
Markdown               3.4.3
markdown-it-py         3.0.0
matplotlib             3.5.2
mccabe                 0.6.1
mdurl                  0.1.2
mmcls                  1.0.0rc6
mmcv                   2.0.0rc4
mmdet                  3.0.0rc2
mmengine               0.7.1
mmtrack                1.0.0rc1    /media/lhy/mmtracking
model-index            0.1.11
modelindex             0.0.2
motmetrics             1.2.5
mpmath                 1.2.1
munch                  2.5.0
networkx               2.8.4
numpy                  1.22.4
opencv-python          4.8.0.74
opencv-python-headless 4.6.0.66
ordered-set            4.1.0
packaging              23.1
pandas                 1.3.5
Pillow                 10.0.0
pip                    23.1.2
platformdirs           3.8.1
pluggy                 1.0.0
pretrainedmodels       0.7.4
py                     1.11.0
pycocotools            2.0.2
pycodestyle            2.8.0
pyflakes               2.4.0
Pygments               2.15.1
pylint                 2.14.5
pyparsing              3.1.0
pyproj                 3.4.0
pyshp                  2.3.1
pytest                 7.1.2
python-dateutil        2.8.2
pytz                   2022.1
PyWavelets             1.3.0
PyYAML                 6.0
qudida                 0.0.4
requests               2.28.0
rich                   13.4.2
scikit-image           0.19.3
scikit-learn           1.3.0
scipy                  1.7.3
seaborn                0.11.2
setuptools             65.5.0
setuptools-scm         6.4.2
Shapely                1.7.0
six                    1.16.0
sympy                  1.10.1
tabulate               0.8.9
termcolor              2.3.0
terminaltables         3.1.10
threadpoolctl          3.1.0
tifffile               2022.5.4
toml                   0.10.2
tomli                  2.0.1
tomlkit                0.11.1
torch                  1.8.2+cu102
torchaudio             0.8.2
torchvision            0.9.2+cu102
tqdm                   4.65.0
trackeval              1.0.dev1
typing_extensions      4.7.1
ubelt                  1.1.1
urllib3                1.26.9
wheel                  0.40.0
wrapt                  1.14.1
xdoctest               1.0.0
xmltodict              0.13.0
yapf                   0.40.1
zipp                   3.16.1

确认

要验证 MMTracking 和所需环境是否已正确安装,我们可以运行MOT、VIS、VID 和 SOT演示脚本之一:

这是 MOT 演示的示例:

python demo/demo_mot_vis.py configs/mot/deepsort/deepsort_faster-rcnn_r50_fpn_8xb2-4e_mot17halftrain_test-mot17halfval.py  --input demo/demo.mp4  --output mot.mp4

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/749344.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vue3 使用存储库Pinia(创建)

前言 使用vue编写项目时&#xff0c;经常用到组件传值&#xff0c;比如父传子、子传父、跨组件传值等&#xff0c;如果项目体量不大的情况这种方式完全够用&#xff0c;但如果项目大&#xff0c;内容丰富&#xff0c;那我们就需要用到状态管理工具——Pinia 官方文档 一、什么…

python优化库scipy.optimize测试(notebook版本)

代码链接notebook 数据准备 使用一个混合高斯分布作为测试&#xff08;两个均值不同的高斯分布相加&#xff09;&#xff0c;存在两个极值点(-1,-1)和(1,1) # 二维正态分布生成函数 def gaussian2d(x, y, x_mean, y_mean, x_std, y_std):return np.exp(-((x - x_mean) ** 2 …

Linux上安装jdk8环境

Linux上安装jdk8环境 一、Jdk8环境准备二、开始安装1. 创建压缩包位置2. 上传压缩包3. 解压压缩包4. 配置环境变量5. 查看安装版本 一、Jdk8环境准备 java8安装包下载可参考这篇文章&#xff1a;https://blog.csdn.net/qq_39939541/article/details/128065776 二、开始安装 …

1、Redis入门与应用

Redis入门与应用 Redis的技术全景 Redis一个开源的基于键值对&#xff08;Key-Value&#xff09;NoSQL数据库。使用ANSI C语言编写、支持网络、基于内存但支持持久化。性能优秀&#xff0c;并提供多种语言的API。 我们要首先理解一点&#xff0c;我们把Redis称为KV数据库&am…

Microsoft Update Assistant导致 MAC 电脑内存占用过高解决方案

目录 问题: 排查原因: 解决方案: 问题: 一直很苦恼,每次开机隔会发下电脑内存就 100%了,这次找了下原因,也记录下. 排查原因: 通过 mac 自带的活动监视器,发现居然是Microsoft Update Assistant它导致的 解决方案: 那这样就简单了,这个应该是 word,execl 的一个自动更新程序…

docker 发布镜像到阿里云容器镜像

1.登录阿里云 2.创建个人版实例&#xff0c;这里需要设置密码&#xff0c;一定要保存好 3.创建一个镜像仓库&#xff0c;个人实例最多创建3个 4.创建命名空间&#xff0c;个人实例最多300个 5.发布镜像到阿里云容器镜像 1、linux登录阿里云docker容器镜像 $ docker login --us…

文献推荐:将生态系统服务保护纳入生态脆弱地区城市规划政策优化——基于情景的案例研究

本文来源&#xff1a;i地理 本研究使用未来城市区域环境模拟 (FUTURES) 模型&#xff0c;以中国呼和浩特为研究区域&#xff0c;模拟量化2015-2023年自然情景、生态优先情景以及经济优先情景下的城市扩张。然后&#xff0c;计算了过去和未来时期关键生态系统服务的价值以及它们…

Hyperledger Fabric测试网络的准备和基本使用

文章目录 相关安装启动测试网络创建channel打包链码安装链码包通过链码定义链码定义提交给通道调用链码关闭网络遇到的问题1.docker保持启动状态2.忘起测试网络了3.Java版本过高&#xff0c;推荐1.8 相关安装 npm、node、git、docker、docker-compose。docker保证一直运行 serv…

考试系统的优势与劣势对比分析

考试是对学生学习成果的一种评估方式&#xff0c;而考试系统作为一种管理工具&#xff0c;可以有效地帮助学校和教师进行考试的组织和管理。然而&#xff0c;考试系统也存在一些优势和劣势。 一、优势 1. 方便快捷 考试系统的一个显著优势是它的方便快捷。学生可以通过电子设…

网络排查工具:MTR 命令使用详解

MTR 是一款强大的网络诊断工具&#xff0c; 全称 my traceroute&#xff0c;是一个把 ping 和 traceroute 合并到一个程序的网络诊断工具。默认发送ICMP数据包进行链路探测。 MTR的安装&#xff1a;yum -y install mtr 查看本机到 www.baidu.com 的路由以及连接情况直接运行如…

经典地理加权回归,半参数地理加权回归、多尺度地理加权回归、地理加权主成份分析、地理加权判别分析......

在自然和社会科学领域有大量与地理或空间有关的数据&#xff0c;这一类数据一般具有严重的空间异质性&#xff0c;而通常的统计学方法并不能处理空间异质性&#xff0c;因而对此类型的数据无能为力。以地理加权回归为基础的一系列方法&#xff1a;经典地理加权回归&#xff0c;…

机器学习实战 | 深度学习初级项目学习和总结

目录 简介神经网络类型和用法总结1. 卷积神经网络CNN特点结构用处 2. 循环神经网络RNN特点结构用处 3. 长短期记忆网络LSTM特点结构用处 基于Keras的神经网络用法总结1. 创建2. 编译3. 训练4. 保存5. 预测 简介 准备写个系列博客介绍机器学习实战中的部分公开项目。首先从初级…

二叉树进阶(搜索二叉树)

目录 引言 1.二叉搜索树的模拟实现 1.1 链式二叉树的定义 1.2 二叉搜索树的模拟实现 1.2.1 二叉搜索树的结点类 1.2.2 二叉搜索树类的构造与中序遍历实现 1.2.3 增 1.非递归实现 2.非递归实现 1.2.4 查 1.非递归实现 2.递归实现 1.2.5 删 1.非递归实现 (1)情…

【无标题】visual studio2019+Qt5.15.2+PCL1.12.1+vtk9.1.0+cmake3.22.2

安装VS------安装Qt-------安装PCL------安装cmake-----安装VTK-----环境配置 安装用了两天时间 1环境搭建 1.1 Visual Studio 2019 (PCL所需版本) https://my.visualstudio.com/Downloads?qvisual%20studio%202019&wt.mc_idomsftvscom~older-downloads 1.2 Qt安装 …

MySQL为什么要使用B+树做索引?MySQL索引存储模型推演,B+树在MySQL的落地形式

文章目录 一、什么是索引1、索引初体验2、索引图解3、索引类型 二、索引存储模型推演1、二分查找2、二叉查找树&#xff08;BST Binary Search Tree&#xff09;3、平衡二叉树&#xff08;AVL Tree&#xff09;&#xff08;左旋、右旋&#xff09;&#xff08;1&#xff09;平衡…

openGauss学习笔记-08 openGauss 数据类型

文章目录 openGauss学习笔记-08 openGauss 数据类型8.1 数值类型8.2 布尔类型8.3 字符类型8.4 二进制类型8.5 日期/时间类型8.6 几何类型8.7 网络地址类型8.8 位串类型8.9 文本搜索类型8.10 UUID数据类型8.11 JSON/JSONB类型8.12 HLL数据类型8.13 范围类型8.14 索引8.15 对象标…

C++笔记之虚析构函数的作用

C笔记之虚析构函数的作用 C中的虚析构函数用于确保通过基类指针删除派生类对象时&#xff0c;能正确调用派生类的析构函数&#xff0c;从而释放派生类对象所占用的资源。 在C中&#xff0c;析构函数用于释放对象所占用的资源&#xff0c;并进行清理操作。它与类的构造函数相对…

飞书ChatGPT机器人 – 打造智能问答助手

文章目录 前言环境列表1.飞书设置2.克隆feishu-chatgpt项目3.配置config.yaml文件4.运行feishu-chatgpt项目5.安装cpolar内网穿透6.固定公网地址7.机器人权限配置8.创建版本9.创建测试企业10. 机器人测试 前言 在飞书中创建chatGPT机器人并且对话&#xff0c;在下面操作步骤中…

spring cloud 之 Hystrix

Hystrix概述 Hystrix是一个供分布式系统使用&#xff0c;提供延迟和容错功能&#xff0c;保证复杂的分布系统在面临不可避免的失败是时&#xff0c;仍具有弹性。 当服务器A调用服务器B时&#xff0c;如果服务器B宕机&#xff0c;则服务器A不去调用。当服务器B在时间范围内未响…

Unity物理相关组件——2D关节

一&#xff1a;前言 关节组件用来模拟物体与物体之间的连接关系&#xff0c;必须依赖于刚体组件 二&#xff1a;Hinge Joint 2D 用于实现链条物体、钟摆等物体的模拟 ——Enable Collision&#xff1a;是否开启碰撞 ——Connected Rigid Body&#xff1a;关联的刚体&#xff0…