搞了四天的REID环境配置

2024-01-31 01:32
文章标签 配置 环境 reid 四天

本文主要是介绍搞了四天的REID环境配置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

我先跟大家说一下我存在的哪几类报错吧

1.c++的依赖环境没安装   (安装c++的依赖环境链接:https://pan.baidu.com/s/1FzIyQ1OpxI7DxNCUwyot2Q 提取码:ux9q )

2.Broken pipe 报错  (把ImageDataManager函数中workers设置为0)

 

3.我在重新安装命令python setup.py develop的时候存在

D:\Study- Place\AI\YOLO\Yolov5_DeepSort_Pytorch\REID\reid-original\deep-person-reid-master\torchreid\metrics\rank_cylib\rank_cy.cp37-win_amd64.pyd 拒绝访问的问题

(你把这个文件删除就可重新安装了)

正文开始

首先到https://github.com/KaiyangZhou/这下载源码

解压完成后就是这样的文件形式

然后cd到文件目录下

 执行这下面这几条命令(并且在其中全点y)

conda create --name torchreid python=3.7
conda activate torchreid
pip install -r requirements.txt
conda install pytorch torchvision cudatoolkit=9.0 -c pytorch  (这条命令你需要在torch官网上查询对应torch版本 (建议使用anaconda下载,我下的是11.3的版本))
python setup.py develop

 

然后显示Finish的字样就是完成了

尝试pip show torchreid看看是否存在问题,显示正常信息那就不存在问题了

这是我文件的目录 reid.py是训练代码

# 模块引入
import torchreid
import torch
device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")
# 加载数据管理器
datamanager = torchreid.data.ImageDataManager(root='reid-data',sources='market1501',targets='market1501',height=256,width=128,batch_size_train=32,batch_size_test=100,transforms=['random_flip', 'random_crop']
)
# 构建模型、优化器和lr_scheduler
model = torchreid.models.build_model(name='resnet50',num_classes=datamanager.num_train_pids,loss='softmax',pretrained=True
)model = model.to(device)
#model = model.cuda()
optimizer = torchreid.optim.build_optimizer(model,optim='adam',lr=0.0003
)scheduler = torchreid.optim.build_lr_scheduler(optimizer,lr_scheduler='single_step',stepsize=20
)
# Build engine
engine = torchreid.engine.ImageSoftmaxEngine(datamanager,model,optimizer=optimizer,scheduler=scheduler,label_smooth=True
)
# 进行培训和测试
engine.run(save_dir='log/resnet50',max_epoch=60,eval_freq=10,print_freq=10,test_only=False
)

数据集我是用的是market1501数据格式是这样的

 数据集market1501在csdn上一查就有

代码教程是在How-to — torchreid 1.4.0 documentation (kaiyangzhou.github.io)上的

 

这篇关于搞了四天的REID环境配置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/662189

相关文章

Zookeeper安装和配置说明

一、Zookeeper的搭建方式 Zookeeper安装方式有三种,单机模式和集群模式以及伪集群模式。 ■ 单机模式:Zookeeper只运行在一台服务器上,适合测试环境; ■ 伪集群模式:就是在一台物理机上运行多个Zookeeper 实例; ■ 集群模式:Zookeeper运行于一个集群上,适合生产环境,这个计算机集群被称为一个“集合体”(ensemble) Zookeeper通过复制来实现

CentOS7安装配置mysql5.7 tar免安装版

一、CentOS7.4系统自带mariadb # 查看系统自带的Mariadb[root@localhost~]# rpm -qa|grep mariadbmariadb-libs-5.5.44-2.el7.centos.x86_64# 卸载系统自带的Mariadb[root@localhost ~]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7

hadoop开启回收站配置

开启回收站功能,可以将删除的文件在不超时的情况下,恢复原数据,起到防止误删除、备份等作用。 开启回收站功能参数说明 (1)默认值fs.trash.interval = 0,0表示禁用回收站;其他值表示设置文件的存活时间。 (2)默认值fs.trash.checkpoint.interval = 0,检查回收站的间隔时间。如果该值为0,则该值设置和fs.trash.interval的参数值相等。

NameNode内存生产配置

Hadoop2.x 系列,配置 NameNode 内存 NameNode 内存默认 2000m ,如果服务器内存 4G , NameNode 内存可以配置 3g 。在 hadoop-env.sh 文件中配置如下。 HADOOP_NAMENODE_OPTS=-Xmx3072m Hadoop3.x 系列,配置 Nam

wolfSSL参数设置或配置项解释

1. wolfCrypt Only 解释:wolfCrypt是一个开源的、轻量级的、可移植的加密库,支持多种加密算法和协议。选择“wolfCrypt Only”意味着系统或应用将仅使用wolfCrypt库进行加密操作,而不依赖其他加密库。 2. DTLS Support 解释:DTLS(Datagram Transport Layer Security)是一种基于UDP的安全协议,提供类似于

阿里开源语音识别SenseVoiceWindows环境部署

SenseVoice介绍 SenseVoice 专注于高精度多语言语音识别、情感辨识和音频事件检测多语言识别: 采用超过 40 万小时数据训练,支持超过 50 种语言,识别效果上优于 Whisper 模型。富文本识别:具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。高效推

【Python编程】Linux创建虚拟环境并配置与notebook相连接

1.创建 使用 venv 创建虚拟环境。例如,在当前目录下创建一个名为 myenv 的虚拟环境: python3 -m venv myenv 2.激活 激活虚拟环境使其成为当前终端会话的活动环境。运行: source myenv/bin/activate 3.与notebook连接 在虚拟环境中,使用 pip 安装 Jupyter 和 ipykernel: pip instal

安装nodejs环境

本文介绍了如何通过nvm(NodeVersionManager)安装和管理Node.js及npm的不同版本,包括下载安装脚本、检查版本并安装特定版本的方法。 1、安装nvm curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash 2、查看nvm版本 nvm --version 3、安装

【IPV6从入门到起飞】5-1 IPV6+Home Assistant(搭建基本环境)

【IPV6从入门到起飞】5-1 IPV6+Home Assistant #搭建基本环境 1 背景2 docker下载 hass3 创建容器4 浏览器访问 hass5 手机APP远程访问hass6 更多玩法 1 背景 既然电脑可以IPV6入站,手机流量可以访问IPV6网络的服务,为什么不在电脑搭建Home Assistant(hass),来控制你的设备呢?@智能家居 @万物互联

高并发环境中保持幂等性

在高并发环境中保持幂等性是一项重要的挑战。幂等性指的是无论操作执行多少次,其效果都是相同的。确保操作的幂等性可以避免重复执行带来的副作用。以下是一些保持幂等性的常用方法: 唯一标识符: 请求唯一标识:在每次请求中引入唯一标识符(如 UUID 或者生成的唯一 ID),在处理请求时,系统可以检查这个标识符是否已经处理过,如果是,则忽略重复请求。幂等键(Idempotency Key):客户端在每次