Skip to content

universea/Lip-Words-Recognition

Repository files navigation

Lip-Words

基础信息

竞赛信息:

​ 比赛挑战题目为“唇语识别”,该项技术可应用于金融在线业务的生物识别、噪声环境下辅助语音识别、辅助听障人士交流,体育赛事暴力语言识别、安防取证等多个领域,期待挑战者利用机器学习和人工智能的最新成果,设计出区分能力强,稳定性高的唇语识别模型。

竞赛网址

模型方案:
初赛模型 ACC Size seg_num
Resnet50 (Paddle) 0.76 100 12
Resnet50 (Paddle) 0.80 100 24
Resnet50 (Paddle) 0.828 100 12 -> 24
Resnet101 (Torch) 0.82~0.83 184 24
50P+101T 0.85245 --- 24
决赛模型 ACC Size seg_num
Resnet50 (Paddle) 0.8842 128 24
Resnet101 (Torch) 0.9167 184 24
50P+101T 0.931 --- 24

本机环境:(皆为最新版本)

  • 单卡1080Ti
  • ubuntu18.04
  • CUDA10
  • CUDNN

安装:

PaddlePaddle

conda create -n paddlepaddle python=3.7
source activate paddlepaddle
pip install paddlepaddle-gpu
pip install requirements.txt

数据集路径设置

解压压缩包,将lip_train、lip_test、lip_train.txt放置到一个data的目录下

data:
    /lip_train
    /lip_test
    /lip_train.txt

操作步骤

第一步(数据准备,生成list):

​ 修改 tools/make_dataset.py 文件__main__下的数据集路径data_dir为自己的数据集路径'/xxx/data/',然后执行

python tools/make_dataset.py

最终会在数据集所在路径生成 train.list、val.list、test.list三个列表,和train、val、test三个文件夹

第二步(配置文件): 修改 configs/tsm.txt配置文件里的所有filelist文件路径信息 总共[TRAIN]、[VALID]、[TEST]、[INFER],四个路径需要修改的

第三步(开始训练):

1、如若从头训练,执行

python train.py --epoch 200 --use_gpu True --pretrain False

2、如若有预训练模型,执行

python train.py --epoch 200 --use_gpu True --resume checkpoints_models_best/

第四步:

预测结果会有以时间戳命名的两个文件

  • 15xxxxxxxx_result.csv
  • score_15xxxxxxxx_result.csv

第一个文件可以直接用来提交结果,第二个文件是用来进行模型融合的(包含了score列),执行

 python infer.py --weights checkpoints_models_best

About

1th place solution in Lip Words Competition

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published