天天看點

迅為-i.MX6ULL 開發闆-移植OpenCv3.4.1-搭建編譯環境

本章節将介紹 OpenCV 的移植方法,及結合 Qt 例程去進一步學習 OpenCV 識别圖像。本章節使用的資料已經放到了開發闆網盤資料中,路徑為:“11_Linux 系統開發進階\86_章節_移植 OpenCv3.4.1 使用資料”。

我們需要準備的資料:

1.開發闆使用的是 i.MX6ULL 終結者,開發闆裡面是 Yocto 檔案系統。

2.使用 Ubuntu16.04

3.提供 opencv 源碼“opencv-3.4.1.zip”

4.QT 測試例程

86.1 安裝交叉編譯工具

移植的 QT 系統需要的交叉編譯器就是我們編譯 qt 的編譯器,因為我們是 Yocto 系統,是以我們用編譯 Yocto 的編譯器來編譯 OpenCV。交叉編譯器為:gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf。設定交叉編譯器請參考 i.MX6ULL 終結者-開發闆使用手冊 4.3 章節 搭建交叉編譯環境。

86.2 搭建 OpenCV 的編譯環境

1.在 Ubuntu 建立一個 opencv 檔案夾。将迅為提供的 opencv-3.4.1 源碼壓縮包複制到 opencv 這個目錄,解壓。然後再 opencv 目錄下建立 install,build 檔案夾。build 檔案夾是建構目錄 ,install 檔案夾是安裝目錄。如圖 86.2.1 所示:

迅為-i.MX6ULL 開發闆-移植OpenCv3.4.1-搭建編譯環境

2.安裝 cmake 和 cmake-gui 工具

sudo apt-get install cmake cmake-qt-gui cmake-curses-gui

迅為-i.MX6ULL 開發闆-移植OpenCv3.4.1-搭建編譯環境

安裝完成提示安裝成功,作者是已經安裝過了,如圖 86.2.3 所示:

迅為-i.MX6ULL 開發闆-移植OpenCv3.4.1-搭建編譯環境

3.進入 build 目錄下,執行指令 cmake-gui,開始配置 OpenCV 的環境執行完成後會出現圖形化工具cmake-gui。指定我們源碼的所在路徑和建構目錄。勾選 Advanced,再點選 Configure 或者 Generate。

迅為-i.MX6ULL 開發闆-移植OpenCv3.4.1-搭建編譯環境
迅為-i.MX6ULL 開發闆-移植OpenCv3.4.1-搭建編譯環境

4.選擇 Unix Makefiles,然後選擇 Specify options for cross-compiling,再點選 Next。

迅為-i.MX6ULL 開發闆-移植OpenCv3.4.1-搭建編譯環境

5.填寫交叉編譯器的路徑,注意紅色部分請填寫自己的交叉編譯器路徑。

Operation System:topeet

Compilers C:

/usr/local/arm/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gcc

Compilers C++:

/usr/local/arm/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-g++

Targer Root:/usr/local/arm/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/arm-linux-gnueabihf/bin

指定交叉編譯工具的具體路徑,按個人路徑指定,其他按圖所示填寫,如圖 86.2.7 所示。

迅為-i.MX6ULL 開發闆-移植OpenCv3.4.1-搭建編譯環境

6. 我們還需要配置一些資訊,點選如下圖 CMAKE 處,在 CMAKE_EXE_LINKER_FLAGS 處添加上-lpthread -lrt -ldl。添加這些是指定依賴庫的連結參數。

迅為-i.MX6ULL 開發闆-移植OpenCv3.4.1-搭建編譯環境

7.再在 CMAKE_INSTALL_PREFIX 處指定安裝目錄,我們在上面已經建立了 install 安裝目錄。我們直接指定到該目錄即可。如果不指定,它會預設安裝到 Ubuntu 系統目錄/usr/local 下。這樣會直接替換我們/usr/local 下的庫。

迅為-i.MX6ULL 開發闆-移植OpenCv3.4.1-搭建編譯環境

8.至此我們配置完,現在我們需要生成 Makefile 等檔案,我們先點選 Configure,再點選 Generat 就可以生成了。點選了 Generate 後看到資訊像如圖 86.2.10 一樣,表明生成成功。若出現報錯,請根據對話框裡的内容指定的檔案去自行去檢查錯誤!一般都是交叉編譯器路徑不對造成的。配置完成生成檔案後,我

們點選左上角關閉這個圖形化配置界面即可。

迅為-i.MX6ULL 開發闆-移植OpenCv3.4.1-搭建編譯環境

下節内容:編譯 OpenCV 源碼

更多教程:關注B站(哔哩哔哩)搜尋-北京迅為,可以看到更多教程噢