I tried Google Cloud Vision api (TEXT_DETECTION) on 90 degrees rotated image. It still can return recognized text correctly. (see image below)
That means the engine can recognize text even the image is 90, 180, 270 degrees rotated.
However the response result doesn't include information of correct image orientation. (document: EntityAnnotation)
Is there anyway to not only get recognized text but also get the orientation?
Could Google support it similar to (FaceAnnotation: getRollAngle)
As described in the Public Issue Tracker, our engineering team is now aware of this feature request, and there is currently no ETA for its implementation.
Note, orientation information may already be available in your image's metadata. An example of how to extract the metadata can be seen in this Third-party library.
A broad workaround would be to check the returned "boundingPoly" "vertices" for the returned "textAnnotations". By calculating the width and height of each detected word's rectangle, you can figure out if an image is not right-side-up if the rectangle 'height' > 'width' (aka the image is sideways).