2

Android カメラからの byte[] 配列出力について少し混乱しています。画像は基本的に 2D 配列ですが、なぜ出力は 1D だけなのですか?

バイト配列出力を取得してフーリエ変換を実行しようとしていますが、そのためには、データを 2D double 配列にする必要があります。では、カメラ出力バイト配列から 2D double 配列に取得するにはどうすればよいでしょうか?

ありがとう

4

1 に答える 1

2

1D 配列はフラット化された 2D 配列です。それを 2D 配列に変換するには、次のようなものが必要です。

double[][] array2D = new double[width][height];

for(int i = 0 ; i < array2D.length ; i++)
{
    for(int j = 0 ; j < array2D[i].length ; i++)
    {
        array2D[i][j] = array1D[i * array2D.length + j];
    }
}

幅と高さが逆になる場合があります。

于 2012-12-21T07:11:50.267 に答える