28 June 2016

Soal dan Jawaban Fisika Listrik Magnet Genap 2015-2016

Alhamdulillah telah menyelesaikan pembuatan soal dan jawaban UAS Genap 2015-2016.
Tapi sak jane (sebenarnya) aku ngga pengin membuat jawabannya juga, karena "podo karo nguji awakku dewe"...........tapi ngga pa pa....karena ini sifatnya sharing yang aku punya.

Saya pikir ini soal tidak begitu sulit buat sodara-sodara yang sudah belajar, tapi ya sudahlah......wong sudah terlihat juga jawabannya...............ya mudah-mudahan bisa mengerjakan semua dengan baik dan benar ya.......

Soal dan jawaban tersebut adalah :
1. Benda yang kelebihan elektron akan bermuatan NEGATIVE. Mengapa demikian ? berikan ilustrasi yang jelas dengan gambar dan penjelasan !

Jawaban :

Karena jumlah electron lebih banyak daripada jumlah muatan proton, sehingga apabila ada mempunyai peluang yang besar untuk dapat bergandengan dengan proton dari luar.
Gambar 1. Kondisi Atom

Dari gambar di atas dijelaskan bahwa, benda tersebut bermuatan negative, karena jumlah electron (5) lebih banyak daripada jumlah muatan protonnya (3). Elektronnnya kelebihan 2 buah yang memungkinkan berlari lincah untuk mencari pasangan proton dari benda diluarnya.

2. Sebuah atom pasti memiliki inti. Bagian intinya berisi kombinasi atas apa saja ?
Jawaban : proton dan neutron

Gambar 2. Struktur Atom, dimana inti atom tersusun atas Proton dan Neutron

3. Untuk menjadi sebuah atom ideal, maka atom harus terdiri atas susunan apa saja ? 
Jawaban : proton, neutron, dan elektron

4. Pada sebuah atom, selain inti atom juga ada muatan lain yang beredar mengelilingi inti atom. Disebut apakah yang beredar mengeliligi inti atom tersebut ? 
Jawaban : elektron

5. Dua buah benda yang bermuatan berbeda, misalnya benda X bermuatan positif dan benda Y bermuatan negatif. Apa reaksinya jika kedua benda tersebut saling berdekatan ? 
Jawaban : saling Tarik menarik

Gambar 3. Dua buah benda dengan berbeda muatan

6. Seperti telah diketahui, bahwa sebuah benda pasti mempunyai muatan. Apa maksudnya suatu benda dikatakan bermuatan positif ? 
Jawaban : apabila atom tersebut kekurangan electron, sehingga jumlah protonnya lebih banyak dari elektronnya.

Gambar 4. Bermacam-macam benda bermuatan (hitung jumlah + dan -)

Gambar 5. Jenis-jenis atom (hitung jumlah + dan -)

7. Berapakah nilai kapasitas muatan kapasitor bila muatan listrik yang mengalir pada kapasitor tersebut adalah sebesar 6µC dan beda potensial yang melewatinya adalah sebesar 10 volt ?

Jawaban :
Diketahui : q = 6µf = 6.10-6F; V=10 volt
Ditanyakan besarnya nilai kapasitor (C) = ?
Sehingga :            C=q/V
                             C = 6.10-6/10 = 6.10-7 F

8. Pada  sebuah rangkaian seri kapasitor, masing-masing mempunyai muatan 2µF, 3µF dan 4µF.  Sedangkan beda potensialnya adalah 10 volt.  Berapakah besar muatan pada rangkaian tersebut ?
Gambar 2. Kapasitor Rangkaian serial
Diketahui : C1 = 2µF; C2=3µF; C3=4µF
                   Beda potensial (V) = 10 Volt
Ditanyakan : Besar muatan pada rangkaian ?

Jawaban : 
V=q(1/C1+1/C2+1/C3)
Q = V/(1/C1+1/C2+1/C3)
= 10/(1/2.10-6+1/3.10-6+1/4.10-6)
= 10/(106/2+106/3+106/4)
= 10/(6.106/12+4.106/12+3.106/12)
= 10/(13.106/12)
= 10.12/13.106
= (12/13)*10-5

9. Bila diketahui sebuah generator DC dengan spesifikasi kerapatan fluks magnetnya sebesar 0.85 weber dipotong oleh 200 kawat penghantar.  Bergerak dengan kecepatan 2 m/s.  Jika panjang penghantar keseluruhan 100 mm, berapakah besarnya tegangan induksi yang dihasilkan ?
Diketahui :
                       fluks  (B) = 0.85 weber
                       Panjang kawat penghantar (l) = 100 mm = 0.1 m
                       Kecepatan gerak (v) = 2 m/s
                       Lilitan Kawat penghantar = 200

Ditanyakan : berapa besarnya tegangan induksi ?

Jawaban :
                       V            = B.l.v.z
                                      = 0.85 * 0.1 * 2 * 200
                                      = 34 volt

Gitu aja ya, semoga ujian anda sukses (sukses sih......tapi........ngga tahu nilainya berapa ).
Semoga bermanfaat.

23 June 2016

Soal dan Jawaban UAS TBO Genap 2015-2016

Sodara-sodara semuanya.  Kali ini saya akan memposting tentang Soal dan Jawaban TBO UAS Semester Genap 2015-2016.

Kalo ada yang merasa sakit hati karena jawaban ngga cocok bisa datang untuk mendiskusikan........(tapi jangan lupa bawa gorengan dan kopi......xixixixiix...)

Soal dan jawaban dari UAS TBO tersebut adalah :
1.      Ubahlah bentuk Reguler Expresion berikut menjadii bentuk Finite Automata :

R = ( 0 È 1 )* 101

Jawaban :

Buat dahulu definisi FA untuk masing-masing 0 dan 1, sebagai berikut :
Gambar 1. 


Gambar 2. Reform dari Reguler Expression ke bentuk Finite State Automata 


2.     Diketahui sebuah Grammar G=(V, ∑, R, S), dimana V, ∑ dan R adalah sebagai berikut :
V = {S, A}
∑ = {a, b }
R =   { S à aAS
            S à a
            A à SbA
            A à SS
            A à ba}.

Buktikan bahwa string ini : aaaaabaa  dan ababaaabaa bisa diselesaikan oleh grammar tersebut !
Gambarkan Derivation Tree-nya !

Jawaban untuk string aaaaabaa adalah :
Parsingnya adalah :
aAS
aSbAS
aaASbAS
aaSSSbAS
aaaaabAS
aaaaabSSS
aaaaabaaa

Gambar 3. Parsing Tree


Jawaban untuk string ababaaabaa adalah :
String tersebut tidak bisa diselesaikan oleh Grammer yang ada, karena :
S à aAS
è aSbaS
Pada S yang depan pilihannya ada 2, yaitu : aAS dan a
Kalau dipilih aAS, maka a pada barisan depan string menjadi aa padahal seharusnya hanya a terus dilanjutkan ke b, sehingga tidak bisa dilanjutkan.
Bila dipakai a, maka a barisan depan string menjadi aa, sehingga alasanya sama dengan yang di atas.
è aSSS
Bila pilihan A menjadi SS, maka minimum a di barisan depan string adalah aa, padahal yang di string input hanya satu a, sehingga ini tidak bisa dilanjutkan.

 3.     Diketahui Sebuah mesin PDA (Pushdown Automata) sebagai berikut :


Gambar 4. Mesin PDA untuk soal nomor 3
Bila input string dan kondisi stack pada saat waktu =0, adalah :
  
Input string :
Gambar 5. Input string untuk mesin PDA pada gambar 4
  • Bacalah semua string dengan mesin PDA tersebut, dan lihatlah bagaimana isi tumpukan setelah semua perintah pada mesin PDA selesai dikerjakan !
  • Diskripsikan secara instan urutan pembacaan mesin PDA tersebut !

Jawaban :
  • Bila semua string seleain semua dibaca  dengan menggunakan mesin PDA tersebut, maka isi dari stack terakhir adalah :
    Gambar 6.  Susunan stack setelah semua string terbaca oleh mesin PDA
  •         Diskripsi secara instan urutan prosesnya adalah sebagai berikut :

(q0,0000111110,$) ® (q1,0000111110,$) ®  (q1,000111110,0$) ®(q1,00111110,00$) ®
(q1,0111110,000$) ®(q1,111110,0000$) ®(q2, 11110,10000$) ®(q3, 1110,0000$) ®
(q2, 110,10000$) ®(q3,10,0000$) ®(q2,0,10000$) ®(q4,e,110000$)







09 June 2016

PushDown Automata / PDA

Sodara-sodara semuanya.....
Pushdown Automata / PDA adalah sebuah mesin logika yang dibangung untuk mengerjakan logika pembacaan data.
Untuk itu diperlukan 3 hal untuk bisa menjalankan proses tersebut, antara lain :

  1. deretan input
  2. mesin PDA
  3. stack / tumpukan 
Deretan input berfungsi untuk menampung semua data yang akan dibaca oleh mesin PDA (biasanya dianggap sebagai sebuah string).
Mesin PDA berfungsi untuk membaca, memproses dan menyimpulkan apakah data yang masuk bisa diselesaikan atau tidak.
Stack atau tumpukan berfungsi untuk menampung sementara hasil proses (ini berlaku seperti halnya register memory).
Sebagai ilustrasi bisa dilihat pada gambar 1.

Gambar 1. Ilustrasi proses oleh mesin PDA

Proses tersebut diawali dengan penentuan kondisi awal semuanya (baik input, mesin pda dan stack-nya). seperti terlihat pada gambar 2.

Gambar 2. Kondisi awal mesin

Setelah itu dilanjutkan dengan mengkonfigurasi pembacaan data dengan menggunakan format tertentu, seperti terlihat pada gambar 3.
Gambar 3. notasi pembacaan

Dimana format a, b --> c mempunyai arti bahwa : "input yang dibaca adalah a dan mengambil (pop) b dari tumpukan (stack) dan menaruh (push) c pada stack.  
Ilustrasi dari proses pembacaan tersebut dapat dilihat pada gambar 4.
Gambar 4. Ilustrasi proses POP dan PUSH
Gambar tersebut menjelaskan tentang bagaimana b dilakukan POP dan c dilakukan PUSH. sehingga posisi stack berubah.
Pada gambar 5 adalah proses menaruh (PUSH) sebuah karakter kedalam stack.

Gambar 5. Proses menaruh input pada stack 

Terlihat bahwa perintah a, e®c merupakan perintah untuk membaca input a, mengambil (pop) kosong (tidak mengambil apapun) dan menaruh (push) c pada tumpukan.

Sedangkan proses mengambil dari tumpukan bisa dijelaskan seperti pada gambar 6. 
Gambar 6. Proses mengambil karakter dari stack
Terlihat pada tumpukan, tadinya berisi e,h dan b, karena mendapatkan perintah a, b®maka nilai b pada stack terambil dan menyisakan e dan h pada tumpukan.

Perintah berikutnya yang perlu diperhatikan adalah a, e®e
Artinya bahwa tidak ada proses pop dan proses push pada stack, sehingga stack isinya tetap tidak berubah. seperti diilustrasikan pada gambar 7.
Gambar 7. Tidak ada proses pop dan push

Kalau tumpukan sudah sampai dengan dasarnya, maka apabila dilakukan proses pop, maka akan dihasilkan suatu keadaan yang disebut HALTS, yaitu keadaan dimana stack sudah tidak bisa diambil dan akan berhenti (.....wong tidak ada isinya kok diambil.....emang ambil apaan........).  Kondisi tersebut bisa diilustrasikan pada gambar 8.

Gambar 8. Mengambil isi stack dari stack yang sudah kosong
Contoh :
Misalkan diketahui suatu deret input aaabbb yang akan dibaca oleh mesin PDA dengan kondisi awal mesin seperti tampak pada gambar 9.

Gambar 9. Kondisi awal suatu proses PDA

Terlihat pada input berisi aaabbb dimana posisi pointer pembaca masih diluar input (waktu=0) dan pada stack hanya berisi $ (yang berarti itu adalah batas akhir tumpukan) dan kondisi saat ini proses sedang berada pada state q0.
Maka apabila state-nya digerakkan kekanan menuju perintah berikutnya, maka yang dibaca adalah perintah ee®e yang berarti bahwa tidak ada kegiatan apapun. sehingga input dan stack tidak berbuah. Posisi state berada pada q1 seperti terlihat pada gambar 10.
Gambar 10. Setelah perintah pertama dikerjakan
Selanjutnya adalah membaca input dengan menggeser pointer ke kanan, sehingga input yang terbaca adalah a.  kalau a yang dibaca berarti perintah yang dipakai adalah ae®bukan b, a®e
Sehingga stack berubah menjadi sebagai berikut :

Gambar 11. Kondisi state 1 dengan input a
Demikian seterusnya membaca input dengan menyesuaikan perintah pada PDA-nya.  Kalau semua bisa terbaca habis dan berhendi di q3, maka dikatakan bahwa string aaabbb bisa habis dibaca oleh mesin PDA dan tidak ada kesalahan.

Posisi terakhir pointer input dan tumpukan/stack dapat dilihat pada gambar 12.
Gambar 12. Kondisi terakhir pointer input, PDA dan stack



Demikian dulu ya..............
Berikut linknya :

Pushdown Automata - 4Shared
Pushdown Automata - Slideshare

Demikian dan terima kasih

08 June 2016

Image Compression (Kompresi Citra)

Image atau gambar umumnya terdiri dari sejumlah besar data (bisa dilihat dari isi pikselnya, dimana
masing-masing piksel terdiri atas beberapa item warna, misalnya RGB, CMYK dan lain-lain).

Kompresi Citra dimaksudkan untuk mengurangi jumlah data (bits) yang dibutuhkan untuk mewakili citra digital. Ini dapat dikerjakan dengan mengurangi bagian yang tidak dipakain atau bagian-bagian data yang mengandung redudancy.
Kompresi bisa dilihat dari beberapa contoh paket yang sudah ada, misalnya Winrar, Winzip, PDF, Jpg, Png dan lain sebagainya.
Kompresi Citra dibagi menjadi 2 bagian, yaitu :     
  1. Lossy (Citra hasil tidak bisa dikembalikan seperti aslinya).
  2. Lossless (Citra hasil dapat dikembalikan seperti aslinya).
Jika n1 adalah image asli, n2 adalah image hasil maka Relativen Redudancy (RD) dari image asli adalah :
                    RD = 1-(1/CR)
  Dimana :     CR = n1/n2
  CR disebut sebagai Compression Ratio

Ada 3 macam Redudancy Data untuk image, yaitu :
  1. Coding Redudancy (berdasarkan code biner yang mewakili intensitas graylevel)
  2. Interpixel Redudancy (berdasarkan pada hubungan korelasi antar pixel yang berdekatan)
  3. Psychovisual Redudancy (berdasarkan pada ketidaksamaan sensitivitas mata manusia terhadap perbedaan informasi visual)
Model Kompresi Citra



Gambar 1. Proses kompresi citra

Dari gambar 1 dapat dijelaskan bahwa :
  • Source Encoder adalah membuang redudancy dari input image 
  • Channel Encoder adalah membantu mengontrol noise (menyediakan beberapa level kekebalan terhadap noise). 
  • Channel Decoder dan Source Decoder bekerja kebalikan dari proses Encoder.
Source Encoder



Gambar 2. Source Encoder
  • Source Encoder berfungsi untuk mengurangi atau membatasi setiap coding, interpixel atau psychovisual redudancy. 
  • Mapper berfungsi untuk mentransformasi data input menjadi format nonvisual, didesain untuk mengurangi redudancy antar pixel. Blok ini bersifat bolak-balik, dan mungkin mengurangi ukuran data tapi bisa juga tidak mengurangi ukuran data. 
  • Quantizer mengurangi keakuratan dari Output Mapper, dalam hubungannya dengan kriteria fidelity. Blok ini mengurangi redudancy psychovisual dan biasanya tidak bisa bolak balik. 
  • Symbol Encoder menciptakan code2 dengan panjang tetap/variabel yang mewakili output Quantizer. Blok ini bersifat bolak-balik.

Source Decoder



Gambar 3. Source Decoder

Source Decoder bekerja kebalikan dari Blok Source Encoder kecuali Quantizer, yang hanya berjalan 1 arah.

Beberapa Kompresi Citra yang umum, adalah sebagai berikut :
  1. Run Length Encoding. 
  2. Huffman Encoding. 
  3. Shanon Fano Encoding 
  4. Discrete Cosinus Transform
Run Length Encoding (RLE)
  • RLE merupakan metode kompresi yang banyak didukung oleh format file gambar seperti: TIFF, BMP, PCX. 
  • RLE bekerja dengan mengurangi ukuran fisik dengan adanya pengulangan string dari deretan karakter / byte data. 
  • String perulangan ini dinamakan RUN, dan biasanya di kodekan dalam 2 byte. Byte pertama merupakan jumlah perulangan dan byte kedua adalah karakter yang diulang.
Contoh:

AAAAAAAABBBBBCDEEEEEFFFFF             25 byte uncompressed

8A5B1C1D5E5F                                                12 byte compressed
  • Dari konsep sebelumnya terlihat bahwa jika data tidak bisa dikompresi (tidak ada data yang sama sacara berurutan) maka hasil kompresi memiliki ukuran data 2 x lebih besar. 
  • Untuk itu ditentukan suatu Character khusus yang akan menunjukkan data berikutnya adalah merupakan data terkompresi.  --> Flag 
  • Byte pertama merupakan nilai flag yang menandakan bahwa 2 byte berikutnya adalah karakter yang dikompresi. Byte kedua merupakan jumlah karakter yang dikompresi. Sedangkan byte ke tiga adalah karakter yg dikompresi. Saat proses kompresi jika nilai RUN adalah1,2 atau 3 byte, maka Karakter akan ditulis langsung ke data stream dan tidak dilakukan kompresi. Karena itu pada teknik ini jika data tidak ada yang berurutan, ukuran output sama dengan input
Gambar 4. Format kerja RLE

Shannon Fano Coding

Shannon fano adalah coding compresion yang mengikuti pola sebagai berikut :
  • Tiap kode berbeda informasi bitnya. 
  • Kode simbol yang probabilitasnya rendah mempunyai jumlah bit yang lebih banyak, dan yang probabilitasnya tinggi mempunyai jumlah bit yang lebih sedikit. 
  • Proses decoding tetap dapat dilakukan walaupun panjang kode tiap simbol berbeda. 
  • Proses kompresi terjadi karena simbol yang sering keluar dikodekan dengan jumlah bit yang sedikit.

Gambar 5. Model compresi Shannon Fano

Algoritma Shannon Fano

Rangkaian urutan perintah yang harus dilakukan dalam membuat kompresi Shannon Fano adalah sebagai berikut :
  • Buat daftar probabilitas kemunculan setiap simbol. 
  • Urutkan daftar dari yang paling sering keluar. 
  • Bagi daftar menjadi 2, dengan ketentuan jumlah probabilitas setengah bagian atas mendekati setengah bagian bawah. 
  • Setengah bagian atas diberi nilai 0 setengah bagian bawah diberi nilai 1. 
  • Lakukan secara rekursif langkah terakhir pada setengah bagian atas dan setengah bagian bawah.
Contoh: Shannon Fano Coding 

Diberikan simbol :

AAAAAAAAAAAAAAABBBBBBCCCCCDDDDDDEEEEEEE

Jika ditabelkan menjadi :

Gambar 6. Tabulasi 1 
Selanjutnya semua bagian atas diberi lambang 0 dan semua bagian bawah diberi lambang 1.
Gambar 7. Tabulasi 2
Selanjutnya untuk setengah bagian atas:
Bagian atas pembagian lambang 0 dan bagian bawah pembagian diberi lambang 1.

Langkah berikutnya adalah :
Gambar 8. Tabulasi 3
Selanjutnya semua bagian atas diberi lambang 0 dan semua bagian bawah diberi lambang 1.

Gambar 9. Tabulasi 4
Sehingga dapat dikodekan : 
 A = 00
 B = 01
 C = 10
 D = 110
 E = 111


Huffman Coding

Adalah kompresi dengan hasil kompresi lebih baik dari Shannon Fano dengan uraian bentuknya adalah sebagai berikut :
  • Sama halnya dengan Shannon Fano, maka Kode simbol yang probabilitasnya rendah mempunyai jumlah bit yang lebih banyak, dan yang probabilitasnya tinggi mempunyai jumlah bit yang lebih sedikit. 
  • Untuk Proses decoding biasanya digunakan cara Binary Tree. 
  • Kode Huffman membentuk Tree dari bawah keatas. 
  • Tiap Simbol merupakan node dari ujung tree. 
  • Tiap simbol memiliki bobot berupa probabilitas frekuensi kemunculan simbol.

Cara-cara membentuk TREE adalah sebagai berikut :
  • Dipilih node yang masih bebas dengan bobot terendah. 
  • Dibentuk node induk dari kedua node ini, bobotnya sama dengan bobot kedua anaknya. 
  • Node induk digabungkan dalam daftfar node bebas lainnya (node yang telah digabung menjadi tidak bebas lagi). 
  • Path dari node induk ke-anak2 nya diberi simbol 0 dan 1. 
  • Pemberian simbol harus konsisten jika dibuat aturan 0 sebelah kiri, maka ketentuan ini harus berlaku sampai node bebas tinggal 1. 
  • Ulangi langkah diatas sampai node bebas tinggal 1 (=root)
Contoh: Huffman Coding

Diberikan simbol:

AAAAAAAAAAAAAAABBBBBBCCCCCDDDDDDEEEEEEE

Dengan Huffman akan menghasilkan tabel sebagai berikut :
Gambar 10.  Proses tabulasi Huffman coding
Atau dengan cara tree sebagai berikut :

Gambar 10. Huffman Tree

Materi presentasi dapat didownload pada link di bawah :


Demikian sedikit materi tentang kompresi citra dari saya.





03 June 2016

Jadwal Imsyakiyah Kota Kupang


Assalamu'alaikum.
Sodara-sodara sebangsa dan setanah air, hari ini saya mendapatkan inspirasi sendikit untuk berbagi jadwal imsyakiyah untuk kota Kupang dan sekitarnya.



Mudah-mudahan ini pas buat sodara-sodara sekalian yang biasanya sering telat lihat jam.
Kalo perlu alarm semua hape dipasangin semua, biar kalo pas waktu imsyak dan magrib pas jadi rame.......
BTW, mana bedug mana bedug...................................

Ini link jadwal imsyakiyah tahun 2016 M / 1437 H :

Jadwal Imsyakiyah Ramadhan Tahun 2016 M / 1437 H

Kalau masih belum puas, nih gambarnya....

Biasanya kalo ngomong poso, yang terpikirkan dibenak adalah :
  • Nanti sore buka pake apa ya ?
  • Sahur telat apa ngga ya ?
  • Lapar apa ngga ya ?
  • Baju lebaran sudah ada apa blum ya ? ...................eeuuuuiiiiii.......puasa aja blooommmm
Kayak orang yang kasihan melihat  diri ini seolah hanya mengharap makan dan lebaran saja.



Demikian info sedikit dari saya, mudah-mudahan bermanfaat.
Wassalam.

sumbernya dari : http://www.al-habib.info/jadwal-shalat/imsakiyah-ramadhan-muhammadiyah-1437-h.htm

01 June 2016

Linear Filters pada Citra

Filter 2D adalah filter untuk membentuk suatu obyek menjadi lebih terang (sharp) atau gelap (blur) sesuai dengan ukuran yang diberikan.  (aku membayangkan kalau wajahku di blur, kira2 tambah manis ngga ya ....??????)
Filter berupa matrik dengan ukuran tertentu sesuai dengan keinginan.  Tetapi biasanya sudah ada format baku matrik filter untuk membuat obyek menjadi lebih terang atau gelap.
KONVOLUSI (convolution)

Misalnya diketahui citra asal adalah A sebagai berikut :

dan matrik filternya adalah :

dirotasi 180 derajat menjadi :


maka untuk filter nilai koordinat (2,4) baris ke 2 dan kolom ke 4 adalah :
  1. Rotasi filter (convolution kernel) 180 derajat terhadap center filternya. 
  2. Geser pusat dari filter ke dalam koordinat (2,4) dari gambar asli. 
  3. Kalikan nilai filter dengan nilai citra asli pada posisi koodinat yang sama dan tambahkan dengan perkalian pada koodinat setelahnya yang bersesuaian dengan filternya sampai dengan semua filter terpakai semua.
  4. 1*2+8*9+15*4+7*7+14*5+16*3+13*6+20*1+22*8=575 ==> 575/9=63.88889
  5. Sehingga nilai 14 pada citra A digantikan dengan nilai baru 63

Caranya adalah dengan menempelkan filter dengan center dari filter sama dengan titik koodinat yang hendak dicari, misalnya di (2,4) terus dilakukan perhitungan.  Coba perhatikan ilustrasi berikut :

Gambar 1. Rotasi filter dan penempatan filter pada koodinat

Cara ini dilakukan terus menerus (menggeser filter) untuk semua nilai piksel citra asli, sehingga semua nilai citra asli dihasilkan nilai baru semua.


KORELASI (Correlation)

Ini adalah bentuk lain filter tetapi tidak dengan tidak me-rotasi filternya (filter tetap).  Korelasi disebut sebagai bentuk relasi tertutup terhadap konvolusi.

Sehingga hasil ilustrasi proses korelasi tersebut dapat dilihat pada gambar.

Gambar 3.  Perhatikan filternya.  Tidak dirotasi

Sehingga hasil perhitungannya adalah :

1*8+8*1+15*6+7*3+14*5+16*7+13*4+20*9+22*2=585 ==> 585/9=65

Perhitungan ilustrasi lengkapnya sebagai berikut :
Gambar 2. Proses pergeseran dan perhitungan nilai
File excel perhitungan di atas bisa didonwload disini

Linear filtering dengan menggunakan imfilter pada matlab

clear
clear all
i=imread('kelinci-potong.jpg');
h=ones(5,5)/25;
i2=imfilter(i,h);
imshow(i),title('original image');
figure,imshow(i2),title('filtered image');


Gambar 4. Kelinci Potong.jpg
Setelah dilakukan proses imtool pada obyek kelinci potong.jpg, maka diperoleh nilai pixel pada koordinat kiri bawah terutama pada koordinat (3,298) yaitu RGB (90,105,86).  
Agar sama hasilnya ini link dari Kelinci Potong.jpg, mohon didownload.

Gambar 5. Nilai Pixel gambar asli


Bila filter yang digunakan adalah h=ones(5,5)/25; dimana filternya berukuran 5x5 dengan rata-rata (dibagi dengan 25 karena ada 25 pixel) --> perhatikan garis kuning.
Misalnya yang akan kita hitung warna merah / RED saja, maka hasilnya adalah :


Rata-rata dari matrik di atas adalah 54.04 yang dibulatkan menjadi 54 saja.

Gambar 6. Filter Image
Kita lihat pada koordinat yang sama pada gambar 7, maka warna merah bernilai 54
Demikian juga untuk nilai yang lainnya adalah hasil nilai rata-rata dari matrik 5x5 pixel gambar aslinya.

Gambar 7. Nilai pixel hasil filtering

Data Types

Pada matlab diberikan perintah sebagai berikut :

A=magic(5);
A=[17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 19 12 19 21 3 11 18 25 2 9]
h=[-1 0 1]

Dengan perintah baris kedua, maka akan diperoleh :
A =
   Columns 1 through 11
     17    24     1     8    15    23     5     7    14    16     4
   Columns 12 through 22
      6    13    20    22    19    12    19    21     3    11    18
   Columns 23 through 25
     25     2     9

Selanjutnya pada command dialog diberikan filter :

h=[-1 0 1]

Setelah dienter, maka akan tampil :
h =
    -1     0     1

Selanjutnya diberikan perintah untuk menfilter image array, sebagai berikut :

imfilter(A,h);

Maka hasilnya adalah munculnya variable jawaban ans dengan tampilan sebagai berikut :

Gambar 8.  Workspace dari imfilter(A,h);

Kalau kita edit maka akan tampil sebagai berikut :

Gambar 8. Variabel editor 1 dimensi nilai pixel

Data array asal :

17  24  1  8  15
23  5  7  14  16
4  6  13  20  22
10  12  19  21  3
11  18  25  2  9

Setelah difilter menjadi :
24           -16         -16         14           15          
-10         -16         9             9             -10        
-10         9             14           9             -10        
-10         9             9             -16         -10        
15           14           -16         -16         -2


Dengan perintah yang berbeda (Korelasi):

A=uint8(magic(5));
imfilter(A,h);         % filter dengan korelasi

Maka jawaban yang muncul adalah :

Gambar 9. Workspace 2 dimensi

Gambar10. Varibel editor 2 dimensi

Dengan konvolusi, maka akan diperoleh :

imfilter(A,h,'conv');        % filter dengan konvolusi

Hasil filter dengan convolusi adalah :

Gambar 11.  Variabel editor hasil konvolusi 2 dimensi
Pilihan pemrosesan batas tepi

Terdapat 2 cara, yaitu :
  1. Diberikan nilai tertentu yang sama  untuk pixel yang berada diluar batas
  2. Diberikan nilai = 0

Hal tersebut bias diilustrasikan sebagai berikut :

Gambar 12.  Penentuan nilai tepi dengan nilai sembarang
Misalnya  nilai tersebut adalah :

Gambar 13.  Nilai tepi yang direplikasi

Gambar 14.  Nilai tepi=0

Ketika batas diluar pixel diisi dengan angka 0, maka tepi akan kelihatan batas kotak hitam.  Perhatikan gambar 15 dan 16.

Gambar 15. Image dengan filter tepi=0
Dan yang menggunakan replication tepi, sehingga output  menjadi :

Gambar 16. Image dengan tepi replikasi

Bandingkan tepi gambarnya.

Gambar 15 dan 16 diperoleh dengan menggunakan perintah matlab :

>> I=imread('kelinci-potong.jpg');
>> h=ones(5,5)/25;
>> I2=imfilter(I,h);                         % filter dengan tepi=0
>> I3=imfilter(I,h,'replicate');          % filter dengan tepi replikasi

Demikian para pembaca budiman, sedikit sharing saya. Kalau ada salah mohon maaf, kalau ada kue mohon dibagi.....xixiixixixixi