1
據我所知,每個像素用4個字節表示(a,r,g,b)。如何將它存儲在byte []數組中,其中size是圖像中像素的數量。Android Camera Byte []數據,它如何存儲32位像素?
下面的代碼按預期工作(旋轉圖像)
rotatedData = new byte[data.length];
for (int y = 0; y < height; y++) {
for (int x = 0; x < width; x++)
rotatedData[x * height + height - y - 1] = data[x + y * width];
}
data = rotatedData;
int tmp = width; // Here we are swapping, that's the difference to #11
width = height;
height = tmp;
您確定它是32b數據嗎?存儲符合你的描述的同樣有效的方法是「一個字節= 0xaarrggbb」或類似的。 –
如何以2位存儲數字0-255? – Arjun
你沒有;這是我的問題。你確定*你所擁有的是每像素32B的彩色數據值?即使捕獲的數據是32b,訪問該數據的任何特定函數的返回值也不一定需要返回那麼多的細節。一個返回一個'Byte []'的函數可以像我提到的那樣使用一個方案。我根本不瞭解Android,但我確實知道在8b中不能存儲32b。 –