使用 Android 相机进行图像处理
我想使用 onPreviewFrame 在将图像显示给用户之前对其进行后处理(即应用色调、棕褐色等)。据我了解,返回给回调的 byte[] 数据以 YUV420sp 编码。人们是否已在 Java 中或使用 NDK(本机代码)将其解码为 RGB?有谁有一个函数示例,可以将其解码为 RGB 以及之后如何使用 RGB 值?
谢谢。
I want to use the onPreviewFrame to post-process the image before displaying it to the user (i.e. apply a color tint, sepia, etc). As I understand, the byte[] data returned to the callback is encoded in YUV420sp. Have people been decoding this to RGB in Java or using NDK (native code)? Does anyone have an example of a function that decodes this to RGB and how the RGB values are used afterwards?
Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我找到了一个示例应用程序,它将 YUV420 转换为 RGB 并在预览图像上显示(某种程度上)实时直方图。
http://www.stanford.edu/class/ee368/Android/index.html html
I found a sample application that translates the YUV420 into RGB and displays (sort of) real time histograms over the preview image.
http://www.stanford.edu/class/ee368/Android/index.html
这有帮助吗?
首先检查是否支持 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< /a>
This helps?
First check if rgb is supported
http://developer.android.com/reference/android/hardware/Camera.Parameters.html#getPreviewFormat%28%29
and then set preview format to rgb
http://developer.android.com/reference/android/hardware/Camera.Parameters.html#setPreviewFormat%28int%29