Merhaba 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;
- emresupcin
- C / C++ / C#
- 2 Şubat 2013 - 18:05
- Yorum Yok
- 2184 Görüntülenme
C# C# kodları C# resmi piksellerine ayırma C# resmi pikselleştirme piksel nedir piksellere ayrılma resmi piksellere ayırma