Windwos10+VS2017+OpenCV3.4.1+DirectShow+MFC
一、前言
在網上參考了許多的博客和視頻對着諸多的歷程一一實踐,發現自己填了不少坑,當然可以認爲本人理解能力有限或者筆記本的配置與衆博主異同。爲了讓其他和本人電腦配置和換環境設置相同的朋友們能少採坑,特寫此博客。
1.1DirectX與DirectShow介紹
DirectX軟件開發包是微軟公司提供的一套Windows操作平臺上的開發高性能圖形、聲音、輸入、輸出和網絡遊戲的編程接口。
DirectShow是從DirectX6.0中的DirectX Media 發展而來的,它集成了DirectX家族中其他成員(DirectDraw、DirectSound等)的技術。
1.2環境介紹
圖1.1 筆記本電腦系統信息
圖1.2 VS軟件版本信息
二、效果展示
整個代碼實現了攝像頭的選擇、攝像頭參數設置、攝像頭視頻幀的實時顯示、以及相關圖像處理操作。當點擊config按鈕時可以對攝像頭的相應參數進行設置,如下圖中就展示了對攝像頭的曝光度、亮度、對比度等參數進行設置,同時還實現了攝像頭分辨率的設定,以及可以通過capture按鈕對當前視頻幀進抓取,也就是實現了截屏的功能,與此同時當點擊capture按鈕後點擊process按鈕可以對圖像進行圖像處理,圖中顯示的就圖像的二值化。注:本文作者可能在開發和撰寫上存在着錯誤或者考慮不周的地方請各位讀者海涵,若可以的話可以給作者(QQ:1965257078)留言。
圖2.1 工程運行效果圖
三、資料準備
在工程開始請確保系統環境及配置好,如VS2017是否已經安裝好MFC的框架,也就是安裝VS2017時是否勾選了MFC相關的組件,若沒有可以參照如下博客進行補安裝組件:https://blog.csdn.net/u014231345/article/details/90115193。當一切的安裝好這時需要準備DirectShow、OpenCV3.4.1和工程文件包,其中OpenCV3.4.1需要X86版本的,應該本工程是在VS2017的X86中進行調試的,工程文件包中是本的調試代碼。
- DirectShow軟件包:https://download.csdn.net/download/shamozhihuong/11645476
- OpenCV3.4.1(X86)軟件包:https://download.csdn.net/download/shamozhihuong/11645466
- Control_code代碼包:https://download.csdn.net/download/shamozhihuong/11645479
- 工程文件包:https://download.csdn.net/download/shamozhihuong/11645477
四、工程搭建
本節主要是介紹利用上面的資源來手把手的和大家一起搭建工程,來到這一節我已默認大家已經下載好了相應的資源。首先創建項目,選擇MFC Application,如下圖所示。
圖4.1 MFC Application
圖4.2 Dialog based
如上圖所示,選擇Dialong based,並點擊Finish完成項目創建。完成項目創建後需要將controlcode中的代碼到工程目錄下,如下圖所示。
圖4.3 拷貝controlcode中的代碼文件
當拷貝完成後,需將文件添加到工程中,添加操作如下圖所示。
圖4.4 添加文件
當文件添加成功後,需添加依賴和調用路徑,其操作如下圖所示。
圖4.5 添加依賴1
圖4.6 添加依賴2
圖4.7 添加依賴3
完成了依賴和路徑的配置後,將OpenCV和DirectShow的頭文件添加進去,其具體操作如下,其中的宏非常的重要,一定要添加正確。
圖4.8 添加頭文件
圖4.9 添加宏
下圖是完成上面配置後的運行調試,可以看到運行成功沒有0 Error,0 Warring。到這,基本的配置工作已經完成,後面需要做的就是,具體寫功能代碼,功能代碼大家可以直接下載拷貝,並理解消化。
圖4.10 運行調試
五、主要要點
1、運行環境OpenCV用X86的,目前好的官方下載的OpenCV中已經沒有帶X86了,只有X64,所以若想用新版本的,需要要自己下載OpenCV源碼編譯一下,編譯生成X86版本的。
2、配置中的路徑一定要配置正確。
3、宏一定要添加正確。
4、再次附上資料包:
- DirectShow軟件包:https://download.csdn.net/download/shamozhihuong/11645476
- OpenCV3.4.1(X86)軟件包:https://download.csdn.net/download/shamozhihuong/11645466
- Control_code代碼包:https://download.csdn.net/download/shamozhihuong/11645479
- 工程文件包:https://download.csdn.net/download/shamozhihuong/11645477
- 淘寶網址:https://item.taobao.com/item.htm?spm=a1z10.1-c-s.w4004-14240154088.6.22125741m8tNMa&id=569939994452