That would work well if the camera had sufficient resolution and the cards were stacked nicely. It looks like this can still read the cards when they are stacked unevenly since each card has a unique marking and a common marking to compare against. There are more bits than necessary in the barcode so it can contain error correction in the code. Trying to decode 1 of 54 possible spots for the mark to be in is going to be harder than seeing which of 13 possible spots are marked with the added benefit of only needing to get at least 10 to 12 of them right.
Yeah I’ve tried that method but with the camera resolution I had it was practically impossible to decode.