CameraX ImageAnalysis
1.背景
CameraX 是一个旨在帮助开发者简化相机应用开发工作的 Jetpack 支持库。
它支持多种诸如 ImageCapture、Preview 和 ImageAnalysis 这种可以和 ML Kit 或 TensorFlow Lite 无缝结合的使用场景。
CameraX 使用 YUV420_888 来生成图像,该格式有 8 位的 Luma(Y)、Chroma(U, V) 和 Paddings(P) 三个通道。
YUV 是一种通用且灵活的格式。
2.原理
YUV_420_888 格式,YUV 格式也可以被称为 "YCbCr",它包括平面 (planar,如 I420)、半平面 (semi-planar,如 NV21/NV12) 和打包 (packed,如 UYVY) 格式。
YUV_420_888 是一种通用的 YCbCr 格式,它能够表示任何 4:2:0 色度二次采样的平面或半平面缓冲区 (但不完全交错),每个颜色样本有 8 位。且能够保证 Y 平面不会与 U/V 平面交错 (且像素步长始终为 1),以及 U/V 平面总是具有相同的行步长和像素步长。
RGBA_8888 是一种标准的具有红、绿、蓝和 alpha 通道的 RGB 格式,每个通道有 8 位。主要的转换对象是 RGB 颜色空间,RGB 因为色差变化较少,相对来说比较简单。
3.使用 ImageAnalysis 输出 RGBA_8888 的图片输出格式
复制代码
版权声明: 本文为 InfoQ 作者【Changing Lin】的原创文章。
原文链接:【http://xie.infoq.cn/article/2bc0827fd36b0e340b003f60d】。文章转载请联系作者。
评论