ARFrame中的CapturedImage为纵向/纵向

时间:2017-11-08 16:16:20

标签: ios arkit

ARFrame中的CapturedImage是横向/横向。如何将其更改为肖像?

由于

2 个答案:

答案 0 :(得分:2)

There's an API for that.

ARFrame. displayTransform(for:viewpoertSize:)为您提供了一个变换矩阵,可以将图像的传感器原始方向旋转到您指定的任何UI方向,并提供缩放因子以适合宽高比的视口并不一定与相机相匹配。

然后,您可以在您正在使用的任何显示管道中使用该变换来显示旋转的图像。例如:

  • 检查基于金属的ARKit应用的Xcode项目模板,了解它们如何将变换矩阵提供给顶点着色器。

  • 从像素缓冲区创建核心图像CIImage,然后使用transformed(by:)获取旋转的图像,然后您可以将其转换为UIImage并显示在{{1} }}

答案 1 :(得分:0)

frame.displayTransform(for: .portrait, viewportSize: CGSize(width: height, height: width)).inverted()将我的画像CGRect旋转到ARFrame用来捕捉图像的风景方向。