15

任何人都可以建议我使用 Java 中的开源人脸识别框架吗?

4

3 回答 3

17

您可以尝试一些开源的人脸识别 Java 系统,但不要抱太大希望,因为我正在寻找相同的东西,但我仍在寻找更好的选择!

请注意,在图像中找到任何人脸称为“人脸检测”,跟踪任何人脸称为“人脸跟踪”,确定检测到的人脸的身份称为“人脸识别”。我告诉你这个是因为你可能必须使用不同的软件和算法来做每一个!Paul 的回答告诉你 OpenCV 可以轻松地进行人脸检测(Haar Cascade Detector),但人脸识别却不是那么容易(实际上它确实有办法进行特征脸识别),听起来你需要人脸识别,所以 OpenCV 是因为您使用的是 Java,所以不一定是您的最佳选择。

您可以尝试在 Java 中同时进行人脸检测和人脸识别的 FAINT,但它几乎没有文档记录。还有“ http://darnok.org/programming/face-recognition/ ”,但我似乎无法从中获得好的结果。还有“ http://uni.johnsto.co.uk/faces/ ”用于人脸识别,“Neuroph”用于人脸识别/检测。

如果您找到一个好的解决方案,请通过“draw3d@shervinemami.co.cc”告诉我祝您好运!舍文·艾美

于 2009-10-29T18:37:01.857 回答
6

查看OpenCV。Viola & Jones 实施了一种有据可查且广受好评的人脸检测技术,称为 Haar 级联。

此处提供了完整的教程(从培训到实验) 。请注意,您实际上并不需要进行培训;OpenCV 捆绑了几个特征级联,包括一些用于人脸检测的级联。

于 2009-10-20T15:24:09.837 回答
3

准确的人脸识别是一项可以分为几个步骤的任务:

  1. 人脸检测
  2. 面部标志点发现
  3. 使用地标进行旋转、裁剪、对齐和缩放
  4. 面部描述符点发现(这些不是人类可读的)
  5. 与已知人脸进行比较以找到最接近的匹配

这可以通过几个库来完成,但需要OpenCV 和 Caffe 的bytedeco包装器以及用于矩阵比较的库(如 ND4j)。

OpenCV具有用于人脸检测的 HAAR 级联,并且可以使用 flandmark 进行人脸点识别。这将允许您执行步骤 1-3。

面部描述符发现可以使用Caffe的 bytedeco 包装器和 VGG 面部描述符库 ( http://www.robots.ox.ac.uk/~vgg/software/vgg_face/ )

最后,Nd4j可用于比较图像。如果您有足够多的按个人分类的图像,也许您可​​以使用库中的神经网络进行分类。

于 2017-07-27T23:41:21.417 回答