У меня есть проект, где я должен манипулировать изображением несколькими способами. Я застрял на пикселизации.Java Image Manipulation
Для пикселизации я должен взять набор пикселей 10x10 и вернуть одну ячейку, которая усредняла цвета RGB отдельно. В настоящее время все, что я получаю, - это красное изображение в моей программе бегунов. Спасибо за помощь.
public static Photograph pixelated(Photograph photo) {
int red = 0;
int green = 0;
int blue = 0;
int interval = 10;
Photograph p = null;
p = new Photograph(photo.getWidth(),photo.getHeight());
for (int row=0; row<photo.getHeight(); row +=interval) {
for (int col=0; col<photo.getWidth(); col +=interval) {
for (int row2=row; row2<row+10; row2++) {
for (int col2=col; col2<col+10; col2++) {
red = red + photo.getPixel(col, row).getRed();
green = green + photo.getPixel(col, row).getGreen();
blue = blue + photo.getPixel(col, row).getBlue();
}
}
red = red/interval;
green = green/interval;
blue = blue/interval;
Pixel rgb = new Pixel(red,green,blue);
for (int row3=0; row<interval; row++) {
for (int col3=0; col<interval; col++) {
p.setPixel(col3, row3, rgb);
}}}}
return p;
}
1) 'Pixel',' Фотография' ..? Чтобы лучше помочь, опубликуйте [SSCCE] (http://sscce.org/). 2) '}}}}' ???? Используйте последовательный и логический отступ для кодовых блоков. Отступ кода предназначен для того, чтобы помочь людям понять поток программы. –
С самого начала вы добавляете значения цвета 100 пикселей, но делятся на 10. Что делает «Pixel (r, g, b)» со значениями, которые имеют значение около 10x? –
}}}} действительно заставляет вас думать, что вы предпочитаете программировать на python XD – Patashu