【人脸检测】 vedadet复现

参考

TinaFace: Strong but Simple Baseline for Face Detection

https://github.com/Media-Smart/vedadet

https://github.com/sovrasov/wider-face-pascal-voc-annotations

0.环境

ubuntu16.04python3.6cuda9.2cudnn7torch==1.6.0 cu92addict==2.4.0cycler==0.10.0Cython==0.29.21future==0.18.2kiwisolver==1.3.1matplotlib==3.3.3numpy==1.19.4Pillow==8.0.1pycurl==7.43.0pygobject==3.20.0pyparsing==2.4.7python-apt==1.1.0b1 ubuntu0.16.4.9python-dateutil==2.8.1six==1.15.0unattended-upgrades==0.1
cd vedadetpip install -r requirements/build.txt

避免出错,我直接安装环境中对应的python库,然后注释掉对应的根目录下setup.py中的安装依赖包的两行。

改为:

(默认会安装最新的,如果对应的cuda版本不支持的话,那就自己安装吧!!!)然后执行下面:

pip install -v -e .

1.准备

1.1 准备模型

https://drive.google.com/u/0/uc?id=1zU738coEVDBkLBUa4hvJUucL7dcSBT7v&export=download

可以将放到https://github.com/Media-Smart/vedadet/tree/main/configs/trainval/tinaface,目录下新建的models下。

1.2 准备数据

1)原始数据

https://github.com/Media-Smart/vedadet/tree/main/configs/trainval/tinaface

进入vedadet/目录下,新建data,然后进入data目录下,从widerface官网上下载训练、验证与测试数据:

解压从官网下载的数据,目录应该是这样:

vedadet├── vedadet├── vedacore├── tools├── configs├── data│   ├── WIDERFace│   │   ├── WIDER_train│   │   │   ├── images│   │   │   │      ├── 0--Parade│   │   │   │      ├── ......│   │   │   │      ├── 61--Street_Battle│   │   ├── WIDER_val│   │   │   ├── images│   │   │   │      ├── 0--Parade│   │   │   │      ├── ......│   │   │   │      ├── 61--Street_Battle│   │   ├── WIDER_test│   │   ├── wider_face_split

2)xml文件

下载对应的VOC格式的xml文件:

git clone https://github.com/sovrasov/wider-face-pascal-voc-annotations.gitcd vedadet/datamv wider-face-pascal-voc-annotations/ WIDERFace/mv WIDERFace/WIDER_train_annotations WIDERFace/WIDER_train/Annotationsmv WIDERFace/WIDER_val_annotations WIDERFace/WIDER_val/Annotations

然后利用命令:

cd ..sh configs/trainval/tinaface/gen_xml_name_txt.sh

目录结构如下:

vedadet├── vedadet├── vedacore├── tools├── configs├── data│   ├── WIDERFace│   │   ├── WIDER_train│   │   │   ├── images│   │   │   │      ├── 0--Parade│   │   │   │      ├── ......│   │   │   │      ├── 61--Street_Battle│   │   │   ├── Annotations│   │   ├── WIDER_val│   │   │   ├── images│   │   │   │      ├── 0--Parade│   │   │   │      ├── ......│   │   │   │      ├── 61--Street_Battle│   │   │   ├── Annotations│   │   ├── WIDER_test│   │   ├── wider_face_split

3)代码中路径等修改

由于与作者给出的目录略微有点不同,所以修改以下:

# \vedadet\configs\trainval\tinaface\tinaface.py line 14与38        img_prefix=data_root   'WIDER_train/',        img_prefix=data_root   'WIDER_val/',改为:        img_prefix=data_root   'WIDER_train/images/',        img_prefix=data_root   'WIDER_val/images/',# \vedadet\vedadet\datasets\widerface.py line 36-37            xml_path = osp.join(self.img_prefix, 'Annotations',                                f'{img_id}.xml')改为            xml_path = osp.join(self.img_prefix.replace('images','Annotations'),                                f'{img_id}.xml')

至此,基本就可以了。如果想修改数据的根目录:

# \vedadet\configs\trainval\tinaface\tinaface.py line 3 改为你对应的对应就可以了,绝对与相对路径都可以data_root = './data/WIDERFace/'

2.测试

python configs/trainval/tinaface/test_widerface.py configs/trainval/tinaface/tinaface.py /root/vedadet/weights/tinaface_r50_fpn_widerface.pth

来源:https://www.icode9.com/content-4-772651.html

(0)

相关推荐

  • yolo数据集制作

    文章目录 1.准备工作 2.需要这样的TXT 3.txt转xml 4.利用生成的xml生成4个txt 5.生成类别的TXT 1.准备工作 1.1.200类的,分类存放的数据集,每个文件夹内是具体的类别 ...

  • 使用度量学习进行特征嵌入:交叉熵和监督对比损失的效果对比

    分类是机器学习中最简单,最常见的任务之一. 例如,在计算机视觉中,您希望能够微调普通卷积神经网络(CNN)的最后一层,以将样本正确分类为某些类别(类). 但是,有几种根本不同的方法可以实现这一目标. ...

  • 新手教程 | 非模式物种GO/KEGG注释!使用 EggNOG-mapper 快速完成~

    前段时间,毕业转医学的师弟和我讨论了一些基因集合功能富集分析的项目.对于非模式生物来说,麻烦的不仅仅是富集分析,更在于"注释",如Gene Ontology注释和KEGG注释.聊到 ...

  • 【Mask R

    Mask R-CNN开源项目的设计非常易于扩展,只需做简单的修改就可以训练自己的数据集. 一.标注数据 这里我只是简单从ImageNet2012数据集中选取了两类图像:猫和狗,每一类各五十幅图像,作为 ...

  • YOLOv3制作自己数据集

    具体步骤参考下列链接: https://blog.csdn.net/sinat_27634939/article/details/89884011 注:原文网站:https://pjreddie.co ...

  • Open3D面向机器学习的扩展库

    Open3D-ML是Open3D的一个扩展,用于3D机器学习任务.它建立在Open3D核心库之上,并通过机器学习工具对其进行扩展,以进行3D数据处理.此repo集中于语义点云分割等应用程序,并提供可应 ...

  • 妙啊!MMDetection 训练自定义数据集

    深度学习发展到现在已经有很多优秀的模型,同时很多大公司也会在内部开发自己的框架,快速的实现业务,从而产生实际价值. 如下面的招聘要求一样,市场需要这些能熟练使用现有工具快速实现,MMDetection ...

  • 咸鱼K210体验笔记—模型训练

    咸鱼K210体验笔记-模型训练 1. 安装Anaconda3 2. 下载工具 3. 准备环境 4. 修改参数 5. 导入图片 6. 开始训练 7. 转换成Kmodel 此教程可以完整的在Win完成:制 ...

  • OpenCV入门教程(含人脸检测与常用图像处理示例等)

    在这篇文章中,我们将提供一些使用OpenCV的示例. 在OpenCV中混合图像 我们将提供一个逐步的示例,说明如何使用Python OpenCV混合图像.下面我们展示了目标图像和滤镜图像. 目标图像 ...

  • opencv基于DNN的人脸检测

    from:https://blog.csdn.net/minstyrain/article/details/78907425 opencv3.4 版之前自带的人脸检测器是基于Haar+Adaboost ...

  • 让特征感受野更灵活,腾讯优图提出非对称卡通人脸检测,推理速度仅50ms

    加入极市专业CV交流群,与 10000+来自港科大.北大.清华.中科院.CMU.腾讯.百度 等名校名企视觉开发者互动交流! 同时提供每月大咖直播分享.真实项目需求对接.干货资讯汇总,行业技术交流.关注 ...

  • 【直播课】6小时掌握人脸检测,完成企业级落地应用

    前言 人脸图像处理的相关技术与应用涉及身份识别.安全认证.人机交互和娱乐社交等领域,主要内容有人脸检测.人脸关键点检测.人脸识别.人脸属性识别.人脸属性分割.人脸美颜与美妆.人脸三维重建及人脸属性编辑 ...

  • 给OpenCV初学者的礼物——OpenCV人脸检测入门教程

    作者:小月月牙 编辑:王萌(深度学习冲鸭公众号) 著作权归作者所有,本文仅作学术分享,若侵权,请联系后台删文处理 前言 OpenCV是一种经常被用到的计算机视觉库.然而,它的文档是只用英文发布的.这对 ...

  • 加量不加价!极速人脸检测库libfacedetection升级v3版,新增五点检测

    前几天,该库悄然发布了v3版,新增功能就一个:人脸五点检测,这在很多人脸识别应用中是必须的.难能可贵的是加量不加价,作者称计算代价几乎不增加! 榨干CPU的所有计算潜力,指令集优化一直是该库能够进行高 ...

  • 目前最强开源人脸检测算法RetinaFace

    人脸检测为目标检测的特例,是商业化最早的目标检测算法,也是目前几乎各大CV方向AI公司的必争之地. WIDER FACE数据集是由香港中文大学发布的大型人脸数据集,含32,203幅图像和393,703 ...

  • 日本东北大学改进单阶段人脸检测—兼具速度与精度优势

    近日来自日本东北大学与Laboro.AI公司的研究人员公开一篇改进的单阶段人脸检测算法论文,其不仅保持了速度的优势而且在主流的人脸数据集上达到与双阶段人脸检测算法相当的精度. 作者信息: 按照算法流程 ...

  • 惊呆了!速度高达15000fps的人脸检测算法!

    昨天52CV君发现一篇奇文,<Face Detection at 15,000 FPS:Real-Time Inference on GPU and CPU>,速度高达15000fps的人 ...