Нет изображения с веб-камеры AForge в C # - PullRequest
0 голосов
/ 26 октября 2018

Я только изучаю C #, и я пытался реализовать программу захвата изображения с веб-камеры.Я пользуюсь библиотекой Aforge, дело в том, что в моей картинке не отображается изображение с веб-камеры, и я не понимаю, почему.Если кто-то знает мою ошибку, пожалуйста, дайте мне знать.Заранее спасибо.

using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Windows.Forms;
using DarrenLee.Media;

namespace test4
{
    public partial class MainForm : Form
    {
        int count = 0;
        Camera myCamera = new Camera();

        public MainForm()
        {
            InitializeComponent();

            GetInfo();
            myCamera.OnFrameArrived += myCamera_OnFrameArrived;
        }
        private void GetInfo()
        {
            var cameraDevices = myCamera.GetCameraSources();
            var cameraResolutions = myCamera.GetSupportedResolutions();

            foreach (var d in cameraDevices)
                cmbCameraDevices.Items.Add(d);

            foreach (var r in cameraResolutions)
                cmbCameraResolutions.Items.Add(r);

            cmbCameraDevices.SelectedIndex = 0;
            cmbCameraDevices.SelectedIndex = 0;

        }
        private void myCamera_OnFrameArrived(object source, FrameArrivedEventArgs e)
        {
            Image img = e.GetFrame();
            picCamera.Image = img;
        }
        void ComboBox1SelectedIndexChanged(object sender, EventArgs e)
        {
            myCamera.ChangeCamera(cmbCameraDevices.SelectedIndex);

        }
        void ComboBox2SelectedIndexChanged(object sender, EventArgs e)
        {
            myCamera.Start(cmbCameraDevices.SelectedIndex);
        }
        void Form1FormClosing(object sender, FormClosingEventArgs e)
        {
            myCamera.Stop();
        }
        void BTTsaveClick(object sender, EventArgs e)
        {
            string filename = Application.StartupPath + @"\" + "Image" + count.ToString();
            myCamera.Capture(filename);
            count++;
        }
    }
}

Изображение того, как это выглядит при компиляции: https://i.gyazo.com/6956a07405cd4bf5e74c20bc321bd32e.png

Я подключаю графическое окно с содержимым в этой строке:

Image img = e.GetFrame ();picCamera.Image = img;

...