Show HN: QuaggaJS, a barcode scanner written in JavaScript
Invariant to scale and rotation in JS on mobile? That's fantastic! I just tested the Red Laser native app on my phone and it can handle scale/rotation too. But I never thought about rotation for the Red Laser app and always tried to align it properly between the [ ] brackets.I think apps that support scale/rotation should not show [ ] brackets but instead a central red +. Haven't dug deeply into how barcode_locator.js in your repo works but with the expectation that the barcode will be in the middle, you might be able to slightly optimize your code to start the location detection from the middle and expand outwards.It appears you are breaking the image into smaller 'patches' and looping through those to look for chunks of a barcode. Even if the algorithm is resolution independent, you might be able to exit the loop 50-60% earlier if you detect from the middle and go out in a spiral. In other words, the order in which you iterate the loop can make a difference.