我對這段代碼感到迷茫,我正在努力。我不得不使用java來製作一張灰度圖。我有基本代碼,但我不知道要放入什麼內容,不會使整個屏幕變灰。我正在努力研究它,但我迷了路,不知道下一步該做什麼。它目前的方式是,只需要一張圖像通過一個過程,然後使其新版本完全相同,但我需要使新版本變成灰色版本。 訪問:https://ask.extension.org/uploads/question/images/attachments/000/037/087/image_300x300%2523.jpg?1406470060對於我正在使用的樹圖片。使用Java的圖片上的灰度
import java.awt.*; //import the awt graphics package
class TrueColors //start of the class
{
TrueColors() //start of the main method
{
Picture pictureObj = new Picture("trunk.jpg");
pictureObj.explore();
int redValue = 0; int greenValue = 0; int blueValue = 0;
Pixel targetPixel = new Pixel(pictureObj, 0,0);
Color pixelColor = null;
for(int y=0; y < pictureObj.getHeight(); y++)
{
for(int x = 0; x < pictureObj.getWidth(); x++)
{
targetPixel = pictureObj.getPixel(x,y);
pixelColor = targetPixel.getColor();
redValue = pixelColor.getRed();
greenValue = pixelColor.getGreen();
blueValue = pixelColor.getBlue();
pixelColor = new Color(redValue, greenValue, blueValue);
targetPixel.setColor(pixelColor);
}//end of the inner for loop
}//end of the outer for loop
pictureObj.explore();
pictureObj.write("NewTrunk.jpg");
pictureObj.show();
}//end of main method
}//end of class
問題在於,我還沒有學會如何使用BufferedImages。我正在研究一門課程,這是我堅持的任務之一。 –
非常感謝,解決了我的問題。 –
(R + G + B)/ 3是計算灰度圖像顏色的一種非常糟糕的方法。 – eldo