Wie kann ich erkennen, Quadrate/Rechteck oder eine andere Form mit EMGU CV?
Möchte ich ein apps erkennen, ein Quadrat/Rechteck in meine webcam über EMGU CV (ein OPENCV-wrapper). Das Quadrat/Rechteck haben eine Feste Farbe.
wenn es möglich ich möchte zu erhalten, die Breite und die Höhe des Quadrats/Rechtecks
In diesem video können Sie sehen, was ich tun möchte.
http://www.youtube.com/watch?v=ytvO2dijZ7A&NR=1
Arbeite ich mit C#
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie bereits wissen, die Farbe, der das gewünschte Objekt, dann können Sie segmentieren das Bild aus, die Farbe. (Was kann der Grund sein, warum das Rechteck verschwindet, wenn der Kerl Filme der Richtung zu und Weg von der Kamera [Unterschiede in der Beleuchtung]. Sobald Sie das Objekt segmentiert aus dem Bild, das Sie tun können region Berechnungen auf dem Bild. [In matlab denke regionprops]
Sobald Sie den blob-Sie können versuchen passende Modell, um eine gute approximation des Objekts dargestellt wird.
In der video-link zur Verfügung gestellt, was wohl getan wird, ist Surf feature detection. Werfen Sie einen Blick auf die SURFFeture Beispiel, dass Schiffe mit EMGU. Anstatt zu zeichnen Linien in diesem Fall jedoch die vier Eck-Punkte sind erkannt und eine Form gezogen an der Spitze. Ähnliche Beispiele, die Ihnen helfen werden ShapeDetection und TrafficSignRecognition sowohl in der EMGU.CV.Beispiele-Ordner. ShapeDetection wird Ihnen beibringen, wie zu klassifizieren den Platz und die StopSignDetector.cs Klasse wird Ihnen zeigen, ein weiteres Beispiel dafür, wie eine surf feature detection algorithm.
Es erfordert ein wenig Rekonfiguration aber wenn Sie stecken fühlen Sie sich frei, eine andere Frage stellen.
Cheers
Chris