The reason is due to how we resize the images prior to recognition. In order to be efficient, we first resize the image to a smaller size to try and find the license plate. The default is 1280x720. After we found the plate we use the original resolution for more detailed analysis.
This setting is adjustable for the On-Premises SDK. For example, you can change the setting to something large (in /etc/openalpr/openalpr.conf):
max_detection_input_width = 5000
max_detection_input_height = 5000
After doing so, we are able to find the plate.
$ alpr /tmp/plate.jpg -c eu`
plate0: 1 results
State ID: eu-fr (98% confidence)
- EM186VS confidence: 94.9984 pattern_match: 0
In the Cloud API, you cannot do that. However, I think the reason that this is not found is because the size of the image is so tall. When the height is resized to 720 pixels, the plate is barely recognizable. Perhaps, for this aspect ratio, you could send the image in 3 sections (top third, middle third, bottom third) with some overlap so that you don’t miss anything. Then you can map the X/Y offsets back to the original.