• Tidak ada hasil yang ditemukan

Pengolahan Citra V Struktur Data and O

N/A
N/A
Protected

Academic year: 2018

Membagikan "Pengolahan Citra V Struktur Data and O"

Copied!
44
0
0

Teks penuh

(1)

Pengolahan Citra Digital

Struktur Data Citra Digital

&

(2)

Struktur Data Citra Digital

Citra dapat direpersentasikan kedalam

bentuk matrik atau array 2 dimensi.

Struktur data dari citra berupa elemen pada

matrik atau array 2 dimensi sama dengan

pixel (Picture Elemen) yang diamati atau

(3)

Operasi Dasar Citra

Citra sebagai matrik dapat dioperasikan

dengan cara, diantaranya :

1.

Operasi Aritmetika

2.

Operasi Logika (boolean)

(4)

Operasi Aritmetika

Menambah atau mengurangi Intensitas

Mengurangi atau menghilangkan noise

Operasi Dasar :

+ - / * pada 2 Citra

+ - / * pada 1 Citra dengan Konstanta/Skalar

(5)

Operasi Penambahan 2 Citra

C(x,y) = A(x,y) + B(x,y)

Penjumlahan 2 buah citra akan mengurangi noise pada citra

Algoritma Penjumlahan2Citra(citra A,B,C, Int x,y,c)

{Asumsi Citra adalah matrik ukuran x * y dengan total jumlah warna c} Kamus i,,j Integer

Jika hasil lebih besar dari kedalaman warna maka hasil sama dengan

(6)

Contoh

1

1

0

0

1

0

0

1

0

1

1

1

2

2

2

3

3

2

2

2

0

2

2

2

3

3

2

3

3

2

2

3

0

3

3

3

+

=

(7)

Operasi Pengurangan 2 Citra

C(x,y) = A(x,y) - B(x,y)

Pengurangan 2 buah citra dapat digunakan untuk deteksi perubahan

gambar sehingga dapat digunakan untuk deteksi gerak atau keamanan

Algoritma Pengurangan2Citra(citra A,B,C, Int x,y,c)

{Asumsi Citra adalah matrik ukuran x * y dengan total jumlah warna c} Kamus i,,j Integer

(8)

Contoh

3

3

1

1

0

0

1

0

0

1

2

2

1

1

0

0

1

0

0

1

0

1

1

1

2

2

1

1

0

0

1

0

0

0

1

1

-

=

(9)

Sistem Monitoring

Suatu citra dapat dinyatakan sebagai suatu matrik, maka jika suatu matrik x yang berisi gambar, maka algoritma untuk menampilkan gambar adalah sebagai berikut : Citra A adalah ruang kosong, sedangkan C citra hasil pengurangan.

A

B

(10)

Contoh

(11)

Algoritma Monitoring

Algoritma MinusImage(citra X,Y,Z;Int m,n,c)

{Asumsi citra m x n x c} Kamus i,,j : Integer

Rubah : Boolean

(12)

Operasi Citra & Skalar

B(x,y) = A(x,y) ± S

Digunakan untuk menaikan dan menurunkan intensitas cahaya.

Algoritma PenguranganCitraScalar(citra A,C, Int x,y,c,S)

{Asumsi Citra adalah matrik ukuran x * y dengan total jumlah warna c,

(13)

Contoh

1

2

3

0

2

3

0

2

3

1

2

1

0

0

1

0

0

1

0

0

1

0

0

0

-

=

4 x 3 x 4

2

(14)

Operasi Citra & Skalar

B(x,y) = A(x,y) ± S

Operasi Penambahan

Algoritma PenambahanCitraScalar(citra A,C, Int x,y,c,S)

 {Asumsi Citra adalah matrik ukuran x * y dengan total jumlah warna c, S

Skalar}

 {Jika melebih nilai c maka sama dgn c, sedangkan untuk pengurangan jika

(15)

Contoh

1

1

2

0

1

2

0

1

2

1

1

1

3

3

3

2

3

3

2

3

3

3

3

3

+

=

4 x 3 x 4

2

(16)

Kuis

1 2 3

0 1 2

3 0 1

2 3 0

1

2

3

0

2

2

3

2

1

2

2

0

A B

(17)

Operasi Perkalian

Operasi Perkalian 2 Citra

C[x,y] = A[x,y] * B[x,y]

Operasi ini biasanya digunakan untuk

(18)

Operasi perkalian dan pembagian Citra

dan Scalar

C[x,y] = A[x,y] * S akan menghasilkan intensitas lebih terang

Algoritma PerkalianCitraScalar(citra A,C, Int x,y,c,S)

{Asumsi Citra adalah matrik ukuran x * y dengan total jumlah warna c,

(19)

Operasi Pembagian Citra & Skalar

C[x,y] = A[x,y] / S akan menghasilkan intensitas lebih gelap

Algoritma PembagianCitraScalar(citra A,C, Int x,y,c,S)

{Asumsi Citra adalah matrik ukuran x * y dengan total jumlah

warna c, S Skalar}

Kamus I,j Int Deskripsi

For i  1 To x

For j  1 To Y

C[i,,j] = A[i,j] Div S Endfor

(20)

10 12 13

10 10

9

9

10

7

3

7

7

Div 2

(21)

Operasi Logika

T

F

T

T

F

F

F

F

T

F

T

T

T

F

T

F

Operasi Boolean pada Citra

Operasi ini menggunakan operator logika sebagai berikut : a.And

b.Or c.Not

T

F

F

T

And Or

(22)

Contoh

3 3 5 5 3 3 1 3 1

3 3 5 And 5 3 3 1 3 1

3 3 5 5 3 3 1 3 1

3 and 5  011 and 101 = 001 = 1

(23)

Soal

1

1

7

6

1

7

6

1

7

5

7

5

5

5

5

0

5

0

6

6

6

0

6

0

6

6

6

3 x 3 x 8

A 3 x 3 x 8B 3 x 3 x 8C

(24)

Invers

Algoritma InversImage(citra X;Int N,M,C)

{Asumsi citra N x M dengan warna C }

Kamus i,,j : Integer

Deskripsi

For i

1 To N

For j

1 To M

X[i,,j]

(C-1) - X[i,,j] {

X[i, j]

Not X[i, j]}

(25)

Contoh

0

1

1

3

0

0

1

2

4

4

1

2

5

4

4

4

15 14 14 12

15 15 14 13

11 11 14 13

10 11 11 11

Asli 4 x 4 x 16

Invers 4 x 4 x 16

(26)

Operasi Geometrik

Operasi yang digunakan dengan melakukan

manipulasi pada posisi pixel atau elemen matrik

sehingga berubah bentuk.

Operasi tersebut, diantaranya :

GetImage

ViewImage

Flipping (Pembalikan)

Translasi (Pergeseran)

Rotasi

Cutting (Pemotongan)

(27)

Operasi GetView

Operasi yang digunakan untuk mengambil citra

dengan membaca titik

Algoritma GetImage(citra X;Int N,M,C)

{Asumsi citra matrik nxm dengan warna c }

Kamus i,,j : Integer

Deskripsi

For i

1 To N

For j

1 To M

Getpixel(i, j,X[i, j])

Endfor

(28)

Operasi ViewImage

Operasi yang digunakan untuk membuat citra

dengan menempatkan titik pada layar.

Algoritma ViewImage(citra X;Int N,M,C)

{Asumsi citra matrik nxm dengan warna c }

Kamus i,,j : Integer

Deskripsi

For i

1 To N

For j

1 To M

Putpixel(i, j,X[i, j])

Endfor

(29)

Flipping

Operasi dibagi 2 (dua) yaitu :

Flipping Vertical, pertukaran pixel atas dan

bawah

Flipping Horizontal, pertukaran pixel kiri dan

(30)

Citra Asli Citra FV Citra FH

1 1 1 0 1 1 1 1 0 1 1 1

0 0 1 0 0 0 1 0 0 1 0 0

0 0 1 0 0 0 1 0 0 1 0 0

(31)

Algoritma Pembalikan

Flipping Vertical, pertukaran pixel atas dan bawah

Algoritma FVCitra(citra A,C;int n,m,c)

{Asumsi Citra matrik n x m x c} Kamus i,,j,k : Integer

Deskripsi

Flipping Horizontal, pertukaran pixel kiri dan kanan

Algoritma FHCitra(citra A,C;int n,m,c)

{Asumsi Citra matrik n x m x c} Kamus i,,j,k : Integer

(32)

Operasi Pergeseran

Operasi terhadap posisi pixel ke arah x dengan besaran m, dan ke arah y dengan besaran n.

B(x,y)  A(x+m,y+n)

1 2 3 4 1 2 3

1 2 3 4  1 2 3

1 2 3 4  1 2 3

1 2 3 4

(33)

Algortitma PergeseranCitra(citra A,C;int x,y,n,m,c)

{Asumsi Citra matrik x x y x c}

Kamus i,,j : Integer

Deskripsi

For i

1 To x

For j

1 to y

C[i, ,j]

A[i+m,,j+n]

(34)

Operasi Rotasi

Operasi yang digunakan untuk memindahkan posisi pixel dengan sudut θ.

Rumus Rotasi

x’ = X Cos θ – Y Sin θY’ = X Sin θ + Y Cos θSehingga

C[x,y] A[X Cos θ – Y Sin θ, X Sin θ + Y Cos θ]

Untuk mempermudah pemahaman dalam perotasian dibatasi pembahsan dengan menggunakan rotasi dengan sudut 900. Ratosi dapat dilakukan

berdasarkan arah rotasi yaitu berdasarkan arah jarum jam atau sebaliknya.

Y

C

A θ

(35)

1 1 1 0 1 0 0 1 1 1 1 1 0 0 0 1

0 0 1 0 1 0 0 1 0 1 0 0 1 1 1 1

0 0 1 0 1 1 1 1 0 1 0 0 1 0 0 1

1 1 1 1 1 0 0 0 0 1 1 1 1 0 0 1

A B C D

A B C D A : Asli

B : 900 Arah Jarum Jam C : 1800 Arah Jarum Jam

(36)

Algoritma Rotasi

(citra C,A; Int n,m,c)

(37)

Algoritma Rotasi

Algoritma Rotasi180BerlawananArahJarumJam(citra C,A; Int n,m,c)

{Asumsi Citra matrik n x n x c} Kamus i,,j,k,l : Integer

Deskripsi l  N+1

For i  1 To N

k  M+1

For j  1 to M

C[l-i,k-j]  A[i,j]

K  k - 1

(38)

Operasi Zoom

Operasi pembesaran citra dengan cara melakukan

duplikasi terhadap pixel sebanyak z kali.

Zooming dengan nilai pembesaran lebih besar dari 1

(satu) akan membesar atau disebut juga Zoom Out,

Sedangkan jika pembesaran dengan nilai 1/z akan

mengecil atau Zoom In.

Pembesaran berdasarkan arah dapat dilakukan :

Zoom X

Zoom Y

(39)

Zoom Out

Pembesaran dimana nilai pembesaran diatas 1

Contoh Zoom Out dengan Z = 2

1 2 3 4 1 1 2 2 3 3 4 4 1 2 3 4 1 1 2 2 3 3 4 4 4 1 2 3 4 4 1 1 2 2 3 3 1 2 3 4 1 1 2 2 3 3 4 4 3 4 1 2 3 3 4 4 1 1 2 2 4 1 2 3 4 4 1 1 2 2 3 3 2 3 4 1 2 2 3 3 4 4 1 1 4 1 2 3 4 4 1 1 2 2 3 3 3 4 1 2 3 3 4 4 1 1 2 2 3 4 1 2 3 3 4 4 1 1 2 2 2 3 4 1 2 2 3 3 4 4 1 1 2 3 4 1 2 2 3 3 4 4 1 1

(40)

Algoritma

ZoomOutX

Penduplikasian pixel sebanyak z kali untuk tiap pixel ke arah x

Algortitma ZoomOutX(Citra1 A,Citra2 C;int n,m,c,Z)

{Asumsi A Citra1 matrik NxMxc C Citra2 matrik Nx(MxZ)xc dan Z nilai pembesaran} Kamus i,j,k,l : Integer

Deskripsi

Penduplikasian pixel sebanyak z kali untuk tiap pixel ke arah Y

Algortitma ZoomOutY(Citra1 A,Citra2 C;int n,m,c,Z)

(41)

Algoritma ZoomXY

ZoomOutXY

Penduplikasian pixel sebanyak z kali untuk tiap pixel ke arah x dan Y

Algortitma ZoomOutXY(Citra1 A,Citra2 C;int n,m,c,Z)

{Asumsi A Citra1 matrik NxMxc

C Citra2 matrik (NxZ)x(MxZ)xc dan Z nilai pembesaran}

(42)

ZoomIn

Perbesaran dengan 1/z kali

Zoom In dilakukan dengan cara :

1.

Ukuran dikali dengan perbesaran yang

dibulatkan keatas

(43)

Contoh Pembesaran ½

1 2 3 2 3

4 1 2 1/2 4 1

3 4 1

3 x 3 2 x 2 A C

Baris 3 x ½ = 1½ ≈ 2 Kolom 3 x ½ = 1½ ≈ 2

Sehingga Baris x Kolom = 2 x 2 ……….. (1) C[1,1] = ∑A[1..2,1..2]/4 = (1 + 2 + 4 + 1)/4 = 8/4 = 2 ………(2a) C[1,2] = ∑A[1..2,3]/2 = (3 + 2)/ 2 = 5/2 = 2 ½ = 3

(44)

Kuis

2. Flipping Vertical A 3. Flipping Horizontal B 4. Rotasi 90 A

Referensi

Dokumen terkait

SE (Standar Error) yang masih bersambungan menunjukkan tidak berbeda nyata dengan uji Tukey pada taraf kepercayaan 95%... Serapan hara K, Mg dan Cu juga mengalami peningkatan

Di daerah penyelidikan endapan gambut dapat dikualifikasikan sebagai "topogenus peat" yang terletak pada basin peat sebagai " Low Land peat" (gambut dataran

Obsevasi lapangan merupakan persiapan yang paling penting sebelum melaksanakan program PPL. Pelaksanaan observasi mampu membantu mahasiswa dalam mendeskripsikan langkah

Dengan perkembangan perkotaan dan proyeksi pertumbuhan ekonomi di Indonesia seperti saat ini, permasalahan transportasi perlu segera diantisipasi praktis di setiap kawasan

Pola agroforestry merupakan suatu sistem pola tanam yang memadukan berbagai jenis pohon dengan tanaman semusim, pola ini telah diterapkan oleh petani di berbagai

Jaringan Irigasi ( Sumber Dana DAK ) Terlayaninya kebutuhan irigasi melalui peningkatan, pengembangan, pemeliharaan, pelestarian jaringan irigasi dan optimalinya fungsi

Pengadaan bahan baku segar yang optimal adalah pengadaan bahan baku segar yang dapat meminimalkan biaya yang dikeluarkan, dapat memenuhi kebutuhan produksi, sesuai

Ruang lingkup yang akan dibahas penulis didalam skripsi ini adalah mengkaji mengenai pertanggungjawaban pidana terhadap anggota TNI yang melakukan tindak pidana