開始來研究有關於EmguCV的東西,
主要是希望能在短時間內來玩玩看影像辨識相關的,
所以就來Study這玩意了。
會選擇使用EmguCV的原因,是因為這個是OpenCV的C#版本,
那為什麼不用OpenCV直接寫呢 ?
沒什麼- _ -... 就是單純想練練C#,
這玩意真的久了沒寫,生疏啊 !!!!!!!!!!
好的,讓我們開始吧,
建置這玩意的環境,其實沒有我想像中的那麼容易,
主要就是因為EmguCV和OpenCV是有關連性的,
所以,如果你這兩個版本對不上的話,那很抱歉,你會像我一樣,光找問題就以小時起跳。
Step1.
讓我們進入主題吧,
首先,我們先前往官方網站
https://sourceforge.net/projects/emgucv/files/latest/download
這是一個下載頁面,然後你下載完後,網頁往下拉,在下載OpenCV的
然後,你會有這兩個安裝檔,
筆者建議,你可以將路徑設在C槽下,
這樣第一步驟就完成了。
Step2.
接下來我們來設置環境路徑,
我的電腦→右鍵→內容→
進階系統設定→環境變數→
Path→加入→
C:\opencv\build\bin;C:\Emgu\emgucv-windesktop 3.4.3.3016\bin\;
確定後,咱們可以進入CMD (命令提示字元),敲入path,來去看看自己設的有沒有在Path裡面,
如果都有,那麼恭喜你,第二步達成。
Step3.
接下來,第三步,這可說是關鍵中的關鍵,
打開你的Visual Studio,創一個 Visual C# →Console Application,
名稱可以取 : EmguCV_HelloWorld
打開後,我們要加入Reference,
右鍵→AddReference→去你的Emgu的目錄
應該是會在 C:\Emgu\emgucv-windesktop 3.4.3.3016\bin\
將
勇敢的加進你的Project裡面,然後 ! 還沒結束,
Project→Properties→Reference Paths :
C:\Emgu\emgucv-windesktop 3.4.3.3016\bin\
C:\opencv\build\bin\
C:\opencv\build\include\opencv2\
然後,將官網的Code貼到你的裡面
static void Main(string[] args)
{
String win1 = "Test Window"; //The name of the window
CvInvoke.NamedWindow(win1); //Create the window using the specific name
Mat img = new Mat(200, 400, DepthType.Cv8U, 3); //Create a 3 channel image of 400x200
img.SetTo(new Bgr(255, 0, 0).MCvScalar); // set it to Blue color
//Draw "Hello, world." on the image using the specific font
CvInvoke.PutText(
img,
"Hello, world",
new System.Drawing.Point(10, 80),
FontFace.HersheyComplex,
1.0,
new Bgr(0, 255, 0).MCvScalar);
CvInvoke.Imshow(win1, img); //Show the image
CvInvoke.WaitKey(0); //Wait for the key pressing event
CvInvoke.DestroyWindow(win1); //Destroy the window if key is pressed
}
然後 ! 這時候你會發現你的System.Drawing.Point被提示不行,
所以你要手動加→Add Reference→ Assemblies→找到System.Drawing
然後給他加進去 !
然後,走起!!!! 按下Debug,如果你發現跟我一樣的錯誤
代表說你沒有把這個dll放近來,
所以你得去找到這個DLL,將它放到你的執行目路下面去,
然後 , 在按下 Debug !!!!
這幾個步驟,看似很簡單,實際上真的讓我搞了快半天,
從下午開始休息一直搞到現在5:21分 ..............,
尼馬....,真的很另人崩潰。
好了,教學結束,
如果各位看官有遇到其他我沒講到的問題,
也可以在底下留言讓我知道,
基本上.....個人認為,在環境架構這塊,
我已經把所有可以遇到的問題都遇到一次了.......................................
留言列表