2015-04-22 40 views
2

我试图在很多地方搜索这样做,但没有结果。我确实读过,唯一(据我所知)获取图像帧的方法是使用ImageReader,它为我提供了一个Image。然而,在我有足够好的图像之前,必须完成很多工作(将图像转换为字节数组,然后在格式间转换 - YUV_420_888ARGB_8888 - 使用RenderScript,然后将其转换为位图并手动旋转 - 或运行应用程序在风景模式)。在这一点上做了很多处理,我甚至还没有开始实际的处理(我计划在其上运行一些本地代码)。此外,我试图降低分辨率,但没有成功,并且在绘制表面时出现明显延迟。使用Camera2进行实时图像处理

有没有更好的方法呢?任何帮助将不胜感激。

回答

0

我不确定你对图像做了什么,但很多时候只有一个灰度图像实际上是需要的(再次取决于你的确切目标)如果你的相机输出YUV,灰度信息在Y通道。好的是,你不需要转换成无数的颜色空间,只用一层(而不是三层)就可以大大减少数据集的大小。

如果你需要彩色图像,那么这将不会帮助

+0

我想在本地代码中执行肤色分割和操纵,因此需要彩色图像。 – Dickster

+0

是的,看起来像我的建议不会帮助太多。祝你好运 – andrew