Skip to main content

Lesson 1 : Image Editor dengan PHP (Brightness & Negasi)

untuk membuat program images editor dengan PHP dibutuhkan minimal PHP versi 5 keatas dan library GDLIB, anda bisa menggunakan XAMPP versi 1.6.3 keatas. source code program bisa didownload disini
untuk penjelasan awal kita akan mempelajari tentang bagaimana sebuah program image editor seperti photoshop, gimp, dll menambah kecerahan sebuah gambar (brightness) dan negasi. sebuah gambar itu sebenarnya terdiri dari titik-titik yang disebut pixel. dimana pixel ini mengandung 2 informasi, yaitu koordinat dan warna. nilai sebuah warna adalah mulai 0 sampai 255, dimana 0 berarti hitam dan 255 berarti putih. nah, untuk menambahkan brightness kita hanya perlu menambahkan nilai warna sebelumnya dengan sebuah konstanta. tujuannya adalah menambahkan nilainya agar mendekati kewarna putih sehingga gambar lebih terang
rumus brightness adalah f'(x,y)=f(x,y)+c
dimana f'(x,y) : nilai warna baru setelah ditambah konstanta
f(x,y) : nilai awal warna
c : kontanta
source code brightness dapat dilihat pada file yang anda download tadi pada file brightness.php di folder editor.
algoritmanya adalah sebagai berikut
1. tentukan konstanta c (untuk nilai inputan yang sudah ditentukan, ini bisa dimodifikasi jika nilai c ingin ditentukan oleh user)
2. load gambar asli. pada php dengan perintah  
imagecreatefromjpeg
3. mengetahui tinggi & lebar gambar asli. pada php dengan perintah
imagesx (untuk lebar) dan imagesy (untuk tinggi)
4. membuat image baru. pada php dengan perintah
imagescreatetruecolor(lebar, tinggi)
5. membuat perulangan untuk lebar dan tinggi
misal
for ($x=0; $x<lebar;$x++){
     for($y=0;$y<tinggi;$y++){
         $rgb=imagescolorat ($img, $x, $y);
         $cols=imagescolorforindex($img, $rgb);
         $r=$cols('red');
         $g=$cols('green');
         $b=$cols('blue');
         $rr=$r+c                 //rumus brigtness diterapkan disini
         if($rr>255) {$rr=255}  //pembatasan jika input melebihi 0-255
            if($rr<0){$rr=0}
        $gg=$g+c;
        if($gg>255){$gg=255}
           if($gg<0){$gg=0}
        $bb=$b+c;
        if($bb>255){$bb=255}
           if($bb<0){$bb=0}
6. meletakkan pixel dalam pixel baru. pada php dengan perintah
imagecolorlocate(imagebaru, $rr, $gg, $bb);
imagesetpixel(imagebaru, x, y, warna);

sedangkan untuk negasi atau membuat gambar dengan efek negatif prinsipnya adalah dengan membalik nilai warna.
rumus negasi adalah f'(x,y)=255-f(x,y)
algoritmanya sama, kita hanya tinggal merubah rumus brightness diatas dengan rumus negasi. file sourcecode negasi ada di folder editor dengan nama negasi.php

Comments

Popular posts from this blog

Install Modem SmartFren Connex AC682 di Ubuntu

berikut cara install modem smartfren connex AC682 di ubuntu. diambil dari forum ubuntu indonesia secara garis besar yang perlu dipersiapkan adalah 1. instal wvdial, karena dengan konfigurasi modprobe biasa pada applet panel network manager dikenali sebagai modem GSM. 2. konfigruasi wvdial untuk smartfren 3. konfigurasi usb_modeswitch 4. dan konfigurasi file .rules berikut adalah langkah milih pinsuit dan einhejars, perbedaanya dua cara tersebut adalah pada konfirugasi file .rules (lihat langkah 10 milik pingsuit dan langkah 9 milik einhejars) berikut langkah-langkahnya :

Komputer Grafik : GAME

anda mendapat mata kuliah komputer grafik dikampus anda? dan mendapatkan tugas untuk membuat game? nah saya akan berbagi tugas kuliah yang pernah saya dapatkan pada pada kuliah tersebut. “ Grafik komputer ” atau Grafika komputer (Computer graphics) adalah salah satu cabang ilmu komputer yang berhubungan dengan pembuatan dan manipulasi gambar visual secara digital. waktu itu saya disuruh membuat sebuah game dengan bahasa pemrograman bebas sebagai tugas akhir semester matakuliah komputer grafik. akhirnya tugas tersebut saya buat dengan dengan menggunakan bahasa pemrograman Delphi, kalo gak salah waktu itu saya menggunakan Delphi 5 yang portable, karena waktu itu saya menggunakan linux (ubuntu 9.10) pada OS komputer saya. semua berjalan lancar saat proses desain game dan coding, hanya sedikit kendala yaitu hasil digame saat dijalankan di linux terasa lebih lemot (lambat) dibandingkan dengan di Windows, mungkin karena di linux saya menggunkan Wine sebagai emulator untuk menjalankan f...

10 Hal yang dapat di lakukan saat Root ponsel Android di 2019

Mungkin saat ini kita sudah jarang sekali menjumpai ponsel Android yang di root. kalo jaman dulu saat ponsel Androd itu masih banyak kekurangannya, baik sistem operasi maupun spek hardware nya sangat umum kita melihat ponsel Android teman-teman di root untuk mendapatkan user experience yang lebih baik. di tahun 2019 ini baik ponsel mid range hingga low end sudah mempunyai spek yang baik, setidaknya minimal cukup untuk memenuhi penggunaan sehari-hari. bahkan sistem operasi Android sendiri saat ini sudah sangat stabil & tingkat keamanannya pun jauh lebih bagus dibanding dulu. Lalu apakah kita masih perlu untuk melakukan root pada ponsel Android di tahun 2019? berikut 10 hal yang dapat kita lakukan setelah melakukan root pada ponsel Android. Disclaimer dulu ya, untuk masing-masing cara dari setiap poin dibawah tidak akan dijelaskan, kalian dapat melakukan research sendiri, kebanyakan sudah dapat ditemui dengan mudah di XDA-Developer atau bergabung dengan komunitas/group ponsel ...