card-io / card.io-Android-source

The open-source code for the card.io-Android-SDK: provides fast, easy credit card scanning in mobile apps
Other
568 stars 375 forks source link

Card holder name and expiry date fetch #136

Open bkmalkoc opened 7 years ago

bkmalkoc commented 7 years ago

1- Camera scanner sometimes fetch the expiry date sometimes doesn't. 2- Camera doesn't fetch card holder name.

phileo commented 6 years ago

does anyone know any of the history and background of the problem with scanning the expiry date? Scanning expiry date was added in V5.0.0, which was over 2.5 years ago. It was acknowledged at the time that there were issues with scanning expiry date, but with no further detail. If anyone could shed some visibility as to what the nature of the failure is, perhaps I can assist to find a solution.

dgoldman-pdx commented 6 years ago

@phileo you can find some technical background here.

However, the basic problem was that we had a limited set of images of card expiry dates on which to train our deep-learning neural model. Because these cards were from a limited range of years, we had a huge number of example images of 0s and 1s, but very few images of other digits such as 5s. The resulting model is therefore biased to believe that it is seeing, e.g., a 0 or a 1 even when that isn't actually true.

Unfortunately for all involved, by the time we completed the initial expiry scanner, the card.io project was no longer being actively supported by its acquirer. And so the considerable effort that would have been needed to obtain many more card images (under varying lighting conditions) was not possible.

Even more unfortunately, our software infrastructure for obtaining and processing card images for training our deep-learning models involves a lot of code that had not yet been cleaned up and open-sourced. So that code is still proprietary -- and the individuals who created and used it are no longer employed by the proprietor.

So unless the current corporate owner of card.io decides to re-prioritize the project, it's unlikely that expiry scanning will ever be improved.