none
Aforge kütüphanesi Motion Detector Hareketleri Göremiyorum RRS feed

  • Soru

  • Bitmap goruntu = (Bitmap)eventArgs.Frame.Clone();
                pictureBox1.Image = goruntu; // Seçilen kameranın görüntüsü picturebox1'e yüklendi.
                
                Bitmap goruntu2 = (Bitmap)eventArgs.Frame.Clone();     
    
                BlobCountingObjectsProcessing motionProcessor = new BlobCountingObjectsProcessing();
                MotionDetector detector = new MotionDetector(new SimpleBackgroundModelingDetector(), motionProcessor);
                motionProcessor.HighlightColor = System.Drawing.Color.Green;
                motionProcessor.MinObjectsHeight = MinObjectsSize;
                motionProcessor.MinObjectsWidth = MinObjectsSize;     
                float motionLevel = detector.ProcessFrame(goruntu2);
                pictureBox2.Image = (Bitmap)goruntu2.Clone();
    Kullandığım kodları verdim. Projede iki tane picturebox var. Birincisinde kullanılan kameradaki normal görüntü gözüküyor. İkincisinde ise hareketli nesneyi tespit etmesini istiyorum. Fakat iki görüntü de aynı oluyor. Tespit ettiği görüntüyü görebilmem için bir şekil içerisine mi alması gerekiyor veya nerede yanlış yapıyorum? Proje için uzun zamandır uğraşıyorum. Ama yeterli kaynak bulamadığım için kodlar yanlış olabilir. Yardımlarınızı bekliyorum. 
    1 Ekim 2013 Salı 12:16

Yanıtlar

Tüm Yanıtlar

  • Selam;

    Şunları inceleyebilirsiniz,

    http://hintdesk.com/c-aforge-net-examples-for-average-color-and-motion-detection/

    http://www.codeproject.com/Articles/10248/Motion-Detection-Algorithms

    http://stackoverflow.com/questions/17625712/motion-detection


    Microsoft bu servisi kullanıcılarına yardım etme, Microsoft urunleri ve teknolojileriyle ilgili bilgi bankasını genişletme amacıyla ucretsiz sunmaktadır. Bu icerik olduğu gibi benim tarafımdan hazırlanmış olup Microsoft tarafından herhangi bir sorumluluk ustlenildiği anlamına gelmez. İletişim : alirizainceoglu[at]hotmail[nokta]com

    2 Ekim 2013 Çarşamba 10:51
  • Linkler için teşekkür ederim. Buraları da inlecemiştim ama pek bir değişiklik yapamadım. 
    if (detector!=null)
                {
                    Pen kalem1;
                    Rectangle dik1 = new Rectangle(30, 30, 20, 20);
                    Graphics g = pictureBox2.CreateGraphics();
                    kalem1 = new Pen(Color.Black, 1);//Siyah çerçeveli ve belirtilen sayı ile kalınlığı ayarlanan                                                               dikdörtgen.
                    g.DrawRectangle(kalem1, dik1);
      
                    float motionLevel = detector.ProcessFrame(goruntu2);
                    pictureBox2.Image = (Bitmap)goruntu2.Clone();
    
                    
    
                }
    
    Hatamın veya eksikliğin yukarıdaki kod bloğunda olduğunu düşünüyorum. İlk olarak program koşulu geçiyor ve picturebox2'de görüntüyü ve kendi oluşturduğum dikdörtgeni görüyorum. Fakat hareketli nesneyi katip etmesini (yuvarlak veya dikdörtgen içerisine almasını) sağlayamıyorum. Kodlarımın doğruluğundan da konuyu açarken söylediğin gibi kesin emin değilim. Bir çok deneme yanılma yaparak enson bu hale getirdim. Hata veya eksiklik nerede olabilir acaba? 
    3 Ekim 2013 Perşembe 13:16
  • Yok mu hiç bu konuyla uğraşan, herhangi bir fikri olan? 
    7 Ekim 2013 Pazartesi 10:27