我想编写一个java程序,这样当我捕获魔方的任何一个面的图像时,它会告诉哪个颜色存在于哪个区块上。我不想使用任何预先编写的库/ api。我想自己编写代码。我想问一下我应该怎么做......我的意思是步骤。 提前谢谢!
答案 0 :(得分:1)
你可以做这样的事情,分析当时的一个像素
img = ImageIO.read(new File("/mydir/pic.png"));
for (int y = 0; y < img.getHeight(); y++) {
for (int x = 0; x < img.getWidth(); x++) {
int rgb = img.getRGB(x, y);
if (rgb == Color.RED.getRGB()) {
//Do stuff
} else if (rgb == Color.GREEN.getRGB()){
//Do more stuff
}
}
}
答案 1 :(得分:0)
如果图像中立方体的面部大小是可变的,那么这不是一件容易的事。否则你可以使用@ urag的代码,但不是检查所有像素,只需检查一行中的6个像素,从第一个瓷砖的第一个中心开始,瓷砖宽度偏移。