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

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.compip 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 1import.__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.htmlpip 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-mmlabconda install pytorch=1.11.0 torchvision cudatoolkit=11.3 -c pytorchpip 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.hqwc.cn/news/28226.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

低代码或将颠覆开发行业?

文章目录 前言一、什么是低代码开发平台二、强大的平台总结 前言 传统的软件开发过程往往需要耗费大量的时间和精力&#xff0c;因为开发人员需编写复杂的代码以完成各种功能。 低代码行业的发展&#xff0c;正好解决了这个问题&#xff0c;让复杂的代码编写一去不复返了。 …

阿里云GPU服务器使用教程_创建_连接_GPU驱动_实践教程

阿里云GPU服务器怎么使用&#xff1f;先创建GPU实例、GPU云服务器远程连接&#xff0c;为GPU云服务器安装GPU驱动、安装GRID驱动等&#xff0c;使用GPU服务器部署NGC环境、GPU AI模型训练教程、在GPU实例上使用RAPIDS加速机器学习任务、RAPIDS加速机器学习等使用教程&#xff0…

Redis数据类型与常用命令

文章目录 前言一、Redis数据类型1. Redis数据类型简介2. Redis数据类型特点 二、Redis常用命令1. 字符串string 操作命令2. 哈希hash 操作命令3. 列表list 操作命令4. 集合set操作命令5. 有序集合 sorted set 操作命令6. 通用命令 总结 前言 为了巩固所学的知识&#xff0c;作…

0基础学习VR全景平台篇 第62篇:基本功能-如何发布VR视频

戳我先了解“全景视频上传规范” 1、点击【上传】按钮&#xff0c;打开本地文件夹&#xff0c;上传符合要求的全景视频素材&#xff0c;可以选择单个或多个视频同时上传。 2、视频上传成功以后&#xff0c;需要处理一段时间&#xff0c;请耐心等待。 视频处理好以后&#xff0…

element-plus坑总结

reactive和ref对比 // 定义变量 import { reactive } from vue; const person reactive({name: "John",age: 25, });// 赋值修改 person.name "Tom"; person.age 26;// 使用变量 <div>{{ person.name }}</div> <button click"perso…

java用 postman输入 数字 会加上单引号 和逗号,方便查询

java用 postman输入 数字 会加上单引号 和逗号&#xff0c;方便查询 /*** 输入12575726* 891006* 12575726* 891006* 返回* 12575726,* 891006,* 12575726,* 891006* 方便查询数据* param data* return*/RequestMapping(value "l…

MySQL八股学习记录5MySQL锁from小林coding

MySQL八股学习记录5MySQL锁from小林coding 锁的总览全局锁表级锁表锁元数据锁意向锁AUTO-INC锁 行级锁Record LockGap LockNext-Key-Lock插入意向锁行级锁是如何作用的唯一索引等值查询 唯一索引范围查询非唯一索引等值查询 锁的总览 MySQL锁分为三种,分别是全局锁,表级锁,行级…

从零开始学习 Java:简单易懂的入门指南(一)

Java基础语法 1. 人机交互1.1 什么是cmd&#xff1f;1.2 如何打开CMD窗口&#xff1f;1.3 常用CMD命令1.4 CMD练习1.5 环境变量 2. Java概述1.1 Java是什么&#xff1f;1.2下载和安装1.2.1 下载1.2.2 安装1.2.3 JDK的安装目录介绍 1.3 HelloWorld小案例1.3.1 Java程序开发运行…

RK3588+FPGA视频实时处理与双屏显示、存储解决方案

主板平台的主要功能电路示意图 在ARM端: 脚踏开关是电平输入10 口&#xff0c;双路。 触摸面板与主板的连接方式为 UART 外加12V 电源。 键盘为自开发产品&#xff0c;通过USB透传 UART&#xff0c;并传递12V电源USB、千兆网络为主板上的接口&#xff0c;USB 为3.0版本host 接口…

【iOS】编译与链接

前言 计算机语言分为机器语言、汇编语言和高级语言。 可以将高级语言分为两种&#xff1a;编译语言和解释型语言&#xff08;直译式语言&#xff09;。 解释型语言&#xff08;逐步进行解释执行&#xff09; 解释语言编写的程序在每次运行时都需要通过解释器对程序进行动态…

23.AOP

AOP AOP&#xff08;Aspect Oriented Programming&#xff09;是一种设计思想&#xff0c;是软件设计领域中的面向切面编程&#xff0c;它是面向对象编程的一种补充和完善&#xff0c;它以通过预编译方式和运行期动态代理方式实现在不修改源代码的情况下给程序动态统一添加额外…

postgresql导入导出数据库的一些问题

新建一个数据库 别忘了添加空间数据的扩展 备份之前的数据库 注意一定要自定义表&#xff0c;去掉 spatial_ref_sys &#xff0c;要不然需要先drop在创建&#xff0c;可能会报错。 一般不会去导函数&#xff0c;如果有个别自己创建的函数可以手动复制一下&#xff0c;全部导的话…