我搜索了论坛并看到了这个问题的一些可能的部分解决方案,但我想帮助把它们放在一起。
我正在从相机中获取帧并对当前帧和前一帧之间的差异进行图像处理。除了来自相机的 RGB 值之外,我还在计算每个像素的色相和饱和度,每个像素也是一个 int。所以我的两个问题是:
从每次调用到存储所有这些值的最佳方法是什么
didOutputSampleBuffer
?从我一直在阅读的内容来看,似乎有这么多值,来自 NSNumber 的开销将是显而易见的,因此使用长度为 144 x 192 x 5(R,G) 的经典 c 样式整数数组将花费最少的内存,B,H,S) = 138,240。那有意义吗?如何将此数组放在我的 didOutputSampleBuffer 方法的范围内,因为我在应用程序启动时初始化数组,而不是在 didOutputSampleBuffer 方法中。论坛上有人提到也许我可以将数组包装在 NSMutableData 中,然后我可以将它存储为属性?
谢谢你的建议,唐