AForge.NET Kütüphanelerine Erişim ve Sistemdeki Kameraları Listeleme

Merhaba,

Bu içeriğimizde AForge.NET kütüphanesinin kaynaklarına erişmeyi ve AForge.NET ile ilk icraatımız olan sistemdeki kameraların tümüne erişip, listelemeyi inceliyor olacağız. AForge.NET kütüphanesinin .dll kaynaklarına erişme konusu sadece bu yazımızda ele alınmış olunmakla birlikte, bundan sonraki tüm yazılarımızda AForge.NET derinliklerine dalacak ve tüm nimetleri zamanla teknik boyutta ele alacağız.

İlk olarak AForge.NET kütüphanesinin kaynak dosyalarını indirmek için bu adresi kullanabilirsiniz. İlgili adreste bulunan “[ Download Libraries Only ]” linki aracılığıyla bizim amaçlarımıza sonsuz eşlik edecek olan AForge.NET kütüphanelerini .dll olarak elde edebilirsiniz.

AForge.NET Kütüphanelerine Erişim ve Sistemdeki Kameraları Listeleme

Elde edilen kütüphaneler yukarıdaki ekran görüntüsünde görüldüğü üzere oldukça fazladır. Lakin bizler yapacağımız çoğu işlemlerde genel mahiyette “AForge.dll“, “AForge.Video.dll“, “AForge.Video.DirectShow.dll“, “AForge.Vision.dll” ve “AForge.Imaging.dll” kütüphanelerini kullanacağımızdan dolayı bu ve bundan sonraki tüm AForge.NET çalışmalarında bu kütüphanelerin projeye refere edildiğini varsayıyor olacağım.

Evet. Artık AForge.NET kütüphanelerini elde ettiğimize göre sistemdeki kameralara erişmeyi ele alabiliriz.

        public void KameralariGetir(PictureBox pb)
        {
            #region Kamera Yakala
            AForge.Video.DirectShow.VideoCaptureDevice FinalVideoSource;
            AForge.Video.DirectShow.FilterInfoCollection VideoCaptuerDevices;

            //Sistemdeki tüm kameralar elde edilmektedir.
            VideoCaptuerDevices = new AForge.Video.DirectShow.FilterInfoCollection(AForge.Video.DirectShow.FilterCategory.VideoInputDevice);

            //İlk kamerayı seçiyoruz.
            FinalVideoSource = new AForge.Video.DirectShow.VideoCaptureDevice(VideoCaptuerDevices[0].MonikerString);
            #endregion
            FinalVideoSource.NewFrame += new AForge.Video.NewFrameEventHandler((sender, eventArgs) =>
            {
                //Görüntü üzerinde işlemleri gerçekleştireceğimiz metot.
                //Görüntü Bitmap olarak elde ediliyor.
                Bitmap image = (Bitmap)eventArgs.Frame.Clone();
                pb.Image = image;
            });
            //Görüntü kalitesini belirtiyoruz.
            FinalVideoSource.DesiredFrameRate = 1;
            //Görüntü büyüklüğünü ayarlıyoruz.
            FinalVideoSource.DesiredFrameSize = new Size(1, 500);

            FinalVideoSource.Start();

        }

Hangi sınıfın hangi kütüphane içerisinde olduğunu görmeniz için kütüphaneleri using ile sayfaya eklemeden direkt olarak referans erişiminde belirtmiş bulunmaktayım. İşte bu kod bloğunda yapmış olduğumuz çalışma neticesinde sistemdeki kameralara erişilebilmekte ve üzerinde her türlü işlem gerçekleştirilebilmektedir.

Mesela; AForge.NET ile teknik boyutta ilk adım olması mahiyetinde aşağıdaki gibi bir form üzerinde bulunan PictureBox nesnesi üzerinde çalışma yapabiliriz.

        private void Form1_Load(object sender, EventArgs e)
        {
            KameralariGetir(pictureBox1);
        }

AForge.NET Kütüphanelerine Erişim ve Sistemdeki Kameraları Listeleme

Sonraki yazılarımda görüşmek üzere…
İyi çalışmalar…

Bunlar da hoşunuza gidebilir...

4 Cevaplar

  1. Merve dedi ki:

    Merhaba, Aforge.net kütüphanesini kullanarak göz bebeğini algılatmamız mümkün müdür? Yoksa opencv veya emguCv mi kullanmalıyız? Yardımlarınızı bekliyorum.

    • Gençay dedi ki:

      Merhaba,

      Göz bebeği gibi teferruat gerektiren çalışmaları OpenCV/EmguCV gibi kütüphanelerle icra etmeye çalışmak daha teknik iş sergilemenizi sağlayacaktır. Bu konuda varsa cascade dosyalarına göz atmanızı, araştırmanızı öneririm.

      Sevgiler…

  1. 16 Temmuz 2017

    […] ?  Herşeyden önce ilgili projemize AForge.NET kütüphanelerini entegre etmeyi […]

  2. 22 Temmuz 2017

    […] ediyoruz. Ayrıca kamera işlemleri için AForge.NET kütüphanesini kullanacağımız için de bu adresteki belirtmiş olduğum tüm kütüphaneleri projenize dahil etmeyi […]

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

CAPTCHA (Şahıs Denetim Kodu) Resmi

*

Copy Protected by Chetan's WP-Copyprotect.