Frage

Ich habe einen Videochat gemacht, aber wie üblich, aber wie üblich, missbrauchen Sie den Service (ich überlasse es Ihnen, um die Natur eines solchen Missbrauchs zu erkennen), was ich in keiner Weise befürchten, Die meisten meiner Benutzer sind auch nicht möglich. Nein, ich habe Chatroulette.com nicht gestohlen :-) Ehrlich gesagt bin ich halb mit dem Einstieg, um dies hierher zu bringen, aber meine Frage ist technisch und eher spezifisch:

Ich möchte Benutzer basierend auf ihrem Videoinhalt filtern / ablehnen, wenn dieser Inhalt von einem beleidigenden Charakter ist, wie der Benutzer seinen Müll auf der Kamera blinkt. Welche Art von Bildvergleich-Algorithmus würde meinen Bedürfnissen entsprechen?

Ich habe eine Woche damit verbracht, einige wissenschaftliche Papiere zu lesen und sich auf mehrere Theorien und ihre Implementierungen kennenzulernen, z. B. SIFT, Surf und einige der Wavelet-basierten Ansätze. Jeder dieser hat natürlich Nachteile und Vorteile. Da jedoch die Art meines Bildvergleichs sehr spezifisch ist, um den Dienst zu verweigern, wenn ein bestimmter Körperteil auf Video in einer Reihe von Positionen auftritt - ich frage mich, welche der Methoden mit mir am besten geeignet ist?

Derzeit lehne ich mich auf das Folgende auf etwas (Wavelet-basiertes Plus etwas, das ich annehme, einige proprietäre Innovationen zu sein): http://grail.cs.washington.edu/projects/query/

Mit dem oben genannten kann ich einfach den beleidigenden Körperteil ziehen und damit erwarten, dass er störender Inhalte als eine Übereinstimmung angesehen wird, die auf einer Schwelle basiert. Andererseits bin ich nicht sicher, ob die Methode für Umwandlungen unveränderlich ist und wenn es ist, auf welche Art - das Papier ist nicht wirklich spezifisch.

Alternativ denke ich, dass eine Surf-Implementierung dies tun könnte, aber ich habe Angst, dass es mir falsche Positive geben könnte. Kann eine solche Implementierung trainiert werden, um eine bestimmte Funktion zu erkennen / Gewicht zu erkennen?

Ich bin mir bewusst, dass es hier zahlreiche Fragen zum Surfen gibt, aber die meisten von ihnen sind generisch, da sie normalerweise erklären, wie man zwei Bilder vergleichen kann. Mein Vergleich ist Feature spezifisch, nicht generisch. Ich brauche eine Methode, die nicht nur zwei ähnliche Bilder vergleicht, sondern einen, der mir einen Rang / Index / Gewicht für ein Feature geben kann (Joch die Methode lässt mich jedoch beschreiben, sei es ein Bild selbst oder etwas anderes) in einem Bild.

War es hilfreich?

Lösung

sieht aus, als ob Sie keine Erkennung des Merkmals benötigen, sondern Objekterkennung, d. H. Viola-Jones-Methode. Schauen Sie sich einen Blick auf facedtect.cpp-Beispiel an, das mit OpenCV ausgeliefert wird (auch gibt es mehrere gebrauchsfertige Haarcascaden: Gesichtsmelder, Körpermelder ...).Es verwendet auch Bildmerkmale, heißt Haar-Wavelets.Möglicherweise interessieren Sie sich für die Verwendung von Farbinformationen, werfen Sie einen Blick auf den Camshift-Algorithmus (auch in OpenCV erhältlich).

Andere Tipps

Dies ist mehr über Computervision.Sie müssen Objekte in Ihrer Bild- / Videosequenz erkennen, was auch immer ... Dafür können Sie viele verschiedene Algorithmen verwenden (die meisten von ihnen arbeiten in der spektralen Domäne, deshalb müssen Sie eine Transformation verwenden).

Um genau zu sein, benötigen Sie auch eine Wissensbasis oder zumindest einige Deskriptoren, die das Objekt definieren.

Versuchen Sie OpenCV, er hat bereits einige Algorithmen implementiert (und grundlegende Deskriptoren enthalten).

Es gibt Anwendungen / Algorithmen da draußen, die Sie (wie neuronale Netzwerke) "trainieren" und in der Lage sind, Objekte auf der Grundlage des Trainings zu identifizieren.Die meisten von ihnen sind (zumindest die guten) nicht sehr beliebt und können nur in Forschungsgruppen gefunden werden, die auf Computervision, Objekterkennung, AI usw. spezialisiert sind.

Viel Glück!

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top