如何更改CVPixelBuffer数据格式

时间:2018-10-15 07:26:20

标签: swift coreml cvpixelbuffer

我将UIImage转换为CoreML的CVPixelBuffer,但我想更改RGB像素,例如R / 1.5,G / 2,B / 2.5。

我可以使用assumingMemoryBound(to : UInt8.self)读取像素数据,但是 如何修改CVPixelBuffer中的像素数据?

1 个答案:

答案 0 :(得分:0)

为什么要在CVPixelBuffer中执行此操作?作为模型的一部分,Core ML可以自动为您执行此操作。

将模型转换为Core ML时,可以指定image_scale预处理选项。

在您的情况下,您似乎希望每个颜色通道具有不同的比例,可以通过在模型中添加比例图层来实现。有关示例,请参见以下Jupyter笔记本:https://github.com/apple/coremltools/blob/master/examples/Image_preprocessing_per_channel_scale.ipynb