This image does not read because of the large amount of sample density coupled with the areas of bright in the black areas of the finder pattern. The finder pattern is the pattern in the upper left of your image. It consists of the small black square surrounded by the white ring and then the black ring. We look for this pattern to locate the MicroQR symbol. If you look closely at the black of the finder pattern, there are a lot of bright pixels. We normally deal with images that have much lower sample density than your image. You have 30 pixels per module in your image: we normally are dealing with images that have less than 3. There is no fixed upper limit on the sample density however. We don't read this because of the white pixels in the black finder pattern.
If you binarize the image in the SwiftDecoder demonstrator Image Processing Options at a level of 180, we do read the symbol. The binarization removes a lot of the bright pixels on the finder pattern.
To increase read rates, you need to reduce the amount of bright pixels in the finder region. This can be done by stopping down the lens of your camera, or shutting off the flash. In addition, given the large amount of sample density, you can downsample the image with the Resize option in the SwiftDecoder demonstrator. This reduces the size of the bright images as well. It has the added benefit of reducing the time it takes to process the image.
As a rule of thumb, a sample density of 2.75 pixels per module is all we need. This sample density can also be achieved by changing the lens of your camera or moving farther away from the bar code. As I said in an earlier post, we have new software that reduces this requirement to 2.0.