>Попробовал брать просто среднее арифметическое от каждого цвета — на светлой голубой картинке датет сервый цвет,
на однородно залитой голубой картинке получился серый цвет?? а не в целых ли числах складывал со многократным переполнением ?
>преобразование средствами системы к картинке 1*1 пиксель — тоже, >поискав по интеренту нашел алгоритмы сжатия, формулы расстояния между цветами, но усреднения цвета нигде не попалось...
просто ф-лы усреднения и не получишь, как не найдёшь нигде, скажем, ф-лы "умножения векторов"..
Допустим, есть картинка из 2х точек: синяя (0,0,255) и жёлтая (255, 255, 0). Тогда усредняя в пространстве RGB получим (128, 128, 128) — довольно тёмный серый цвет. В пространстве HSB получим (после преобразования обратно в RGB) (0, 255, 128) — ядовитый зелёный.
>если сталкивались прошу подсказать в какую сторону думать...
Попробуй поусреднять в различных цветовых пространствах, и вообще определись для начала, какими свойствами должно обладать требуемое усреднение...
Здравствуйте, Вумудщзук, Вы писали:
>>Попробовал брать просто среднее арифметическое от каждого цвета — на светлой голубой картинке датет сервый цвет, В>на однородно залитой голубой картинке получился серый цвет?? а не в целых ли числах складывал со многократным переполнением ?
в целых, но чтобы избежать переполнения взял Int64, проверял — он не переполняется
>>преобразование средствами системы к картинке 1*1 пиксель — тоже, >>поискав по интеренту нашел алгоритмы сжатия, формулы расстояния между цветами, но усреднения цвета нигде не попалось... В>просто ф-лы усреднения и не получишь, как не найдёшь нигде, скажем, ф-лы "умножения векторов"..
В>Допустим, есть картинка из 2х точек: синяя (0,0,255) и жёлтая (255, 255, 0). Тогда усредняя в пространстве RGB получим (128, 128, 128) — довольно тёмный серый цвет. В пространстве HSB получим (после преобразования обратно в RGB) (0, 255, 128) — ядовитый зелёный.
>>если сталкивались прошу подсказать в какую сторону думать... В>Попробуй поусреднять в различных цветовых пространствах, и вообще определись для начала, какими свойствами должно обладать требуемое усреднение...
усреднение должно обладать только 1м свойством: визуально быть похоже на цвет исходной картинки ( сама картинка это однотонный отсканированный рисунок ), по поводу цветовых схем попробую покопать...
Сражение выигрывает тот, кто твердо решил его выиграть
(с) Л.Н. Толстой
Здравствуйте, NovaCxarmulo, Вы писали:
NC>усреднение должно обладать только 1м свойством: визуально быть похоже на цвет исходной картинки ( сама картинка это однотонный отсканированный рисунок ), по поводу цветовых схем попробую покопать...
Надо преобразовать картинку в Lab схему. В ней брать среднее арифметическое всех пикселей, затем результат переводится обратно в RGB.
На практике даже в xyY схеме цвета очень точны визуально.
Здравствуйте, piAnd, Вы писали:
A>Надо преобразовать картинку в Lab схему. В ней брать среднее арифметическое всех пикселей, затем результат переводится обратно в RGB. A>На практике даже в xyY схеме цвета очень точны визуально.
Здравствуйте, piAnd, Вы писали:
A>Здравствуйте, NovaCxarmulo, Вы писали:
NC>>усреднение должно обладать только 1м свойством: визуально быть похоже на цвет исходной картинки ( сама картинка это однотонный отсканированный рисунок ), по поводу цветовых схем попробую покопать... A>Надо преобразовать картинку в Lab схему. В ней брать среднее арифметическое всех пикселей, затем результат переводится обратно в RGB. A>На практике даже в xyY схеме цвета очень точны визуально.
как раз то, что надо получилось (преобразовывал в Lab), спасибо
Сражение выигрывает тот, кто твердо решил его выиграть
(с) Л.Н. Толстой