Herkese merhaba
Yeni bir konu ile ilgili ilk yazımı paylaşıyorum.Bu başlık altında görüntü işlemeye yönelik uygulamalar yapmayı planlıyorum.Detayları internette araştırarak bulabilirsiniz.
Hadi başlıyalım.
İlk olarak anahtar kelimemiz "bitmap"
Bitmap tıpkı int,string vs gibi bir değişken diyebiliriz.İçerisine aktardığınız görseli ufak piksellere bölen hazır bir komuttur.
Tanımlaması
Bitmap fotograf;
fotograf=new Bitmap(picturebox1.Image);
Yukarıda picturebox içerisindeki görseli fotograf değişkenimizin içerisine aktardık.
Programcılıkta bildiğiniz üzere bir proje hazırlarken ilk önce kağıt üzerinde işi çözmemiz gerekiyor burdan yola çıkarak bir fotoğrafı parçalarına böldük peki biz nasıl bunu siyah beyaz yapabiliriz ?
Elimizde biraz kalem birde fotoğraf olduğunu varsayalım fotoğrafın beyaz kısımlarına dokunmadan renkli kısımları siyaha boyarsak istediğimizi elde etmiş oluruz.
Bilgisayarda da aynı işlemi yapmamız gerekiyor .
Bu durumda biz fotoğrafımızı piksellerine bölmüştük ,bildiğiniz üzere ekranda renkler RGB formatında oluşturulur yani buda demek olurki renk değerlerini tespit etmemiz gerekiyor.
GetPixel(X,Y);
Bu hazır kod ile belirtiğimiz x vey kordinatındaki pikselin renk değerlerini öğrenebiliyoruz.
Hazırlıyacağımız progamın işleyişini yazalım ;
Fotoğrafı al
Piksellerine böl
Renk değerlerini öğren
Değer ortalamasını al
Yeni fotoğrafı oluştur.
foto = new Bitmap(pictureBox1.Image);
for(int x=0;x<foto.Width;x++)
{
for(int y=0;y<foto.Height;y++)
{
Color renkler = foto.GetPixel(x, y);
int ortalama = ( renkler.G + renkler.B) / 3;
foto.SetPixel(x, y, Color.FromArgb(ortalama, ortalama,ortalama));
}
}
pictureBox3.Image = foto;
Kısa ve öz .

Yorumlar
Yorum Gönder