• Tidak ada hasil yang ditemukan

Simulasi Pembuatan Pola Citra Untuk Mengetahui Jarak Antara Nanopartikel Dengan Menggunakan Lattice Generator dan Lattice Parameter Analyzer.

N/A
N/A
Protected

Academic year: 2017

Membagikan "Simulasi Pembuatan Pola Citra Untuk Mengetahui Jarak Antara Nanopartikel Dengan Menggunakan Lattice Generator dan Lattice Parameter Analyzer."

Copied!
39
0
0

Teks penuh

(1)

i

SIMULASI PEMBUATAN POLA CITRA UNTUK MENGETAHUI JARAK ANTARA NANOPARTIKEL DENGAN MENGGUNAKAN LATTICE

GENERATOR DAN LATTICE PARAMETER ANALYZER

Laurensius Morris 0522018

Jurusan Teknik Elektro, Fakultas Teknik, Universitas Kristen Maranatha, Jl. Prof.Drg.Suria Sumantri, MPH no.65, Bandung, Indonesia.

Email : morris_heavenz@yahoo.com

ABSTRAK

Perkembangan teknologi nano di era modern saat ini telah berkembang dengan pesat. Nanoteknologi akan membuat suatu material benda menjadi lebih kuat dan ringan. Contohnya seperti dalam membuat material baja yang kuat untuk body kendaraan bermotor. Dalam menentukan material yang baik diperlukan penelitian tentang nanopartikel. Untuk menganalisa dan meneliti benda yang berukuran nanopartikel dibutuhkan suatu mikroskop elektron yang dapat menghasilkan gambar nanopartikel material tersebut. Gambar hasil scanning dari mikroskop elektron tersebut mempunyai pola dan jarak yang berbeda-beda tergantung dari material yang akan dianalisa.

Pada Tugas Akhir ini, akan dibentuk simulasi pembuatan pola citra dengan parameter– parameter yang diperoleh dari High Resolution Electron Microscope (HREM). Simulasi ini menggunakan tools Matlab yaitu Lattice Generator. Output dari Lattice Generator ini akan menghasilkan gambar/citra. Gambar tersebut akan dianalisa dengan Lattice Parameter Analyzer untuk dapat mengetahui jarak antara nanopartikel. Jarak nanopartikel yang diukur akan dihitung dengan metoda Radial Distribution Function (RDF) yaitu menentukan jarak antara nanopartikel dari titik tengah partikel. Hasil dari Lattice Parameter Analyzer akan berupa tabel dan grafik yang menyatakan jarak pengukuran antara nanopartikel. Dari pengukuran dengan 5 buah titik pada gambar Silicon HREM diperoleh nilai kesalahan error rata-rata sebesar 0.123 nm sedangkan pada gambar TiO2 diperoleh nilai kesalahan

error rata sebesar 0.003 nm.

(2)

ii

DEVELOPMENT OF PATTERN IMAGE SIMULATION FOR KNOWING DISTANCE BETWEEN NANOPARTIKEL USING LATTICE

GENERATOR AND LATTICE PARAMETER ANALYZER

Laurensius Morris 0522018

Electrical Engineering Department, Maranatha Christian University Bandung Jln. Prof. Drg. Suria Sumantri, MPH no. 65, Bandung, Indonesia

Email : morris_heavenz@yahoo.com

ABSTRACT

In the the development of nano technology in the modern era this has grown rapidly. Nanotechnology will make a material object becomes stronger and lighter. For example, as in making a strong steel material for vehicle body. To determined a good material object then it need research on nanoparticles. To be able to analyze and examine the nanoparticle-sized objects, it needed a electron microscope that will produce nanoparticle materials. Image scanning of the electron microscope has a pattern and distances vary depending on the material to be analyzed.

In this final project, will be established of an image development simulations with parameters - the parameters obtained from the High Resolution Electron Microscope (HREM). This simulation using the Matlab tools Lattice Generator. Output of this lattice generator will produce a picture / image. Images will be analyzed with Lattice Parameter Analyzer to be able to know the distance between the nanoparticles. Nanoparticles measured distance will be calculated by methods Radial Distribution Function (RDF) which determines the distance between the nanoparticles from the midpoint of the particle. Results of the Lattice Parameter Analyzer will be tables and graphs which states the distance measurement between the nanoparticles. From measurements by 5 points on the Silicon HREM images obtained error value of the average error of 0.123 nm, while the images obtained TiO2 average value of error for error 0.003 nm.

(3)

iii DAFTAR ISI

LEMBAR PENGESAHAN

LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI PERNYATAAN ORISINALITAS LAPORAN

KATA PENGANTAR

ABSTRAK ... i

ABSTRACT ... ii

DAFTAR ISI... iii

DAFTAR GAMBAR ... vi

DAFTAR TABEL ... ix

DAFTAR RUMUS ... x

BAB 1 PENDAHULUAN 1.1 Latar Belakang ... 1

1.2 Perumusan Masalah ... 1

1.3 Tujuan ... 2

1.4 Pembatasan Masalah ... 2

1.5 Sistematika Penulisan ... 2

BAB 2 LANDASAN TEORI II.1 Pengantar Nanopartikel ... 4

II.2 Lattice ... 4

(4)

iv

II.3.1 Latar Belakang Teori ... 7

II.3.2 Definisi Lattice Generator Matlab ... 9

II.3.3 Input dan Output Lattice Generator ... 11

II.4 Lattice Parameter Analyzer ... 12

II.4.1 Latar Belakang Teori ... 12

II.4.2 Definisi Lattice Parameter Analyzer Matlab ... 14

II.4.3 Distance Measurement ( Perhitungan Jarak ) ... 14

II.4.4 Finding Maximum Peak dengan FindMaxGauss.M ... 15

II.4.5 Radial Distribution Function ... 16

II.4.6 Input LPA ... 17

II.4.7 Output LPA ... 17

II.4.8 Blok Diagram LPA ... 18

II.5 Titanium Dioksida (TiO2) Dan Silikon (Si) ... 18

II.5.1 Titanium Dioksida (TiO2) ... 19

II.5.2 Silikon ... 19

BAB 3 PERANCANGAN III.1 Blok Diagram Perancangan Program ... 21

III.2 Perancangan Program ... 22

III.2.1 Lattice Generator ... 22

III.2.2 Lattice Parameter Analyzer ... 30

BAB 4 DATA PENGAMATAN DAN ANALISA DATA IV.1 Metoda Perhitungan Lattice Parameter Analyzer ... 39

IV.1.1 Square Lattice ... 39

(5)

v

IV.1.3 Hexagonal Lattice ... 44

IV.2 Analisa Data ... 45

IV.2.1 Lattice Generator TiO2 ... 45

IV.2.2 Lattice Generator Si ... 48

IV.2.3 Silicon ... 52

IV.2.4 Titanium Dioksida ... 61

BAB 5 KESIMPULAN DAN SARAN V.1 Kesimpulan ... 71

V.2 Saran ... 72

(6)

vi

DAFTAR GAMBAR

Gambar 2.1 Pola-pola Lattice 2 Dimensi ... 6

Gambar 2.2 Tampilan Vektor Base ... 7

Gambar 2.3 Tampilan Wiener Filter ... 8

Gambar 2.4 Representasi square lattice ... 9

Gambar 2.5 Representasi rectangular lattice ... 9

Gambar 2.6 Representasi hexagonal lattice... 10

Gambar 2.7 Setelah gambar/citra disimulasikan dengan LG ... 11

Gambar 2.8 Tampilan pengukuran radius atom ... 12

Gambar 2.9 Tampilan koordinat kartesian ... 13

Gambar 2.10 Radial Distribution Function (RDF1) ... 16

Gambar 2.11 Radial Distribution Function (RDF2) ... 16

Gambar 2.12 Flowchart Lattice Parameter Analyzer... 18

Gambar 2.13 Contoh penggunaan bahan baku TiO2 yaitu kaca anti embun . 19 Gambar 2.14 Contoh nanopartikel dari mesoporous silica ... 20

Gambar 3.1 Blok Diagram Cara Kerja ... 21

Gambar 3.2 Blok Diagram Lattice Generator ... 22

Gambar 3.3 Blok Diagram Lattice Parameter Analyzer ... 23

Gambar 3.4 Tampilan LGConf.txt... 24

Gambar 3.5 Tampilan LPAConfig.txt ... 31

(7)

vii

Antarpartikel ... 40

Gambar 4.3 Tampilan pola rectangular lattice dari tools Lattice Parameter Analyzer ... 42

Gambar 4.4 Contoh dari grafik pola rectangular lattice untuk mencari jarak Antarpartikel ... ... 43

Gambar 4.5 Tampilan pola hexagonal lattice dari tools Lattice Parameter Analyzer ... ... 44

Gambar 4.6 Tampilan LatticeLattice(a=20 b=20 angle=75).tif ... 45

Gambar 4.7 Tampilan LatticeLattice(a=20 b=20 angle=75).tif yang telah tersegmentasi ... 46

Gambar 4.8 TampilanGrafik dari Lattice(a=20 b=20 angle=75).tif ... 47

Gambar 4.9 Tampilan peak position dari Lattice(a=20 b=20 angle=75).tif... 48

Gambar 4.10 Tampilan LatticeHex(a=20 angle=15).tif... 49

Gambar 4.11 Tampilan LatticeHex(a=20 angle=15).tif yang telah tersegmentasi... 49

Gambar 4.12 TampilanGrafik dari LatticeHex(a=20 angle=15).tif... 50

Gambar 4.13 Tampilan Peak Position dari LatticeHex(a=20 angle=15).tif .. 51

Gambar 4.14 Tampilan dari Si-HREM.jpg ... 52

Gambar 4.15 Tampilan Si-HREM yang telah tersegmentasi ... 53

Gambar 4.16 TampilanGrafik dari Si-HREM.jpg ... 53

Gambar 4.17 Tampilan Si-HREM Kiri Atas yang tersegementasi ... 54

Gambar 4.18 Tampilan Grafik dari Gambar Si-HREM Kiri Atas ... 55

Gambar 4.19 Tampilan Si-HREM Kanan Atas yang tersegementasi ... 55

Gambar 4.20 Tampilan Grafik dari Gambar Si-HREM Kanan Atas ... 56

Gambar 4.21 Tampilan Si-HREM Kanan Bawah yang tersegementasi ... 57

(8)

viii

Gambar 4.23 Tampilan Si-HREM Kiri Bawah yang tersegementasi ... 58

Gambar 4.24 Tampilan Grafik dari Gambar Si-HREM Kiri Bawah ... 59

Gambar 4.25 Tampilan Peak Position dari Si-HREM.jpg ... 60

Gambar 4.26 Tampilan dari TiO2 ...61

Gambar 4.27 Tampilan dari TiO2 yang telah tersegmentasi ... 62

Gambar 4.28 Tampilan grafik dari TiO2 ... 62

Gambar 4.29 Tampilan dari TiO2 Kiri Atas ... 63

Gambar 4.30 Tampilan grafik dari TiO2Kiri Atas ... 64

Gambar 4.31 Tampilan dari TiO2 Kanan Atas ... 64

Gambar 4.32 Tampilan grafik dari TiO2Kanan Atas ... 65

Gambar 4.33 Tampilan dari TiO2 Kanan Bawah ... 66

Gambar 4.34 Tampilan grafik dari TiO2Kanan Bawah ... 66

Gambar 4.35 Tampilan dari TiO2 Kiri Bawah ... 67

Gambar 4.36 Tampilan grafik dari TiO2Kiri Bawah ... 68

(9)

ix

DAFTAR TABEL

Tabel 2.1 Step untuk Distance Measurement ... 15 Tabel 2.2 Step untuk FindMaxGauss ... 15 Tabel 4.1 Perbandingan nilai matematis dengan nilai pengukuran LPA pada square lattice ... 41 Tabel 4.2. Perbandingan nilai matematis dengan nilai pengukuran LPA pada rectangular lattice ... 42 Tabel 4.3 Perbandingan nilai matematis dengan nilai pengukuran LPA pada hexagonal lattice ... 44 Tabel. 4.4 Perbandingan nilai matematis dengan nilai pengukuran LPA dari gambar Lattice(a=20 b=20 angle=75).tif ... 47 Tabel. 4.5 Perbandingan nilai matematis dengan nilai pengukuran LPA dari gambar LatticeHex(a=20 angle=15).tif ... 51 Tabel. 4.6 Perhitungan jarak nanopartikel silikon yang dianalisa dengan

Lattice Parameter Analyzer... 60 Tabel 4.7 Perhitungan jarak nanopartikel TiO2 yang dianalisa dengan Lattice

(10)

x

DAFTAR RUMUS

Rumus 2.1 Menentukan Dividing Space ... 5

Rumus 2.2 Square Lattice1 ... 9

Rumus 2.3 Square Lattice2 ... 9

Rumus 2.4 Square Lattice3 ... 9

Rumus 2.5 Rectangular Lattice1 ... 10

Rumus 2.6 Rectangular Lattice2 ... 10

Rumus 2.7 Rectangular Lattice3 ... 10

Rumus 2.8 Hexagonal Lattice1 ... 10

Rumus 2.9 Hexagonal Lattice2 ... 10

Rumus 2.10 Euclidean Distance1... 13

Rumus 2.11 Euclidean Distance2... 13

Rumus 4.1 Jarak Square Lattice1 ... 39

Rumus 4.2 Jarak Square Lattice2 ... 39

Rumus 4.3 Jarak Square Lattice3 ... 39

Rumus 4.4 Jarak Rectangular Lattice1 ... 42

Rumus 4.5 Jarak Rectangular Lattice2 ... 42

Rumus 4.6 Jarak Rectangular Lattice3 ... 42

Rumus 4.7 Jarak Hexagonal Lattice1 ... 44

(11)
(12)

Configuration File

# Program : Lattice Generator # Version : 4.0814

# Objective : Creates images simulating HREM images of

atomic lattice

# FlagPrint=1 shows the results on the screen FlagPrint=1

# ImgSize: size in pixel of the created image ImgSize=512

# a: first lattice parameter in number of pixels a=20

# b: second lattice parameter in number of pixels b=20

# Hexagonal: an hexagonal lattice can be created with # the a as parameter.

# if you wish square or rectangular write 0 # if you wish hexagonal write 1

Hexagonal=0

# Angle: the final image can be rotated if wished Angle=10

Main_LatticeGenerator

clear all; close all; clc; warning off;

% ---% Cabecalho

fprintf('\nLattice Generator - LaGen Version 4.0814');

%Read the configuration file

[FlagPrint ImgSize a b Hexagonal Angle] = LGReadConfigFile('LGConf.txt');

FlagPrint=str2num(FlagPrint); if (FlagPrint==1)

fprintf('\n---'); fprintf('\nInput parameters...');

fprintf('\n\tImage size : %s', ImgSize); fprintf('\n\tFlagPrint : %d', FlagPrint);

fprintf('\n\tLattice Parameter a : a = %s pixels', a); fprintf('\n\tLattice Parameter b : b = %s pixels', b); fprintf('\n\tHexagonal : %s', Hexagonal);

(13)

fprintf('\nHit any key to continue...');

fprintf('\n---'); pause;

else fprintf('\nSilent mode'); end %If Hexagonal call special function

if Hexagonal==1

[ImgNoir Rayon SizeX SizeY ImgName] = LGHex(FlagPrint, ImgSize, a,

Angle); end

if Hexagonal==0

[ImgNoir Rayon SizeX SizeY ImgName] = LGSquare(FlagPrint, ImgSize,

a, b, Angle); end

% ---%Dilating atoms

if (FlagPrint==1) fprintf('\nDilating atoms ...'); end se = strel('disk',Rayon);

ImgCircle = imdilate(ImgNoir,se);

% ---%Enlarging image

if (FlagPrint==1) fprintf('\nEnlarging image ...'); end ImgGrande=zeros(SizeY+DeltaEnlarge,SizeX+DeltaEnlarge);

ImgGrande(DeltaEnlarge/2:(DeltaEnlarge/2+SizeY-1),DeltaEnlarge/2:(DeltaEnlarge/2+SizeX-1))=ImgCircle;

% ---%Rotating image

if (FlagPrint==1) fprintf('\nRotating image ...'); end ImgRotTemp = imrotate(ImgGrande,-Angle,'bilinear');

% ---%Bluring the image

if (FlagPrint==1) fprintf('\nComputing gaussian filter...'); end

H = fspecial('gaussian', 12, 4);

ImgCircleBlur = imfilter(ImgRotTemp, H , 'replicate');

(14)

if (FlagPrint==1) fprintf('\nCroping image ...'); end

if (FlagPrint==1) fprintf('\nShowing images ...');

image(ImgFinal); hold on; colormap(gray); axis off; hold off;

end

%---%Saving the image

ImgSave = uint8(ImgFinal); max = max(max(ImgSave)); max = double(max)/256; min = min(min(ImgSave)); min = double(min)/256;

ImgSave = imadjust(ImgSave, [min max] ,[0 1] ); imwrite(ImgSave,ImgName,'tif');

% ---fprintf('\nEnd!');

LGReadConfigFile

function [FlagPrint, ImgSize, a, b, Hexagonal, Angle] = LGReadConfigFile(ConfigFileName)

fid=fopen(ConfigFileName); while 1

tline = fgetl(fid);

if (~ischar(tline)), break, end idx = findstr(tline,'=');

(15)

else

function [ImgNoir, Rayon, SizeX, SizeY, ImgName] = LGSquare(FlagPrint,

ImgSize, a, b, Angle)

% ---% Fixed Global Variables

if (FlagPrint==1) fprintf('\nGlobal variables...'); end Rayon=round( (a + b)/2/6);

ImgName = sprintf('Lattice(a=%d b=%d angle=%d).tif', a, b, Angle);

% ---%Putting black points

if (FlagPrint==1) fprintf('\nCreating image...'); end ImgSize=ImgSize*1.5;

function [ImgNoir, Rayon, SizeX, SizeY, ImgName] = LGHex(FlagPrint,

(16)

% ---% Fixed Global Variables

if (FlagPrint==1) fprintf('\nGlobal variables...'); end Rayon=round(a/6);

ImgName = sprintf('LatticeHex(a=%d angle=%d).tif', a, Angle);

% ---if (FlagPrint==1) fprintf('\nCreating image...'); end

ImgSize=ImgSize*1.5;

if(idx>SizeX) continue; end ImgNoir(y,idx)=255;

# Program : Lattice Parameter Analyser

# Version : 4.0816

# Objective : Extract information on the atomic lattice

from HREM Image

# ImgName: name of the image to be analysed ImgName=Lattice(a=20 b=20 angle=10).tif

# FlagPrint=1 shows the results on the screen set to 0 if want the program to run in silence FlagPrint=1

# Scale: distance value of 1 pixel in nanometers (spatial resolution)Scale=0.03

# Neighbourhood: distance in nanometer in the neighbourhood for Radial

(17)

# Function (the distance analysis) Neighbourhood=1.5

#Additional parameters only to use in case of program optimization:

#---# RDFThreshold: value used in the function FindMax (that finds theposition of the peaks in the histogram of the distances). It is a type of threshold

# used to separate peaks that are close to each other. RDFTh=0.05

# Filter Order: order of the filter that smoothes the Radial Distribution Function(histogram of the distances) RDFFilterOrder=10

Main_LatticeParameterAnalyser

clear all; close all; clc; warning off;

% ---% Cabecalho

fprintf('\nLattice Parameter Analyser - LPA Version 4.0816');

fprintf('\nCentro Brasileiro de Pesquisas Fisicas - CBPF Brazil');

fprintf('\nEcole Nationale Superieure de Physique de Grenoble - ENSPG

France');

fprintf('\nPontificia Universidade Catolica do Rio de Janeiro - PUC

Rio Brazil\n')

%---%Read the configuration file

[FlagPrint ImgName Neighbourhood Scale RDFTh RDFFilterOrder] =

fprintf('\n\tImgName : %s', ImgName); fprintf('\n\tFlagPrint : %d', FlagPrint);

fprintf('\n\tScale : 1 pixel = %s nm', Scale);

fprintf('\n\tNeighbourhood : %s nm', Neighbourhood); fprintf('\n\tRDF Threshold : %s', RDFTh);

(18)

fprintf('\nHit any key to continue...');

fprintf('\n---'); pause;

else fprintf('\nSilent mode'); end %Processes the image

[ImgSEB, ImgBW] = ProcessImage(ImgName, FlagPrint);

%---%Computes distance

[Dist, cont, CoordObjAtCenter] = DistMeasurement(ImgSEB, FlagPrint,

Voisinage);

%---%Finds the peaks on the histogram

[sinal2, Intensity, PeakPos, Deviation, xout, DeltaBin] = FindMaxGauss(Dist, Scale, FlagPrint, RDFTh,

RDFFilterOrder);

% ---% Saves data and images

SavingData(FlagPrint, ImgName, ImgSEB, Dist, xout, Scale, sinal2,

Intensity, PeakPos, Deviation, cont, DeltaBin, CoordObjAtCenter);

% ---% End

fprintf('\nEnd !!')

ReadConfigFile

function [FlagPrint, ImgName, Neighbourhood, Scale, RDFTh, RDFFilterOrder] = ReadConfigFile(ConfigFileName)

fid=fopen(ConfigFileName); while 1

tline = fgetl(fid);

if (~ischar(tline)), break, end idx = findstr(tline,'=');

if(strcmp(tline(1:idx-1),'FlagPrint')) FlagPrint=tline(idx+1:end);

(19)

if(strcmp(tline(1:idx-1),'ImgName'))

function [ImgSEB, ImgBW] = ProcessImage(ImgName, FlagPrint) % ---% Reading the image.

if (FlagPrint==1) fprintf('\n\nReading the image...'); end ImgOriginal=imread(ImgName);%ImgOriginal is RGB thus 3D if (isrgb(ImgOriginal)==1) ImgOriginal=ImgOriginal(:,:,1); end;% If

image is RGB makes it grey scale.

% ---% Corrects the background.

if (FlagPrint==1) fprintf('\nComputing background...'); end tic;

H = fspecial('gaussian', 100, 30);

ImgBlurGaus = imfilter(ImgOriginal, H , 'replicate'); t1=toc;

if (FlagPrint==1) fprintf(' (it took %4.2f s !)', t1); end if (FlagPrint==1) fprintf('\nRemoving background ...'); end ImgCorrected =

double(ImgOriginal)*.5-double(ImgBlurGaus)*.5;

ImgCorrected = uint8(ImgCorrected);

(20)

%---% Adjusts the contrast.

if (FlagPrint==1) fprintf('\nAdjusting the contrast...'); end

ImgAjusted = imadjust(ImgCorrected, stretchlim(ImgCorrected), [0 1]);

% ---% Creating a binary image.

if (FlagPrint==1) fprintf('\nCreating a binary image...'); end

level = graythresh(ImgAjusted);

ImgBW = im2bw(ImgAjusted, level); % Makes ImgAjusted binary using a

threshold value of level

%---%Removing small irrelevant objects

ImgSeparated=bwmorph(ImgBW, 'open', 3);

%---%Removing image edge particles.

if (FlagPrint==1) fprintf('\nRemoving image edge particles...'); end

% This routine draws a circle with center defined as % a vector CENTER, radius as a scaler RADIS. NOP is % the number of points on the circle. As to STYLE, % use it the same way as you use the rountine PLOT. % Since the handle of the object is returned, you % use routine SET to get the best result.

%---if (nargin <3),

error('Please see help for INPUT DATA.'); elseif (nargin==3)

style='r-'; end;

THETA=linspace(0,2*pi,NOP); RHO=ones(1,NOP)*radius;

[X,Y] = pol2cart(THETA,RHO); X=X+center(1);

(21)

axis square;

DistMeasurement

function [Dist, cont, CoordObjAtCenter] = DistMeasurement(ImgSEB,FlagPrint, Voisinage)

%---% Labeling objects.

if (FlagPrint==1) fprintf('\nLabeling objects...'); end [ImgLabeled,numObjects] = bwlabel(ImgSEB,4);% Label components.

if (FlagPrint==1) fprintf('(%d)!',numObjects); end

% ---% Tracking features.

if (FlagPrint==1) fprintf('\nTracking features...'); end Objects=imfeature(ImgLabeled, 'Centroid'); %Computes only mass center.

[SizeY SizeX] = size(ImgLabeled);

%---%Computing distances between centroid of all objects.

numCalc=numObjects;

if (FlagPrint==1) fprintf('\nComputing distances between objects...');

DistCenterTmp=sqrt( ( Objects(i).Centroid(1) - SizeX/2 )^2 + (

Objects(i).Centroid(2) - SizeY/2 )^2 ); if (DistCenterTmp<=DistCenter)

DistCenter=DistCenterTmp;

CoordObjAtCenter = [Objects(i).Centroid(1), Objects(i).Centroid(2)];

end

for j=i+1:numCalc

DistTmp=sqrt( ( Objects(i).Centroid(1)

Objects(j).Centroid(1) )^2 + ( Objects(i).Centroid(2) -Objects(j).Centroid(2) )^2 );

(22)

t2=toc;

if (FlagPrint==1) fprintf(' (it took %4.2f s !)', t2); end

SavingData

function SavingData(FlagPrint, ImgName, ImgSEB, Dist, xout, Scale, sinal2, Intensity, PeakPos, Deviation, cont,

DeltaBin,CoordObjAtCenter)

if (FlagPrint==1) fprintf('\nSaving data and images...'); end

if (FlagPrint==1) Option='on'; else Option='off';

end

rep = sprintf('%s Results',ImgName(1:end-4)); mkdir(rep);

%---%Saving Segmented Image

BWname =

sprintf('.//%s//%s_segmented.jpg',rep,ImgName(1:end-4)); h=figure('Visible',Option,'Color',[1,1,1]);

imshow(ImgSEB);

hold on; colormap(gray); axis square; [trash count] = size(PeakPos);

for ind=1:count fid = fopen(DataOutFileName, 'w');

for i=1:cont-1

fprintf(fid, '\n%f',Dist(i)*Scale); end

%---%Saving the peaks graph

t=(1:1:500);

DeltaX=xout(2)-xout(1);

(23)

h=figure('Visible',Option,'Color',[1,1,1]);

bar(t2,sinal2,'g'); set(gca,'Layer','top'); hold on; tt=(0:0.00001:1);

hirest2=(tt*xout(end))*Scale;

[trash count] = size(PeakPos); for ind=1:count

EstSinal2=Intensity(ind)*exp(-((hirest2-PeakPos(ind))./(Deviation(ind)*sqrt(2))).^2); plot(hirest2,EstSinal2,'r-');

TextStr=sprintf('\\leftarrow %4.4f',PeakPos(ind)); text(PeakPos(ind), Intensity(ind), TextStr,

'HorizontalAlignment','left') end

grid on; hold off;

title(['First Neighbours Position of ', ImgName]); xlabel('Distance in nm');

ylabel('Counts (relative scale)');

max=((xout(2)-xout(1))*500+xout(1))*Scale; axis([0 max 0 2000]);

axis 'auto y';

NamePeak=sprintf('.//%s//%s_peak.jpg', rep, ImgName(1:end-4));

saveas(gcf,NamePeak,'jpg'); fclose(fid);

%---%Saving peak information

DataOutPeakFileName = sprintf('.//%s//%s_peakpos.txt', rep, ImgName(1:end-4));

fid = fopen(DataOutPeakFileName, 'w'); for ind=1:count

fprintf(fid, '\nPeak number %d at %4.4f nm +/- %4.4f nm\n', ind,

fprintf('\n\tSegmented image : %s', BWname);

fprintf('\n\tGraph with first neighbours´ distances: %s',NamePeak);

fprintf('\n\tAll distances within the neihgbourhood: %s',DataOutFileName);

fprintf('\n\tFirst neighbours´ distances : %s', DataOutPeakFileName);

(24)
(25)

Lattice Generator

Pada penggunaan tools Lattice Generator ini dimulai dari mengatur

parameter-parameter yang terdapat pada text file LGConf.txt. Terdapat 6 parameter-parameter dalam Lattice

Generator seperti yang sudah dijabarkan sebelumnya. Dari keenam parameter tersebut

akan diset nilainya sebagai berikut :

- Flagprint = 1

- ImgSize = 512

- a = 20

- b = 20

- Hexagonal = 0

- Angle = 0

Setelah itu buka program Matlab dan cari m-file Main_LatticeGeneratorm. Dari

(26)

Dalam command window Matlab akan muncul konfigurasi parameter yang telah

diset di LGConf.txt

Sebuah citra/gambar yang tersegementasi akan terbuat dengan nama Lattice(a=20

(27)

Gambar kemudian diolah/diproses dengan menggunakan berbagai teknik

pemprosesan gambar seperti proses blurring(agar terlihat seperti gambar atanomic

aslinya), proses rotasi, proses pembesaran gambar dll. Setelah input diproses kemudian

gambar/citra akan langsung disave/simpan dengan format .tif dan parameter2 input akan

langsung disimpan sesuai dengan nama gambar tersebut. Berikut ini merupakan contoh

dari square Lattice dengan pixel 512 x 512 parameter 20 pixel dan sudut kemiringan 10

(28)

Lattice Parameter Analyzer

Cara penggunaan dari Lattice Parameter Analyzer, bermula dari menentukan

parameter-parameter dalam LPAConfig.txt. Terdapat 5 parameter dalam text file tersebut

seperti yang sudah dijelaskan sebelumnya. Kelima parameter tersebut akan diset nilai

parameternya sebagai berikut :

- ImgName = Lattice(a=20 b=20 angle=0).tif

- Flagprint = 1

- Scale = 0.5

- Neighbourhood = 25

- RDFTh = 0.05

- RDFFilterOrder = 10

Untuk memulai tools ini, tentunya harus menentukan gambar/citra yang akan

diteliti. Sample gambar yang akan diambil, berasal dari output Lattice Generator yang

telah disimpan dengan nama file Lattice(a=20 b=20 angle=0).tif. Data gambar dari output

(29)

Setelah itu buka program Matlab dan cari m-file Main_LatticeParam Analyzer.m.

Dari m-file tersebut tekan F5 untuk menjalankan tools ini.

Pada command window Matlab akan menampilkan proses pengukuran jarak

(30)

Terdapat 2 Figure Matlab yang berupa citra yang tersegmentasi dan sebuah table

histogram.

(31)

Dari Figure 1, terdapat citra dengan 4 buah lingkaran ddidalamnya. Pengukuran

jarak antara nanopartikel dimulai atom yang berada dititik tengah dari gambar. Jarak

yang diukur dari atom tersebut sampai ke salah satu titik tengah atom yang dilingkaran

hijau paling dalam adalah jarak pengukuran yang pertama. Kemudian jarak titik tengah

atom yang pertama ke salah satu titik tengah atom yang dilingkaran merah paling dalam

adalah jarak pengukuran yang kedua. Jarak pengukuran ketiga dan keempat sama halnya

seperti jarak pengukuran yang pertama dan kedua yaitu bermula dari titik tengah atom

yang pertama.

Tabel histogram (Figure 2) merupakan hasil dari pengukuran jarak dari

citra/gambar figure 1 yang tersegmentasi. Kurva X dalam tabel histogram ini menyatakan

jarak antara atom pertama dengan salah satu titik tengah atom berada didalam lingkaran,

sedangkan kurva Y menyatakan skala relative yang berarti jumlah maksimal atom yang

(32)

← 9.9620 14.1252 ← 19.9803 ← 22.3721 First Neighbours Position of Lattice(a=20 b=20 angle=0).tif

Distance in nm

C

Setelah Figure 1 dan Figure 2 ditampilkan langsung dari Matlab, kemudian tools

LPA dengan otomatis akan menyimpan data hasil dari pengukuran tersebut. Data akan

disimpan dalam satu folder dengan nama dari citra/gambar yang telah diolah. Letak data

hasil pengukuran itu akan berada di dalam folder Lattice Parameter Analyzer. Isi dari

data tersebut terdapat 4 buah yaitu 2 buah gambar dari figure 1 dan figure 2, 1 buah data

dari program Matlab dengan extension .dat dan sebuah text file yang berisi jarak antara

(33)
(34)

1 Universitas Kristen Maranatha

BAB I

PENDAHULUAN

1. Latar Belakang

Perkembangan teknologi nano di era modern saat ini telah berkembang dengan pesat. Nanoteknologi akan membuat suatu material benda menjadi lebih kuat dan ringan. Contohnya seperti dalam membuat material baja yang kuat untuk body kendaraan bermotor.

Dalam menentukan material yang baik diperlukan penelitian tentang nanopartikel. Untuk dapat menganalisa dan meneliti benda yang berukuran nanopartikel dibutuhkan suatu mikroskop elektron yang akan menghasilkan gambar nanopartikel material tersebut. Gambar hasil scanning dari mikroskop elektron tersebut mempunyai pola dan jarak yang berbeda-beda tergantung dari material yang akan dianalisa.

Mengamati gambar/citra yang sudah dikonversi ke dalam citra digital, dibutuhkan suatu program untuk menganalisa perhitungan data. Dalam perhitungan datanya dapat menggunakan program Matlab yang dengan tools Lattice Generator (LG) dan Lattice Parameter Analyzer (LPA) dalam menganalisa citra tersebut. LG dan LPA merupakan suatu program untuk matlab yang diciptakan untuk menganalisa citra digital pada benda yang berukuran nanopartikel.

2. Perumusan Masalah

(35)

BAB I PENDAHULUAN

Universitas Kristen Maranatha

2

3. Tujuan

Tujuan yang ingin dicapai dari tugas akhir ini adalah sebagai berikut : 1. Menganalisa suatu objek citra yang berukuran sangat kecil sekali atau

nanopartikel.

2. Menghitung jarak antar partikel dengan menggunakan lattice generator yang dapat berupa square lattice atau hexagonal lattice.

4. Pembatasan Masalah

Dalam tugas akhir ini, pembatasan masalah dibatasi sampai hal-hal berikut yaitu :

1. Simulasi ini menggunakan program Matlab.

2. Objek yang dianalisa dari citra ini terdapat 2 buah yaitu zat kristal TiO2(Titanium Dioksida) dan Si(Silicon)

3. Pengenalan karakteristik pola dari atom/nanopartikel yang diteliti menggunakan tabel histogram.

4. Citra yang akan dianalisa dengan LPA mempunyai tingkat ketelitian 0,1-100 nm.

5. Sistematika Penulisan

Laporan terdiri dari beberapa bab dengan garis besar sebagai berikut :

• BAB I PENDAHULUAN

Pada bab ini berisi tentang latar belakang, perumusan masalah, tujuan, pembatasan masalah, blok diagram, dan sistematika penulisan laporan tugas akhir.

• BAB II LANDASAN TEORI

(36)

BAB I PENDAHULUAN

Universitas Kristen Maranatha

3

• BAB III PERANCANGAN DAN REALISASI

Pada bab ini dijelaskan mengenai proses perancangan tools Lattice Generator dan Lattice Parameter Analyzer dan blok diagramnya.

• BAB IV DATA PENGAMATAN DAN ANALISA DATA

Pada bab ini dijelaskan tentang cara kerja penggunaan tools Lattice Generator dan Lattice Parameter Analyzer, data pengamatan, dan analisa data.

• BAB V KESIMPULAN DAN SARAN

(37)

71

BAB V

KESIMPULAN DAN SARAN

Pada bab ini berisi kesimpulan dari Tugas Akhir dan saran-saran yang perlu dilakukan untuk perbaikan di masa mendatang.

V.1

Kesimpulan

Dalam mensimulasikan dan membuat tools Lattice Generator dan Lattice Parameter Analyzer yang dapat menganalisa jarak antara nanopartikel, dapat disimpulkan bebarapa hal seperti berikut :

1. Perhitungan dari tools Lattice Parameter Analyzer dapat diperoleh data dengan hasil pengukuran :

• Pada gambar Lattice Generator TiO2 diperoleh jarak antar

nanopartikel yang pertama sebesar 0.439 nm. Hasil ini mempunyai range kesalahan error sebesar 0,6% - 1% terhadap perhitungan matematis.

• Pada gambar Lattice Generator Si diperoleh jarak antar nanopartikel yang pertama sebesar 0.330 nm. Hasil ini mempunyai range kesalahan error sebesar 0.5%.- 1,5% terhadap perhitungan matematis.

• Pada gambar HREM Silicon dari 5 buah titik pengukuran mempunyai nilai kesalahan error rata-rata sebesar 0.123 nm terhadap jarak pengukuran antara nanopartikel yang pertama sampai terakhir.

• Pada gambar HREM TiO2 dari 5 buah titik pengukuran

(38)

BAB V KESIMPULAN DAN SARAN

Universitas Kristen Maranatha

72

2. Banyaknya jarak antara nanopartikel yang diukur bergantung pada parameter neighbourhood (radius). Jadi semakin besar parameter radius yang ditentukan maka akan semakin banyak jarak pengukuran antara nanopartikel yang diperoleh.

3. Pada pengukuran jarak dari gambar yang diperoleh Lattice Generator bentuk grafik menyerupai impuls sedangkan gambar yang diperoleh langsung dari HREM bentuk grafiknya menyerupai sinusoidal. Hal ini dikarenakan jarak pengukuran dengan metoda RDF tepat berada titik tengah partikel dan berdasarkan skala relative dari sumbu Y.

V.2

Saran

1. Untuk mengukur jarak antara nanopartikel dapat menggunakan metoda-metoda perhitungan yang lain seperti chi-square atau particles size distribution selain metoda radial distribution function.

(39)

73

DAFTAR PUSTAKA

D.B. Williams and C. Barry Carter, “Transmission Electron Microscopy”, Plenum

Press (1996).

R.C. Gonzalez, R.E Woods and S.L. Eddins, “Digital Image Processing Using

Matlab”, Pearson Prentice Hall (2004).

C. Jonville, “Characterisation of TiO2 Nanoparticles Involving TEM and Image

ProcessingAnalysis”, Rapport de Projet de Fin d’Etudes, ENSPG

A. Turkovi, E. Tonejc, S. Popovi, D. Cek, M. Ivanda, S. Musi and M. Goti,

“Transmission Electron Microscopy, X Ray diffraction and Raman scattering

studies of nanop hase TiO2”

Fizika A 6 (1997) 2, 77–88.

Gambar

gambar/citra akan langsung disave/simpan dengan format .tif dan parameter2 input akan
Tabel histogram (Figure 2) merupakan hasil dari pengukuran jarak dari

Referensi

Dokumen terkait

a) Dalam hal Penerbit Efek dinyatakan dalam proses pembubaran berdasarkan peraturan perundang-undangan yang berlaku, Penerbit Efek wajib menyampaikan permohonan

Pengusiran terhadap warga negara asing pelaku tindak pidana narkotika memerlukan pengawasan yang efektif oleh intansi-intansi pemerintah yang berhubungan langsung dengan

Pada 2007, aktivitas yang dilakukan adalah: (1) strategi intensifikasi masalah, yaitu melakukan peningkatan penjualan dengan meningkatkan market coverage bagi produk dan menambah

[r]

Hal ini menjadikan container crane menjadi peralatan pengkonsumsi daya listrik terbesar di Terminal Peti Kemas Semarang.Pada kerja praktek ini dipelajari prinsip kerja

Berdasarkan dari hasil wawancara kepada tiga orang karyawan, diketahui bahwa dua diantaranya merasa kurang puas dengan hasil yang diterimanya, menurutnya setiap

(iii) menyempurnakan sebarang borang atau dokumen yang dikehendaki oleh Bank dari semasa ke semasa bagi penyerahan hak, sandaran, gadaian terhadap sebarang nota kontrak,

Tujuan penelitian ini adalah untuk menentukan pengaruh pengetahuan, sikap, dan perilaku, serta ekonomi warga RW 08, Desa Mekarlaksana, Kecamatan Ciparay, Kabupaten Bandung