2

私はAndroidSDKカメラを使用してAndroidアプリを開発しています。カメラプレビューではフレームコンテンツが必要なので、PreviewCallbackを使用してデータをバイト配列で返します。現在、私の問題はデータをマットオブジェクトに保存することです。マットは灰色の画像を返します。

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 に答える