91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C#調用攝像頭實現拍照功能的示例代碼

發布時間:2020-10-22 09:07:11 來源:腳本之家 閱讀:373 作者:svq18656 欄目:開發技術

前言

老師要求我們學生做一套拍照身份驗證系統,經過長時間的學習,有了這篇文章,希望能幫到讀者們。

正文

首先介紹本文的主角:AForge
創建一個C#項目,引用必備的幾個DLL

  • AForge.dll
  • AForge.Controls.dll
  • AForge.Imaging.dll
  • AForge.Math.dll
  • AForge.Video.DirectShow.dll
  • AForge.Video.dll

這些DLL讀者們可以在文末下載我附帶的Demon

引用必要的命名空間

using AForge.Controls;
using AForge.Video;
using AForge.Video.DirectShow;

至此,便可以開始編寫代碼了。

首先遍歷操作系統上的攝像頭控件:

public static bool GetDevices()
    {
      try
      {
        //枚舉所有視頻輸入設備
        videoDevices = new FilterInfoCollection(FilterCategory.VideoInputDevice);
        if (videoDevices.Count != 0)
        {
          Console.WriteLine("已找到視頻設備.");
          return true;
        }

        return false;
      }
      catch (Exception ex)
      {
        Console.WriteLine("error:沒有找到視頻設備!具體原因:" + ex.Message);
        return false;
      }

    }

找到控件后就可以初始化攝像頭:

private static void CameraConn()
    {
      videoSource = new VideoCaptureDevice(videoDevices[selectedDeviceIndex].MonikerString);
      vid.VideoSource = videoSource;
      vid.Start();
    }

但是這里為止,都只是攝像拍攝,如果需要拍照,則需要通過eventArgs.Frame.Clone()截取視頻中的某一幀圖像
這里就需要通過事件來處理:

public static void GrabBitmap()
    {
      if (videoSource == null)
      {
        return;
      }
      videoSource.NewFrame += new NewFrameEventHandler(videoSource_NewFrame); //新建事件
    }

    static void videoSource_NewFrame(object sender, NewFrameEventArgs eventArgs)
    {
      Bitmap bmp = (Bitmap)eventArgs.Frame.Clone();  //Clone攝像頭中的一幀
      bmp.Save(path, ImageFormat.Png);
      videoSource.NewFrame -= new NewFrameEventHandler(videoSource_NewFrame);    //如果這里不寫這個,一會兒會不停的拍照,
    }

代碼中的path變量就是圖片保存的位置,讀者們可以自行設置路徑。我這里默認是用戶桌面下的Temp.png文件

測試代碼下載地址:https://gitee.com/GiveCVE/csharp_camera/raw/master/OpenCamera.zip

到此這篇關于C#調用攝像頭實現拍照功能的示例代碼的文章就介紹到這了,更多相關C#調用攝像頭拍照內容請搜索億速云以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持億速云!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

嘉定区| 东至县| 吉林省| 富裕县| 潼关县| 锦州市| 丹阳市| 南投县| 定安县| 日喀则市| 海口市| 罗田县| 扬中市| 定西市| 井冈山市| 昌平区| 揭阳市| 高雄县| 乌兰察布市| 邵阳县| 泾阳县| 秦皇岛市| 江西省| 衡阳县| 岳阳县| 郴州市| 濮阳县| 方城县| 平潭县| 浮山县| 东台市| 贡山| 和平区| 巴青县| 宝丰县| 龙岩市| 阳原县| 潮州市| 泽州县| 会东县| 乌审旗|