使用Android相机进行image processing

我想要使​​用onPreviewFrame在显示给用户之前(即应用颜色色调,棕褐色等)后处理图像。 据我所知,返回到callback的byte []数据在YUV420sp中编码。 有人一直在Java解码这个到RGB或使用NDK(本机代码)? 有没有人有一个函数的例子,将其解码为RGB以及之后如何使用RGB值?

谢谢。

我find了一个示例应用程序,将YUV420转换为RGB,并在预览图像上显示(sorting)实时直方图。

http://www.stanford.edu/class/ee368/Android/index.html

这有帮助吗?

Parameters params = mCamera.getParameters(); param.setPreviewFormat(ImageFormat.RGB_565); mCamera.setParameters(param); 

首先检查是否支持rgb

http://developer.android.com/reference/android/hardware/Camera.Parameters.html#getPreviewFormat%28%29

然后将预览格式设置为rgb

http://developer.android.com/reference/android/hardware/Camera.Parameters.html#setPreviewFormat%28int%29