3 / 3 / 4
Регистрация: 11.10.2015
Сообщений: 156
|
|
1 | |
Замена цветов изображения на максимально близкие из данного набора26.01.2019, 12:53. Показов 1123. Ответов 4
У меня есть картинка, как мне нарисовать ее цветами, которые есть в моем наборе? Думал, что можно сделать что-то вроде diff = (r1 - r2)^2 + (g1 - g2)^2 + (b1 - b2)^2, с каким цветом эта "разница" минимальна, тот и выбирается для соответствующего пикселя. В теории это казалось отличной идеей, на практике же дела обстоят иначе: при конвертировании изображения получается дичь дикая, отдаленно напоминающая первоначальное изображение. Хочу, чтобы новая картинка была похожа на начальную
0
|
26.01.2019, 12:53 | |
Ответы с готовыми решениями:
4
Создать гистограмму цветов из цветов загруженного изображения и искать с помощью нее пиксели одинакового цвета Найти максимально количество цветов в палитре Найдите сумму квадратов чисел из введённого набора от данного номера до данного номера Найдите сумму чисел из введённого набора от данного номера до данного номера |
4166 / 3038 / 914
Регистрация: 19.11.2012
Сообщений: 6,182
|
|
27.01.2019, 08:03 | 3 |
Попробуйте взять минимум у взвешенной суммы квадратов. Коэффициенты у квадратов подберите экспериментально.
0
|
1487 / 1414 / 240
Регистрация: 19.02.2010
Сообщений: 3,916
|
|
27.01.2019, 22:39 | 4 |
Scriptozaur, https://ru.wikipedia.org/wiki/Дизеринг
А конкретнее - https://en.wikipedia.org/wiki/... _dithering Идея в том, чтобы погрешности (разницы между исходным и преобразованным цветом) не выбрасывались в никуда - а распределялись по соседним пикселам перед их конвертацией. Т.е. если в текущем пикселе недодали или переложили какого-то цвета - то в соседних желательно добавить или убрать (чтобы "в среднем по больнице" стало как можно ближе к исходному). Каждый компонент цвета (при цветном изображении) обрабатывается по-отдельности (указанная страничка англоязычной википедии этот факт явно не проговаривает). Из синонимов (вдобавок к наивной транслитерации "dithering" в "дизеринг") - "псевдосмешение цветов" на русском и "error diffusion" на английском. Т.е. можно и эти запросы погуглить при необходимости - но вряд ли найдётся что-то существенно иное по алгоритмике.
1
|
1471 / 826 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
|
|
28.01.2019, 00:11 | 5 |
Может так?
Суть заменить линейную функцию от цвета канала кусочной аппроксимацией. 255 делим на Количество цветов в таблице. Например 3 цвета Если R от 0 до 85 то R=12 Если R от 85 до 170 то R=45 Если R от 170 до 255 то R=76 Тоже для других каналов. Добавлено через 6 минут Но так будут еще цвета не из таблицы а ближайшие. Чтобы только заданные нужна карта градиента. Яркость канала перевести в цвет(R,G,B) 3 цвета: Если R от 0 до 85 то R=12 G=43 B= 54 Если R от 85 до 170 то R=45 G=53 B= 76 Если R от 170 до 255 то R=76 G=75 B= 23 Добавлено через 3 минуты А если нет цвета R пикселя? =)). 1)перевести RGB кадра в оттенки серого, формул навалом. 2)карта градиента, перевести яркость пикселя в цвет RGB
0
|
28.01.2019, 00:11 | |
28.01.2019, 00:11 | |
Помогаю со студенческими работами здесь
5
Найдите сумму чисел из введённого набора от данного номера до данного номера Как выбрать множество максимально отличающихся друг от друга цветов? Из набора случайных целых чисел выбрать несколько, сумма которых максимально возможно близка к N Вывести K-e степени чисел из данного набора Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |