一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

ELF 1技術(shù)貼|如何移植OpenCV

ElfBoard ? 2024-01-09 13:55 ? 次閱讀

OpenCV是一個基于BSD許可(開源)發(fā)行的計算機視覺庫,廣泛應用于跨平臺環(huán)境,包括Linux、Windows、Android及Mac OS操作系統(tǒng)。作為計算機視覺領(lǐng)域廣受歡迎的標準工具包,OpenCV擁有了豐富的常用圖像處理函數(shù)庫,采用C/C++語言編寫,可以運行在Linux、Windows、Mac等操作系統(tǒng)上流暢運行,并能夠快速實現(xiàn)一系列圖像處理和識別任務。

此外OpenCV為了增強其通用性和易用性,還提供了Java、Python、CUDA等的使用接口機器學習的基礎(chǔ)算法調(diào)用,在圖像處理與分析方面極大地簡化了開發(fā)流程,使開發(fā)者能更專注于核心算法的設(shè)計和應用層面的工作。

接下來,以ELF 1開發(fā)板為例,本文將詳細介紹如何成功移植OpenCV。

01下載OpenCV源碼

下載地址:https://opencv.org/releases/選擇你需要的版本,點擊Source,小編這里以O(shè)penCV- 3.4.1版本為例進行移植。

02將源碼拷貝到Ubuntu環(huán)境中并進行解壓

elf@ubuntu:~/work/a/wenz$ tar xvf opencv-3.4.1.tar.gz elf@ubuntu:~/work/a/wenz$ ls opencv-3.4.1 opencv-3.4.1.tar.gz

03進入OpenCV目錄,創(chuàng)建文件夾build和install

elf@ubuntu:~/work/a/wenz$ cd opencv-3.4.1/ elf@ubuntu:~/work/a/wenz/opencv-3.4.1$ mkdir build elf@ubuntu:~/work/a/wenz/opencv-3.4.1$ mkdir install

04CMake-gui配置

首先打開CMake-gui,我們會用到CMake-gui對OpenCV進行配置,若沒有請使用以下命令進行安裝。

elf@ubuntu:~/work/a/wenz/opencv-3.4.1$ sudo apt-get install cmake cmake-qt-gui cmake-curses-gui elf@ubuntu:~/work/a/wenz/opencv-3.4.1$ cmake-gui

參考下圖進行配置:

wKgaomWc3pSAMmP9AEuXm__hPLU867.pngwKgZomWc3pCABJKkAAFgoCtgB68675.png

C :/opt/fsl-imx-x11/4.1.15-2.0.0/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-gcc C++ :/opt/fsl-imx-x11/4.1.15-2.0.0/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi/arm-poky-linux-gnueabi-g++ Target Root:/opt/fsl-imx-x11/4.1.15-2.0.0/sysroots/cortexa7hf-neon-poky-linux-gnueabi/usr/lib

wKgZomWc3ruASg_eAAGsahPMdNY777.png


點擊finish后,參考下圖進行配置

wKgaomWc3teAQ_pUAAQmNM1jv_o145.png

CMAKE_CXX_FLAGS: -march=armv7ve -mfpu=neon -mfloat-abi=hard -mcpu=cortex-a7 --sysroot=/opt/fsl-imx-x11/4.1.15-2.0.0/sysroots/cortexa7hf-neon-poky-linux-gnueabi CMAKE_INSTALL_PREFIX: /home/elf/work/a/wenz/opencv-3.4.1/install CMAKE_EXE_LINKER_FLAGS: -lpthread -lrt -ldl


點擊Configure 和Generate,參考下圖進行配置

wKgZomWc3v2AZ8-LAAOs5akmydI916.png


配置成功之后,點擊Configure 和Generate。此時已經(jīng)正常生成Makefile。

wKgaomWc3wiAMfZUAAF9gh56sKQ786.png

正常生成makefile之后,使用make進行編譯

elf@ubuntu:~/work/a/wenz/opencv-3.4.1$ . /opt/fsl-imx-x11/4.1.15-2.0.0/environment-setup-cortexa7hf-neon-poky-linux-gnueabi elf@ubuntu:~/work/a/wenz/opencv-3.4.1$ cd build elf@ubuntu:~/work/a/wenz/opencv-3.4.1/build$ make

報錯一:

wKgaomWc3ymAVhTAAADcayLuOx0272.png

elf@ubuntu:~/work/a/wenz/opencv-3.4.1/build$ vi ../3rdparty/protobuf/src/google/protobuf/stubs/common.cc

加上這一行 #define HAVE_PTHREAD

保存、退出

wKgaomWc3z-AGOy6AAJ26h1GwPs454.png

報錯二

wKgaomWc30eAZHs4AAD-p4lpvPA061.png

elf@ubuntu:~/work/a/wenz/opencv-3.4.1/build$ vi ../3rdparty/libpng/pngpriv.h

將:

# if (defined(__ARM_NEON__) || defined(__ARM_NEON)) && \

改為:

# if defined(PNG_ARM_NEON) && (defined(ARM_NEON) || defined(__ARM_NEON)) && \

wKgZomWc33KAfRlOAAI982sqvSc944.png

之后編譯就沒有報錯了,編譯完成后,執(zhí)行make install將庫和例程安裝到目標文件下。

elf@ubuntu:~/work/a/wenz/opencv-3.4.1/build$ make install

將生成的文件通過U盤拷貝到開發(fā)板,至此OpenCV移植就結(jié)束啦,希望能對屏幕前的小伙伴提供幫助。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5125

    文章

    19438

    瀏覽量

    313093
  • 計算機
    +關(guān)注

    關(guān)注

    19

    文章

    7607

    瀏覽量

    89827
  • 開發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    5389

    瀏覽量

    100901
  • OpenCV
    +關(guān)注

    關(guān)注

    31

    文章

    642

    瀏覽量

    42233
收藏 人收藏

    評論

    相關(guān)推薦

    ELF 1技術(shù)|如何在Ubuntu中編譯OpenCV

    在之前發(fā)布的文章中探討了交叉編譯OpenCV并部署至嵌入式系統(tǒng)的方法。然而,在調(diào)試階段,我們發(fā)現(xiàn)在Ubuntu環(huán)境下將OpenCV編譯為X86架構(gòu)可能更加方便和高效。通過在主機上編譯并使用X86架構(gòu)
    的頭像 發(fā)表于 05-31 16:41 ?1338次閱讀
    <b class='flag-5'>ELF</b> <b class='flag-5'>1</b><b class='flag-5'>技術(shù)</b><b class='flag-5'>貼</b>|如何在Ubuntu中編譯<b class='flag-5'>OpenCV</b>庫

    嵌入式學習-飛凌ElfBoard ELF 1板卡 - 如何在Ubuntu中編譯OpenCV

    OpenCV的編譯環(huán)境 (1)在自己的目錄下新建一個opencv目錄: elf@ubuntu:~/work$ mkdir opencv
    發(fā)表于 06-07 09:21

    I.MX6ULL-飛凌 ElfBoard ELF1板卡 - 如何在Ubuntu中編譯OpenCV庫(X86架構(gòu))

    OpenCV的編譯環(huán)境 (1)在自己的目錄下新建一個opencv目錄: elf@ubuntu:~/work$ mkdir opencv
    發(fā)表于 06-07 09:32

    OpenCV移植方法

    本章節(jié)將介紹 OpenCV移植方法,及結(jié)合 Qt 例程去進一步學習 OpenCV 識別圖像。本章節(jié)使用的資料已經(jīng)放到了開發(fā)板網(wǎng)盤資料中,路徑為:“11_Linux 系統(tǒng)開發(fā)進階/86_章節(jié)_
    發(fā)表于 02-04 06:16

    OpenCV學習之路--5--OpenCV3.4.10的ARM版本移植到開發(fā)板 精選資料分享

    開發(fā)板:迅為IMX6Q移植QTE5.7編譯好的ARM版本OpenCV3.4.10文件:OpenCV3.4.10 ARM版編譯好的OpenCV依賴庫文件:
    發(fā)表于 07-16 06:55

    ARM Linux下OpenCV移植和使用方法

    的應用領(lǐng)域非常廣泛,包括圖像拼接、圖像降噪、產(chǎn)品質(zhì)檢、人機交互、人臉識別、動作識別、動作跟蹤、無人駕駛等。本篇介紹ARM Linux下OpenCV移植和簡單使用。2.環(huán)境介紹2.1.硬件1) NUC972開...
    發(fā)表于 11-03 07:01

    移植OpenCV-4.3.0的過程

    OpenCV-4.3.0是較新的OpenCV版本,最新的版本是OpenCV-4.4.0,由于GitHub太慢總是下載失敗,不得已就移植OpenCV
    發(fā)表于 11-04 08:51

    opencv-4.3.0嵌入式Linux移植

    OpenCV-4.3.0是較新的OpenCV版本,最新的版本是OpenCV-4.4.0,由于GitHub太慢總是下載失敗,不得已就移植OpenCV
    發(fā)表于 11-01 16:56 ?11次下載
    <b class='flag-5'>opencv</b>-4.3.0嵌入式Linux<b class='flag-5'>移植</b>

    RK3568上OpenCV 的編譯移植

    OpenCV作為一個開源計算機視覺庫,在 Windows、Linux、Android和Mac OS等操作系統(tǒng)上均可運行。OpenCV庫因其開源的特性, 而且在各種平臺上都能移植,加上其能提供的圖像處理算法豐富多樣,在 ARM 嵌
    的頭像 發(fā)表于 12-20 10:20 ?2804次閱讀
    RK3568上<b class='flag-5'>OpenCV</b> 的編譯<b class='flag-5'>移植</b>

    RK3568上OpenCV 的編譯移植

    OpenCV作為一個開源計算機視覺庫,在Windows、Linux、Android和MacOS等操作系統(tǒng)上均可運行。OpenCV庫因其開源的特性,而且在各種平臺上都能移植,加上其能提供的圖像處理
    發(fā)表于 12-20 10:08 ?68次下載

    ELF 1技術(shù)|LCD作為終端控制臺的方法

    ELF1/ELF1S開發(fā)板及顯示屏)(ELF1/ELF1S開發(fā)板及顯示屏)對于嵌入式愛好者來說,調(diào)試開發(fā)板是必不可少的工作。一般情況下是使用串口作為終端進行調(diào)試,如果網(wǎng)絡(luò)沒問題的話,
    的頭像 發(fā)表于 12-20 17:11 ?526次閱讀
    <b class='flag-5'>ELF</b> <b class='flag-5'>1</b><b class='flag-5'>技術(shù)</b><b class='flag-5'>貼</b>|LCD作為終端控制臺的方法

    ELF 1技術(shù)|在NXP源碼基礎(chǔ)上適配ELF 1開發(fā)板的LED功能

    本次源碼適配工作是在NXPi.MX6ULLEVK評估板的Linux內(nèi)核源碼(特定版本:Linux-imx_4.1.15)基礎(chǔ)上進行的。主要目標是調(diào)整功能接口引腳配置,以適應ELF1開發(fā)板。下面以
    的頭像 發(fā)表于 12-29 10:04 ?1066次閱讀
    <b class='flag-5'>ELF</b> <b class='flag-5'>1</b><b class='flag-5'>技術(shù)</b><b class='flag-5'>貼</b>|在NXP源碼基礎(chǔ)上適配<b class='flag-5'>ELF</b> <b class='flag-5'>1</b>開發(fā)板的LED功能

    ELF 1技術(shù)|如何移植Boa 到開發(fā)板上

    Boa作為Web服務解決方案顯得尤為適宜。接下來,將跟各位小伙伴詳細介紹一下基于ELF1開發(fā)板移植Boa的方法。1、Boa官網(wǎng)下載源碼官網(wǎng)網(wǎng)址:Boadownlo
    的頭像 發(fā)表于 02-04 09:30 ?515次閱讀
    <b class='flag-5'>ELF</b> <b class='flag-5'>1</b><b class='flag-5'>技術(shù)</b><b class='flag-5'>貼</b>|如何<b class='flag-5'>移植</b>Boa 到開發(fā)板上

    ELF 1技術(shù)|如何將Python3.6.9移植到開發(fā)板上

    ELF1開發(fā)板的Linux4.1.15eMMC鏡像中,默認預裝了Python2.7。為了適應更多應用場景,有些小伙伴可能需要移植其他版本的Python,下面將以Python3.6.9為例詳細介紹
    的頭像 發(fā)表于 02-22 14:06 ?600次閱讀
    <b class='flag-5'>ELF</b> <b class='flag-5'>1</b><b class='flag-5'>技術(shù)</b><b class='flag-5'>貼</b>|如何將Python3.6.9<b class='flag-5'>移植</b>到開發(fā)板上

    ElfBoard技術(shù)|如何在ELF 1開發(fā)板上交叉移植Qt

    在嵌入式系統(tǒng)開發(fā)領(lǐng)域,針對特定硬件平臺進行Qt框架的移植與適配是一項關(guān)鍵技術(shù)任務。作為業(yè)界主流的跨平臺應用開發(fā)框架,Qt憑借其完善的圖形界面支持能力,在嵌入式開發(fā)圖形界面應用程序中占據(jù)重要地位。本文將基于ELF
    的頭像 發(fā)表于 02-24 16:18 ?431次閱讀
    ElfBoard<b class='flag-5'>技術(shù)</b><b class='flag-5'>貼</b>|如何在<b class='flag-5'>ELF</b> <b class='flag-5'>1</b>開發(fā)板上交叉<b class='flag-5'>移植</b>Qt