Cara membuat Filter Warna RGB dengan C#
Konsep warna Red Green Blue (RGB) dengan menggunakan library AForge.NET bisa digunakan dengan menggunakan aplikasi Microsoft Visual Studio C# , Dimana pemrograman C# bisa dan mudah dipelajari UNTUK PEMULA.
Sebelum sobat mencoba memulai bisa
men download library AForge (bisa di search di google). Dan ekstak file di
program files drive c: )
Apa itu warna RGB? Warna RGB dapat
dikatakan sebagai warna dasar yang akan membentuk jutaan warna lainnya tentu
dengan tingkat serta perpaduan warna yang berbeda beda.
Mari kita mulai tutorial nya :
1. Buatlah project baru dan tambahkan 4 pictureBox ,
openFileDialog1, tombol open File dan
tombol(button) split image.
tombol(button) split image.
2. Pada project ini diperlukan library
AForge.Net, oleh karena itu library AForge.Net harus
ditambahkan ke dalam project terlebih dahulu. Pada window Solution Explorer, klik kanan pada
pilihan Reference, Add Reference.
ditambahkan ke dalam project terlebih dahulu. Pada window Solution Explorer, klik kanan pada
pilihan Reference, Add Reference.
Pilih tab Browse, dan arahkan ke Folder path dari library
Aforge . Contoh disin jufrika blog menggunakan C:\Program Files\AForge.NET\Framework\Release\
kemudian pilih AForge.dll dan AForge.Imaging.dll
kemudian pilih AForge.dll dan AForge.Imaging.dll
3. Double klik tombol Open
File, kemudian tuliskan sub rutin program berikut :
private void button1_Click(object sender, EventArgs e)
{
openFileDialog1.ShowDialog();
}
{
openFileDialog1.ShowDialog();
}
4. Double klik
OpenFileDialog1 kemudian tuliskan sub rutin program berikut :
private void openFileDialog1_FileOk (object sender, EventArgs e)
{
sourceImage = (Bitmap)Bitmap.FromFile(openFileDialog1.FileName);
pictureBox1.Image = sourceImage;
}
private void openFileDialog1_FileOk (object sender, EventArgs e)
{
sourceImage = (Bitmap)Bitmap.FromFile(openFileDialog1.FileName);
pictureBox1.Image = sourceImage;
}
5. Double klik tombol Split
Image dan tuliskan sub rutin program berikut :
private void button2_Click(object sender, EventArgs e)
{
//if the source image is not yet open..don't execute
if (sourceImage == null) return;
//channel initialization
redChannel = new Bitmap(sourceImage);
greenChannel = new Bitmap(sourceImage);
blueChannel = new Bitmap(sourceImage);
// create filter
ChannelFiltering filter = new ChannelFiltering();
// set channels' ranges to keep
filter.Red = new IntRange(0, 255);
private void button2_Click(object sender, EventArgs e)
{
//if the source image is not yet open..don't execute
if (sourceImage == null) return;
//channel initialization
redChannel = new Bitmap(sourceImage);
greenChannel = new Bitmap(sourceImage);
blueChannel = new Bitmap(sourceImage);
// create filter
ChannelFiltering filter = new ChannelFiltering();
// set channels' ranges to keep
filter.Red = new IntRange(0, 255);
filter.Green = new IntRange(0, 0);
filter.Blue = new IntRange(0, 0);
// apply the Red filter
filter.ApplyInPlace(redChannel);
pictureBox2.Image = redChannel;
// set channels' ranges to keep
filter.Red = new IntRange(0, 0);
filter.Green = new IntRange(0, 255);
filter.Blue = new IntRange(0, 0);
// apply the filter
filter.ApplyInPlace(greenChannel);
pictureBox3.Image = greenChannel;
// set channels' ranges to keep
filter.Red = new IntRange(0, 0);
filter.Green = new IntRange(0, 0);
filter.Blue = new IntRange(0, 255);
// apply the filter
filter.ApplyInPlace(blueChannel);
pictureBox4.Image = blueChannel;
}
filter.Blue = new IntRange(0, 0);
// apply the Red filter
filter.ApplyInPlace(redChannel);
pictureBox2.Image = redChannel;
// set channels' ranges to keep
filter.Red = new IntRange(0, 0);
filter.Green = new IntRange(0, 255);
filter.Blue = new IntRange(0, 0);
// apply the filter
filter.ApplyInPlace(greenChannel);
pictureBox3.Image = greenChannel;
// set channels' ranges to keep
filter.Red = new IntRange(0, 0);
filter.Green = new IntRange(0, 0);
filter.Blue = new IntRange(0, 255);
// apply the filter
filter.ApplyInPlace(blueChannel);
pictureBox4.Image = blueChannel;
}
6. Tambahkan global
variable sebagai berikut :
Bitmap sourceImage;
Bitmap redChannel, greenChannel, blueChannel;
Bitmap redChannel, greenChannel, blueChannel;
7. Tambahkan library Aforge
sebagai berikut :
using AForge;
using AForge.Imaging.Filters;
using AForge.Imaging.Filters;
8. Klik Debug, kemudian
pilih Start Debuging atau tekan F5 untuk menjalankan program.
9. Klik tombol Open Image,
pada form akan muncul gambar.
10. Klik tombol split image,
pada form akan muncul gambar hasil seperti gambar diatas postingan.
Agar lebih memahami penggunaan aplikasi filter RGB ini cobalah sobat mencoba coba
mengganti range warna filter di bagian Red Green Maupun Blue contohnya seperti
berikut sob :
filter.Red = new IntRange(0, 255);
jadi
filter.Red = new IntRange(200, 255);
Apa
hasilnya?
Silahkan
diterapkan semoga bermanfaat untuk sobat semua.
Note : Untuk
memudahkan sobat belajr dengan gambar yang sama silahkan cari di google image
dengan pencarian warna RGB.