Pengolahan Citra Digital
Citra digital dapat didefinisikan sebagai fungsi dua variabel,
f(x,y), dimana x dan y adalah
koordinat spasial dan nilai
f(x,y)
adalah intensitas citra pada koordinat tersebut, hal tersebut
diilustrasikan pada gambar 2.1. Teknologi dasar untuk menciptakan dan menampilkan warna
pada citra digital berdasarkan pada penelitian bahwa sebuah warna merupakan kombinasi dari
tiga warna dasar, yaitu merah, hijau, dan biru (
Red, Green, Blue
RGB tersebut dapat dijelaskan pada 2.2.
x
y
f(x1,y1)
x1
y1
Gambar 2.1. Citra Digital
Sebuah citra diubah ke bentuk digital agar dapat disimpan dalam memori komputer atau media
lain. Proses mengubah citra ke bentuk digital bisa dilakukan dengan beberapa perangkat,
misalnya
scanner, kamera digital, dan handycam
bentuk digital (selanjutnya disebut citra digital), bermacam-macam proses pengolahan citra
dapat diperlakukan terhadap citra tersebut.
7
Komponen Merah (Red)
Komponen Hijau (Green)
Komponen Biru (Blue)
Warna Komposisi RGB
Gambar 2.2. Komposisi Warna RGB
Pengolahan citra digital dapat dilakukan dengan cara-cara sebagai berikut :
Representasi dan permodelan citra
Peningkatan kualitas citra
Restorasi citra
Analisis citra
Rekonstruksi citra
Kompresi citra
Dalam tugas akhir ini, pengolahan citra digital difokuskan pada teknik kompresi citra.
2.2.
Kompresi Citra
Kompresi citra bertujuan untuk meminimalkan jumlah bit yang diperlukan untuk merepresentasikan
citra. Apabila sebuah foto berwarna berukuran 3 inci x 4 inci diubah ke bentuk
digital dengan tingkat resolusi sebesar 500
dot per inch
500 = 3.000.000 dot ( piksel). Setiap piksel terdiri dari 3
byte dimana masing-masing
byte
merepresentasikan warna merah, hijau, dan biru. sehingga citra digital tersebut memerlukan
volume
penyimpanan sebesar 3.000.000 x 3 byte +1080 = 9.001.080 byte
jumlah
byte yang diperlukan untuk menyimpan format (header
Citra tersebut tidak bisa disimpan ke dalam disket yang berukuran 1.4 MB. Selain itu, pengiriman
citra berukuran 9 MB memerlukan waktu lebih lama. Untuk koneksi internet
dial-up
8
(56 kbps), pengiriman citra berukuran 9 MB memerlukan waktu 21 menit. Untuk itulah
diperlukan kompresi citra sehingga ukuran citra tersebut menjadi lebih kecil dan waktu pengiriman
citra menjadi lebih cepat. Citra yang belum dikompres disebut citra mentah (
raw image)
Sementara citra hasil kompresi disebut citra terkompresi(
compressed image)
pengiriman dan penyimpanan citra tersebut diilustrasikan pada gambar 2.3.
foto berwarna
3 x 4
scanner
500 dpi
Citra
Analog
Citra Digital
3 MegaPiksel
Dial Up 56 kbps
= 21 menit
= Rp. 3150,-
Citra Digital
9 MB
STOP
Disket
1.44 MB
Gambar 2.3 Proses Konversi citra analog ke citra digital beserta pengirimannya
Kompresi citra dikembangkan untuk memudahkan penyimpanan dan pengiriman citra. Teknik
kompresi yang ada sekarang memungkinkan citra dikompresi sehingga ukurannya menjadi
jauh lebih kecil daripada ukuran asli. Ada dua tipe utama kompresi data, yaitu kompresi tipe
lossless
dan kompresi tipe lossy. Kompresi tipe lossy
yang hilang selama proses kompresi. Akibatnya kualitas data yang dihasilkan jauh lebih rendah
daripada kualitas data asli. Sementara itu, kompresi tipe
lossless
informasi setelah proses kompresi terjadi, akibatnya kualitas citra hasil kompresi tidak
menurun. Namun demikian, rasio kompresi yang digunakan untuk kompresi tipe
lossless
lebih kecil daripada rasio kompresi pada kompresi tipe
lossy
.
9
Parameter-parameter citra yang penting dalam proses kompresi diantaranya adalah sebagai
berikut :
2.2.1.
Resolusi citra menyatakan ukuran panjang kali lebar dari sebuah citra. Resolusi citra
biasanya dinyatakan dalam satuan piksel . piksel. Semakin tinggi resolusi sebuah
citra, semakin baik kualitas citra tersebut. Namun, tingginya resolusi menyebabkan
semakin banyaknya jumlah bit yang diperlukan untuk menyimpan dan mentransmisikan
data citra tersebut.
2.2.2.
Kedalaman bit menyatakan jumlah bit yang dipelukan untuk mrepresentasikan tiap
piksel citra pada sebuah
frame. Kedalaman bit biasanya dinyatakan dalam satuan
bit/
piksel. Semakin banyak jumlah
bit
citra, maka semakin baik kualitas citra tersebut.
2.2.3.
Redundansi merupakan suatu keadaan dimana representasi suatu elemen data tidak
bernilai signifikan dalam merepresentasikan keseluruhan data. Keadaan ini menyebabkan
data keseluruhan dapat direpresentasikan secara lebih kompak dengan cara
menghilangkan representasi dari sebuah elemen data yang redundan. Redundansi
yang terdapat pada citra statik adalah redundansi spasial.
Metode kompresi citra berdasarkan redundansi spasial diantaranya adalah sebagai
berikut :
Subsampling
Subsampling
diperlukan untuk merepresentasikan suatu citra.
Subsampling
dua cara. Cara pertama adalah mengambil piksel-piksel tertentu dari citra, misal
piksel-piksel pada baris dan kolom saja. Cara kedua adalah dengan mengambil ratarata
dari kelompok piksel dan menggunakan nilai tersebut sebagai ganti nilai kelom-
10
pok piksel ini. Cara ini lebih kompleks, tetapi menghasilkan kualitas yang lebih baik.
Subsampling
sebanding dengan pengurangan resolusi.
Pengurangan kedalaman bit
Metode ini dilakukan dengan mengurangi jumlah bit yang digunakan untuk mrerepresentasikan
suatu piksel. Misalnya dengan mengurangi kedalaman bit dari 16 bit/
piksel menjadi 8 bit/piksel. Metode ini mengurangi kualitas citra.
Transformation Coding
Transformation coding
frekuensi.Cara ini menghasilkan data yang lebih mudah diproses untuk kompresi
lebih lanjut. Transformasi yang populer digunakan antara lain
Transform
Transform
Sekarang ini, kompresi citra yang sering digunakan adalah
dikembangkan oleh Joint Photographic Expert Group
kompresi-nya yang bagus. Kompresi
JPEG berdasarkan pada Discrete Cosine Transfor
.
Pada tahun 1997, komite
JPEG
citra. Sejak saat itulah
JPEG
Berikut ini adalah contoh format citra baik yang
lossless maupun
lossy
Tabel 2.1. Macam-macam Format Citra
8
Ekstensi Nama Keterangan
bmp Windows Bitmap Biasanya digunakan oleh aplikasi dan
sistem opeasi Microsoft Windows.
Merupakan kompresi tipe
lossless
gif Graphics Interchange
Format
Gif biasanya digunakan di website.
Format gif mendukung citra bergerak.
Namun format gif hanya mendukung
255 warna tiap frame. Format gif juga
mendukung citra transparan. Format
gif merupakan kompresi tipe
lossy
.
11
Ekstensi Nama Keterangan
jpg/jpeg Joint Photographic Experts
Group
JPEG biasanya digunakan untuk foto
atau citra di website. JPEG menggunakan
kompresi tipe
lossy
JPEG 2000 bisa bervariasi tergantung
setting kompresi yang digunakan.
Kompresi JPEG berbasis DCT(
Cosine Transform
jp2/jpg2/j2k Joint Photographic Experts
Group 2000
Merupakan pengembangan dari JPEG
yang berbasis transformasi wavelet.
Format ini mendukung kompresi tipe
lossless
dan lossy
JPEG 2000 dalam berbagai aplikasi
masih kurang, disebabkan kebutuhan
hardware yang tangguh dan paten.
pbm Portable Bitmap Format Merupakan format citra hitam putih
yang sederhana. PBM memerlukan 1
bit tiap pixel. Tidak seperti format citra
lainnya, format PBM merupakan
text
pengolah text. Format PBM
merupakan bagian dari PNM (Portable
Pixmap File Format).
pgm Portable Graymap Format Merupakan format citra abu-abu yang
sederhana. Format PGM memerlukan
8 bit tiap pixel. PGM merupakan citra
mentah dengan kompresi tipe
lossless
bagian dari PNM (Portable Pixmap
File Format).
ppm Portable Pixmap Format Merupakan format citra berwarna
yang sederhana. PPM memerlukan 24
bit tiap pixel. PPM merupakan citra
mentah dengan kompresi tipe
lossless
bagian dari PNM (Portable Pixmap
File Format).
12
Ekstensi Nama Keterangan
png Portable Network Graphics
PNG adalah format citra dengan kompresi
tipe
lossless
bit berkisar antara 1 sampai dengan
32. PNG didesain untuk menggantikan
format citra GIF untuk diimplementasikan
di website. Algoritma kompresi
PNG tidak memerlukan paten karena
sudah menjadi
public domain
tahun 2003.
tiff Tagged Image File Format Merupakan format citra yang sudah
digunakan sejak dulu. Mendukung
kompresi tipe
lossless dan
lossy.
2.3. JPEG-2000
JPEG-2000 merupakan pengkodean citra baru yang dikembangkan oleh ITU (
Telecomunication Union
) dan ISO (International Organization for Standardization
2000 menawarkan beberapa kelebihan dibandingkan JPEG. Satu kelebihan utama dari JPEG
2000 adalah mendukung kompresi
lossless dan lossy
JPEG 2000 adalah sebagai berikut :
Mendukung kompresi
lossless dan
lossy
Memiliki
performance
Memiliki transmisi yang bersifat progresif pada kualitas, resolusi, komponen, dan lokasi
spasial
Memiliki akses ke
bitstream
Mampu melakukan pemrosesan pada
domain
Mendukung peningkatan kualitas progresif pada ROI (
Region Of Interest
Memiliki kebutuhan memori yang kecil.
Proses
encoding
beberapa pengolahan
bitstream
JPEG 2000.
13
2.1 Component Transform
The component transform provides decorrelation among
image components (typically R, G, B). This improves the
compression and allows for visually relevant quantization.
When the reversible path is used, the Reversible
Component Transform (RCT) is used, which maps integers
to integers. When the irreversible path is used the YCbCr
transform is used as is common with the original JPEG.
2.2 Wavelet Transform
There are two wavelet transforms possible in the standard.
Both provide lower resolution images and spatial
decorrelation of the images to improve compression. The
9×7 filter provides the highest compression, while the 5×3
filter provides lower complexity and allows lossless
compression.
2.3 Quantization
The trade-off between rate and distortion is obtained by
quantization. Wavelet coefficients can be divided by a
different value for each subband (similar to JPEG).
Alternatively, portions of the coded data can be discarded
(decreasing rate and quality). This discarding of data can be
done in a variety of creative ways, see [2].
2.4 Context Model
The context model divides the bits of the quantized wavelet
coefficients into groups with similar statistics so the
arithmetic coder can efficiently compress them. Each
bitplane of a coefficient is processed by one of three coding
passes as described in [1].
2.5 Arithmetic Coder
JPEG 2000 uses the MQ binary arithmetic coder to provide
lossless compression of each coding pass of quantized
wavelet coefficients.
2.6 Bitstream Ordering
Portions of coded data (output from the arithmetic coder)
are collected into packets. These packets have a
compressed header.
While the codestream syntax allows data to be accessed in
almost any order, there must be some order to the data.
Various orders are possible to allow progression by
resolution, or quality, or location, or some combination of
these.
2.7 Codestream syntax
The codestream consists of marker segments and coded
data. The marker segments allow the determination of the
location of the coded data corresponding to a given spatial
location, resolution, and quality in the image.
2.8 File format
Any data which is related to the image, but is not needed to
reconstruct samples of “color” components of the image, is
stored in the file format. The optional file format is
provided to prevent the proliferation of non-standard
proprietary formats as happened with the original JPEG
standard. The file format begins with a unique signature,
has a profile indicator, and repeats the width, height, and
depth information from the codestream. Optionally the file
format may contain a limited color specification, capture
and display resolution, intellectual property rights
information, and some additional meta-data [4].
3. JPEG 2000 PARTS
There will actually be many parts of the JPEG-2000
standard released separately. While most people will be
interested in the “Core Coding System” of Part I, the
reasons for all the parts are described in this section.
Figure 1 -
JPEG 2000 Encoder Block Diagram
Coefficient
bit modeling
(Annex D)
Codestream syntax (Annex A)
Quantization
(Annex E)
Wavelet
transform
(Annex F)
Component
transform
(Annex G)
Data
ordering
(Annex B)
File format (Annex I)
Arithmetic
entropy
coding
(Annex C)
Encode
Preferences
ROI
(Annex H)
JPEG 2000
bitstream
Image
Source
Gambar 2.4. Blok Diagram
Encoding JPEG 200010
trellis coded quantization and non-mallat decompositions
(from Part II), JPEG 2000 will compress satellite imagery
at low bitrates far better than any current products.
5. CONCLUSIONS
The definition of JPEG-2000 is of course the standard. ISO
will sell copies of this specification but only after the
“International Standard” stage is reached. Free software
should soon be available so the features can be tested by
anyone.
JPEG-2000 should be a welcome standard for applications
requiring either higher quality or lower bitrates, or any of
the new features provided. JPEG will likely continue to be
used in low complexity applications for bitrates at which
JPEG was tuned.
6. REFERENCES
1. D. Taubman, E. Ordentlich, M. Weinberger, G. Seroussi,
I. Ueno, F. Ono, “Embedded Block Coding in JPEG
2000,” Proceedings ICIP-2000, Sept. 2000.
2. W. Zeng, S. Daly, and S. Lei, “Visual Optimization
Tools in JPEG 2000,” Proceedings ICIP-2000, Sept.
2000.
3. Charilaos Christopoulos, Joel Askelof and Mathias
Larsson, “Efficient Regions of Interest Coding Techniques
in the upcoming JPEG2000 still image coding
5. D. Santa Cruz, T. Ebrahimi, “An analytical study of
JPEG2000 functionalities,” Proceedings ICIP-2000,
Sept. 2000.
6. M. D. Adams, and F. Kossentini, “JasPer: A Software-
Based JPEG-2000 Codec Implementation,” Proceedings
ICIP-2000, Sept. 2000.
7. T. Fukuhara, “Motion-JPEG2000 standardization and
markets,” Proceedings ICIP-2000, Sept. 2000.
8. M. Marcellin, M. Gormish, A. Bilgin, M. Boliek, “An
Overview of JPEG-2000,”
Conference
Utah, Mar. 28-Mar. 30, 2000, p. 523-541.
Figure 2 -
Images available from a JPEG 2000 bitstream
Choice of Resolution
JPEG 2000 bitstream
Choice of Quality
(including lossless)
Choice of Spatial
Region
Choice of Color
Components
Gambar 2.5. Citra Hasil Pengolahan
bitstream JPEG 200010
2.4. Transformasi Wavelet Diskrit (
Discrete Wavelet Transform)
Transformasi
wavelet diskrit secara umum merupakan dekomposisi citra pada frekuensi
subband
citra tersebut. Komponen
subband transformasi wavelet
level dekomposisi. Implementasi transformasi
wavelet
cara melewatkan sinyal melalui sebuah tapis lolos rendah (
low pass filter/LPF)
lolos tinggi (
high pass filter/HPF) dan melakukan downsampling
filter. Proses tersebut dapat diilustrasikan pada gambar 2.6.
14
Gambar 2.6. Dekomposisi Wavelet diskrit Pada Sinyal Satu Dimensi
1
Output filter
yang memiliki respon impulse h(n) dan input
x(n) adalah :
∑
−∞
=
−
=
∗
k
k n h k x n h n x
) ( ) ( ) ( ) (
(2.1)
Sehingga
output dari LPF dan HPF setelah downsampling
adalah :
∑
−
=
n
HPF
n k g n x k y
n k g n x k y
) 2 ( ) ( ) (
(2.2)
∑
−
=
n
LPF
n k h n x k y
n k h n x k y
) 2 ( ) ( ) (
(2.3)
dimana g(n) dan h(n) adalah respon
impulse
Setelah operasi penambahan, bisa ditentukan masing-masing
output untuk setiap level
adalah sebagai berikut :
∑ ∞
−∞
+
− + + −
=
∧
k
k n h k LPF y k n g k HPF y n x
) 2 ( ) ( ) 2 ( ) ( ) (
(2.4)
Proses rekonstruksi citra tersebut diilustrasikan pada gambar 2.7.
15
Gambar 2.7. Rekonstruksi Transformassi
Wavelet Level n Pada Sinyal Satu Dimensi1
Untuk citra dua dimensi, prosedur dekomposisi
level
yang di-
filter pada arah mendatar kemudian diikuti oleh citra satu dimensi yang di-filter
arah tegak yang diutilisasi dengan menggunakan
filter tapis rendah dan filter
Proses dekomposisi transformasi
wavelet
2.8 . Contoh transformasi
wavelet
diilustrasikan pada gambar 2.9.
HL1
LH1 HH1
HL2
LH2 HH2
HL3
LH3 HH3
LL3
LL1
LL2
Gambar 2.8. Transformasi
Wavelet Untuk Citra Dua Dimensi1
16
(a). Citra Asli
(b). Dekomposisi Wavelet 1 Level
(c). Dekomposisi
Wavelet 2 Level
Gambar 2.9. Contoh Transformasi
Wavelet
2.5. Implementasi Encoder dan Decoder JPEG 2000 oleh ISO
Implementasi
encoder dan decoder
oleh
Work Group (WG) dari ISO-IEC
WG1).
Proyek penelitian yang dilakukan oleh work group tersebut diberi nama JJ2000.
Work-
17
group
tersebut merupakan kolaborasi dari Canon Research Centre France (CRF),
Federal Institute of Technology
JJ2000 memiliki beberapa keunggulan, diantaranya
7
Mendukung kompresi tipe
lossless
Mendukung beberapa format citra, diantaranya : PGM (raw – Portable GrayMap), PPM
(raw – Portable PixMap), PGX
Format PGM dan PPM sudah banyak didukung oleh software pengolah citra yang
umum dipakai. Untuk tugas akhir kali ini, format yang digunakan adalah PGM. Format
PGM mendukung kedalaman bit lebih dari 31 bpp.
Arsitektur yang digunakan oleh JJ2000 digambarkan pada diagram blok pada gambar 2.10.
(a). Diagram Blok Proses Encoding JJ2000
(b). Diagram Blok Proses Decoding JJ2000
Gambar 2.10. Diagram Blok Proses Encoding dan Decoding JJ2000
7
2.6. Komputasi Secara Terdistribusi
Komputasi secara terdistribusi (
distributed computing
berjalan pada komputer yang berbeda secara bersamaan. Komponen-komponen tersebut harus
mampu saling berkomunikasi dan didesain untuk beroperasi secara mandiri
9
sebuah aplikasi menjadi terdistribusi, perlu ada perubahan radikal pada aplikasi tersebut.
Komputasi secara terdistribusi sangat menarik karena operasi masing-masing komponen
menyebabkan komputer-komputer yang terlibat seringkali tidak aktif.
Tujuan dari komputasi secara terdistribusi adalah untuk menghubungkan pengguna dan
resource
pada sebuah proses yang terbuka, transparan, dan
scalable
. Idealnya, komputasi secara
18
terdistribusi mampu mengatur
fault tolerant dan lebih powerful
komputer
stand-alone
Sistem
scalable
pengguna,
resource, dan komputasi yang terlibat. Scalability
dimensi
9
:
Scalability
untuk mengakomodasi pertambahan beban
Scalability
tanpa peduli seberapa jauh pengguna dan
resource
berada
Scalability
terdistribusi, sistem terdistribusi tersebut tetap mudah dikelola dan digunakan
Sistem terdistribusi biasanya dikembangkan dalam
routing-routine sebagai berikut9
Corba (
Common Object Request Broker Architecture
Java™ RMI (
Java™ Remote Method Invocation
DCOM (
Distributed Component Object Model
RPC (
Remote Procedure Call
SOAP (
Simple Object Access Protocol
PVM (
Parallel Virtual Access
MPI (
Message Passing Interface
Pemrograman Soket (
Socket Programming
Pada tugas akhir kali ini, digunakan bahasa pemrograman Java™ dengan memanfaatkan
Java™ RMI dan Pemrograman soket pada Java™ dengan pertimbangan bahasa Java™ adalah
bahasa pemrograman yang multiplatform. Diantara semua
routine
sistem terdistribusi di atas, hanya Java™ RMI dan pemrograman soket yang mendukung
Java™.
JPEG. JPEG
(DWT) yang digunakan dalam kompresi JPEG 2000.
(DCT) yang diadopsi dalam standar kompresi JPEG dan


