3

I am trying to detect a PDF417 barcode on the SA ID Card. The preview frame coming through is the max size for possible previews. In my tests its either 720p on low end devices and 1080p on high end ones.

The issue is that for Firebase to detect the PDF417 barcode it needs to be really close to the camera. I am passing the direct byte array data to the ML Kit right now using the same method that the Firebase ML Example does.

A previous build of mine had much better success in detecting the barcodes when I passed bitmaps to the ML Kit. That system was horribly slow and inefficient, but could detect the PDF417 from quite far away.

Is there any reason for this or am I doing something wrong? How can I get Firebase to detect PDF417 from far enough away to keep the entire card in frame?

MrStruggles
  • 123
  • 8
  • Have you ever found a reason to this ? I am facing the same problem – Donald Jansen Mar 17 '21 at 04:39
  • I haven't really found a reason for this. But moving from firebase to the ML Kit seemed to help a lot with the performance. I am now doing it the same way the MLKit quickstart app works(By using byte buffers). So if you do want to investigate more, that was a good starting point for me. Here is the link to the source code of the quickstart app if you need it: https://github.com/googlesamples/mlkit/tree/master/android/vision-quickstart – MrStruggles Mar 17 '21 at 11:00
  • 1
    Also using ML Kit, but on Flutter. In my case the ID Card's PDF417 scan pretty much immediately at a relatively acceptable distance, but I have noticed that newer Driver's Licences (those issues at least in the last 3 years) have broken Start and Stop Patterns (the vertical bars to the left and right of the barcode). Barcode like these either do not scan or takes for ever to eventually scan. Was wondering if anybody else experienced this, and if so, have you found a solution to this? – pjdupreez Apr 09 '21 at 05:44

0 Answers0