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

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

бинаризация изображения


unknown2 ©   (2011-06-03 14:42:00) 

нужно сделать 40% бинаризацию изображения. 40% - это как?

обычно делал так:


procedure Binarize(Bitmap: TBitmap; N: Integer);
var
 X, Y: Integer;
 C: TColor;
begin
 for X := 0 to Bitmap.Width - 1 do
   for Y := 0 to Bitmap.Height - 1 do
   begin
     C := Bitmap.Canvas.Pixels[X, Y];
     if GetRValue(C) <= N then
       C := clBlack
     else
       C := clWhite;
     Bitmap.Canvas.Pixels[X, Y] := C;
   end;
end;

procedure TForm1.Button2Click(Sender: TObject);
var
 Bitmap: TBitmap;
begin
 Bitmap := TBitmap.Create;
 try
   Bitmap.LoadFromFile('D:\Test\Image1.bmp');
   Binarize(Bitmap, 150);
   Bitmap.SaveToFile('D:\Test\Image2.bmp');
 finally
   Bitmap.Free;
 end;
end;


rolsen   (2011-06-04 12:46:00) [1]


> Юрий Зотов ©   (04.06.11 12:31) [12]
> Стоит ли юзать феню, если не ботаешь?:o)

Спалил, дядя Юр, спалил =)))


Юрий Зотов   (2011-06-04 12:31:00) [2]

> rolsen   (03.06.11 23:55) [9]
> попантоваться, видали, блин, какой я крутой

Поп О нтоваться. От слова "понт". А п А нты - это рога оленя.

Стоит ли юзать феню, если не ботаешь?
:o)


rolsen   (2011-06-04 02:25:00) [3]


> Германн ©   (04.06.11 01:23) [10]

У меня нет там реги.
По его вопросу там, лучше всего подойдет бинаризация методом Отса. Очень хорошо для текстов.
http://www.philippovich.ru/Library/Books/ITS/wwwbook/ist4b/its4/fyodorov.htm

А по его вопросу тут, дык, все уже сказано.


Германн   (2011-06-04 01:23:00) [4]


> rolsen   (03.06.11 23:55) [9]
>
>
> > Palladin ©   (03.06.11 21:54) [7]
> > ) его пробило на Ы ) но видимо это предел возможностей
>
> Ничего не предел. Я тебе сегодня его показывал ;)
>
>

Так подскажи автору в чём он не прав. Автор тут:
http://forum.vingrad.ru/forum/topic-331442.html
уже привёл конкретный пример задачи.


rolsen   (2011-06-03 23:55:00) [5]


> Palladin ©   (03.06.11 21:54) [7]
> ) его пробило на Ы ) но видимо это предел возможностей

Ничего не предел. Я тебе сегодня его показывал ;)


> Сергей М. ©   (03.06.11 21:07) [6]

Ну да, просто ностальжи. Ну и, типа, попантоваться, видали, блин, какой я крутой =))


Dennis I. Komarov   (2011-06-03 22:15:00) [6]

В любом случае [2] заставляет задуматься о смысле бытия...


Palladin   (2011-06-03 21:54:00) [7]

) его пробило на Ы ) но видимо это предел возможностей


Сергей М.   (2011-06-03 21:07:00) [8]


> Ы-ы, а я диплом писал по методам бинаризации


В смысле почитав этот топик ты понал как ты крепко облажался в дипломной работе ?) Или напротив утвердился в ее правильности ?) Или просто на ностальжи пробило ?)


rolsen   (2011-06-03 16:13:00) [9]

Ы-ы, а я диплом писал по методам бинаризации =)


MBo   (2011-06-03 16:03:00) [10]

> дали задание c такой формулировкой
Где точная формулировка?

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


Jeer   (2011-06-03 15:57:00) [11]

Нет, надо раскидать оставшиеся 60% в интервале 0..255


Unknown2   (2011-06-03 14:55:00) [12]

в универе дали задание c такой формулировкой. если 40% от 255, то получается так:

if GetRValue(C) <= 102 then // 255 / 100 * 40 ?


MBo   (2011-06-03 14:45:00) [13]

А откуда взялась эта фраза?
Может быть, имеется в виду 40% от 255 ?


Наверх

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