// DetectOrientation detects the current Image Orientation from the EXIF header. func DetectOrientation(image *vips.Image) Orientation { o, ok := image.ImageGetAsString(vips.ExifOrientation) if !ok || o == "" { return Undefined } orientation, err := strconv.Atoi(o[:1]) if err != nil || orientation <= 0 || orientation >= len(orientationInfo) { return Undefined } return Orientation(orientation) }