Mac平台下Opencv開發環境搭建

2022-08-22 16:06:15 字數 2483 閱讀 1699

opencv(open source computer vision library),是乙個開源的跨平台的計算機視覺庫,它實現了影象處理和計算機視覺領域的很多通用演算法,可以在多種計算機平台上執行,支援c++、c#、python等語言,也提供了ruby、matlab等語言的介面。opencv是基於bsd許可證發布的,因此它可以免費應用於科研或商業領域。

因為我使用的是mac電腦,懶得每次都要開啟windows虛擬機器使用visual studio程式設計,所以,決定在os x系統使用xcode來進行編譯執行,下面介紹一下整個流程步驟。

1. 安裝

現在執行"brew install opencv",等待即可安裝完成,安裝後路徑是:/usr/local/opt/opencv3,我們可以設定乙個opencv3_home環境變數,方便以後快速開啟這個資料夾。該資料夾下有opencv的核心和擴充套件模組,目錄結構如下:

在lib目錄下是opencv的庫,在include目錄下包含了兩個子目錄:opencv和opencv2,opencv裡面包含了opencv1.x的核心標頭檔案,opencv2安裝模組功能組織,包括核心模組、影象處理模組、2d功能模組、高層gui影象使用者介面模組、機器學習模組等。

注意,這裡安裝的是3.1.0版本的opencv,在官網可以看到,這個版本只支援64位編譯器,如果在windows平台開發,建議選擇現在還很常用的2.4.9版本,隨著64位機基本普及,使用3.0版本更方便,不用再包含一堆的lib了,只要幾個就夠了。

2. 環境配置

開發平台ide的環境大同小異,基本都是選擇程式語言後就確定了編譯器,然後是標頭檔案路徑的設定和庫檔案路徑的設定讓編譯器能找到就行,然後就可以進行編譯鏈結成最終的可執行檔案了,按照這個思想,就不難處理問題了。

2.1 新建xcode專案

2.2 配置工程標頭檔案和庫檔案搜尋路徑,如下圖順序所示:

在library search paths記得要加上「$(project_dir)」,這樣在工程裡新增的庫框架也能搜尋到,另外,因為opencv使用c/c++編寫的,還需要引入c++動態鏈結庫:

在build phase的link binary with libraries下,新增時搜尋:"libstdc++",選中後點選"add"即可:

最後,再新增對opencv庫的引用,新增完成後如下圖所示:

到這裡,開發環境就配置完成了,在visual studio也差不多,都是配置編譯時搜尋標頭檔案和庫檔案的路徑,這裡就不重複了。

3. 測試opencv功能

這裡使用這個工程,主要是為了測試opencv的功能函式,把公共的功能提取出來,然後方便以後移植到android和ios平台下,所有,工程目錄組織如下:

在imgprocess目錄下是通用的影象處理函式,images目錄是預設例項,其他檔案就是cocoa程式設計的檔案了,重點是imgprocess目錄的類檔案。

我們再main.storyboard裡搭建大概的使用者介面程式,如下:

imageview和button的iboutlet和ibaction關聯和ios開發一樣,這裡就不多說了。

編寫影象處理標頭檔案,如下:

這裡特別要注意圈住的地方,需要加上才能編譯連線通過。

這裡宣告了一些影象處理函式,現在來看看cpp檔案的實現:

影象處理部分函式準備好了,現在來驗證一下,這裡看看灰度變化怎麼樣:

函式如下:

執行結果:

功能沒問題~~

接下去就是其他處理函式的編寫和測試了,測試完成後,基本很小的修改就可以移植到android和ios平台了。

好了,在mac平台搭建opencv開發環境到此結束,後面不斷完善先,有時間再補充這部分。

Window平台下Python基礎執行環境的安裝

近期有個地方需要用到python,這裡簡單記錄下windows下基礎環境的安裝。以下為在 window 平台上安裝 python 的簡單步驟 開啟 web 瀏覽器訪問 要使用安裝程式 python version.msi,windows 系統必須支援 microsoft installer 2.0 ...

windows平台下php開發平台的配置

最近想學php,配置了一下開發環境,把我的配置過程寫出來希望對各位有點小小幫助 用的是apache2.2.4 mysql 5.0,php5.2.3,作業系統windows xp sp2 1.安裝apache,mysql,php5.2.3 apache 用的是安裝包直接安裝 安裝路徑 c progra...

在Ubuntu平台下 搭建Mason執行環境

我們平常mason的開發環境都是部署在ubuntu平台上的,因為通過新立得安裝某些必要的軟體時非常方便。以下是部署的經驗總結 需要通過新立得安裝的模組包括 apache2 mod perl2 libapache2 mod perl2 dbi libdbi perl,即dbi模組,可通過cpan安裝 ...