0
我有兩維矩陣,它存儲0到1之間的值。我想將這些值繪製爲灰度級別。將0到1的值轉換爲灰度圖像(Java)
如果值爲1,則應繪製爲白色。 如果該值爲0,則應繪製爲黑色。
我該怎麼做在java中?
我試過類:Color
和BufferedImage
,但我搞不明白。
我有兩維矩陣,它存儲0到1之間的值。我想將這些值繪製爲灰度級別。將0到1的值轉換爲灰度圖像(Java)
如果值爲1,則應繪製爲白色。 如果該值爲0,則應繪製爲黑色。
我該怎麼做在java中?
我試過類:Color
和BufferedImage
,但我搞不明白。
要創建的圖像,並設置像素:
final BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_ARGB);
for (int y = 0; y < height; y++)
{
for (int x = 0; x < width; x++)
{
image.setRGB(x, y, color);
}
}
color
是int,在這種情況下,在ARGB
格式(頂部字節是α,則紅色字節,綠色字節,藍色字節)。既然你在做灰度,你想要R,G和B是相同的值。你不想要alpha,所以你應該把最高字節設置爲0xFF。
「既然你在做灰階,你想R,G和B是相同的值。」那是我正在尋找的答案。謝謝! – coolscitist