Fork me on GitHub

9/23/2010

在 iPhone 程式開發當中使用 OpenCV


本篇記錄如何使用 Xcode 開發 iPhone App 的時候可以使用 OpenCV 進行影像處理。

首先,要先下載網路上熱心的人已經製作好的 static library: http://niw.at/articles/2009/03/14/using-opencv-on-iphone/en

下載回來解壓縮之後可以看到兩個資料夾,opencv_device 和 opencv_simulator 這當中有需要用到的 header 和 lib 檔案。

接著,在建立專案的時候,編輯 Group & Files 當中打開 Target 項目。雙擊其子項目則會跳出 Target "專案名稱" Info 的視窗,找到其中的 Search Paths 欄位,其中有 Header Search Paths 和 Library Search Paths 兩個項目需要設定。

由於針對 device 和 simulator 有不一樣的 lib 對應,所以分成兩組,因此選取 Header Search Paths 之後點擊左下角的功能選單,選擇 Add Build Setting Confition,然後分成兩組 Any iOS device 和 Any iOS simulator,針對這兩組在添加對應的 header 和 lib 路徑。( 附註. ${SOURCE_ROOT} 是專案資料夾路徑的縮寫, 並注意路徑當中最好不要有空格,否則會出現找不到 <opencv/cv.h> 的錯誤)




接著,要在 Linking 的欄位當中找到 Other Linker Flags 並且加入 -lstdc++-lz 兩個項目。

最後,滑鼠選取專案,然後按右鍵 Add -> Add Group 然後新增一個名為 Library 的 Group,然後選取它,到主選單裡面的 Project -> Add to Project,會跳出一個選取視窗,這時候就找到 device 資料夾底下 lib 資料夾的 libcv.a, libcxcore.a, libopencv_lapack.a 三個檔案並且加入,就大功告成了!

如果是要在 MacOSX 下建立 OpenCV 環境的話可以參考:http://opencv.willowgarage.com/wiki/Mac_OS_X_OpenCV_Port。基本上使用 MacPorts 蠻簡單的!

參考資料:How to add multiple static library files with different architectures to Xcode

......




No comments:

Post a Comment