[Day13] 使用OpenCV & Dlib作人脸侦测需要知道的一些事

本文开始

回顾一下过去四天提到的,使用OpenCV & Dlib做人脸侦测的方法:

几种情况下的选择:

  1. 不在乎准确度,但需要在树莓派或是其他微型电脑上运行 -- 使用哈尔特徵检测
  2. 特别在意准确度,硬体资源足够强大 -- 使用Dlib神经网路检测法
  3. 有选择障碍不知道要用哪个比较好 -- 先从OpenCV神经网路检测法开始就对了
  4. 要做手机应用App -- 以上四种方法都不要选;否则你碰到的不是Python语言很难做手机应用相关文件很少、或是你就要栽进C++编译的问题中

你说为什麽没有提到Dlib特徵检测法?

因为在後面文章里,我们要实际开发人脸互动应用中,我们才会使用它,通常在只做人脸侦测功能时不太会需要用到这个方法。


关於这四种人脸侦测方法,或是所有其他你知道的人脸侦测功能,最後的结果都一定会有前面文章提到的边界框 (Bounding Box)

由於边界框通常都是矩形框,而矩形没有办法用一致的范围标示出人脸的位置

什麽意思?请看下面的范例图片:
opencv_dlib_1

因为不同方法在侦测人脸的算法也不同,导致判断人脸范围虽然都包含脸部,可是框住的人脸(x, y, w, h)都是不同的

  • 如果今天要做的只是人脸侦测或是人脸辨识,那你可以很安心的使用你喜欢的方法。
  • 如果今天要做的是人脸关键点检测,如果关键点检测的模型与人脸侦测的模型不同,你会看到很奇妙的辨识结果出现。

(有兴趣的人可以用这段程序码来跑看看你的脸会不会有同样结果;或是可以跟Google, AWS等平台的辨识结果比较看看有什麽不同)

关於人脸侦测 (Face Detection)到这边差不多都说完了,这些经验希望能够帮助你未来有从事类似领域的专案时,可以有一点点的帮助。

下一篇将从人脸识别 (Facial Recognition)开始,明天见!


<<:  献出你的心脏,将AWS EC2注入新生命

>>:  [13th][Day18] try nginx

29. 从学生社团到技术社群 x Web实验室 x React 特调

Web 实验室 :创办人 KK 是资深工程师与创业者,网路上可以看到他的许多技术文章、影片分享,也...

峰禾影视

峰禾影视 峰禾影视电影电视剧频道拥有海量热门经典和2021最新的电影电视剧等,优质影视大片高清免费在...

实用的 each_cons 方法,Ruby 30 天刷题修行篇第十二话

嗨,我是A Fei,今天真的忙翻,以下是今天的题目: (题目来源: Codewars) The ma...

[Day 21] 调整模型超参数利器 - Optuna

Optuna 今日学习目标 Optuna 如何采样参数? 实作 Optuna 搜寻最佳超参数 以 X...

Day 15 放射线背景

放射线背景 教学原文参考:放射线背景 这篇文章会介绍使用 GIMP 的渐层填色,搭配滤镜的「小小星球...