2

我对 Android 相机的 byte[] 数组输出有点困惑。一张图片本质上是一个二维数组,那为什么输出只有一维呢?

我正在尝试获取字节数组输出并对其执行傅里叶变换,为此我需要将数据放在二维双数组中。那么如何从相机输出字节数组中获取二维双精度数组呢?

谢谢

4

1 回答 1

2

一维阵列是扁平的二维阵列。要将其转换为二维数组,您需要以下内容:

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 回答