Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Мультимедиа в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.10.2010, 09:18   #1
buld3r
Новичок
Джуниор
 
Регистрация: 04.10.2010
Сообщений: 2
По умолчанию Бинаризация изображения

Добрый день. Всем перед мной стоит задача нахождения бликов на изображении. 2 Этапа мною почти пройдено, я нашел алгоритм самой бинаризаций, для изображении в формате .bmp. Но когда запрогроммировал алгоритм, то у меня возникла проблема, что он не хочет изображение, хотя несколько раз проверял, оно присутствует.
В общем, получился у меня вот такой код.
Код:
unit Unit4;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, JPEG, ImgList, StdCtrls;

type
  TForm4 = class(TForm)
    Image1: TImage;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form4: TForm4;

implementation

{$R *.dfm}

procedure dsBinarizeBMP(BMP: TBitmap; const aMid: Byte = 127);
   type
   T3b = array[0..2] of byte;
   P3b = ^T3b;
   var
   i, j: Integer;
   f3b: P3b;
   begin
   BMP.PixelFormat := pf24bit;
   for i:=0 to pred(BMP.Height) do
   begin
   f3b := BMP.ScanLine[i];
   for j := 0 to pred(BMP.Width) do
   begin
   if (((f3b^[0]+f3b^[1]+f3b^[2]) div 3)> aMid) then f3b^[0]:= 255
   else
   f3b^[0] := 0;
   f3b^[1] := f3b^[0];
   f3b^[2] := f3b^[0];
   if (j < pred(BMP.Width)) then
     inc(f3b);
   end;
   end;
end;


procedure TForm4.Button1Click(Sender: TObject);
begin
   Image1.Picture.Bitmap.LoadFromFile('1.bmp');
   dsBinarizeBMP(Image1.Picture.Bitmap);
end;


end.
У меня ругается, что не может найти изображение. Пробывал уже и .jpeg изображения подключать. Ничего не помогает.
buld3r вне форума Ответить с цитированием
Старый 06.10.2010, 02:11   #2
DomiNick
Студент, не
Старожил
 
Аватар для DomiNick
 
Регистрация: 29.01.2009
Сообщений: 2,067
По умолчанию

Всё работает... Интересный фильтр...

А у вас вообще есть файл "1.bmp"? Ну попробуйте загружать картинку дизайн-тайм...
I am the First of Cyber Evolution...
I am the First to Program your Future...
DomiNick вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
бинаризация deadh5n1 Помощь студентам 1 20.03.2010 10:51
Размер изображения guffer Мультимедиа в Delphi 6 10.07.2009 17:50
Загрузка изображения JRcoker Мультимедиа в Delphi 15 04.11.2008 18:32
Чтение изображения из базы данных, Вместо изображения - "System.Byte[]" ruelCrow Общие вопросы .NET 3 10.07.2008 23:29
Изображения в БД alikon1 БД в Delphi 3 08.10.2007 13:13