Im試圖將我從黑白圖像的getRGB函數獲得的像素轉換爲無符號字節,如果我錯了,我已經讀取並更正了getRGB函數java返回整數值,所以我想要做的是看到0-255的值而不是負數的整數值。我試過這個沒有成功:在JAVA中將像素從int轉換爲無符號字節
int width;
int height;
byte extract;
int asign;
int matrix[][];
for (i = 0; i < height; i++)
{
for (j = 0; j < width; j++)
{
extract =(byte)(xray.getRGB(j, i));
asign = (int)extract;
//asign = asign & 0xff;
asign = asign + 128;
matrix[i][j] = asign;
}
}
請注意,xray是一個延遲圖像。 希望你能幫助我解決這個問題。正如你所看到的,我已經嘗試過使用蒙版,我也嘗試在演員投入後將值添加到128。
謝謝,我還有一個問題,如果,即時通訊使用它的形象,這是一個黑白圖像,它supossed包含一個矩陣,該矩陣中的所有值都介於0到255之間,對嗎?我的問題是,如果內部計算機仍然看到4個通道(阿爾法,紅色,綠色,藍色)或只看到一個通道,換句話說,像素由4個值組成,或者只有一個? – 2014-10-30 17:05:08
@LaloGalicia它可能被*存儲*任何方式。最終,它將需要轉換爲整個屏幕的像素數據,但是,這將是RGB。現在,很多繁重的工作都是由顯卡來完成的,CPU不必擔心。所以這取決於你的意思*內部*:有很多不同的層次! – 2014-11-03 06:13:42
謝謝@ chiastic-security,我會嘗試你告訴我的,並讓你知道我的結果:D – 2014-11-05 04:24:18