Я хочу разработать программу, которая поможет мне определить из 5 предопределенных цветов, какой из них больше похож на переменный цвет и с каким процентом . Дело в том, что я не знаю, как это делать вручную, шаг за шагом. Так что придумать программу еще труднее.
Подробнее: Цвета взяты с фотографий тюбиков с гелем разного цвета. У меня есть 5 пробирок разного цвета, каждая из которых представляет 1 из 5 уровней. Я хочу сфотографировать другие образцы и на компьютере оценить, к какому уровню принадлежит этот образец, сравнив цвета, и я хочу знать это также с процентным приближением. Мне нужна программа, которая делает что-то вроде этого: http://www.colortools.net/color_matcher.html
Если вы скажете мне, какие шаги нужно предпринять, даже если я должен об этом подумать и делаю вручную. Было бы очень полезно.
Версия Kotlin с тем, сколько процента делает Вас, хочет соответствовать.
Вызов метода с телом Метода дополнительного аргумента
isMatchingColor(intColor1, intColor2, 95) // should match color if 95% similar
процента
private fun isMatchingColor(intColor1: Int, intColor2: Int, percent: Int = 90): Boolean {
val threadSold = 255 - (255 / 100f * percent)
val diffAlpha = abs(Color.alpha(intColor1) - Color.alpha(intColor2))
val diffRed = abs(Color.red(intColor1) - Color.red(intColor2))
val diffGreen = abs(Color.green(intColor1) - Color.green(intColor2))
val diffBlue = abs(Color.blue(intColor1) - Color.blue(intColor2))
if (diffAlpha > threadSold) {
return false
}
if (diffRed > threadSold) {
return false
}
if (diffGreen > threadSold) {
return false
}
if (diffBlue > threadSold) {
return false
}
return true
}