gpt4 book ai didi

ios - 如何使用从 AVCaptureDevice 捕获的 NSData 和 NSDictionary 组合一个面向 "right"的 UIImage?

转载 作者:行者123 更新时间:2023-11-29 03:26:32 25 4
gpt4 key购买 nike

我正在使用 AVCaptureDevice 从相机捕获图像。设置 session 并捕获图像后,我可以获得 NSData *NSDictionary * 对象,但是,由于 EXIF 元和数据分离,当我尝试时将 NSData * 转换为 UIImage *,并将其放入 UIImageView * 中,图像方向错误。

我知道我可以使用很多修复方法来获得正确的图像,而且我现在正在这样做,但问题是,当图像分辨率很高时(即 3000 * 4000),修复方法很慢,在我的 iPhone5 上大约需要 500 毫秒。使用仪器运行时间分析器后,主要时间花在写入数据上,我想这是不可避免的。

所以我想知道我做的事情正确吗?难道不应该有一种更简单、更有效的方法来解决这样的问题吗?请帮助我离开这里,非常感谢!

最佳答案

这可以通过使用 ImageIO 框架而无需实际旋转图像字节。您想要使用 CGImageDestinationCreateWithURL 创建图像目标,然后使用 CGImageDestinationAddImage 添加您的图像数据及其 EXIF 数据。 .

SO 上有几个例子,比如 this one .

如果您只想显示此图像,则可以使用以下方法从数据创建一个具有指定旋转的 UIImage:

+ (UIImage *)imageWithCGImage:(CGImageRef)imageRef scale:(CGFloat)scale orientation:(UIImageOrientation)orientation

关于ios - 如何使用从 AVCaptureDevice 捕获的 NSData 和 NSDictionary 组合一个面向 "right"的 UIImage?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20393904/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com