Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Улучшение качества картинки [D7, XP]


Laguna ©   (2011-11-10 17:49:00) 

Стоит задача распечатать картинку, находящуюся в Timage. Каким образом можно улучшить качество картинки перед выводом на печать, чтобы текст был более менее читабельным? Вот к примеру есть некий простенький графический редактор, в котором есть функция под названием гистограмма. Возможно ли самому реализовать такой эффект корретировки качества? На картинке показана часть изображения, присылаемая клиентами по почте.
http://s017.radikal.ru/i425/1111/7a/7b3843302e03.jpg
Как видете качество не ахти. Загружаю гистограмму, сдвигаю ползунки вправо и качество улучшается
http://s40.radikal.ru/i089/1111/07/4c25b6a1e9e4.jpg
Вот хотелось бы нечто подобное применить в своем коде. Подскажите направление где искать решение.

Подскажите направление поиска решения


Laguna   (2011-11-10 20:35:00) [1]

>Омлет

Огромаднейшее спасибо. То что нужно. Буду разбираться.


Pavia   (2011-11-10 20:33:00) [2]

http://www.efg2.com/Lab/ImageProcessing/HistoStretchGrays.htm
http://sources.ru/magazine/0805/paint.html

С гистограммами работать просто.
SetLength(a,256);
a[]:=0; обнуляем
Для всех пикселей изображения
begin
color:=Pixel(x,y); - тут предполагается что картинка серая 8 бит на пиксель.
Inc(a[color]);
end;

Теперь в "a" гистограмма.
Трансформируешь гистограмму.
Заведём массив b
SetLength(b,256);
b[i]:=i;
При трансформации гистограммы меняешь b.
Вывод делается просто

Для всех пикселей изображения
begin
color:=Pixel(x,y); - тут предполагается что картинка серая 8 бит на пиксель.
newcolor=b[color];
end;

Если будешь повышать контрастность, то совет ещё сделать умное размытие,  которое не затрагивает границы.


Омлет   (2011-11-10 20:17:00) [3]

тут на Delphi
http://www.efg2.com/Lab/ImageProcessing/HistoStretchGrays.htm


Омлет   (2011-11-10 20:12:00) [4]

http://en.wikipedia.org/wiki/Histogram_equalization


Laguna   (2011-11-10 19:58:00) [5]


> clickmaker ©   (10.11.11 18:00) [1]


Большое спасибо. Вот только Си... Но попытаюсь разобраться.


clickmaker   (2011-11-10 18:00:00) [6]

http://www.rsdn.ru/article/Gdi/gdi11_1.xml


Наверх

Титульная страница Поиск, карта сайта Написать письмо