訊為iTOP4412開發闆ARM-linux 交叉編譯opencv
在4412闆子上使用opencv,一般來說我們首先需要交叉編譯一下opencv源碼,得到arm平台能識别的代碼(具體的交叉編譯過程參考這裡),我們這裡已經交叉編譯好了一個版本的OpenCV,可以直接下載下傳(這個版本的opencv是利用opencv-2.4.10的源碼在ubuntu12.04系統中交叉編譯完成的)。
百度網盤連結: https://pan.baidu.com/s/1dG1Lwx7
密碼: mhpj
CSDN下載下傳:http://download.csdn.net/download/chenhuan20123/
下面需要把下載下傳好的opencv-lib-arm.tar.gz拷貝到arm平台中:
- 首先将下載下傳好的opencv-lib-arm.tar.gz檔案拷貝arm闆子上。
- 再将檔案拷貝到/usr/local/app檔案夾下。
- 解壓opencv-lib-arm.tar.gz檔案
tar -zxvf opencv-lib-arm.tar.gz ls #檢視檔案下的内容,可以看到opencv-lib-arm檔案夾
- 下面開始opencv的配置
- 編輯庫連接配接配置檔案
cd /etc/ld.so.conf.d vim opencv.conf
- 添加如下内容:
/usr/local/app/opencv-lib-arm/lib
- 然後執行
指令,使之生效。ldconfig
- 添加環境變量
,在檔案最後添加vim /etc/bash.bashrc
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/app/opencv-lib-arm/lib/pkgconfig export PKG_CONFIG_PATH
- 儲存之後,執行
指令,使之生效。source /etc/bash.bashrc
- 至此,OpenCV的移植、配置全部完成!!!
- 編輯庫連接配接配置檔案
- 下面利用一段小程式測試opencv是否安裝正确:
-
測試的源程式檔案如下:
檔案名:main.cpp
#include <iostream> #inluce <opencv2/opencv.hpp> #include "fstream" using namespace std; using namespace cv; int main() { Mat img; img=Mat::ones(,,CV_8U); img=img*; imshow("a white picture",img); waitKey(); getchar(); return ; }
-
進入到存放main.cpp檔案的檔案夾下,執行下面的指令,對程式進行編譯:
其中gcc是編譯用的編譯器;main.cpp為要進行編譯的程式;run為編譯之後生成的可執行二進制程式,可以任意命名。
-
然後執行下面的指令
若出現一張白圖說明opencv配置成功。
-
參考文章:http://blog.csdn.net/herhero/article/details/50913150#insertcode