任何人都可以建议我使用Java开源面部识别框架吗?
答案 0 :(得分:17)
您可以尝试使用一些开源的Face Recognition Java系统,但不要期望太多,因为我正在寻找相同的东西,但我仍然在寻找更好的选择!
请注意,在图像中查找任何面部称为“面部检测”,任何面部称为“面部跟踪”,并且确定检测到的面部的身份称为“面部识别”。我告诉你这个,因为你可能不得不使用不同的软件和算法来做每一个! Paul的答案告诉你,OpenCV可以轻松地进行人脸检测(Haar Cascade Detector),但不能轻易进行人脸识别(实际上它确实有一种方法可以进行特征脸识别),这听起来你需要人脸识别,所以OpenCV不是因为你使用Java,所以一定是你最好的选择。
你可以尝试在Java中同时进行人脸检测和人脸识别的FAINT,但它几乎没有记录。还有“http://darnok.org/programming/face-recognition/”,但我似乎无法从中获得好结果。面部识别还有“http://uni.johnsto.co.uk/faces/”,脸部识别/检测也有“神经病”。
如果您找到了一个好的解决方案,请告诉我“draw3d@shervinemami.co.cc” 祝好运! Shervin Emami
答案 1 :(得分:6)
结帐OpenCV。 Viola& amp; amp; amp; amp; amp; amp;琼斯已经实施,称为哈尔级联。
完整的教程 - 从培训到实验 - is available here。请注意,您实际上不需要进行培训; OpenCV捆绑了几个功能级联,包括一些用于面部检测的功能级别。
答案 2 :(得分:3)
准确的面部识别是一项可以分为几个步骤的任务:
这可以通过几个库来完成,但需要OpenCV和Caffe的bytedeco包装器以及ND4j等库来进行矩阵比较。
OpenCV具有用于面部检测的HAAR级联,并且可以使用flandmark进行面部点识别。这将允许您执行步骤1-3。
可以使用Caffe和VGG Face Descriptor库(http://www.robots.ox.ac.uk/~vgg/software/vgg_face/)的bytedeco包装器完成面部描述符发现
最后,Nd4j可用于比较图像。如果您有足够的图像按个人分类,也许您可以使用库中的神经网络进行分类。