Image processing 在F中存储为位图时正在旋转的图像#
我正在使用F#进行一些与图像处理相关的活动 如果我使用Image processing 在F中存储为位图时正在旋转的图像#,image-processing,io,f#,Image Processing,Io,F#,我正在使用F#进行一些与图像处理相关的活动 如果我使用 let imagesForRecognition = Directory.GetFiles("/RImages/","*.jpg") |> Array.map(fun x -> new Bitmap(x)) 然后做这个 imagesForRecognition.[0].Save("A.jpg") 如果我的图像大小为1080x1920,则图像将旋转90度。我使用了一些528x960,它们没有旋转。我觉
let imagesForRecognition =
Directory.GetFiles("/RImages/","*.jpg")
|> Array.map(fun x -> new Bitmap(x))
然后做这个
imagesForRecognition.[0].Save("A.jpg")
如果我的图像大小为1080x1920,则图像将旋转90度。我使用了一些528x960,它们没有旋转。我觉得这种行为很奇怪
我正在使用Xamarin Studio Mac OS X我在
Xamarin.Forms
中遇到了同样的问题。
但是,当我使用XLabs
时,当我的应用程序拍照时,我可以访问MediaFile
对象。这个类有一个有趣的属性Orientation
。我可以检查这个属性并执行一些代码,以获得我想要的正确格式的图像
let prepare (orientation:ExifOrientation) img =
match orientation with
| ExifOrientation.BottomRight -> rotate 180 img
| ExifOrientation.TopLeft -> img
| _ -> img
这是适合我需要的东西,因为我从未见过我的智能手机除了使用
右下角或左上角之外,还使用其他ExifOrientation
功能。您的问题已经解决了吗?