' C#,c#,visual-studio,winforms,webcam,emgucv"/>

首页 > 解决方案 > 无法将方法组“QueryFrame”转换为非委托类型“Image”' C#

问题描述

我目前正在创建一个 Windows 软件,当使用错误登录 3 次时将使用网络摄像头自动捕获并将捕获的照片保存在文件夹中。在此之前,我在我的 VB.net 项目中尝试过这段代码,它工作正常,但现在我想用 C# 来做,但它给了我这个错误。

无法将方法组“QueryFrame”转换为非委托类型“Image”。

  Emgu.CV.VideoCapture imagecapture;
        public int timeLeft { get; set; }

        void loadimage()
        {
            try
            {

                if ((Directory.Exists("C:\\USBlocker") == false))
                {
                    Directory.CreateDirectory("C:\\PutLock");
                }

                Emgu.CV.Image<Emgu.CV.Structure.Bgr, byte> imageviewer = this.imagecapture.QueryFrame ; //THE ERROR IS HERE
                pictureBox1.Image = imageviewer.Bitmap;


                string fileName = "C:\\USBlocker\\A.jpg";
                int count = 0;
            Find:
                if (File.Exists(fileName))
                {
                    fileName = (("C:\\USBlocker\\A" + Convert.ToString("("))
                                + (count.ToString() + ").jpg"));
                    count++;
                    goto Find;
                }
                else
                {
                    // Add your logic here
                    imageviewer.Save(fileName);
                }

                imagecapture.Dispose();
                this.Hide();
            }
            catch (NullReferenceException ex)
            {
                MessageBox.Show(ex.Message);
            }
        }

        private void timer1_Tick(object sender, EventArgs e)
        {
            if (timeLeft > 0)
            {
                timeLeft = timeLeft - 1;
            }
            else
            {
                timer1.Stop();

                this.Close();
            }
        }

        private void Webcam_Load(object sender, EventArgs e)
        {
            if ((imagecapture == null))
            {
                try
                {
                    imagecapture = new Emgu.CV.VideoCapture();
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }   
       }

标签: c#visual-studiowinformswebcamemgucv

解决方案


推荐阅读