Selasa, 09 November 2010

Tugas Grafik Komputer & Pengolahan Citra 2


APLIKASI GRAFIK KOMPUTER

Aplikasi grafik komputer adalah sebuah perangkat yang digunakan untuk mengolah, memanipulasi, membuat dan melihat suatu gambar/citra untuk keperluan sehari-hari. Salah satu contoh aplikasi grafik komputer adalah Adobe Phtotoshop

Adobe Photoshop atau biasa disebut Photoshop, adalah perangkat lunak editor citra buatan Adobe Systems yang dikhususkan untuk pengeditan foto/gambar dan pembuatan efek. Perangkat lunak ini banyak digunakan oleh fotografer digital dan perusahaan iklan sehingga dianggap sebagai pemimpin pasar (market leader) untuk
perangkat lunak pengolah gambar, dan bersama Adobe Acrobat dianggap sebagai produk terbaik yang pernah diproduksi oleh Adobe Systems. Versi kedelapan aplikasi ini disebut dengan nama Photoshop CS (Creative Suite), versi sembilan disebut Photoshop CS2, versi sepuluh disebut Adobe Photoshop CS3, vesri kesebelas adalah Adobe Photoshop CS4 dan versi yang terakhir (keduabelas) adalah Adobe Photshop CS5. Photoshop tersedia untuk Microsoft Windows, Mac OS X, dan Mac OS;versi 9 keatas juga dapat digunakan oleh sistem operasi lain seperti Linux dengan perangkat lunak tertentu seperti CrossOver.

b.1. Keungggulan Adobe Photoshop:

1.Lebih familiar dan mudah digunakan dibandingkan software editing gambar selevel Adobe Photoshop
2.Fasilitas editing gambar hingga efek variasi gambar lebih lengkap.
3.Bisa menyimpan dalam berbagi format dengan berbagi kualita gambar beserta resolusi dan ukurannya.
4.Bisa untuk memanipulasi / merekayasa foto.
5.Fasilitas efek bisa ditambah.
6.File hasil editan bisa disimpan dalam format JPG dengan kualitas bagus.

b2. Kelemahan Adobe Photoshop:

1.Kurang bagus untuk pembuatan desain majalah atau cetak brosur dengan banyak teks, karena tidak bisa membuat paragraf tulisan dengan sempurna.
2.Ukuran penyimpanan file relatif besar bila terdapat banyak layer dan ukurangambar yang besar
3.Proses cetak dalm ukuran kertas pada umumnya, atau ukuran kertas yang besar relatif lebih rumit.
4.Akan lebih rumit ketika mengedit gambar dari banyak layer yang digabung.

Contoh grafik yang diolah dengan aplikasi Adobe Photoshop:

















C. OPERASI-OPERASI PENGOLAHAN CITRA

Operasi yang dilakukan untuk mentransformasikan suatu citra menjadi citra lain dapat dikategorikan berdasarkan tujuan transformasi maupun cakupan operasi yang dilakukan terhadap citra.

c.1 Operasi Pengolahan Citra :

1. Perbaikan kualitas citra (image enhacement)

Tujuan : memperbaiki kualitas citra dengan memanipulasi parameter-parameter citra.

Operasi perbaikan citra :

*Perbaikan kontras gelap/terang
*Perbaikan tepian objek (edge enhancement)
*Penajaman (sharpening)
*Pemberian warna semu(pseudocoloring)
*Penapisan derau (noise filtering)

2. Pemugaran citra (image restoration)

Tujuan : menghilangkan cacat pada citra. Perbedaannya dengan perbaikan citra : penyebab degradasi citra diketahui.

Operasi pemugaran citra :

*Penghilangan kesamaran (deblurring)
*Penghilangan derau (noise)

3. Pemampatan citra (image compression)

Tujuan : citra direpresentasikan dalam bentuk lebih kompak, sehingga keperluan memori lebih sedikit namun dengan tetap mempertahankan kualitas gambar (misal dari .BMP menjadi .JPG) .


4. Segmentasi citra (image segmentation)

Tujuan : memecah suatu citra ke dalam beberapa segmen dengan suatu kriteria tertentu. Berkaitan erat dengan pengenalan pola.


5. Pengorakan citra (image analysis)

Tujuan : menghitung besaran kuantitatif dari citra untuk menghasilkan deskripsinya. Diperlukan untuk melokalisasi objek yang diinginkan dari sekelilingnya .


Operasi pengorakan citra :

*Pendeteksian tepi objek (edge detection)
*Ekstraksi batas (boundary)
*Represenasi daerah (region)


6. Rekonstruksi citra (Image recontruction)

Tujuan : membentuk ulang objek dari beberapa citra hasil proyeksi.


D. DEFINISI CITRA


d.1 Citra

Citra adalah gambar dua dimensi yang dihasilkan dari gambar analog dua dimensi yang kontinu menjadi gambar diskrit melalui proses sampling.


d.2 Sampling

Sampling adalah proses untuk menentukan warna pada piksel tertentu pada citra dari sebuah gambar yang kontinu.

d.3 Jenis-jenis Citra

Ada beberapa jenis citra menurut Frank Jefkins yaitu :

1.Mirror Image (Citra Bayangan). Citra ini melekat pada orang dalam atau anggota-anggota organisasi – biasanya adalah pemimpinnya – mengenai anggapan pihak luar tentang organisasinya. Dalam kalimat lain, citra bayangan adalah citra yang dianut oleh orang dalam mengenai pandangan luar, terhadap organisasinya. Citra ini seringkali tidak tepat, bahkan hanya sekedar ilusi, sebagai akibat dari tidak memadainya informasi, pengetahuan ataupun pemahaman yang dimiliki oleh kalangan dalam organisasi itu mengenai pendapat atau pandangan pihak-pihak luar. Dalam situasi yang biasa, sering muncul fantasi semua orang menyukai kita.

2.Current Image (Citra yang Berlaku). Citra yang berlaku adalah suatu citra atau pandangan yang dianut oleh pihak-pihak luar mengenai suatu organisasi. Citra ini sepenuhnya ditentukan oleh banyak-sedikitnya informasi yang dimiliki oleh mereka yang mempercayainya.

3.Multiple Image (Citra Majemuk). Yaitu adanya image yang bermacam-macam dari publiknya terhadap organisasi tertentu yang ditimbulkan oleh mereka yang mewakili organisasi kita dengan tingkah laku yang berbeda-beda atau tidak seirama dengan tujuan atau asas organisasi kita.

4.Corporate Image (Citra Perusahaan). Apa yang dimaksud dengan citra perusahaan adalah citra dari suatu organisasi secara keseluruhan, jadi bukan sekedar citra atas produk dan pelayanannya.

5.Wish Image (Citra Yang Diharapkan). Citra harapan adalah suatu citra yang diinginkan oleh pihak manajemen atau suatu organisasi. Citra yang diharapkn biasanya dirumuskan dan diterapkan untuk sesuatu yang relatif baru, ketika khalayak belum memiliki informasi yang memadai mengenainya.


























Kamis, 28 Oktober 2010

BAHASA INDONESIA

Mata Kuliah : Bahasa Indonesia
Nama : Rhainy Rahmy
Npm: 11108636
Judul Penulisan Ilmiah : Pembuatan Aplikasi Personality Test dengan PHP dan My SQL


BAB 1.
Pendahuluan
  • Latar belakang:
-- menggunakan = guna : kata baku (3)
-- penulis= kata ganti orang (1)
-- yang = kata baku (6)
-- dan = kata baku (4)
-- dapat=sama saja dengan kata bisa (2)
-- mendapatkan = memperoleh : kata baku (1)
-- dengan = kata baku (1)

  • Ruang Lingkup
-- penulis = kata ganti untuk orang (1 )
-- hanya = kata baku (1)
-- yang = kata baku (1)
-- dan = kata baku (1)
-- akan = kata baku (1)


  • Metode Penulisan
-- penulis = kata ganti orang ( 3 kata)
-- menyelesaikan = selesai : kata baku (1)
-- dan = kata baku (1)
-- metode = kata baku (1)
-- memudahkan = mempermudah : kata baku (1)

  • Sistematika Penulisan
-- tidak ada kata yang mengandung unsur kata tidak baku dan kata ganti orang didalam sistematika penulisan ini .

Makalah metode Bresenham

Disusun Oleh:
-Rhainy Rahmy 11108636
-Reza Febrian 12108217
-Sri Dewi Eka Sari 12108362
-Vicky 11108999
-Vikry Yuansyah 12108003
-Yoan Dwi Utami 12108080









ALGORITMA BRESENHAM

Algoritma Bresenham menggunakan aritmatika integer yang tidak memerlukan perkalian dan pembagian dalam proses perhitungannya didalam seluruh implementasi, yang mana aritmatika integer ini memiliki kecepatan perhitungan yang libih tinggi dari pada aritmatika floating point.

ALGORITMA BRESENHAM
-dikembangkan oleh Bresenham
-berdasarkan selisih antara garis yang diinginkan terhadap setengah ukuran dari piksel yang sedang digunakan.

Bresenham pada tahun 1965,melakukan perbaikan dari algoritma perhitungan koordinat piksea yang menggunakan persaan (1),dengan cara menggantikan operasi bilangan ril perkalian dengan operasi penjumlahan,yang kemudian dengan algoritma bresenham. Pada algoritma bresenham, nilai y kedua dan seterusnya dihitung dari nilai y sebelumnya, sehingga hanya titik y pertama yang perlu dilakukan operasi secara lengkap. Perbaikan algoritma ini ternyata tidak menghasilkan yang cukup signifikan. Perbaikan berikutnya dilakukan dengan cara menhilangkan operasi bilanagan riel dengan operasi bilangan integer. Operasi bilangan integer jauh lebih cepat dibangdingkan dengan operasi bilangan riel, terutama pada penambahan dan pengurangan.
untuk menentukan jumlah piksel yang membuat suatu garis menggunakan algoritma bresenham adalah sebagai berikut:
1.Masukkan 2 endpoint,simpan endpoint kiri sebagai (x0,y0) dan kanan (x1,y1)
2.hitung konstanta nya dan nilai awal parameter keputusannya.
3. Pada setiap xk digaris,dimulai dari k=0,ujilah: jika pk0 maka plot (xk+1,yk+1) dan pk=pk+2y-2x
4.Ulangi tahap 4 sampai mencapai x,y yang dituju.
contoh:
hitunglah posisi pikse; hingga membentuk sebuah garis yang menghubungkan titik (4,1) dan (14,8)
1.Menentukan endpoint(x0,y0)=(4,1) dan (x1,y1)=(14,8)
2.Hitung Konstanta:
Dx=x1=x0 Dx=14-4=10
Dy=y1-y0 Dy=8-1=7
2Dx=2.10=20
2Dy=2.7=14
2Dy-2Dx=14-20=-6
pk=p0=2Dy-Dx pk=p0=14-14=4
3.Jadi nilai keputusan awal=4, karena pk=4 maka kita gunakan pk>0 maka plot (xk+1,yk+1)=(4+1,1+1)=)5,2) adalah plot yang terbentuk pada K=0. dan kita hitung nilai keputusan untuk plot selanjutnya. Dengan rumus pk=pk+2y-2x pk=4+(-6)=-2 adalah nilai keputusan yang k 2.karena pk=-2 kita gunakan rumus pk<0 maka plot (xk+1,yk)=(5+1,2)=(6,2) plot yang terbentuk pada K=1. Ulangi cara tersebut hingga mencapai endpoint (x1,y1).

Contoh Source Code Program Bresenham pada Bahasa C++:
#include

#include

#include
#include

using namespace std;

void sumbu(){
glPushMatrik();
glBegin(GL_LINES);
glVertex3f(0,0,0.0);

glVertex3f(0,1,0.0);

glVertex3f(0,0,0.0);

glVertex3f(1,0,0.0);

glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1.0,1.0,1.0);
glPopMatrix();
glEnd();
glFlush();
}
void Diagonal() {
float a,b,c,d;
cout<<"Masukkan Xo :";cin>>a;
cout<<"Masukkan Yo :";cin>>b;
cout<<"Masukkan X1 :";cin>>c;
cout<<"Masukkan Y1 :";cin>>d;
glPushMatrik();
glBegin(GL_LINES);
glVertex3f(a+0.5,b+0.5,0.0);
glVertex3f(c+0.5,d+0.5,0.0);
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1.0,1.0,1.0);
glPopMatrik();
glEnd();
glFlush();

}

void Horizontal() {

float c,d,y;
cout<<"Masukkan XAwal:";cin>>c;
cout<<"Masukkan XAkhir:";cin>>d;
cout<<"Masukkan Ytetap:";cin>>y;
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1.0,1.0,1.0);
glBegin(GL_LINES);
glVertex3f(c+0.1,y+0.1,0.0);
glVertex3f(d+0.1,y+0.1,0.0);
glEnd();
glFlush();
}
void Vertikal() {

float a,b,x;
cout<<"Masukkan Yawal :";cin>>a;
cout<<"Masukkan Yakhir:";cin>>b;
cout<<"Masukkan Xtetap:";cin>>x;
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1.0,1.0,1.0);
glBegin(GL_LINES);
glVertex3f(x+0.5,a+0.5,0.0);
glVertex3f(x+0.5,b+0.5,0.0);
glEnd();
glFlush();
}

void initialize(){
glClearColor(0.0,0.0,0.0,0.0);
glMatrikMode(GL_PROJECTION);
glLoadIdentity();
glOrtho(0.0,1.0,0.0,1.0,-1.0,1.0);
}
int main(int iArgc,char** cppArgv) {
menu:
int a;
cout<<"-----MENU----\n";
cout<<"1.Garis vertikal\n";
cout<<"2.Garis Horizontal\n";
cout<<"3.Garis Diagonal\n";
cout<<"4.Exit\n";
cout<<"------------------\n";
cout<<"Masukkan pilihan anda:";cin>>a;
cout<<"\n";
glutlnit(&iArgc,cppArgc);
glutlnitDisplayMode(GLUT_SINGLE | GLUT_RGB);
glutnitWindowSize(500,500);
glutlnitWindowPosition(600,200);
glutCreateWindow("OpenGL with C++");
Initialize();
wjile (a<=4){
switch(a){
case 1:
glDisplayFunch(Vertikal);
glutMainLoop();
return 0;

case 2:
glutDisplayFunc(Hirzontal);
glutMainLoop();
return 0;

case3:
glutDisplayFunc(Diagonal);
glutMainLoop();
return 0;
default:
cout<<"anda salah memasukkan";
goto menu;
}}


}

Pada saat di RUN:

gambar 1:


























gambar 2:
























gambar 3: