There are many ways to estimate the size of a module.
ZXing evaluates it based on a 1-1-3-1-1 ring finder pattern.
In fact, there is a set of synchronization patterns between crawlers, if you know their exact position. This is just a pixel question and calculating the average length of the white and black areas.
The ZXing score is a little rougher, but works very well. There are times when he gives an incorrect assessment that walking the timer pattern is likely to be eliminated. But a common use case for ZXing is a live stream of images, and one incorrect assessment is not a big problem.
source share