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

news2024/11/24 16:02:55

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/752451.html

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

相关文章

基于SpringBoot+vue的校园闲置物品租售系统设计与实现

博主介绍&#xff1a; 大家好&#xff0c;我是一名在Java圈混迹十余年的程序员&#xff0c;精通Java编程语言&#xff0c;同时也熟练掌握微信小程序、Python和Android等技术&#xff0c;能够为大家提供全方位的技术支持和交流。 我擅长在JavaWeb、SSH、SSM、SpringBoot等框架…

postman:模拟发送一个需要 cookie 认证的请求

目录 前言&#xff1a; 1、chrome 已安装插件 intercept。 2、chrome 浏览器要设置打开&#xff0c;在运行期间浏览器要一直打开。 3、本人是用 fiddler 对 app 的请求进行抓包&#xff0c;也可以使用其他工具。查看 headers 里的 cookie&#xff0c;并复制。 4、将复制的…

Ubuntu安装zsh主题

安装zsh sudo apt install zsh安装git&#xff08;如果有跳过&#xff09; sudo apt install git(1条消息) 关于Git这一篇就够了_17岁boy想当攻城狮的博客-CSDN博客 安装oh my zsh git clone https://github.com/robbyrussell/oh-my-zsh切换目录到oh-my-zsh文件夹下的tools…

0基础学习VR全景平台篇 第62篇:通用功能-通用设置

公开&#xff1a;公开表示该作品对所有人可见&#xff0c;并且会在蛙色VR平台和个人主页显示。点击公开会切换成私人模式&#xff0c;私人则表示只有作者本人可以访问&#xff0c;他人即使获取了链接也无法打开。 预览&#xff1a;点击“预览”可以查看VR视频的效果&#xff0…

【LeetCode热题100】打卡第37天:岛屿数量反转链表

文章目录 【LeetCode热题100】打卡第37天&#xff1a;岛屿数量&反转链表⛅前言 岛屿数量&#x1f512;题目&#x1f511;题解 反转链表&#x1f512;题目&#x1f511;题解 【LeetCode热题100】打卡第37天&#xff1a;岛屿数量&反转链表 ⛅前言 大家好&#xff0c;我是…

kettle开发-Day41-数据清洗之字符串替换

前言&#xff1a; 昨天讲到了通过case/switch组件来进行分流&#xff0c;来区分日期里面三大类的数据&#xff0c;包括正常显示的2023/7/12 2:59:58的数据&#xff0c;一种是包含中文上午的数据&#xff0c;一种是包含中文下午的数据。但是我们发现这样直接存进去的数据还是包含…

时间有界 梦想无疆(NEBASE第十三课)

时间有界 梦想无疆(NEBASE第十三课) 1、计算机网络功能 数据通信、资源共享、增加数据可靠性、提高系统处理能力&#xff08;主要功能数所通信&#xff09; 2.标准&#xff1a;一致同意的规则可以理解为标谁 ISO&#xff08;国际标准化组织&#xff09;在网络通信中创建了OS…

前端学习——JS进阶 (Day1)

作用域 局部作用域 全局作用域 作用域链 JS垃圾回收机制 闭包 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name&qu…

walkRE2019--属性批量赋值

1、选中待赋值的图形&#xff0c;在加工菜单栏中选择属性赋值&#xff0c;如下&#xff1a; 选择图形所在图层&#xff0c;并使图层处于可编辑状态。选择要赋值的属性字段&#xff08;即要更新的列&#xff09;&#xff0c;选择要赋值的表达式&#xff08;即赋值为&#xff09;…

产品经理必备技能:高效产品规划方法论

作为产品经理&#xff0c;进行产品规划是非常重要的一项工作。产品规划是一个方法化的过程&#xff0c;需要考虑多个因素&#xff0c;以确保产品能够满足用户需求并实现商业目标。以下是几点建议&#xff0c;帮助产品经理进行产品规划。 第一&#xff0c;了解用户需求和市场情况…

【Unity编辑器扩展】编辑器代码一键添加按钮响应事件

此功能能是基于UI变量代码生成工具的改良扩展&#xff1a;【Unity编辑器扩展】UI变量代码自动生成工具(编辑器扩展干货/大幅提高效率)_ui代码自动生成_TopGames的博客-CSDN博客 工具效果预览&#xff1a; UGUI的Button按钮在编辑面板添加响应事件非常繁琐&#xff0c;需要拖个…

视频孪生在数字经济产业发展中所发挥的作用

2023年中共中央、国务院印发的《数字中国建设整体布局规划》中明确提出&#xff1a;培育壮大数字经济核心产业&#xff0c;研究制定推动数字产业高质量发展的措施&#xff0c;打造具有国际竞争力的数字产业集群。 推动数字技术和实体经济深度融合&#xff0c;在农业、工业、金…

七大排序算法——堆排序,通俗易懂的思路讲解与图解(完整Java代码)

文章目录 一、排序的概念排序的概念排序的稳定性七大排序算法 二、堆排序核心思想代码实现 三、性能分析四、七大排序算法 一、排序的概念 排序的概念 排序&#xff1a;所谓排序&#xff0c;就是使一串记录&#xff0c;按照其中的某个或某些关键字的大小&#xff0c;递增或递…

emacs下vercial-border审美观记录

昨天一晚上时间都花在了emacs的vercial-border上。 一开始还不知道这个名词&#xff0c;以为是treemacs展示的效果&#xff0c;毕竟我是在打开treemacs的时候&#xff0c;才发现这个分割线太丑了,我的审美观在蠢蠢欲动了。 谁说程序员没有审美观的&#xff1f;只是前面有别的东…

一文带你快速设计精美可视化大屏

一文带你快速设计精美可视化大屏 文章目录 一文带你快速设计精美可视化大屏&#x1f468;‍&#x1f3eb;前言&#xff1a;什么是可视化大屏&#x1f468;‍&#x1f52c;内容1&#xff1a;可视化大屏设计原则和设计考虑&#x1f468;‍⚖️内容2&#xff1a;可视化大屏设计流程…

第四章 数学知识(三)——高斯消元,组合

文章目录 高斯消元组合数1 < b < a < 20001 < b < a < 1000001 < b < a < 1 0 18 10^{18} 1018高精度组合数卡特兰数 高斯消元练习题884. 高斯消元解异或线性方程组 组合数练习题885. 求组合数 I886. 求组合数 II887. 求组合数 III888. 求组合数 I…

【AUTOSAR】:NvM

Autosar的NvM理解 AUTOSAR_SWS_NVRAMManager.pdf块的定义块的管理类型块的状态重点梳理:几个常用的API函数AUTOSAR_SWS_MemoryAbstractionInterface.pdf里面对存储的HAL抽象衍生出几个重要的MainFunctionNV (non volatile):非亦失性,也就是我们需要将数据存储到Flash或外部E…

谈谈企业未来如何实现有序用电

摘 要&#xff1a;风光发电的大比例发展将对电网需要的转动惯量和备用产生致命影响&#xff0c;严重威胁电网的平稳运行&#xff0c;本文结合AcrelEMS企业微电网系统谈谈企业如何应对。 关键词&#xff1a;有序用电 调节负荷 综合能源管理 企业微电网 0 引言 自2020年9月以来&…

android linker加载和链接机制

文章目录 So的加载和启动So文件的读取与加载工作ReadProgramHeaderReserveAddressSpaceLoadSegmentsFindPhdr so 的链接机制动态节区 执行so文件原文地址&#xff1a; So的加载和启动 handledlopen(pathName,PTLD_LAZY)&#xff1b;//获得指定文件的句柄&#xff0c;这个handl…

SpringAMQP - 消息传输时,如何提高性能?解决 SQL 注入问题?

目录 一、问题背景 二、从消息转化器根源解决问题 1.引入依赖 2.在服务生产者和消费者中都重新定义一个 MessageConverter&#xff0c;注入到 Spring 容器中 一、问题背景 在SpringAMQP的发送方法中&#xff0c;接收消息的类型是Object&#xff0c;也就是说我们可以发送任意…