2

我正在使用 android sdk 相机开发 android 应用程序。在相机预览上我需要帧内容,所以我使用 PreviewCallback 返回字节数组中的数据,现在我的问题是将数据保存在 mat 对象中 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。

4

1 回答 1

1

改为这样做:

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

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

于 2013-02-14T12:26:16.677 回答