不经意间瞄了一眼日历,惊觉2020年已所剩无几,回望即将过去的一年,不禁感叹唏嘘。时光带走了很多的烦恼和美好,也带来了很多困惑和收获。怎样才能不被淹没在时间的洪流里呢,唯有在风浪中保持清醒和方向,而不断地学习和输出就是那支驾驭风浪的桨。

从系统设计一头扎进算法的漩涡,经过了一阵子的蒙圈,然后一点一点摸索着理清思路和方向。在知识爆炸的时代,最好的积累就是把每一步记录下来,变成自己的脚印。前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家,感兴趣的朋友可以去这里了解一下。

前些天调研了人脸检测算法,这几天在做人脸关键点定位和人脸对齐。在网上找了一个开源的人脸对齐项目,本地做了适当适配后验证OK,本篇就单纯记录这个对齐算法的实现。

项目地址:https://github.com/610265158/face_landmark

该项目基于Tensorflow2.0,比较简单灵活。下面是一些Demo图片:

项目运行环境:

  • tensorflow2.0
  • tensorpack (for data provider)
  • opencv
  • python 3.6

数据集:

训练使用的是300W的数据集,数据集地址:i·bug - resources - Facial point annotations

该数据集涵盖了大量变化的人脸数据,包括不同的主题、姿势、光照、遮挡等,数据集采用68点标注,如下:

数据按照如下格式存放:

├── 300VW
│   ├── 001_annot
│   ├── 002_annot
│       ....
├── 300W
│   ├── 01_Indoor
│   └── 02_Outdoor
├── AFW
│   └── afw
├── HELEN
│   ├── testset
│   └── trainset
├── IBUG
│   └── ibug
├── LFPW
│   ├── testset
│   └── trainset

训练

如果想要训练自己的模型,下载完数据集后,需要首先运行如下命令来生成训练和验证的JSON文件:

python make_json.py

需要注意的是,make_json.py文件中,需要正确配置数据集的路径,否则无法生成正确的train.json和val.json。

data_dir='300W'      ########points to your director,300w

完成以上步骤后,运行如下命令进行模型训练:

python train.py

默认情况下,会使用ShuffleNetV2_1.0进行训练,如果想要修改网络,可在train_config.py文件中的如下位置进行配置:

模型使用Demo

可使用训练出来的模型进行推理,如果不想自己训练,也可以直接下载已训练好的模型:model (提取码:rt7p)

运行如下命令行进行Demo测试:

python vis.py --model ./model/keypoints

其中,./model/keypoints是模型的存放位置,模型存放格式如下:

 ./model/└── keypoints├── saved_model.pb└── variables├── variables.data-00000-of-00002├── variables.data-00001-of-00002└── variables.index

也可以先将模型转换为tflite格式,然后使用tflite模型进行推理。模型转换命令:

python ./tools/convert_to_tflite.py

tflite模型推理命令:

python vis.py --model ./model/converted_model.tflite

下面是使用下载下来的模型的一些Demo结果:

人脸关键点检测face_landmark相关推荐

  1. 创意赛第二季又来了,PaddleHub人脸关键点检测实现猫脸人嘴特效

    前段时间,下班后闲来无事,参加了百度PaddleHub的AI人像抠图创意赛,凭借着大家的阅读量,获得了一个第三名,得了一个小度音响,真香啊! 对,说的是我 小奖品 PaddleHub创意赛第二期又出来 ...

  2. paddle2.0高层API实现人脸关键点检测(人脸关键点检测综述_自定义网络_paddleHub_趣味ps)

    paddle2.0高层API实现人脸关键点检测(人脸关键点检测综述_自定义网络_paddleHub_趣味ps) 本文包含了: - 人脸关键点检测综述 - 人脸关键点检测数据集介绍以及数据处理实现 - ...

  3. 【机器视觉案例】(11) 眨眼计数器,人脸关键点检测,附python完整代码

    各位同学好,今天和大家分享一下如何使用 mediapipe+opencv 实现眨眼计数器.先放张图看效果. 下图左侧为视频图像,右侧为平滑后的人眼开合比曲线.以左眼为例,若眼眶上下边界的距离与左右边界 ...

  4. 「每周CV论文推荐」 初学深度学习人脸关键点检测必读文章

    人脸关键点检测是人脸图像中重要的基石,今天给大家介绍入门深度学习人脸关键点检测必读的文章. 作者&编辑 | 言有三 1 DCNN Cascade 听这个名字就知道是一个很早期的,使用Casca ...

  5. python人脸识别、人脸关键点检测、性别检测

    python人脸识别.人脸关键点检测.性别检测 文章目录 根据人脸预测年龄性别和情绪 (python + keras)(三) 一款入门级的人脸.视频.文字检测以及识别的项目. age-gender-e ...

  6. CNN人脸关键点检测

    CNN人脸关键点检测 参考文献<Deep Convolutional Network Cascade for Facial Point Detection>\ 摘要 提出一种利用精心设计的 ...

  7. 使用OpenCV进行人脸关键点检测

    使用OpenCV进行人脸关键点检测 1 双脸效果 2 单脸效果

  8. 人脸识别,人脸关键点检测算法

    from http://blog.csdn.net/sloanqin/article/details/48193119 1 Face++:http://www.faceplusplus.com.cn/ ...

  9. 【CV秋季划】人脸关键点检测,人脸识别视频更新

    本次给大家带来的是有三AI-CV秋季划-人脸算法组的视频,包括人脸关键点检测,人脸识别两期的内容,如果你还不知道有三AI-CV秋季划-人脸算法组是什么,可以看下面的视频和图文. 点击边框调出视频工具条 ...

  10. 【每周CV论文推荐】 初学深度学习人脸关键点检测必读文章

    欢迎来到<每周CV论文推荐>.在这个专栏里,还是本着有三AI一贯的原则,专注于让大家能够系统性完成学习,所以我们推荐的文章也必定是同一主题的. 人脸关键点检测是人脸图像中重要的基石,今天给 ...

最新文章

  1. VBS遍历Excel工作表的方法
  2. apache 服务发布多个项目,只需要更改配置文件(需要设定虚拟主机)
  3. contos7设置固定ip和dns_CentOS7 修改设置静态IP和DNS
  4. 圣诞节,程序员应该给女朋友送一个线上圣诞树
  5. Linux C编程学习--main()函数简析
  6. 在.NET中调用存储过程
  7. 深入研究memcache 特性和限制
  8. a pycharm 标记多个_轻松学透Markdown的终极教程 #3:Markdown标准标记语法(全)
  9. Windows via C/C++ 学习(6)内核对象
  10. 【Mybatis】Mybatis三大组件之StatementHandler
  11. 我是如何在开源系统中(Vue)中引入阿里巴巴Icon图标的?
  12. [笑话]1+1等于几?(新版)
  13. Matplotlib库学习笔记(4) pyplot的文本显示以及Latex的使用
  14. 《Git与Github使用笔记》第8章 github常见操作和常见错误
  15. Mysql上周,上月,去年同期年周数
  16. 服务器修复oxc0000098,修复oxc0000098的方法
  17. python数据分析设置教程视频_炼数成金女讲师Python数据分析实战应用视频教程
  18. 如何进阶为数据科学家
  19. 帆船指南-原则-船体结构
  20. Web系统大规模并发——电商秒杀与抢购

热门文章

  1. 求助:Python识别PDF段落和翻译的问题
  2. Qt之QTcpSocket 跨线程连续发送大数据
  3. php ctype xdigit,PHP中的ctype_xdigit()函数
  4. Microsoft VS Code安装教程
  5. axure9怎么让页面上下滑动_Axure如何实现同页面上下、左右滑动
  6. Calling LoadLibraryEx on ISAPI filter failed
  7. javaweb mysql毕业生管理系统_javaweb高校毕业生就业管理系统, springmvc+mysql
  8. element ui 前台模板_简单了解Vue + ElementUI后台管理模板
  9. 【运营数据分析】运营数据分析怎么做?建立运营数据分析思维
  10. 广东诚美计算机专修学院面试,三下乡|一轮面试,与你不期而遇