C#-Piksellere-Ayırma_emresupcinMerhaba sevgili okurlar,

Bugün ki dersimizde C# kullanarak herhangi bir resmin nasıl piksellere ayrıldığını anlatacağım. Tüm sayısal görüntülerin en küçük parçası olan noktacıklara piksel denildiğini biliyoruzdur.

 

Günümüzde kullandığımız pek çok teknolojik üründe (Cep telefonu, Kamera, Televizyon, Monitör, Fotoğraf Makinesi) karşımıza çıkan Piksel (Pixel) teriminin ne anlama geldiğini ve bu aygıtlar üstünde ne gibi bir görevi olduğunu duymuşsunuzdur.

 

İlk olarak önceliğimiz  olarak bir, bitmap oluşturmalıyız;

2  var goruntuGenislik = orjinalGoruntu.Width;
3  var goruntuYukseklik = orjinalGoruntu.Height;
4  var piksellestirilmisGoruntu = new Bitmap(goruntuGenislik, goruntuYukseklik);

Ardından pikselleştirme için önceden karar verdiğimiz boyutlar çerçevesinde orjinal görüntü pikselleri içerisinde dolaşmaya başlayalım;

1  for (var i = 0; i < goruntuGenislik; i += pikselBoyutu) {
2    for (var j = 0; j < goruntuYukseklik; j += pikselBoyutu) {
3    //...   
4   }
5  }

Alan içerisinde merkezdeki piksel’i alalım. Bu piksel daha sonra sonuç görüntümüzde bu alana denk gelen pikseller için kullanacağımız rengi belirlememize yardımcı olacak.

2  xOfseti = yOfseti = pikselBoyutu / 2;
3  if (i + xOfseti >= goruntuGenislik) {
4   xOfseti = goruntuGenislik - i - 1;
5  }
6   if (j + yOfseti >= goruntuYukseklik) {
7   yOfseti = goruntuYukseklik - j - 1;
8  }
9   var piksel = orjinalGoruntu.GetPixel(i + xOfseti, j + yOfseti);

Son Olarak;

2  for (var x = i; x < i + pikselBoyutu && x < goruntuGenislik; x++) {
3    for (var y = j; y < j + pikselBoyutu && y < goruntuYukseklik; y++) {
4        piksellestirilmisGoruntu.SetPixel(x, y, piksel);
5    }
6  }

Resmi Picture Box’a Aktarmak İçin;

 1  pictureBox1.Image = piksellestirilmisGoruntu;
Yazar
Yazar
Bilgisayar Programcısı, Web Tasarımcı, Üniversite Öğrencisi...
Twitter Facebook Google Linkedin Flickr YouTube

Önceki Yazı:Twitter Hesabınız Varsa Bu Haberi Mutlaka Okuyun!

Sonraki Yazı:Switch Case ile Vize ve Final Not Ortalaması Hesaplama Programı?

BENZER YAZILAR
YORUMLAR
SİZ DE CEVAP YAZABİLİRSİNİZ
Bu yazı hakkında görüşünüzü belirtin.

ES Web Tasarım Web Tasarım Blog Teması Emre Supçin Bu tema ES Web Tasarım tarafından düzenlenmiştir. Hiçbir şekilde kopyalanamaz.