Anda di halaman 1dari 15

LAPORAN PRAKTIKUM 2 MACHINE VISION

IMAGE FILTERING

Disusun Oleh :
Diyah Kusumawati
4212131017

Program Studi Teknik Elektro


Jurusan Teknik Mekatronika
Politeknik Negeri Batam
2021
1. Latihan 2.1 Kernel
Kernel adalah matrik dengan ukuran baris dan kolom yang sama minimal 3x3. Kernel
digunakan pada proses filtering dengan cara konvolusi. IMAQ GetKernel digunakan
untuk mendapatkan kernel sesuai dengan kernel family yang dipilih.

a. Tampilan Layar Panel

b. Tampilan Block Diagram

Keterangan :
1. IMAQ GetKernel, klik kanan kemudian create All Controls and Indicators
berfungsi sebagai pembaca kernel yang telah ditentukan oleh Kode ini yang
terdiri dari tiga unit terpisah: Kernel Family, Kernel Size, dan Kernel Number,
dimana :
- Kernel Family adalah menentukan jenis matriksnya. Nilai ini sesuai
dengan unit keseribu dalam kode yang diteliti. Jenis matriksnya adalah
sebagai berikut:
Pilih Gradient (1), maka kita dapat menentukan kernel family sebagai
gradient.
- Kernel Size (3,5, ...) menentukan ukuran matriks horisontal dan
vertikal. Nilai-nilainya adalah 3, 5, dan 7, sesuai dengan konvolusi 3
× 3, 5 × 5, dan 7 × 7 yang disertakan dalam katalog matriks. Nilai ini
sesuai dengan unit keseratus dalam kode yang diteliti.
- Kernel Number adalah matriks nomor keluarga. Ini adalah angka dua
digit, antara 0 dan n, termasuk keluarga dan ukuran. Sejumlah matriks
yang telah ditentukan tersedia untuk setiap jenis dan ukuran
- Kernel Kode adalah kode yang bisa digunakan untuk langsung
mengakses matriks konvolusi. Setiap kode menentukan matriks
konvolusi tertentu. Bisa menggunakan input ini jika sudah terhubung
dan bukan 0. Kernel yang terletak di file kemudian ditranskripsi
menjadi array 2D yang tersedia dari output Kernel.
- Divider adalah faktor normalisasi yang terkait dengan kernel yang
diambil.
- Kernel adalah matriks yang dihasilkan. Ini sesuai dengan kernel yang
dikodekan oleh kode yang ditentukan dari masukan kernel family,
kernel size, dan Kernel Number atau kode dari sebuah kode yang
langsung melewati Masukan Kernel Code. Dapat dihubungkan output
ini langsung ke input Kernel di IMAQ Convolute VI.
- Kode kernel menunjukkan kode yang digunakan untuk mengambil
kernel.
2. OR berfungsi sebagai untuk menghitung OR logis dari input. Kedua input
tersebut harus berupa nilai Boolean, nilai numerik, atau cluster error. Jika
kedua input adalah FALSE, fungsi mengembalikan FALSE. Jika tidak, ia
akan mengembalikan TRUE. Maka fungsi ini melakukan operasi bitwise pada
input numerik. Dimana :
X harus berupa nilai Boolean atau angka. x bisa berupa skalar, array atau
cluster bilangan atau nilai Boolean, array dari cluster angka atau nilai
Boolean, dan seterusnya. Jika x adalah cluster kesalahan, hanya parameter
status dari cluster kesalahan yang masuk ke terminal input.
Y harus nilai Boolean atau angka. y bisa berupa skalar, array atau cluster
angka atau nilai Boolean, array dari cluster angka atau nilai Boolean, dan
seterusnya. Jika y adalah cluster error, hanya parameter status dari cluster
kesalahan yang lolos ke terminal input.
Maka X or Y ? adalah logis Atau dari x dan y.
Kesimpulan :
Dari hasil gambar Output program adalah proses Gradient, dengan kernel size 3 x3.

2. Latihan 2.2 Konvolusi


IMAQ Convolute berfungsi untuk melakukan filter pada image menggunakan linear filter.
Perhitungan konvolusi dapat dilakukan baik pada integer maupun floating point, tergantung
dari tipe image dan isi nilai kernel
a. Tampilan layar panel

b. Tampilan Block Diagram


Keterangan :
1. IMAQ Create, setting Image Type menjadi Grayscale (U8).
• Nama Gambar Source adalah nama yang terkait dengan gambar yang dibuat.
Setiap gambar yang dibuat harus memiliki nama yang unik.
• Jenis Gambar menentukan jenis gambar. Pilih Grayscale (U8).
2. IMAQ ReadFile, klik kanan pada File Path kemudian Create Control berfungsi
sebagai pembaca file gambar. Path File adalah pathname lengkap, termasuk
drive, directory, dan filename, dari file yang akan dibaca.
3. Image Display berfungsi untuk menampilkan gambar dengan cara browsing file
yang akan dimasukkan.
4. IMAQ Convolute berfungsi sebagai Filter gambar dengan menggunakan filter
linier. Perhitungan dilakukan dengan bilangan bulat atau floating point,
tergantung pada jenis gambar dan isi kernel.
dimana :
• Image Src adalah referensi ke sumber gambar.
• Gambar Dst adalah referensi ke gambar tujuan.
• Image Dst Out adalah referensi ke gambar tujuan. Jika Image Dst terhubung,
Maka Image Dst Out sama dengan Image Dst. Jika tidak, Image Dst Out
mengacu pada gambar yang direferensikan oleh Image Src.
• Kernel adalah array 2D yang berisi matriks konvolusi untuk diterapkan pada
gambar. Ukuran konvolusi ditentukan oleh ukuran array ini. Array dapat
dihasilkan dengan teknik pemrograman LabVIEW standar atau IMAQ
GetKernel VI atau IMAQ BuildKernel VI. Jika kernel berisi kurang dari tiga
baris atau tiga kolom, tidak ada konvolusi yang dilakukan.
5. Array 5x5
6. Array 3x3
7. Select berfungsi sebagai untuk memilih nilai yang dihubungkan ke input kernel
5x5 atau input kernel 3x3, tergantung pada nilai kernel select. Jika kernel select
TRUE, Maka fungsi ini memilih nilai yang ditransfer ke kernel 5x5. Jika kernel
select FALSE, Maka fungsi ini mengembalikan nilai yang ditransfer ke kernel
3x3.Panel konektor menampilkan tipe data default untuk fungsi polimorfik ini,
dimana :
• Kernel 5x5 adalah nilai bahwa fungsi ini kembali jika melewati nilai TRUE.
Kernel 5x5 dan Kernel 3x3 harus memiliki tipe yang sama, namun bisa
memiliki representasi numerik yang berbeda.
• Kernel Select adalah menentukan apakah fungsi mengembalikan nilai Kernel
5x5 atau Kernel 3x3 dalam output kernel yang akan masuk ke input konvolusi
dengan image. Jika kita memasang cluster kesalahan ke kernel select dan
terjadi kesalahan, cluster kesalahan melewati nilai TRUE ke fungsi. Jika
tidak, cluster kesalahan melewati nilai FALSE ke fungsi.
• Kernel 3x3 adalah nilai bahwa fungsi ini kembali jika melewati nilai FALSE.
t dan f harus memiliki tipe yang sama, namun bisa memiliki representasi
numerik yang berbeda.
• Kernel Output yang masuk ke Input Konvolusi dengan image adalah nilai
yang ditransfer ke Kernel 5x5 jika Kernel select TRUE. Kernel Output yang
masuk ke Input Konvolusi dengan image adalah nilai yang ditransfer ke
Kernel 3x3 jika Kernel select FALSE.
8. IMAQ Dispose digunakan untuk menghancurkan gambar dan membebaskan
ruang yang ditempatinya dalam memori. VI ini diperlukan untuk setiap gambar
yang dibuat dalam aplikasi untuk membebaskan memori yang dialokasikan ke
IMAQ Create VI. Kita dapat menggunakan IMAQ Dispose untuk setiap
panggilan ke IMAQ. Catatan Bila aplikasi LabVIEW dibatalkan, Maka gambar
yang dialokasikan tetap tersimpan dalam memori, dimana :
• Image gambar menentukan referensi ke gambar untuk dihancurkan.
• Error In (no error), kesalahan dalam (tidak ada kesalahan) menggambarkan
status kesalahan sebelum VI atau fungsi ini berjalan. Defaultnya tidak ada
error. Jika terjadi kesalahan sebelum VI atau fungsi ini berjalan, VI atau
fungsi melewati kesalahan dalam nilai ke kesalahan keluar. VI atau fungsi ini
berjalan normal hanya jika tidak terjadi kesalahan sebelum VI atau fungsi ini
berjalan. Jika terjadi kesalahan saat fungsi VI atau berjalan ini berjalan
normal, dan menetapkan status kesalahannya sendiri karena kesalahan keluar.
Gunakan Simple Error Handler atau General Error Handler VI untuk
menampilkan deskripsi kode kesalahan. Gunakan kesalahan dalam dan
kesalahan keluar untuk memeriksa kesalahan dan untuk menentukan perintah
eksekusi oleh kesalahan pengkabelan dari satu node ke kesalahan pada simpul
berikutnya.
• Error Out kesalahan keluar berisi informasi kesalahan Jika kesalahan dalam
menunjukkan bahwa kesalahan terjadi sebelum VI atau fungsi ini berjalan,
kesalahan keluar berisi informasi kesalahan yang sama. Jika tidak, ini
menggambarkan status kesalahan yang dihasilkan VI atau fungsi ini. Klik
kanan indikator error out pada panel depan dan pilih Jelaskan Kesalahan dari
menu jalan pintas untuk informasi lebih lanjut tentang kesalahan tersebut.
9. Simple Error Handle berfungsi untuk menunjukkan apakah terjadi kesalahan.
Jika terjadi kesalahan, VI ini mengembalikan deskripsi kesalahan dan secara
opsional menampilkan kotak dialog. VI ini memanggil General Error Handler VI
dan memiliki fungsi dasar yang sama dengan General Error Handler tetapi dengan
lebih sedikit pilihan. Kesalahan dalam menjelaskan kondisi error yang terjadi
sebelum node ini berjalan, maka harus melakukan proses sebagai berikut :
• Masukan ini berisi status, kode, dan sumber, yang memberikan kesalahan
standar pada fungsi elemen cluster.
Kesimpulan
Hasil dari gamabr tersebut adalah deteksi tepi dari gambar input yang dijalankan
menggunkan kernel 5 x 5.
3. Latihan 2-3 Korelasi
IMAQ Correlate berfungsi untuk menghitung cross correlation ternormalisasi antara source
image dengan template image.
a. Tampilan layar Panel

b. Tampilan Block Diagram

Keterangan :
1. IMAQ Create, setting Image Type menjadi Grayscale (U8)
2. IMAQ ReadFile, klik kanan pada File Path kemudian Create Control.
3. IMAQ Resample berfungsi untuk membuat ulang gambar ke ukuran yang
ditentukan pengguna. Kita bisa menggunakan VI ini untuk menampilkan gambar
yang dikurangi atau diperbesar. klik kanan pada input X Resolution, Create
constant 200. Klik kanan pada input Y Resolution, Create constant 200, dimana :
- X Resolution menentukan resolusi horizontal gambar.
- Y Resolusion menentukan resolusi vertikal gambar.
- Image Src adalah referensi ke gambar sumber.
- Image Dst Out adalah referensi ke gambar tujuan. Jika Image Dst terhubung,
Image Dst Out sama dengan Image Dst. Jika tidak, Image Dst Out mengacu
pada gambar yang direferensikan oleh Image Src.
4. Image Display berfungsi untuk menampilkan gambar dengan cara browsing file
yang akan dimasukkan.
5. Merge Error digunakamn untuk menggabungkan kluster kesalahan I/O dari
fungsi yang berbeda. Dimana :
- Error In 0 menjelaskan kondisi kesalahan pertama untuk memeriksa
kesalahan.
- Error In 1 menjelaskan kondisi kesalahan kedua untuk memeriksa
kesalahan.
- Error Out berisi kesalahan pertama yang ditemukan dalam kesalahan
dalam 0, kesalahan dalam 1, dan berlanjut dalam urutan menurun untuk
setiap input yang ditransfer. Jika VI tidak menemukan kesalahan,
kesalahan berisi peringatan pertama yang ditemukan.
- Merge Error Details , ketika menempatkan fungsi ini pada diagram blok,
ia memiliki dua input yang tersedia. Dapat menambahkan input tambahan
ke node dengan mengklik kanan input dan memilih Tambahkan Input dari
menu pintasan atau dengan mengukur ulang node. Untuk menghapus
input, klik kanan input dan pilih Hapus Input dari menu pintasan atau
gunakan penanganan pengubah ukuran untuk mengubah ukuran node.
6. IMAQ Correlate digunakan untuk menghitung korelasi silang yang dinormalisasi
antara gambar sumber dan gambar template.
- Image Src adalah referensi ke gambar sumber
- Image Template adalah referensi ke template. Menggunakan gambar 8-
bit. Pusat template digunakan sebgaai asal unutk korelasi.
- Image Dst merupakan referensi ke gambar tujuan.
- Image Dst Out merupakan referensi ke tujuan. Jika image Dst terhubung,
maka image Dst out sama dengan Image Dst. Jika tidak, Image Dst Out
mengacu pada gambar yang dirujuk oleh Image Src.
7. OR
8. IMAQ Dispose
9. Simple Error Handle

Kesimpulan :

Dari percobana diatas, hasil dari correlate adalah menghitung korelasi silang dari 2
gambar sumber dan gambar template.

4. Latihan 2-4 Low Pass Filter

IMAQ LowPass berfungsi untuk menghitung perbedaan antara piksel yang sedang
diproses dengan piksel sekitarnya. Jika piksel yang diproses memiliki perbedaan
lebih dari persentase tertentu, maka piksel tersebut akan diisi nilai rata-rata dari
piksel-piksel sekitarnya

a. Tampilan Layar Panel


b. Tampilan Block Diagram

Keterangan :
1. IMAQ Create, setting Image Type menjadi Grayscale (U8).
• Nama Gambar Source & Lowpass adalah nama yang terkait dengan gambar
yang dibuat. Setiap gambar yang dibuat harus memiliki nama yang unik.
• Jenis Gambar menentukan jenis gambar. Pilih Grayscale (U8).
2. Merge Error
3. IMAQ Readfile, klik kanan pada File Path kemudian create Control.
4. Image Display
5. IMAQ LowPass berfungsi untuk menghitung variasi antar-piksel antara piksel
yang sedang diproses dan piksel-piksel di sekitarnya. Jika piksel yang sedang
diproses memiliki variasi yang lebih besar dari persentase tertentu, itu diatur ke
nilai piksel rata-rata seperti yang dihitung dari piksel tetangga. Klik kanan pada
input size & tolerance, kemudian create control
- Ukuran & Toleransi adalah cluster yang menentukan ukuran X, Y
Size, dan% Tolerance.
- Ukuran X adalah ukuran sumbu matriks horizontal. Defaultnya adalah 3.
- Ukuran Y adalah ukuran sumbu matriks vertikal. Defaultnya adalah 3.
- Toleransi adalah variasi maksimum yang diperbolehkan. Standarnya
adalah 40%.
- Image Src merupakan referensi ke sumber gambar
- Image Dst merupakan referensi ke gambar tujuan
6. OR
7. IMAQ Dispose digunakan untuk Menghancurkan gambar dan membebaskan
ruang yang ditempatinya dalam memori. VI ini diperlukan untuk setiap gambar
yang dibuat dalam aplikasi untuk membebaskan memori yang dialokasikan ke
IMAQ Create VI. Jalankan IMAQ Buang hanya ketika gambar tidak lagi
diperlukan dalam aplikasi.
8. Simple Error Handle

Kesimpulan :
Hasil dari percobaan diatas adalah hasil dari source image menghasilkan output gambar
yang ada salah satu garisnya kurang penuh atau samar.

Latihan 2.5 Deteksi Tepi


IMAQ EdgeDetection berfungsi untuk mendeteksi tepi dari sebuah image.

1. Tampilan Layar Panel


2. Tampilan Block Diagram

Keterangan :
1. IMAQ Create, setting Image Type menjadi Grayscale (U8).
2. Merge Errors
3. IMAQ ReadFile, klik kanan pada File Path kemudian create Control.
4. Image Display
5. IMAQ EdgeDetection mengekstrak kontur (mendeteksi tepi) dalam nilai tingkat
abu-abu. Setiap gambar yang terhubung ke input Image Dst harus tipe gambar yang
sama yang terhubung ke Image Src. Tipe gambar yang terhubung ke input Image
Mask harus berupa gambar 8-bit
- Threshold Value / Nilai Ambang Batas adalah nilai piksel minimum yang akan
muncul pada gambar yang dihasilkan. Sangat jarang menggunakan nilai lebih
besar dari 0 untuk jenis pemrosesan ini karena hasil dari proses ini biasanya sangat
gelap dan tidak terlalu dinamis. Defaultnya adalah 0.
- Image Src adalah referensi ke sumber gambar.
- Gambar Dst adalah referensi ke gambar tujuan.
- Error in (no error) / Kesalahan dalam (tidak ada kesalahan) menggambarkan
status kesalahan sebelum VI atau fungsi ini berjalan
- Metode menentukan jenis filter deteksi tepi untuk digunakan. Standarnya adalah
Diferensiasi.
- Image Dst Out adalah referensi ke gambar tujuan. Jika Image Dst terhubung,
Image Dst Out sama dengan Image Dst. Jika tidak, Image Dst Out mengacu
pada gambar yang direferensikan oleh Image Src.
- Error out berisi informasi kesalahan Jika kesalahan dalam menunjukkan bahwa
kesalahan terjadi sebelum VI atau fungsi ini berjalan.
6. OR
7. IMAQ Dispose
8. Simple Error Handler

Kesimpulan :
Dari percobaan diatas, dapat disimpulkan bahwa gambar yang menggunakan Mentod
Differentation menghasilkan gambar yang lebih gelap dan terlihat sketsa.

TUGAS
Modifikasi Konvolusi dengan cara menambahkan IMAQ Get Kernel

1. Tampilan layar
2. Tampilan Block Diagram

Keterangan:
Dalam program ini, ditambahkan IMAQ GetKernel untuk menampilkan kernel tanpa
mengisi secara manual, dengan menghilangkan select pada program sebelumnya.

Anda mungkin juga menyukai