Kemudian ketik program berikut pada unit imageproses:

Edit ada pada Standard ke form beri namenya dengan EditThreshold dan Text = 12. Seperti berikut ini. Gambar 4.10 Edit Thresolding

13. Tambahkan program berikut ke UnitGlobalThressolding.

implementation {R .dfm} uses ImageProses;

14. Doble klik button Global Thresolding lalu ketik program berikut

procedure TGlobalThreshold.btGlobalThresoldingClickSender: TObject; var thres:real; begin Image2.Visible := True; Image2.Picture.Graphic := Image1.Picture.Graphic; thres := StrToFloatDef EditThreshold.Text,5; ImgGlobalThresholding Image2,thres,ProgressBar1; EditThreshold.Text := IntToStrRoundthres; end; 15. Tambahkan button ke dalam form lalu captionnya diganti dengan Exit, namenya diberinama btExit. Gambar 4.11 Button Exit

16. Doble klik button exit kemudin ketik program berikut.

procedure TFormGlobalThreshold.btExitClickSender: TObject; begin FormGlobalThreshold.Close; end; 17. Simpan program dengan save all, kemudian jalankan progran dengan cara compile kemudian run. Hasilnya sebagai berikut. Gambar 4.12 Hasil Program Thresolding

18. Tutup program tekan button exit.

4.3 PROGRAM GLOBAL THRESOLDING SELENGKAPNYA ADALAH SEBAGAI BERIKUT:

unit UnitGlobalThresolding; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, ExtDlgs, ComCtrls; type TFormGlobalThreshold = classTForm Image1: TImage; Image2: TImage; btOpen: TButton; OpenPictureDialog1: TOpenPictureDialog; btGlobalThresolding: TButton; ProgressBar1: TProgressBar; EditThreshold: TEdit; Label1: TLabel; Label2: TLabel; Label3: TLabel; btExit: TButton; procedure btOpenClickSender: TObject; procedure btGlobalThresoldingClickSender: TObject; procedure btExitClickSender: TObject; private { Private declarations } public { Public declarations } end; var FormGlobalThreshold: TFormGlobalThreshold; FileNameImg: string; implementation {R .dfm} uses ImageProses; procedure TFormGlobalThreshold.btOpenClickSender: TObject; begin if OpenPictureDialog1.Execute then begin FileNameImg := OpenPictureDialog1.FileName; Caption := Mammo Analisys : + OpenPictureDialog1.FileName; Image1.Picture.LoadFromFile OpenPictureDialog1.FileName; Image2.Visible := False; end; end; procedure TFormGlobalThreshold.btGlobalThresoldingClickSender: TObject; var thres:real; begin Image2.Visible := True; Image2.Picture.Graphic := Image1.Picture.Graphic; thres := StrToFloatDef EditThreshold.Text,5; ImgGlobalThresholding Image2,thres,ProgressBar1; EditThreshold.Text := IntToStrRoundthres; end; procedure TFormGlobalThreshold.btExitClickSender: TObject; begin FormGlobalThreshold.Close; end; end. unit UnitImageProses; interface uses WINPROCS, Graphics, ExtCtrls, ComCtrls, Variants; type TFreqHist = array [0..255] of longint; TMatrixFilter = array [1..16,1..16] of real; function RgbToGray Clr:TColor : byte; function ImgGetGray var Image:TImage; x,y:integer : byte; procedure ImgConvertToGrayscale var Image1:TImage; var ProgressBar1: TProgressBar; procedure ImgGlobalThresholding var Image:TImage; var thres:real; var ProgressBar1: TProgressBar; implementation