国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

【轉載】opencv2.4.9移植迅為4412開發板文檔

發布時間:2016-12-14 10:13    發布者:書白
OpenCV是目前開源項目中最著名的基于機器視覺方向的圖像處理的開發包,目前已經有被移植到嵌入式Linux環境上。本文介紹了OpenCV交叉編譯的基本步驟。
一、編譯環境及庫文件
linux環境:ubuntu12.04
交叉編譯:4.3.2
arm板子:iTOP4412開發板
libz:        
libjpeg:      
libpng:      
libyasm:      
opencv:      
libx264:      
libxvid:      
lffmpeg:      
cmake:      
二、opencv-2.4.9的移植過程
1、libz的交叉編譯:
# ./configure --prefix=/usr/local/arm/4.3.2/arm-none-linux-gnueabi/zlib-install --shared  
修改makefile
CC=arm-linux-gcc
AR=arm-linux-ar
RANLIB=arm-linux-ranlib
CDSHARED=arm-linux-gcc -shared -wl, -soname,libz.so.1,--version-script,zl lib.map (不一樣沒關系只改前面編譯器)
#make
#make install
2、libjpeg的交叉編譯:
#./configure --host=arm-linux --prefix=/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libjpeg-install --enable-shared --enable-static
#make
#make install
3、libpng的交叉編譯:
#./configure --host=arm-linux --prefix=/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libpng-install --enable-shared --enable-static
#make
#make install
4、yasm的交叉編譯:
#./configure --host=arm-linux --prefix=/usr/local/arm/4.3.2/arm-none-linux-gnueabi/yasm-install --enable-shared --enable-static
#make
#make install
5、libx264的交叉編譯:
#CC=arm-linux-gcc ./configure --enable-shared --host=arm-linux --disable-asm --prefix=/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libx264-install
#make
#make install
6、libxvid的交叉編譯:
#cd build/generic
#./configure --prefix=/usr/local/arm/4.3.2/arm-none-linux-gnueabi/libxvid-install --host=arm-linux  --disable-assembly
#make
#make install
7、ffmpeg的交叉編譯:
./configure --prefix=/usr/local/arm/4.3.2/arm-none-linux-gnueabi/ffmpeg-install --enable-shared --disable-static --enable-gpl --enable-cross-compile --arch=arm --disable-stripping --target-os=linux --enable-libx264 --enable-libxvid --cc=arm-linux-gcc --enable-swscale
#make
#make install
**************************************************************************
到此所有依賴庫編譯安裝完成
安裝目錄在:/usr/local/arm/4.3.2/arm-none-linux-gnueabi/
每個庫有各自的-install文件夾
新建文件夾
#mkdir /usr/local/arm/4.3.2/arm-none-linux-gnueabi/opencv-depend/
然后拷貝所有-install下的lib下的文件到opencv-depend目錄下
***************************************************************************
8.cmake-gui安裝(自己下載)
到官網上下載已經編譯好的cmake-2.8.8-Linux-i386.tar,gz,解壓就可以了
9、opencv2.4.9的交叉編譯:
用到的主要目錄說明:
交叉編譯工具鏈所在目錄     /usr/local/arm/4.3.2/
安裝opencv的目錄         /usr/local/arm/opencv-install
opencv源碼所在目錄          /usr/local/arm/opencv2.4.9
編譯好的opencv庫所在目錄      /usr/local/arm/opencv-2.4.2/build
10.配置cmake(這一步的目的是配置編譯器并讓cmake-gui找到所有共享庫不然cmake-gui會少很多選項因為沒有發現依賴庫,例如你直接cmake-gui就沒有v4l選項,直接導致移植成功后無法打開攝像頭,別問我是怎么知道的..說多了都是淚啊)
#cd opencv-2.4.9
#mkdir build
#cd build
#vim toolchain.cmake
內容如下
###########user defined#############
set( CMAKE_SYSTEM_NAME Linux )
set( CMAKE_SYSTEM_PROCESSOR arm )
set( CMAKE_C_COMPILER arm-none-linux-gnueabi-gcc )
set( CMAKE_CXX_COMPILER arm-none-linux-gnueabi-g++ )
###########user defined#############
set( CMAKE_FIND_ROOT_PATH" /usr/local/arm/4.3.2/arm-none-linux-gnueabi/opencv-depend/ " )
set( CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER )
set( CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY )
set( CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY )
######################################
然后執行這一步
#cmake -DCMAKE_TOOLCHAIN_FILE=toolchain.cmake ../
配置cmake-gui
#cmake-gui





選擇源代碼目錄/usr/local/arm/opencv-2.4.9/
選擇Build目錄:/usr/local/arm/opencv-2.4.2/build
點擊Configure,保持generator為Unix Makefiles(不用改),選擇Specify options for cross-compiling(最后一個選項),點擊Next,
Operating System填寫arm-linux
C Compilers填寫/usr/local/arm/4.3.2/bin/arm-linux-gcc
C++ Compilers填寫/usr/local/arm/4.3.2/bin/arm-linux-g++
程序庫的Target Root填寫/usr/local/arm/4.3.2/
然后點擊Finish。
默認安裝目錄為/usr/local,改為/usr/local/arm/opencv-install(因為之前安裝了x86的opencv在usr/local為了避免弄混了)
CMAKE_INSTALL_PREFIX    /usr/local/arm/opencv-install
修改選項(如果不改make會出現很多錯誤因為找不到庫)
去掉WITH_CUDA
去掉WITH_GTK
去掉WITH_1394
去掉WITH_GSTREAMER
去掉WITH_LIBV4L(后邊有v4l這個沒用不要選)
去掉WITH_TIFF
去掉BUILD_OPENEXR
去掉WITH_OPENEXR
去掉BUILD_opencv_ocl
去掉WITH_OPENCL
完成后Generate
修改CMakeCache.txt,CMAKE_EXE_LINKER_FLAGS原來為空,加上-lpthread -lrt,
點擊Generate生成Makefile。(203行附近有小引號可以帶著像這樣'-lpthread -lrt')
#make(出現錯誤一般是選多了或者前面做錯了make clean)
#make install
************************************************************************************************
最后
還有一步特別關鍵 ,需要把/usr/local/arm/opencv-install/lib 下所有的動態鏈接庫 拷貝到交叉編譯下/usr/local/arm/4.3.2/arm-non-linux-gnueabi/lib下
************************************************************************************************
三、測試
測試程序:(qt設置)






四.拷貝到開發板運行
1.將/usr/local/arm/opencv-install/lib/下的庫拷貝到開發板/lib/下
2.#mkdir /usr/local/arm/opencv-install/lib/
并拷貝上述庫到mkdir /usr/local/arm/opencv-install/lib/
3.拷貝opencv-depend下庫到開發板/lib/下
4.拷貝測試程序到開發板/bin/目錄下賦予可執行權限chmod  777 CamaraGet
5. cd /bin/
./ CamaraGet –qws &
(如果提示庫找不到原因是你編譯的庫建立了類似快捷方式的東西而你拷貝的庫沒有拷貝快捷方式所以程序連接的時候找不到快捷方式,可以將你的庫改名成提示缺少的庫名(快捷方式名)基本上就是去掉版本后綴例如
( mv libopencv_core.so.2.4.9  libopencv_core.so.2.4 )
以下是文件目錄示例





五.說明
開發板USB攝像頭預覽節點是/dev/video4  opencv調cam = cvCreateCameraCapture(204); 這個函數的意思是打開video4網上很多討論括號里的參數只要有: 0 ,  -1,  202單要根據你自己的情況改,實測204(在板子上可以)

本文地址:http://m.qingdxww.cn/thread-181408-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 基于CEC1712實現的處理器SPI FLASH固件安全彈性方案培訓教程
  • 無線充電基礎知識及應用培訓教程3
  • 5分鐘詳解定時器/計數器E和波形擴展!
  • PIC18-Q71系列MCU概述
  • 貿澤電子(Mouser)專區
關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产农村一一级特黄毛片 | 四虎影视884a精品国产古代 | 亚洲国产欧美日韩一区二区 | 99久久精品视香蕉蕉er热资源 | 日本特一级 | 大学生久久香蕉国产线观看 | 毛片大片免费看 | 国产精品国产三级国产an | 精品日产一卡2卡三卡4卡在线 | 青青草原亚洲 | 成人国产精品一级毛片天堂 | 免费看啪啪的网站 | 欧美 日韩 国产 色 欧美 日韩 成人 | 国内久久精品 | 青青草97 | 岛国精品视频 | 亚洲青草视频 | 日韩天堂视频 | 岛国大片在线 | 欧美三级网站 | 青青草伊人久久 | 亚洲精品麻豆 | 成人欧美日韩视频一区 | 99re这里有精品 | 日本在线观看网址 | 精品videoss另类日本 | 欧美日韩国产亚洲一区二区 | 91精品国产免费久久国语麻豆 | 亚洲精品综合久久中文字幕 | 欧美精品3atv一区二区三区 | 天天干天天玩天天操 | caowowang| 日韩在线视频一区 | 幻女free性zozo| 亚洲婷婷第一狠人综合精品 | 男人天堂成人 | 99re8在线这里只有精品 | 三面娜迦泰剧全集在线观看 | 欧美日韩精品一区二区 | 大伊香蕉精品视频在线观看 | 神马我不卡影视 |