2009-09-09 12 views
6

Qualcuno può dirmi come rilevare i volti in un'immagine statica utilizzando Ruby o Javascript?Come posso rilevare i volti usando Ruby?

+6

WOW! E pensavo di essere l'unico a raggiungere mete impossibili. :-) –

+17

Sono in grado di rilevare facce anche senza Ruby. – StackedCrooked

+0

Soluzione semplice: non lo fai. Soluzione complessa: usa qualcosa di esistente. (Vicino) Soluzione impossibile: scrivi qualcosa per conto tuo. Se non hai niente di meglio da fare. –

risposta

0

Il rilevamento dei volti viene eseguito utilizzando algoritmi basati su memoria intensiva, che effettivamente passano attraverso i dati dell'immagine per rilevare modelli simili a una faccia. Possono essere molti algoritmi di riconoscimento facciale/ricognizione del pattern e APIS disponibili gratuitamente (oa pagamento) che è possibile utilizzare/implementare con Ruby o Javascript.

+0

** Javascript!? ** – voyager

+3

Non ho nulla contro javascript, ma usarlo per * riconoscimento facciale * è come cercare di fregare un chiodo. – voyager

+8

JQuery è migliore. '$ ('image.png'). getFaces();' – Welbog

2

Raccogli molti soldi e contatta these guys per una buona soluzione!

Wikipedia ha un buon articolo su questo che spiega anche perché stai cercando di fare qualcosa che è ancora estremamente complesso da fare.

FRGC è anche interessante ... Se trovi una soluzione, puoi partecipare a questa sfida.

+0

sì .. .questa è la strada da percorrere ..: D –

1

Javascript Le reti neurali sono state used for OCR quindi dovrebbe essere possibile se molto più difficile per i volti.

7

Sembra che tu abbia appena iniziato a programmare. Forse hai una laurea in matematica avanzata? Se davvero non capisci che la nozione di JQuery in grado di rilevare i volti è uno scherzo, devi imparare molto prima di essere pronto a rilevare i volti. Se sei fortunato puoi trovare una soluzione semplice e immediata. Sfortunatamente, il riconoscimento facciale si trova nella classe dei problemi che tendono a mancare facilmente soluzioni pronte all'uso. JavaScript è giusto.

http://rubyforge.org/projects/opencv/ è un collegamento Ruby a OpenCV. La documentazione pietosa (solo documenti API autogenerati) a http://doc.blueruby.mydns.jp/opencv/ menziona un file face_detect.rb che potrebbe essere utile. Come per la maggior parte dei binding, dovresti anche consultare la documentazione della libreria originale, ad es. http://opencv.willowgarage.com/wiki/FaceDetection

si dovrebbe anche capire che il rilevamento del viso (dove sono i volti in questa foto?) È un problema diverso e più facile che il riconoscimento del volto (il cui volto è esso).

+0

Vedere che non c'è niente di sbagliato ... se qualcosa non è noto, francamente dico che non lo so ... – palani

+0

Ammiro il tuo entusiasmo, voglio solo avvertirti che il riconoscimento facciale è un problema difficile. – joeforker

3

Rilevare i volti in modo affidabile è uno dei problemi di in Informatica. Realisticamente, non esiste un modo pratico per farlo usando Ruby, JavaScript o qualsiasi altro linguaggio applicativo utilizzando la tecnologia corrente. Se ci dici perché è necessario rilevare i volti, potremmo essere in grado di suggerire un approccio pratico e alternativo.

4

Non so se questa domanda è stata correttamente risposta o come l'hai risolta, ma recentemente ho riscontrato questo problema da solo. Attualmente sto studiando le API esterne per implementare la mia soluzione. del I due Rubino API che attualmente sto paragonando sono rdetection e Face.com di API

Sto utilizzando principalmente per il viso-aware image-coltura con ImageMagick, in modo che le esigenze ed i risultati possono essere diversi.

+0

Sì, ho visto recentemente un gioiello per face.com e ne ho spiegato alcuni in questo articolo: http://hemju.com/2011/03/14/face-recognition-with-ruby/ Non ho giocato con la gemma troppo ancora, però, quindi non posso fornire alcun aiuto in più. – daybreaker

+0

fantastico, non ho avuto la possibilità di giocare con esso da quando ho prima spiked l'idea. Grazie! –

11

Dal momento che le altre risposte a questa domanda interessante sono per lo più obsoleti ora, ecco la soluzione 2012:

utilizzando jQuery con jquery.objectdetect:

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

utilizzando jQuery con jquery.facedetection:

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

Non si utilizza jQuery: Entrambi i plug-in si basano su librerie autonome che non dipendono affatto da jQuery.


In risposta a @joeforker che detto

"Se davvero non si capisce che la nozione JQuery in grado di rilevare i volti è uno scherzo, è necessario imparare molto prima di essere pronto per rilevare i volti. "

Oppure non resta che aspettare un anno o due;)

+1

Progressi incredibili! Chi potrebbe credere che sia possibile nel feed video live solo con javascript? – Petr

0

So che questa è una vecchia questione, ma se qualcuno capita su di esso come ho fatto controllare questi fuori: blog post, test page e Github.

Problemi correlati