Computer Vision adalah ilmu dan
teknologi mesin yang melihat, di mana mesin mampu mengekstrak informasi dari
gambar yang diperlukan untuk menyelesaikan tugas tertentu. Sebagai suatu
disiplinilmu, visi komputer berkaitan dengan teori di balik sistem buatan bahwa
ekstrak informasi dari gambar. Data gambar dapat mengambil banyak bentuk,
seperti urutan video, pandangan dari beberapa kamera, atau data multi-dimensi
dari scanner medis. Sedangkan sebagai disiplin teknologi, computer vision
berusaha untuk menerapkan teori dan model untuk pembangunan sistem computer
vision.
Computer Vision didefinisikan sebagai
salah satu cabang ilmu pengetahuan yang mempelajari bagaimana komputer dapat
mengenali obyek yang diamati. Cabang ilmu ini bersama Artificial Intelligence
akan mampu menghasilkanVisual Intelligence System. Perbedaannya adalah Computer
Vision lebih mempelajari bagaimana komputer dapat mengenali obyek yang diamati.
Namunkomputer grafik lebih ke arah pemanipulasian gambar (visual) secara
digital. Bentuk sederhana dari grafik komputer adalah grafik komputer 2D yang
kemudian berkembang menjadi grafik komputer 3D, pemrosesan citra, dan pengenalan
pola. Grafik komputer sering dikenal dengan istilahvisualisasi data.
Computer Vision adalah kombinasi antara :
·
Pengolahan Citra (Image Processing), bidang yang
berhubungan dengan proses transformasi citra/gambar (image). Proses ini bertujuan
untuk mendapatkan kualitas citra yang lebih baik.
·
Pengenalan Pola (Pattern Recognition), bidang ini
berhubungan dengan proses identifikasi obyek pada citra atau interpretasi
citra. Proses ini bertujuan untuk mengekstrak informasi/pesan yang disampaikan
oleh gambar/citra.
Fungsi/Proses Computer Vision
1. Proses
penangkapan citra (Image Acquisition)
·
Image Acqusition pada manusia dimulai dengan mata,
kemudian informasi visual diterjemahkan ke dalam suatu format yang kemudian
dapat dimanipulasi oleh otak.
·
Senada dengan proses di atas, computer vision
membutuhkan sebuah mata untuk menangkap sebuah sinyal visual.
·
Umumnya mata pada computer vision adalah sebuah kamera
video.
·
Kamera menerjemahkan sebuah scene atau image.
·
Keluaran dari kamera adalah berupa sinyal analog,
dimana frekuensi dan amplitudonya (frekuensi berhubungan dengan jumlah sinyal
dalam satu detik, sedangkan amplitudo berkaitan dengan tingginya sinyal listrik
yang dihasilkan) merepresentasikan detail ketajaman (brightness) pada scene.
·
Kamera mengamati sebuah kejadian pada satu jalur dalam
satu waktu, memindainya dan membaginyamenjadi ratusan garis horizontal yang
sama.
·
Tiap‐tiap garis membuat sebuah sinyal analog yang
amplitudonya menjelaskan perubahan brightness sepanjang garis sinyal tersebut.
·
Kemudian sinyal listrik ini diubah menjadi bilangan
biner yang akan digunakan oleh komputer untuk pemrosesan.
·
Karena komputer tidak bekerja dengan sinyal analog,
maka sebuah analog‐to‐digital converter (ADC), dibutuhkan untuk memproses
semua sinyal tersebut oleh komputer.
·
ADC ini akan mengubah sinyal analog yang
direpresentasikan dalam bentuk informasi sinyal tunggal ke dalam sebuah aliran
(stream) sejumlah bilangan biner.
·
Bilangan biner ini kemudian disimpan di dalam memori
dan akan menjadi data raw yang akan diproses.
2. Proses
pengolahan citra (Image Processing)
·
Tahapan berikutnya computer vision akan melibatkan
sejumlah manipulasi utama (initial manipulation) dari data binary tersebut.
·
Image processing membantu peningkatan dan perbaikan
kualitas image, sehingga dapat dianalisa dan di olah lebih jauh secara lebih
efisien.
·
Image processing akan meningkatkan perbandingan sinyal
terhadap noise (signal‐to‐noise ratio = s/n).
·
Sinyal‐sinyal tersebut adalah informasi yang akan
merepresentasikan objek yang ada dalam image.
·
Sedangkan noise adalah segala bentuk interferensi,
kekurangpengaburan, yang terjadi pada sebuah objek.
·
3. Analisa
data citra (Image Analysis)
·
Image analysis akan mengeksplorasi scene ke dalam
bentuk karateristik utama dari objek melalui suatu proses investigasi.
·
Sebuah program komputer akan mulai melihat melalui
bilangan biner yang merepresentasikan informasi visual untuk mengidentifikasi
fitur‐fitur spesifik dan
karekteristiknya.
·
Lebih khusus lagi program image analysis digunakan
untuk mencari tepi dan batas‐batasan objek dalam image.
·
Sebuah tepian (edge) terbentuk antara objek dan latar
belakangnya atau antara dua objek yang spesifik.
·
Tepi ini akan terdeteksi sebagai akibat dari perbedaan
level brightness pada sisi yang berbeda dengan salah satu batasnya.
·
4. Proses
pemahaman data citra (Image Understanding)
·
Ini adalah langkah terakhir dalam proses computer
vision, yang mana sprsifik objek dan hubungannya diidentifikasi.
·
Pada bagian ini akan melibatkan kajian tentang
teknik-teknik artificial intelligent.
·
Understanding berkaitan dengan template matching yang
ada dalam sebuah scene.
·
Metoda ini menggunakan program pencarian (search
program) dan teknik penyesuaian pola (pattern matching techniques).
Contoh Aplikasi Computer Vision
1. Psychology, AI – exploring representation and computation in natural vision
2. Optical Character Recognition – text reading
3. Remote Sensing – land use and environmental monitoring
4. Medical Image Analysis – measurement and interpretation of many types
of images
5. Industrial Inspection – measurement, fault checking, process control
6. Robotic – navigation and control
Middleware Telematika
Dunia teknologi informasi, terminologi middleware adalah istilah umum dalam
pemrograman komputer yang digunakan untuk menyatukan, sebagai penghubung, ataupun
untuk meningkatkan fungsi dari dua buah progaram / aplikasi yang telah ada.
Middleware merupakan software yang berfungsi sebagai lapisan konversi atau
penerjemah. Middleware didefinisikan sebagai sebuah aplikasi yang secara logic
berada diantara lapisan aplikasi (application layer) dan lapisan data dari
sebuah arsitektur layer-layer TCP/IP. Middleware bisa juga disebut protokol.
Protokol komunikasi middleware mendukung layanan komunikasi aras tinggi.
Perkembangan middleware dari waktu ke waktu dapat dikatagorikan sebagai
berikut:
On Line Transaction Processing (OLTP)
merupakan perkembangan awal dari koneksi antar remote database. Pertama
kali ditemukan tahun 1969 oleh seorang engineer di Ford, kemudian diadopsi oleh
IBM hingga kini dikenal sebagai proses OLTP. DIGITAL ACMS merupakan contoh
lainnya yang sukses pada tahun 70-an dan 80-an. UNIX OLTP lainnya seperti:
Encina, Tuxedo pada era 80-an, serta DIGITAL CICS untuk UNIX yang
memperkenalkan konsep dowsizing ke pasar.
Remote Procedure Call (RPC)
menyediakan fasilitas jaringan secara transparan. Open Network
Computing (ONC) merupakan prototipe pertama yang diperkenalkan awal tahun
70-an. Sun unggul dalam hal ini dengan mengeluarkan suatu standar untuk koneksi
ke internet. Distributed Computing Environment (DCE) yang dikeluarkan oleh Open
Systems Foundation (OSF) menyediakan fungsi-fungsi ONC yang cukup kompleks dan
tidak mudah untuk sis administrasinya.
Tujuan Umum Middleware Telematika
1.Middleware adalah S/W penghubung yang berisi sekumpulan layanan yang
memungkinkan beberapa proses dapat berjalan pada satu atau lebih mesin untuk
saling berinteraksi pada suatu jaringan.
2.Middleware sangat dibutuhkan untuk bermigrasi dari aplikasi mainframe ke
aplikasi client/server dan juga untuk menyediakan komunikasi antar platform
yang berbeda.
Middleware yang paling banyak dipublikasikan :
•Open Software Foundation's Distributed Computing Environment (DCE),
•Object Management Group's Common Object Request Broker Architecture (CORBA)
•Microsoft's COM/DCOM (Component Object Model).
Perkembangan Middleware
Perkembangan dari waktu ke waktu dapat dikatagorikan sebagai berikut:
On Line Transaction Processing (OLTP) : merupakan
perkembangan awal dari sebuah koneksi antar remote database. Pertama kali
ditemukan tahun 1969 oleh seorang engineer di Ford, kemudian diadopsi oleh IBM
hingga kini dikenal sebagai proses OLTP. DIGITAL ACMS merupakan contoh lainnya
yang sukses pada tahun 70-an dan 80-an. UNIX OLTP lainnya seperti: Encina,
Tuxedo pada era 80-an, serta DIGITAL CICS untuk UNIX yang memperkenalkan konsep
dowsizing ke pasar.
Remote Procedure Call (RPC) : menyediakan
fasilitas jaringan secara transparan. Open Network Computing (ONC) merupakan
prototipe pertama yang diperkenalkan awal tahun 70-an. Sun lebih unggul dalam
hal ini dengan mengeluarkan suatu standar untuk koneksi ke internet.
Distributed Computing Environment (DCE) yang dikeluarkan oleh Open Systems
Foundation (OSF) menyediakan fungsi-fungsi ONC yang cukup kompleks dan tidak
mudah untuk sistem administrasinya.
Common Object Request Broker Architecture (CORBA): merupakan suatu object-oriented dari middleware yang menggabungkan
fungsi brokering, RPC, dan inheritance. Digital ObjectBroker merupakan salah
satu contoh dari CORBA.
Arsitektur Middleware
Arsitektur middleware merupakan sekumpulan S/W terdistribusi yang menempati
lapisan antara aplikasi dan sistem operasi serta layanan jaringan di suatu node
pada jaringan computer.
Layanan middleware menyediakan kumpulan fungsi API (Application Programming
Interfaces) yang lebih tinggi daripada API yang disediakan sistem operasi dan
layanan jaringan yang memungkinkan suatu aplikasi dapat :
- Mengalokasikan suatu layanan secara transparan pada jaringan.
- Menyediakan interaksi dengan aplikasi atau layanan lain.
- Tidak tergantung dari layanan jaringan.
- Handal dan mampu memberikan suatu layanan.
- Diperluas (dikembangkan) kapasitasnya tanpa kehilangan fungsinya.
Tipe Layanan Middleware
Ada tiga tipe layanan yaitu :
1. Layanan Sistem Terdistribusi,
a. Komunikasi kritis, program-to-program, dan layanan manajemen data.
b. RPC, MOM (Message Oriented Middleware) dan ORB.
2. Layanan Application,
a. Akses ke layanan terdistribusi dan jaringan
b. Yang termasuk : TP (transaction processing) monitor dan layanan
database, seperti Structured Query Language (SQL).
3. Layanan Manajemen Middleware, Memungkinkan aplikasi dan fungsi dimonitor
secara terus menerus untuk menyakinkan unjuk kerja yang optimal pada lingkungan
terdistribusi.
Tujuan utama layanan middleware adalah untuk membantu memecahkan
interkoneksi beberapa aplikasi dan masalah interoperabilitas. Bagaimana pun
juga middleware bukanlah “obat mujarab” :
• Ada jarak antara prinsip dan praktek. Beberapa middleware membuat suatu
aplikasi tergantung pada suatu produk tertentu.
• Sedikitnya jumlah middleware menjadikan rintangan tersendiri. Untuk
menjaga lingkungan komputasi mudah diatur, pengembang biasanya memilih sejumlah
kecil layanan yang memenuhi kebutuhan mereka.
• Selama layanan middleware masih memunculkan abtraksi pemrograman
terdistrbusi, middleware masih akan memberikan bagi si pengembang suatu pilihan
rancangan aplikasi yang cukup sulit. Contoh : pengembang masih harus menentukan
layanan atau fungsi apa yang harus diletakkan pada client ataupun server.