2 / 2 / 1
Регистрация: 29.11.2012
Сообщений: 143
|
||||||
1 | ||||||
Уменьшить количество цветов в изображении15.04.2013, 22:07. Показов 4641. Ответов 6
Метки нет (Все метки)
Здравствуйте! Пишу программу, которая преобразовывает изображение в схему для вышивки. Для этого изображение загружается в программу, разбивается на определенное количество равных квадратных ячеек (пользователь вводит количество необходимых ячеек по ширине изображения, и относительно этого программа разбивает все изображение). Затем в каждой ячейке определяется основной цвет, так чтобы в ячейке был только один цвет, результат выводится на экран. Дальше по задумке необходимо ограничить количество цветов на изображении (необходимое кол-во вводит пользователь) Вот тут то и возникает проблема: Если, скажем, пишем 3 цвета то это не совсем 3 цвета. У нас система RGB, и вот каждый из этих цветов делится на три. т.е. в реальности 3 - это 9. Как-то так.
Работаю в Borland C++ builder У меня это записано таким образом:
0
|
15.04.2013, 22:07 | |
Ответы с готовыми решениями:
6
Подсчитать количество цветов на изображении Как изменить количество цветов в изображении Как определить количество цветов в изображении? Посчитать количество цветов в растровом изображении |
1090 / 588 / 121
Регистрация: 11.11.2008
Сообщений: 1,544
|
|
16.04.2013, 07:02 | 3 |
так. ну вот пользователь выбрал три цвета, мы их разложили в RGB
r1,g1,b1 r2,g2,b3 r3,g3,b3 берем пиксель с картинки, раскладываем и его: r,g,b смотрим к какому из заданных 3 цветов он больше всего тяготеет: rr1 = abs (r1-r) gg1= abs (g1-g) bb1 = abs (b1-b) rr2 = abs (r2-r) gg2= abs (g2-g) bb2 = abs (b2-b) rr3 = abs (r3-r) gg3= abs (g3-g) bb3 = abs (b3-b) и вот какая сумма из rr1+gg1+bb1 rr2+gg2+bb2 rr3+gg3+bb3 будет минимальной, тот цвет и назначаем пикселю. думаю мысль понятна, попробовать стоит)
1
|
2 / 2 / 1
Регистрация: 29.11.2012
Сообщений: 143
|
|
16.04.2013, 09:42 [ТС] | 4 |
Вы не правы. Рассказала так, как смогла.
Добавлено через 3 минуты Вы правы, мысль стоящая, но проблема в том, что пользователь выбирает кол-во цветов, но не выбирает какие- именно должны быть.
0
|
1090 / 588 / 121
Регистрация: 11.11.2008
Сообщений: 1,544
|
|
16.04.2013, 10:38 | 5 |
а зачем так?) ну пусть это будут разные случайные цвета, если без разницы)
Добавлено через 9 минут хотя понял... тогда сложнее... надо либо заставлять юзера тыкать на картинке на цвета которые он хочет оставить так сказать либо делать анализ цветов картинки и принимать како-то решение. в общем вариантов может быть много и не понятно какой юзеру больше всего понравится.
1
|
|
16.04.2013, 15:02
#6
|
0
|
2 / 2 / 1
Регистрация: 29.11.2012
Сообщений: 143
|
||||||
10.05.2013, 20:44 [ТС] | 7 | |||||
Хотелось бы, не множество вариантов, а только один. В частности, как мне представляется, задается необходимое максимальное количество цветов и остается это количество, ну, либо несколько меньшее.
Берем спектр цветов по каждой составляющей (R, G, B), разбиваем его на количество отрезков, совпадающее с заданным числом цветов. Затем определяем отрезок,в который попадает значение R, G, B, изменяем взятое значение на среднее по отрезку и получаем ограниченное количество цветов. Но если брать все множество цветов, то бишь 16777215, то действительно получаем количество цветов которое нужно пользователю, но цвета абсолютно сюриалистичные. Вставляю код, в котором цвета получаются более близкие, но их количество получается несколько больше требуемого количества.
0
|
10.05.2013, 20:44 | |
10.05.2013, 20:44 | |
Помогаю со студенческими работами здесь
7
Как ограничить количество цветов в изображении Уменьшить количество цветов картинки! Есть н цветов разных видов. Составьте все возможные сочетания букетов из всех этих цветов. Количество цветов и их названия вводит пользователь Распознание цветов на изображении Распознавание цветов на изображении Замена цветов в bmp-изображении Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |