As I continued to ponder my path forward on my MTG scanner during the week and lamented my inability to use the already-built engine that others had made, I came upon a realization: I had never actually asked the developer if they'd be willing to help me. So I did. To my elation, not only was the creator of ScryGlass willing to help, he had already created an API for exactly this purpose and it was in beta testing. Oh sumptuous day!
This newfound ability moves my schedule forward substantially. I can now skip re-building the wheel and get straight to the rest of the project. This weekend I focused on being able to interface with the provided API by setting up a python server on my Raspberry Pi to react to the scanned cards and storing them in a MySQL database on my home server.
At the end of this build session, the current process flow is:
ScryGlass (running on an android device) scans card and identifies it.
ScryGlass sends GathererID (unique ID for each MTG card) and...
I spent an entire day last weekend devoted to setting up OpenCV on a RaspberryPi. With most software it's as simple as an apt-get, grab a drink, and you're done. OpenCV is definitely the most involved suite of software I've ever had to install.
I had originally intended to do most of the coding on my desktop and then simply transfer the completed py file to the Pi when ready. After discovering the difficulties in setting up OpenCV and the vast difference in setting it up on Windows vs Linux I opted to just do the whole project on the Pi. I would eventually need to set it up on the Pi in any case so it could function in the end result so setting it up on my desktop would just add that much more headache.
Installation on the Pi went pretty smoothly thanks to this guide, although I did end up with errors using threading during the make so I had to use a single core that took ~8 hours to build. With the install complete I took a disk image of the SD card using Win32 Disk Image...