Главная страница
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.028 c
1-1097017647
ДЫМ
2004-10-06 03:07
2004.10.17
Как обработать исключения при чтении/записи на дискету?


6-1091909744
ДухКороляАртура
2004-08-08 00:15
2004.10.17
FTP


6-1091760804
DelphiN!
2004-08-06 06:53
2004.10.17
Как перехватить закачку IE?


1-1096917443
lipskiy
2004-10-04 23:17
2004.10.17
Как предотвратить "замерзание" проигрывания авишки в TAnimate


14-1095882283
тихий вовочка
2004-09-22 23:44
2004.10.17
Интерактивная карта