Библиотека дизеринга высшего качества в C - PullRequest
5 голосов
/ 16 сентября 2011

Я разрабатываю упаковщик текстурного атласа для использования с OpenGL, и в настоящее время я ищу решение с открытым исходным кодом (лучше, если это библиотека, но программное обеспечение с открытым исходным кодом также будет хорошо!) окажет наилучшие результаты для создания / размывания цветовой палитры. Это действительно не должно быть быстрым, но должно достигать оптимальных результатов. Было бы лучше, если бы была возможность генерирования палитры 4 бит на пиксель.

Ответы [ 3 ]

4 голосов
/ 04 января 2012

pngquant доступен в виде чистой библиотеки C .

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

pngquant использует MedianCut с несколькими дополнительными улучшениями и, вероятно, даст более высокое качество.

pngquant имеет настройку соотношения скорость / качество, которая может улучшить качество немного дальше, а также имеет настраиваемое дизерингалгоритм (вариант Флойда-Стейнберга), который не добавляет шума к хорошо квантованным областям изображения.

3 голосов
/ 16 сентября 2011

Imagemagick - очень мощная библиотека C для графических манипуляций: http://www.imagemagick.org/ Имеет инструменты командной строки, но также может использоваться как библиотека C.

2 голосов
/ 19 сентября 2011

Для дальнейшего использования я нашел PNGNQ , которая является довольно хорошей библиотекой для квантования изображений. Их образцы потрясающие.

...