Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Trading Card Scanner/Organizer

Erstellen Sie ein digitales Inventar Ihres Handels /Sammelkarten mit Lego und einem Raspberry Pi.

Geschichte

Ich habe mich als Kind sehr für Sammelkarten interessiert. Ich bin kürzlich auf viele Magic The Gathering-Karten in einer Schachtel gestoßen und dachte mir – ich frage mich, wie viele Karten ich habe und wie viel sie wert sind?! Diese manuell zu protokollieren und nachzuschlagen würde eine Weile dauern, also entschied ich mich zu sehen, ob ich einen Teil des Prozesses automatisieren könnte. Irgendwie führte der Prozess dazu, einen Raspberry Pi zu verwenden, eine Plattform aus Lego zu bauen und AWS S3/Rekognition zu nutzen!

Der Prozess

Ich hatte viel zu tun…

Die Lego-Plattform

Ich bin nicht gut in der Holzbearbeitung und dachte, dass es schwierig sein könnte. Stattdessen habe ich mich für Lego entschieden, also habe ich einen mittelgroßen Mülleimer gekauft, den Sie bei mehreren Händlern erhalten können. Ich habe mich selbst herausgefordert, mich nur an diese Box zu halten – keine andere Unterstützung, daher sieht dieses Ding roh aus. Dieses Projekt wird nicht zeigen, wie man es Stein für Stein baut, aber es sollten hier genug Bilder sein, um es nachbilden oder noch besser machen zu können! Das Design wurde von einem billigen 7-Dollar-Kartensortierer inspiriert, den ich vor Jahren bekommen habe. Das Servo im Heck kann sich kontinuierlich drehen und bewegt die Reifen in einem einfachen zahnradähnlichen Setup nach vorne. Das vordere Rad, das aus dem dunkelgrünen Teil heraushängt, soll verhindern, dass die anderen Karten herausrutschen. Es ist gerade genug Platz, um jeweils eine Karte herauszuschieben. Ich habe auch ein paar zusammengeklebte Karten verwendet, um genug Gewicht auf den Karten zu halten, um sicherzustellen, dass nur eine herauskam. Vollständige Offenlegung – Sie werden im ersten Video feststellen, dass ein Bild aufgenommen wurde, als die Karte nicht in Position war. Dies geschah von Zeit zu Zeit, aber es war trivial, die leeren Bilder zu entfernen.

Das hintere Servo dreht sich, um die Räder nach vorne zu bewegen.Overhead ViewFront view. Beachten Sie, dass das kleine Servo vorne nicht angeschlossen ist – es ist gegen die Basis und die grauen Säulen geklemmt Der vordere Servomotor wird einfach zwischen die unteren blauen Platten und die grauen Säulen geklemmt Come out

Die Kamera sitzt auf einem Stapel Steine, die einige Zentimeter von der Plattform entfernt positioniert sind und so angewinkelt sind, dass sie mit der Position der Karte ausgerichtet sind. Die Auflösung wurde mit Code geändert, um den oberen Teil der Karte zu erfassen.

Die Länge des Bandes war etwas mühsam – ich würde empfehlen, ein längeres zu nehmen.

Die Hardware

Raspberry Pi war die beste Wahl für dieses Projekt, da ich Python für die Peripheriegeräte ausführen musste. Die anderen Dinge, die wir brauchen, sind zwei Servomotoren und eine Kamera. Ich habe ein 5V Netzteil an das Steckbrett angeschlossen – nicht zwingend aber hilfreich.

Der Kodex

Der Code ist vollständig in Python 2.7 geschrieben. Ein Skript dient zum Antreiben der Servos und zum Aufnehmen des Bildes; der andere ist für die Verarbeitung der in S3 gespeicherten Bilder gegen Rekognition.

Sobald wir unsere Karten auf die Lego-Plattform geladen haben, können wir einfach tun:

python mtg_servo.py  

Dadurch werden die Servos gestartet und die Karten gescannt. Sobald es fertig ist, können wir das Skript beenden und mehr laden. Ich konnte ungefähr 20-25 Karten pro Minute machen. Die war ein aus drei Buchstaben bestehender Code für den Kartensatz. Dies hilft uns, sowohl bei der Bildverarbeitung als auch bei der Preis-API organisiert zu bleiben, z. alle .jpgs für den Satz „M13“ wurden in den Pfad geschrieben.

AWS S3 und Anerkennung

Ich habe versucht, OCR mit tesseract und OpenCV durchzuführen. Obwohl beides erstaunliche Werkzeuge sind, erwies sich Rekognition als viel einfacher zu verwenden. Es ermöglichte viel Flexibilität in Bezug auf Positionierung, Beleuchtung, Entfernung usw. Sie benötigen dafür ein AWS-Konto, das kostenlos ist. Amazon ist mit seinem kostenlosen AWS-Kontingent ziemlich großzügig – Sie können 5.000 Bilder pro Monat darunter verarbeiten. Ich habe die S3-Dateien aus Zeitgründen manuell hochgeladen (nicht abgebildet, aber hier eine Anleitung). Der s3-Bucket wurde genau wie das aktuelle Verzeichnis eingerichtet – /set_name/file.jpg. Die Screenshots unten zeigen die Demoversion von Rekognition, die einige der aufgenommenen Bilder verarbeitet. Sie werden feststellen, dass es trotz aller Probleme mit dem Foto unglaublich genau ist.

Sample CaptureSample Capture

Wir können diesen Prozess automatisieren! Sobald alle Karten in den Bucket hochgeladen wurden, können wir den folgenden Code ausführen, um unseren erkannten Text in eine CSV-Datei auszugeben:

python Rekognize_S3.py 

Hier die Ergebnisse der Bildbearbeitung. Ich habe keinen Zweifel, dass dies viel höher gewesen wäre, wenn die Bilder von besserer Qualität gewesen wären. Die anderen beiden Hauptprobleme, auf die ich stieß, waren (1) die Schriftart – viele der Schriftarten hatten Zeichen, die täuschend nah an der Stelle waren, wo selbst ich Schwierigkeiten hatte, sie zu entziffern, und (2) die Beleuchtung. Von den 920 Karten, die ich gescannt habe:

Süß! Danach habe ich ein schnelles Python-Skript geschrieben, um die API von TCGplayer für den Marktpreis der Karten zu erreichen*. Am Ende hatte ich Commons, Uncommons und Rares im Wert von ungefähr 275 Dollar! (Ich habe alle Karten entfernt, von denen ich wusste, dass sie bereits Geld wert waren.)

*Bearbeiten 27.05.18: Ich habe das Rekognition-Skript aktualisiert, um den erkannten Text in Echtzeit gegen die API des TGCplayers auszuführen (und in eine Datei zu schreiben). Denken Sie daran, dass es einen Bewerbungsprozess für die API gibt.

Schließung

Ich hoffe, das inspiriert Sie dazu, diese alten Karten auszupacken und etwas damit zu tun! Ich plane, dies wieder mit Sportkarten und verschiedenen anderen Sets zu tun. Viel Spaß beim Scannen!

Quelle:  Sammelkartenscanner/-organisator


Herstellungsprozess

  1. Bernstein
  2. Kondensierte Suppe
  3. Torwartmaske
  4. Guillotine
  5. Grabstein
  6. Boxsack
  7. Silizium
  8. Wodka
  9. Spielkarten
  10. Eisen