基于Java的YUV图片文件提取Y分量,并构建为灰度图

  1. YUV文件对图像的一种较为普遍的编码方式,Y表示亮度(Luminance、Luma),U代表色度(Chrominance)、V代表饱和度(Chroma);YUV格式的编码的诞生有效地兼容了黑白电视和彩色电视。相对于较为平常的RGB三通道图像,YUV格式编码的图像视频文件在传输中占据较小的频宽。在移动段获取的第一手图片格式是YUV格式,但是YUV格式的图像不方便进行图像的处理与识别。由于项目需要,在手机移动端,要对所拍摄图像进行预处理后再进行上传;而后在服务器端进行进一步的识别处理。因此,需要先将YUV格式的图像进行转换。
  2. 在预处理中,项目只需要灰图进行处理,所以只需提取YUV图像的Y通道的值。YUV图像的保存格式有紧缩或平面格式。我所转化的YUV文件为平面格式,即三个通道为三个独立矩阵,每个矩阵的值为相应的字符。但YUV文件是依此保存三个通道的平面值,所以在转换前需预先知道图片的分辨率。
  3. 转换过程中所使用的是文件流的形式进行逐个读取转换,构建Mat型图像格式进行保存。(使用到了OpenCV库)

提供下载链接:https://download.csdn.net/download/qq_30046851/10749952

你可能感兴趣的:(基于Java的YUV图片文件提取Y分量,并构建为灰度图)