Senin, 29 Maret 2010

Makelar Kasus (MARKUS)

Pernyataan mantan Kabareskrim Komjen Pol Susno Duadji tentang adanya makelar kasus (markus) di tubuh Mabes Polri dengan sigap ditepis oleh pihak Mabes Polri. Padahal ini dapat dijadikan momentum oleh penegak hukum untuk mereformasi institusi tersebut, dengan penyelesaian yang terbuka dan tidak dilakukan secara internal.

"Seharusnya Mabes Polri melihat tudingan Susno tentang adanya markus di Mabes Polri sebagai peluang untuk benar-benar mereformasi institusi ini. Dan ketika Susno sebagai 'orang dalam' Polri sudah berani membeberkan kasus ini dengan sangat rinci, aparat penegak hukum harusnya bertindak cepat untuk menyelesaikan masalah ini secara terbuka dan tidak menyelesaikannya secara internal," kata juru bicara Serikat Pengacara Rakyat (SPR), Habiburokhman, dalam rilisnya yang diterima detikcom.

Ia berharap agar penyelesaian kasus ini dilakukan dengan segera dan terbuka. Karena dengan penyelesaian yang terbuka citra Polri di mata publik akan semakin baik.

"Keterbukaan dalam mengusut kasus ini sangat penting agar publik bisa mengontrol langsung bagaimana hukum dan undang-undang dapat diterapkan. Selain itu dengan penyelesaian yang terbuka sama sekali tidak menghancurkan citra Polri, justru sebaliknya jika ini dapat diselesaikan dengan baik maka citra Polri akan semakin baik," tutupnya.


Berita di atas saya dapat di :

http://www.detiknews.com/read/2010/03/23/061956/1323204/10/pengusutan-markus-pajak-di-polri-harus-dilakukan-secara-terbuka


Menaggapi pemberitaan di atas, saya sangat setuju sekali jika kasus ini diselesaikan secara terbuka (bukan secara internal, Red). Apa mungin karena kasus ini melibatkan oknum high class (berUANG, Red) sehingga kasusnya dikaburkan dengan kasus yang lain seperti pencemaran nama baiklah, melanggar kode etiklah(embohlah, Red).


Seiring dengan mencuatnya kasus ini, pengusuutan-pengusutan secara intensif dilakukan. Sehingga tabir kasus ini mulai terungkap sejak pemeriksaan bahwa Gayus Tambunan ditetapkan sebagai tersangka. Di media-media pemberitaan nama Gayus sudah tidak asing lagi, bahkan stiap hari nama itu tercetak dikoran dan terdengar di televisi.


Secara sepintas, seolah-olah Gayuslah sebagai tersangka utama. Gayus terbukti memiliki uang sekitar 25 Milyar di rekening tabungannya, padahal dia hanya seorang pegawai pajak golongan III/a yang gajinya hanya 12,1 juta perbulan.


Padahal kalau kita coba berpikir lagi, sangat kecil kemungkinannya seorang PEGAWAI golongan III/a memiliki rekening sebanyak itu.(toh kalau mau korupsi, pegawai golongan segitu paling mentok bermain di ratusan juta sudah bagus, Red). Saya yakin pasti ada orang besar di balik kasus ini. Mungkin saja Gayus hanya dijadikan tameng untuk menutupi kelakuan bejat mereka.


Gayus kan hanya seorang pegawai biasa saja (jabatannya g’ bagus2 amat, Red), bisa jadi dia adalah kacung yang disuruh ”orang diatasnya” untuk menyimpan hasil korupsi orang itu dengan janji sebuah imbalan pada Gayus (g’ sedikit dong imbalannya, Red).


Anehnya, di media-media pemberitaan seolah-olah Gayus-lah orang yang paling diburu. Padahal menurut saya Gayus adalah korban dari ”orang-orang di atasnya” (bukan berarti saya pro Gayus loh..., Red). Hampir tiap hari di berita topiknya hanya Gayus dan Gayus yang selalu diungkap baik dari alamat rumahnya, gajinya, isterinya, bahkan sampai anaknya. Belum ada topik berita tentang ”bagaimana dan dari siapa Gayus mendapat uang itu???” atau ”siapa saja yang ikut menikmati uang itu??”.


Topik seperti di atas jarang dibahas, apakah ini bagian dari skenario ”orang atas” untuk mengalihan perhatian publik agar seolah-olah mereka tidak bersalah?. Perlu diingat bahwa kasus ini merupakan kasus yang melibatkan beberapa instansi negara yang sangat berwibawa yaitu orang-orang POLRI dan orang-orang PAJAK, bahkan berita-berita terkini menginformasikan bahwa Jaksa Agung juga terlibat (yang tidak terlibat jangan tersingung ya..,Red). Mereka adalah orang-orang yang sangat mengerti hukum, bahkan bisa merumuskan hukum itu sendiri. Apa mungkin pada kasus ini mereka membuat hukum baru lagi agar dapat melindungi diri mereka sendiri??? (bisa-bisa aj Gan, Red).


Waduh, kalau sudah seperti ini mau jadi apa negara kita (tapi salut buat Indonesia, sekarang sudah dibuka lapangan kerja baru di aparat pemerintahan yaitu jadi MakelAR KasUS, hehe...,Red).


Untuk menangani kasus korupsi sperti ini, pada hakekatnya terletak pada kekonsitenan aparat penegak hukum terhadap hukum yang telah dibuat. Mau jadi apa negara kita apabila peraturan hukumnya sudah jelas dan bagus, tetapi aparat penegak hukumnya yang lemah (ditampar uang dikit aja matanya sudah biru, Red).


(kalau boleh usul ni.., Red) Setelah browsing dan membaca beberapa media, solusi agar dapat menekan terjadinya praktek markus di zona pemerintahan Indonesia adalah sebagai berikut:

- Menumbuhkan dan membangun etos kerja pejabat maupun pegawai tentang pemisahan yang jelas antara milik negara atau perusahaan dengan milik pribadi, mengusahakan perbaikan penghasilan (gaji), menumbuhkan kebanggaan-kebanggaan dan atribut kehormatan diri setiap jabatan dan pekerjaan, teladan dan pelaku pimpinan atau atasan lebih efektif dalam memasyarakatkan pandangan, penilaian dan kebijakan, terbuka untuk kontrol, adanya kontrol sosial dan sanksi sosial.

- Menegakkan hukum yang berlaku pada koruptor dan penayangan wajah koruptor di layar televisi dan herregistrasi (pencatatan ulang) kekayaan pejabat dan pegawai.


(INGATT!!! g’ boleh pilih kasih saat proses hukumnya ya.., Red).


Semoga solusi di atas bermanfaat bagi kita semua dan dapat dilaksanakan dengan sebaik-baiknya. Ami..n

Sabtu, 13 Maret 2010

DOA SELAMAT



Artinya:
Ya Allah, kami mohon kepada-Mu akan keselamatan dalam agama, kesehatan dalam badan, bertambah dalam ilmu, keberkatan dalam rejeki, taubat sebelum mati, rahmat ketika mati, dan ampunan sesudah mati.Ya Allah, ringankanlah kami ketika sakratul maut, dan selamatkanlah kami dari siksa api neraka, dan memdapat ampunan di hari perhitungan amal.
Ya Allah Tuhan kami, janganlah Engkau sesatkan kami sesudah mendapat petunjuk, berilah kami rahmat dari sisi-Mu. Karena sesungguhnya Engkaulah Yang Maha Pemurah.
Ya Allah Tuhan kami, berilah kami kebahagiaan di dunia dan kesejahteraan di akhirat, dan peliharalah kami dari siksa neraka.

Senin, 06 Juli 2009

Laporan Resmi Praktikum 3

ANALISA

Hasil praktikum dapat dilihat pada gambar 1. Untuk mengambil gambar, kita tekan 'load gambar', dan untuk membalik gambar tersebut secara horizontal, kita tekan 'balik horizontal', sedangkan apabila kita ingin membalik gambar secara vertikal kita tinggal menekan 'balik vertikal'.

hal yang dilakukan pertama adalah mengambil semua pixel tiap baris dalam
gambar dengan perintah getPixel. Kemudian pixel-pixel yang didapat disimpan
dalam array yang nantinya akan diset (ditampilkan) dalam picture2, pada picture 2
baris pertama akan diisi oleh pixel-pixel dari baris terbawah dari gambar,
sehingga gambar akan terbalik yang atas menjadi bawah.


KESIMPULAN
  1. Kita dapat membuat suatu aplikasi menggunakan visual C++ untuk keperluan membalik gambar baik secara vertikal maupun horizontal.
  2. Aplikasi tersebut dibuat menggunakan dialog based
  3. Untuk membuat gambar menjadi terbalik, kita masukkan program untuk merubah posisi pixel gambar tersebut

Tugas 5

Pengenalan Angka

· Buat aplikasi AppWizard dan beri nama project dengan Lat17

· Buat disain dialog seperti pada gambar berikut dengan 6 buah control picture dan 7 buah button.


·









Ubah properti control dan tambahkan class variabel control tipe dan membernya seperti pada tabel berikut:

· Tambahkan program untuk melakukan konversi dari data pixel ke RGB dan dari data RGB ke data Pixel. Seperti berikut.














// merubah data pixel ke RGB

void WarnaToRGB(long

int warna,int *Red, int *Green, int *Blue)

{

*Red = warna & 0x000000FF;

*Green = (warna &

0x0000FF00) >> 8;

*Blue = (warna &

0x00FF0000) >> 16

;

}

//merubah RGB

ke data pixel

long int RGBToWarna(int Re

d, int Green, int Blue)

{

return(Red+(Green<<8)+(blue<<1

6));

}

· Tambahkan program pada button1 click seperti di bawah ini,yang berfungsi untuk melakukan load gambar angka1 (Load Angka [1]).

void

CLat17Dlg::OnButton

1()

{

// TODO: Add your control notification handler code here

static char BASED_CODE

szFilter[]="Bitmap Files

(*.bmp)|*.bmp||";

CFileDialog m_ldFile(TRUE, "*.bmp", name,

OFN_HIDEREADONL

Y|OFN_OVERWRITEP

ROMPT, szFilter);

if(m_ldFile.DoModal()==IDOK)

{

name=m_ldFile.GetP

athName();

}

CDC* p

DC = m_pic1.GetDC();//

mengarah kontrol picture

CDC dcMem; //mengarahkan obyek yg sdh dipilih pd

bitmap

CRect rect;//kotak di picture

BITMAP bm;//mendefinisikan

fungsi2 yg ada d bitmap

HBITMA

P hBitmap=(HBITMAP)::LoadImage(AfxGetInstanceHandle(),

name ,IMAGE_BITMAP,

0, 0, LR_LOADFROMFIL

E|LR_CREATEDIBSECTION);

if(hBitmap)

{

if(m_bmpBitmap.Del

eteObject())

m_bmpBitmap.Detach

();

m_bmpBitmap.Attach(h

Bitmap);

}

m_pic1.GetClientRect(rect);

m_bmpBitmap.GetB

itmap(&bm);

dcMem.CreateCompati

bleDC(pDC);

//pDC->MoveTo(10,190);

//pDC->LineTo(300,190);

dcMem.SelectObje

ct(&m_bmpBitmap);

pDC->StretchBlt(0,0

,rect.Width(),rect.Height(),&dcMem,

0,0,bm.bmWidth,bm.bmHeight,SRCCOPY);

}

· Tambahkan program pada button2 click seperti di bawah ini,yang akan melakukan proses Integral Proyeksi Horizontal terhadap angka 1 (gambar1) dan menampilkannya pada Picture 5 (gambar 5).

void CLat17Dlg::OnButton

2()

{

// TODO: Add your control notification handler code here

int i,j;

int red,green,blue;

long int warna,warna1;

//float h[384];

CDC* pDC = m_pic1.GetDC();

CDC dcMem;

CRect rect; //kotak di

picture

BITMAP bm; //mendefinisikan fungsi2 yg ada d bitmap

HBITMAP hBitm

ap=(HBITMAP)::LoadImage(AfxGetInstanceHandle(),

name ,IMAGE_BIT

MAP, 0, 0, LR_LOADFROMFILE|L

R_CREATEDIBSEC

TION);

m_pic1.GetClientRect(rect);

m_bmpBitmap.GetBit

map(&bm);

dcMem.CreateComp

atibleDC(pDC);


dcMem.SelectObject(&m_bmpBitmap);

for(j=0;j

{

hx[j]=0;

for(i=0;i

{

warna=dcMem.GetPixel(j,i);

WarnaToRGB(warna,&red,&green,&blue);

hx[j]+=(float)(255-red)/255;

}

hx[j]=hx[j]/2;

}

CDC* pDC1 = m_pic5.GetDC();

for(i=1;i

{

//1.3 nilai x atau lebar

pDC1->MoveTo(i*3.5,0);

pDC1->LineTo(i*3.5,hx[i]);

}

pDC->StretchBlt(0,0,rect.Width(),rect.Height(),&dcMem,

0,0,bm.bmWidth,bm.bmHeight,SRCCOPY);

}

· Tambahkan program pada button3 click seperti di bawah ini,yang akan melakukan proses Integral Proyeksi Vertical terhadap angka 1 (gambar1) dan menampilkannya pada Picture 2 (gambar 2).

void CLat17Dlg::OnButton3()

{

// TODO: Add your control notification handler code here

int i,j;

int red,green,blue;

long int warna,warna1;

//float h[384];

CDC* pDC = m_pic1.GetDC();

CDC dcMem;

CRect rect; //kotak di picture

BITMAP bm;//mendefinisikan fungsi2 yg ada d bitmap

HBITMAP hBitmap=(HBITMAP)::LoadImage(AfxGetInstanceHandle(),

name ,IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE|LR_CREATEDIBSECTION);

m_pic1.GetClientRect(rect);

m_bmpBitmap.GetBitmap(&bm);

dcMem.CreateCompatibleDC(pDC);

dcMem.SelectObject(&m_bmpBitmap);

for(i=0;i

{

hy[i]=0;

for(j=0;j

{

warna=dcMem.GetPixel(j,i);

WarnaToRGB(warna,&red,&green,&blue);

hy[i]+=(float)(255-red)/255;

}

hy[i]=hy[i]/2;

}

CDC* pDC1 = m_pic2.GetDC();

for(i=1;i

{

//1.3 nilai x atau lebar

pDC1->MoveTo(0,i*2);

pDC1->LineTo(hy[i],i*2);

}

pDC->StretchBlt(0,0,rect.Width(),rect.Height(),&dcMem,

0,0,bm.bmWidth,bm.bmHeight,SRCCOPY);

}

· Tambahkan program pada button4 click seperti di bawah ini,yang berfungsi untuk melakukan load gambar angka2 (Load Angka [2]).

void CLat17Dlg::OnButton4()

{

// TODO: Add your control notification handler code here

static char BASED_CODE szFilter[]="Bitmap Files (*.bmp)|*.bmp||";

CFileDialog m_ldFile(TRUE, "*.bmp", name, OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT, szFilter);

if(m_ldFile.DoModal()==IDOK)

{

name=m_ldFile.GetPathName();

}

CDC* pDC = m_pic3.GetDC(); // mengarah kontrol picture

CDC dcMem; //mengarahkan obyek yg sdh dipilih pd bitmap

CRect rect; //kotak di picture

BITMAP bm; //mendefinisikan fungsi2 yg ada d bitmap

HBITMAP hBitmap=(HBITMAP)::LoadImage(AfxGetInstanceHandle(),

name ,IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE|LR_CREATEDIBSECTION);

if(hBitmap)

{

if(m_bmpBitmap.DeleteObject())

m_bmpBitmap.Detach();

m_bmpBitmap.Attach(hBitmap);

}

m_pic3.GetClientRect(rect);

m_bmpBitmap.GetBitmap(&bm);

dcMem.CreateCompatibleDC(pDC);

//pDC->MoveTo(10,190);

//pDC->LineTo(300,190);

dcMem.SelectObject(&m_bmpBitmap);

pDC->StretchBlt(0,0,rect.Width(),rect.Height(),&dcMem,

0,0,bm.bmWidth,bm.bmHeight,SRCCOPY);

}

· Tambahkan program pada button5 click seperti di bawah ini,yang akan melakukan proses Integral Proyeksi Horizontal terhadap angka 2 (gambar3) dan menampilkannya pada Picture 6 (gambar 6).

void CLat17Dlg::OnButton5()

{

// TODO: Add your control notification handler code here

int i,j;

int red,green,blue;

long int warna,warna1;

//float h[384];

CDC* pDC = m_pic3.GetDC();

CDC dcMem;

CRect rect; //kotak di picture

BITMAP bm; //mendefinisikan fungsi2 yg ada d bitmap

HBITMAP hBitmap=(HBITMAP)::LoadImage(AfxGetInstanceHandle(),

name ,IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE|LR_CREATEDIBSECTION);

m_pic3.GetClientRect(rect);

m_bmpBitmap.GetBitmap(&bm);

dcMem.CreateCompatibleDC(pDC);

dcMem.SelectObject(&m_bmpBitmap);

for(j=0;j

{

hx2[j]=0;

for(i=0;i

{

warna=dcMem.GetPixel(j,i);

WarnaToRGB(warna,&red,&green,&blue);

//penggunaan red, tidak terikat, bisa green atau blue

// digunakan 255- , supaya bisa masuk/mendapatkan warna hitam

hx2[j]+=(float)(255-red)/255;

}

hx2[j]=hx2[j]/2;

}

CDC* pDC1 = m_pic6.GetDC();

for(i=1;i

{

//1.3 nilai x atau lebar

// dimulai dari 0 ke atas, sehingga gambar histogramnya kebalik

pDC1->MoveTo(i*2,0);

pDC1->LineTo(i*2,hx2[i]);

}

pDC->StretchBlt(0,0,rect.Width(),rect.Height(),&dcMem,

0,0,bm.bmWidth,bm.bmHeight,SRCCOPY);

}

· Tambahkan program pada button6 click seperti di bawah ini,yang akan melakukan proses Integral Proyeksi Vertical terhadap angka 2 (gambar3) dan menampilkannya pada Picture 4 (gambar 4).

void CLat17Dlg::OnButton6()

{

// TODO: Add your control notification handler code here

int i,j;

int red,green,blue;

long int warna,warna1;

//float h[384];

CDC* pDC = m_pic3.GetDC();

CDC dcMem;

CRect rect; //kotak di picture

BITMAP bm; //mendefinisikan fungsi2 yg ada d bitmap

HBITMAP hBitmap=(HBITMAP)::LoadImage(AfxGetInstanceHandle(),

name ,IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE|LR_CREATEDIBSECTION);

m_pic3.GetClientRect(rect);

m_bmpBitmap.GetBitmap(&bm);

dcMem.CreateCompatibleDC(pDC);

dcMem.SelectObject(&m_bmpBitmap);

for(i=0;i

{

hy2[i]=0;

for(j=0;j

{

warna=dcMem.GetPixel(j,i);

WarnaToRGB(warna,&red,&green,&blue);

hy2[i]+=(float)(255-red)/255;

}

hy2[i]=hy2[i]/2;

}

CDC* pDC1 = m_pic4.GetDC();

for(i=1;i

{

//1.3 nilai x atau lebar

pDC1->MoveTo(0,i*2);

pDC1->LineTo(hy2[i],i*2);

}

pDC->StretchBlt(0,0,rect.Width(),rect.Height(),&dcMem,

0,0,bm.bmWidth,bm.bmHeight,SRCCOPY);

}

· Tambahkan program pada button7 click seperti di bawah ini,yang berfungsi untuk melakukan load pencocokan antara angka1 dengan angka 2 dengan membandingkan perhitungan kedua integral proyeksinya,baik horizontal maupun vertical dari kedua gambar angka yang dibandingkan (Matching).

void CLat17Dlg::OnButton7()

{

// TODO: Add your control notification handler code here

CDC* pDC1 = GetDC();//

float dx=0,dy=0,d;

int i;

char str[5];

float jhx=0,jhy=0,jhx2=0,jhy2=0;

//digunakan untuk normalisasi angka1

for(i=0;i<50;i++)

jhx+=hx[i];

for(i=0;i<80;i++)

jhy+=hy[i];

for(i=0;i<50;i++)

hx[i]=hx[i]/jhx;

for(i=0;i<80;i++)

hy[i]=hy[i]/jhy;

//digunakan untuk normalisasi angka2

for(i=0;i<50;i++)

jhx2+=hx2[i];

for(i=0;i<80;i++)

jhy2+=hy2[i];

for(i=0;i<50;i++)

hx2[i]=hx2[i]/jhx2;

for(i=0;i<80;i++)

hy2[i]=hy2[i]/jhy2;

//hitung jarak

for(i=0;i<50;i++)

dx=dx+fabs (hx[i]-hx2[i]);

for(i=0;i<80;i++)

dy=dy+fabs (hy[i]-hy2[i]);

d=dx/50+dy/80;

sprintf(str,"%f",d);

pDC1->TextOut(60,320,str);

}

2. Menambah header file

· Buka file Lat17Dlg.h

· Tambahkan program seperti dibawah ini

public:

CLat17Dlg(CWnd* pParent = NULL); // standard constructor

CBitmap m_bmpBitmap;

CBitmap m_bmpBitmap2;

CString name;

float hx[300],hy[300];

float hx2[300],hy2[300];

3. Cara menjalankan program (Running Program)

· Pilih menu : Build->Execute (!)

· Click button1(Load Angka1 ): picture 1 akan menampilkan gambar angka1

· Click button2 (Integral Proyeksi Horizontal [1]): picture 5 akan menampilkan hasil integral proyeksi dari gambar angka1.

· Click button3 (Integral Proyeksi Vertical [1]): picture 2 akan menampilkan hasil integral proyeksi dari gambar angka1.

· Click button4(Load Angka2 ): picture 3 akan menampilkan gambar angka2

· Click button5 (Integral Proyeksi Horizontal [2]): picture 6 akan menampilkan hasil integral proyeksi dari gambar angka2.

· Click button6 (Integral Proyeksi Vertical [2]): picture 4 akan menampilkan hasil integral proyeksi dari gambar angka2.

· Click button7 (Matching): Akan dilakukan perhitungan kemiripan antara angka1 dengan angka2 berdasarkan bentuk integral proyeksi horizontal & integral proyeksi verticalnya.

· Hasil Running Aplikasi tampak seperti pada gambar berikut:

Tampilan Hasil Exsekusi program:















Pada Tampilan diatas dilakukan proses pembandingan antara angka 0 dan angka 6 berdasarkan integral proyeksi horizontal & integral proyeksi vertikalnya.dan diperoleh nilai error 0.012879. Semakin kecil nilai errornya (semakin mendekati 0) maka dua macam obyek akan semakin memiliki tingkat kemiripan yang tinggi.











Pada tampilan diatas dilakukan pengenalan angka terhadap obyek yang sama yaitu,angka 0 dan diperoleh hasil nilai error = 0.000000 (kedua obyek sama).