ORGANISASI KOMPUTER “ARSITEKTUR VON NEUMANN”




ORGANISASI KOMPUTER
“ARSITEKTUR VON NEUMANN”







Oleh: 
Nama : Nur fadilah 
Nim   : 1229041028
 Kelas : PTIK 04





PENDIDIKAN TEKNIK INFORMATIKA DAN KOMPUTER
JURUSAN PENDIDIKAN TEKNIK ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS NEGERI MAKASSAR
2013/2014









ORGANISASI KOMPUTER
“ARSITEKTUR VAN NEUMANN”

A.    PENGERTIAN ARSITEKTUR VAN NEUMANN
Arsitektur von Neumann (atau Mesin Von Neumann) adalah arsitektur yang diciptakan oleh John von Neumann (1903-1957). Arsitektur ini digunakan oleh hampir semua komputer saat ini.
Kunci utama arsitektur von Neumann adalah unit pemrosesan sentral (CPU), yang memungkinkan seluruh fungsi komputer untuk dikoordinasikan melalui satu sumber tunggal.

Gambar 2.1
Arsitekture van neumann
Arsitektur Von Neumann menggambarkan komputer dengan empat bagian utama:
·         Prosesor, merupakan pusat dari kontrol dan pemrosesan instruksi pada komputer.
·         Memori, digunakan untuk menyimpan informasi baik program maupun data.
·         Perangkat input-output, berfungsi sebagai media yang menangkap respon dari luar serta menyajikan informasi keluar sistem computer.

B.     CARA KERJA MESIN VON NEUMANN
Kita dapat menganggap mesin Von Neumann sebagai komputer abstraksi yang menjalankan instruction, yaitu nilai dalam memori yang memberitahu computer mengenai operasi yang akan dijalankannya.
Setiap instruksi mempunyai set instruction field (field instruksi), yang isinya memberikan detail tertentu untuk mengontrol unit, dan setiap instruksi mempunyai instruction format (format instruksi)-nya sendiri, yang merupakan cara penempatan field dalam memori. Instruction size (ukuran instruksi) adalah jumlah unit memori (biasanya diukur dalam byte) yang digunakan oleh instruksi.
Untuk instruksi yang beroperasi pada data (contohnya instruksi aritmetik, logika, shift, karakter dan string), datanya merupakan operand bagi operasi, dan urutan item data tempat beroperasinya CPU adalah data stream.
Instruction set dari computer adalah set instruksi yang dapat dijalankan oleh komputer. Setiap komputer mempunyai set instruksi sendiri. Setiap instruksi mempunyai operation code (op code), yaitu kode angka yang biasanya bisa dijumpai pada field pertama dari instruksi, yang memberitahu computer mengenai operasi yang akan dijalankannya.
Field instruksi yang lain memberitahu komputer mengenai register yang akan digunakan, jumlah dan jenis data argumen, (misalnya, untuk operasi aritmetik dan logika), dan spesifikasi untuk alamat operand. Instruksi juga memberitahu komputer mengenai bit status prosesor yang akan diuji atau disusun dan mengenai apa yang harns dilakukan terhadapnya jika terjadi kesalahan. (Bit status prosesor, yang  juga  disebut  flag,  adalah  register  I-bit  khusus  yang  ada  dalam CPU).
Program adalah  urutan instruksi yang akan dijalankan komputer. Setiap instruksi mempunyai urutan logis dalam program, yang disebut logical address. Bila program berada dalam memori utama, maka setiap instruksi juga mempunyai physical address.

C.     CARA KERJA ARSITEKTURE VAN NEUMANN
·         Mereka mendistribusikan pemrosesan ke sejumlah hardware.
·         Mereka beroperasi secara.bersama-sama pada beberapa elemen data yang berbeda.
·         Mereka menjalankan komputasi yang sarna pada semua e1emen data.

D.    LANGKAH KERJA VON NERUMANN
·         Pada  waktu  mesin van  Neumann  menjalankan  suatu  program,  maka  ia  menjalankan instruksi satu per satu secara urut, kecuali jika ada satu instruksi yang memberita bukan computer untuk tidak mematuhi urutan tersebut (rnisalnya, instruksi cabang).
·         Urutan instruksi yang dijalankan komputer adalah instruction stream.
·         Untuk menjaga track instruksi dalam memori, mesin von Neumann menggunakan PC.
·         PC ini “pointsto” (menyimpan alamat dari) instruksi berikutnya yang akan dijalankan. Selama operasi biasa, unit control menjalankan urutan dua operasi dasar secara terus menerus: instruction fetch dan instruction execution. Urutan ini dinamakan von Neumann machine cycle. Selama instruction fetch (penjemputan instruksi), unit control menjemput instruksi berikutnya dari memori utama dengan menggunakan alamat yang disimpan dalam PC, dan ia menaikkan PC. Oleh  karena  itu,  setelah  penjemputan  instruksi,  PC  menyimpan  alamat  dari  instruksidalam memori yang akan dijalankan CPU berikutnya. Unit kontrol kemudian menjalankan instruksi pada saat itu, yaitu instruksi yang baru saja dijemput. Selama eksekusi (penjalanan instruksi), CPU pertama kali akan menguraikan kode (decode) instruksi tersebut dan menentukan operasi apa yang akan di jalankan. Ia kemudian menjalankan operasi. Yang terakhir, bila ia telah selesai menjalankan  instruksi,  ia  memulai  siklus  penjemputan  lagi  dengan  menjemput  instruksi berikutnya  dari  memori.  Setiap  computer  mengimplementasikan  setinstruksi.  Manual  yang menjelaskan set instruksi computer disebut (menurut berbagai perusahaan komputer)” Principles of Operation”, Hardware References”, Architecture References”, dan “System References” .Untuk meningkatkan kecepatan eksekusi, arsitek biasanya menerapkan arsitektur Von Neumann dengan   prosesor   pipelined.   Arsitek   juga   menggunakan   beberapa   unit   aritmetik   untuk meningkatkan kecepatan CPU, dan ia menyertakan buffer (memori berkecepatan tinggi tingkat menengah), agar kecepatan prosesor sesuai dengan kecepatan memori.

E.     KEUNGGULAN DAN KELEMAHAN ARSITEKTUR VAN NEUMAN
1.      Keunggulan Von Neumann
         Mikroprosesor kecepatan telah meningkat dengan faktor 1000 +.
         Program lokalitas.
         Eksploitasi Program lokalitas melalui memori
         Mempunyai hirarki
2.      Kekurangan Von Neumann
Ada kelemahan untuk desain Von Neumann. Selain hambatan Von Neumann dijelaskan di bawah ini,  modifikasi  program  dapat  cukup  berbahaya,  baik  oleh  kecelakaan  atau  desain.  Dalam beberapa program yang disimpan desain sederhana komputer, sebuah program tidak berfungsi dapat merusak dirinya sendiri, program lain, atau sistem operasi mungkin mengarah kepada kerusakan computer, pelindung memori atau yang lainnya dari kontrol akses biasanya dapat melindungi terhadap kedua disengaja dan modifikasi program berbahaya



F.      CONTOH IMPLEMENTASI VON NEUMANN
Arthur Burks dan lain-lain di perpanjang karya von Neumann, memberikan banyak dan lebih jelas set lengkap detail mengenai desain dan operasi dari von Neumann diri replikator. Pekerjaan JW Thatcher sangat penting, karena ia sangat disederhanakan desain Namun, pekerjaan mereka tidak   menghasilkan   desain   yang  lengkap,   sel   demi   sel,   dari   konfigurasi  yang   mampu menunjukkan diri-replikasi.
Renato   Nobili   dan   Umberto   Pesavento   diterbitkan  pertama   dilaksanakan  sepenuhnya mereproduksi dirinya sendiri selular robot pada tahun 1995, hampir lima puluh tahun setelah bekerja von Neumann. Mereka menggunakan 32-negara seluler robot bukan asli von Neumannspesifikasi 29-negara , memperluas untuk memungkinkan lebih mudah menyeberangi sinyal-dan desain lebih kompak. Mereka juga menerbitkan sebuah implementasi konstruktor umum dalam 29-keadaan semula CA tapi tidak salah mampu replikasi lengkap – konfigurasi tidak dapat menduplikasi kaset nya, juga tidak dapat memicu keturunannya; konfigurasi hanya dapat membangun.
 Pada tahun 2007, diterbitkan Nobili implementasi 32-negara yang menggunakan run-length encoding untuk sangat mengurangi ukuran rekaman itu Pada tahun 2008, William R. Buckley diterbitkan dua konfigurasi yang replikator diri dalam keadaan semula 29-CA dari von Neumann. Buckley mengklaim bahwa persimpangan sinyal dalam von Neumann 29-selular automata negara tidak perlu konstruksi diri-replikator. Buckley juga menunjukkan bahwa untuk tujuan evolusi, replikator masing-masing harus kembali ke konfigurasi semula setelah replikasi, agar mampu (dalam teori) membuat lebih dari satu salinan. Sebagai diterbitkan, desain tahun 1995 Nobili-Pesavento tidak memenuhi persyaratan ini tetapi desain 2007 dari Nobili tidak; yang sama juga berlaku konfigurasi Buckley. Pada tahun 2004, D. Mange dkk, elaporkan pelaksanaan replikator diri yang konsisten dengan desain dari von Neumann. Pada tahun 2009, diterbitkan dengan Buckley Waduh konfigurasi ketiga untuk von Neumann 29- negara otomata selular, yang dapat melakukan baik holistik self-replikasi, atau self-replikasi oleh konstruksi parsial. This configuration also demonstrates that signal crossing is not necessary to the construction of self-replicators within von Neumann 29-state cellular automata. Konfigurasi ini juga menunjukkan bahwa persimpangan sinyal tidak diperlukan untuk pembangunan diri replikator dalam von Neumann 29-negara selular automata. CL Nehaniv pada tahun 2002, dan juga  pada tahun 2004, mengusulkan sebuah konstruktor yang universal langsung diimplementasikan pada sebuah robot seluler asynchronous, bukan atas sinkron otomat seluler.
G.    MESIN NON VON NEUMANN
Tidak semua komputer merupakan mesin von Neumann. Flynn, pada tabun 1966, mengklasifIkasikan arsitektur komputer menurut berbagai sifatnya, yang meliputi jumlah prosesor, jumlah program yang dapat dijalankan, dan struktur memori. KlasifIkasinyaitu mencakup kategori berikut :
·         Single instruction stream, single data stream (SISD)/satu aliran instruksi,satu aliran data Arsitektur von Neumann termasuk dalam klasifIkasi ini. Komputer SISD mempunyaisatu CPU yang menjalankansatu instruksipadasekali waktu (oleh karenanya disebut aliran instruksi tunggal) dan menjemput atau menyimpan satu item data pada sekali waktu (oleh karenanya disebut aliran data tunggal)
·         Single instruction stream, multiple data stream (SIMD)/ satu aliran instruksi, beberapa aliran data Array prosesor tennasuk dalam kategori ini. Mesin SIMD mempunyai sebuah CU yang beroperasi seperti mesin Von Neumann (yaitu, ia menjalankan satu aliran instruksi), namun mesin SIMD mempunyai lebih dari satu PE. CU menghasilkan signal kontrol untuk semua PE, yang menjalankan operasi yang sama, biasanya pada lockstep, pada item data yang berbeda (oleh karenanya disebut aliran data banyak). 
·         Multiple instruction stream, single data stream (MISD)/ beberapa a1iran instruksi, satu aliran data. Secara logis, mesin dalam kelompok ini akan menjalankan berbagaiprogram pada itemdatayang sama. Sekarang, telah ada mesin jenis ini, walaupun beberapa sistem MIMD bisa digunakan dengan cara ini.
·         Multiple instruction stream, multiple data stream (MIMD)/ beberapa aliran instruksi, beberapa aliran data. Mesin MIMD juga  disebut multiprosesor.Ia  mempunyailebih  dari satu  prosesor independen,dan  setiap  prosesor  dapat  menjalankan  program  yang  berbeda  (oleh  karenanya disebut aliran data banyak) pada datanya sendiri (oleh karenanya disebut aliran data banyak).
Note : Mesin SIMD dan MIMD adalah parallel processor (prosesor paralel), karena mereka beroperasi secara paralel pada lebih dari satu data sekali waktu. Arsitektur multiprosesor dapat dibagi menjadi dua kategori, didasarkan pada susunan sistem memorinya:
·         Global    memory   (GM)    system   architecture!arsitektur   sistem    memori    global.    Satu sistemmemoriglobaldigunakanbersamaoleh semuaprosesor. Arsitektur komputer berunjuk kerja tinggi pada saat ini adalah dari jenis ini, dan ketiga arsitektur yang ada berdasarkan gambar diatas
·         Local-memory (LM) system architecture !arsitektur system memori lokal. Disini, satu system penyimpanan  digunakan  untuk  setiap  prosesor.  Multi  prosesor  dengan LM  mungkin  juga mempunyai GM dan juga disebut multiple processor.
·         Pada saat sekarang ini kita akan membahas tentang SIMD (Single instruction stream, multiple data stream).



H.    ARSITEKTUR VAN NEUMANN VS ARSITEKTUR HARVAD
     Ada dua kelas utama dari arsitektur komputer, yaitu ‘arsitektur Havard’ dan ‘arsitektur Von Neumann (atau Princeton). Banyak desain khusus mikrokontroler dan DSP Banyak desain khusus mikrokontroler dan DSP
(Digital Signal Processor) menggunakan arsitektur Havard.


Gambar 1.2
Perbedaan arsitektur van Neumann dan harvad
1.      Arsitektur Harvard
Arsitektur Havard menggunakan memori terpisah untuk program dan data dengan alamat dan bus data yang berdiri sendiri. Karena dua perbedaan aliran data dan alamat, maka tidak diperlukan multiplexing alamat dan bus data.
Arsitektur ini tidak hanya didukung dengan bus paralel untuk alamat dan data, tetapi juga menyediakan organisasi internal yang berbeda sedemikian rupa instruksi dapat diambil dan dikodekan ketika dan data, tetapi juga menyediakan organisasi internal yang berbeda sedemikian rupa instruksi dapat diambil dan dikodekan ketika berbagai data sedang diambil dan dioperasikan.
Lebih lanjut lagi, bus data bisa saja memiliki ukuran yang berbeda dari bus alamat. Hal ini memungkinkan pengoptimalan bus data dan bus alamat dalam pengeksekusian instruksi yang cepat. Sebagai contoh, mikrokontroler Intel keluarga MCS-51 menggunakan arsitektur Havard karena ada perbedaan kapasitas memori untukprogram dan data, dan bus terpisah (internal) untuk  alamat dan data.Begitu juga dengan keluarga PIC dari Microchip yang menggunakan arsitektur Havard

2.      Arsitektur van Neumann
Pada arsitektur Von Neumann, program dan data dibagi pada ruang memori yang sama. Arsitektur Von Neumann menyediakan fitur penyimpanan dan modifikasi program secara mudah.
Bagaimanapun,penyimpanan program tidak mungkin optimal dan membutuhkan berbagai pengumpulan program dan data membutuhkan berbagai pengumpulan program dan data untuk membentuk instruksi.
Pengumpulan program dan data diselesaikan menggunakan time division multiplexing yang akan berpengaruh pada performa mikrokontroler itu sendiri. Salah satu contoh mikrokontroler yang menggunakanarsitektur Von Neumann (princeton) adalah Motorola
68HC11.






DAFTAR PUSTAKA


http://answers.yahoo.com/question/index?qid=20100515003710AAge3QF
http://en.wikipedia.org/wiki/ARCHITECTURE_VAN_NEUMAN
http://en.wikipedia.org/wiki/Harvard_architecture
http://en.wikipedia.org/wiki/Von_Neumann_universal_constructor http://www.cs.nsu.edu/courses/csc295/CSC295-Multithreading.pdf http://www.dnull.com/cpu/
v

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS

MELAKUKAN FILTER MENGGUNAKAN MATLAB




MELAKUKAN FILTER MENGGUNAKAN MATLAB




OLEH

NUR FADILAH
1229041028
PTIK 04


PENDIDIKAN TEKNIK INFORMATIKA DAN KOMPUTER
FAKULTAS TEKNIK
UNIVERSITAS NEGERI MAKASSAR
2014



KATA PENGANTAR
            Puji syukur kami panjatkan kehadirat Tuhan Yang Maha Esa, karena berkat limpahan Rahmat dan Karunia-nya sehingga penulis dapat menyusun laporan yang berjudul “Melakukan Filter Menggunakan MATLAB” .
   Laporan ini dibuat berdasarkan rujukan dan referensi dari berbagai sumber. Laporan ini berisi tentang jenis-jenis filter pada program MATLAB, cara melakukan filter pada program MATLAB, dan perbedaan filter-filter yang ada pada Matlab.
Kami menyadari bahwa masih banyak kekurangan yang mendasar pada makalah ini. Oleh karena itu kami mengundang pembaca untuk memberikan saran serta kritik yang dapat membangun. Akhir kata semoga makalah ini dapat memberikan manfaat bagi kita sekalian.
                                                                                            
                                                                                             Makassar, 7 Maret 2014


                                                                                                          Penulis






A.    JUDUL PERCOBAAN
Melakukan Filter Menggunakan MATLAB

B.     TUJUAN PERCOBAAN
1.      Mengetahui dan mampu membedakan jenis-jenis filter.
2.      Mengetahui cara melakukan filter menggunakan software MATLAB R2013b

C.    TEORI DASAR
MATLAB (matrix laboratory) adalah sebuah lingkungan komputasi numerikal dan bahasa pemrograman komputer generasi keempat. Dikembangkan oleh The MathWorks, MATLAB memungkinkan manipulasi matriks, pem-plot-an fungsi dan data, implementasi algoritma, pembuatan antarmuka pengguna, dan peng-antarmuka-an dengan program dalam bahasa lainnya. Meskipun hanya bernuansa numerik, sebuah kotak kakas (toolbox) yang menggunakan mesin simbolik MuPAD, memungkinkan akses terhadap kemampuan aljabar komputer. Sebuah paket tambahan, Simulink, menambahkan simulasi grafis multiranah dan Desain Berdasar-Model untuk sistem terlekat dan dinamik.
1.      Sejarah Matlab
MATLAB (yang berarti "matrix laboratory") diciptakan pada akhir tahun 1970-an oleh Cleve Moler, yang kemudian menjadi Ketua Departemen Ilmu Komputer di Universitas New Mexico. Ia merancangnya untuk memberikan akses bagi mahasiswa dalam memakai LINPACK dan EISPACK tanpa harus mempelajari Fortran. Karyanya itu segera menyebar ke universitas-universitas lain dan memperoleh sambutan hangat di kalangan komunitas matematika terapan. Jack Little, seorang insinyur, dipertemukan dengan karyanya tersebut selama kunjungan Moler ke Universitas Stanford pada tahun 1983. Menyadari potensi komersialnya, ia bergabung dengan Moler dan Steve Bangert. Mereka menulis ulang MATLAB dalam bahasa pemrograman C, kemudian mendirikan The MathWorks pada tahun 1984 untuk melanjutkan pengembangannya. Pustaka yang ditulis ulang tadi kini dikenal dengan nama JACKPAC.[rujukan?] Pada tahun 2000, MATLAB ditulis ulang dengan pemakaian sekumpulan pustaka baru untuk manipulasi matriks, LAPACK[.
MATLAB pertama kali diadopsi oleh insinyur rancangan kontrol (yang juga spesialisasi Little), tapi lalu menyebar secara cepat ke berbagai bidang lain. Kini juga digunakan di bidang pendidikan, khususnya dalam pengajaran aljabar linear dan analisis numerik, serta populer di kalangan ilmuwan yang menekuni bidang pengolahan citra.
2.      Pengolahan Citra
Pengolahan citra adalah salah satu cabang dari ilmu informatika. Pengolahan citra berkutat pada usaha untuk melakukan transformasi suatu citra/gambar menjadi citra lain dengan menggunakan teknik tertentu. Berikut ini adalah definisi dasar yang dipergunakan dalam pengolahan citra :
a.       Citra, Citra adalah gambar dua dimensi yang dihasilkan dari gambar analog dua dimensi yang kontinu menjadi gambar diskrit melalui proses sampling.
b.      Gambar analog dibagi menjadi N baris dan M kolom sehingga menjadi gambar diskrit. Persilangan antara baris dan kolom tertentu disebut dengan piksel. Contohnya adalah gambar/titik diskrit pada baris n dan kolom m disebut dengan piksel [n,m].
c.       Sampling, Sampling adalah proses untuk menentukan warna pada piksel tertentu pada citra dari sebuah gambar yang kontinu. Pada proses sampling biasanya dicari warna rata-rata dari gambar analog yang kemudian dibulatkan. Proses sampling sering juga disebut proses digitisasi.
d.      Kuantisasi, Ada kalanya, dalam proses sampling, warna rata-rata yang didapat di relasikan ke level warna tertentu. Contohnya apabila dalam citra hanya terdapat 16 tingkatan warna abu-abu, maka nilai rata-rata yang didapat dari proses sampling harus diasosiasikan ke 16 tingkatan tersebut. Proses mengasosiasikan warna rata-rata dengan tingkatan warna tertentu disebut dengan kuantisasi.
e.       Derau, Derau (Noise) adalah gambar atau piksel yang mengganggu kualitas citra. Derau dapat disebabkan oleh gangguan fisis(optik) pada alat akuisisi maupun secara disengaja akibat proses pengolahan yang tidak sesuai. Contohnya adalah bintik hitam atau putih yang muncul secara acak yang tidak diinginkan di dalam citra. bintik acak ini disebut dengan derau salt & pepper. Banyak metode yang ada dalam pengolahan citra bertujuan untuk mengurangi atau menghilangkan noise.
f.       Operasi pengolahan citra, Operasi yang dilakukan untuk mentransformasikan suatu citra menjadi citra lain dapat dikategorikan berdasarkan tujuan transformasi maupun cakupan operasi yang dilakukan terhadap citra.
Berdasarkan tujuan transformasi operasi pengolahan citra dikategorikan sebagai berikut :
·         Peningkatan Kualitas Citra (Image Enhancement)
Operasi peningkatan kualitas citra bertujuan untuk meningkatkan fitur tertentu pada citra.
·         Pemulihan Citra (Image Restoration)
Operasi pemulihan citra bertujuan untuk mengembalikan kondisi citra pada kondisi yang diketahui sebelumnya akibat adanya pengganggu yang menyebabkan penurunan kualitas citra.

3.      Filtering Dalam Matlab
Filter spasial non-linier atau disebut juga dengan filter statistik berdasar urutan (order-statistic filter) merupakan filter yang respon nya didasarkan pada urutan atau rangking piksel yang ada dalam citra yang dicakup oleh area filter dan menggantikan nilai dari piksel yang berada di tengah digantikan dengan nila ihasil pengurutan atau perangkingan tersebut.
Filer ini digunakan  untuk menghilangkan derau dan filter-filter ini juga digunakan untuk menghaluskan citradigital. Filter non-linier lebih unggul dibanding dengan filter linier dengan ukuran jendela filter yangsama. Selain itu, filter non-linier tidak memerlukan operasi konvolusi terhadap citra original, yangberbeda dengan operasi dari filter linier
a.      Filter median
Filter yang paling dikenal dari jenis ini adalah filter median.
Filter ini bekerja dengan menggantikan nilai tengah dari piksel yang dicakup oleh area filterdengan sebuah nilai tengah (median) setelah diurutkan terlebih dahulu dari yang terkecil ke yang terbesar. Biasanya ukuran filter adalah ganjil karena akan memberikan poros tengah, sehingga akan lebihmudah dalam mengolah citra
Kelebihan dari filter median adalah kemampuannya dalam mengurangi derau yang diakibatkan olehderau acak misalnya jenis salt and pepper noise atau bisa disebut sebagai derau impulse. Dibandingkandengan jenis filter spasial (ruang) non-linier lainnya, filter median merupakan filter yang paling cocok untuk kasus tersebut. Sehingga filter ini dinobatkan menjadi filter yang paling ampuh dalam mengolahcitra berderau sejenis.
Dalam merancang median filter, ada beberapa hal yang harus dipersiapkan terlebih dahulu.
-          Siapkan  matriks  yang  akan  diolah.  Bila  matriks  berisi  citra,  maka  jadikan  citra  tersebut menjadi citra grayscale atau abu-abu agar yang didapat hanya 1 matriks intensitas saja.
-          Siapkan  matriks  yang  NOL  yang  ukurannya  sama  persis dengan  citra  yang  akan  diolah. Matriks ini nantinya akan berisi nilai-nilai intensitas dari citra asli yang sudah diolah terlebih dahulu.
Berikut flowchart dalam melakukan filter median


Gambar 4.1 Flowchart Median Filter

b.      Filter maximum
Filter max berarti menggantikan piksel dengan nilai tertinggi dari suatu deret yang terbentuk darimatriks yang sesuai dengan ukuran dari jendela filter. Langkah-langkah lainnya sama denganfilter median. Pada

c.       Minimum filter
Filter ini merupakan kebalikan dari filter maksimum dimana piksel akan digantikan dengan nilai minimum dari sebuah deret matriks yang berukuran sesuai dengan matriks filter.



d.      Filter Mid-point
Mid-Point Filtering adalah mengganti nilai sel bitmap dengan nilai tengah diantara nilai terkecil dan terbesar dari area lokal.

e.       Filter Laplacian
Laplacian merupakan filter turunan yang fungsinya dapat mendeteksi area yang memilikiperubahan cepat (rapid changes) seperti tepi (edge) pada citra. Namun, laplacian ini sangat rentan atau sensitif terhadap kehadiran derau. Untuk itu, citra yang akan dideteksi tepinyaperlu dihaluskan terlebih dahulu dengan menggunakan Gaussian. Dengan demikian dikenaladanya fungsi turunan baru yakni LOG atau Laplacian of Gaussian
LOG memiliki bentuk:
f.       Filter Sobel
Metode sobel Merupakan metode yang menggunakan operator Sobel.  Operator ini menggunakan dua buah kernel yang berukuran 3x3 piksel untuk perhitungan gradien sehingga perkiraan gradien berada tepat ditengah jendela.
Besaran Gradien yang dihitung dengan Operator sobel adalah sebagai berikut:



g.      Geometric mean filter
Mean filter merupakan salah algoritma memperhalus citra dengan cara perhitungan nilai intensitas rata-rata citra pada setiap blok citra yang diproses. Algoritma yang umum digunakan adalah Arithmetic dan Geometric Mean Filter.
Pada algoritma Geometric Mean Filter proses yang dilakukan adalah sama dengan Arithmetic Mean Filter dengan rumus:
Pada algoritma ini setiap pixel yang diperbaiki oleh hasil kali masing-masing pixel dalam subimagewindow, kemudian dipangkatkan dengan i/mn.


D.    LANGKAH KERJA
1.      Filter Median
a.       Pastikan software matlab median telah terinstal di computer anda, jalankan program tersebut dengan cara klik start  >> pilih MATLAB R2013b


b.     Letakkan foto yang anda akan filter pada folder Matlab yang berada pada directori “Documents”
 
c.       Pada lembaran pertama dari program klik new script untuk membuka lembaran baru tempat menulis script dari program yang anda buat


d.      Pada jendela baru (jendela editor), ketikkan script di bawah ini:
gambar=imread('Anna.jpg');
gray=rgb2gray(gambar);
noise=imnoise(gray,'Salt & Pepper',0.03);
noise2=imnoise(gray,'Gaussian',0.2);
awal=medfilt2(gray);
k=medfilt2(noise);
k2=medfilt2(noise2);
figure,imshow(awal),title('Pelembutan Citra Awal');
figure,imshow(k),title('Pelembutan Citra Noise Salt&Pepper');
figure,imshow(k2),title('Pelembutan Citra Noise Gaussian');
e.       Jalankan program dengan cara klik Run

f.       Pada saat anda menjalankan program, maka akan muncul perintah untuk menyimpan program, simpan program anda dengan cara mengetik nama program contohnya “median” >> save

g.      Program akan berjalan dan hasilnya akan tampil

2.      Filter maximum
a.       Untuk membuat lembaran baru, klik new pada jendela editor pada program MATLAB R2013


b.      Pada lembar baru, ketikkan sintaks di bawah ini:
%Syntax pengimputan Gambar
Gambar = imread ('Anna.jpg');
%Syntax mengubah gambar RGB ke GRAY
Gray = rgb2gray (Gambar);
%Lihat gambar
imshow (Gray), title ('Gambar Gray');
%Lakukan Filter Maximum
FilterMax = nlfilter (Gray, [3,3],'max(x(:))');
%Lihat Gambar hasil Filter
imshow (FilterMax), title ('Hasil Filter Maximum')
c.       Ikuti langkah kerja d dan e pada filter median, yaitu menjalankan program dan menyimpannya maka hasil dari program tersebut akan muncul.

3.      Filter Minimum
a.       Langkah kerja filter maxsimum sama dengan filter minimum, namun memiliki sintaks yang berbeda, yaitu:
I = imread ('Anna.jpg');
gray = rgb2gray (I);
If = nlfilter(gray,[3,3],'min(x(:))');
figure,imshow(I),title('citra input');
figure,imshow(gray),title('citra Gray');    
figure,imshow(If),title('citra filter min');
b.      Jalankan program sama seperti pada langkah kerja sebelumnya dan hasilnya akan muncul

4.      Filter mid point filter
a.       Ikuti langkah kerja yang sama dengan program-program sebelumnya, namun dengan sintaks yang berbeda. Sintaks dari mid point filter adalah:
K = imread('Anna.jpg');
figure,imshow(K),title('original image');
I=imnoise(K,'gaussian');
figure,imshow(I),title('Image with gaussian noise');
[M N]= size(K);
[m n]=size(I);c=ones(3,3)/9;
[p q]=size(c);p=(p-1)/2;q=(q-1)/2;
z=I;
for i=p+1:m-p
for j=q+1:n-q
mask1=zeros(3,3);
for k=-p: p
for l=-q: q
mask1(p+1-k,q+1-l)=I(i-k,j-l);
end
end
mid1=mask1(: );
mid1=(min(mid1)+max(mid1))/2;
z(i,j)=mid1;
end
end
figure,imshow(uint8(z)),title('mid point filtered image');

b.      Jalankan program, sepertiyang telah dilakukan sebelumnya, dan hasil akan tampil pada window – window baru

5.      Filter Laplacian
a.       Lakukan hal yang sama dengan apa yang anda telah lakukan pada percobaan sebelumnya, pada lembaran baru tuliskan sintaks dibawah ini:
%% create a new figure to show the image .
    newImg = imread('Anna.jpg');
    figure(1);
    imshow(newImg);
    figure(2);
     %% create laplacian filter.
    H = fspecial('laplacian');
     %% apply laplacian filter.
    blurred = imfilter(newImg,H);
    imshow(blurred); title('Edge detected Image')
b.      Ikuti langkah kerja pada percobaan sebelumnya. Dan hasil akan muncul pada jendela baru.

6.      Filter Sobel
a.       Ikuti langkah kerja pada percobaan sebelumnya.
b.      Pada jendela tempat penulisan sintaks, tulislah sintaks dibawah:
l=imread('Anna.jpg');
l1=rgb2gray(l);
l2=fft(double(l1));
l2_1=fft(double(l));
figure,imshow(l),title('Original image');
figure,imshow(l1),title('Gray scale image ');
h=fspecial('sobel');
l_sobel=uint8(round(filter2(h,l1)));
l_sobel_1=fft(double(l_sobel));
figure,imshow(l_sobel),title('Sobel filtered image')
c.       Jalankan dan simpan program, maka hasilnya akan tampil di window – window baru.

7.      Filter Geometric Mean
a.       Lakukan hal yang sama dengan percobaan sebelumnya, dan pada jendela editor, ketikkan sintaks di bawah ini:
I = imread('Anna.jpg');
f = imnoise(I,'gaussian',0,0.01);
f = im2double(f);
[m n]=size(f);
si=1;
for i = 1:m
for j = 1:n
con=0; s1=1;
for k1 = i-si:i+si
for p1 = j-si:j+si
if ((k1 > 0 && p1 > 0) && (k1 < m && p1 < n ))
con = con+1;
s1=s1*f(k1,p1);
end
end
end
b1(i,j)=s1^(1/con);
end
end
imshow(b1),title('Geometric mean filtered');
b.      Jalankan dan simpan program yang anda telah buat, maka hasilnya akan muncul pada jendela baru



E.     HASIL
Foto asli:

1.      Filter Median
 


2.      Filter Maximum


3.      Filter Minimum
  




4.      Filter Midpoint
 




5.      Filter Laplacian
  
 

6.      Filter Sobel
 
 

7.      Filter Geometric mean




F.      ANALISIS
1.      Filter Median
Melalui script filtering median kita dapat menganalisis bahwa gambar=imread('Anna.jpg');merupakan intruksi untuk menginput gambar Anna ke dalam program matlab untuk diolah, gray=rgb2gray(gambar); bertujuan untuk merubah warna gambar menjadi gray agar lebih mudah dalam melakukan filtering, noise=imnoise(gray,'Salt & Pepper',0.03); intruksi ini bertujuan untuk menambahkan efek noise yang berupa bintik-bintik halus pada gambar, noise2=imnoise(gray,'Gaussian',0.2); intruksi ini merupakan intruksi untuk melakukan filtering median atau biasa disebut gaussian. kemudian langkah selanjutnya adalah untuk menganalisasi atau mengkodekan hasil filtering dengan intruksi :
awal=medfilt2(gray);
k=medfilt2(noise);
k2=medfilt2(noise2);
di atas, sangat jelas bahwa label awal adalah median filter untuk gambar gray, k untuk gambar filter paper n salt noise, dan k2 untuk gambar yang telah difiltering. lalu langkah selanjutnya adalah menampilkan semua gambar yang telah difiltering dengan intruksi:
figure,imshow(awal),title('Pelembutan Citra Awal');
figure,imshow(k),title('Pelembutan Citra Noise Salt&Pepper');
figure,imshow(k2),title('Pelembutan Citra Noise Gaussian');
ketiga gambar di tampilkan dengan title yang n .
2.      Filter Maksimun
Pada filter Maksimum, pertama-tama gambar di tampilkan dalam program metlab dengan intruksi Gambar = imread ('Anna.jpg'); Gambar merupakan label untuk foto/ gambar yang diinputkan, lalu mengubahnya warna gambar menjadi gray agar lebih mudah di filter dengan intruksi Gray = rgb2gray (Gambar); selanjutnya hasil perubahan warna foto di tampilkan dengan intruksi imshow (Gray), title ('Gambar Gray');. setelah gambar di tampilkan maka dilakukanlahfiltering maksimum dengan intruksi FilterMax = nlfilter (Gray, [3,3],'max(x(:))'); . terakhir gambar ditampilkan dengan intruksi imshow (FilterMax), title ('Hasil Filter Maximum'
3.      Filter Minimum
Hampir sama dengan sebelumnya, dengan intruksi I = imread ('Anna.jpg'); gambar di inputkan masuk ke program dengan label I, lalu gambar dirubah warna ke gray deengan intruksi gray = rgb2gray (I); dengan label gray, dan dengan label If gambar difilter dengan intruksi If = nlfilter(gray,[3,3],'min(x(:))'); setelah itu, maka semua label dari ketiga gambar di panggil untuk di tampilkan dengan intruksi
figure,imshow(I),title('citra input');
figure,imshow(gray),title('citra Gray');         
figure,imshow(If),title('citra filter min');
4.      Filter Laplacian
Filter Laplacian, dimulai dengan membaca gambar dengan intruksi newImg = imread('Anna.jpg'); newImg merupakan label untuk gambar, setelah di baca gambar ditampilkan dengan intruksi
figure(1);
imshow(newImg);
Figure (1) disini merupakan title untuk gambar kemudian imshow(nwImg) merupakan intruksi untuk menampilkan gambar yang telah dibaca sebelumnya. Untuk gambar selanjutnya kita menggunakan title figure (2); sebelum di tampilkan, maka gambar terlebih dahulu di filter dengan intruksi
H = fspecial('laplacian');
blurred = imfilter(newImg,H);
Intruksi H = fspecial('laplacian'); merupakan intruksi untuk menyatakan bahwa label H merupakan label untuk proses filtering gambar, kemudian intruksi blurred = imfilter(newImg,H); merupakan pengaplikasian dari filter tersebut, dimana di dalam label blurred terdapat perintah yang menyatakan bahwa imfilter (lakukan filter) newImg, H berarti gambar dengan label newImg difilter dengan filtering laplacian (H)
Terakhir gambar di tampilkan dengan intruksi imshow(blurred); title('Edge detected Image')
5.      Filter Sobel
Pada filter sobel, seperti pada intruksi filter sebelumnya gambar dibaca oleh program dengan intruksi l=imread('Anna.jpg'); disini kita menggunaka label disetiap intruksi label 1 diberikan untuk intruksi pembacaan gambar ini, lalu gambar diubah warna menjadi gray dengan intruksi l1=rgb2gray(l); label l1 merupakan label untuk merubah warna gambar menjadi gray, selanjutnya intruksi  l2=fft(double(l1));  l2_1=fft(double(l));
Maksud dari kedua intruksi ini, bahwa kedua intruksi yang sebelumnya kita tinggalkan untuk menampilkan gambar dengan intruksi
figure,imshow(l),title('Original image');
figure,imshow(l1),title('Gray scale image ');
Kedua intruksi ini menandakan bahwa gambar asli dan gambar yang diubah warna ke gray di tampilkan pada program. Kemudian masuk ke proses filter dengan intruksi  h=fspecial('sobel');  l_sobel=uint8(round(filter2(h,l1)));  pada label h berarti penginialisasi filter sobel, lalu pada label l_sobel berarti pengaplikasian filter sobel terhadap gambar l1 (gambar dengan warna gray). Selanjutnya intruksi untuk meninggalkan proses filtering dengan sintaks l_sobel_1=fft(double(l_sobel));, terakhir, gambar ditampilkan dengan intruksi figure,imshow(l_sobel),title('Sobel filtered image')


G.    KESIMPULAN
Pengolahan citra sangat bermanfaat bagi kehidupan manusia, mulai dari kesehatan, keamanan, dan berbagai maafaat lainnya. Setiap proses dari filter ini memiliki sintaks dan hasil filter yang berbeda pula.

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS