EmguCV_開啟視訊_通道分割
今天我們要來 用C#版的 EmguCV 來進行
影像 / 視訊 的處理
首先 開發環境要處理好
這裡我用的是 Visual Studio 2013版本
EmguCV 版本 是 使用 3.0.0.2157
===============================================================
作業系統 是 win10 x64
===============================================================
首先 是 介面部分 請去拉 一個 pictureBox物件
可以添加 按鈕 之後再寫 相關 應用 變化
之後 去撰寫程式碼
最乾淨俐落的程式碼 片段 分三區塊(三個步驟)
Step1. 宣告
Step2. 開啟webcam
Step3. 取得視訊一張張的 frame
這裡我們在開啟了 攝像機 之後
利用
Application.Idle += new EventHandler(自己取的函式名稱);
官方 Documentation 連結說明
https://msdn.microsoft.com/zh-tw/library/system.windows.forms.application.idle(v=vs.100).aspx
Application.Idle 事件
Application 這個 類別
需引用 【命名空間】 System.Windows.Forms
Application.Idle功能函數
==> 當應用程式處於空閒狀態時執行相應代碼
執行完之後 的 結果
分析程式碼結構
法一. 先宣告 再取frame
法二. 再宣告當下 同時取 frame
影像 / 視訊 的處理
首先 開發環境要處理好
這裡我用的是 Visual Studio 2013版本
EmguCV 版本 是 使用 3.0.0.2157
===============================================================
作業系統 是 win10 x64
===============================================================
首先 是 介面部分 請去拉 一個 pictureBox物件
可以添加 按鈕 之後再寫 相關 應用 變化
之後 去撰寫程式碼
最乾淨俐落的程式碼 片段 分三區塊(三個步驟)
Step1. 宣告
Step2. 開啟webcam
Step3. 取得視訊一張張的 frame
這裡我們在開啟了 攝像機 之後
利用
Application.Idle += new EventHandler(自己取的函式名稱);
官方 Documentation 連結說明
https://msdn.microsoft.com/zh-tw/library/system.windows.forms.application.idle(v=vs.100).aspx
Application.Idle 事件
Application 這個 類別
需引用 【命名空間】 System.Windows.Forms
Application.Idle功能函數
==> 當應用程式處於空閒狀態時執行相應代碼
執行完之後 的 結果
分析程式碼結構
法一. 先宣告 再取frame
法二. 再宣告當下 同時取 frame
===========================================================
通道分割
好 這次教學文章先到這
您好 我想問您這個程式執行的問題。
回覆刪除參考程式撰寫執行時會出現Overflow for imageSize的錯誤。
如果參考您程式最後註解而改用mat是可以做影像顯示,但是就沒有辦法做影像矩陣的編輯。
請問這部分您有建議的寫法嗎?
你好
刪除從你的回應看起來是有影像大小溢位的問題
emgucv 3.x 之後的建議都可以改用.Mat去做相關運算
此範例是練習時用的
觀念上的小示範
「影像矩陣的編輯」想問是要做捨麼樣的處理?
通道分割其實可以直接用Emgucv(opencv C#版本API)內建函數
Split()
可以參考這篇相關教學
http://2016webcam.blogspot.com/2016/09/emgucv31-2015emgucv.html
如有問題歡迎截圖討論
影像相關矩陣的運算
回覆刪除前面要看是有座捨麼處理
才能得知Overflow for imageSize錯誤的真因
此外opencv函數上使用的相關教學資源
會比emgucv來得多
可以從opencv (python / C++)相關API呼叫操作代碼
嘗試改為在C#上調用試看看
若有執意要用其開發的話