如何使用Ruby检测面部?

时间:2009-09-09 13:41:04

标签: javascript ruby-on-rails ruby face-detection

有谁能告诉我如何使用Ruby或Javascript检测静态图片中的面孔?

12 个答案:

答案 0 :(得分:13)

如果你打算尝试从头开始写东西,卡内基梅隆网站上有a great explanation of the process - 整洁的图形。

然而,你最好的选择可能是试图加入Opensource Computer Vision项目。这是一个good tutorial on using OpenCV for facial recognition

答案 1 :(得分:11)

由于这个有趣问题的其他答案现在大部分已经过时,这里是2012年的解决方案:

使用jQuery jquery.objectdetect

$("#faces").objectdetect("all", {classifier: objectdetect.frontalface}, function(coords) {
    // Do something with the face coordinates
});

使用jQuery jquery.facedetection

var coords = $("#faces").faceDetection();
// Do something with the face coordinates

不使用jQuery :两个插件都基于完全不依赖于jQuery的独立库。


回复@joeforker谁说

  

“如果你真的不明白JQuery可以检测到的概念   面孔是一个笑话,你需要学习很多才能做好准备   检测面孔。“

或者你只需​​等待一两年;)

答案 2 :(得分:7)

看起来你是编程新手。也许你有高等数学学位?如果你真的不明白JQuery可以检测到面孔的概念是一个笑话,你需要学习很多东西才能准备好检测面部。如果您很幸运,您可以找到一个简单易用的解决方案。不幸的是,面部识别是一类容易开箱即用的问题。 JavaScript就出来了。

http://rubyforge.org/projects/opencv/是对OpenCV的Ruby绑定。 http://doc.blueruby.mydns.jp/opencv/的可怜文档(仅限自动生成的API文档)提到了一个可能有用的face_detect.rb。与大多数绑定一样,您还应该查阅原始库的文档,例如http://opencv.willowgarage.com/wiki/FaceDetection

您还应该了解脸部检测(此照片中的脸部在哪里?)是一个与脸部识别(面部表面)不同且更容易的问题。

答案 3 :(得分:4)

我不知道这个问题是否得到了正确回答或者你是如何解决的,但我最近自己遇到了这个问题。我正在调查外部API以实现我的解决方案。我目前比较的两个Ruby API是rdetection和Face.com的API

我主要使用它来使用ImageMagick进行面部识别图像裁剪,因此您的需求和结果可能会有所不同。

答案 4 :(得分:3)

可靠地检测面孔是计算机科学中的 难题之一。实际上,使用当前技术使用Ruby,JavaScript或任何其他应用程序语言来实现它是没有实际可行的。如果您告诉我们您需要检测面部的原因,那么我们可能会建议一种实用的替代方法。

答案 5 :(得分:2)

收集大量现金并联系these guys以获得良好的解决方案!

Wikipedia有一篇很好的文章,这也解释了为什么你要做一些仍然非常复杂的事情。

FRGC也很有趣......如果你找到了解决方案,你可以参与这个挑战。

答案 6 :(得分:2)

这是使用Mashape使用Javascript和面部识别API的面部识别教程 - http://blog.mashape.com/post/45712257463/face-recognition-using-javascript-and-mashape

它还可以让您检测此人是否在微笑:)

答案 7 :(得分:1)

Javascript神经网络已经used for OCR所以如果面部更加难以应该可以。

答案 8 :(得分:1)

经过一些研究和帮助,我决定制作一个可以在这里找到的rubygem: https://github.com/dennisdevulder/rekognize

这使用了rekognition.com的面部识别API。

答案 9 :(得分:0)

使用基于密集存储器的算法完成面部检测,该算法实际上通过图像数据来检测面部图案。它们可能是许多面部识别/模式识别算法和APIS免费(或收费),您可以使用/实现Ruby或Javascript。

答案 10 :(得分:0)

我知道这是一个古老的问题,但是如果有人发现它就像我一样检查出来:blog posttest pageGithub

答案 11 :(得分:0)

这应该让你开始。这是关于通过FFI使用OpenCV与Ruby:http://rubysource.com/detecting-faces-with-ruby-ffi-in-a-nutshell/