【发布时间】:2021-09-09 08:29:14
【问题描述】:
在我正在开发的 iOS 应用程序中,图像在kCVPixelFormatType_420YpCbCr8BiPlanarVideoRange(将通过网络发送)中捕获,但稍后在应用程序中我希望将其转换为kCVPixelFormatType_32BGRA(用于深度学习推理) .
我无法正确执行此转换。我在苹果文档@vImageConvert_420Yp8_Cb8_Cr8ToARGB8888(::::::::) 中找到了一些帮助;这是一个函数
将 YUV 420Yp8_Cb8_Cr8 格式图像转换为 ARGB8888 格式图像。
这似乎非常适合我的用例。但我无法弄清楚如何获取参数srcYp、srcCb 和srcCr。函数定义为:
func vImageConvert_420Yp8_Cb8_Cr8ToARGB8888(_ srcYp: UnsafePointer<vImage_Buffer>,
_ srcCb: UnsafePointer<vImage_Buffer>,
_ srcCr: UnsafePointer<vImage_Buffer>,
_ dest: UnsafePointer<vImage_Buffer>,
_ info: UnsafePointer<vImage_YpCbCrToARGB>,
_ permuteMap: UnsafePointer<UInt8>!,
_ alpha: UInt8,
_ flags: vImage_Flags) -> vImage_Error
非常感谢任何帮助。
【问题讨论】:
标签: ios swift image-processing metal accelerate