시간이 지나면 이미지 분석을 통해 많은 도움이 된 빠진 특성 (매우 중요 함)을 발견했습니다. 그 이름이 있는지 모르겠지만 나는 이미지의 평균 색상라고 불렀다 :
나는 이미지의 모든 픽셀을 통해 반복하고 각 색상을 계산했다
나는 또한의 정보를 검색 RGB 값 및 모든 픽셀의 모든 빨강, 녹색 및 파랑을 요약했습니다. 그냥 평균 색을 생각해 내고, 어떤 종류의 이미지를 비교하고 싶을 때 다시 내 목숨을 구했습니다.
코드는 다음과 같은 것입니다 :
File f = new File("image.jpg");
BufferedImage im = ImageIO.read(f);
int tot = 0;
int red = 0;
int blue= 0;
int green = 0;
int w = im.getWidth();
int h = im.getHeight();
// Going over all the pixels
for (int i=0;i<w;i++){
for (int j=0;j<h;j++){
int pix = im.getRGB(i, j); //
if (!sameARGB(pix)) { // Compares the RGB values
tot+=1;
red+=pix.getRed();
green+=pix.getGreen();
blue+=pix.getBlue();
}
}
}
그리고 당신은이 같은 결과를 얻어야한다 :
// Percentage of color on the image
double per = (double)tot/(h*w);
// Average color <-------------
Color c = new Color((double)red/tot,(double)green/tot,(double)blue/tot);
을