【深度学习】【人脸检测模型】SCRFD模型的训练与部署实战

news2024/11/28 15:55:51

文章目录

  • Linux安装环境
    • python
    • insightface环境
  • 训练数据集准备
    • todo
  • 训练

Linux安装环境

python

我的cuda版本11.6:

$ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2022 NVIDIA Corporation
Built on Tue_Mar__8_18:18:20_PST_2022
Cuda compilation tools, release 11.6, V11.6.124
Build cuda_11.6.r11.6/compiler.31057947_0

miniconda更换源:
vim ~/.condarc

channels:
  - https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
  - https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
  - https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge/
ssl_verify: true
show_channel_urls: true
default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

创建新的python环境:

conda create -n py38_cc python=3.8 -y && conda activate py38_cc 

为了目前的兼容性,下载pytorch v1.12.1,https://pytorch.org/get-started/previous-versions/

conda install pytorch==1.12.1 torchvision==0.13.1 torchaudio==0.12.1 cudatoolkit=11.6 -c pytorch -c conda-forge
或者
pip install torch==1.12.1+cu116 torchvision==0.13.1+cu116 torchaudio==0.12.1 --extra-index-url https://download.pytorch.org/whl/cu116

等的时间太长,也可以加个自己的proxy:

export http_proxy=http://127.0.0.1:10809
export https_proxy=https://127.0.0.1:10809
conda config --set proxy_servers.http http://127.0.0.1:10809
conda config --set proxy_servers.https http://127.0.0.1:10809

Install MMCV using MIM.

pip install -U openmim
mim install mmcv-full

在这里插入图片描述

insightface环境

下载insightface源码:
https://github.com/deepinsight/insightface

去服务器scrfd路径:

cd detection/scrfd

执行:

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

训练数据集准备

label标记格式:

# <image_path> image_width image_height
bbox_x1 bbox_y1 bbox_x2 bbox_y2 (<keypoint,3>*N)
...
...
# <image_path> image_width image_height
bbox_x1 bbox_y1 bbox_x2 bbox_y2 (<keypoint,3>*N)
...
...

比如:

# 0--Parade/0_Parade_marchingband_1_849.jpg 1024 1385
449.00000 330.00000 571.00000 479.00000 488.90601 373.64301 0.00000 542.08899 376.44199 0.00000 515.03101 412.82999 0.00000 485.17401 425.89301 0.00000 538.35699 431.49100 0.00000
# 0--Parade/0_Parade_Parade_0_904.jpg 1024 1432
361.00000 98.00000 624.00000 437.00000 424.14301 251.65601 0.00000 547.13397 232.57100 0.00000 494.12100 325.87500 0.00000 453.82999 368.28601 0.00000 561.97803 342.83899 0.00000
# 0--Parade/0_Parade_marchingband_1_799.jpg 1024 768
78.00000 221.00000 85.00000 229.00000 -1.00000 -1.00000 -1.00000 -1.00000 -1.00000 -1.00000 -1.00000 -1.00000 -1.00000 -1.00000 -1.00000 -1.00000 -1.00000 -1.00000 -1.00000
78.00000 238.00000 92.00000 255.00000 84.18800 244.60699 1.00000 89.52700 244.49100 1.00000 86.97300 247.85699 1.00000 85.11600 250.64301 1.00000 88.48200 250.64301 1.00000
113.00000 212.00000 124.00000 227.00000 117.00000 220.00000 0.00000 122.00000 220.00000 0.00000 119.00000 222.00000 0.00000 118.00000 225.00000 0.00000 122.00000 225.00000 0.00000

todo

遇到问题

训练

CUDA_VISIBLE_DEVICES="0,1,2,3" PORT=29701 bash ./tools/dist_train.sh ./configs/scrfd/scrfd_1g.py 4

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

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

相关文章

gitlab占用内存太大了如何解决?

大家好&#xff0c;我是雄雄&#xff0c;欢迎关注微信公众号雄雄的小课堂 现在是&#xff1a;2023年5月30日16:58:15 最近在家里自己搞了个服务器&#xff0c;因为这台机器都不用了&#xff0c;从朋友那拿过来&#xff0c;就当服务器用了&#xff0c;看了下&#xff0c;比云服…

python基本操作2(速通版)

关于字符串的基本操作&#xff0c;以实例为主。 目录 一、字符串基本操作 1.基本字符串定义 2.字符串遍历 3字符串切片 二、字符串的常用方法 1.find函数 2.replace函数 3.count函数 4.分割和连接类的函数 5.字符串判断函数 6.去除字符串的 三、元组 1.元组的基本操…

离散数学-集合论

数学基础-离散数学-集合论 集合论是现代各科数学的基础&#xff0c;它起源于十六世纪末期的数集的研究。直到1876-1883年&#xff0c;康托尔发表了一系列有关集合论的文章&#xff0c;奠定了集合论的基础。1904-1908年&#xff0c;策墨罗(Zermelo)提出了集合论的公理系统&…

计算机组成原理-总线-总线的概念、事务和定时

目录 一、总线基本概念 总线特性 二、总线的分类 数据传输格式 2.2按总线的功能 2.2.1片内总线 2.2.2系统总线 2.2.3通信总线 2.3 按时序控制方式 三、系统总线的结构 3.1单总线结构 3.2双总线结构 3.3三总线结构 四、总线的性能指标 五、总线的4个阶段 六、总线的事…

5年测试经验,从月薪9k变1w5,进阶自动化测试真就这么香?

在这个吃技术的IT行业来说&#xff0c;我之前每天做的是最基础的工作&#xff0c;但是随着时间的消磨&#xff0c;我产生了对自我和岗位价值和意义的困惑。 一是感觉自己在浪费时间&#xff0c;另一个就是做了快2年的测试&#xff0c;感觉每天过得浑浑噩噩&#xff0c;薪资也从…

Java --- 云尚办公之微信公众号整合

目录 一、整合微信公众号 1.1、公众号菜单管理 1.2、微信授权登录 1.3、消息推送 一、整合微信公众号 1.1、公众号菜单管理 数据库表&#xff1a; CREATE TABLE wechat_menu (id BIGINT(20) NOT NULL AUTO_INCREMENT COMMENT 编号,parent_id BIGINT(20) DEFAULT NULL CO…

day42|动态规划4-背包问题分割等和子集

0-1背包和完全背包搞清楚即可。 0-1背包问题-一维 背包有最大重量的限制&#xff0c;物品有重量有价值&#xff0c;那么在最大背包的限制下&#xff0c;能够得到的最大价值是多少&#xff1f; 暴力解法 每个物品都有放和不放两种状态&#xff0c;那么遍历所有的组合就可以…

谷歌浏览器 | Chrome DevTools系统学习篇- Elements面板(上)

大家好&#xff0c;文接上上回谷歌浏览器 | Chrome DevTools系统学习篇-概述&#xff0c;和上文谷歌浏览器 | Chrome DevTools系统学习篇-Device Mode。所谓“工欲善其事&#xff0c;必先利其器”&#xff0c;我们进一步来熟悉谷歌开发者工具。今天分享的是Elements元素&#x…

我在亚马逊云平台的学习成长之路

前言 今年是亚马逊云科技成立的第16个年头&#xff0c;也是云计算行业诞生的16周年。作为云计算时代的“领头羊”&#xff0c;亚马逊2006年推出了名为Amazon Web Services(AWS)的新产品。AWS背后的想法是提供一个平台&#xff0c;同亚马逊内部使用的平台一样&#xff0c;将其作…

Three.js--》实现3d地月模型展示

目录 项目搭建 初始化three.js基础代码 创建月球模型 添加地球模型 添加模型标签 今天简单实现一个three.js的小Demo&#xff0c;加强自己对three知识的掌握与学习&#xff0c;只有在项目中才能灵活将所学知识运用起来&#xff0c;话不多说直接开始。 项目搭建 本案例还…

230530-论文整理-课题组2

对这些研究有点兴趣颇微。 文章目录 Rethinking Dense Retrieval’s Few-Shot AbilityDecoder-Only or Encoder-Decoder? Interpreting Language Model as a Regularized Encoder-DecoderPLOME: Pre-training with Misspelled Knowledge for Chinese Spelling CorrectionRead…

北邮22信通:复习补充:双向链表的实现

北邮22信通一枚~ 跟随课程进度每周更新数据结构与算法的代码和文章 持续关注作者 解锁更多邮苑信通专属代码~ 获取更多文章 请访问专栏&#xff1a; 北邮22信通_青山如墨雨如画的博客-CSDN博客 **说明** 最近复习看到书后有双向链表的题目&#xff0c;编出来供大家…

Mybatis-Plus 进阶开发-自定义乐观锁插件

文章目录 前言0. OptimisticLockerInnerInterceptor 介绍1. Mybatis-plus 实现乐观锁的原理2. 自定义乐观锁插件1. 创建自定义乐观锁插件2. 配置自定义乐观锁插件 3. 总结 &#x1f44f;作者简介&#xff1a;大家好&#xff0c;我是冰点&#xff0c;从业11年&#xff0c;目前在…

jmeter 性能测试工具的使用(Web性能测试)

1、下载 2023Jmeter性能测试项目实战教程&#xff0c;十年测试大佬手把手教你做性能&#xff01;_哔哩哔哩_bilibili2023Jmeter性能测试项目实战教程&#xff0c;十年测试大佬手把手教你做性能&#xff01;共计11条视频&#xff0c;包括&#xff1a;1.什么是性能测试以及性能测…

爬虫进阶-反爬破解1(反爬技术简介、HTTP网络基础知识、搭建代理服务)

目录 一、反爬技术简介 二、HTTP网络基础知识 三、搭建代理服务 一、反爬技术简介 &#xff08;一&#xff09;破解Web端反爬技术 1.常见的反爬策略方向&#xff1a;同一时间的请求数量、请求的身份信息、浏览器和爬虫的区别 2.浏览器和爬虫的不同&#xff1a;异步数据加…

Maui初体验

创建Maui应用程序 使用vs创建项目&#xff0c;选择maui模板。 生成即可。 体验Font. 下载字体&#xff0c;放在Font文件夹下&#xff0c;或者子文件夹。 将 文件的生成操作改成MauiFont. 注册字体 如果在Font的子文件夹下&#xff0c;则需要编辑项目&#xff0c;修改ItemGrou…

SeaFormer实战:使用SeaFormer实现图像分类任务(二)

文章目录 训练部分导入项目使用的库设置随机因子设置全局参数图像预处理与增强读取数据设置Loss设置模型设置优化器和学习率调整算法设置混合精度&#xff0c;DP多卡&#xff0c;EMA定义训练和验证函数训练函数验证函数调用训练和验证方法 运行以及结果查看测试热力图可视化展示…

Ansible任务控制与Ansible-Playbook

YAML特点 YAML 文件以 # 为注释符 YAML 文件以 .yml或者.yaml 结尾 YAML 文件以 --- 开始 &#xff0c; 以 ... 结束&#xff0c;但开始和结束标志都是可选的 基本语法 大小写敏感 使用缩进表示层级关系 缩进时是使用Tab键还是使用空格- -定要达到统- &#xff0c;建议使用空格…

SpringMVC第七阶段:SpringMVC的增删改查(02)

1、图书列表功能的实现 需要导入JSTL标签库的jar包: druid-1.1.9.jar junit_4.12.jar mysql-connector-java-5.1.37-bin.jar org.hamcrest.core_1.3.0.jar spring-aop-5.2.5.RELEASE.jar spring-beans-5.2.5.RELEASE.jar spring-context-5.2.5.RELEASE.jar spring-core-5.2.5…

操作系统期末复习——课时八——进程同步(二)

1、信号量 信号量机制是一种功能较强的机制&#xff0c;可用来解决互斥和同步问题&#xff0c;它只能被两个标准的原语wait(S)&#xff08;P操作&#xff09;和signal(S)&#xff08;V操作 &#xff09;访问。 注意&#xff1a;原语是一种特殊的程序段&#xff0c;其执行只能一…