Jump to content
Compvision.ru
Sign in to follow this  
2expres

Алгоритм получения палитры цветов

Recommended Posts

У меня задача.

Задается количество цветов (16, 32, 64) и есть 24-битное изображение. Как правильно привести изображение к заданной палитре (16, 32 или 64 цвета), чтобы изображение сильно не искажалось. Простое отбрасывание разрядов не предлагать. Нужен именно алгоритм, а не готовое изображение. 

Заранее спасибо за ответы.

 

Share this post


Link to post
Share on other sites

Подойдет любой кластеризатор, например: kmeans,  гауссовы смеси, для особо изощренных, можно использовать нейронные сети.

Share this post


Link to post
Share on other sites
24 минуты назад, Smorodov сказал:

Подойдет любой кластеризатор, например: kmeans,  гауссовы смеси, для особо изощренных, можно использовать нейронные сети.

Кластеризация - это почти что сегментация изображения, а задача стоит обратная: упростить сегментацию используя меньшую цветность. Нет ли более примитивных средств?

Share this post


Link to post
Share on other sites

А, наверное я неправильно понял. Посмотрите тогда color dithering , например здесь  есть: https://github.com/dpiccone/dithering_algorithms 

Share this post


Link to post
Share on other sites
В 29.04.2017 at 19:14, Smorodov сказал:

А, наверное я неправильно понял. Посмотрите тогда color dithering , например здесь  есть: https://github.com/dpiccone/dithering_algorithms 

Спасибо. Дизеринг - это интересная вещь для формирования недостающего цвета шахматкой из доступной палитры цветов. Но для сегментации  дает отрицательный результат, увеличивая количество сегментов. Может кто знает в формате *.GIF применяется политра цветов. Есть политры фиксированные и оптимизированные. Где можно почитать про алгоритм получения оптимизированной палитры? 

http://citforum.ru/internet/webd/article_8.shtml

Share this post


Link to post
Share on other sites

Как я понял, в статье по ссылке упоминается как раз подход с k-means сегментацией.

Цвета палитры это центры кластеров. 

Share this post


Link to post
Share on other sites

Смотрел алгоритм k-means, имею даже программу сегментации на базе этого алгоритма. Фотографию 24 МП обрабатывает 28 минут!!! Нет ли другого быстрого пусть и менее качественного алгоритма?

Share this post


Link to post
Share on other sites

Ну так можно же фотографию 24 MP уменьшить до 0.3 MP и собрать ту же статистику намного быстрее.

Ну или собирать данные с заданным шагом, а не каждый пиксель, а в одной  из программ я просто 100000 точек  со случайными координатами собирал и по ним кластеры считал.

Share this post


Link to post
Share on other sites

Спасибо. 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×