从iPhone访问原始图像字节到计算机

时间:2012-09-29 16:12:11

标签: ios image file byte gpuimage

我正在iPhone上进行图像处理,但是我需要在cocoa之外获取原始字节,这样我就可以在像Matlab这样的图像友好平台上优化算法。我正在使用Brad Larson的优秀GPUIMAGE并且可以获得原始字节没有问题,但是当我使用NSData writetofile方法获得的文本文件时(我从xcode组织器下载应用程序,这使我可以访问文档文件夹中的文件)是一种奇怪的格式。我是一名Matlab程序员,所以我对可可比较新,所以我认为我必须遗漏一些基本的东西,因为我想我可以只使用c函数打印到文件。

我发现的任何讨论都只涉及在cocoa和app沙箱中的阅读和写作。我也可以使用GpuImageMovieWriter,但我想AVAssetWriter压缩图像数据,我需要未压缩的原始字节。字节的组织方式无关紧要,因为我可以在matlab中轻松解析它。

所以基本上最简单的方法是从可可环境中说出一个看起来像124,255,0,166,255等等的输出txt或csv文件(即image ints)。在设计加速度计算法之前我遇到了类似的问题,最后我将原始数据打印到控制台,复制到文本文件然后在matlab中进行解析,但是考虑到我现在处理的是图像,这是不切实际的。

对此问题的任何帮助,相关文本的指示等都将非常感激。

1 个答案:

答案 0 :(得分:0)

首先,这不是你写的文本文件。它是图像原始字节的二进制表示。您不能将其视为文本文件。

图像数据的结构很简单,每个像素表示为一组四个字节。每个字节是0-255颜色分量值,按蓝色,绿色,红色和alpha的顺序排列。图像从左到右,从上到下扫描,因此您只需要知道图像的宽度(以像素为单位)来确定事物的循环方式。从那里开始,应该很容易导入到你想要的任何应用程序中。