Мне нужно полученное RGB значение пикселя отнести к 7 основным цветам, каким образом это сделать на Java?
Наверно, как-нибудь вот так можно сделать. Задаете массив цветов, значения которого вам нужны (радуга в данном случае), а потом находите ближайший.
public int nearestRainbowColor(int color) {
int[] rainbow = {
0xff0000, // каждый
0xff7f00, // охотник
0xffff00, // желает
0x00ff00, // знать
0x42aaff, // где
0x0000ff, // сидит
0x8f00ff // фазан
};
int minDiff = Integer.MAX_VALUE;
int nearestColorIndex = 0;
for (int i = 0; i < rainbow.length; i++) {
if (diffBetween(color, rainbow[i]) < minDiff) {
minDiff = diffBetween(color, rainbow[i]);
nearestColorIndex = i;
}
}
return rainbow[nearestColorIndex];
}
public static int diffBetween(int c1, int c2) {
int r1 = c1 / 0x010000;
int g1 = (c1 % 0x010000) / 0x00100;
int b1 = c1 % 0x000100;
int r2 = c2 / 0x010000;
int g2 = (c2 % 0x010000) / 0x00100;
int b2 = c2 % 0x000100;
return Math.abs( r1 - r2 ) + Math.abs( g1 - g2 ) + Math.abs ( b1 - b2 );
}
Виртуальный выделенный сервер (VDS) становится отличным выбором
В проекте нажал Invalidate and restart студия закрылась и вдруг выскочило окно
Делаю сайт на SpringЕсть страница html,при запуске не отображается графическая часть,а только формы ввода,полагаю дело в том,что java не находит...
Не могу получить нужный мне элемент из ViewHolder'a по позиции, и применить для него некие изменения (заменить background)
Есть код на питоне для подготовки изображения к классификации: