MMdetection在VisDrone2019上训练FCOS和CenterNet

 配置环境

  1. Python 3.5+
  2. >=PyTorch 1.1
  3. >=CUDA 9.0
  4. NCCL 2
  5. >=GCC 4.9
  6. mmcv‘’

把mmdetection的代码下载下来

git clone https://github.com/open-mmlab/mmdetection.git

进入这个mmdetection文件,准备编译mmdetection的文件

cd mmdetection

装一下下面这些包,

# mmdetection的 requirements.txt里面的文件
pip install -r requrements.py

pip install cython 

pip install albumentations>=0.3.2 imagecorruptions pycocotools six terminaltables 

直接装mmcv在我这个环境里会报错

pip install mmcv

报错长这样,就是告诉你mmcv安装失败了

      RuntimeError: Error compiling objects for extension
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
error: legacy-install-failure

× Encountered error while trying to install package.
╰─> mmcv

note: This is an issue with the package mentioned above, not pip.
hint: See above for output from the failure.

解决方案是去mmcv的官方文档上

GitHub - open-mmlab/mmcv: OpenMMLab Computer Vision Foundation

Installation — mmcv 2.0.1 documentation

把你的cuda版本、torch版本选上,下面就会生成一条用pip安装的命令语句,你在自己的终端执行一下mmcv就安装好了        

将VisDrone转换成COCO格式

需要做这一步,然后把下面coco文件中的类别数和一些参数改了,包括均值和方差(这个可以先不改,跑通后再改),——然后运行

训练模型

所有的目标检测的模型都被放在了“/configs”

coco_detection.py的位置“configs/_base_/datasets”或“/mmdet/configs/_base_/datasets”

各个数据集的处理和转换“mmdet/datasets”

训练模型用的train.py放在了“./tools”

运行指令,开始训练

python tools/train.py configs/fcos/fcos_r50_caffe_fpn_gn-head_1x_coco.py

MMdetection实现的所有的10个FCOS模型:https://github.com/open-mmlab/mmdetection/tree/master/configs/fcos

FCOS模型中mAP最低的模型:https://github.com/open-mmlab/mmdetection/blob/master/configs/fcos/fcos_r50_caffe_fpn_gn-head_1x_coco.py (不知道要不要安装caffe?

MMdetection实现的2个CenterNet模型:https://github.com/open-mmlab/mmdetection/tree/master/configs/centernet

训练时候调用的train.py位于./tools下面

https://github.com/open-mmlab/mmdetection/blob/main/tools/train.py

 Reference:

将VisDrone数据集转换成COCO格式:将visdrone数据集转化为coco格式并在mmdetection上训练,附上转好的json文件_S5242的博客-CSDN博客

用MMdetection 训练自己的模型:(详细教程)mmdetection训练自己的模型,测试,评估_若风么么哒的博客-CSDN博客

 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

idea cannot download sources 解决方法

问题 点击class文件右上角下载源码失败 解决方案 找到idea terminal 控制台cd 至maven工程执行 mvn dependency:resolve -Dclassifiersources

ElasticSearch相关概念

1、概述 先说Elasticsearch的文件存储,Elasticsearch是面向文档型数据库,一条数据在这里就是一个文档,用JSON作为文档序列化的格式,比如下面这条用户数据: {"name" : "John","sex"…

web连接桌面打开gptmap

一:环境配置 需要的材料: python-3.10.4 我使用的是这个版本的,3.8.10 该版本和以下版本组件组合,验证过能正常运行(python 3.6.8测试异常) websockify 该项目有python版本和node js版本 noVNC 形式的app…

Android-网络访问技术Retrofit浅析

Retrofit是一种基于注解的网络请求库,专门用于在Android应用中进行网络访问。它使用简洁的方式定义了网络请求的接口,并自动将请求结果解析为Java对象。Retrofit的核心原理是利用了Java的动态代理技术,将网络请求接口的注解信息转化为具体的网…

JDK 20下载与安装 (Windows 11系统)

JDK(Java Development Kit)是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVMJava系统类库)和JAVA工具。 JDK 20 下载 JDK 官网路径&#xff1…

中期国际:MT4数据挖掘与分析方法:以数据为导向,制定有效的交易策略

在金融市场中,制定有效的交易策略是成功交易的关键。而要制定一份可靠的交易策略,数据挖掘与分析方法是不可或缺的工具。本文将介绍如何以数据为导向,利用MT4进行数据挖掘与分析,从而制定有效的交易策略。 首先,我们需…

一次网络不通“争吵“引发的思考

作者: 郑明泉、余凯 为啥争吵,吵什么? “你到底在说什么啊,我K8s的ecs节点要访问clb的地址不通和本地网卡有什么关系…” 气愤语气都从电话那头传了过来,这时电话两端都沉默了。过了好一会传来地铁小姐姐甜美的播报声…

消息队列

消息队列是和管道并列的概念,也是进程间通信IPC中的一种。 本文参考:消息队列(定义、结构、如何创建、消息队列的发送与接收、发送与接收实例)_咋么又饿了的博客-CSDN博客 基本概念 消息队列是一种先进先出的队列型数据结构&…

Stable Diffusion核心算法DDPM解析

DDPM:Denoising Diffusion Probabilistic Model,去噪扩散概率模型 本文参考:一个视频看懂扩散模型DDPM原理推导|AI绘画底层模型_哔哩哔哩_bilibili 1、大概原理 从右往左为正向加噪过程,从左往右为逆向降噪过程。 在正向过程中不…

专访 BlockPI:共建账户抽象未来的新一代 RPC 基础设施

在传统 RPC 服务板块上,开发者一直饱受故障风险、运行环境混乱等难题的折磨。实现 RPC 服务的去中心化,且保持成本优势和可扩展性,始终是区块链基础设施建设的重要命题之一。从 2018 年观察中心化 RPC 供应商服务现状开始,BlockPI…

Kubernetes 企业级高可用部署

1、Kubernetes高可用项目介绍 单master节点的可靠性不高,并不适合实际的生产环境。Kubernetes 高可用集群是保证 Master 节点中 API Server 服务的高可用。API Server 提供了 Kubernetes 各类资源对象增删改查的唯一访问入口,是整个 Kubernetes 系统的数…

使用断言抛异常操作

使用断言抛异常操作 常用方法 public static void isNull(Nullable Object object, String message) {if (object ! null) {throw new IllegalArgumentException(message);}}public static void notNull(Nullable Object object, String message) {if (object null) {throw n…

问道管理:股票打板风险大吗?怎么降低打板风险?

在股票市场上,一些出资者喜爱低吸,一些喜爱打板,那么,股票打板危险大吗?怎么下降打板危险?下面问道管理为大家准备了相关内容,以供参阅。 股票打板通常是指在个股涨停时买入,这种买入…

您可以购买 Banana Pi BPI-CM2 而不是 Raspberry Pi CM4。它提供什么?

最近,Banana Pi(SINOVOIP)推出了Banana Pi BPI-CM2系统级模块(SoM)。BPI-CM2 是类似于Raspberry Pi CM4 的计算模块,提供一系列令人印象深刻的功能。Banana BPI-CM2 SoM 采用Rockchip RK3568四核 Cortex-A5…

数据结构—排序

8.排序 8.1排序的概念 什么是排序? 排序:将一组杂乱无章的数据按一定规律顺序排列起来。即,将无序序列排成一个有序序列(由小到大或由大到小)的运算。 如果参加排序的数据结点包含多个数据域,那么排序往…

WebSocket服务端数据推送及心跳机制(Spring Boot + VUE)

一、WebSocket简介 HTML5规范在传统的web交互基础上为我们带来了众多的新特性,随着web技术被广泛用于web APP的开发,这些新特性得以推广和使用,而websocket作为一种新的web通信技术具有巨大意义。WebSocket是HTML5新增的协议,它的…

当你出差在外时,怎样轻松访问远程访问企业局域网象过河ERP系统?

文章目录 概述1.查看象过河服务端端口2.内网穿透3. 异地公网连接4. 固定公网地址4.1 保留一个固定TCP地址4.2 配置固定TCP地址 5. 使用固定地址连接 概述 ERP系统对于企业来说重要性不言而喻,不管是财务、生产、销售还是采购,都需要用到ERP系统来协助。…

快速解决Ubuntu 中 wine 程序 中文显示为方块/显示错误/无法显示中文(2023)

解决办法就是在创建prefix的命令行里加上LANG“zh_CN.UTF8” LC_ALL“zh_CN.UTF8”,并安装cjkfonts,即可。 1、生成prefix、安装cjk字体 以下是基本流程: 现在假定wine和winetricks已经装好, // 先创建一个prefix,按…

ArcGIS 利用cartogram插件制作变形地图

成果图 注:本图数据并不完全对,只做为测试用例 操作 首先需要下载一个插件cartogram 下载地址在这里 https://www.arcgis.com/home/item.html?idd348614c97264ae19b0311019a5f2276 下载完毕之后解压将Cartograms\HelpFiles下的所有文件复制到ArcGIS…

K8s实战4-使用Helm在Azure上部署Ingress-Nginx和Tokengateway

手动发布Ingress-Nginx 1 登录到aks(dfinder-gw-aks) az login az account set --subscription ${sub ID} az aks get-credentials --resource-group ${groupname} --name ${aks name} 2 下载 ingress-nginx-4.2.5.tgz curl -LO https://github.com/kubernetes/ingress-ngi…