利⽤空间距离⽐较两张图⽚颜⾊的相似度
在图像处理中,图像模式⼀般有RGB模式和HSI模式。前者将⾊彩分为red、green、blue三种颜⾊,通过各个分量的值来⽐较颜⾊,但是需要注意的是,计算rgb分量需要算出⼀张图⽚的像素点,取平均得到rgb的平均值,这种颜⾊⽐较简单,但是不能真实地反映两张图像的颜⾊的相似性,因此,需要⽤空间距离来⽐较。
/*
* 利⽤空间距离⽐较rgb
* */
public void space(String Image){
float[] rgb = new float[3];
File file = new File(Image);
BufferedImage bi = null;
银河补习班剧情try {绝句古诗
笋燕
bi = ad(file);
} catch (Exception e) {
e.printStackTrace();
}
int width = bi.getWidth();
仙女简笔画
int height = bi.getHeight();
int minx = bi.getMinX();
中间的英文
int miny = bi.getMinY();
int R = 0;
int red = 0;
int green = 0;
int blue = 0;
for (int i = minx; i < width; i++) {
for (int j = miny; j < height; j++) {
int pixel = bi.getRGB(i, j);
天气谚语rgb[0] = (pixel & 0xff0000) >> 16;
rgb[1] = (pixel & 0xff00) >> 8;
rgb[2] = (pixel & 0xff);款待的意思
red += rgb[0];
green += rgb[1];
blue += rgb[2];
R = i * j;
}
}
float red1 = red / R;
float green1 = green / R;
float blue1 = blue / R;
double space = (float) (Math.pow((red1-avgr), 2)+Math.pow((green1-avgg), 2)+Math.pow((blue1-avgb), 2));
女装陈列技巧
spacelength = Math.sqrt(space);
}
public static void sop(Object obj)// 输出
{
System.out.println(obj);
}