国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

【C#】#100 調用攝像頭

2019-11-17 02:36:47
字體:
來源:轉載
供稿:網友

【C#】#100 調用攝像頭

需求:由于項目需要獲得用戶的頭像,所以需要用C#調用攝像頭獲取頭像。

下面寫一個調用攝像頭的方法

案例:調用攝像頭的一個DEMO【效果圖】

使用的類庫:AForge.dll 【Demo下載,Demo里面有類庫】

1、檢測電腦上的攝像頭設備

FilterInfoCollection videoDevices = new FilterInfoCollection(FilterCategory.VideoInputDevice);

用Count判斷攝像頭設備的個數,如果沒有攝像頭,則拋出異常【自行處理異常】,有攝像頭,則添加到下拉框中

if (videoDevices.Count == 0)           throw new applicationException(); foreach (FilterInfo device in videoDevices) {           tscbxCameras.Items.Add(device.Name); }

2、連接攝像頭

檢測到攝像頭,就可以開始連接攝像頭,獲取圖像啦。

//選擇下拉框中的一個攝像頭設備 VideoCaptureDevice videoSource = new VideoCaptureDevice(videoDevices[tscbxCameras.SelectedIndex].MonikerString);            //設置獲取顯示圖像框的大小 videoSource.DesiredFrameSize = new Size(320, 240); videoSource.DesiredFrameRate = 1;             //為攝像頭控件設置攝像頭獲取的圖片videPlayer.VideoSource = videoSource; //開啟攝像頭videPlayer.Start();

3、關閉攝像頭【也可以用 Stop() 方法關閉】

videPlayer.SignalToStop();videPlayer.WaitForStop();

Demo運行截圖:

image


項目中,多了一個截圖:把攝像頭上的圖片繪制下來

 img = new Bitmap(102, 126, PixelFormat.Format24bpPRgb); //設置圖片的大小,位數 videPlayer.DrawToBitmap((Bitmap)img, new Rectangle(0, 0, videPlayer.Width, videPlayer.Height));  //繪制圖像到Img對象 videPicture.Image = img;   //顯示到PictureBox控件上

在這里遇到過一個問題,那就是 GDI+一般性錯誤【原因:資源占用】

遇到問題的情況:

1、修改人員信息的時候,先從本地讀取圖片文件,賦值到PictureBox上。

2、保存的時候會再把PictureBox的圖片保存到本地硬盤中。

解決辦法: 解除圖片資源占用即可】

1、把本地圖片讀取出來,深復制一份

2、把深復制的那一份賦值到PictureBox

3、關閉本地圖片資源的關閉

#region 深復制圖片,并且關閉資源,防止出現占用 //圖片的深復制,并且關閉占用圖片文件的資源 img = new Bitmap(path); Image bmp = new Bitmap(img.Width, img.Height); Graphics draw = Graphics.FromImage(bmp); draw.DrawImage(img, 0, 0); draw.Dispose(); img.Dispose(); videPicture.Image = bmp;#endregion

項目中使用截圖:

image


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 庆阳市| 涞水县| 辽中县| 高雄市| 大渡口区| 富平县| 天镇县| 通江县| 乐东| 伊宁市| 环江| 宁明县| 甘洛县| 玛沁县| 甘德县| 郸城县| 苍南县| 如东县| 疏附县| 宁陵县| 二连浩特市| 亳州市| 隆化县| 延津县| 伊宁市| 乐都县| 万全县| 永寿县| 黄大仙区| 历史| 繁峙县| 辛集市| 中西区| 犍为县| 南宁市| 津南区| 祁连县| 潞西市| 育儿| 玛纳斯县| 无极县|