Inventori Kartu Trading Otomatis: Raspberry Pi, Lego, dan AWS Rekognition
Bangun katalog digital untuk kartu trading dan koleksi Anda menggunakan Raspberry Pi, platform berbasis Lego, dan layanan AWS.
Cerita
Saat menemukan kotak kartu Magic: The Gathering, saya bertanya-tanya berapa banyak yang saya miliki dan berapa nilainya. Mencatat setiap kartu secara manual akan sangat melelahkan, jadi saya mencoba mengotomatisasi prosesnya. Solusi menggabungkan Raspberry Pi, platform Lego kustom, dan AWS S3 dengan Rekognition.
Proses
- Mengambil judul kartu dengan kamera Raspberry Pi yang dipasang di platform Lego.
- Mengunggah gambar ke bucket AWS S3 untuk penyimpanan dan pemrosesan batch.
- Menjalankan AWS Rekognition untuk mengekstrak teks, lalu menanyakan API harga untuk nilai pasar terkini.
Platform Lego
Alih-alih kayu, saya memilih wadah Lego ukuran sedang—solusi murah dan berdampak rendah yang menjaga kartu tetap aman. Desainnya terinspirasi dari sorter kartu senilai $7 yang pernah saya miliki. Servo di belakang memutar roda yang mendorong satu kartu ke depan satu per satu, sementara roda di depan menjaga dek tetap stabil. Saya menempel beberapa kartu untuk menambahkan beban, memastikan hanya satu kartu yang bergerak per siklus. Kamera ditempatkan beberapa inci di atas platform, dengan sudut yang tepat untuk menangkap area judul.
Panjang kawat mewakil merupakan tantangan kecil; kawat yang lebih panjang meningkatkan keandalan.
Hardware
Raspberry Pi ideal untuk menjalankan skrip Python yang mengontrol servo dan menangkap gambar. Komponen yang diperlukan: dua motor servo, kamera Pi, dan pasokan daya 5V (terhubung ke breadboard untuk kenyamanan).
Kode
Semua kode ditulis dalam Python 2.7. Satu skrip menyediakan daya servo dan mengambil foto; skrip kedua memproses gambar yang disimpan di S3 dengan Rekognition.
Setelah memuat set pada platform, jalankan:
python mtg_servo.py <set_abbreviation>
Ini mengaktifkan servo, memindai kartu, dan menulis setiap gambar ke folder yang bernama sesuai singkatan set (misalnya, M13). Saya mencapai throughput sekitar 20–25 kartu per menit.
AWS S3 dan Rekognition
Meskipun Tesseract dan OpenCV kuat, Rekognition menawarkan kemudahan penggunaan dan fleksibilitas yang lebih besar dalam pencahayaan dan penempatan. Dengan akun AWS—gratis untuk dibuat—Anda dapat memproses hingga 5.000 gambar per bulan pada tingkatan gratis. Gambar diunggah secara manual (panduan cepat tersedia) ke bucket S3 yang mencerminkan struktur direktori lokal: /nama_set/file.jpg.
Screenshot berikut menunjukkan akurasi tinggi Rekognition, bahkan dengan gambar yang tidak sempurna.
Setelah semua gambar ada di S3, otomatisasi OCR dan ekspor hasil ke CSV:
python Rekognize_S3.py <set_abbreviation>
Dari 920 kartu yang dipindai:
- 619 akurat (67,3%)
- 201 salah satu huruf (21,8%)
- 100 salah lebih dari satu huruf (10,9%)
Setelah OCR, saya menanyakan API TCGplayer untuk harga langsung. Nilai total kartu common, uncommon, dan rare—kecuali kartu yang sudahdinilai—sekitar $275.
*Pembaruan 05/27/18: Skrip Rekognition sekarang streaming teks yang terdeteksi ke API TCGplayer secara real time, menulis hasil ke file. Akses API memerlukan proses pendekatan singkat.
Penutup
Saya harap proyek ini memicu eksplorasi Anda sendiri tentang katalogisasi kartu digital. Saya berencana memperluas sistem ke kartu olahraga dan set koleksi lain. Selamat memindai!
Sumber: Trading Card Scanner/Organizer