相机预览提供灰色图像

时间:2013-01-17 09:53:44

标签: java android opencv

我正在使用android sdk相机开发Android应用程序。在相机预览我需要帧内容所以我使用PreviewCallback返回字节数组中的数据,现在我的问题是在mat对象中保存数据垫返回灰色图像:

public void onPreviewFrame(byte[] data, Camera camera) {
    Mat src = new Mat(previewSize.height, previewSize.width, CvType.CV_8U, new Scalar(255));
    src.put(0, 0, data);
    Highgui.imwrite("/mnt/sdcard/1.jpg", src);
}

任何人都可以帮我生成argb图像

注意:我正在以预览图像格式使用NV21。

1 个答案:

答案 0 :(得分:1)

请改为:

Mat src = new Mat(previewSize.height, previewSize.width, CvType.CV_8UC3);

如果它不起作用,则表示您的data已经是灰色的,因此您必须在代码中的某处将其设置为灰色。