Как сравнить два цвета на предмет сходства / различия

Я хочу разработать программу, которая поможет мне определить из 5 предопределенных цветов, какой из них больше похож на переменный цвет и с каким процентом . Дело в том, что я не знаю, как это делать вручную, шаг за шагом. Так что придумать программу еще труднее.

Подробнее: Цвета взяты с фотографий тюбиков с гелем разного цвета. У меня есть 5 пробирок разного цвета, каждая из которых представляет 1 из 5 уровней. Я хочу сфотографировать другие образцы и на компьютере оценить, к какому уровню принадлежит этот образец, сравнив цвета, и я хочу знать это также с процентным приближением. Мне нужна программа, которая делает что-то вроде этого: http://www.colortools.net/color_matcher.html

Если вы скажете мне, какие шаги нужно предпринять, даже если я должен об этом подумать и делаю вручную. Было бы очень полезно.

160
задан smci 14 April 2017 в 23:34
поделиться

1 ответ

Версия 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
}
0
ответ дан 23 November 2019 в 21:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: