上網找一下資料發現C# 可以很容易就可以取得WebCam的影像
要使用Emgu這個套件
EmguCV 封裝了 OpenCV image processing library,允許在.Net的平台上使用
首先下載並安裝 ( libemgucv-windows-x86-2.3.0.1416.exe )
http://sourceforge.net/projects/emgucv/files/emgucv/2.3.0/libemgucv-windows-x86-2.3.0.1416.exe/download
軟體備份
安裝步驟其實就是一直點下一步
點開執行檔的畫面 --> 下一步
License 說明 -->我接受
選擇要安裝的位置 ,可以使用預設也可以自訂安裝路徑
但是要記得裝在哪裡,因為等一下設定環境變數時要用
選好之後 --> 下一步
建立程式的捷徑名稱 -->下一步
選擇要安裝的原件 --> 安裝
一般都是使用預設的設定,如果有其他需求再自行調整
接著就開始安裝了
過程中會問說是否要加入 Debugger 到 VS(Visual Studio 2010) 中 -->是
安裝完成之後要修改環境變數
如果使用預設應該 C:\Emgu\emgucv-windows-x86 2.3.0.1416\bin
如果剛剛安裝是選用自訂路徑,這邊就要跟著調整
環境變數 -> Path -> 編輯
在變數值欄位加入 Emgu的安裝路徑,記得前後面要用分號(;)隔開
到目前為止Emgu算是安裝設定完成了
接下來是如何把 Emgu 加入到 VS 中了
將 Emgu.CV.UI.dll 加入工具箱內
工具 -->選擇工具箱項目
.NET FrameWork 元件 --> 瀏覽
選擇 C:\Emgu\emgucv-windows-x86 2.3.0.1416\bin\Emgu.CV.UI.dll
如果安狀選自訂路徑,這邊也要跟著調整
按下開啟舊檔之後,會出現 Histogrambox 工具箱的選項 -->確定
有的話表示安裝成功了
在執行的專案裡面加入所需要的dll
瀏覽 -->C:\Emgu\emgucv-windows-x86 2.3.0.1416\bin\
選擇 "Emgu.Util.dll" "Emgu.CV.dll" "Emgu.CV.ML.dll" "Emgu.CV.UI.dll"
如果安裝時自訂路徑,這邊要跟著修正路徑
加入成功之後
還會使用兩個opencv 的dll
opencv_core231.dll
opencv_highgui231.dll
可以在 C:\Emgu\emgucv-windows-x86 2.3.0.1416\bin 裡面找到
如果安裝時自訂路徑,這邊要跟著修正路徑
因為無法參考這兩個dll,所以只能手動放入
放到所要執行專案底下的 bin\Debug
接著就可以來寫個簡單的程式來連接WebCam了
我是使用Window Form來實作
先在設計頁面拉進一個 PictureBox
並命名為 pictureBox1
加入引用會使用到的dll
宣告 WebCam 物件
在建構式中將 WebCam物件連結到攝影機
抓取畫面事件
執行應該就可以看到畫面了
在專案的屬性設定裡面將平台目標設為 X64 應該就可以執行
DEMO
我用筆電操作,執行出來是黑屏,請問要怎麼解決,謝謝
回覆刪除我和你一樣, 但我試用外接的Cam就沒問題, 有可能是我們現在win10內建的Cam驅動程式的問題要再去研究吧...
回覆刪除