【发布时间】:2020-04-10 08:45:34
【问题描述】:
我正在尝试创建一个程序,该程序将检测蓝线并将其上方的所有像素涂黑,但下方不涂黑。参见下面的方法:
public static void findBlueLine(Picture p) {
Pixel[][] pixels = p.getPixels2D();
for(int y = 0; y < p.getHeight(); y++) {
for (int x = 0; x < p.getWidth(); x++) {
if (isBlueLine(pixels[y][x])) {
pixels[y][x].setColor(Color.BLACK);
//for(int m = y; m < p.getHeight(); m++) {
//pixels[m][x].setColor(Color.BLACK);
//}
}
}
}
}
【问题讨论】:
-
什么样的问题?你为什么要注释掉最里面的循环?
-
回首往事,我弄清楚了为什么它不起作用,我正在研究一个项目,该项目将某个颜色线上方的所有像素(用于机器人的东西)涂黑并识别红球。我将盒子设置为蓝色,这样它就会检测到它并将整个屏幕变黑。改变了盒子的颜色,它的工作原理。大声笑。
标签: java loops image-processing iteration pixel