Inspiration

I had a box of cards from QRT before the event and QRT's challenge was staring me in the face.

What it does

So I have an encoder that when inputted with 3 valid words give you the 15 card sections layout that you can place on the floor or anywhere that has the structure. Use the app, scan it and decode it.

How we built it

The general pipeline is word -> csv index -> brainfuck program -> compressed BF operations -> Base 7 -> cards and the other way round for decoding. Encoder was built in Python because it's easy. Decoder is an app built with Typescript + React because my Iphone doesn't accept anything else.

Challenges we ran into

  • When trying to represent a card section such that all possible combinations are valid it could be that the 3rd card covers the 1st card which would make the output vastly different, I just made it so the card layout cannot be this way, this is also why base 7 (There are 8 positions relative to a card that can be detected as on top without some rotation).
  • Decoder not working correctly for some reason
  • Card scanning not working correctly

Accomplishments that we're proud of

Technically it works

What we learned

  • I don't like Typescript
  • Computer vision is a pain

What's next for Card Stack Codec

  • Make the scanning working if it isn't before judging
  • By adding more random cards on the floor the data is still the same (Basically adding noise)
  • Different sides of taking the image should make the same result
Share this project:

Updates

Submission history