2017-05-05 1 views
1

Ich arbeite an einem "UPS Paket Erkennung" Programm. Die App fotografiert meine Veranda alle 1 Minute von einem Raspberry Pi. Ich führe dann das Bild durch einen Feature-Matching gegen einen "Cube", um Würfel zu erkennen (Pakete sind Würfel, richtig?)OpenCV - Best Image Recognition Algorithmus

Ich entscheide, ob ein Paket geliefert wurde, wenn es 3 oder mehr Beobachtungen gibt (siehe die beiden Bilder unten). Ich finde meinen Algorithmus grob, und ich weiß, dass ich es besser kann. Kann jemand bitte einen besseren Weg empfehlen und beraten, um zu erkennen, ob ein Paket geliefert wurde?

(Ich verwende Python) kein Paket - Anzahl der Beobachtungen sehr niedriger

eine Paket - Anzahl der Beobachtungen hoch

+0

Was meinst du mit Beobachtungen hier? Der polierte Würfel ist Quellbild? und Zielbild ist das mit Kartons? Versuchen Sie, Ihre Frage zu verfeinern. – harshkn

+0

Der polierte Würfel ist Quellbild - ja. Das Zielbild ist das mit Kartons - ja. Die "Anzahl der Beobachtungen" ist die Anzahl der übereinstimmenden Merkmale, die der Algorithmus findet, wie durch die Linien vom Quellbild zum Zielbild angezeigt wird. –

+0

'Ich entscheide, ob ein Paket geliefert wurde, wenn 3 oder mehr Beobachtungen vorliegen Du meinst durch Beobachtungen hier? – harshkn

Antwort

0

Nein, die in Ihrem Fall Pakete sind keine Würfel. Sie sind eher wie ein Klecks.

Wenn Sie irgendein Paket auf der Veranda erkennen wollen, nicht nur ups, können Sie:

A) schaffen eine standardisierte Umgebung für die Aufnahme des Bildes (konstante Beleuchtung, klaren Hintergrund, Muster auf dem froor, usw.) . Sie müssen also eine Drop-Zone für das Paket erstellen, die für Ihre Kamera immer gleich aussieht, außer wenn ein Paket vorhanden ist. oder B) (der harte Weg) vergleichen Sie die Bilder im Laufe der Zeit. Ich nehme an, das Bild, das wir sehen, ist draußen. So wird es während des Tages unterschiedliche Helligkeit geben. Schatten. Usw. Sie können das Bild entsprechend vorverarbeiten. Verwenden Sie beispielsweise einen Schwellenwert, der als Prozentsatz des hellsten Pixels im Bild berechnet wird. Dann können Sie Bilder im Zeitverlauf vergleichen. Wenn es einen großen Blob gibt, wo keiner in den vorherigen Bildern war, könnte es ein Paket geben. oder C) Wenn Sie nur UPS-Pakete erkennen möchten, können Sie OCR verwenden oder versuchen, das UPS-Logo abzugleichen. Dieser Ansatz erkennt nicht nur Pakete, sondern auch den UPS-Typ selbst :)

Aber viel Spaß, es klingt wie ein wirklich schönes Heimprojekt.

+0

Danke :) Tolles Feedback. Und ja, es ist ein großartiges Projekt! –