zoukankan      html  css  js  c++  java
  • Insightface实现

    我用的是pytorch版本(Windows 10系统,python 3.7),其项目地址在:https://github.com/TreB1eN/InsightFace_Pytorch

    预训练模型IR-SE50和Mobilefacenet的结果地址:https://pan.baidu.com/s/12BUjjwy1uUTEF9HCx5qvoQ    和   https://pan.baidu.com/s/1hqNNkcAjQOSxUjofboN6qg

    训练集emore的地址:https://pan.baidu.com/s/1eXohwNBHbbKXh5KHyItVhQ

    准备工作结束,开始训练自己的模型:

    1、下载mtcnn-pytorch模型(注意:是在InsightFace_Pytorch文件夹下):

    git clone https://github.com/TropComplique/mtcnn-pytorch.git

    这里不建议用这个指令,因为项目中本身包含了mtcnn_pytorch文件,git指令的这个文件夹里缺少部分文件,所以这步可以忽略。

    2、数据准备:

    (1)准备Facebank(用于通过摄像机或视频进行测试)

    在data / face_bank文件夹中提供要检测的面部图像,也就是自己的应用数据,并确保其结构如下:

    data/facebank/
            ---> id1/
                ---> id1_1.jpg
            ---> id2/
                ---> id2_1.jpg
            ---> id3/
                ---> id3_1.jpg
               ---> id3_2.jpg

    (2)将预训练的模型下载到work_space / model

    (3)准备训练集用于训练

    将emore数据集解压到data数据集下,运行:

    python prepare_data.py

    此时遇到问题:

    1)mxnet的安装:

    pip install --user mxnet

    得到结果如下(时间会有点长,毕竟有5822653张图):

    faces_emore/
                ---> agedb_30
                ---> calfw
                ---> cfp_ff
                --->  cfp_fp
                ---> cfp_fp
                ---> cplfw
                --->imgs
                ---> lfw
                ---> vgg2_fp

    (4)通过视频检测:

    python infer_on_video.py -f [video file name] -s [save file name]

    视频文件应位于data / face_bank文件夹中。

    1)报错:ModuleNotFoundError: No module named 'tensorboardX'

          解决:

    pip install tensorboardX

    2)报错:ValueError: Object arrays cannot be loaded when allow_pickle=False

         解决:降numpy的版本:

    pip install --user numpy==1.16.2

    3)报错:ModuleNotFoundError: No module named 'mtcnn_pytorch',这个问题就很迷。

          解决:

    pip install --user mtcnn_pytorch

     (5)摄像头检测:

    1)调用摄像头拍照的指令:

    python take_pic.py -n name

    t拍照,q退出,如果出现两个人就优先识别可能性最高的那个。

    2)将原来存在的照片放在facebank里面,文件结构如下:

    - facebank/
             name1/
                 photo1.jpg
                 photo2.jpg
                 ...
             name2/
                 photo1.jpg
                 photo2.jpg
                 ...
             .....

    然后运行:

    python face_verify.py 

    1)会出现一个错误:No such file or directory: 'work_space\save\model_cpu_final.pth'

    解决方案:放入model中的两个.pth文件将一个更该名字为model_cpu_final,pth,然后再work_space文件夹中新建save文件夹,将.pth文件放入文件夹中。

    2)另外,问题:RuntimeError: Error(s) in loading state_dict for Backbone:

    解决:

    (6)训练:

    python train.py -b [batch_size] -lr [learning rate] -e [epochs]
    
    # python train.py -net mobilefacenet -b 200 -w 4
  • 相关阅读:
    进阶新的阶段--LCD
    UART的调试
    s5pv210的定时器
    s5pv210的外部中断
    按键的轮询
    点亮指路灯
    队列里面的二级指针
    链表实现学生成绩管理系统
    链表基本功能
    new的用法
  • 原文地址:https://www.cnblogs.com/Fiona-Y/p/14096507.html
Copyright © 2011-2022 走看看