The quality of those images might not be good enough.
The QR code almost disappears in the pixels, so the resolution should be higher.
The highlights occlude the QR codes. The lightning should be fixed so it doesn't show on the image in a disturbing way. Probably some diffuse lightning is needed, coming from a dome or ring light around the camera..
The QR codes are blurry, the image needs to be sharp. As the image spans a large area, the only option is to place the camera at a relatively large distance, and use a tele lens to zoom in on it. Other setups would make either the center sharp and the borders blurry, or vice versa. Perhaps that is what you have, then the lens should simply be focused.
If the QR codes are on a grid (they seem to be) you can simply process each gird location for each QR. If the grid is fixed, it's easy (hard coded). If not, you might try to make a grid detection algorithm to detect the grid.