Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.17;
Скачать: CL | DM;

Вниз

мне привести 24-битное изображение к 8-битному...   Найти похожие ветки 

 
Ale}{(is)   (2004-07-17 20:33) [0]

Уважаемые Мастера! подскажите пожалуйста ответ на такой вопрос. Есть сгенерированная по алгоритму octree палитра. Как мне привести 24-битное изображение к 8-битному, используя эту палитру, возможно с использованием dithering’а (как это делает ACDSee FotoEditor). Смотрел по ссылке http://www.efg2.com/Lab/Library/Color/AndComputers.htm#Quantization, но там столько всего, что я запутался. Подскажите, пожалуйста, алгоритм или дайте ссылочку.


 
oleg_SYS   (2004-07-17 21:18) [1]

А почему бы тебе не изменить с помощь TBitMap

var
bm: TBitMap;
begin
bm.LoadFromFile("какринка.bmp");
bm.PixelFormat:=pf8bit;
bm.SaveToFile("какринка.bmp");


 
Огромное Кулясищще ©   (2004-07-17 23:35) [2]

>А почему бы тебе не изменить с помощь TBitMap

Без потерь это пройдёт от меньшего к большему.

>Есть сгенерированная по алгоритму octree палитра. Как мне привести 24-битное изображение к 8-битному, используя эту палитру

Гм, какие сложности? Палитра была сгенерирована с изображения. Очевидно, держится в PLogPalette. Дальше, наверное, лучше завести отдельное изображение pf8bit и простым проходом выбираешь ближайший из палитры цвет для данного. Тут простой алгоритм подойдёт какой-нить (можно доступ к RGB составляющим, а далее берёшь R за основу и складываешь модкули разности между R и G, и R и B. Чем меньше число - те мближе цвет) или может GetNearestColor умеет корректировать себя по палитре. В общем, всё ништяк.


 
Ale}{(is)   (2004-07-18 21:48) [3]

Правильно, хранится в PLogPalette. Однако, если у тебя палитра в 16 цветов (а не в 256), то простым подбором цветов не обойтись. Нужен алгоритм dithering"а. Знаю, что их множество, но все на сишке. На Дэльфи ничего не нашёл. Нужна просто ссылка. Словестные описания - это хорошо, но лучше не изобретать велосипед, а воспользоваться чем нибудь проверенным...


 
Ertong ©   (2004-07-25 08:42) [4]

Поройся в исходниках бесплатного компонента GifImage. Там реализовано много методов dithering"а.


 
Огромное Кулясищще ©   (2004-07-25 17:47) [5]

2 Ale}{(is) (18.07.04 21:48) [3]:

Что ж такое говоришь? Ты сам пишешь:

>Есть сгенерированная по алгоритму octree палитра.

Как же ты её сгенерировал?



Страницы: 1 вся ветка

Текущий архив: 2004.10.17;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.026 c
3-1095759267
Chlavik
2004-09-21 13:34
2004.10.17
Добавляю запись в которой одно поле "Счётчик"


14-1096542254
Rule
2004-09-30 15:04
2004.10.17
Тем кто висит в фидошных конфах ...


1-1096535034
BorH
2004-09-30 13:03
2004.10.17
Конвертация String[4] в Integer


4-1094996368
Sem
2004-09-12 17:39
2004.10.17
Перекодировка DOS -> Windows и обратно


6-1091731228
redlord
2004-08-05 22:40
2004.10.17
tserversocket tclientsocket for delphi 7